diff --git a/examples/examples_ts_test.go b/examples/examples_ts_test.go index b139da5b..3399a333 100644 --- a/examples/examples_ts_test.go +++ b/examples/examples_ts_test.go @@ -27,14 +27,10 @@ func TestTsExamples(t *testing.T) { "TestSiteSettingTs": {directoryName: "site-setting-ts"}, "TestSiteNetworkTemplateTs": {directoryName: "site-networktemplate-ts"}, "TestSiteWlanPortalTemplateTs": {directoryName: "site-wlan-portal-template-ts"}, - //TODO: unskip once https://github.com/Juniper/terraform-provider-mist/issues/66 is addressed. - // Tracked in https://github.com/pulumi/pulumi-junipermist/issues/237 - //"TestOrgWlanPortalTemplateTs": {directoryName: "org-wlan-portal-template-ts"}, - "TestSiteWlanPortalImageTs": {directoryName: "site-wlan-portal-image-ts"}, - //TODO: unskip once https://github.com/Juniper/terraform-provider-mist/issues/66 is addressed. - // Tracked in https://github.com/pulumi/pulumi-junipermist/issues/237 - //"TestOrgWlanPortalImageTs": {directoryName: "org-wlan-portal-image-ts"}, - "TestAlarmtemplateTs": {directoryName: "org-alarmtemplate-ts"}, + "TestOrgWlanPortalTemplateTs": {directoryName: "org-wlan-portal-template-ts"}, + "TestSiteWlanPortalImageTs": {directoryName: "site-wlan-portal-image-ts"}, + "TestOrgWlanPortalImageTs": {directoryName: "org-wlan-portal-image-ts"}, + "TestAlarmtemplateTs": {directoryName: "org-alarmtemplate-ts"}, "TestOrgInventoryTs": { directoryName: "org-inventory-ts", additionalConfig: map[string]string{"claimCode1": os.Getenv(EnvClaimCode1), "claimCode2": os.Getenv(EnvClaimCode2)}, diff --git a/provider/cmd/pulumi-resource-junipermist/bridge-metadata.json b/provider/cmd/pulumi-resource-junipermist/bridge-metadata.json index 9a60a9d6..cb94ce77 100644 --- a/provider/cmd/pulumi-resource-junipermist/bridge-metadata.json +++ b/provider/cmd/pulumi-resource-junipermist/bridge-metadata.json @@ -225,6 +225,9 @@ } } }, + "wan_networks": { + "maxItemsOne": false + }, "wan_probe_override": { "fields": { "ips": { @@ -261,6 +264,9 @@ "add_target_vrfs": { "maxItemsOne": false }, + "aggregate": { + "maxItemsOne": false + }, "community": { "maxItemsOne": false }, @@ -332,6 +338,9 @@ "fields": { "primary": { "fields": { + "probe_ips": { + "maxItemsOne": false + }, "wan_names": { "maxItemsOne": false } @@ -339,6 +348,9 @@ }, "secondary": { "fields": { + "probe_ips": { + "maxItemsOne": false + }, "wan_names": { "maxItemsOne": false } @@ -401,14 +413,7 @@ "zscaler": { "fields": { "sub_locations": { - "maxItemsOne": false, - "elem": { - "fields": { - "subnets": { - "maxItemsOne": false - } - } - } + "maxItemsOne": false } } } @@ -1030,6 +1035,9 @@ } } }, + "wan_networks": { + "maxItemsOne": false + }, "wan_probe_override": { "fields": { "ips": { @@ -1055,6 +1063,9 @@ "add_target_vrfs": { "maxItemsOne": false }, + "aggregate": { + "maxItemsOne": false + }, "community": { "maxItemsOne": false }, @@ -1126,6 +1137,9 @@ "fields": { "primary": { "fields": { + "probe_ips": { + "maxItemsOne": false + }, "wan_names": { "maxItemsOne": false } @@ -1133,6 +1147,9 @@ }, "secondary": { "fields": { + "probe_ips": { + "maxItemsOne": false + }, "wan_names": { "maxItemsOne": false } @@ -1195,14 +1212,7 @@ "zscaler": { "fields": { "sub_locations": { - "maxItemsOne": false, - "elem": { - "fields": { - "subnets": { - "maxItemsOne": false - } - } - } + "maxItemsOne": false } } } @@ -1413,6 +1423,9 @@ } } }, + "wan_networks": { + "maxItemsOne": false + }, "wan_probe_override": { "fields": { "ips": { @@ -1438,6 +1451,9 @@ "add_target_vrfs": { "maxItemsOne": false }, + "aggregate": { + "maxItemsOne": false + }, "community": { "maxItemsOne": false }, @@ -1509,6 +1525,9 @@ "fields": { "primary": { "fields": { + "probe_ips": { + "maxItemsOne": false + }, "wan_names": { "maxItemsOne": false } @@ -1516,6 +1535,9 @@ }, "secondary": { "fields": { + "probe_ips": { + "maxItemsOne": false + }, "wan_names": { "maxItemsOne": false } @@ -1578,14 +1600,7 @@ "zscaler": { "fields": { "sub_locations": { - "maxItemsOne": false, - "elem": { - "fields": { - "subnets": { - "maxItemsOne": false - } - } - } + "maxItemsOne": false } } } diff --git a/provider/cmd/pulumi-resource-junipermist/schema.json b/provider/cmd/pulumi-resource-junipermist/schema.json index c5f8ef7b..9e9ea287 100644 --- a/provider/cmd/pulumi-resource-junipermist/schema.json +++ b/provider/cmd/pulumi-resource-junipermist/schema.json @@ -59,6 +59,10 @@ }, "config": { "variables": { + "apiDebug": { + "type": "boolean", + "description": "Flag to enable debugging API calls. Default is false.\n" + }, "apiTimeout": { "type": "number", "description": "Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0\nresults in infinite timeout.\n" @@ -910,7 +914,7 @@ }, "extendedV4Nexthop": { "type": "boolean", - "description": "by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6)\nfor v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this\n" + "description": "by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this\n" }, "gracefulRestartTime": { "type": "integer", @@ -1371,7 +1375,8 @@ "type": "object", "additionalProperties": { "$ref": "#/types/junipermist:device/GatewayNetworkTenants:GatewayNetworkTenants" - } + }, + "description": "Property key must be the user/tenant name (i.e. \"printer-1\") or a Variable (i.e. \"{{myvar}}\")\n" }, "vlanId": { "type": "string" @@ -1417,7 +1422,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:device/GatewayNetworkInternetAccessDestinationNat:GatewayNetworkInternetAccessDestinationNat" }, - "description": "Property key may be an IP/Port (i.e. \"63.16.0.3:443\"), or a port (i.e. \":2222\")\n" + "description": "Property key can be an External IP (i.e. \"63.16.0.3\"), an External IP:Port (i.e. \"63.16.0.3:443\"), an External Port (i.e. \":443\"), an External CIDR (i.e. \"63.16.0.0/30\"), an External CIDR:Port (i.e. \"63.16.0.0/30:443\") or a Variable (i.e. \"{{myvar}}\"). At least one of the `internal_ip` or `port` must be defined\n" }, "enabled": { "type": "boolean" @@ -1431,7 +1436,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:device/GatewayNetworkInternetAccessStaticNat:GatewayNetworkInternetAccessStaticNat" }, - "description": "Property key may be an IP Address (i.e. \"172.16.0.1\"), and IP Address and Port (i.e. \"172.16.0.1:8443\") or a CIDR (i.e. \"172.16.0.12/20\")\n" + "description": "Property key may be an External IP Address (i.e. \"63.16.0.3\"), a CIDR (i.e. \"63.16.0.12/20\") or a Variable (i.e. \"{{myvar}}\")\n" } }, "type": "object", @@ -1447,13 +1452,19 @@ "junipermist:device/GatewayNetworkInternetAccessDestinationNat:GatewayNetworkInternetAccessDestinationNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Destination NAT destination IP Address. Must be an IP (i.e. \"192.168.70.30\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" }, "port": { - "type": "integer" + "type": "string", + "description": "The Destination NAT destination IP Address. Must be a Port (i.e. \"443\") or a Variable (i.e. \"{{myvar}}\")\n" + }, + "wanName": { + "type": "string", + "description": "SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity\n" } }, "type": "object" @@ -1461,17 +1472,22 @@ "junipermist:device/GatewayNetworkInternetAccessStaticNat:GatewayNetworkInternetAccessStaticNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Static NAT destination IP Address. Must be an IP Address (i.e. \"192.168.70.3\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" }, "wanName": { "type": "string", - "description": "If not set, we configure the nat policies against all WAN ports for simplicity\n" + "description": "SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. \"{{myvar}}\")\n" } }, - "type": "object" + "type": "object", + "required": [ + "internalIp", + "name" + ] }, "junipermist:device/GatewayNetworkMulticast:GatewayNetworkMulticast": { "properties": { @@ -1535,7 +1551,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:device/GatewayNetworkVpnAccessDestinationNat:GatewayNetworkVpnAccessDestinationNat" }, - "description": "Property key may be an IP/Port (i.e. \"63.16.0.3:443\"), or a port (i.e. \":2222\")\n" + "description": "Property key can be an External IP (i.e. \"63.16.0.3\"), an External IP:Port (i.e. \"63.16.0.3:443\"), an External Port (i.e. \":443\"), an External CIDR (i.e. \"63.16.0.0/30\"), an External CIDR:Port (i.e. \"63.16.0.0/30:443\") or a Variable (i.e. \"{{myvar}}\"). At least one of the `internal_ip` or `port` must be defined\n" }, "natPool": { "type": "string", @@ -1551,14 +1567,14 @@ }, "noReadvertiseToOverlay": { "type": "boolean", - "description": "toward overlay\nhow HUB should deal with routes it received from Spokes\n" + "description": "toward overlay, how HUB should deal with routes it received from Spokes\n" }, "otherVrfs": { "type": "array", "items": { "type": "string" }, - "description": "by default, the routes are only readvertised toward the same vrf on spoke\nto allow it to be leaked to other vrfs\n" + "description": "by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs\n" }, "routed": { "type": "boolean", @@ -1573,11 +1589,11 @@ "additionalProperties": { "$ref": "#/types/junipermist:device/GatewayNetworkVpnAccessStaticNat:GatewayNetworkVpnAccessStaticNat" }, - "description": "Property key may be an IP Address (i.e. \"172.16.0.1\"), and IP Address and Port (i.e. \"172.16.0.1:8443\") or a CIDR (i.e. \"172.16.0.12/20\")\n" + "description": "Property key may be an External IP Address (i.e. \"63.16.0.3\"), a CIDR (i.e. \"63.16.0.12/20\") or a Variable (i.e. \"{{myvar}}\")\n" }, "summarizedSubnet": { "type": "string", - "description": "toward overlay\nhow HUB should deal with routes it received from Spokes\n" + "description": "toward overlay, how HUB should deal with routes it received from Spokes\n" }, "summarizedSubnetToLanBgp": { "type": "string", @@ -1592,7 +1608,6 @@ "language": { "nodejs": { "requiredOutputs": [ - "destinationNat", "noReadvertiseToLanBgp", "noReadvertiseToLanOspf", "otherVrfs", @@ -1605,13 +1620,14 @@ "junipermist:device/GatewayNetworkVpnAccessDestinationNat:GatewayNetworkVpnAccessDestinationNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Destination NAT destination IP Address. Must be an IP (i.e. \"192.168.70.30\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" }, "port": { - "type": "integer" + "type": "string" } }, "type": "object" @@ -1627,17 +1643,18 @@ "junipermist:device/GatewayNetworkVpnAccessStaticNat:GatewayNetworkVpnAccessStaticNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Static NAT destination IP Address. Must be an IP Address (i.e. \"192.168.70.3\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" - }, - "wanName": { - "type": "string", - "description": "If not set, we configure the nat policies against all WAN ports for simplicity\n" } }, - "type": "object" + "type": "object", + "required": [ + "internalIp", + "name" + ] }, "junipermist:device/GatewayOobIpConfig:GatewayOobIpConfig": { "properties": { @@ -1678,8 +1695,7 @@ "nodejs": { "requiredOutputs": [ "node1", - "type", - "useMgmtVrf" + "type" ] } } @@ -1810,7 +1826,7 @@ }, "aeLacpForceUp": { "type": "boolean", - "description": "For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n\nUse case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n\nNote: Turning this on will enable force-up on one of the interfaces in the bundle only\n" + "description": "For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only\n" }, "aggregated": { "type": "boolean" @@ -1820,7 +1836,8 @@ "description": "if want to generate port up/down alarm, set it to true\n" }, "description": { - "type": "string" + "type": "string", + "description": "Interface Description. Can be a variable (i.e. \"{{myvar}}\")\n" }, "disableAutoneg": { "type": "boolean" @@ -1835,11 +1852,11 @@ }, "dslVci": { "type": "integer", - "description": "if `wan_type`==`dsl`\n16 bit int\n" + "description": "if `wan_type`==`dsl`, 16 bit int\n" }, "dslVpi": { "type": "integer", - "description": "if `wan_type`==`dsl`\n8 bit int\n" + "description": "if `wan_type`==`dsl`, 8 bit int\n" }, "duplex": { "type": "string", @@ -1881,7 +1898,7 @@ "items": { "type": "string" }, - "description": "if `usage`==`lan`\n" + "description": "if `usage`==`lan`, name of the `junipermist.org.Network` resource\n" }, "outerVlanId": { "type": "integer", @@ -1892,7 +1909,7 @@ }, "portNetwork": { "type": "string", - "description": "if `usage`==`lan`\n" + "description": "Only for SRX and if `usage`==`lan`, the Untagged VLAN Network\n" }, "preserveDscp": { "type": "boolean", @@ -1936,8 +1953,7 @@ "description": "port usage name. enum: `ha_control`, `ha_data`, `lan`, `wan`\n" }, "vlanId": { - "type": "integer", - "description": "if WAN interface is on a VLAN\n" + "type": "string" }, "vpnPaths": { "type": "object", @@ -1948,30 +1964,37 @@ }, "wanArpPolicer": { "type": "string", - "description": "when `wan_type`==`broadband`. enum: `default`, `max`, `recommended`\n" + "description": "Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended`\n" }, "wanExtIp": { "type": "string", - "description": "optional, if spoke should reach this port by a different IP\n" + "description": "Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP\n" }, "wanExtraRoutes": { "type": "object", "additionalProperties": { "$ref": "#/types/junipermist:device/GatewayPortConfigWanExtraRoutes:GatewayPortConfigWanExtraRoutes" }, - "description": "Property Key is the destianation CIDR (e.g \"100.100.100.0/24\")\n" + "description": "Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g \"100.100.100.0/24\")\n" + }, + "wanNetworks": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined\n" }, "wanProbeOverride": { "$ref": "#/types/junipermist:device/GatewayPortConfigWanProbeOverride:GatewayPortConfigWanProbeOverride", - "description": "if `usage`==`wan`\n" + "description": "Only if `usage`==`wan`\n" }, "wanSourceNat": { "$ref": "#/types/junipermist:device/GatewayPortConfigWanSourceNat:GatewayPortConfigWanSourceNat", - "description": "optional, by default, source-NAT is performed on all WAN Ports using the interface-ip\n" + "description": "Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip\n" }, "wanType": { "type": "string", - "description": "if `usage`==`wan`. enum: `broadband`, `dsl`, `lte`\n" + "description": "Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte`\n" } }, "type": "object", @@ -2002,6 +2025,7 @@ "svrPortRange", "usage", "wanArpPolicer", + "wanNetworks", "wanType" ] } @@ -2025,14 +2049,15 @@ }, "gateway": { "type": "string", - "description": "except for out-of_band interface (vme/em0/fxp0)\n" + "description": "except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. \"192.168.1.1\") or a Variable (i.e. \"{{myvar}}\")\n" }, "ip": { - "type": "string" + "type": "string", + "description": "Interface IP Address (i.e. \"192.168.1.8\") or a Variable (i.e. \"{{myvar}}\")\n" }, "netmask": { "type": "string", - "description": "used only if `subnet` is not specified in `networks`\n" + "description": "used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. \"/24\") or a Variable (i.e. \"{{myvar}}\")\n" }, "network": { "type": "string", @@ -2073,10 +2098,14 @@ "items": { "type": "integer" }, - "description": "percentages for differet class of traffic: high / medium / low / best-effort\nsum must be equal to 100\n" + "description": "percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100\n" }, "enabled": { "type": "boolean" + }, + "maxTxKbps": { + "type": "integer", + "description": "Interface Transmit Cap in kbps\n" } }, "type": "object", @@ -2132,10 +2161,14 @@ "items": { "type": "integer" }, - "description": "percentages for differet class of traffic: high / medium / low / best-effort\nsum must be equal to 100\n" + "description": "percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100\n" }, "enabled": { "type": "boolean" + }, + "maxTxKbps": { + "type": "integer", + "description": "Interface Transmit Cap in kbps\n" } }, "type": "object", @@ -2271,6 +2304,13 @@ }, "description": "for SSR, hub decides how VRF routes are leaked on spoke\n" }, + "aggregates": { + "type": "array", + "items": { + "type": "string" + }, + "description": "route aggregation\n" + }, "communities": { "type": "array", "items": { @@ -2365,7 +2405,7 @@ "items": { "type": "string" }, - "description": "overlay-facing criteria (used for bgp_config where via=vpn)\nordered-\n" + "description": "overlay-facing criteria (used for bgp_config where via=vpn). ordered-\n" } }, "type": "object" @@ -2377,7 +2417,7 @@ }, "vrfName": { "type": "string", - "description": "name of the vrf instance\nit can also be the name of the VPN or wan if they\n" + "description": "name of the vrf instance, it can also be the name of the VPN or wan if they\n" } }, "type": "object", @@ -2432,7 +2472,7 @@ }, "pathPreference": { "type": "string", - "description": "by default, we derive all paths available and use them\noptionally, you can customize by using `path_preference`\n" + "description": "by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference`\n" }, "servicepolicyId": { "type": "string", @@ -2539,71 +2579,73 @@ }, "ikeLifetime": { "type": "integer", - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`. Must be between 180 and 86400\n" }, "ikeMode": { "type": "string", - "description": "Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main`\n" + "description": "Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main`\n" }, "ikeProposals": { "type": "array", "items": { "$ref": "#/types/junipermist:device/GatewayTunnelConfigsIkeProposal:GatewayTunnelConfigsIkeProposal" }, - "description": "if `provider`== `custom-ipsec`\n" + "description": "if `provider`==`custom-ipsec`\n" }, "ipsecLifetime": { "type": "integer", - "description": "if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`. Must be between 180 and 86400\n" }, "ipsecProposals": { "type": "array", "items": { "$ref": "#/types/junipermist:device/GatewayTunnelConfigsIpsecProposal:GatewayTunnelConfigsIpsecProposal" }, - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`\n" }, "localId": { "type": "string", - "description": "Only if:\n * `provider`== `zscaler-ipsec`\n * `provider`==`jse-ipsec`\n * `provider`== `custom-ipsec`\n" + "description": "Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "mode": { "type": "string", - "description": "enum: `active-active`, `active-standby`\n" + "description": "Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby`\n" }, "networks": { "type": "array", "items": { "type": "string" }, - "description": "networks reachable via this tunnel\n" + "description": "if `provider`==`custom-ipsec`, networks reachable via this tunnel\n" }, "primary": { - "$ref": "#/types/junipermist:device/GatewayTunnelConfigsPrimary:GatewayTunnelConfigsPrimary" + "$ref": "#/types/junipermist:device/GatewayTunnelConfigsPrimary:GatewayTunnelConfigsPrimary", + "description": "Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "probe": { "$ref": "#/types/junipermist:device/GatewayTunnelConfigsProbe:GatewayTunnelConfigsProbe", - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`\n" }, "protocol": { "type": "string", - "description": "Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec`\n" }, "provider": { "type": "string", - "description": "enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec`\n" + "description": "Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec`\n" }, "psk": { "type": "string", - "description": "Only if:\n * `provider`== `zscaler-ipsec`\n * `provider`==`jse-ipsec`\n * `provider`== `custom-ipsec`\n", + "description": "Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n", "secret": true }, "secondary": { - "$ref": "#/types/junipermist:device/GatewayTunnelConfigsSecondary:GatewayTunnelConfigsSecondary" + "$ref": "#/types/junipermist:device/GatewayTunnelConfigsSecondary:GatewayTunnelConfigsSecondary", + "description": "Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "version": { "type": "string", - "description": "Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2`\n" + "description": "Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2`\n" } }, "type": "object", @@ -2624,16 +2666,28 @@ "type": "boolean" }, "latlng": { - "$ref": "#/types/junipermist:device/GatewayTunnelConfigsAutoProvisionLatlng:GatewayTunnelConfigsAutoProvisionLatlng" + "$ref": "#/types/junipermist:device/GatewayTunnelConfigsAutoProvisionLatlng:GatewayTunnelConfigsAutoProvisionLatlng", + "description": "API override for POP selection\n" }, "primary": { "$ref": "#/types/junipermist:device/GatewayTunnelConfigsAutoProvisionPrimary:GatewayTunnelConfigsAutoProvisionPrimary" }, + "provider": { + "type": "string", + "description": "enum: `jse-ipsec`, `zscaler-ipsec`\n" + }, + "region": { + "type": "string", + "description": "API override for POP selection\n" + }, "secondary": { "$ref": "#/types/junipermist:device/GatewayTunnelConfigsAutoProvisionSecondary:GatewayTunnelConfigsAutoProvisionSecondary" } }, - "type": "object" + "type": "object", + "required": [ + "provider" + ] }, "junipermist:device/GatewayTunnelConfigsAutoProvisionLatlng:GatewayTunnelConfigsAutoProvisionLatlng": { "properties": { @@ -2652,8 +2706,11 @@ }, "junipermist:device/GatewayTunnelConfigsAutoProvisionPrimary:GatewayTunnelConfigsAutoProvisionPrimary": { "properties": { - "numHosts": { - "type": "string" + "probeIps": { + "type": "array", + "items": { + "type": "string" + } }, "wanNames": { "type": "array", @@ -2667,8 +2724,11 @@ }, "junipermist:device/GatewayTunnelConfigsAutoProvisionSecondary:GatewayTunnelConfigsAutoProvisionSecondary": { "properties": { - "numHosts": { - "type": "string" + "probeIps": { + "type": "array", + "items": { + "type": "string" + } }, "wanNames": { "type": "array", @@ -2713,7 +2773,7 @@ }, "dhGroup": { "type": "string", - "description": "Only if `provider`== `custom-ipsec`. enum:\n * 1\n * 2 (1024-bit)\n * 5\n * 14 (default, 2048-bit)\n * 15 (3072-bit)\n * 16 (4096-bit)\n * 19 (256-bit ECP)\n * 20 (384-bit ECP)\n * 21 (521-bit ECP)\n * 24 (2048-bit ECP)\n" + "description": "Only if `provider`==`custom-ipsec`. enum:\n * 1\n * 2 (1024-bit)\n * 5\n * 14 (default, 2048-bit)\n * 15 (3072-bit)\n * 16 (4096-bit)\n * 19 (256-bit ECP)\n * 20 (384-bit ECP)\n * 21 (521-bit ECP)\n * 24 (2048-bit ECP)\n" }, "encAlgo": { "type": "string", @@ -2743,7 +2803,7 @@ "items": { "type": "string" }, - "description": "Only if:\n * `provider`== `zscaler-gre`\n * `provider`== `custom-gre`\n" + "description": "Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre`\n" }, "probeIps": { "type": "array", @@ -2756,7 +2816,7 @@ "items": { "type": "string" }, - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "wanNames": { "type": "array", @@ -2765,7 +2825,11 @@ } } }, - "type": "object" + "type": "object", + "required": [ + "hosts", + "wanNames" + ] }, "junipermist:device/GatewayTunnelConfigsProbe:GatewayTunnelConfigsProbe": { "properties": { @@ -2808,7 +2872,7 @@ "items": { "type": "string" }, - "description": "Only if:\n * `provider`== `zscaler-gre`\n * `provider`== `custom-gre`\n" + "description": "Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre`\n" }, "probeIps": { "type": "array", @@ -2821,7 +2885,7 @@ "items": { "type": "string" }, - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "wanNames": { "type": "array", @@ -2830,7 +2894,11 @@ } } }, - "type": "object" + "type": "object", + "required": [ + "hosts", + "wanNames" + ] }, "junipermist:device/GatewayTunnelProviderOptions:GatewayTunnelProviderOptions": { "properties": { @@ -2847,127 +2915,142 @@ }, "junipermist:device/GatewayTunnelProviderOptionsJse:GatewayTunnelProviderOptionsJse": { "properties": { - "name": { - "type": "string" - }, "numUsers": { "type": "integer" + }, + "orgName": { + "type": "string", + "description": "JSE Organization name\n" } }, "type": "object" }, "junipermist:device/GatewayTunnelProviderOptionsZscaler:GatewayTunnelProviderOptionsZscaler": { "properties": { - "aupAcceptanceRequired": { + "aupBlockInternetUntilAccepted": { "type": "boolean" }, - "aupExpire": { - "type": "integer", - "description": "days before AUP is requested again\n" + "aupEnabled": { + "type": "boolean", + "description": "Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP)\n" }, - "aupSslProxy": { + "aupForceSslInspection": { "type": "boolean", "description": "proxy HTTPs traffic, requiring Zscaler cert to be installed in browser\n" }, - "downloadMbps": { + "aupTimeoutInDays": { "type": "integer", - "description": "the download bandwidth cap of the link, in Mbps\n" + "description": "Required if `aup_enabled`==`true`. Days before AUP is requested again\n" }, - "enableAup": { + "authRequired": { "type": "boolean", - "description": "if `use_xff`==`true`, display Acceptable Use Policy (AUP)\n" + "description": "Enable this option to enforce user authentication\n" }, - "enableCaution": { + "cautionEnabled": { "type": "boolean", - "description": "when `enforce_authentication`==`false`, display caution notification for non-authenticated users\n" + "description": "Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users\n" }, - "enforceAuthentication": { - "type": "boolean" + "dnBandwidth": { + "type": "number", + "description": "the download bandwidth cap of the link, in Mbps. Disabled if not set\n" }, - "name": { - "type": "string" + "idleTimeInMinutes": { + "type": "integer", + "description": "Required if `surrogate_IP`==`true`, idle Time to Disassociation\n" + }, + "ofwEnabled": { + "type": "boolean", + "description": "if `true`, enable the firewall control option\n" }, "subLocations": { "type": "array", "items": { "$ref": "#/types/junipermist:device/GatewayTunnelProviderOptionsZscalerSubLocation:GatewayTunnelProviderOptionsZscalerSubLocation" }, - "description": "if `use_xff`==`true`\n" + "description": "`sub-locations` can be used for specific uses cases to define different configuration based on the user network\n" }, - "uploadMbps": { + "surrogateIp": { + "type": "boolean", + "description": "Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies\n" + }, + "surrogateIpEnforcedForKnownBrowsers": { + "type": "boolean", + "description": "Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers\n" + }, + "surrogateRefreshTimeInMinutes": { "type": "integer", - "description": "the download bandwidth cap of the link, in Mbps\n" + "description": "Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy\n" + }, + "upBandwidth": { + "type": "number", + "description": "the download bandwidth cap of the link, in Mbps. Disabled if not set\n" }, - "useXff": { + "xffForwardEnabled": { "type": "boolean", "description": "location uses proxy chaining to forward traffic\n" } }, - "type": "object", - "language": { - "nodejs": { - "requiredOutputs": [ - "aupAcceptanceRequired", - "aupExpire", - "aupSslProxy", - "enableAup", - "enableCaution", - "enforceAuthentication" - ] - } - } + "type": "object" }, "junipermist:device/GatewayTunnelProviderOptionsZscalerSubLocation:GatewayTunnelProviderOptionsZscalerSubLocation": { "properties": { - "aupAcceptanceRequired": { + "aupBlockInternetUntilAccepted": { "type": "boolean" }, - "aupExpire": { - "type": "integer", - "description": "days before AUP is requested again\n" + "aupEnabled": { + "type": "boolean", + "description": "Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP)\n" }, - "aupSslProxy": { + "aupForceSslInspection": { "type": "boolean", "description": "proxy HTTPs traffic, requiring Zscaler cert to be installed in browser\n" }, - "downloadMbps": { + "aupTimeoutInDays": { "type": "integer", - "description": "the download bandwidth cap of the link, in Mbps\n" + "description": "Required if `aup_enabled`==`true`. Days before AUP is requested again\n" }, - "enableAup": { + "authRequired": { "type": "boolean", - "description": "if `use_xff`==`true`, display Acceptable Use Policy (AUP)\n" + "description": "Enable this option to authenticate users\n" }, - "enableCaution": { + "cautionEnabled": { "type": "boolean", - "description": "when `enforce_authentication`==`false`, display caution notification for non-authenticated users\n" + "description": "Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users\n" }, - "enforceAuthentication": { - "type": "boolean" + "dnBandwidth": { + "type": "number", + "description": "the download bandwidth cap of the link, in Mbps. Disabled if not set\n" }, - "subnets": { - "type": "array", - "items": { - "type": "string" - } + "idleTimeInMinutes": { + "type": "integer", + "description": "Required if `surrogate_IP`==`true`, idle Time to Disassociation\n" + }, + "name": { + "type": "string", + "description": "Network name\n" + }, + "ofwEnabled": { + "type": "boolean", + "description": "if `true`, enable the firewall control option\n" + }, + "surrogateIp": { + "type": "boolean", + "description": "Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies\n" }, - "uploadMbps": { + "surrogateIpEnforcedForKnownBrowsers": { + "type": "boolean", + "description": "Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers\n" + }, + "surrogateRefreshTimeInMinutes": { "type": "integer", - "description": "the download bandwidth cap of the link, in Mbps\n" + "description": "Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy\n" + }, + "upBandwidth": { + "type": "number", + "description": "the download bandwidth cap of the link, in Mbps. Disabled if not set\n" } }, - "type": "object", - "language": { - "nodejs": { - "requiredOutputs": [ - "aupAcceptanceRequired", - "aupExpire", - "aupSslProxy", - "enableCaution", - "enforceAuthentication" - ] - } - } + "type": "object" }, "junipermist:device/GatewayVrfConfig:GatewayVrfConfig": { "properties": { @@ -2996,7 +3079,7 @@ "items": { "$ref": "#/types/junipermist:device/SwitchAclPolicyAction:SwitchAclPolicyAction" }, - "description": "- for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n- for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to\n" + "description": "ACL Policy Actions:\n - for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to\n" }, "name": { "type": "string" @@ -3006,7 +3089,7 @@ "items": { "type": "string" }, - "description": "- for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n- for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to\n" + "description": "ACL Policy Source Tags:\n - for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to\n" } }, "type": "object" @@ -3030,7 +3113,7 @@ "properties": { "gbpTag": { "type": "integer", - "description": "required if\n- `type`==`dynamic_gbp` (gbp_tag received from RADIUS)\n- `type`==`gbp_resource`\n- `type`==`static_gbp` (applying gbp tag against matching conditions)\n" + "description": "required if\n - `type`==`dynamic_gbp` (gbp_tag received from RADIUS)\n - `type`==`gbp_resource`\n - `type`==`static_gbp` (applying gbp tag against matching conditions)\n" }, "macs": { "type": "array", @@ -3052,7 +3135,7 @@ "items": { "$ref": "#/types/junipermist:device/SwitchAclTagsSpec:SwitchAclTagsSpec" }, - "description": "if `type`==`resource` or `type`==`gbp_resource`\nempty means unrestricted, i.e. any\n" + "description": "if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any\n" }, "subnets": { "type": "array", @@ -3088,7 +3171,7 @@ }, "protocol": { "type": "string", - "description": "`tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254\n" + "description": "`tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254\n" } }, "type": "object", @@ -3291,26 +3374,6 @@ }, "type": "object" }, - "junipermist:device/SwitchEvpnConfig:SwitchEvpnConfig": { - "properties": { - "enabled": { - "type": "boolean" - }, - "role": { - "type": "string", - "description": "enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none`\n" - } - }, - "type": "object", - "language": { - "nodejs": { - "requiredOutputs": [ - "enabled", - "role" - ] - } - } - }, "junipermist:device/SwitchExtraRoutes6:SwitchExtraRoutes6": { "properties": { "discard": { @@ -3466,7 +3529,7 @@ }, "allowDhcpd": { "type": "boolean", - "description": "If DHCP snooping is enabled, whether DHCP server is allowed on the interfaces with.\nAll the interfaces from port configs using this port usage are effected. Please notice that allow_dhcpd is a tri_state.\nWhen it is not defined, it means using the system's default setting which depends on whether the port is a access or trunk port.\n" + "description": "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 allow_dhcpd is a tri_state. 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.\n" }, "allowMultipleSupplicants": { "type": "boolean" @@ -3514,7 +3577,7 @@ }, "interSwitchLink": { "type": "boolean", - "description": "inter_switch_link is used together with \"isolation\" under networks\nNOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together\n" + "description": "inter_switch_link is used together with \"isolation\" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together\n" }, "macAuthOnly": { "type": "boolean", @@ -3547,6 +3610,10 @@ }, "description": "Only if `mode`==`trunk`, the list of network/vlans\n" }, + "note": { + "type": "string", + "description": "Additional note for the port config override\n" + }, "persistMac": { "type": "boolean", "description": "Only if `mode`==`access` and `port_auth`!=`dot1x` whether the port should retain dynamically learned MAC addresses\n" @@ -3697,7 +3764,7 @@ }, "isolation": { "type": "boolean", - "description": "whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required)\nNOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set\n" + "description": "whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set\n" }, "isolationVlanId": { "type": "string" @@ -4027,7 +4094,7 @@ }, "allowDhcpd": { "type": "boolean", - "description": "Only if `mode`!=`dynamic`. If DHCP snooping is enabled, whether DHCP server is allowed on the interfaces with.\nAll the interfaces from port configs using this port usage are effected. Please notice that allow_dhcpd is a tri_state.\nWhen it is not defined, it means using the system's default setting which depends on whether the port is a access or trunk port.\n" + "description": "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 allow_dhcpd is a tri_state. 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.\n" }, "allowMultipleSupplicants": { "type": "boolean", @@ -4078,7 +4145,7 @@ }, "interSwitchLink": { "type": "boolean", - "description": "Only if `mode`!=`dynamic` inter_switch_link is used together with \"isolation\" under networks\nNOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together\n" + "description": "Only if `mode`!=`dynamic` inter_switch_link is used together with \"isolation\" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together\n" }, "macAuthOnly": { "type": "boolean", @@ -4156,7 +4223,7 @@ }, "stormControl": { "$ref": "#/types/junipermist:device/SwitchPortUsagesStormControl:SwitchPortUsagesStormControl", - "description": "Switch storm control\nOnly if `mode`!=`dynamic`\n" + "description": "Switch storm control. Only if `mode`!=`dynamic`\n" }, "stpEdge": { "type": "boolean", @@ -4302,7 +4369,7 @@ }, "network": { "type": "string", - "description": "use `network`or `source_ip`\nwhich network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip\n" + "description": "use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip\n" }, "sourceIp": { "type": "string", @@ -4967,7 +5034,7 @@ "properties": { "authenticationPassword": { "type": "string", - "description": "Not required if `authentication_type`==`authentication_none`\ninclude alphabetic, numeric, and special characters, but it cannot include control characters.\n", + "description": "Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters.\n", "secret": true }, "authenticationType": { @@ -4976,7 +5043,7 @@ }, "encryptionPassword": { "type": "string", - "description": "Not required if `encryption_type`==`privacy-none`\ninclude alphabetic, numeric, and special characters, but it cannot include control characters\n", + "description": "Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters\n", "secret": true }, "encryptionType": { @@ -11336,7 +11403,7 @@ }, "extendedV4Nexthop": { "type": "boolean", - "description": "by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6)\nfor v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this\n" + "description": "by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this\n" }, "gracefulRestartTime": { "type": "integer", @@ -11781,7 +11848,8 @@ "type": "object", "additionalProperties": { "$ref": "#/types/junipermist:org/DeviceprofileGatewayNetworkTenants:DeviceprofileGatewayNetworkTenants" - } + }, + "description": "Property key must be the user/tenant name (i.e. \"printer-1\") or a Variable (i.e. \"{{myvar}}\")\n" }, "vlanId": { "type": "string" @@ -11827,7 +11895,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/DeviceprofileGatewayNetworkInternetAccessDestinationNat:DeviceprofileGatewayNetworkInternetAccessDestinationNat" }, - "description": "Property key may be an IP/Port (i.e. \"63.16.0.3:443\"), or a port (i.e. \":2222\")\n" + "description": "Property key can be an External IP (i.e. \"63.16.0.3\"), an External IP:Port (i.e. \"63.16.0.3:443\"), an External Port (i.e. \":443\"), an External CIDR (i.e. \"63.16.0.0/30\"), an External CIDR:Port (i.e. \"63.16.0.0/30:443\") or a Variable (i.e. \"{{myvar}}\"). At least one of the `internal_ip` or `port` must be defined\n" }, "enabled": { "type": "boolean" @@ -11841,7 +11909,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/DeviceprofileGatewayNetworkInternetAccessStaticNat:DeviceprofileGatewayNetworkInternetAccessStaticNat" }, - "description": "Property key may be an IP Address (i.e. \"172.16.0.1\"), and IP Address and Port (i.e. \"172.16.0.1:8443\") or a CIDR (i.e. \"172.16.0.12/20\")\n" + "description": "Property key may be an External IP Address (i.e. \"63.16.0.3\"), a CIDR (i.e. \"63.16.0.12/20\") or a Variable (i.e. \"{{myvar}}\")\n" } }, "type": "object", @@ -11857,13 +11925,19 @@ "junipermist:org/DeviceprofileGatewayNetworkInternetAccessDestinationNat:DeviceprofileGatewayNetworkInternetAccessDestinationNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Destination NAT destination IP Address. Must be an IP (i.e. \"192.168.70.30\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" }, "port": { - "type": "integer" + "type": "string", + "description": "The Destination NAT destination IP Address. Must be a Port (i.e. \"443\") or a Variable (i.e. \"{{myvar}}\")\n" + }, + "wanName": { + "type": "string", + "description": "SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity\n" } }, "type": "object" @@ -11871,17 +11945,22 @@ "junipermist:org/DeviceprofileGatewayNetworkInternetAccessStaticNat:DeviceprofileGatewayNetworkInternetAccessStaticNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Static NAT destination IP Address. Must be an IP Address (i.e. \"192.168.70.3\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" }, "wanName": { "type": "string", - "description": "If not set, we configure the nat policies against all WAN ports for simplicity\n" + "description": "SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. \"{{myvar}}\")\n" } }, - "type": "object" + "type": "object", + "required": [ + "internalIp", + "name" + ] }, "junipermist:org/DeviceprofileGatewayNetworkMulticast:DeviceprofileGatewayNetworkMulticast": { "properties": { @@ -11945,7 +12024,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/DeviceprofileGatewayNetworkVpnAccessDestinationNat:DeviceprofileGatewayNetworkVpnAccessDestinationNat" }, - "description": "Property key may be an IP/Port (i.e. \"63.16.0.3:443\"), or a port (i.e. \":2222\")\n" + "description": "Property key can be an External IP (i.e. \"63.16.0.3\"), an External IP:Port (i.e. \"63.16.0.3:443\"), an External Port (i.e. \":443\"), an External CIDR (i.e. \"63.16.0.0/30\"), an External CIDR:Port (i.e. \"63.16.0.0/30:443\") or a Variable (i.e. \"{{myvar}}\"). At least one of the `internal_ip` or `port` must be defined\n" }, "natPool": { "type": "string", @@ -11961,14 +12040,14 @@ }, "noReadvertiseToOverlay": { "type": "boolean", - "description": "toward overlay\nhow HUB should deal with routes it received from Spokes\n" + "description": "toward overlay, how HUB should deal with routes it received from Spokes\n" }, "otherVrfs": { "type": "array", "items": { "type": "string" }, - "description": "by default, the routes are only readvertised toward the same vrf on spoke\nto allow it to be leaked to other vrfs\n" + "description": "by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs\n" }, "routed": { "type": "boolean", @@ -11983,11 +12062,11 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/DeviceprofileGatewayNetworkVpnAccessStaticNat:DeviceprofileGatewayNetworkVpnAccessStaticNat" }, - "description": "Property key may be an IP Address (i.e. \"172.16.0.1\"), and IP Address and Port (i.e. \"172.16.0.1:8443\") or a CIDR (i.e. \"172.16.0.12/20\")\n" + "description": "Property key may be an External IP Address (i.e. \"63.16.0.3\"), a CIDR (i.e. \"63.16.0.12/20\") or a Variable (i.e. \"{{myvar}}\")\n" }, "summarizedSubnet": { "type": "string", - "description": "toward overlay\nhow HUB should deal with routes it received from Spokes\n" + "description": "toward overlay, how HUB should deal with routes it received from Spokes\n" }, "summarizedSubnetToLanBgp": { "type": "string", @@ -12002,7 +12081,6 @@ "language": { "nodejs": { "requiredOutputs": [ - "destinationNat", "noReadvertiseToLanBgp", "noReadvertiseToLanOspf", "otherVrfs", @@ -12015,13 +12093,14 @@ "junipermist:org/DeviceprofileGatewayNetworkVpnAccessDestinationNat:DeviceprofileGatewayNetworkVpnAccessDestinationNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Destination NAT destination IP Address. Must be an IP (i.e. \"192.168.70.30\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" }, "port": { - "type": "integer" + "type": "string" } }, "type": "object" @@ -12037,17 +12116,18 @@ "junipermist:org/DeviceprofileGatewayNetworkVpnAccessStaticNat:DeviceprofileGatewayNetworkVpnAccessStaticNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Static NAT destination IP Address. Must be an IP Address (i.e. \"192.168.70.3\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" - }, - "wanName": { - "type": "string", - "description": "If not set, we configure the nat policies against all WAN ports for simplicity\n" } }, - "type": "object" + "type": "object", + "required": [ + "internalIp", + "name" + ] }, "junipermist:org/DeviceprofileGatewayOobIpConfig:DeviceprofileGatewayOobIpConfig": { "properties": { @@ -12219,7 +12299,7 @@ }, "aeLacpForceUp": { "type": "boolean", - "description": "For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n\nUse case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n\nNote: Turning this on will enable force-up on one of the interfaces in the bundle only\n" + "description": "For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only\n" }, "aggregated": { "type": "boolean" @@ -12229,7 +12309,8 @@ "description": "if want to generate port up/down alarm, set it to true\n" }, "description": { - "type": "string" + "type": "string", + "description": "Interface Description. Can be a variable (i.e. \"{{myvar}}\")\n" }, "disableAutoneg": { "type": "boolean" @@ -12244,11 +12325,11 @@ }, "dslVci": { "type": "integer", - "description": "if `wan_type`==`dsl`\n16 bit int\n" + "description": "if `wan_type`==`dsl`, 16 bit int\n" }, "dslVpi": { "type": "integer", - "description": "if `wan_type`==`dsl`\n8 bit int\n" + "description": "if `wan_type`==`dsl`, 8 bit int\n" }, "duplex": { "type": "string", @@ -12290,7 +12371,7 @@ "items": { "type": "string" }, - "description": "if `usage`==`lan`\n" + "description": "if `usage`==`lan`, name of the `junipermist.org.Network` resource\n" }, "outerVlanId": { "type": "integer", @@ -12301,7 +12382,7 @@ }, "portNetwork": { "type": "string", - "description": "if `usage`==`lan`\n" + "description": "Only for SRX and if `usage`==`lan`, the Untagged VLAN Network\n" }, "preserveDscp": { "type": "boolean", @@ -12345,8 +12426,7 @@ "description": "port usage name. enum: `ha_control`, `ha_data`, `lan`, `wan`\n" }, "vlanId": { - "type": "integer", - "description": "if WAN interface is on a VLAN\n" + "type": "string" }, "vpnPaths": { "type": "object", @@ -12357,30 +12437,37 @@ }, "wanArpPolicer": { "type": "string", - "description": "when `wan_type`==`broadband`. enum: `default`, `max`, `recommended`\n" + "description": "Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended`\n" }, "wanExtIp": { "type": "string", - "description": "optional, if spoke should reach this port by a different IP\n" + "description": "Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP\n" }, "wanExtraRoutes": { "type": "object", "additionalProperties": { "$ref": "#/types/junipermist:org/DeviceprofileGatewayPortConfigWanExtraRoutes:DeviceprofileGatewayPortConfigWanExtraRoutes" }, - "description": "Property Key is the destianation CIDR (e.g \"100.100.100.0/24\")\n" + "description": "Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g \"100.100.100.0/24\")\n" + }, + "wanNetworks": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined\n" }, "wanProbeOverride": { "$ref": "#/types/junipermist:org/DeviceprofileGatewayPortConfigWanProbeOverride:DeviceprofileGatewayPortConfigWanProbeOverride", - "description": "if `usage`==`wan`\n" + "description": "Only if `usage`==`wan`\n" }, "wanSourceNat": { "$ref": "#/types/junipermist:org/DeviceprofileGatewayPortConfigWanSourceNat:DeviceprofileGatewayPortConfigWanSourceNat", - "description": "optional, by default, source-NAT is performed on all WAN Ports using the interface-ip\n" + "description": "Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip\n" }, "wanType": { "type": "string", - "description": "if `usage`==`wan`. enum: `broadband`, `dsl`, `lte`\n" + "description": "Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte`\n" } }, "type": "object", @@ -12411,6 +12498,7 @@ "svrPortRange", "usage", "wanArpPolicer", + "wanNetworks", "wanType" ] } @@ -12434,14 +12522,15 @@ }, "gateway": { "type": "string", - "description": "except for out-of_band interface (vme/em0/fxp0)\n" + "description": "except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. \"192.168.1.1\") or a Variable (i.e. \"{{myvar}}\")\n" }, "ip": { - "type": "string" + "type": "string", + "description": "Interface IP Address (i.e. \"192.168.1.8\") or a Variable (i.e. \"{{myvar}}\")\n" }, "netmask": { "type": "string", - "description": "used only if `subnet` is not specified in `networks`\n" + "description": "used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. \"/24\") or a Variable (i.e. \"{{myvar}}\")\n" }, "network": { "type": "string", @@ -12482,10 +12571,14 @@ "items": { "type": "integer" }, - "description": "percentages for differet class of traffic: high / medium / low / best-effort\nsum must be equal to 100\n" + "description": "percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100\n" }, "enabled": { "type": "boolean" + }, + "maxTxKbps": { + "type": "integer", + "description": "Interface Transmit Cap in kbps\n" } }, "type": "object", @@ -12541,10 +12634,14 @@ "items": { "type": "integer" }, - "description": "percentages for differet class of traffic: high / medium / low / best-effort\nsum must be equal to 100\n" + "description": "percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100\n" }, "enabled": { "type": "boolean" + }, + "maxTxKbps": { + "type": "integer", + "description": "Interface Transmit Cap in kbps\n" } }, "type": "object", @@ -12649,6 +12746,13 @@ }, "description": "for SSR, hub decides how VRF routes are leaked on spoke\n" }, + "aggregates": { + "type": "array", + "items": { + "type": "string" + }, + "description": "route aggregation\n" + }, "communities": { "type": "array", "items": { @@ -12743,7 +12847,7 @@ "items": { "type": "string" }, - "description": "overlay-facing criteria (used for bgp_config where via=vpn)\nordered-\n" + "description": "overlay-facing criteria (used for bgp_config where via=vpn). ordered-\n" } }, "type": "object" @@ -12755,7 +12859,7 @@ }, "vrfName": { "type": "string", - "description": "name of the vrf instance\nit can also be the name of the VPN or wan if they\n" + "description": "name of the vrf instance, it can also be the name of the VPN or wan if they\n" } }, "type": "object", @@ -12810,7 +12914,7 @@ }, "pathPreference": { "type": "string", - "description": "by default, we derive all paths available and use them\noptionally, you can customize by using `path_preference`\n" + "description": "by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference`\n" }, "servicepolicyId": { "type": "string", @@ -12917,71 +13021,73 @@ }, "ikeLifetime": { "type": "integer", - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`. Must be between 180 and 86400\n" }, "ikeMode": { "type": "string", - "description": "Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main`\n" + "description": "Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main`\n" }, "ikeProposals": { "type": "array", "items": { "$ref": "#/types/junipermist:org/DeviceprofileGatewayTunnelConfigsIkeProposal:DeviceprofileGatewayTunnelConfigsIkeProposal" }, - "description": "if `provider`== `custom-ipsec`\n" + "description": "if `provider`==`custom-ipsec`\n" }, "ipsecLifetime": { "type": "integer", - "description": "if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`. Must be between 180 and 86400\n" }, "ipsecProposals": { "type": "array", "items": { "$ref": "#/types/junipermist:org/DeviceprofileGatewayTunnelConfigsIpsecProposal:DeviceprofileGatewayTunnelConfigsIpsecProposal" }, - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`\n" }, "localId": { "type": "string", - "description": "Only if:\n * `provider`== `zscaler-ipsec`\n * `provider`==`jse-ipsec`\n * `provider`== `custom-ipsec`\n" + "description": "Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "mode": { "type": "string", - "description": "enum: `active-active`, `active-standby`\n" + "description": "Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby`\n" }, "networks": { "type": "array", "items": { "type": "string" }, - "description": "networks reachable via this tunnel\n" + "description": "if `provider`==`custom-ipsec`, networks reachable via this tunnel\n" }, "primary": { - "$ref": "#/types/junipermist:org/DeviceprofileGatewayTunnelConfigsPrimary:DeviceprofileGatewayTunnelConfigsPrimary" + "$ref": "#/types/junipermist:org/DeviceprofileGatewayTunnelConfigsPrimary:DeviceprofileGatewayTunnelConfigsPrimary", + "description": "Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "probe": { "$ref": "#/types/junipermist:org/DeviceprofileGatewayTunnelConfigsProbe:DeviceprofileGatewayTunnelConfigsProbe", - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`\n" }, "protocol": { "type": "string", - "description": "Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec`\n" }, "provider": { "type": "string", - "description": "enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec`\n" + "description": "Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec`\n" }, "psk": { "type": "string", - "description": "Only if:\n * `provider`== `zscaler-ipsec`\n * `provider`==`jse-ipsec`\n * `provider`== `custom-ipsec`\n", + "description": "Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n", "secret": true }, "secondary": { - "$ref": "#/types/junipermist:org/DeviceprofileGatewayTunnelConfigsSecondary:DeviceprofileGatewayTunnelConfigsSecondary" + "$ref": "#/types/junipermist:org/DeviceprofileGatewayTunnelConfigsSecondary:DeviceprofileGatewayTunnelConfigsSecondary", + "description": "Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "version": { "type": "string", - "description": "Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2`\n" + "description": "Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2`\n" } }, "type": "object", @@ -13002,16 +13108,28 @@ "type": "boolean" }, "latlng": { - "$ref": "#/types/junipermist:org/DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng:DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng" + "$ref": "#/types/junipermist:org/DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng:DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng", + "description": "API override for POP selection\n" }, "primary": { "$ref": "#/types/junipermist:org/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary:DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary" }, + "provider": { + "type": "string", + "description": "enum: `jse-ipsec`, `zscaler-ipsec`\n" + }, + "region": { + "type": "string", + "description": "API override for POP selection\n" + }, "secondary": { "$ref": "#/types/junipermist:org/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary:DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary" } }, - "type": "object" + "type": "object", + "required": [ + "provider" + ] }, "junipermist:org/DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng:DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng": { "properties": { @@ -13030,8 +13148,11 @@ }, "junipermist:org/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary:DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary": { "properties": { - "numHosts": { - "type": "string" + "probeIps": { + "type": "array", + "items": { + "type": "string" + } }, "wanNames": { "type": "array", @@ -13045,8 +13166,11 @@ }, "junipermist:org/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary:DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary": { "properties": { - "numHosts": { - "type": "string" + "probeIps": { + "type": "array", + "items": { + "type": "string" + } }, "wanNames": { "type": "array", @@ -13091,7 +13215,7 @@ }, "dhGroup": { "type": "string", - "description": "Only if `provider`== `custom-ipsec`. enum:\n * 1\n * 2 (1024-bit)\n * 5\n * 14 (default, 2048-bit)\n * 15 (3072-bit)\n * 16 (4096-bit)\n * 19 (256-bit ECP)\n * 20 (384-bit ECP)\n * 21 (521-bit ECP)\n * 24 (2048-bit ECP)\n" + "description": "Only if `provider`==`custom-ipsec`. enum:\n * 1\n * 2 (1024-bit)\n * 5\n * 14 (default, 2048-bit)\n * 15 (3072-bit)\n * 16 (4096-bit)\n * 19 (256-bit ECP)\n * 20 (384-bit ECP)\n * 21 (521-bit ECP)\n * 24 (2048-bit ECP)\n" }, "encAlgo": { "type": "string", @@ -13121,7 +13245,7 @@ "items": { "type": "string" }, - "description": "Only if:\n * `provider`== `zscaler-gre`\n * `provider`== `custom-gre`\n" + "description": "Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre`\n" }, "probeIps": { "type": "array", @@ -13134,7 +13258,7 @@ "items": { "type": "string" }, - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "wanNames": { "type": "array", @@ -13143,7 +13267,11 @@ } } }, - "type": "object" + "type": "object", + "required": [ + "hosts", + "wanNames" + ] }, "junipermist:org/DeviceprofileGatewayTunnelConfigsProbe:DeviceprofileGatewayTunnelConfigsProbe": { "properties": { @@ -13186,7 +13314,7 @@ "items": { "type": "string" }, - "description": "Only if:\n * `provider`== `zscaler-gre`\n * `provider`== `custom-gre`\n" + "description": "Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre`\n" }, "probeIps": { "type": "array", @@ -13199,7 +13327,7 @@ "items": { "type": "string" }, - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "wanNames": { "type": "array", @@ -13208,7 +13336,11 @@ } } }, - "type": "object" + "type": "object", + "required": [ + "hosts", + "wanNames" + ] }, "junipermist:org/DeviceprofileGatewayTunnelProviderOptions:DeviceprofileGatewayTunnelProviderOptions": { "properties": { @@ -13225,127 +13357,142 @@ }, "junipermist:org/DeviceprofileGatewayTunnelProviderOptionsJse:DeviceprofileGatewayTunnelProviderOptionsJse": { "properties": { - "name": { - "type": "string" - }, "numUsers": { "type": "integer" + }, + "orgName": { + "type": "string", + "description": "JSE Organization name\n" } }, "type": "object" }, "junipermist:org/DeviceprofileGatewayTunnelProviderOptionsZscaler:DeviceprofileGatewayTunnelProviderOptionsZscaler": { "properties": { - "aupAcceptanceRequired": { + "aupBlockInternetUntilAccepted": { "type": "boolean" }, - "aupExpire": { - "type": "integer", - "description": "days before AUP is requested again\n" + "aupEnabled": { + "type": "boolean", + "description": "Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP)\n" }, - "aupSslProxy": { + "aupForceSslInspection": { "type": "boolean", "description": "proxy HTTPs traffic, requiring Zscaler cert to be installed in browser\n" }, - "downloadMbps": { + "aupTimeoutInDays": { "type": "integer", - "description": "the download bandwidth cap of the link, in Mbps\n" + "description": "Required if `aup_enabled`==`true`. Days before AUP is requested again\n" }, - "enableAup": { + "authRequired": { "type": "boolean", - "description": "if `use_xff`==`true`, display Acceptable Use Policy (AUP)\n" + "description": "Enable this option to enforce user authentication\n" }, - "enableCaution": { + "cautionEnabled": { "type": "boolean", - "description": "when `enforce_authentication`==`false`, display caution notification for non-authenticated users\n" + "description": "Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users\n" }, - "enforceAuthentication": { - "type": "boolean" + "dnBandwidth": { + "type": "number", + "description": "the download bandwidth cap of the link, in Mbps. Disabled if not set\n" }, - "name": { - "type": "string" + "idleTimeInMinutes": { + "type": "integer", + "description": "Required if `surrogate_IP`==`true`, idle Time to Disassociation\n" + }, + "ofwEnabled": { + "type": "boolean", + "description": "if `true`, enable the firewall control option\n" }, "subLocations": { "type": "array", "items": { "$ref": "#/types/junipermist:org/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation:DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation" }, - "description": "if `use_xff`==`true`\n" + "description": "`sub-locations` can be used for specific uses cases to define different configuration based on the user network\n" }, - "uploadMbps": { + "surrogateIp": { + "type": "boolean", + "description": "Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies\n" + }, + "surrogateIpEnforcedForKnownBrowsers": { + "type": "boolean", + "description": "Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers\n" + }, + "surrogateRefreshTimeInMinutes": { "type": "integer", - "description": "the download bandwidth cap of the link, in Mbps\n" + "description": "Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy\n" + }, + "upBandwidth": { + "type": "number", + "description": "the download bandwidth cap of the link, in Mbps. Disabled if not set\n" }, - "useXff": { + "xffForwardEnabled": { "type": "boolean", "description": "location uses proxy chaining to forward traffic\n" } }, - "type": "object", - "language": { - "nodejs": { - "requiredOutputs": [ - "aupAcceptanceRequired", - "aupExpire", - "aupSslProxy", - "enableAup", - "enableCaution", - "enforceAuthentication" - ] - } - } + "type": "object" }, "junipermist:org/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation:DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation": { "properties": { - "aupAcceptanceRequired": { + "aupBlockInternetUntilAccepted": { "type": "boolean" }, - "aupExpire": { - "type": "integer", - "description": "days before AUP is requested again\n" + "aupEnabled": { + "type": "boolean", + "description": "Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP)\n" }, - "aupSslProxy": { + "aupForceSslInspection": { "type": "boolean", "description": "proxy HTTPs traffic, requiring Zscaler cert to be installed in browser\n" }, - "downloadMbps": { + "aupTimeoutInDays": { "type": "integer", - "description": "the download bandwidth cap of the link, in Mbps\n" + "description": "Required if `aup_enabled`==`true`. Days before AUP is requested again\n" }, - "enableAup": { + "authRequired": { "type": "boolean", - "description": "if `use_xff`==`true`, display Acceptable Use Policy (AUP)\n" + "description": "Enable this option to authenticate users\n" }, - "enableCaution": { + "cautionEnabled": { "type": "boolean", - "description": "when `enforce_authentication`==`false`, display caution notification for non-authenticated users\n" + "description": "Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users\n" }, - "enforceAuthentication": { - "type": "boolean" + "dnBandwidth": { + "type": "number", + "description": "the download bandwidth cap of the link, in Mbps. Disabled if not set\n" }, - "subnets": { - "type": "array", - "items": { - "type": "string" - } + "idleTimeInMinutes": { + "type": "integer", + "description": "Required if `surrogate_IP`==`true`, idle Time to Disassociation\n" + }, + "name": { + "type": "string", + "description": "Network name\n" }, - "uploadMbps": { + "ofwEnabled": { + "type": "boolean", + "description": "if `true`, enable the firewall control option\n" + }, + "surrogateIp": { + "type": "boolean", + "description": "Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies\n" + }, + "surrogateIpEnforcedForKnownBrowsers": { + "type": "boolean", + "description": "Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers\n" + }, + "surrogateRefreshTimeInMinutes": { "type": "integer", - "description": "the download bandwidth cap of the link, in Mbps\n" + "description": "Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy\n" + }, + "upBandwidth": { + "type": "number", + "description": "the download bandwidth cap of the link, in Mbps. Disabled if not set\n" } }, - "type": "object", - "language": { - "nodejs": { - "requiredOutputs": [ - "aupAcceptanceRequired", - "aupExpire", - "aupSslProxy", - "enableCaution", - "enforceAuthentication" - ] - } - } + "type": "object" }, "junipermist:org/DeviceprofileGatewayVrfConfig:DeviceprofileGatewayVrfConfig": { "properties": { @@ -13562,7 +13709,7 @@ }, "extendedV4Nexthop": { "type": "boolean", - "description": "by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6)\nfor v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this\n" + "description": "by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this\n" }, "gracefulRestartTime": { "type": "integer", @@ -14007,7 +14154,8 @@ "type": "object", "additionalProperties": { "$ref": "#/types/junipermist:org/GatewaytemplateNetworkTenants:GatewaytemplateNetworkTenants" - } + }, + "description": "Property key must be the user/tenant name (i.e. \"printer-1\") or a Variable (i.e. \"{{myvar}}\")\n" }, "vlanId": { "type": "string" @@ -14053,7 +14201,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/GatewaytemplateNetworkInternetAccessDestinationNat:GatewaytemplateNetworkInternetAccessDestinationNat" }, - "description": "Property key may be an IP/Port (i.e. \"63.16.0.3:443\"), or a port (i.e. \":2222\")\n" + "description": "Property key can be an External IP (i.e. \"63.16.0.3\"), an External IP:Port (i.e. \"63.16.0.3:443\"), an External Port (i.e. \":443\"), an External CIDR (i.e. \"63.16.0.0/30\"), an External CIDR:Port (i.e. \"63.16.0.0/30:443\") or a Variable (i.e. \"{{myvar}}\"). At least one of the `internal_ip` or `port` must be defined\n" }, "enabled": { "type": "boolean" @@ -14067,7 +14215,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/GatewaytemplateNetworkInternetAccessStaticNat:GatewaytemplateNetworkInternetAccessStaticNat" }, - "description": "Property key may be an IP Address (i.e. \"172.16.0.1\"), and IP Address and Port (i.e. \"172.16.0.1:8443\") or a CIDR (i.e. \"172.16.0.12/20\")\n" + "description": "Property key may be an External IP Address (i.e. \"63.16.0.3\"), a CIDR (i.e. \"63.16.0.12/20\") or a Variable (i.e. \"{{myvar}}\")\n" } }, "type": "object", @@ -14083,13 +14231,19 @@ "junipermist:org/GatewaytemplateNetworkInternetAccessDestinationNat:GatewaytemplateNetworkInternetAccessDestinationNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Destination NAT destination IP Address. Must be an IP (i.e. \"192.168.70.30\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" }, "port": { - "type": "integer" + "type": "string", + "description": "The Destination NAT destination IP Address. Must be a Port (i.e. \"443\") or a Variable (i.e. \"{{myvar}}\")\n" + }, + "wanName": { + "type": "string", + "description": "SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity\n" } }, "type": "object" @@ -14097,17 +14251,22 @@ "junipermist:org/GatewaytemplateNetworkInternetAccessStaticNat:GatewaytemplateNetworkInternetAccessStaticNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Static NAT destination IP Address. Must be an IP Address (i.e. \"192.168.70.3\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" }, "wanName": { "type": "string", - "description": "If not set, we configure the nat policies against all WAN ports for simplicity\n" + "description": "SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. \"{{myvar}}\")\n" } }, - "type": "object" + "type": "object", + "required": [ + "internalIp", + "name" + ] }, "junipermist:org/GatewaytemplateNetworkMulticast:GatewaytemplateNetworkMulticast": { "properties": { @@ -14171,7 +14330,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/GatewaytemplateNetworkVpnAccessDestinationNat:GatewaytemplateNetworkVpnAccessDestinationNat" }, - "description": "Property key may be an IP/Port (i.e. \"63.16.0.3:443\"), or a port (i.e. \":2222\")\n" + "description": "Property key can be an External IP (i.e. \"63.16.0.3\"), an External IP:Port (i.e. \"63.16.0.3:443\"), an External Port (i.e. \":443\"), an External CIDR (i.e. \"63.16.0.0/30\"), an External CIDR:Port (i.e. \"63.16.0.0/30:443\") or a Variable (i.e. \"{{myvar}}\"). At least one of the `internal_ip` or `port` must be defined\n" }, "natPool": { "type": "string", @@ -14187,14 +14346,14 @@ }, "noReadvertiseToOverlay": { "type": "boolean", - "description": "toward overlay\nhow HUB should deal with routes it received from Spokes\n" + "description": "toward overlay, how HUB should deal with routes it received from Spokes\n" }, "otherVrfs": { "type": "array", "items": { "type": "string" }, - "description": "by default, the routes are only readvertised toward the same vrf on spoke\nto allow it to be leaked to other vrfs\n" + "description": "by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs\n" }, "routed": { "type": "boolean", @@ -14209,11 +14368,11 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/GatewaytemplateNetworkVpnAccessStaticNat:GatewaytemplateNetworkVpnAccessStaticNat" }, - "description": "Property key may be an IP Address (i.e. \"172.16.0.1\"), and IP Address and Port (i.e. \"172.16.0.1:8443\") or a CIDR (i.e. \"172.16.0.12/20\")\n" + "description": "Property key may be an External IP Address (i.e. \"63.16.0.3\"), a CIDR (i.e. \"63.16.0.12/20\") or a Variable (i.e. \"{{myvar}}\")\n" }, "summarizedSubnet": { "type": "string", - "description": "toward overlay\nhow HUB should deal with routes it received from Spokes\n" + "description": "toward overlay, how HUB should deal with routes it received from Spokes\n" }, "summarizedSubnetToLanBgp": { "type": "string", @@ -14228,7 +14387,6 @@ "language": { "nodejs": { "requiredOutputs": [ - "destinationNat", "noReadvertiseToLanBgp", "noReadvertiseToLanOspf", "otherVrfs", @@ -14241,13 +14399,14 @@ "junipermist:org/GatewaytemplateNetworkVpnAccessDestinationNat:GatewaytemplateNetworkVpnAccessDestinationNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Destination NAT destination IP Address. Must be an IP (i.e. \"192.168.70.30\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" }, "port": { - "type": "integer" + "type": "string" } }, "type": "object" @@ -14263,17 +14422,18 @@ "junipermist:org/GatewaytemplateNetworkVpnAccessStaticNat:GatewaytemplateNetworkVpnAccessStaticNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Static NAT destination IP Address. Must be an IP Address (i.e. \"192.168.70.3\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" - }, - "wanName": { - "type": "string", - "description": "If not set, we configure the nat policies against all WAN ports for simplicity\n" } }, - "type": "object" + "type": "object", + "required": [ + "internalIp", + "name" + ] }, "junipermist:org/GatewaytemplateOobIpConfig:GatewaytemplateOobIpConfig": { "properties": { @@ -14445,7 +14605,7 @@ }, "aeLacpForceUp": { "type": "boolean", - "description": "For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n\nUse case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n\nNote: Turning this on will enable force-up on one of the interfaces in the bundle only\n" + "description": "For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only\n" }, "aggregated": { "type": "boolean" @@ -14455,7 +14615,8 @@ "description": "if want to generate port up/down alarm, set it to true\n" }, "description": { - "type": "string" + "type": "string", + "description": "Interface Description. Can be a variable (i.e. \"{{myvar}}\")\n" }, "disableAutoneg": { "type": "boolean" @@ -14470,11 +14631,11 @@ }, "dslVci": { "type": "integer", - "description": "if `wan_type`==`dsl`\n16 bit int\n" + "description": "if `wan_type`==`dsl`, 16 bit int\n" }, "dslVpi": { "type": "integer", - "description": "if `wan_type`==`dsl`\n8 bit int\n" + "description": "if `wan_type`==`dsl`, 8 bit int\n" }, "duplex": { "type": "string", @@ -14516,7 +14677,7 @@ "items": { "type": "string" }, - "description": "if `usage`==`lan`\n" + "description": "if `usage`==`lan`, name of the `junipermist.org.Network` resource\n" }, "outerVlanId": { "type": "integer", @@ -14527,7 +14688,7 @@ }, "portNetwork": { "type": "string", - "description": "if `usage`==`lan`\n" + "description": "Only for SRX and if `usage`==`lan`, the Untagged VLAN Network\n" }, "preserveDscp": { "type": "boolean", @@ -14571,8 +14732,7 @@ "description": "port usage name. enum: `ha_control`, `ha_data`, `lan`, `wan`\n" }, "vlanId": { - "type": "integer", - "description": "if WAN interface is on a VLAN\n" + "type": "string" }, "vpnPaths": { "type": "object", @@ -14583,30 +14743,37 @@ }, "wanArpPolicer": { "type": "string", - "description": "when `wan_type`==`broadband`. enum: `default`, `max`, `recommended`\n" + "description": "Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended`\n" }, "wanExtIp": { "type": "string", - "description": "optional, if spoke should reach this port by a different IP\n" + "description": "Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP\n" }, "wanExtraRoutes": { "type": "object", "additionalProperties": { "$ref": "#/types/junipermist:org/GatewaytemplatePortConfigWanExtraRoutes:GatewaytemplatePortConfigWanExtraRoutes" }, - "description": "Property Key is the destianation CIDR (e.g \"100.100.100.0/24\")\n" + "description": "Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g \"100.100.100.0/24\")\n" + }, + "wanNetworks": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined\n" }, "wanProbeOverride": { "$ref": "#/types/junipermist:org/GatewaytemplatePortConfigWanProbeOverride:GatewaytemplatePortConfigWanProbeOverride", - "description": "if `usage`==`wan`\n" + "description": "Only if `usage`==`wan`\n" }, "wanSourceNat": { "$ref": "#/types/junipermist:org/GatewaytemplatePortConfigWanSourceNat:GatewaytemplatePortConfigWanSourceNat", - "description": "optional, by default, source-NAT is performed on all WAN Ports using the interface-ip\n" + "description": "Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip\n" }, "wanType": { "type": "string", - "description": "if `usage`==`wan`. enum: `broadband`, `dsl`, `lte`\n" + "description": "Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte`\n" } }, "type": "object", @@ -14630,12 +14797,14 @@ "networks", "poeDisabled", "preserveDscp", + "redundant", "rethNodes", "speed", "ssrNoVirtualMac", "svrPortRange", "usage", "wanArpPolicer", + "wanNetworks", "wanType" ] } @@ -14659,14 +14828,15 @@ }, "gateway": { "type": "string", - "description": "except for out-of_band interface (vme/em0/fxp0)\n" + "description": "except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. \"192.168.1.1\") or a Variable (i.e. \"{{myvar}}\")\n" }, "ip": { - "type": "string" + "type": "string", + "description": "Interface IP Address (i.e. \"192.168.1.8\") or a Variable (i.e. \"{{myvar}}\")\n" }, "netmask": { "type": "string", - "description": "used only if `subnet` is not specified in `networks`\n" + "description": "used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. \"/24\") or a Variable (i.e. \"{{myvar}}\")\n" }, "network": { "type": "string", @@ -14707,10 +14877,14 @@ "items": { "type": "integer" }, - "description": "percentages for differet class of traffic: high / medium / low / best-effort\nsum must be equal to 100\n" + "description": "percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100\n" }, "enabled": { "type": "boolean" + }, + "maxTxKbps": { + "type": "integer", + "description": "Interface Transmit Cap in kbps\n" } }, "type": "object", @@ -14766,10 +14940,14 @@ "items": { "type": "integer" }, - "description": "percentages for differet class of traffic: high / medium / low / best-effort\nsum must be equal to 100\n" + "description": "percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100\n" }, "enabled": { "type": "boolean" + }, + "maxTxKbps": { + "type": "integer", + "description": "Interface Transmit Cap in kbps\n" } }, "type": "object", @@ -14874,6 +15052,13 @@ }, "description": "for SSR, hub decides how VRF routes are leaked on spoke\n" }, + "aggregates": { + "type": "array", + "items": { + "type": "string" + }, + "description": "route aggregation\n" + }, "communities": { "type": "array", "items": { @@ -14968,7 +15153,7 @@ "items": { "type": "string" }, - "description": "overlay-facing criteria (used for bgp_config where via=vpn)\nordered-\n" + "description": "overlay-facing criteria (used for bgp_config where via=vpn). ordered-\n" } }, "type": "object" @@ -14980,7 +15165,7 @@ }, "vrfName": { "type": "string", - "description": "name of the vrf instance\nit can also be the name of the VPN or wan if they\n" + "description": "name of the vrf instance, it can also be the name of the VPN or wan if they\n" } }, "type": "object", @@ -15035,7 +15220,7 @@ }, "pathPreference": { "type": "string", - "description": "by default, we derive all paths available and use them\noptionally, you can customize by using `path_preference`\n" + "description": "by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference`\n" }, "servicepolicyId": { "type": "string", @@ -15142,71 +15327,73 @@ }, "ikeLifetime": { "type": "integer", - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`. Must be between 180 and 86400\n" }, "ikeMode": { "type": "string", - "description": "Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main`\n" + "description": "Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main`\n" }, "ikeProposals": { "type": "array", "items": { "$ref": "#/types/junipermist:org/GatewaytemplateTunnelConfigsIkeProposal:GatewaytemplateTunnelConfigsIkeProposal" }, - "description": "if `provider`== `custom-ipsec`\n" + "description": "if `provider`==`custom-ipsec`\n" }, "ipsecLifetime": { "type": "integer", - "description": "if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`. Must be between 180 and 86400\n" }, "ipsecProposals": { "type": "array", "items": { "$ref": "#/types/junipermist:org/GatewaytemplateTunnelConfigsIpsecProposal:GatewaytemplateTunnelConfigsIpsecProposal" }, - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`\n" }, "localId": { "type": "string", - "description": "Only if:\n * `provider`== `zscaler-ipsec`\n * `provider`==`jse-ipsec`\n * `provider`== `custom-ipsec`\n" + "description": "Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "mode": { "type": "string", - "description": "enum: `active-active`, `active-standby`\n" + "description": "Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby`\n" }, "networks": { "type": "array", "items": { "type": "string" }, - "description": "networks reachable via this tunnel\n" + "description": "if `provider`==`custom-ipsec`, networks reachable via this tunnel\n" }, "primary": { - "$ref": "#/types/junipermist:org/GatewaytemplateTunnelConfigsPrimary:GatewaytemplateTunnelConfigsPrimary" + "$ref": "#/types/junipermist:org/GatewaytemplateTunnelConfigsPrimary:GatewaytemplateTunnelConfigsPrimary", + "description": "Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "probe": { "$ref": "#/types/junipermist:org/GatewaytemplateTunnelConfigsProbe:GatewaytemplateTunnelConfigsProbe", - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`\n" }, "protocol": { "type": "string", - "description": "Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec`\n" + "description": "Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec`\n" }, "provider": { "type": "string", - "description": "enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec`\n" + "description": "Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec`\n" }, "psk": { "type": "string", - "description": "Only if:\n * `provider`== `zscaler-ipsec`\n * `provider`==`jse-ipsec`\n * `provider`== `custom-ipsec`\n", + "description": "Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n", "secret": true }, "secondary": { - "$ref": "#/types/junipermist:org/GatewaytemplateTunnelConfigsSecondary:GatewaytemplateTunnelConfigsSecondary" + "$ref": "#/types/junipermist:org/GatewaytemplateTunnelConfigsSecondary:GatewaytemplateTunnelConfigsSecondary", + "description": "Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "version": { "type": "string", - "description": "Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2`\n" + "description": "Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2`\n" } }, "type": "object", @@ -15227,16 +15414,28 @@ "type": "boolean" }, "latlng": { - "$ref": "#/types/junipermist:org/GatewaytemplateTunnelConfigsAutoProvisionLatlng:GatewaytemplateTunnelConfigsAutoProvisionLatlng" + "$ref": "#/types/junipermist:org/GatewaytemplateTunnelConfigsAutoProvisionLatlng:GatewaytemplateTunnelConfigsAutoProvisionLatlng", + "description": "API override for POP selection\n" }, "primary": { "$ref": "#/types/junipermist:org/GatewaytemplateTunnelConfigsAutoProvisionPrimary:GatewaytemplateTunnelConfigsAutoProvisionPrimary" }, + "provider": { + "type": "string", + "description": "enum: `jse-ipsec`, `zscaler-ipsec`\n" + }, + "region": { + "type": "string", + "description": "API override for POP selection\n" + }, "secondary": { "$ref": "#/types/junipermist:org/GatewaytemplateTunnelConfigsAutoProvisionSecondary:GatewaytemplateTunnelConfigsAutoProvisionSecondary" } }, - "type": "object" + "type": "object", + "required": [ + "provider" + ] }, "junipermist:org/GatewaytemplateTunnelConfigsAutoProvisionLatlng:GatewaytemplateTunnelConfigsAutoProvisionLatlng": { "properties": { @@ -15255,8 +15454,11 @@ }, "junipermist:org/GatewaytemplateTunnelConfigsAutoProvisionPrimary:GatewaytemplateTunnelConfigsAutoProvisionPrimary": { "properties": { - "numHosts": { - "type": "string" + "probeIps": { + "type": "array", + "items": { + "type": "string" + } }, "wanNames": { "type": "array", @@ -15270,8 +15472,11 @@ }, "junipermist:org/GatewaytemplateTunnelConfigsAutoProvisionSecondary:GatewaytemplateTunnelConfigsAutoProvisionSecondary": { "properties": { - "numHosts": { - "type": "string" + "probeIps": { + "type": "array", + "items": { + "type": "string" + } }, "wanNames": { "type": "array", @@ -15316,7 +15521,7 @@ }, "dhGroup": { "type": "string", - "description": "Only if `provider`== `custom-ipsec`. enum:\n * 1\n * 2 (1024-bit)\n * 5\n * 14 (default, 2048-bit)\n * 15 (3072-bit)\n * 16 (4096-bit)\n * 19 (256-bit ECP)\n * 20 (384-bit ECP)\n * 21 (521-bit ECP)\n * 24 (2048-bit ECP)\n" + "description": "Only if `provider`==`custom-ipsec`. enum:\n * 1\n * 2 (1024-bit)\n * 5\n * 14 (default, 2048-bit)\n * 15 (3072-bit)\n * 16 (4096-bit)\n * 19 (256-bit ECP)\n * 20 (384-bit ECP)\n * 21 (521-bit ECP)\n * 24 (2048-bit ECP)\n" }, "encAlgo": { "type": "string", @@ -15346,7 +15551,7 @@ "items": { "type": "string" }, - "description": "Only if:\n * `provider`== `zscaler-gre`\n * `provider`== `custom-gre`\n" + "description": "Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre`\n" }, "probeIps": { "type": "array", @@ -15359,7 +15564,7 @@ "items": { "type": "string" }, - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "wanNames": { "type": "array", @@ -15368,7 +15573,11 @@ } } }, - "type": "object" + "type": "object", + "required": [ + "hosts", + "wanNames" + ] }, "junipermist:org/GatewaytemplateTunnelConfigsProbe:GatewaytemplateTunnelConfigsProbe": { "properties": { @@ -15411,7 +15620,7 @@ "items": { "type": "string" }, - "description": "Only if:\n * `provider`== `zscaler-gre`\n * `provider`== `custom-gre`\n" + "description": "Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre`\n" }, "probeIps": { "type": "array", @@ -15424,7 +15633,7 @@ "items": { "type": "string" }, - "description": "Only if `provider`== `custom-ipsec`\n" + "description": "Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec`\n" }, "wanNames": { "type": "array", @@ -15433,7 +15642,11 @@ } } }, - "type": "object" + "type": "object", + "required": [ + "hosts", + "wanNames" + ] }, "junipermist:org/GatewaytemplateTunnelProviderOptions:GatewaytemplateTunnelProviderOptions": { "properties": { @@ -15450,58 +15663,77 @@ }, "junipermist:org/GatewaytemplateTunnelProviderOptionsJse:GatewaytemplateTunnelProviderOptionsJse": { "properties": { - "name": { - "type": "string" - }, "numUsers": { "type": "integer" + }, + "orgName": { + "type": "string", + "description": "JSE Organization name\n" } }, "type": "object" }, "junipermist:org/GatewaytemplateTunnelProviderOptionsZscaler:GatewaytemplateTunnelProviderOptionsZscaler": { "properties": { - "aupAcceptanceRequired": { + "aupBlockInternetUntilAccepted": { "type": "boolean" }, - "aupExpire": { - "type": "integer", - "description": "days before AUP is requested again\n" + "aupEnabled": { + "type": "boolean", + "description": "Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP)\n" }, - "aupSslProxy": { + "aupForceSslInspection": { "type": "boolean", "description": "proxy HTTPs traffic, requiring Zscaler cert to be installed in browser\n" }, - "downloadMbps": { + "aupTimeoutInDays": { "type": "integer", - "description": "the download bandwidth cap of the link, in Mbps\n" + "description": "Required if `aup_enabled`==`true`. Days before AUP is requested again\n" }, - "enableAup": { + "authRequired": { "type": "boolean", - "description": "if `use_xff`==`true`, display Acceptable Use Policy (AUP)\n" + "description": "Enable this option to enforce user authentication\n" }, - "enableCaution": { + "cautionEnabled": { "type": "boolean", - "description": "when `enforce_authentication`==`false`, display caution notification for non-authenticated users\n" + "description": "Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users\n" }, - "enforceAuthentication": { - "type": "boolean" + "dnBandwidth": { + "type": "number", + "description": "the download bandwidth cap of the link, in Mbps. Disabled if not set\n" }, - "name": { - "type": "string" + "idleTimeInMinutes": { + "type": "integer", + "description": "Required if `surrogate_IP`==`true`, idle Time to Disassociation\n" + }, + "ofwEnabled": { + "type": "boolean", + "description": "if `true`, enable the firewall control option\n" }, "subLocations": { "type": "array", "items": { "$ref": "#/types/junipermist:org/GatewaytemplateTunnelProviderOptionsZscalerSubLocation:GatewaytemplateTunnelProviderOptionsZscalerSubLocation" }, - "description": "if `use_xff`==`true`\n" + "description": "`sub-locations` can be used for specific uses cases to define different configuration based on the user network\n" }, - "uploadMbps": { + "surrogateIp": { + "type": "boolean", + "description": "Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies\n" + }, + "surrogateIpEnforcedForKnownBrowsers": { + "type": "boolean", + "description": "Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers\n" + }, + "surrogateRefreshTimeInMinutes": { "type": "integer", - "description": "the download bandwidth cap of the link, in Mbps\n" + "description": "Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy\n" }, - "useXff": { + "upBandwidth": { + "type": "number", + "description": "the download bandwidth cap of the link, in Mbps. Disabled if not set\n" + }, + "xffForwardEnabled": { "type": "boolean", "description": "location uses proxy chaining to forward traffic\n" } @@ -15510,55 +15742,63 @@ }, "junipermist:org/GatewaytemplateTunnelProviderOptionsZscalerSubLocation:GatewaytemplateTunnelProviderOptionsZscalerSubLocation": { "properties": { - "aupAcceptanceRequired": { + "aupBlockInternetUntilAccepted": { "type": "boolean" }, - "aupExpire": { - "type": "integer", - "description": "days before AUP is requested again\n" + "aupEnabled": { + "type": "boolean", + "description": "Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP)\n" }, - "aupSslProxy": { + "aupForceSslInspection": { "type": "boolean", "description": "proxy HTTPs traffic, requiring Zscaler cert to be installed in browser\n" }, - "downloadMbps": { + "aupTimeoutInDays": { "type": "integer", - "description": "the download bandwidth cap of the link, in Mbps\n" + "description": "Required if `aup_enabled`==`true`. Days before AUP is requested again\n" }, - "enableAup": { + "authRequired": { "type": "boolean", - "description": "if `use_xff`==`true`, display Acceptable Use Policy (AUP)\n" + "description": "Enable this option to authenticate users\n" }, - "enableCaution": { + "cautionEnabled": { "type": "boolean", - "description": "when `enforce_authentication`==`false`, display caution notification for non-authenticated users\n" + "description": "Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users\n" }, - "enforceAuthentication": { - "type": "boolean" + "dnBandwidth": { + "type": "number", + "description": "the download bandwidth cap of the link, in Mbps. Disabled if not set\n" }, - "subnets": { - "type": "array", - "items": { - "type": "string" - } + "idleTimeInMinutes": { + "type": "integer", + "description": "Required if `surrogate_IP`==`true`, idle Time to Disassociation\n" }, - "uploadMbps": { + "name": { + "type": "string", + "description": "Network name\n" + }, + "ofwEnabled": { + "type": "boolean", + "description": "if `true`, enable the firewall control option\n" + }, + "surrogateIp": { + "type": "boolean", + "description": "Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies\n" + }, + "surrogateIpEnforcedForKnownBrowsers": { + "type": "boolean", + "description": "Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers\n" + }, + "surrogateRefreshTimeInMinutes": { "type": "integer", - "description": "the download bandwidth cap of the link, in Mbps\n" + "description": "Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy\n" + }, + "upBandwidth": { + "type": "number", + "description": "the download bandwidth cap of the link, in Mbps. Disabled if not set\n" } }, - "type": "object", - "language": { - "nodejs": { - "requiredOutputs": [ - "aupAcceptanceRequired", - "aupExpire", - "aupSslProxy", - "enableCaution", - "enforceAuthentication" - ] - } - } + "type": "object" }, "junipermist:org/GatewaytemplateVrfConfig:GatewaytemplateVrfConfig": { "properties": { @@ -15891,7 +16131,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/NetworkInternetAccessDestinationNat:NetworkInternetAccessDestinationNat" }, - "description": "Property key may be an IP/Port (i.e. \"63.16.0.3:443\"), or a port (i.e. \":2222\")\n" + "description": "Property key can be an External IP (i.e. \"63.16.0.3\"), an External IP:Port (i.e. \"63.16.0.3:443\"), an External Port (i.e. \":443\"), an External CIDR (i.e. \"63.16.0.0/30\"), an External CIDR:Port (i.e. \"63.16.0.0/30:443\") or a Variable (i.e. \"{{myvar}}\"). At least one of the `internal_ip` or `port` must be defined\n" }, "enabled": { "type": "boolean" @@ -15905,7 +16145,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/NetworkInternetAccessStaticNat:NetworkInternetAccessStaticNat" }, - "description": "Property key may be an IP Address (i.e. \"172.16.0.1\"), and IP Address and Port (i.e. \"172.16.0.1:8443\") or a CIDR (i.e. \"172.16.0.12/20\")\n" + "description": "Property key may be an External IP Address (i.e. \"63.16.0.3\"), a CIDR (i.e. \"63.16.0.12/20\") or a Variable (i.e. \"{{myvar}}\")\n" } }, "type": "object", @@ -15921,13 +16161,19 @@ "junipermist:org/NetworkInternetAccessDestinationNat:NetworkInternetAccessDestinationNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Destination NAT destination IP Address. Must be an IP (i.e. \"192.168.70.30\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" }, "port": { - "type": "integer" + "type": "string", + "description": "The Destination NAT destination IP Address. Must be a Port (i.e. \"443\") or a Variable (i.e. \"{{myvar}}\")\n" + }, + "wanName": { + "type": "string", + "description": "SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity\n" } }, "type": "object" @@ -15935,14 +16181,55 @@ "junipermist:org/NetworkInternetAccessStaticNat:NetworkInternetAccessStaticNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Static NAT destination IP Address. Must be an IP Address (i.e. \"192.168.70.3\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" }, "wanName": { "type": "string", - "description": "If not set, we configure the nat policies against all WAN ports for simplicity\n" + "description": "SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. \"{{myvar}}\")\n" + } + }, + "type": "object", + "required": [ + "internalIp", + "name" + ] + }, + "junipermist:org/NetworkMulticast:NetworkMulticast": { + "properties": { + "disableIgmp": { + "type": "boolean", + "description": "if the network will only be the soruce of the multicast traffic, IGMP can be disabled\n" + }, + "enabled": { + "type": "boolean" + }, + "groups": { + "type": "object", + "additionalProperties": { + "$ref": "#/types/junipermist:org/NetworkMulticastGroups:NetworkMulticastGroups" + }, + "description": "Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example \"225.1.0.3/32\")\n" + } + }, + "type": "object", + "language": { + "nodejs": { + "requiredOutputs": [ + "disableIgmp", + "enabled" + ] + } + } + }, + "junipermist:org/NetworkMulticastGroups:NetworkMulticastGroups": { + "properties": { + "rpIp": { + "type": "string", + "description": "RP (rendezvous point) IP Address\n" } }, "type": "object" @@ -15973,7 +16260,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/NetworkVpnAccessDestinationNat:NetworkVpnAccessDestinationNat" }, - "description": "Property key may be an IP/Port (i.e. \"63.16.0.3:443\"), or a port (i.e. \":2222\")\n" + "description": "Property key can be an External IP (i.e. \"63.16.0.3\"), an External IP:Port (i.e. \"63.16.0.3:443\"), an External Port (i.e. \":443\"), an External CIDR (i.e. \"63.16.0.0/30\"), an External CIDR:Port (i.e. \"63.16.0.0/30:443\") or a Variable (i.e. \"{{myvar}}\"). At least one of the `internal_ip` or `port` must be defined\n" }, "natPool": { "type": "string", @@ -16011,7 +16298,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/NetworkVpnAccessStaticNat:NetworkVpnAccessStaticNat" }, - "description": "Property key may be an IP Address (i.e. \"172.16.0.1\"), and IP Address and Port (i.e. \"172.16.0.1:8443\") or a CIDR (i.e. \"172.16.0.12/20\")\n" + "description": "Property key may be an External IP Address (i.e. \"63.16.0.3\"), a CIDR (i.e. \"63.16.0.12/20\") or a Variable (i.e. \"{{myvar}}\")\n" }, "summarizedSubnet": { "type": "string", @@ -16030,7 +16317,6 @@ "language": { "nodejs": { "requiredOutputs": [ - "destinationNat", "noReadvertiseToLanBgp", "noReadvertiseToLanOspf", "otherVrfs", @@ -16043,13 +16329,14 @@ "junipermist:org/NetworkVpnAccessDestinationNat:NetworkVpnAccessDestinationNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Destination NAT destination IP Address. Must be an IP (i.e. \"192.168.70.30\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" }, "port": { - "type": "integer" + "type": "string" } }, "type": "object" @@ -16065,17 +16352,18 @@ "junipermist:org/NetworkVpnAccessStaticNat:NetworkVpnAccessStaticNat": { "properties": { "internalIp": { - "type": "string" + "type": "string", + "description": "The Static NAT destination IP Address. Must be an IP Address (i.e. \"192.168.70.3\") or a Variable (i.e. \"{{myvar}}\")\n" }, "name": { "type": "string" - }, - "wanName": { - "type": "string", - "description": "If not set, we configure the nat policies against all WAN ports for simplicity\n" } }, - "type": "object" + "type": "object", + "required": [ + "internalIp", + "name" + ] }, "junipermist:org/NetworktemplateAclPolicy:NetworktemplateAclPolicy": { "properties": { @@ -16084,7 +16372,7 @@ "items": { "$ref": "#/types/junipermist:org/NetworktemplateAclPolicyAction:NetworktemplateAclPolicyAction" }, - "description": "- for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n- for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to\n" + "description": "ACL Policy Actions:\n - for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to\n" }, "name": { "type": "string" @@ -16094,7 +16382,7 @@ "items": { "type": "string" }, - "description": "- for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n- for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to\n" + "description": "ACL Policy Source Tags:\n - for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to\n" } }, "type": "object" @@ -16118,7 +16406,7 @@ "properties": { "gbpTag": { "type": "integer", - "description": "required if\n- `type`==`dynamic_gbp` (gbp_tag received from RADIUS)\n- `type`==`gbp_resource`\n- `type`==`static_gbp` (applying gbp tag against matching conditions)\n" + "description": "required if\n - `type`==`dynamic_gbp` (gbp_tag received from RADIUS)\n - `type`==`gbp_resource`\n - `type`==`static_gbp` (applying gbp tag against matching conditions)\n" }, "macs": { "type": "array", @@ -16140,7 +16428,7 @@ "items": { "$ref": "#/types/junipermist:org/NetworktemplateAclTagsSpec:NetworktemplateAclTagsSpec" }, - "description": "if `type`==`resource` or `type`==`gbp_resource`\nempty means unrestricted, i.e. any\n" + "description": "if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any\n" }, "subnets": { "type": "array", @@ -16176,7 +16464,7 @@ }, "protocol": { "type": "string", - "description": "`tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254\n" + "description": "`tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254\n" } }, "type": "object", @@ -16340,7 +16628,7 @@ }, "isolation": { "type": "boolean", - "description": "whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required)\nNOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set\n" + "description": "whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set\n" }, "isolationVlanId": { "type": "string" @@ -16512,7 +16800,7 @@ }, "allowDhcpd": { "type": "boolean", - "description": "Only if `mode`!=`dynamic`. If DHCP snooping is enabled, whether DHCP server is allowed on the interfaces with.\nAll the interfaces from port configs using this port usage are effected. Please notice that allow_dhcpd is a tri_state.\nWhen it is not defined, it means using the system's default setting which depends on whether the port is a access or trunk port.\n" + "description": "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 allow_dhcpd is a tri_state. 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.\n" }, "allowMultipleSupplicants": { "type": "boolean", @@ -16563,7 +16851,7 @@ }, "interSwitchLink": { "type": "boolean", - "description": "Only if `mode`!=`dynamic` inter_switch_link is used together with \"isolation\" under networks\nNOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together\n" + "description": "Only if `mode`!=`dynamic` inter_switch_link is used together with \"isolation\" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together\n" }, "macAuthOnly": { "type": "boolean", @@ -16641,7 +16929,7 @@ }, "stormControl": { "$ref": "#/types/junipermist:org/NetworktemplatePortUsagesStormControl:NetworktemplatePortUsagesStormControl", - "description": "Switch storm control\nOnly if `mode`!=`dynamic`\n" + "description": "Switch storm control. Only if `mode`!=`dynamic`\n" }, "stpEdge": { "type": "boolean", @@ -16791,7 +17079,7 @@ }, "network": { "type": "string", - "description": "use `network`or `source_ip`\nwhich network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip\n" + "description": "use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip\n" }, "sourceIp": { "type": "string", @@ -17456,7 +17744,7 @@ "properties": { "authenticationPassword": { "type": "string", - "description": "Not required if `authentication_type`==`authentication_none`\ninclude alphabetic, numeric, and special characters, but it cannot include control characters.\n", + "description": "Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters.\n", "secret": true }, "authenticationType": { @@ -17465,7 +17753,7 @@ }, "encryptionPassword": { "type": "string", - "description": "Not required if `encryption_type`==`privacy-none`\ninclude alphabetic, numeric, and special characters, but it cannot include control characters\n", + "description": "Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters\n", "secret": true }, "encryptionType": { @@ -17653,7 +17941,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/NetworktemplateSwitchMatchingRulePortMirroring:NetworktemplateSwitchMatchingRulePortMirroring" }, - "description": "Property key is the port mirroring instance name\nport_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed\n" + "description": "Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed\n" } }, "type": "object", @@ -19516,7 +19804,7 @@ "additionalProperties": { "type": "integer" }, - "description": "Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps\nProperty key is the wxtag id\n" + "description": "Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id`\n" } }, "type": "object", @@ -19863,7 +20151,7 @@ "additionalProperties": { "type": "string" }, - "description": "map between radius_group and the desired DNS server (IPv4 only)\nProperty key is the RADIUS group, property value is the desired DNS Server\n" + "description": "map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server\n" } }, "type": "object", @@ -19890,7 +20178,7 @@ }, "forceLookup": { "type": "boolean", - "description": "when 11r is enabled, we'll try to use the cached PMK, this can be disabled\n`false` means auto\n" + "description": "when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto\n" }, "source": { "type": "string", @@ -21368,14 +21656,14 @@ "items": { "type": "string" }, - "description": "To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids.\nOrg mxedge(s) identified by mxcluster_ids\n" + "description": "To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids\n" }, "proxyHosts": { "type": "array", "items": { "type": "string" }, - "description": "default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts\nwhen radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge\n" + "description": "default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge`\n" }, "serverName": { "type": "string", @@ -22893,7 +23181,7 @@ "items": { "$ref": "#/types/junipermist:site/NetworktemplateAclPolicyAction:NetworktemplateAclPolicyAction" }, - "description": "- for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n- for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to\n" + "description": "ACL Policy Actions:\n - for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to\n" }, "name": { "type": "string" @@ -22903,7 +23191,7 @@ "items": { "type": "string" }, - "description": "- for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n- for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to\n" + "description": "ACL Policy Source Tags:\n - for GBP-based policy, all src_tags and dst_tags have to be gbp-based\n - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to\n" } }, "type": "object" @@ -22927,7 +23215,7 @@ "properties": { "gbpTag": { "type": "integer", - "description": "required if\n- `type`==`dynamic_gbp` (gbp_tag received from RADIUS)\n- `type`==`gbp_resource`\n- `type`==`static_gbp` (applying gbp tag against matching conditions)\n" + "description": "required if\n - `type`==`dynamic_gbp` (gbp_tag received from RADIUS)\n - `type`==`gbp_resource`\n - `type`==`static_gbp` (applying gbp tag against matching conditions)\n" }, "macs": { "type": "array", @@ -22949,7 +23237,7 @@ "items": { "$ref": "#/types/junipermist:site/NetworktemplateAclTagsSpec:NetworktemplateAclTagsSpec" }, - "description": "if `type`==`resource` or `type`==`gbp_resource`\nempty means unrestricted, i.e. any\n" + "description": "if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any\n" }, "subnets": { "type": "array", @@ -22985,7 +23273,7 @@ }, "protocol": { "type": "string", - "description": "`tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254\n" + "description": "`tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254\n" } }, "type": "object", @@ -23149,7 +23437,7 @@ }, "isolation": { "type": "boolean", - "description": "whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required)\nNOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set\n" + "description": "whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set\n" }, "isolationVlanId": { "type": "string" @@ -23321,7 +23609,7 @@ }, "allowDhcpd": { "type": "boolean", - "description": "Only if `mode`!=`dynamic`. If DHCP snooping is enabled, whether DHCP server is allowed on the interfaces with.\nAll the interfaces from port configs using this port usage are effected. Please notice that allow_dhcpd is a tri_state.\nWhen it is not defined, it means using the system's default setting which depends on whether the port is a access or trunk port.\n" + "description": "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 allow_dhcpd is a tri_state. 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.\n" }, "allowMultipleSupplicants": { "type": "boolean", @@ -23372,7 +23660,7 @@ }, "interSwitchLink": { "type": "boolean", - "description": "Only if `mode`!=`dynamic` inter_switch_link is used together with \"isolation\" under networks\nNOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together\n" + "description": "Only if `mode`!=`dynamic` inter_switch_link is used together with \"isolation\" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together\n" }, "macAuthOnly": { "type": "boolean", @@ -23450,7 +23738,7 @@ }, "stormControl": { "$ref": "#/types/junipermist:site/NetworktemplatePortUsagesStormControl:NetworktemplatePortUsagesStormControl", - "description": "Switch storm control\nOnly if `mode`!=`dynamic`\n" + "description": "Switch storm control. Only if `mode`!=`dynamic`\n" }, "stpEdge": { "type": "boolean", @@ -23600,7 +23888,7 @@ }, "network": { "type": "string", - "description": "use `network`or `source_ip`\nwhich network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip\n" + "description": "use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip\n" }, "sourceIp": { "type": "string", @@ -24265,7 +24553,7 @@ "properties": { "authenticationPassword": { "type": "string", - "description": "Not required if `authentication_type`==`authentication_none`\ninclude alphabetic, numeric, and special characters, but it cannot include control characters.\n", + "description": "Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters.\n", "secret": true }, "authenticationType": { @@ -24274,7 +24562,7 @@ }, "encryptionPassword": { "type": "string", - "description": "Not required if `encryption_type`==`privacy-none`\ninclude alphabetic, numeric, and special characters, but it cannot include control characters\n", + "description": "Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters\n", "secret": true }, "encryptionType": { @@ -24462,7 +24750,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:site/NetworktemplateSwitchMatchingRulePortMirroring:NetworktemplateSwitchMatchingRulePortMirroring" }, - "description": "Property key is the port mirroring instance name\nport_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed\n" + "description": "Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed\n" } }, "type": "object", @@ -26230,7 +26518,7 @@ "additionalProperties": { "type": "integer" }, - "description": "Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps\nProperty key is the wxtag id\n" + "description": "Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id`\n" } }, "type": "object", @@ -26577,7 +26865,7 @@ "additionalProperties": { "type": "string" }, - "description": "map between radius_group and the desired DNS server (IPv4 only)\nProperty key is the RADIUS group, property value is the desired DNS Server\n" + "description": "map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server\n" } }, "type": "object", @@ -26604,7 +26892,7 @@ }, "forceLookup": { "type": "boolean", - "description": "when 11r is enabled, we'll try to use the cached PMK, this can be disabled\n`false` means auto\n" + "description": "when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto\n" }, "source": { "type": "string", @@ -28082,14 +28370,14 @@ "items": { "type": "string" }, - "description": "To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids.\nOrg mxedge(s) identified by mxcluster_ids\n" + "description": "To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids\n" }, "proxyHosts": { "type": "array", "items": { "type": "string" }, - "description": "default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts\nwhen radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge\n" + "description": "default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge`\n" }, "serverName": { "type": "string", @@ -28503,6 +28791,10 @@ "provider": { "description": "The provider type for the mist package. By default, resources use package-wide configuration\nsettings, however an explicit `Provider` instance may be created and passed during resource\nconstruction to achieve fine-grained programmatic control over provider settings. See the\n[documentation](https://www.pulumi.com/docs/reference/programming-model/#providers) for more information.\n", "properties": { + "apiDebug": { + "type": "boolean", + "description": "Flag to enable debugging API calls. Default is false.\n" + }, "apiTimeout": { "type": "number", "description": "Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0\nresults in infinite timeout.\n" @@ -28531,6 +28823,10 @@ } }, "inputProperties": { + "apiDebug": { + "type": "boolean", + "description": "Flag to enable debugging API calls. Default is false.\n" + }, "apiTimeout": { "type": "number", "description": "Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0\nresults in infinite timeout.\n" @@ -29205,7 +29501,7 @@ "items": { "type": "string" }, - "description": "additional CLI commands to append to the generated Junos config **Note**: no check is done\n" + "description": "additional CLI commands to append to the generated Junos config. **Note**: no check is done\n" }, "bgpConfig": { "type": "object", @@ -29414,7 +29710,7 @@ "items": { "type": "string" }, - "description": "additional CLI commands to append to the generated Junos config **Note**: no check is done\n" + "description": "additional CLI commands to append to the generated Junos config. **Note**: no check is done\n" }, "bgpConfig": { "type": "object", @@ -29587,7 +29883,7 @@ "items": { "type": "string" }, - "description": "additional CLI commands to append to the generated Junos config **Note**: no check is done\n" + "description": "additional CLI commands to append to the generated Junos config. **Note**: no check is done\n" }, "bgpConfig": { "type": "object", @@ -29915,7 +30211,7 @@ "items": { "type": "string" }, - "description": "additional CLI commands to append to the generated Junos config **Note**: no check is done\n" + "description": "additional CLI commands to append to the generated Junos config. **Note**: no check is done\n" }, "deviceId": { "type": "string" @@ -29944,10 +30240,6 @@ }, "description": "Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting\n" }, - "evpnConfig": { - "$ref": "#/types/junipermist:device/SwitchEvpnConfig:SwitchEvpnConfig", - "description": "EVPN Junos settings\n" - }, "extraRoutes": { "type": "object", "additionalProperties": { @@ -30023,7 +30315,7 @@ }, "oobIpConfig": { "$ref": "#/types/junipermist:device/SwitchOobIpConfig:SwitchOobIpConfig", - "description": "- If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be\nset separately (if desired): key parameter = `re1`\n" + "description": "Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines,\nre1 mgmt IP has to be set separately (if desired): key parameter = `re1`\n" }, "orgId": { "type": "string" @@ -30054,7 +30346,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:device/SwitchPortMirroring:SwitchPortMirroring" }, - "description": "Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" + "description": "Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" }, "portUsages": { "type": "object", @@ -30139,7 +30431,6 @@ "required": [ "deviceId", "disableAutoConfig", - "evpnConfig", "image1Url", "image2Url", "image3Url", @@ -30173,7 +30464,7 @@ "items": { "type": "string" }, - "description": "additional CLI commands to append to the generated Junos config **Note**: no check is done\n" + "description": "additional CLI commands to append to the generated Junos config. **Note**: no check is done\n" }, "deviceId": { "type": "string" @@ -30260,7 +30551,7 @@ }, "oobIpConfig": { "$ref": "#/types/junipermist:device/SwitchOobIpConfig:SwitchOobIpConfig", - "description": "- If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be\nset separately (if desired): key parameter = `re1`\n" + "description": "Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines,\nre1 mgmt IP has to be set separately (if desired): key parameter = `re1`\n" }, "ospfAreas": { "type": "object", @@ -30288,7 +30579,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:device/SwitchPortMirroring:SwitchPortMirroring" }, - "description": "Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" + "description": "Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" }, "portUsages": { "type": "object", @@ -30387,7 +30678,7 @@ "items": { "type": "string" }, - "description": "additional CLI commands to append to the generated Junos config **Note**: no check is done\n" + "description": "additional CLI commands to append to the generated Junos config. **Note**: no check is done\n" }, "deviceId": { "type": "string" @@ -30416,10 +30707,6 @@ }, "description": "Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting\n" }, - "evpnConfig": { - "$ref": "#/types/junipermist:device/SwitchEvpnConfig:SwitchEvpnConfig", - "description": "EVPN Junos settings\n" - }, "extraRoutes": { "type": "object", "additionalProperties": { @@ -30495,7 +30782,7 @@ }, "oobIpConfig": { "$ref": "#/types/junipermist:device/SwitchOobIpConfig:SwitchOobIpConfig", - "description": "- If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be\nset separately (if desired): key parameter = `re1`\n" + "description": "Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines,\nre1 mgmt IP has to be set separately (if desired): key parameter = `re1`\n" }, "orgId": { "type": "string" @@ -30526,7 +30813,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:device/SwitchPortMirroring:SwitchPortMirroring" }, - "description": "Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" + "description": "Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" }, "portUsages": { "type": "object", @@ -31225,7 +31512,7 @@ "items": { "type": "string" }, - "description": "additional CLI commands to append to the generated Junos config **Note**: no check is done\n" + "description": "additional CLI commands to append to the generated Junos config. **Note**: no check is done\n" }, "bgpConfig": { "type": "object", @@ -31377,7 +31664,7 @@ "items": { "type": "string" }, - "description": "additional CLI commands to append to the generated Junos config **Note**: no check is done\n" + "description": "additional CLI commands to append to the generated Junos config. **Note**: no check is done\n" }, "bgpConfig": { "type": "object", @@ -31522,7 +31809,7 @@ "items": { "type": "string" }, - "description": "additional CLI commands to append to the generated Junos config **Note**: no check is done\n" + "description": "additional CLI commands to append to the generated Junos config. **Note**: no check is done\n" }, "bgpConfig": { "type": "object", @@ -31766,7 +32053,7 @@ "items": { "type": "string" }, - "description": "additional CLI commands to append to the generated Junos config **Note**: no check is done\n" + "description": "additional CLI commands to append to the generated Junos config. **Note**: no check is done\n" }, "bgpConfig": { "type": "object", @@ -31860,7 +32147,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/GatewaytemplatePortConfig:GatewaytemplatePortConfig" }, - "description": "Property key is the port(s) name or range (e.g. \"ge-0/0/0-10\")\n" + "description": "Property key is the Port Name (i.e. \"ge-0/0/0\"), the Ports Range (i.e. \"ge-0/0/0-10\"), the List of Ports (i.e.\n\"ge-0/0/0,ge-1/0/0\", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. \"{{myvar}}\").\n" }, "routerId": { "type": "string", @@ -31918,7 +32205,7 @@ "items": { "type": "string" }, - "description": "additional CLI commands to append to the generated Junos config **Note**: no check is done\n" + "description": "additional CLI commands to append to the generated Junos config. **Note**: no check is done\n" }, "bgpConfig": { "type": "object", @@ -32012,7 +32299,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/GatewaytemplatePortConfig:GatewaytemplatePortConfig" }, - "description": "Property key is the port(s) name or range (e.g. \"ge-0/0/0-10\")\n" + "description": "Property key is the Port Name (i.e. \"ge-0/0/0\"), the Ports Range (i.e. \"ge-0/0/0-10\"), the List of Ports (i.e.\n\"ge-0/0/0,ge-1/0/0\", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. \"{{myvar}}\").\n" }, "routerId": { "type": "string", @@ -32067,7 +32354,7 @@ "items": { "type": "string" }, - "description": "additional CLI commands to append to the generated Junos config **Note**: no check is done\n" + "description": "additional CLI commands to append to the generated Junos config. **Note**: no check is done\n" }, "bgpConfig": { "type": "object", @@ -32161,7 +32448,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/GatewaytemplatePortConfig:GatewaytemplatePortConfig" }, - "description": "Property key is the port(s) name or range (e.g. \"ge-0/0/0-10\")\n" + "description": "Property key is the Port Name (i.e. \"ge-0/0/0\"), the Ports Range (i.e. \"ge-0/0/0-10\"), the List of Ports (i.e.\n\"ge-0/0/0,ge-1/0/0\", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. \"{{myvar}}\").\n" }, "routerId": { "type": "string", @@ -32453,6 +32740,10 @@ "type": "string", "description": "if `idp_type`==`oauth`\n" }, + "oauthPingIdentityRegion": { + "type": "string", + "description": "enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia)\n" + }, "oauthRopcClientId": { "type": "string", "description": "if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials\n" @@ -32471,14 +32762,25 @@ }, "orgId": { "type": "string" + }, + "scimEnabled": { + "type": "boolean", + "description": "if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP\n" + }, + "scimSecretToken": { + "type": "string", + "description": "if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP\n" } }, "required": [ "idpType", "ldapResolveGroups", "name", + "oauthPingIdentityRegion", "oauthType", - "orgId" + "orgId", + "scimEnabled", + "scimSecretToken" ], "inputProperties": { "groupFilter": { @@ -32563,6 +32865,10 @@ "type": "string", "description": "if `idp_type`==`oauth`\n" }, + "oauthPingIdentityRegion": { + "type": "string", + "description": "enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia)\n" + }, "oauthRopcClientId": { "type": "string", "description": "if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials\n" @@ -32581,6 +32887,14 @@ }, "orgId": { "type": "string" + }, + "scimEnabled": { + "type": "boolean", + "description": "if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP\n" + }, + "scimSecretToken": { + "type": "string", + "description": "if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP\n" } }, "requiredInputs": [ @@ -32672,6 +32986,10 @@ "type": "string", "description": "if `idp_type`==`oauth`\n" }, + "oauthPingIdentityRegion": { + "type": "string", + "description": "enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia)\n" + }, "oauthRopcClientId": { "type": "string", "description": "if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials\n" @@ -32690,6 +33008,14 @@ }, "orgId": { "type": "string" + }, + "scimEnabled": { + "type": "boolean", + "description": "if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP\n" + }, + "scimSecretToken": { + "type": "string", + "description": "if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP\n" } }, "type": "object" @@ -33060,6 +33386,10 @@ "type": "boolean", "description": "whether to allow clients in the network to talk to each other\n" }, + "multicast": { + "$ref": "#/types/junipermist:org/NetworkMulticast:NetworkMulticast", + "description": "whether to enable multicast support (only PIM-sparse mode is supported)\n" + }, "name": { "type": "string" }, @@ -33083,7 +33413,8 @@ "type": "object", "additionalProperties": { "$ref": "#/types/junipermist:org/NetworkTenants:NetworkTenants" - } + }, + "description": "Property key must be the user/tenant name (i.e. \"printer-1\") or a Variable (i.e. \"{{myvar}}\")\n" }, "vlanId": { "type": "string" @@ -33124,6 +33455,10 @@ "type": "boolean", "description": "whether to allow clients in the network to talk to each other\n" }, + "multicast": { + "$ref": "#/types/junipermist:org/NetworkMulticast:NetworkMulticast", + "description": "whether to enable multicast support (only PIM-sparse mode is supported)\n" + }, "name": { "type": "string" }, @@ -33147,7 +33482,8 @@ "type": "object", "additionalProperties": { "$ref": "#/types/junipermist:org/NetworkTenants:NetworkTenants" - } + }, + "description": "Property key must be the user/tenant name (i.e. \"printer-1\") or a Variable (i.e. \"{{myvar}}\")\n" }, "vlanId": { "type": "string" @@ -33188,6 +33524,10 @@ "type": "boolean", "description": "whether to allow clients in the network to talk to each other\n" }, + "multicast": { + "$ref": "#/types/junipermist:org/NetworkMulticast:NetworkMulticast", + "description": "whether to enable multicast support (only PIM-sparse mode is supported)\n" + }, "name": { "type": "string" }, @@ -33211,7 +33551,8 @@ "type": "object", "additionalProperties": { "$ref": "#/types/junipermist:org/NetworkTenants:NetworkTenants" - } + }, + "description": "Property key must be the user/tenant name (i.e. \"printer-1\") or a Variable (i.e. \"{{myvar}}\")\n" }, "vlanId": { "type": "string" @@ -33316,7 +33657,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/NetworktemplatePortMirroring:NetworktemplatePortMirroring" }, - "description": "Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" + "description": "Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" }, "portUsages": { "type": "object", @@ -33450,7 +33791,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/NetworktemplatePortMirroring:NetworktemplatePortMirroring" }, - "description": "Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" + "description": "Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" }, "portUsages": { "type": "object", @@ -33584,7 +33925,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:org/NetworktemplatePortMirroring:NetworktemplatePortMirroring" }, - "description": "Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" + "description": "Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" }, "portUsages": { "type": "object", @@ -34954,19 +35295,11 @@ }, "roleAttrExtraction": { "type": "string", - "description": "custom role attribute parsing scheme\\n\\nSupported Role Parsing\nSchemes\\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003eName\u003c/th\u003e\u003cth\u003eScheme\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003ecn\u003c/td\u003e\u003ctd\u003e\u003cul\u003e\u003cli\u003eThe expected role attribute format in\nSAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”\u003c/li\u003e\u003cli\u003eCN (the key) is case insensitive and exactly 1 CN is expected\n(or the entire entry will be ignored)\u003c/li\u003e\u003cli\u003eE.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value\nis “cn”\u003c/li\u003e\u003c/ul\u003e\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n" + "description": "custom role attribute parsing scheme. Supported Role Parsing Schemes\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003eName\u003c/th\u003e\u003cth\u003eScheme\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e`cn`\u003c/td\u003e\u003ctd\u003e\u003cul\u003e\u003cli\u003eThe expected role attribute format in SAML\nAssertion is “CN=cn,OU=ou1,OU=ou2,…”\u003c/li\u003e\u003cli\u003eCN (the key) is case insensitive and exactly 1 CN is expected (or the\nentire entry will be ignored)\u003c/li\u003e\u003cli\u003eE.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is\n“cn”\u003c/li\u003e\u003c/ul\u003e\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n" }, "roleAttrFrom": { "type": "string", "description": "name of the attribute in SAML Assertion to extract role from. Default: `Role`\n" - }, - "scimEnabled": { - "type": "boolean", - "description": "if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP\n" - }, - "scimSecretToken": { - "type": "string", - "description": "if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the\nAuthorization header of SCIM provisioning requests by the IDP\n" } }, "required": [ @@ -34978,8 +35311,7 @@ "name", "nameidFormat", "orgId", - "roleAttrFrom", - "scimEnabled" + "roleAttrFrom" ], "inputProperties": { "customLogoutUrl": { @@ -35023,19 +35355,11 @@ }, "roleAttrExtraction": { "type": "string", - "description": "custom role attribute parsing scheme\\n\\nSupported Role Parsing\nSchemes\\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003eName\u003c/th\u003e\u003cth\u003eScheme\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003ecn\u003c/td\u003e\u003ctd\u003e\u003cul\u003e\u003cli\u003eThe expected role attribute format in\nSAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”\u003c/li\u003e\u003cli\u003eCN (the key) is case insensitive and exactly 1 CN is expected\n(or the entire entry will be ignored)\u003c/li\u003e\u003cli\u003eE.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value\nis “cn”\u003c/li\u003e\u003c/ul\u003e\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n" + "description": "custom role attribute parsing scheme. Supported Role Parsing Schemes\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003eName\u003c/th\u003e\u003cth\u003eScheme\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e`cn`\u003c/td\u003e\u003ctd\u003e\u003cul\u003e\u003cli\u003eThe expected role attribute format in SAML\nAssertion is “CN=cn,OU=ou1,OU=ou2,…”\u003c/li\u003e\u003cli\u003eCN (the key) is case insensitive and exactly 1 CN is expected (or the\nentire entry will be ignored)\u003c/li\u003e\u003cli\u003eE.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is\n“cn”\u003c/li\u003e\u003c/ul\u003e\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n" }, "roleAttrFrom": { "type": "string", "description": "name of the attribute in SAML Assertion to extract role from. Default: `Role`\n" - }, - "scimEnabled": { - "type": "boolean", - "description": "if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP\n" - }, - "scimSecretToken": { - "type": "string", - "description": "if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the\nAuthorization header of SCIM provisioning requests by the IDP\n" } }, "requiredInputs": [ @@ -35093,19 +35417,11 @@ }, "roleAttrExtraction": { "type": "string", - "description": "custom role attribute parsing scheme\\n\\nSupported Role Parsing\nSchemes\\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003eName\u003c/th\u003e\u003cth\u003eScheme\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003ecn\u003c/td\u003e\u003ctd\u003e\u003cul\u003e\u003cli\u003eThe expected role attribute format in\nSAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”\u003c/li\u003e\u003cli\u003eCN (the key) is case insensitive and exactly 1 CN is expected\n(or the entire entry will be ignored)\u003c/li\u003e\u003cli\u003eE.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value\nis “cn”\u003c/li\u003e\u003c/ul\u003e\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n" + "description": "custom role attribute parsing scheme. Supported Role Parsing Schemes\n\u003ctable\u003e\u003ctr\u003e\u003cth\u003eName\u003c/th\u003e\u003cth\u003eScheme\u003c/th\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e`cn`\u003c/td\u003e\u003ctd\u003e\u003cul\u003e\u003cli\u003eThe expected role attribute format in SAML\nAssertion is “CN=cn,OU=ou1,OU=ou2,…”\u003c/li\u003e\u003cli\u003eCN (the key) is case insensitive and exactly 1 CN is expected (or the\nentire entry will be ignored)\u003c/li\u003e\u003cli\u003eE.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is\n“cn”\u003c/li\u003e\u003c/ul\u003e\u003c/td\u003e\u003c/tr\u003e\u003c/table\u003e\n" }, "roleAttrFrom": { "type": "string", "description": "name of the attribute in SAML Assertion to extract role from. Default: `Role`\n" - }, - "scimEnabled": { - "type": "boolean", - "description": "if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP\n" - }, - "scimSecretToken": { - "type": "string", - "description": "if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the\nAuthorization header of SCIM provisioning requests by the IDP\n" } }, "type": "object" @@ -37758,7 +38074,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:site/NetworktemplatePortMirroring:NetworktemplatePortMirroring" }, - "description": "Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" + "description": "Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" }, "portUsages": { "type": "object", @@ -37896,7 +38212,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:site/NetworktemplatePortMirroring:NetworktemplatePortMirroring" }, - "description": "Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" + "description": "Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" }, "portUsages": { "type": "object", @@ -38035,7 +38351,7 @@ "additionalProperties": { "$ref": "#/types/junipermist:site/NetworktemplatePortMirroring:NetworktemplatePortMirroring" }, - "description": "Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" + "description": "Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes\ninterface and ports as input for ingress, interface as input for egress and can take interface and port as output. A\nmaximum 4 port mirrorings is allowed\n" }, "portUsages": { "type": "object", diff --git a/provider/go.mod b/provider/go.mod index 111bee8d..e7445e6f 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -29,7 +29,7 @@ require ( github.com/ProtonMail/go-crypto v1.1.3 // indirect github.com/aead/chacha20 v0.0.0-20180709150244-8b13a72661da // indirect github.com/agext/levenshtein v1.2.3 // indirect - github.com/apimatic/go-core-runtime v0.0.27 // indirect + github.com/apimatic/go-core-runtime v0.0.28 // indirect github.com/apparentlymart/go-cidr v1.1.0 // indirect github.com/apparentlymart/go-textseg/v15 v15.0.0 // indirect github.com/armon/go-radix v1.0.0 // indirect @@ -157,7 +157,7 @@ require ( github.com/stretchr/objx v0.5.2 // indirect github.com/teekennedy/goldmark-markdown v0.3.0 // indirect github.com/texttheater/golang-levenshtein v1.0.1 // indirect - github.com/tmunzer/mistapi-go v0.4.22 // indirect + github.com/tmunzer/mistapi-go v0.4.26 // indirect github.com/uber/jaeger-client-go v2.30.0+incompatible // indirect github.com/uber/jaeger-lib v2.4.1+incompatible // indirect github.com/ulikunitz/xz v0.5.11 // indirect diff --git a/provider/go.sum b/provider/go.sum index 00bffeaa..9630afde 100644 --- a/provider/go.sum +++ b/provider/go.sum @@ -232,8 +232,8 @@ github.com/agext/levenshtein v1.2.3/go.mod h1:JEDfjyjHDjOF/1e4FlBE/PkbqA9OfWu2ki github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be h1:9AeTilPcZAjCFIImctFaOjnTIavg87rW78vTPkQqLI8= github.com/anmitsu/go-shlex v0.0.0-20200514113438-38f4b401e2be/go.mod h1:ySMOLuWl6zY27l47sB3qLNK6tF2fkHG55UZxx8oIVo4= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= -github.com/apimatic/go-core-runtime v0.0.27 h1:xRLbPQD94GhGfC3k1ro8HyMcooBFKPYT4yVzQCbKi34= -github.com/apimatic/go-core-runtime v0.0.27/go.mod h1:eYSG9icLyMjbPWq212ELOQ4PZdlT2RihZGXEaAZdx6Q= +github.com/apimatic/go-core-runtime v0.0.28 h1:R8IREeVuWNLqQq/7GkM18wF7c+hs6/ui3Oq6D4/xMak= +github.com/apimatic/go-core-runtime v0.0.28/go.mod h1:eYSG9icLyMjbPWq212ELOQ4PZdlT2RihZGXEaAZdx6Q= github.com/apparentlymart/go-cidr v1.1.0 h1:2mAhrMoF+nhXqxTzSZMUzDHkLjmIHC+Zzn4tdgBZjnU= github.com/apparentlymart/go-cidr v1.1.0/go.mod h1:EBcsNrHc3zQeuaeCeCtQruQm+n9/YjEn/vI25Lg7Gwc= github.com/apparentlymart/go-textseg/v12 v12.0.0/go.mod h1:S/4uRK2UtaQttw1GenVJEynmyUenKwP++x/+DdGV/Ec= @@ -789,8 +789,8 @@ github.com/teekennedy/goldmark-markdown v0.3.0 h1:ik9/biVGCwGWFg8dQ3KVm2pQ/wiiG0 github.com/teekennedy/goldmark-markdown v0.3.0/go.mod h1:kMhDz8La77A9UHvJGsxejd0QUflN9sS+QXCqnhmxmNo= github.com/texttheater/golang-levenshtein v1.0.1 h1:+cRNoVrfiwufQPhoMzB6N0Yf/Mqajr6t1lOv8GyGE2U= github.com/texttheater/golang-levenshtein v1.0.1/go.mod h1:PYAKrbF5sAiq9wd+H82hs7gNaen0CplQ9uvm6+enD/8= -github.com/tmunzer/mistapi-go v0.4.22 h1:oSnmKkKLCwOiOLGPwhAwwQCtLppPgFqtBV4rYW6HmUM= -github.com/tmunzer/mistapi-go v0.4.22/go.mod h1:DYFfpViXmlVgIISBceiX7GIhmTf/Kb1jP37VoRTccXM= +github.com/tmunzer/mistapi-go v0.4.26 h1:71hL0gRnSIKDux+/NHpnbN8Yhu/i/8b1CuyAQ4oy78Y= +github.com/tmunzer/mistapi-go v0.4.26/go.mod h1:CgNc2YwmwFaln85pz0Dno34ekBJidXYeigC/wPayfY8= github.com/uber/jaeger-client-go v2.30.0+incompatible h1:D6wyKGCecFaSRUpo8lCVbaOOb6ThwMmTEbhRwtKR97o= github.com/uber/jaeger-client-go v2.30.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk= github.com/uber/jaeger-lib v2.4.1+incompatible h1:td4jdvLcExb4cBISKIpHuGoVXh+dVKhn2Um6rjCsSsg= diff --git a/sdk/dotnet/Config/Config.cs b/sdk/dotnet/Config/Config.cs index 2b749188..8338cf13 100644 --- a/sdk/dotnet/Config/Config.cs +++ b/sdk/dotnet/Config/Config.cs @@ -32,6 +32,16 @@ public void Set(T value) private static readonly global::Pulumi.Config __config = new global::Pulumi.Config("junipermist"); + private static readonly __Value _apiDebug = new __Value(() => __config.GetBoolean("apiDebug")); + /// + /// Flag to enable debugging API calls. Default is false. + /// + public static bool? ApiDebug + { + get => _apiDebug.Get(); + set => _apiDebug.Set(value); + } + private static readonly __Value _apiTimeout = new __Value(() => __config.GetDouble("apiTimeout")); /// /// Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 diff --git a/sdk/dotnet/Device/Gateway.cs b/sdk/dotnet/Device/Gateway.cs index 077726ad..a644bc93 100644 --- a/sdk/dotnet/Device/Gateway.cs +++ b/sdk/dotnet/Device/Gateway.cs @@ -66,7 +66,7 @@ namespace Pulumi.JuniperMist.Device public partial class Gateway : global::Pulumi.CustomResource { /// - /// additional CLI commands to append to the generated Junos config **Note**: no check is done + /// additional CLI commands to append to the generated Junos config. **Note**: no check is done /// [Output("additionalConfigCmds")] public Output> AdditionalConfigCmds { get; private set; } = null!; @@ -302,7 +302,7 @@ public sealed class GatewayArgs : global::Pulumi.ResourceArgs private InputList? _additionalConfigCmds; /// - /// additional CLI commands to append to the generated Junos config **Note**: no check is done + /// additional CLI commands to append to the generated Junos config. **Note**: no check is done /// public InputList AdditionalConfigCmds { @@ -558,7 +558,7 @@ public sealed class GatewayState : global::Pulumi.ResourceArgs private InputList? _additionalConfigCmds; /// - /// additional CLI commands to append to the generated Junos config **Note**: no check is done + /// additional CLI commands to append to the generated Junos config. **Note**: no check is done /// public InputList AdditionalConfigCmds { diff --git a/sdk/dotnet/Device/Inputs/GatewayBgpConfigArgs.cs b/sdk/dotnet/Device/Inputs/GatewayBgpConfigArgs.cs index c59a2e48..b3a293a2 100644 --- a/sdk/dotnet/Device/Inputs/GatewayBgpConfigArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayBgpConfigArgs.cs @@ -45,8 +45,7 @@ public sealed class GatewayBgpConfigArgs : global::Pulumi.ResourceArgs public Input? ExportPolicy { get; set; } /// - /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - /// for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this /// [Input("extendedV4Nexthop")] public Input? ExtendedV4Nexthop { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayBgpConfigGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayBgpConfigGetArgs.cs index 913908a8..735823cb 100644 --- a/sdk/dotnet/Device/Inputs/GatewayBgpConfigGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayBgpConfigGetArgs.cs @@ -45,8 +45,7 @@ public sealed class GatewayBgpConfigGetArgs : global::Pulumi.ResourceArgs public Input? ExportPolicy { get; set; } /// - /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - /// for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this /// [Input("extendedV4Nexthop")] public Input? ExtendedV4Nexthop { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayNetworkArgs.cs b/sdk/dotnet/Device/Inputs/GatewayNetworkArgs.cs index ad7c370a..7653687e 100644 --- a/sdk/dotnet/Device/Inputs/GatewayNetworkArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayNetworkArgs.cs @@ -68,6 +68,10 @@ public InputList RoutedForNetworks [Input("tenants")] private InputMap? _tenants; + + /// + /// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + /// public InputMap Tenants { get => _tenants ?? (_tenants = new InputMap()); diff --git a/sdk/dotnet/Device/Inputs/GatewayNetworkGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayNetworkGetArgs.cs index 83f201c1..4bde38b9 100644 --- a/sdk/dotnet/Device/Inputs/GatewayNetworkGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayNetworkGetArgs.cs @@ -68,6 +68,10 @@ public InputList RoutedForNetworks [Input("tenants")] private InputMap? _tenants; + + /// + /// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + /// public InputMap Tenants { get => _tenants ?? (_tenants = new InputMap()); diff --git a/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessArgs.cs b/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessArgs.cs index e35fd9ab..93e07bdd 100644 --- a/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessArgs.cs @@ -19,7 +19,7 @@ public sealed class GatewayNetworkInternetAccessArgs : global::Pulumi.ResourceAr private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -40,7 +40,7 @@ public InputMap Destinati private InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { diff --git a/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessDestinationNatArgs.cs b/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessDestinationNatArgs.cs index 74ab66b0..9cb9f244 100644 --- a/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessDestinationNatArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessDestinationNatArgs.cs @@ -12,14 +12,26 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayNetworkInternetAccessDestinationNatArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } [Input("name")] public Input? Name { get; set; } + /// + /// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + /// [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } + + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + /// + [Input("wanName")] + public Input? WanName { get; set; } public GatewayNetworkInternetAccessDestinationNatArgs() { diff --git a/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessDestinationNatGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessDestinationNatGetArgs.cs index c35becbf..bc849b7a 100644 --- a/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessDestinationNatGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessDestinationNatGetArgs.cs @@ -12,14 +12,26 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayNetworkInternetAccessDestinationNatGetArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } [Input("name")] public Input? Name { get; set; } + /// + /// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + /// [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } + + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + /// + [Input("wanName")] + public Input? WanName { get; set; } public GatewayNetworkInternetAccessDestinationNatGetArgs() { diff --git a/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessGetArgs.cs index f064faec..5aeb04db 100644 --- a/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessGetArgs.cs @@ -19,7 +19,7 @@ public sealed class GatewayNetworkInternetAccessGetArgs : global::Pulumi.Resourc private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -40,7 +40,7 @@ public InputMap Destin private InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { diff --git a/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessStaticNatArgs.cs b/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessStaticNatArgs.cs index d13e7359..3196c2b0 100644 --- a/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessStaticNatArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessStaticNatArgs.cs @@ -12,14 +12,17 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayNetworkInternetAccessStaticNatArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } + /// + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + /// + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; - [Input("name")] - public Input? Name { get; set; } + [Input("name", required: true)] + public Input Name { get; set; } = null!; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") /// [Input("wanName")] public Input? WanName { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessStaticNatGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessStaticNatGetArgs.cs index 556ff86b..b66965a4 100644 --- a/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessStaticNatGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayNetworkInternetAccessStaticNatGetArgs.cs @@ -12,14 +12,17 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayNetworkInternetAccessStaticNatGetArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } + /// + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + /// + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; - [Input("name")] - public Input? Name { get; set; } + [Input("name", required: true)] + public Input Name { get; set; } = null!; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") /// [Input("wanName")] public Input? WanName { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessArgs.cs b/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessArgs.cs index 88924813..cac5e571 100644 --- a/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessArgs.cs @@ -28,7 +28,7 @@ public sealed class GatewayNetworkVpnAccessArgs : global::Pulumi.ResourceArgs private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -55,8 +55,7 @@ public InputMap DestinationNat public Input? NoReadvertiseToLanOspf { get; set; } /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// [Input("noReadvertiseToOverlay")] public Input? NoReadvertiseToOverlay { get; set; } @@ -65,8 +64,7 @@ public InputMap DestinationNat private InputList? _otherVrfs; /// - /// by default, the routes are only readvertised toward the same vrf on spoke - /// to allow it to be leaked to other vrfs + /// by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs /// public InputList OtherVrfs { @@ -90,7 +88,7 @@ public InputList OtherVrfs private InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { @@ -99,8 +97,7 @@ public InputMap StaticNat } /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// [Input("summarizedSubnet")] public Input? SummarizedSubnet { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessDestinationNatArgs.cs b/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessDestinationNatArgs.cs index 4f4ded60..2185cf47 100644 --- a/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessDestinationNatArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessDestinationNatArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayNetworkVpnAccessDestinationNatArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } @@ -19,7 +22,7 @@ public sealed class GatewayNetworkVpnAccessDestinationNatArgs : global::Pulumi.R public Input? Name { get; set; } [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } public GatewayNetworkVpnAccessDestinationNatArgs() { diff --git a/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessDestinationNatGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessDestinationNatGetArgs.cs index d29ecca7..69b23338 100644 --- a/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessDestinationNatGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessDestinationNatGetArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayNetworkVpnAccessDestinationNatGetArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } @@ -19,7 +22,7 @@ public sealed class GatewayNetworkVpnAccessDestinationNatGetArgs : global::Pulum public Input? Name { get; set; } [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } public GatewayNetworkVpnAccessDestinationNatGetArgs() { diff --git a/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessGetArgs.cs index 94069799..3cc07540 100644 --- a/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessGetArgs.cs @@ -28,7 +28,7 @@ public sealed class GatewayNetworkVpnAccessGetArgs : global::Pulumi.ResourceArgs private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -55,8 +55,7 @@ public InputMap Destination public Input? NoReadvertiseToLanOspf { get; set; } /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// [Input("noReadvertiseToOverlay")] public Input? NoReadvertiseToOverlay { get; set; } @@ -65,8 +64,7 @@ public InputMap Destination private InputList? _otherVrfs; /// - /// by default, the routes are only readvertised toward the same vrf on spoke - /// to allow it to be leaked to other vrfs + /// by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs /// public InputList OtherVrfs { @@ -90,7 +88,7 @@ public InputList OtherVrfs private InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { @@ -99,8 +97,7 @@ public InputMap StaticNat } /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// [Input("summarizedSubnet")] public Input? SummarizedSubnet { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessStaticNatArgs.cs b/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessStaticNatArgs.cs index 757ae4f7..d518c4f0 100644 --- a/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessStaticNatArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessStaticNatArgs.cs @@ -12,17 +12,14 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayNetworkVpnAccessStaticNatArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } - - [Input("name")] - public Input? Name { get; set; } - /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") /// - [Input("wanName")] - public Input? WanName { get; set; } + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; + + [Input("name", required: true)] + public Input Name { get; set; } = null!; public GatewayNetworkVpnAccessStaticNatArgs() { diff --git a/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessStaticNatGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessStaticNatGetArgs.cs index 83e1811a..bbeb56e1 100644 --- a/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessStaticNatGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayNetworkVpnAccessStaticNatGetArgs.cs @@ -12,17 +12,14 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayNetworkVpnAccessStaticNatGetArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } - - [Input("name")] - public Input? Name { get; set; } - /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") /// - [Input("wanName")] - public Input? WanName { get; set; } + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; + + [Input("name", required: true)] + public Input Name { get; set; } = null!; public GatewayNetworkVpnAccessStaticNatGetArgs() { diff --git a/sdk/dotnet/Device/Inputs/GatewayPortConfigArgs.cs b/sdk/dotnet/Device/Inputs/GatewayPortConfigArgs.cs index 092183c3..dce4df47 100644 --- a/sdk/dotnet/Device/Inputs/GatewayPortConfigArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayPortConfigArgs.cs @@ -25,9 +25,7 @@ public sealed class GatewayPortConfigArgs : global::Pulumi.ResourceArgs public Input? AeIdx { get; set; } /// - /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - /// Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - /// Note: Turning this on will enable force-up on one of the interfaces in the bundle only + /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only /// [Input("aeLacpForceUp")] public Input? AeLacpForceUp { get; set; } @@ -41,6 +39,9 @@ public sealed class GatewayPortConfigArgs : global::Pulumi.ResourceArgs [Input("critical")] public Input? Critical { get; set; } + /// + /// Interface Description. Can be a variable (i.e. "{{myvar}}") + /// [Input("description")] public Input? Description { get; set; } @@ -60,15 +61,13 @@ public sealed class GatewayPortConfigArgs : global::Pulumi.ResourceArgs public Input? DslType { get; set; } /// - /// if `wan_type`==`dsl` - /// 16 bit int + /// if `wan_type`==`dsl`, 16 bit int /// [Input("dslVci")] public Input? DslVci { get; set; } /// - /// if `wan_type`==`dsl` - /// 8 bit int + /// if `wan_type`==`dsl`, 8 bit int /// [Input("dslVpi")] public Input? DslVpi { get; set; } @@ -135,7 +134,7 @@ public Input? LtePassword private InputList? _networks; /// - /// if `usage`==`lan` + /// if `usage`==`lan`, name of the `junipermist.org.Network` resource /// public InputList Networks { @@ -153,7 +152,7 @@ public InputList Networks public Input? PoeDisabled { get; set; } /// - /// if `usage`==`lan` + /// Only for SRX and if `usage`==`lan`, the Untagged VLAN Network /// [Input("portNetwork")] public Input? PortNetwork { get; set; } @@ -218,11 +217,8 @@ public InputList RethNodes [Input("usage", required: true)] public Input Usage { get; set; } = null!; - /// - /// if WAN interface is on a VLAN - /// [Input("vlanId")] - public Input? VlanId { get; set; } + public Input? VlanId { get; set; } [Input("vpnPaths")] private InputMap? _vpnPaths; @@ -237,13 +233,13 @@ public InputMap VpnPaths } /// - /// when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + /// Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` /// [Input("wanArpPolicer")] public Input? WanArpPolicer { get; set; } /// - /// optional, if spoke should reach this port by a different IP + /// Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP /// [Input("wanExtIp")] public Input? WanExtIp { get; set; } @@ -252,7 +248,7 @@ public InputMap VpnPaths private InputMap? _wanExtraRoutes; /// - /// Property Key is the destianation CIDR (e.g "100.100.100.0/24") + /// Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") /// public InputMap WanExtraRoutes { @@ -260,20 +256,32 @@ public InputMap WanExtraRoutes set => _wanExtraRoutes = value; } + [Input("wanNetworks")] + private InputList? _wanNetworks; + + /// + /// Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + /// + public InputList WanNetworks + { + get => _wanNetworks ?? (_wanNetworks = new InputList()); + set => _wanNetworks = value; + } + /// - /// if `usage`==`wan` + /// Only if `usage`==`wan` /// [Input("wanProbeOverride")] public Input? WanProbeOverride { get; set; } /// - /// optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + /// Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip /// [Input("wanSourceNat")] public Input? WanSourceNat { get; set; } /// - /// if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + /// Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` /// [Input("wanType")] public Input? WanType { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayPortConfigGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayPortConfigGetArgs.cs index 2e5e4122..4ebbc5ae 100644 --- a/sdk/dotnet/Device/Inputs/GatewayPortConfigGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayPortConfigGetArgs.cs @@ -25,9 +25,7 @@ public sealed class GatewayPortConfigGetArgs : global::Pulumi.ResourceArgs public Input? AeIdx { get; set; } /// - /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - /// Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - /// Note: Turning this on will enable force-up on one of the interfaces in the bundle only + /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only /// [Input("aeLacpForceUp")] public Input? AeLacpForceUp { get; set; } @@ -41,6 +39,9 @@ public sealed class GatewayPortConfigGetArgs : global::Pulumi.ResourceArgs [Input("critical")] public Input? Critical { get; set; } + /// + /// Interface Description. Can be a variable (i.e. "{{myvar}}") + /// [Input("description")] public Input? Description { get; set; } @@ -60,15 +61,13 @@ public sealed class GatewayPortConfigGetArgs : global::Pulumi.ResourceArgs public Input? DslType { get; set; } /// - /// if `wan_type`==`dsl` - /// 16 bit int + /// if `wan_type`==`dsl`, 16 bit int /// [Input("dslVci")] public Input? DslVci { get; set; } /// - /// if `wan_type`==`dsl` - /// 8 bit int + /// if `wan_type`==`dsl`, 8 bit int /// [Input("dslVpi")] public Input? DslVpi { get; set; } @@ -135,7 +134,7 @@ public Input? LtePassword private InputList? _networks; /// - /// if `usage`==`lan` + /// if `usage`==`lan`, name of the `junipermist.org.Network` resource /// public InputList Networks { @@ -153,7 +152,7 @@ public InputList Networks public Input? PoeDisabled { get; set; } /// - /// if `usage`==`lan` + /// Only for SRX and if `usage`==`lan`, the Untagged VLAN Network /// [Input("portNetwork")] public Input? PortNetwork { get; set; } @@ -218,11 +217,8 @@ public InputList RethNodes [Input("usage", required: true)] public Input Usage { get; set; } = null!; - /// - /// if WAN interface is on a VLAN - /// [Input("vlanId")] - public Input? VlanId { get; set; } + public Input? VlanId { get; set; } [Input("vpnPaths")] private InputMap? _vpnPaths; @@ -237,13 +233,13 @@ public InputMap VpnPaths } /// - /// when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + /// Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` /// [Input("wanArpPolicer")] public Input? WanArpPolicer { get; set; } /// - /// optional, if spoke should reach this port by a different IP + /// Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP /// [Input("wanExtIp")] public Input? WanExtIp { get; set; } @@ -252,7 +248,7 @@ public InputMap VpnPaths private InputMap? _wanExtraRoutes; /// - /// Property Key is the destianation CIDR (e.g "100.100.100.0/24") + /// Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") /// public InputMap WanExtraRoutes { @@ -260,20 +256,32 @@ public InputMap WanExtraRoutes set => _wanExtraRoutes = value; } + [Input("wanNetworks")] + private InputList? _wanNetworks; + + /// + /// Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + /// + public InputList WanNetworks + { + get => _wanNetworks ?? (_wanNetworks = new InputList()); + set => _wanNetworks = value; + } + /// - /// if `usage`==`wan` + /// Only if `usage`==`wan` /// [Input("wanProbeOverride")] public Input? WanProbeOverride { get; set; } /// - /// optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + /// Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip /// [Input("wanSourceNat")] public Input? WanSourceNat { get; set; } /// - /// if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + /// Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` /// [Input("wanType")] public Input? WanType { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayPortConfigIpConfigArgs.cs b/sdk/dotnet/Device/Inputs/GatewayPortConfigIpConfigArgs.cs index 0fa260fd..28b0d119 100644 --- a/sdk/dotnet/Device/Inputs/GatewayPortConfigIpConfigArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayPortConfigIpConfigArgs.cs @@ -37,16 +37,19 @@ public InputList DnsSuffixes } /// - /// except for out-of_band interface (vme/em0/fxp0) + /// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") /// [Input("gateway")] public Input? Gateway { get; set; } + /// + /// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + /// [Input("ip")] public Input? Ip { get; set; } /// - /// used only if `subnet` is not specified in `networks` + /// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") /// [Input("netmask")] public Input? Netmask { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayPortConfigIpConfigGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayPortConfigIpConfigGetArgs.cs index 607a8e89..24073338 100644 --- a/sdk/dotnet/Device/Inputs/GatewayPortConfigIpConfigGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayPortConfigIpConfigGetArgs.cs @@ -37,16 +37,19 @@ public InputList DnsSuffixes } /// - /// except for out-of_band interface (vme/em0/fxp0) + /// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") /// [Input("gateway")] public Input? Gateway { get; set; } + /// + /// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + /// [Input("ip")] public Input? Ip { get; set; } /// - /// used only if `subnet` is not specified in `networks` + /// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") /// [Input("netmask")] public Input? Netmask { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayPortConfigTrafficShapingArgs.cs b/sdk/dotnet/Device/Inputs/GatewayPortConfigTrafficShapingArgs.cs index e3a6f6cb..d7d55f73 100644 --- a/sdk/dotnet/Device/Inputs/GatewayPortConfigTrafficShapingArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayPortConfigTrafficShapingArgs.cs @@ -16,8 +16,7 @@ public sealed class GatewayPortConfigTrafficShapingArgs : global::Pulumi.Resourc private InputList? _classPercentages; /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public InputList ClassPercentages { @@ -28,6 +27,12 @@ public InputList ClassPercentages [Input("enabled")] public Input? Enabled { get; set; } + /// + /// Interface Transmit Cap in kbps + /// + [Input("maxTxKbps")] + public Input? MaxTxKbps { get; set; } + public GatewayPortConfigTrafficShapingArgs() { } diff --git a/sdk/dotnet/Device/Inputs/GatewayPortConfigTrafficShapingGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayPortConfigTrafficShapingGetArgs.cs index c18d5e22..cc4a781e 100644 --- a/sdk/dotnet/Device/Inputs/GatewayPortConfigTrafficShapingGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayPortConfigTrafficShapingGetArgs.cs @@ -16,8 +16,7 @@ public sealed class GatewayPortConfigTrafficShapingGetArgs : global::Pulumi.Reso private InputList? _classPercentages; /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public InputList ClassPercentages { @@ -28,6 +27,12 @@ public InputList ClassPercentages [Input("enabled")] public Input? Enabled { get; set; } + /// + /// Interface Transmit Cap in kbps + /// + [Input("maxTxKbps")] + public Input? MaxTxKbps { get; set; } + public GatewayPortConfigTrafficShapingGetArgs() { } diff --git a/sdk/dotnet/Device/Inputs/GatewayPortConfigVpnPathsTrafficShapingArgs.cs b/sdk/dotnet/Device/Inputs/GatewayPortConfigVpnPathsTrafficShapingArgs.cs index 5f22b33d..f0756506 100644 --- a/sdk/dotnet/Device/Inputs/GatewayPortConfigVpnPathsTrafficShapingArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayPortConfigVpnPathsTrafficShapingArgs.cs @@ -16,8 +16,7 @@ public sealed class GatewayPortConfigVpnPathsTrafficShapingArgs : global::Pulumi private InputList? _classPercentages; /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public InputList ClassPercentages { @@ -28,6 +27,12 @@ public InputList ClassPercentages [Input("enabled")] public Input? Enabled { get; set; } + /// + /// Interface Transmit Cap in kbps + /// + [Input("maxTxKbps")] + public Input? MaxTxKbps { get; set; } + public GatewayPortConfigVpnPathsTrafficShapingArgs() { } diff --git a/sdk/dotnet/Device/Inputs/GatewayPortConfigVpnPathsTrafficShapingGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayPortConfigVpnPathsTrafficShapingGetArgs.cs index 311f4c76..73d740f2 100644 --- a/sdk/dotnet/Device/Inputs/GatewayPortConfigVpnPathsTrafficShapingGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayPortConfigVpnPathsTrafficShapingGetArgs.cs @@ -16,8 +16,7 @@ public sealed class GatewayPortConfigVpnPathsTrafficShapingGetArgs : global::Pul private InputList? _classPercentages; /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public InputList ClassPercentages { @@ -28,6 +27,12 @@ public InputList ClassPercentages [Input("enabled")] public Input? Enabled { get; set; } + /// + /// Interface Transmit Cap in kbps + /// + [Input("maxTxKbps")] + public Input? MaxTxKbps { get; set; } + public GatewayPortConfigVpnPathsTrafficShapingGetArgs() { } diff --git a/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermActionArgs.cs b/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermActionArgs.cs index a95add30..900d3169 100644 --- a/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermActionArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermActionArgs.cs @@ -35,6 +35,18 @@ public InputList AddTargetVrfs set => _addTargetVrfs = value; } + [Input("aggregates")] + private InputList? _aggregates; + + /// + /// route aggregation + /// + public InputList Aggregates + { + get => _aggregates ?? (_aggregates = new InputList()); + set => _aggregates = value; + } + [Input("communities")] private InputList? _communities; diff --git a/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermActionGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermActionGetArgs.cs index 8a29f479..f5096006 100644 --- a/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermActionGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermActionGetArgs.cs @@ -35,6 +35,18 @@ public InputList AddTargetVrfs set => _addTargetVrfs = value; } + [Input("aggregates")] + private InputList? _aggregates; + + /// + /// route aggregation + /// + public InputList Aggregates + { + get => _aggregates ?? (_aggregates = new InputList()); + set => _aggregates = value; + } + [Input("communities")] private InputList? _communities; diff --git a/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingArgs.cs b/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingArgs.cs index 0c2547ff..2130a414 100644 --- a/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingArgs.cs @@ -86,8 +86,7 @@ public InputList VpnNeighborMacs private InputList? _vpnPaths; /// - /// overlay-facing criteria (used for bgp_config where via=vpn) - /// ordered- + /// overlay-facing criteria (used for bgp_config where via=vpn). ordered- /// public InputList VpnPaths { diff --git a/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingGetArgs.cs index e8319959..85569ec3 100644 --- a/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingGetArgs.cs @@ -86,8 +86,7 @@ public InputList VpnNeighborMacs private InputList? _vpnPaths; /// - /// overlay-facing criteria (used for bgp_config where via=vpn) - /// ordered- + /// overlay-facing criteria (used for bgp_config where via=vpn). ordered- /// public InputList VpnPaths { diff --git a/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingRouteExistsArgs.cs b/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingRouteExistsArgs.cs index f1929e64..48eb8b1b 100644 --- a/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingRouteExistsArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingRouteExistsArgs.cs @@ -16,8 +16,7 @@ public sealed class GatewayRoutingPoliciesTermMatchingRouteExistsArgs : global:: public Input? Route { get; set; } /// - /// name of the vrf instance - /// it can also be the name of the VPN or wan if they + /// name of the vrf instance, it can also be the name of the VPN or wan if they /// [Input("vrfName")] public Input? VrfName { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingRouteExistsGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingRouteExistsGetArgs.cs index f0455342..51563456 100644 --- a/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingRouteExistsGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayRoutingPoliciesTermMatchingRouteExistsGetArgs.cs @@ -16,8 +16,7 @@ public sealed class GatewayRoutingPoliciesTermMatchingRouteExistsGetArgs : globa public Input? Route { get; set; } /// - /// name of the vrf instance - /// it can also be the name of the VPN or wan if they + /// name of the vrf instance, it can also be the name of the VPN or wan if they /// [Input("vrfName")] public Input? VrfName { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayServicePolicyArgs.cs b/sdk/dotnet/Device/Inputs/GatewayServicePolicyArgs.cs index 02410aed..255aff43 100644 --- a/sdk/dotnet/Device/Inputs/GatewayServicePolicyArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayServicePolicyArgs.cs @@ -48,8 +48,7 @@ public InputList Ewfs public Input? Name { get; set; } /// - /// by default, we derive all paths available and use them - /// optionally, you can customize by using `path_preference` + /// by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` /// [Input("pathPreference")] public Input? PathPreference { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayServicePolicyGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayServicePolicyGetArgs.cs index 89f4b016..fcd5307d 100644 --- a/sdk/dotnet/Device/Inputs/GatewayServicePolicyGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayServicePolicyGetArgs.cs @@ -48,8 +48,7 @@ public InputList Ewfs public Input? Name { get; set; } /// - /// by default, we derive all paths available and use them - /// optionally, you can customize by using `path_preference` + /// by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` /// [Input("pathPreference")] public Input? PathPreference { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsArgs.cs index fc2f0935..22839435 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsArgs.cs @@ -16,13 +16,13 @@ public sealed class GatewayTunnelConfigsArgs : global::Pulumi.ResourceArgs public Input? AutoProvision { get; set; } /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// [Input("ikeLifetime")] public Input? IkeLifetime { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + /// Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` /// [Input("ikeMode")] public Input? IkeMode { get; set; } @@ -31,7 +31,7 @@ public sealed class GatewayTunnelConfigsArgs : global::Pulumi.ResourceArgs private InputList? _ikeProposals; /// - /// if `provider`== `custom-ipsec` + /// if `provider`==`custom-ipsec` /// public InputList IkeProposals { @@ -40,7 +40,7 @@ public InputList IkeProposals } /// - /// if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// [Input("ipsecLifetime")] public Input? IpsecLifetime { get; set; } @@ -49,7 +49,7 @@ public InputList IkeProposals private InputList? _ipsecProposals; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// public InputList IpsecProposals { @@ -58,16 +58,13 @@ public InputList IpsecProposals } /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// [Input("localId")] public Input? LocalId { get; set; } /// - /// enum: `active-active`, `active-standby` + /// Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` /// [Input("mode")] public Input? Mode { get; set; } @@ -76,7 +73,7 @@ public InputList IpsecProposals private InputList? _networks; /// - /// networks reachable via this tunnel + /// if `provider`==`custom-ipsec`, networks reachable via this tunnel /// public InputList Networks { @@ -84,23 +81,26 @@ public InputList Networks set => _networks = value; } + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// [Input("primary")] public Input? Primary { get; set; } /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// [Input("probe")] public Input? Probe { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + /// Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` /// [Input("protocol")] public Input? Protocol { get; set; } /// - /// enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + /// Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` /// [Input("provider")] public Input? Provider { get; set; } @@ -109,10 +109,7 @@ public InputList Networks private Input? _psk; /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public Input? Psk { @@ -124,11 +121,14 @@ public Input? Psk } } + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// [Input("secondary")] public Input? Secondary { get; set; } /// - /// Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + /// Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` /// [Input("version")] public Input? Version { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionArgs.cs index f82acc77..ddeccc5b 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionArgs.cs @@ -15,12 +15,27 @@ public sealed class GatewayTunnelConfigsAutoProvisionArgs : global::Pulumi.Resou [Input("enable")] public Input? Enable { get; set; } + /// + /// API override for POP selection + /// [Input("latlng")] public Input? Latlng { get; set; } [Input("primary")] public Input? Primary { get; set; } + /// + /// enum: `jse-ipsec`, `zscaler-ipsec` + /// + [Input("provider", required: true)] + public Input Provider { get; set; } = null!; + + /// + /// API override for POP selection + /// + [Input("region")] + public Input? Region { get; set; } + [Input("secondary")] public Input? Secondary { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionGetArgs.cs index d1152a7c..e42b08bc 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionGetArgs.cs @@ -15,12 +15,27 @@ public sealed class GatewayTunnelConfigsAutoProvisionGetArgs : global::Pulumi.Re [Input("enable")] public Input? Enable { get; set; } + /// + /// API override for POP selection + /// [Input("latlng")] public Input? Latlng { get; set; } [Input("primary")] public Input? Primary { get; set; } + /// + /// enum: `jse-ipsec`, `zscaler-ipsec` + /// + [Input("provider", required: true)] + public Input Provider { get; set; } = null!; + + /// + /// API override for POP selection + /// + [Input("region")] + public Input? Region { get; set; } + [Input("secondary")] public Input? Secondary { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionPrimaryArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionPrimaryArgs.cs index 1ce4ab8c..f9a68e95 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionPrimaryArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionPrimaryArgs.cs @@ -12,8 +12,13 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayTunnelConfigsAutoProvisionPrimaryArgs : global::Pulumi.ResourceArgs { - [Input("numHosts")] - public Input? NumHosts { get; set; } + [Input("probeIps")] + private InputList? _probeIps; + public InputList ProbeIps + { + get => _probeIps ?? (_probeIps = new InputList()); + set => _probeIps = value; + } [Input("wanNames")] private InputList? _wanNames; diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionPrimaryGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionPrimaryGetArgs.cs index e21ab1ff..b96dab49 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionPrimaryGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionPrimaryGetArgs.cs @@ -12,8 +12,13 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayTunnelConfigsAutoProvisionPrimaryGetArgs : global::Pulumi.ResourceArgs { - [Input("numHosts")] - public Input? NumHosts { get; set; } + [Input("probeIps")] + private InputList? _probeIps; + public InputList ProbeIps + { + get => _probeIps ?? (_probeIps = new InputList()); + set => _probeIps = value; + } [Input("wanNames")] private InputList? _wanNames; diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionSecondaryArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionSecondaryArgs.cs index 7eaf91af..143dbf8d 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionSecondaryArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionSecondaryArgs.cs @@ -12,8 +12,13 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayTunnelConfigsAutoProvisionSecondaryArgs : global::Pulumi.ResourceArgs { - [Input("numHosts")] - public Input? NumHosts { get; set; } + [Input("probeIps")] + private InputList? _probeIps; + public InputList ProbeIps + { + get => _probeIps ?? (_probeIps = new InputList()); + set => _probeIps = value; + } [Input("wanNames")] private InputList? _wanNames; diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionSecondaryGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionSecondaryGetArgs.cs index ab3673c8..12d0028c 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionSecondaryGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsAutoProvisionSecondaryGetArgs.cs @@ -12,8 +12,13 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayTunnelConfigsAutoProvisionSecondaryGetArgs : global::Pulumi.ResourceArgs { - [Input("numHosts")] - public Input? NumHosts { get; set; } + [Input("probeIps")] + private InputList? _probeIps; + public InputList ProbeIps + { + get => _probeIps ?? (_probeIps = new InputList()); + set => _probeIps = value; + } [Input("wanNames")] private InputList? _wanNames; diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsGetArgs.cs index d629ab54..805d3a50 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsGetArgs.cs @@ -16,13 +16,13 @@ public sealed class GatewayTunnelConfigsGetArgs : global::Pulumi.ResourceArgs public Input? AutoProvision { get; set; } /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// [Input("ikeLifetime")] public Input? IkeLifetime { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + /// Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` /// [Input("ikeMode")] public Input? IkeMode { get; set; } @@ -31,7 +31,7 @@ public sealed class GatewayTunnelConfigsGetArgs : global::Pulumi.ResourceArgs private InputList? _ikeProposals; /// - /// if `provider`== `custom-ipsec` + /// if `provider`==`custom-ipsec` /// public InputList IkeProposals { @@ -40,7 +40,7 @@ public InputList IkeProposals } /// - /// if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// [Input("ipsecLifetime")] public Input? IpsecLifetime { get; set; } @@ -49,7 +49,7 @@ public InputList IkeProposals private InputList? _ipsecProposals; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// public InputList IpsecProposals { @@ -58,16 +58,13 @@ public InputList IpsecProposals } /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// [Input("localId")] public Input? LocalId { get; set; } /// - /// enum: `active-active`, `active-standby` + /// Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` /// [Input("mode")] public Input? Mode { get; set; } @@ -76,7 +73,7 @@ public InputList IpsecProposals private InputList? _networks; /// - /// networks reachable via this tunnel + /// if `provider`==`custom-ipsec`, networks reachable via this tunnel /// public InputList Networks { @@ -84,23 +81,26 @@ public InputList Networks set => _networks = value; } + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// [Input("primary")] public Input? Primary { get; set; } /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// [Input("probe")] public Input? Probe { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + /// Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` /// [Input("protocol")] public Input? Protocol { get; set; } /// - /// enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + /// Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` /// [Input("provider")] public Input? Provider { get; set; } @@ -109,10 +109,7 @@ public InputList Networks private Input? _psk; /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public Input? Psk { @@ -124,11 +121,14 @@ public Input? Psk } } + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// [Input("secondary")] public Input? Secondary { get; set; } /// - /// Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + /// Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` /// [Input("version")] public Input? Version { get; set; } diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsIpsecProposalArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsIpsecProposalArgs.cs index 59297dd7..6acc7855 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsIpsecProposalArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsIpsecProposalArgs.cs @@ -19,7 +19,7 @@ public sealed class GatewayTunnelConfigsIpsecProposalArgs : global::Pulumi.Resou public Input? AuthAlgo { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: + /// Only if `provider`==`custom-ipsec`. enum: /// * 1 /// * 2 (1024-bit) /// * 5 diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsIpsecProposalGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsIpsecProposalGetArgs.cs index 5f01ffe5..42ccbc26 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsIpsecProposalGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsIpsecProposalGetArgs.cs @@ -19,7 +19,7 @@ public sealed class GatewayTunnelConfigsIpsecProposalGetArgs : global::Pulumi.Re public Input? AuthAlgo { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: + /// Only if `provider`==`custom-ipsec`. enum: /// * 1 /// * 2 (1024-bit) /// * 5 diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsPrimaryArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsPrimaryArgs.cs index 31b2ddd2..9b1bd616 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsPrimaryArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsPrimaryArgs.cs @@ -12,7 +12,7 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayTunnelConfigsPrimaryArgs : global::Pulumi.ResourceArgs { - [Input("hosts")] + [Input("hosts", required: true)] private InputList? _hosts; public InputList Hosts { @@ -24,9 +24,7 @@ public InputList Hosts private InputList? _internalIps; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public InputList InternalIps { @@ -46,7 +44,7 @@ public InputList ProbeIps private InputList? _remoteIds; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public InputList RemoteIds { @@ -54,7 +52,7 @@ public InputList RemoteIds set => _remoteIds = value; } - [Input("wanNames")] + [Input("wanNames", required: true)] private InputList? _wanNames; public InputList WanNames { diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsPrimaryGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsPrimaryGetArgs.cs index 4cfe1612..c1dcb60c 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsPrimaryGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsPrimaryGetArgs.cs @@ -12,7 +12,7 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayTunnelConfigsPrimaryGetArgs : global::Pulumi.ResourceArgs { - [Input("hosts")] + [Input("hosts", required: true)] private InputList? _hosts; public InputList Hosts { @@ -24,9 +24,7 @@ public InputList Hosts private InputList? _internalIps; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public InputList InternalIps { @@ -46,7 +44,7 @@ public InputList ProbeIps private InputList? _remoteIds; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public InputList RemoteIds { @@ -54,7 +52,7 @@ public InputList RemoteIds set => _remoteIds = value; } - [Input("wanNames")] + [Input("wanNames", required: true)] private InputList? _wanNames; public InputList WanNames { diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsSecondaryArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsSecondaryArgs.cs index df774b23..570b23f9 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsSecondaryArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsSecondaryArgs.cs @@ -12,7 +12,7 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayTunnelConfigsSecondaryArgs : global::Pulumi.ResourceArgs { - [Input("hosts")] + [Input("hosts", required: true)] private InputList? _hosts; public InputList Hosts { @@ -24,9 +24,7 @@ public InputList Hosts private InputList? _internalIps; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public InputList InternalIps { @@ -46,7 +44,7 @@ public InputList ProbeIps private InputList? _remoteIds; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public InputList RemoteIds { @@ -54,7 +52,7 @@ public InputList RemoteIds set => _remoteIds = value; } - [Input("wanNames")] + [Input("wanNames", required: true)] private InputList? _wanNames; public InputList WanNames { diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsSecondaryGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsSecondaryGetArgs.cs index a196fc37..afdeb87d 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsSecondaryGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelConfigsSecondaryGetArgs.cs @@ -12,7 +12,7 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayTunnelConfigsSecondaryGetArgs : global::Pulumi.ResourceArgs { - [Input("hosts")] + [Input("hosts", required: true)] private InputList? _hosts; public InputList Hosts { @@ -24,9 +24,7 @@ public InputList Hosts private InputList? _internalIps; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public InputList InternalIps { @@ -46,7 +44,7 @@ public InputList ProbeIps private InputList? _remoteIds; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public InputList RemoteIds { @@ -54,7 +52,7 @@ public InputList RemoteIds set => _remoteIds = value; } - [Input("wanNames")] + [Input("wanNames", required: true)] private InputList? _wanNames; public InputList WanNames { diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsJseArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsJseArgs.cs index d3244334..4d9b4c3b 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsJseArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsJseArgs.cs @@ -12,12 +12,15 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayTunnelProviderOptionsJseArgs : global::Pulumi.ResourceArgs { - [Input("name")] - public Input? Name { get; set; } - [Input("numUsers")] public Input? NumUsers { get; set; } + /// + /// JSE Organization name + /// + [Input("orgName")] + public Input? OrgName { get; set; } + public GatewayTunnelProviderOptionsJseArgs() { } diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsJseGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsJseGetArgs.cs index 00478dc2..0ff292fb 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsJseGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsJseGetArgs.cs @@ -12,12 +12,15 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayTunnelProviderOptionsJseGetArgs : global::Pulumi.ResourceArgs { - [Input("name")] - public Input? Name { get; set; } - [Input("numUsers")] public Input? NumUsers { get; set; } + /// + /// JSE Organization name + /// + [Input("orgName")] + public Input? OrgName { get; set; } + public GatewayTunnelProviderOptionsJseGetArgs() { } diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerArgs.cs index d202f145..a4a1c529 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerArgs.cs @@ -12,50 +12,62 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayTunnelProviderOptionsZscalerArgs : global::Pulumi.ResourceArgs { - [Input("aupAcceptanceRequired")] - public Input? AupAcceptanceRequired { get; set; } + [Input("aupBlockInternetUntilAccepted")] + public Input? AupBlockInternetUntilAccepted { get; set; } /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - [Input("aupExpire")] - public Input? AupExpire { get; set; } + [Input("aupEnabled")] + public Input? AupEnabled { get; set; } /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - [Input("aupSslProxy")] - public Input? AupSslProxy { get; set; } + [Input("aupForceSslInspection")] + public Input? AupForceSslInspection { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - [Input("downloadMbps")] - public Input? DownloadMbps { get; set; } + [Input("aupTimeoutInDays")] + public Input? AupTimeoutInDays { get; set; } /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to enforce user authentication /// - [Input("enableAup")] - public Input? EnableAup { get; set; } + [Input("authRequired")] + public Input? AuthRequired { get; set; } /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - [Input("enableCaution")] - public Input? EnableCaution { get; set; } + [Input("cautionEnabled")] + public Input? CautionEnabled { get; set; } - [Input("enforceAuthentication")] - public Input? EnforceAuthentication { get; set; } + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + [Input("dnBandwidth")] + public Input? DnBandwidth { get; set; } + + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + [Input("idleTimeInMinutes")] + public Input? IdleTimeInMinutes { get; set; } - [Input("name")] - public Input? Name { get; set; } + /// + /// if `true`, enable the firewall control option + /// + [Input("ofwEnabled")] + public Input? OfwEnabled { get; set; } [Input("subLocations")] private InputList? _subLocations; /// - /// if `use_xff`==`true` + /// `sub-locations` can be used for specific uses cases to define different configuration based on the user network /// public InputList SubLocations { @@ -64,16 +76,34 @@ public InputList SubL } /// - /// the download bandwidth cap of the link, in Mbps + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + [Input("surrogateIp")] + public Input? SurrogateIp { get; set; } + + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + [Input("surrogateIpEnforcedForKnownBrowsers")] + public Input? SurrogateIpEnforcedForKnownBrowsers { get; set; } + + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + [Input("surrogateRefreshTimeInMinutes")] + public Input? SurrogateRefreshTimeInMinutes { get; set; } + + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - [Input("uploadMbps")] - public Input? UploadMbps { get; set; } + [Input("upBandwidth")] + public Input? UpBandwidth { get; set; } /// /// location uses proxy chaining to forward traffic /// - [Input("useXff")] - public Input? UseXff { get; set; } + [Input("xffForwardEnabled")] + public Input? XffForwardEnabled { get; set; } public GatewayTunnelProviderOptionsZscalerArgs() { diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerGetArgs.cs index 94b138c6..b42c9457 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerGetArgs.cs @@ -12,50 +12,62 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayTunnelProviderOptionsZscalerGetArgs : global::Pulumi.ResourceArgs { - [Input("aupAcceptanceRequired")] - public Input? AupAcceptanceRequired { get; set; } + [Input("aupBlockInternetUntilAccepted")] + public Input? AupBlockInternetUntilAccepted { get; set; } /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - [Input("aupExpire")] - public Input? AupExpire { get; set; } + [Input("aupEnabled")] + public Input? AupEnabled { get; set; } /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - [Input("aupSslProxy")] - public Input? AupSslProxy { get; set; } + [Input("aupForceSslInspection")] + public Input? AupForceSslInspection { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - [Input("downloadMbps")] - public Input? DownloadMbps { get; set; } + [Input("aupTimeoutInDays")] + public Input? AupTimeoutInDays { get; set; } /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to enforce user authentication /// - [Input("enableAup")] - public Input? EnableAup { get; set; } + [Input("authRequired")] + public Input? AuthRequired { get; set; } /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - [Input("enableCaution")] - public Input? EnableCaution { get; set; } + [Input("cautionEnabled")] + public Input? CautionEnabled { get; set; } - [Input("enforceAuthentication")] - public Input? EnforceAuthentication { get; set; } + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + [Input("dnBandwidth")] + public Input? DnBandwidth { get; set; } + + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + [Input("idleTimeInMinutes")] + public Input? IdleTimeInMinutes { get; set; } - [Input("name")] - public Input? Name { get; set; } + /// + /// if `true`, enable the firewall control option + /// + [Input("ofwEnabled")] + public Input? OfwEnabled { get; set; } [Input("subLocations")] private InputList? _subLocations; /// - /// if `use_xff`==`true` + /// `sub-locations` can be used for specific uses cases to define different configuration based on the user network /// public InputList SubLocations { @@ -64,16 +76,34 @@ public InputList S } /// - /// the download bandwidth cap of the link, in Mbps + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + [Input("surrogateIp")] + public Input? SurrogateIp { get; set; } + + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + [Input("surrogateIpEnforcedForKnownBrowsers")] + public Input? SurrogateIpEnforcedForKnownBrowsers { get; set; } + + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + [Input("surrogateRefreshTimeInMinutes")] + public Input? SurrogateRefreshTimeInMinutes { get; set; } + + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - [Input("uploadMbps")] - public Input? UploadMbps { get; set; } + [Input("upBandwidth")] + public Input? UpBandwidth { get; set; } /// /// location uses proxy chaining to forward traffic /// - [Input("useXff")] - public Input? UseXff { get; set; } + [Input("xffForwardEnabled")] + public Input? XffForwardEnabled { get; set; } public GatewayTunnelProviderOptionsZscalerGetArgs() { diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerSubLocationArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerSubLocationArgs.cs index 24b9f7fc..74c7d954 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerSubLocationArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerSubLocationArgs.cs @@ -12,55 +12,86 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayTunnelProviderOptionsZscalerSubLocationArgs : global::Pulumi.ResourceArgs { - [Input("aupAcceptanceRequired")] - public Input? AupAcceptanceRequired { get; set; } + [Input("aupBlockInternetUntilAccepted")] + public Input? AupBlockInternetUntilAccepted { get; set; } /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - [Input("aupExpire")] - public Input? AupExpire { get; set; } + [Input("aupEnabled")] + public Input? AupEnabled { get; set; } /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - [Input("aupSslProxy")] - public Input? AupSslProxy { get; set; } + [Input("aupForceSslInspection")] + public Input? AupForceSslInspection { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - [Input("downloadMbps")] - public Input? DownloadMbps { get; set; } + [Input("aupTimeoutInDays")] + public Input? AupTimeoutInDays { get; set; } /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to authenticate users /// - [Input("enableAup")] - public Input? EnableAup { get; set; } + [Input("authRequired")] + public Input? AuthRequired { get; set; } /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - [Input("enableCaution")] - public Input? EnableCaution { get; set; } + [Input("cautionEnabled")] + public Input? CautionEnabled { get; set; } - [Input("enforceAuthentication")] - public Input? EnforceAuthentication { get; set; } + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + [Input("dnBandwidth")] + public Input? DnBandwidth { get; set; } - [Input("subnets")] - private InputList? _subnets; - public InputList Subnets - { - get => _subnets ?? (_subnets = new InputList()); - set => _subnets = value; - } + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + [Input("idleTimeInMinutes")] + public Input? IdleTimeInMinutes { get; set; } + + /// + /// Network name + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// if `true`, enable the firewall control option + /// + [Input("ofwEnabled")] + public Input? OfwEnabled { get; set; } + + /// + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + [Input("surrogateIp")] + public Input? SurrogateIp { get; set; } + + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + [Input("surrogateIpEnforcedForKnownBrowsers")] + public Input? SurrogateIpEnforcedForKnownBrowsers { get; set; } + + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + [Input("surrogateRefreshTimeInMinutes")] + public Input? SurrogateRefreshTimeInMinutes { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - [Input("uploadMbps")] - public Input? UploadMbps { get; set; } + [Input("upBandwidth")] + public Input? UpBandwidth { get; set; } public GatewayTunnelProviderOptionsZscalerSubLocationArgs() { diff --git a/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerSubLocationGetArgs.cs b/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerSubLocationGetArgs.cs index b2121b24..f4b6ad52 100644 --- a/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerSubLocationGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/GatewayTunnelProviderOptionsZscalerSubLocationGetArgs.cs @@ -12,55 +12,86 @@ namespace Pulumi.JuniperMist.Device.Inputs public sealed class GatewayTunnelProviderOptionsZscalerSubLocationGetArgs : global::Pulumi.ResourceArgs { - [Input("aupAcceptanceRequired")] - public Input? AupAcceptanceRequired { get; set; } + [Input("aupBlockInternetUntilAccepted")] + public Input? AupBlockInternetUntilAccepted { get; set; } /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - [Input("aupExpire")] - public Input? AupExpire { get; set; } + [Input("aupEnabled")] + public Input? AupEnabled { get; set; } /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - [Input("aupSslProxy")] - public Input? AupSslProxy { get; set; } + [Input("aupForceSslInspection")] + public Input? AupForceSslInspection { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - [Input("downloadMbps")] - public Input? DownloadMbps { get; set; } + [Input("aupTimeoutInDays")] + public Input? AupTimeoutInDays { get; set; } /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to authenticate users /// - [Input("enableAup")] - public Input? EnableAup { get; set; } + [Input("authRequired")] + public Input? AuthRequired { get; set; } /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - [Input("enableCaution")] - public Input? EnableCaution { get; set; } + [Input("cautionEnabled")] + public Input? CautionEnabled { get; set; } - [Input("enforceAuthentication")] - public Input? EnforceAuthentication { get; set; } + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + [Input("dnBandwidth")] + public Input? DnBandwidth { get; set; } - [Input("subnets")] - private InputList? _subnets; - public InputList Subnets - { - get => _subnets ?? (_subnets = new InputList()); - set => _subnets = value; - } + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + [Input("idleTimeInMinutes")] + public Input? IdleTimeInMinutes { get; set; } + + /// + /// Network name + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// if `true`, enable the firewall control option + /// + [Input("ofwEnabled")] + public Input? OfwEnabled { get; set; } + + /// + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + [Input("surrogateIp")] + public Input? SurrogateIp { get; set; } + + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + [Input("surrogateIpEnforcedForKnownBrowsers")] + public Input? SurrogateIpEnforcedForKnownBrowsers { get; set; } + + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + [Input("surrogateRefreshTimeInMinutes")] + public Input? SurrogateRefreshTimeInMinutes { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - [Input("uploadMbps")] - public Input? UploadMbps { get; set; } + [Input("upBandwidth")] + public Input? UpBandwidth { get; set; } public GatewayTunnelProviderOptionsZscalerSubLocationGetArgs() { diff --git a/sdk/dotnet/Device/Inputs/SwitchAclPolicyArgs.cs b/sdk/dotnet/Device/Inputs/SwitchAclPolicyArgs.cs index e70cce4c..f1fefa0e 100644 --- a/sdk/dotnet/Device/Inputs/SwitchAclPolicyArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchAclPolicyArgs.cs @@ -16,8 +16,9 @@ public sealed class SwitchAclPolicyArgs : global::Pulumi.ResourceArgs private InputList? _actions; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Actions: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public InputList Actions { @@ -32,8 +33,9 @@ public InputList Actions private InputList? _srcTags; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Source Tags: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public InputList SrcTags { diff --git a/sdk/dotnet/Device/Inputs/SwitchAclPolicyGetArgs.cs b/sdk/dotnet/Device/Inputs/SwitchAclPolicyGetArgs.cs index dbaf1eaa..d36a0ee3 100644 --- a/sdk/dotnet/Device/Inputs/SwitchAclPolicyGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchAclPolicyGetArgs.cs @@ -16,8 +16,9 @@ public sealed class SwitchAclPolicyGetArgs : global::Pulumi.ResourceArgs private InputList? _actions; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Actions: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public InputList Actions { @@ -32,8 +33,9 @@ public InputList Actions private InputList? _srcTags; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Source Tags: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public InputList SrcTags { diff --git a/sdk/dotnet/Device/Inputs/SwitchAclTagsArgs.cs b/sdk/dotnet/Device/Inputs/SwitchAclTagsArgs.cs index e93ba0ee..bc9f06f5 100644 --- a/sdk/dotnet/Device/Inputs/SwitchAclTagsArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchAclTagsArgs.cs @@ -14,9 +14,9 @@ public sealed class SwitchAclTagsArgs : global::Pulumi.ResourceArgs { /// /// required if - /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - /// - `type`==`gbp_resource` - /// - `type`==`static_gbp` (applying gbp tag against matching conditions) + /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + /// - `type`==`gbp_resource` + /// - `type`==`static_gbp` (applying gbp tag against matching conditions) /// [Input("gbpTag")] public Input? GbpTag { get; set; } @@ -59,8 +59,7 @@ public InputList Macs private InputList? _specs; /// - /// if `type`==`resource` or `type`==`gbp_resource` - /// empty means unrestricted, i.e. any + /// if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any /// public InputList Specs { diff --git a/sdk/dotnet/Device/Inputs/SwitchAclTagsGetArgs.cs b/sdk/dotnet/Device/Inputs/SwitchAclTagsGetArgs.cs index c12ceda8..ef99b3c1 100644 --- a/sdk/dotnet/Device/Inputs/SwitchAclTagsGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchAclTagsGetArgs.cs @@ -14,9 +14,9 @@ public sealed class SwitchAclTagsGetArgs : global::Pulumi.ResourceArgs { /// /// required if - /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - /// - `type`==`gbp_resource` - /// - `type`==`static_gbp` (applying gbp tag against matching conditions) + /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + /// - `type`==`gbp_resource` + /// - `type`==`static_gbp` (applying gbp tag against matching conditions) /// [Input("gbpTag")] public Input? GbpTag { get; set; } @@ -59,8 +59,7 @@ public InputList Macs private InputList? _specs; /// - /// if `type`==`resource` or `type`==`gbp_resource` - /// empty means unrestricted, i.e. any + /// if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any /// public InputList Specs { diff --git a/sdk/dotnet/Device/Inputs/SwitchAclTagsSpecArgs.cs b/sdk/dotnet/Device/Inputs/SwitchAclTagsSpecArgs.cs index cd70617f..e8c5cfdf 100644 --- a/sdk/dotnet/Device/Inputs/SwitchAclTagsSpecArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchAclTagsSpecArgs.cs @@ -19,7 +19,7 @@ public sealed class SwitchAclTagsSpecArgs : global::Pulumi.ResourceArgs public Input? PortRange { get; set; } /// - /// `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + /// `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 /// [Input("protocol")] public Input? Protocol { get; set; } diff --git a/sdk/dotnet/Device/Inputs/SwitchAclTagsSpecGetArgs.cs b/sdk/dotnet/Device/Inputs/SwitchAclTagsSpecGetArgs.cs index 17b1cf6e..4424d9f3 100644 --- a/sdk/dotnet/Device/Inputs/SwitchAclTagsSpecGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchAclTagsSpecGetArgs.cs @@ -19,7 +19,7 @@ public sealed class SwitchAclTagsSpecGetArgs : global::Pulumi.ResourceArgs public Input? PortRange { get; set; } /// - /// `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + /// `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 /// [Input("protocol")] public Input? Protocol { get; set; } diff --git a/sdk/dotnet/Device/Inputs/SwitchEvpnConfigArgs.cs b/sdk/dotnet/Device/Inputs/SwitchEvpnConfigArgs.cs deleted file mode 100644 index 0f4489d7..00000000 --- a/sdk/dotnet/Device/Inputs/SwitchEvpnConfigArgs.cs +++ /dev/null @@ -1,29 +0,0 @@ -// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.JuniperMist.Device.Inputs -{ - - public sealed class SwitchEvpnConfigArgs : global::Pulumi.ResourceArgs - { - [Input("enabled")] - public Input? Enabled { get; set; } - - /// - /// enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - /// - [Input("role")] - public Input? Role { get; set; } - - public SwitchEvpnConfigArgs() - { - } - public static new SwitchEvpnConfigArgs Empty => new SwitchEvpnConfigArgs(); - } -} diff --git a/sdk/dotnet/Device/Inputs/SwitchEvpnConfigGetArgs.cs b/sdk/dotnet/Device/Inputs/SwitchEvpnConfigGetArgs.cs deleted file mode 100644 index 9a063b45..00000000 --- a/sdk/dotnet/Device/Inputs/SwitchEvpnConfigGetArgs.cs +++ /dev/null @@ -1,29 +0,0 @@ -// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -using System; -using System.Collections.Generic; -using System.Collections.Immutable; -using System.Threading.Tasks; -using Pulumi.Serialization; - -namespace Pulumi.JuniperMist.Device.Inputs -{ - - public sealed class SwitchEvpnConfigGetArgs : global::Pulumi.ResourceArgs - { - [Input("enabled")] - public Input? Enabled { get; set; } - - /// - /// enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - /// - [Input("role")] - public Input? Role { get; set; } - - public SwitchEvpnConfigGetArgs() - { - } - public static new SwitchEvpnConfigGetArgs Empty => new SwitchEvpnConfigGetArgs(); - } -} diff --git a/sdk/dotnet/Device/Inputs/SwitchLocalPortConfigArgs.cs b/sdk/dotnet/Device/Inputs/SwitchLocalPortConfigArgs.cs index 3f86c074..7686b820 100644 --- a/sdk/dotnet/Device/Inputs/SwitchLocalPortConfigArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchLocalPortConfigArgs.cs @@ -19,9 +19,7 @@ public sealed class SwitchLocalPortConfigArgs : global::Pulumi.ResourceArgs public Input? AllNetworks { get; set; } /// - /// 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 allow_dhcpd is a tri_state. - /// 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. + /// 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 allow_dhcpd is a tri_state. 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. /// [Input("allowDhcpd")] public Input? AllowDhcpd { get; set; } @@ -90,8 +88,7 @@ public InputList DynamicVlanNetworks public Input? GuestNetwork { get; set; } /// - /// inter_switch_link is used together with "isolation" under networks - /// NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + /// inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together /// [Input("interSwitchLink")] public Input? InterSwitchLink { get; set; } @@ -144,6 +141,12 @@ public InputList Networks set => _networks = value; } + /// + /// Additional note for the port config override + /// + [Input("note")] + public Input? Note { get; set; } + /// /// Only if `mode`==`access` and `port_auth`!=`dot1x` whether the port should retain dynamically learned MAC addresses /// diff --git a/sdk/dotnet/Device/Inputs/SwitchLocalPortConfigGetArgs.cs b/sdk/dotnet/Device/Inputs/SwitchLocalPortConfigGetArgs.cs index 002285db..32cc693c 100644 --- a/sdk/dotnet/Device/Inputs/SwitchLocalPortConfigGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchLocalPortConfigGetArgs.cs @@ -19,9 +19,7 @@ public sealed class SwitchLocalPortConfigGetArgs : global::Pulumi.ResourceArgs public Input? AllNetworks { get; set; } /// - /// 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 allow_dhcpd is a tri_state. - /// 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. + /// 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 allow_dhcpd is a tri_state. 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. /// [Input("allowDhcpd")] public Input? AllowDhcpd { get; set; } @@ -90,8 +88,7 @@ public InputList DynamicVlanNetworks public Input? GuestNetwork { get; set; } /// - /// inter_switch_link is used together with "isolation" under networks - /// NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + /// inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together /// [Input("interSwitchLink")] public Input? InterSwitchLink { get; set; } @@ -144,6 +141,12 @@ public InputList Networks set => _networks = value; } + /// + /// Additional note for the port config override + /// + [Input("note")] + public Input? Note { get; set; } + /// /// Only if `mode`==`access` and `port_auth`!=`dot1x` whether the port should retain dynamically learned MAC addresses /// diff --git a/sdk/dotnet/Device/Inputs/SwitchNetworksArgs.cs b/sdk/dotnet/Device/Inputs/SwitchNetworksArgs.cs index 0713c100..79b24316 100644 --- a/sdk/dotnet/Device/Inputs/SwitchNetworksArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchNetworksArgs.cs @@ -25,8 +25,7 @@ public sealed class SwitchNetworksArgs : global::Pulumi.ResourceArgs public Input? Gateway6 { get; set; } /// - /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - /// NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set /// [Input("isolation")] public Input? Isolation { get; set; } diff --git a/sdk/dotnet/Device/Inputs/SwitchNetworksGetArgs.cs b/sdk/dotnet/Device/Inputs/SwitchNetworksGetArgs.cs index fda96e0d..18448237 100644 --- a/sdk/dotnet/Device/Inputs/SwitchNetworksGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchNetworksGetArgs.cs @@ -25,8 +25,7 @@ public sealed class SwitchNetworksGetArgs : global::Pulumi.ResourceArgs public Input? Gateway6 { get; set; } /// - /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - /// NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set /// [Input("isolation")] public Input? Isolation { get; set; } diff --git a/sdk/dotnet/Device/Inputs/SwitchPortUsagesArgs.cs b/sdk/dotnet/Device/Inputs/SwitchPortUsagesArgs.cs index a1d62d3a..1d8fc764 100644 --- a/sdk/dotnet/Device/Inputs/SwitchPortUsagesArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchPortUsagesArgs.cs @@ -19,9 +19,7 @@ public sealed class SwitchPortUsagesArgs : global::Pulumi.ResourceArgs public Input? AllNetworks { get; set; } /// - /// 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 allow_dhcpd is a tri_state. - /// 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. + /// 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 allow_dhcpd is a tri_state. 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. /// [Input("allowDhcpd")] public Input? AllowDhcpd { get; set; } @@ -99,8 +97,7 @@ public InputList DynamicVlanNetworks public Input? GuestNetwork { get; set; } /// - /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - /// NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together /// [Input("interSwitchLink")] public Input? InterSwitchLink { get; set; } @@ -220,8 +217,7 @@ public InputList Rules public Input? Speed { get; set; } /// - /// Switch storm control - /// Only if `mode`!=`dynamic` + /// Switch storm control. Only if `mode`!=`dynamic` /// [Input("stormControl")] public Input? StormControl { get; set; } diff --git a/sdk/dotnet/Device/Inputs/SwitchPortUsagesGetArgs.cs b/sdk/dotnet/Device/Inputs/SwitchPortUsagesGetArgs.cs index fe627de0..c045ea43 100644 --- a/sdk/dotnet/Device/Inputs/SwitchPortUsagesGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchPortUsagesGetArgs.cs @@ -19,9 +19,7 @@ public sealed class SwitchPortUsagesGetArgs : global::Pulumi.ResourceArgs public Input? AllNetworks { get; set; } /// - /// 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 allow_dhcpd is a tri_state. - /// 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. + /// 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 allow_dhcpd is a tri_state. 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. /// [Input("allowDhcpd")] public Input? AllowDhcpd { get; set; } @@ -99,8 +97,7 @@ public InputList DynamicVlanNetworks public Input? GuestNetwork { get; set; } /// - /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - /// NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together /// [Input("interSwitchLink")] public Input? InterSwitchLink { get; set; } @@ -220,8 +217,7 @@ public InputList Rules public Input? Speed { get; set; } /// - /// Switch storm control - /// Only if `mode`!=`dynamic` + /// Switch storm control. Only if `mode`!=`dynamic` /// [Input("stormControl")] public Input? StormControl { get; set; } diff --git a/sdk/dotnet/Device/Inputs/SwitchRadiusConfigArgs.cs b/sdk/dotnet/Device/Inputs/SwitchRadiusConfigArgs.cs index 7b51531a..27363444 100644 --- a/sdk/dotnet/Device/Inputs/SwitchRadiusConfigArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchRadiusConfigArgs.cs @@ -47,8 +47,7 @@ public InputList AuthServers public Input? AuthServersTimeout { get; set; } /// - /// use `network`or `source_ip` - /// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + /// use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip /// [Input("network")] public Input? Network { get; set; } diff --git a/sdk/dotnet/Device/Inputs/SwitchRadiusConfigGetArgs.cs b/sdk/dotnet/Device/Inputs/SwitchRadiusConfigGetArgs.cs index 3867b3b8..be5df961 100644 --- a/sdk/dotnet/Device/Inputs/SwitchRadiusConfigGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchRadiusConfigGetArgs.cs @@ -47,8 +47,7 @@ public InputList AuthServers public Input? AuthServersTimeout { get; set; } /// - /// use `network`or `source_ip` - /// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + /// use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip /// [Input("network")] public Input? Network { get; set; } diff --git a/sdk/dotnet/Device/Inputs/SwitchSnmpConfigV3ConfigUsmUserArgs.cs b/sdk/dotnet/Device/Inputs/SwitchSnmpConfigV3ConfigUsmUserArgs.cs index 080bae8b..29eacd44 100644 --- a/sdk/dotnet/Device/Inputs/SwitchSnmpConfigV3ConfigUsmUserArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchSnmpConfigV3ConfigUsmUserArgs.cs @@ -16,8 +16,7 @@ public sealed class SwitchSnmpConfigV3ConfigUsmUserArgs : global::Pulumi.Resourc private Input? _authenticationPassword; /// - /// Not required if `authentication_type`==`authentication_none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters. + /// Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. /// public Input? AuthenticationPassword { @@ -39,8 +38,7 @@ public Input? AuthenticationPassword private Input? _encryptionPassword; /// - /// Not required if `encryption_type`==`privacy-none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters + /// Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters /// public Input? EncryptionPassword { diff --git a/sdk/dotnet/Device/Inputs/SwitchSnmpConfigV3ConfigUsmUserGetArgs.cs b/sdk/dotnet/Device/Inputs/SwitchSnmpConfigV3ConfigUsmUserGetArgs.cs index 7b5101f9..c8043130 100644 --- a/sdk/dotnet/Device/Inputs/SwitchSnmpConfigV3ConfigUsmUserGetArgs.cs +++ b/sdk/dotnet/Device/Inputs/SwitchSnmpConfigV3ConfigUsmUserGetArgs.cs @@ -16,8 +16,7 @@ public sealed class SwitchSnmpConfigV3ConfigUsmUserGetArgs : global::Pulumi.Reso private Input? _authenticationPassword; /// - /// Not required if `authentication_type`==`authentication_none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters. + /// Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. /// public Input? AuthenticationPassword { @@ -39,8 +38,7 @@ public Input? AuthenticationPassword private Input? _encryptionPassword; /// - /// Not required if `encryption_type`==`privacy-none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters + /// Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters /// public Input? EncryptionPassword { diff --git a/sdk/dotnet/Device/Outputs/GatewayBgpConfig.cs b/sdk/dotnet/Device/Outputs/GatewayBgpConfig.cs index 61d17408..9f5bee7d 100644 --- a/sdk/dotnet/Device/Outputs/GatewayBgpConfig.cs +++ b/sdk/dotnet/Device/Outputs/GatewayBgpConfig.cs @@ -34,8 +34,7 @@ public sealed class GatewayBgpConfig /// public readonly string? ExportPolicy; /// - /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - /// for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this /// public readonly bool? ExtendedV4Nexthop; /// diff --git a/sdk/dotnet/Device/Outputs/GatewayNetwork.cs b/sdk/dotnet/Device/Outputs/GatewayNetwork.cs index 33889649..5c33deda 100644 --- a/sdk/dotnet/Device/Outputs/GatewayNetwork.cs +++ b/sdk/dotnet/Device/Outputs/GatewayNetwork.cs @@ -39,6 +39,9 @@ public sealed class GatewayNetwork public readonly ImmutableArray RoutedForNetworks; public readonly string Subnet; public readonly string? Subnet6; + /// + /// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + /// public readonly ImmutableDictionary? Tenants; public readonly string? VlanId; /// diff --git a/sdk/dotnet/Device/Outputs/GatewayNetworkInternetAccess.cs b/sdk/dotnet/Device/Outputs/GatewayNetworkInternetAccess.cs index dac5fada..caba45ed 100644 --- a/sdk/dotnet/Device/Outputs/GatewayNetworkInternetAccess.cs +++ b/sdk/dotnet/Device/Outputs/GatewayNetworkInternetAccess.cs @@ -15,7 +15,7 @@ public sealed class GatewayNetworkInternetAccess { public readonly bool? CreateSimpleServicePolicy; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public readonly ImmutableDictionary? DestinationNat; public readonly bool? Enabled; @@ -24,7 +24,7 @@ public sealed class GatewayNetworkInternetAccess /// public readonly bool? Restricted; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public readonly ImmutableDictionary? StaticNat; diff --git a/sdk/dotnet/Device/Outputs/GatewayNetworkInternetAccessDestinationNat.cs b/sdk/dotnet/Device/Outputs/GatewayNetworkInternetAccessDestinationNat.cs index e94fb6de..3a765e3e 100644 --- a/sdk/dotnet/Device/Outputs/GatewayNetworkInternetAccessDestinationNat.cs +++ b/sdk/dotnet/Device/Outputs/GatewayNetworkInternetAccessDestinationNat.cs @@ -13,9 +13,19 @@ namespace Pulumi.JuniperMist.Device.Outputs [OutputType] public sealed class GatewayNetworkInternetAccessDestinationNat { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// public readonly string? InternalIp; public readonly string? Name; - public readonly int? Port; + /// + /// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + /// + public readonly string? Port; + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + /// + public readonly string? WanName; [OutputConstructor] private GatewayNetworkInternetAccessDestinationNat( @@ -23,11 +33,14 @@ private GatewayNetworkInternetAccessDestinationNat( string? name, - int? port) + string? port, + + string? wanName) { InternalIp = internalIp; Name = name; Port = port; + WanName = wanName; } } } diff --git a/sdk/dotnet/Device/Outputs/GatewayNetworkInternetAccessStaticNat.cs b/sdk/dotnet/Device/Outputs/GatewayNetworkInternetAccessStaticNat.cs index 7307885f..a244697f 100644 --- a/sdk/dotnet/Device/Outputs/GatewayNetworkInternetAccessStaticNat.cs +++ b/sdk/dotnet/Device/Outputs/GatewayNetworkInternetAccessStaticNat.cs @@ -13,18 +13,21 @@ namespace Pulumi.JuniperMist.Device.Outputs [OutputType] public sealed class GatewayNetworkInternetAccessStaticNat { - public readonly string? InternalIp; - public readonly string? Name; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + /// + public readonly string InternalIp; + public readonly string Name; + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") /// public readonly string? WanName; [OutputConstructor] private GatewayNetworkInternetAccessStaticNat( - string? internalIp, + string internalIp, - string? name, + string name, string? wanName) { diff --git a/sdk/dotnet/Device/Outputs/GatewayNetworkVpnAccess.cs b/sdk/dotnet/Device/Outputs/GatewayNetworkVpnAccess.cs index 5b6e52b1..9f34b1a2 100644 --- a/sdk/dotnet/Device/Outputs/GatewayNetworkVpnAccess.cs +++ b/sdk/dotnet/Device/Outputs/GatewayNetworkVpnAccess.cs @@ -22,7 +22,7 @@ public sealed class GatewayNetworkVpnAccess /// public readonly bool? AllowPing; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public readonly ImmutableDictionary? DestinationNat; /// @@ -38,13 +38,11 @@ public sealed class GatewayNetworkVpnAccess /// public readonly bool? NoReadvertiseToLanOspf; /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// public readonly bool? NoReadvertiseToOverlay; /// - /// by default, the routes are only readvertised toward the same vrf on spoke - /// to allow it to be leaked to other vrfs + /// by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs /// public readonly ImmutableArray OtherVrfs; /// @@ -56,12 +54,11 @@ public sealed class GatewayNetworkVpnAccess /// public readonly Outputs.GatewayNetworkVpnAccessSourceNat? SourceNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public readonly ImmutableDictionary? StaticNat; /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// public readonly string? SummarizedSubnet; /// diff --git a/sdk/dotnet/Device/Outputs/GatewayNetworkVpnAccessDestinationNat.cs b/sdk/dotnet/Device/Outputs/GatewayNetworkVpnAccessDestinationNat.cs index b5954617..e1bab816 100644 --- a/sdk/dotnet/Device/Outputs/GatewayNetworkVpnAccessDestinationNat.cs +++ b/sdk/dotnet/Device/Outputs/GatewayNetworkVpnAccessDestinationNat.cs @@ -13,9 +13,12 @@ namespace Pulumi.JuniperMist.Device.Outputs [OutputType] public sealed class GatewayNetworkVpnAccessDestinationNat { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// public readonly string? InternalIp; public readonly string? Name; - public readonly int? Port; + public readonly string? Port; [OutputConstructor] private GatewayNetworkVpnAccessDestinationNat( @@ -23,7 +26,7 @@ private GatewayNetworkVpnAccessDestinationNat( string? name, - int? port) + string? port) { InternalIp = internalIp; Name = name; diff --git a/sdk/dotnet/Device/Outputs/GatewayNetworkVpnAccessStaticNat.cs b/sdk/dotnet/Device/Outputs/GatewayNetworkVpnAccessStaticNat.cs index 06cbceae..f6c1e523 100644 --- a/sdk/dotnet/Device/Outputs/GatewayNetworkVpnAccessStaticNat.cs +++ b/sdk/dotnet/Device/Outputs/GatewayNetworkVpnAccessStaticNat.cs @@ -13,24 +13,20 @@ namespace Pulumi.JuniperMist.Device.Outputs [OutputType] public sealed class GatewayNetworkVpnAccessStaticNat { - public readonly string? InternalIp; - public readonly string? Name; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") /// - public readonly string? WanName; + public readonly string InternalIp; + public readonly string Name; [OutputConstructor] private GatewayNetworkVpnAccessStaticNat( - string? internalIp, + string internalIp, - string? name, - - string? wanName) + string name) { InternalIp = internalIp; Name = name; - WanName = wanName; } } } diff --git a/sdk/dotnet/Device/Outputs/GatewayPortConfig.cs b/sdk/dotnet/Device/Outputs/GatewayPortConfig.cs index 583c5f58..d67e2bc9 100644 --- a/sdk/dotnet/Device/Outputs/GatewayPortConfig.cs +++ b/sdk/dotnet/Device/Outputs/GatewayPortConfig.cs @@ -22,9 +22,7 @@ public sealed class GatewayPortConfig /// public readonly string? AeIdx; /// - /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - /// Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - /// Note: Turning this on will enable force-up on one of the interfaces in the bundle only + /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only /// public readonly bool? AeLacpForceUp; public readonly bool? Aggregated; @@ -32,6 +30,9 @@ public sealed class GatewayPortConfig /// if want to generate port up/down alarm, set it to true /// public readonly bool? Critical; + /// + /// Interface Description. Can be a variable (i.e. "{{myvar}}") + /// public readonly string? Description; public readonly bool? DisableAutoneg; /// @@ -43,13 +44,11 @@ public sealed class GatewayPortConfig /// public readonly string? DslType; /// - /// if `wan_type`==`dsl` - /// 16 bit int + /// if `wan_type`==`dsl`, 16 bit int /// public readonly int? DslVci; /// - /// if `wan_type`==`dsl` - /// 8 bit int + /// if `wan_type`==`dsl`, 8 bit int /// public readonly int? DslVpi; /// @@ -83,7 +82,7 @@ public sealed class GatewayPortConfig /// public readonly string? Name; /// - /// if `usage`==`lan` + /// if `usage`==`lan`, name of the `junipermist.org.Network` resource /// public readonly ImmutableArray Networks; /// @@ -92,7 +91,7 @@ public sealed class GatewayPortConfig public readonly int? OuterVlanId; public readonly bool? PoeDisabled; /// - /// if `usage`==`lan` + /// Only for SRX and if `usage`==`lan`, the Untagged VLAN Network /// public readonly string? PortNetwork; /// @@ -129,36 +128,37 @@ public sealed class GatewayPortConfig /// port usage name. enum: `ha_control`, `ha_data`, `lan`, `wan` /// public readonly string Usage; - /// - /// if WAN interface is on a VLAN - /// - public readonly int? VlanId; + public readonly string? VlanId; /// /// Property key is the VPN name /// public readonly ImmutableDictionary? VpnPaths; /// - /// when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + /// Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` /// public readonly string? WanArpPolicer; /// - /// optional, if spoke should reach this port by a different IP + /// Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP /// public readonly string? WanExtIp; /// - /// Property Key is the destianation CIDR (e.g "100.100.100.0/24") + /// Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") /// public readonly ImmutableDictionary? WanExtraRoutes; /// - /// if `usage`==`wan` + /// Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + /// + public readonly ImmutableArray WanNetworks; + /// + /// Only if `usage`==`wan` /// public readonly Outputs.GatewayPortConfigWanProbeOverride? WanProbeOverride; /// - /// optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + /// Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip /// public readonly Outputs.GatewayPortConfigWanSourceNat? WanSourceNat; /// - /// if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + /// Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` /// public readonly string? WanType; @@ -232,7 +232,7 @@ private GatewayPortConfig( string usage, - int? vlanId, + string? vlanId, ImmutableDictionary? vpnPaths, @@ -242,6 +242,8 @@ private GatewayPortConfig( ImmutableDictionary? wanExtraRoutes, + ImmutableArray wanNetworks, + Outputs.GatewayPortConfigWanProbeOverride? wanProbeOverride, Outputs.GatewayPortConfigWanSourceNat? wanSourceNat, @@ -287,6 +289,7 @@ private GatewayPortConfig( WanArpPolicer = wanArpPolicer; WanExtIp = wanExtIp; WanExtraRoutes = wanExtraRoutes; + WanNetworks = wanNetworks; WanProbeOverride = wanProbeOverride; WanSourceNat = wanSourceNat; WanType = wanType; diff --git a/sdk/dotnet/Device/Outputs/GatewayPortConfigIpConfig.cs b/sdk/dotnet/Device/Outputs/GatewayPortConfigIpConfig.cs index f4477c5a..319e0c36 100644 --- a/sdk/dotnet/Device/Outputs/GatewayPortConfigIpConfig.cs +++ b/sdk/dotnet/Device/Outputs/GatewayPortConfigIpConfig.cs @@ -22,12 +22,15 @@ public sealed class GatewayPortConfigIpConfig /// public readonly ImmutableArray DnsSuffixes; /// - /// except for out-of_band interface (vme/em0/fxp0) + /// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") /// public readonly string? Gateway; + /// + /// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + /// public readonly string? Ip; /// - /// used only if `subnet` is not specified in `networks` + /// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") /// public readonly string? Netmask; /// diff --git a/sdk/dotnet/Device/Outputs/GatewayPortConfigTrafficShaping.cs b/sdk/dotnet/Device/Outputs/GatewayPortConfigTrafficShaping.cs index 06e0d427..12f0aa52 100644 --- a/sdk/dotnet/Device/Outputs/GatewayPortConfigTrafficShaping.cs +++ b/sdk/dotnet/Device/Outputs/GatewayPortConfigTrafficShaping.cs @@ -14,20 +14,26 @@ namespace Pulumi.JuniperMist.Device.Outputs public sealed class GatewayPortConfigTrafficShaping { /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public readonly ImmutableArray ClassPercentages; public readonly bool? Enabled; + /// + /// Interface Transmit Cap in kbps + /// + public readonly int? MaxTxKbps; [OutputConstructor] private GatewayPortConfigTrafficShaping( ImmutableArray classPercentages, - bool? enabled) + bool? enabled, + + int? maxTxKbps) { ClassPercentages = classPercentages; Enabled = enabled; + MaxTxKbps = maxTxKbps; } } } diff --git a/sdk/dotnet/Device/Outputs/GatewayPortConfigVpnPathsTrafficShaping.cs b/sdk/dotnet/Device/Outputs/GatewayPortConfigVpnPathsTrafficShaping.cs index 61f7688c..5ff2bac6 100644 --- a/sdk/dotnet/Device/Outputs/GatewayPortConfigVpnPathsTrafficShaping.cs +++ b/sdk/dotnet/Device/Outputs/GatewayPortConfigVpnPathsTrafficShaping.cs @@ -14,20 +14,26 @@ namespace Pulumi.JuniperMist.Device.Outputs public sealed class GatewayPortConfigVpnPathsTrafficShaping { /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public readonly ImmutableArray ClassPercentages; public readonly bool? Enabled; + /// + /// Interface Transmit Cap in kbps + /// + public readonly int? MaxTxKbps; [OutputConstructor] private GatewayPortConfigVpnPathsTrafficShaping( ImmutableArray classPercentages, - bool? enabled) + bool? enabled, + + int? maxTxKbps) { ClassPercentages = classPercentages; Enabled = enabled; + MaxTxKbps = maxTxKbps; } } } diff --git a/sdk/dotnet/Device/Outputs/GatewayRoutingPoliciesTermAction.cs b/sdk/dotnet/Device/Outputs/GatewayRoutingPoliciesTermAction.cs index 9033c1e1..ae02469b 100644 --- a/sdk/dotnet/Device/Outputs/GatewayRoutingPoliciesTermAction.cs +++ b/sdk/dotnet/Device/Outputs/GatewayRoutingPoliciesTermAction.cs @@ -20,6 +20,10 @@ public sealed class GatewayRoutingPoliciesTermAction /// public readonly ImmutableArray AddTargetVrfs; /// + /// route aggregation + /// + public readonly ImmutableArray Aggregates; + /// /// when used as export policy, optional /// public readonly ImmutableArray Communities; @@ -49,6 +53,8 @@ private GatewayRoutingPoliciesTermAction( ImmutableArray addTargetVrfs, + ImmutableArray aggregates, + ImmutableArray communities, ImmutableArray excludeAsPaths, @@ -64,6 +70,7 @@ private GatewayRoutingPoliciesTermAction( Accept = accept; AddCommunities = addCommunities; AddTargetVrfs = addTargetVrfs; + Aggregates = aggregates; Communities = communities; ExcludeAsPaths = excludeAsPaths; ExcludeCommunities = excludeCommunities; diff --git a/sdk/dotnet/Device/Outputs/GatewayRoutingPoliciesTermMatching.cs b/sdk/dotnet/Device/Outputs/GatewayRoutingPoliciesTermMatching.cs index 5e83e45e..6c7f678c 100644 --- a/sdk/dotnet/Device/Outputs/GatewayRoutingPoliciesTermMatching.cs +++ b/sdk/dotnet/Device/Outputs/GatewayRoutingPoliciesTermMatching.cs @@ -34,8 +34,7 @@ public sealed class GatewayRoutingPoliciesTermMatching public readonly ImmutableArray VpnNeighborMacs; public readonly Outputs.GatewayRoutingPoliciesTermMatchingVpnPathSla? VpnPathSla; /// - /// overlay-facing criteria (used for bgp_config where via=vpn) - /// ordered- + /// overlay-facing criteria (used for bgp_config where via=vpn). ordered- /// public readonly ImmutableArray VpnPaths; diff --git a/sdk/dotnet/Device/Outputs/GatewayRoutingPoliciesTermMatchingRouteExists.cs b/sdk/dotnet/Device/Outputs/GatewayRoutingPoliciesTermMatchingRouteExists.cs index 75c34548..685d78ad 100644 --- a/sdk/dotnet/Device/Outputs/GatewayRoutingPoliciesTermMatchingRouteExists.cs +++ b/sdk/dotnet/Device/Outputs/GatewayRoutingPoliciesTermMatchingRouteExists.cs @@ -15,8 +15,7 @@ public sealed class GatewayRoutingPoliciesTermMatchingRouteExists { public readonly string? Route; /// - /// name of the vrf instance - /// it can also be the name of the VPN or wan if they + /// name of the vrf instance, it can also be the name of the VPN or wan if they /// public readonly string? VrfName; diff --git a/sdk/dotnet/Device/Outputs/GatewayServicePolicy.cs b/sdk/dotnet/Device/Outputs/GatewayServicePolicy.cs index ad13d85e..e314fed7 100644 --- a/sdk/dotnet/Device/Outputs/GatewayServicePolicy.cs +++ b/sdk/dotnet/Device/Outputs/GatewayServicePolicy.cs @@ -32,8 +32,7 @@ public sealed class GatewayServicePolicy /// public readonly string? Name; /// - /// by default, we derive all paths available and use them - /// optionally, you can customize by using `path_preference` + /// by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` /// public readonly string? PathPreference; /// diff --git a/sdk/dotnet/Device/Outputs/GatewayTunnelConfigs.cs b/sdk/dotnet/Device/Outputs/GatewayTunnelConfigs.cs index fce8634a..8391c4ab 100644 --- a/sdk/dotnet/Device/Outputs/GatewayTunnelConfigs.cs +++ b/sdk/dotnet/Device/Outputs/GatewayTunnelConfigs.cs @@ -15,63 +15,63 @@ public sealed class GatewayTunnelConfigs { public readonly Outputs.GatewayTunnelConfigsAutoProvision? AutoProvision; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// public readonly int? IkeLifetime; /// - /// Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + /// Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` /// public readonly string? IkeMode; /// - /// if `provider`== `custom-ipsec` + /// if `provider`==`custom-ipsec` /// public readonly ImmutableArray IkeProposals; /// - /// if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// public readonly int? IpsecLifetime; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// public readonly ImmutableArray IpsecProposals; /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public readonly string? LocalId; /// - /// enum: `active-active`, `active-standby` + /// Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` /// public readonly string? Mode; /// - /// networks reachable via this tunnel + /// if `provider`==`custom-ipsec`, networks reachable via this tunnel /// public readonly ImmutableArray Networks; + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// public readonly Outputs.GatewayTunnelConfigsPrimary? Primary; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// public readonly Outputs.GatewayTunnelConfigsProbe? Probe; /// - /// Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + /// Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` /// public readonly string? Protocol; /// - /// enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + /// Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` /// public readonly string? Provider; /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public readonly string? Psk; + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// public readonly Outputs.GatewayTunnelConfigsSecondary? Secondary; /// - /// Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + /// Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` /// public readonly string? Version; diff --git a/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsAutoProvision.cs b/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsAutoProvision.cs index e05e831d..03bc4734 100644 --- a/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsAutoProvision.cs +++ b/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsAutoProvision.cs @@ -14,8 +14,19 @@ namespace Pulumi.JuniperMist.Device.Outputs public sealed class GatewayTunnelConfigsAutoProvision { public readonly bool? Enable; + /// + /// API override for POP selection + /// public readonly Outputs.GatewayTunnelConfigsAutoProvisionLatlng? Latlng; public readonly Outputs.GatewayTunnelConfigsAutoProvisionPrimary? Primary; + /// + /// enum: `jse-ipsec`, `zscaler-ipsec` + /// + public readonly string Provider; + /// + /// API override for POP selection + /// + public readonly string? Region; public readonly Outputs.GatewayTunnelConfigsAutoProvisionSecondary? Secondary; [OutputConstructor] @@ -26,11 +37,17 @@ private GatewayTunnelConfigsAutoProvision( Outputs.GatewayTunnelConfigsAutoProvisionPrimary? primary, + string provider, + + string? region, + Outputs.GatewayTunnelConfigsAutoProvisionSecondary? secondary) { Enable = enable; Latlng = latlng; Primary = primary; + Provider = provider; + Region = region; Secondary = secondary; } } diff --git a/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsAutoProvisionPrimary.cs b/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsAutoProvisionPrimary.cs index 645d5dcf..7a34ec16 100644 --- a/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsAutoProvisionPrimary.cs +++ b/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsAutoProvisionPrimary.cs @@ -13,7 +13,7 @@ namespace Pulumi.JuniperMist.Device.Outputs [OutputType] public sealed class GatewayTunnelConfigsAutoProvisionPrimary { - public readonly string? NumHosts; + public readonly ImmutableArray ProbeIps; /// /// optional, only needed if `vars_only`==`false` /// @@ -21,11 +21,11 @@ public sealed class GatewayTunnelConfigsAutoProvisionPrimary [OutputConstructor] private GatewayTunnelConfigsAutoProvisionPrimary( - string? numHosts, + ImmutableArray probeIps, ImmutableArray wanNames) { - NumHosts = numHosts; + ProbeIps = probeIps; WanNames = wanNames; } } diff --git a/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsAutoProvisionSecondary.cs b/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsAutoProvisionSecondary.cs index f63fcfe8..2f270b59 100644 --- a/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsAutoProvisionSecondary.cs +++ b/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsAutoProvisionSecondary.cs @@ -13,7 +13,7 @@ namespace Pulumi.JuniperMist.Device.Outputs [OutputType] public sealed class GatewayTunnelConfigsAutoProvisionSecondary { - public readonly string? NumHosts; + public readonly ImmutableArray ProbeIps; /// /// optional, only needed if `vars_only`==`false` /// @@ -21,11 +21,11 @@ public sealed class GatewayTunnelConfigsAutoProvisionSecondary [OutputConstructor] private GatewayTunnelConfigsAutoProvisionSecondary( - string? numHosts, + ImmutableArray probeIps, ImmutableArray wanNames) { - NumHosts = numHosts; + ProbeIps = probeIps; WanNames = wanNames; } } diff --git a/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsIpsecProposal.cs b/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsIpsecProposal.cs index c9d0a7bf..27952bda 100644 --- a/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsIpsecProposal.cs +++ b/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsIpsecProposal.cs @@ -18,7 +18,7 @@ public sealed class GatewayTunnelConfigsIpsecProposal /// public readonly string? AuthAlgo; /// - /// Only if `provider`== `custom-ipsec`. enum: + /// Only if `provider`==`custom-ipsec`. enum: /// * 1 /// * 2 (1024-bit) /// * 5 diff --git a/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsPrimary.cs b/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsPrimary.cs index cf85223b..303d948e 100644 --- a/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsPrimary.cs +++ b/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsPrimary.cs @@ -15,14 +15,12 @@ public sealed class GatewayTunnelConfigsPrimary { public readonly ImmutableArray Hosts; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public readonly ImmutableArray InternalIps; public readonly ImmutableArray ProbeIps; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public readonly ImmutableArray RemoteIds; public readonly ImmutableArray WanNames; diff --git a/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsSecondary.cs b/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsSecondary.cs index 5e168fe2..adf3f63d 100644 --- a/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsSecondary.cs +++ b/sdk/dotnet/Device/Outputs/GatewayTunnelConfigsSecondary.cs @@ -15,14 +15,12 @@ public sealed class GatewayTunnelConfigsSecondary { public readonly ImmutableArray Hosts; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public readonly ImmutableArray InternalIps; public readonly ImmutableArray ProbeIps; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public readonly ImmutableArray RemoteIds; public readonly ImmutableArray WanNames; diff --git a/sdk/dotnet/Device/Outputs/GatewayTunnelProviderOptionsJse.cs b/sdk/dotnet/Device/Outputs/GatewayTunnelProviderOptionsJse.cs index 279cc88a..45d4565d 100644 --- a/sdk/dotnet/Device/Outputs/GatewayTunnelProviderOptionsJse.cs +++ b/sdk/dotnet/Device/Outputs/GatewayTunnelProviderOptionsJse.cs @@ -13,17 +13,20 @@ namespace Pulumi.JuniperMist.Device.Outputs [OutputType] public sealed class GatewayTunnelProviderOptionsJse { - public readonly string? Name; public readonly int? NumUsers; + /// + /// JSE Organization name + /// + public readonly string? OrgName; [OutputConstructor] private GatewayTunnelProviderOptionsJse( - string? name, + int? numUsers, - int? numUsers) + string? orgName) { - Name = name; NumUsers = numUsers; + OrgName = orgName; } } } diff --git a/sdk/dotnet/Device/Outputs/GatewayTunnelProviderOptionsZscaler.cs b/sdk/dotnet/Device/Outputs/GatewayTunnelProviderOptionsZscaler.cs index a5a33c98..bf63d84c 100644 --- a/sdk/dotnet/Device/Outputs/GatewayTunnelProviderOptionsZscaler.cs +++ b/sdk/dotnet/Device/Outputs/GatewayTunnelProviderOptionsZscaler.cs @@ -13,77 +13,111 @@ namespace Pulumi.JuniperMist.Device.Outputs [OutputType] public sealed class GatewayTunnelProviderOptionsZscaler { - public readonly bool? AupAcceptanceRequired; + public readonly bool? AupBlockInternetUntilAccepted; /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - public readonly int? AupExpire; + public readonly bool? AupEnabled; /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - public readonly bool? AupSslProxy; + public readonly bool? AupForceSslInspection; /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - public readonly int? DownloadMbps; + public readonly int? AupTimeoutInDays; /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to enforce user authentication /// - public readonly bool? EnableAup; + public readonly bool? AuthRequired; /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - public readonly bool? EnableCaution; - public readonly bool? EnforceAuthentication; - public readonly string? Name; + public readonly bool? CautionEnabled; /// - /// if `use_xff`==`true` + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + public readonly double? DnBandwidth; + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + public readonly int? IdleTimeInMinutes; + /// + /// if `true`, enable the firewall control option + /// + public readonly bool? OfwEnabled; + /// + /// `sub-locations` can be used for specific uses cases to define different configuration based on the user network /// public readonly ImmutableArray SubLocations; /// - /// the download bandwidth cap of the link, in Mbps + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + public readonly bool? SurrogateIp; + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers /// - public readonly int? UploadMbps; + public readonly bool? SurrogateIpEnforcedForKnownBrowsers; + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + public readonly int? SurrogateRefreshTimeInMinutes; + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + public readonly double? UpBandwidth; /// /// location uses proxy chaining to forward traffic /// - public readonly bool? UseXff; + public readonly bool? XffForwardEnabled; [OutputConstructor] private GatewayTunnelProviderOptionsZscaler( - bool? aupAcceptanceRequired, + bool? aupBlockInternetUntilAccepted, - int? aupExpire, + bool? aupEnabled, - bool? aupSslProxy, + bool? aupForceSslInspection, - int? downloadMbps, + int? aupTimeoutInDays, - bool? enableAup, + bool? authRequired, - bool? enableCaution, + bool? cautionEnabled, - bool? enforceAuthentication, + double? dnBandwidth, - string? name, + int? idleTimeInMinutes, + + bool? ofwEnabled, ImmutableArray subLocations, - int? uploadMbps, + bool? surrogateIp, + + bool? surrogateIpEnforcedForKnownBrowsers, + + int? surrogateRefreshTimeInMinutes, + + double? upBandwidth, - bool? useXff) + bool? xffForwardEnabled) { - AupAcceptanceRequired = aupAcceptanceRequired; - AupExpire = aupExpire; - AupSslProxy = aupSslProxy; - DownloadMbps = downloadMbps; - EnableAup = enableAup; - EnableCaution = enableCaution; - EnforceAuthentication = enforceAuthentication; - Name = name; + AupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + AupEnabled = aupEnabled; + AupForceSslInspection = aupForceSslInspection; + AupTimeoutInDays = aupTimeoutInDays; + AuthRequired = authRequired; + CautionEnabled = cautionEnabled; + DnBandwidth = dnBandwidth; + IdleTimeInMinutes = idleTimeInMinutes; + OfwEnabled = ofwEnabled; SubLocations = subLocations; - UploadMbps = uploadMbps; - UseXff = useXff; + SurrogateIp = surrogateIp; + SurrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + SurrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + UpBandwidth = upBandwidth; + XffForwardEnabled = xffForwardEnabled; } } } diff --git a/sdk/dotnet/Device/Outputs/GatewayTunnelProviderOptionsZscalerSubLocation.cs b/sdk/dotnet/Device/Outputs/GatewayTunnelProviderOptionsZscalerSubLocation.cs index 19dc0b1d..7d5b512a 100644 --- a/sdk/dotnet/Device/Outputs/GatewayTunnelProviderOptionsZscalerSubLocation.cs +++ b/sdk/dotnet/Device/Outputs/GatewayTunnelProviderOptionsZscalerSubLocation.cs @@ -13,63 +13,104 @@ namespace Pulumi.JuniperMist.Device.Outputs [OutputType] public sealed class GatewayTunnelProviderOptionsZscalerSubLocation { - public readonly bool? AupAcceptanceRequired; + public readonly bool? AupBlockInternetUntilAccepted; /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - public readonly int? AupExpire; + public readonly bool? AupEnabled; /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - public readonly bool? AupSslProxy; + public readonly bool? AupForceSslInspection; /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - public readonly int? DownloadMbps; + public readonly int? AupTimeoutInDays; /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to authenticate users /// - public readonly bool? EnableAup; + public readonly bool? AuthRequired; /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - public readonly bool? EnableCaution; - public readonly bool? EnforceAuthentication; - public readonly ImmutableArray Subnets; + public readonly bool? CautionEnabled; /// - /// the download bandwidth cap of the link, in Mbps + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - public readonly int? UploadMbps; + public readonly double? DnBandwidth; + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + public readonly int? IdleTimeInMinutes; + /// + /// Network name + /// + public readonly string? Name; + /// + /// if `true`, enable the firewall control option + /// + public readonly bool? OfwEnabled; + /// + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + public readonly bool? SurrogateIp; + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + public readonly bool? SurrogateIpEnforcedForKnownBrowsers; + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + public readonly int? SurrogateRefreshTimeInMinutes; + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + public readonly double? UpBandwidth; [OutputConstructor] private GatewayTunnelProviderOptionsZscalerSubLocation( - bool? aupAcceptanceRequired, + bool? aupBlockInternetUntilAccepted, + + bool? aupEnabled, + + bool? aupForceSslInspection, + + int? aupTimeoutInDays, + + bool? authRequired, + + bool? cautionEnabled, - int? aupExpire, + double? dnBandwidth, - bool? aupSslProxy, + int? idleTimeInMinutes, - int? downloadMbps, + string? name, - bool? enableAup, + bool? ofwEnabled, - bool? enableCaution, + bool? surrogateIp, - bool? enforceAuthentication, + bool? surrogateIpEnforcedForKnownBrowsers, - ImmutableArray subnets, + int? surrogateRefreshTimeInMinutes, - int? uploadMbps) + double? upBandwidth) { - AupAcceptanceRequired = aupAcceptanceRequired; - AupExpire = aupExpire; - AupSslProxy = aupSslProxy; - DownloadMbps = downloadMbps; - EnableAup = enableAup; - EnableCaution = enableCaution; - EnforceAuthentication = enforceAuthentication; - Subnets = subnets; - UploadMbps = uploadMbps; + AupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + AupEnabled = aupEnabled; + AupForceSslInspection = aupForceSslInspection; + AupTimeoutInDays = aupTimeoutInDays; + AuthRequired = authRequired; + CautionEnabled = cautionEnabled; + DnBandwidth = dnBandwidth; + IdleTimeInMinutes = idleTimeInMinutes; + Name = name; + OfwEnabled = ofwEnabled; + SurrogateIp = surrogateIp; + SurrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + SurrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + UpBandwidth = upBandwidth; } } } diff --git a/sdk/dotnet/Device/Outputs/SwitchAclPolicy.cs b/sdk/dotnet/Device/Outputs/SwitchAclPolicy.cs index 3b46baf7..354b0ec4 100644 --- a/sdk/dotnet/Device/Outputs/SwitchAclPolicy.cs +++ b/sdk/dotnet/Device/Outputs/SwitchAclPolicy.cs @@ -14,14 +14,16 @@ namespace Pulumi.JuniperMist.Device.Outputs public sealed class SwitchAclPolicy { /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Actions: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public readonly ImmutableArray Actions; public readonly string? Name; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Source Tags: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public readonly ImmutableArray SrcTags; diff --git a/sdk/dotnet/Device/Outputs/SwitchAclTags.cs b/sdk/dotnet/Device/Outputs/SwitchAclTags.cs index 2bc319a9..e16a6308 100644 --- a/sdk/dotnet/Device/Outputs/SwitchAclTags.cs +++ b/sdk/dotnet/Device/Outputs/SwitchAclTags.cs @@ -15,9 +15,9 @@ public sealed class SwitchAclTags { /// /// required if - /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - /// - `type`==`gbp_resource` - /// - `type`==`static_gbp` (applying gbp tag against matching conditions) + /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + /// - `type`==`gbp_resource` + /// - `type`==`static_gbp` (applying gbp tag against matching conditions) /// public readonly int? GbpTag; /// @@ -43,8 +43,7 @@ public sealed class SwitchAclTags /// public readonly string? RadiusGroup; /// - /// if `type`==`resource` or `type`==`gbp_resource` - /// empty means unrestricted, i.e. any + /// if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any /// public readonly ImmutableArray Specs; /// diff --git a/sdk/dotnet/Device/Outputs/SwitchAclTagsSpec.cs b/sdk/dotnet/Device/Outputs/SwitchAclTagsSpec.cs index e4a990f8..4aac86b8 100644 --- a/sdk/dotnet/Device/Outputs/SwitchAclTagsSpec.cs +++ b/sdk/dotnet/Device/Outputs/SwitchAclTagsSpec.cs @@ -18,7 +18,7 @@ public sealed class SwitchAclTagsSpec /// public readonly string? PortRange; /// - /// `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + /// `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 /// public readonly string? Protocol; diff --git a/sdk/dotnet/Device/Outputs/SwitchLocalPortConfig.cs b/sdk/dotnet/Device/Outputs/SwitchLocalPortConfig.cs index 3b6bdd61..82d321a6 100644 --- a/sdk/dotnet/Device/Outputs/SwitchLocalPortConfig.cs +++ b/sdk/dotnet/Device/Outputs/SwitchLocalPortConfig.cs @@ -18,9 +18,7 @@ public sealed class SwitchLocalPortConfig /// public readonly bool? AllNetworks; /// - /// 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 allow_dhcpd is a tri_state. - /// 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. + /// 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 allow_dhcpd is a tri_state. 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. /// public readonly bool? AllowDhcpd; public readonly bool? AllowMultipleSupplicants; @@ -59,8 +57,7 @@ public sealed class SwitchLocalPortConfig /// public readonly string? GuestNetwork; /// - /// inter_switch_link is used together with "isolation" under networks - /// NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + /// inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together /// public readonly bool? InterSwitchLink; /// @@ -92,6 +89,10 @@ public sealed class SwitchLocalPortConfig /// public readonly ImmutableArray Networks; /// + /// Additional note for the port config override + /// + public readonly string? Note; + /// /// Only if `mode`==`access` and `port_auth`!=`dot1x` whether the port should retain dynamically learned MAC addresses /// public readonly bool? PersistMac; @@ -190,6 +191,8 @@ private SwitchLocalPortConfig( ImmutableArray networks, + string? note, + bool? persistMac, bool? poeDisabled, @@ -241,6 +244,7 @@ private SwitchLocalPortConfig( Mode = mode; Mtu = mtu; Networks = networks; + Note = note; PersistMac = persistMac; PoeDisabled = poeDisabled; PortAuth = portAuth; diff --git a/sdk/dotnet/Device/Outputs/SwitchNetworks.cs b/sdk/dotnet/Device/Outputs/SwitchNetworks.cs index ee22c011..42eacd88 100644 --- a/sdk/dotnet/Device/Outputs/SwitchNetworks.cs +++ b/sdk/dotnet/Device/Outputs/SwitchNetworks.cs @@ -22,8 +22,7 @@ public sealed class SwitchNetworks /// public readonly string? Gateway6; /// - /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - /// NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set /// public readonly bool? Isolation; public readonly string? IsolationVlanId; diff --git a/sdk/dotnet/Device/Outputs/SwitchPortUsages.cs b/sdk/dotnet/Device/Outputs/SwitchPortUsages.cs index d0ff3e35..f04909dd 100644 --- a/sdk/dotnet/Device/Outputs/SwitchPortUsages.cs +++ b/sdk/dotnet/Device/Outputs/SwitchPortUsages.cs @@ -18,9 +18,7 @@ public sealed class SwitchPortUsages /// public readonly bool? AllNetworks; /// - /// 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 allow_dhcpd is a tri_state. - /// 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. + /// 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 allow_dhcpd is a tri_state. 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. /// public readonly bool? AllowDhcpd; /// @@ -68,8 +66,7 @@ public sealed class SwitchPortUsages /// public readonly string? GuestNetwork; /// - /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - /// NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together /// public readonly bool? InterSwitchLink; /// @@ -141,8 +138,7 @@ public sealed class SwitchPortUsages /// public readonly string? Speed; /// - /// Switch storm control - /// Only if `mode`!=`dynamic` + /// Switch storm control. Only if `mode`!=`dynamic` /// public readonly Outputs.SwitchPortUsagesStormControl? StormControl; /// diff --git a/sdk/dotnet/Device/Outputs/SwitchRadiusConfig.cs b/sdk/dotnet/Device/Outputs/SwitchRadiusConfig.cs index b71ff057..decc2a30 100644 --- a/sdk/dotnet/Device/Outputs/SwitchRadiusConfig.cs +++ b/sdk/dotnet/Device/Outputs/SwitchRadiusConfig.cs @@ -28,8 +28,7 @@ public sealed class SwitchRadiusConfig /// public readonly int? AuthServersTimeout; /// - /// use `network`or `source_ip` - /// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + /// use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip /// public readonly string? Network; /// diff --git a/sdk/dotnet/Device/Outputs/SwitchSnmpConfigV3ConfigUsmUser.cs b/sdk/dotnet/Device/Outputs/SwitchSnmpConfigV3ConfigUsmUser.cs index 7df3c23e..d591193d 100644 --- a/sdk/dotnet/Device/Outputs/SwitchSnmpConfigV3ConfigUsmUser.cs +++ b/sdk/dotnet/Device/Outputs/SwitchSnmpConfigV3ConfigUsmUser.cs @@ -14,8 +14,7 @@ namespace Pulumi.JuniperMist.Device.Outputs public sealed class SwitchSnmpConfigV3ConfigUsmUser { /// - /// Not required if `authentication_type`==`authentication_none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters. + /// Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. /// public readonly string? AuthenticationPassword; /// @@ -23,8 +22,7 @@ public sealed class SwitchSnmpConfigV3ConfigUsmUser /// public readonly string? AuthenticationType; /// - /// Not required if `encryption_type`==`privacy-none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters + /// Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters /// public readonly string? EncryptionPassword; /// diff --git a/sdk/dotnet/Device/Switch.cs b/sdk/dotnet/Device/Switch.cs index 4a974c30..61785d3c 100644 --- a/sdk/dotnet/Device/Switch.cs +++ b/sdk/dotnet/Device/Switch.cs @@ -38,7 +38,7 @@ public partial class Switch : global::Pulumi.CustomResource public Output?> AclTags { get; private set; } = null!; /// - /// additional CLI commands to append to the generated Junos config **Note**: no check is done + /// additional CLI commands to append to the generated Junos config. **Note**: no check is done /// [Output("additionalConfigCmds")] public Output> AdditionalConfigCmds { get; private set; } = null!; @@ -70,12 +70,6 @@ public partial class Switch : global::Pulumi.CustomResource [Output("dnsSuffixes")] public Output> DnsSuffixes { get; private set; } = null!; - /// - /// EVPN Junos settings - /// - [Output("evpnConfig")] - public Output EvpnConfig { get; private set; } = null!; - [Output("extraRoutes")] public Output?> ExtraRoutes { get; private set; } = null!; @@ -156,8 +150,8 @@ public partial class Switch : global::Pulumi.CustomResource public Output> NtpServers { get; private set; } = null!; /// - /// - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - /// set separately (if desired): key parameter = `re1` + /// Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + /// re1 mgmt IP has to be set separately (if desired): key parameter = `re1` /// [Output("oobIpConfig")] public Output OobIpConfig { get; private set; } = null!; @@ -184,7 +178,7 @@ public partial class Switch : global::Pulumi.CustomResource public Output?> PortConfig { get; private set; } = null!; /// - /// Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes /// interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A /// maximum 4 port mirrorings is allowed /// @@ -358,7 +352,7 @@ public InputMap AclTags private InputList? _additionalConfigCmds; /// - /// additional CLI commands to append to the generated Junos config **Note**: no check is done + /// additional CLI commands to append to the generated Junos config. **Note**: no check is done /// public InputList AdditionalConfigCmds { @@ -493,8 +487,8 @@ public InputList NtpServers } /// - /// - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - /// set separately (if desired): key parameter = `re1` + /// Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + /// re1 mgmt IP has to be set separately (if desired): key parameter = `re1` /// [Input("oobIpConfig")] public Input? OobIpConfig { get; set; } @@ -539,7 +533,7 @@ public InputMap PortConfig private InputMap? _portMirroring; /// - /// Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes /// interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A /// maximum 4 port mirrorings is allowed /// @@ -683,7 +677,7 @@ public InputMap AclTags private InputList? _additionalConfigCmds; /// - /// additional CLI commands to append to the generated Junos config **Note**: no check is done + /// additional CLI commands to append to the generated Junos config. **Note**: no check is done /// public InputList AdditionalConfigCmds { @@ -730,12 +724,6 @@ public InputList DnsSuffixes set => _dnsSuffixes = value; } - /// - /// EVPN Junos settings - /// - [Input("evpnConfig")] - public Input? EvpnConfig { get; set; } - [Input("extraRoutes")] private InputMap? _extraRoutes; public InputMap ExtraRoutes @@ -845,8 +833,8 @@ public InputList NtpServers } /// - /// - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - /// set separately (if desired): key parameter = `re1` + /// Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + /// re1 mgmt IP has to be set separately (if desired): key parameter = `re1` /// [Input("oobIpConfig")] public Input? OobIpConfig { get; set; } @@ -894,7 +882,7 @@ public InputMap PortConfig private InputMap? _portMirroring; /// - /// Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes /// interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A /// maximum 4 port mirrorings is allowed /// diff --git a/sdk/dotnet/Org/DeviceprofileGateway.cs b/sdk/dotnet/Org/DeviceprofileGateway.cs index 519ff47d..adc26e76 100644 --- a/sdk/dotnet/Org/DeviceprofileGateway.cs +++ b/sdk/dotnet/Org/DeviceprofileGateway.cs @@ -29,7 +29,7 @@ namespace Pulumi.JuniperMist.Org public partial class DeviceprofileGateway : global::Pulumi.CustomResource { /// - /// additional CLI commands to append to the generated Junos config **Note**: no check is done + /// additional CLI commands to append to the generated Junos config. **Note**: no check is done /// [Output("additionalConfigCmds")] public Output> AdditionalConfigCmds { get; private set; } = null!; @@ -205,7 +205,7 @@ public sealed class DeviceprofileGatewayArgs : global::Pulumi.ResourceArgs private InputList? _additionalConfigCmds; /// - /// additional CLI commands to append to the generated Junos config **Note**: no check is done + /// additional CLI commands to append to the generated Junos config. **Note**: no check is done /// public InputList AdditionalConfigCmds { @@ -426,7 +426,7 @@ public sealed class DeviceprofileGatewayState : global::Pulumi.ResourceArgs private InputList? _additionalConfigCmds; /// - /// additional CLI commands to append to the generated Junos config **Note**: no check is done + /// additional CLI commands to append to the generated Junos config. **Note**: no check is done /// public InputList AdditionalConfigCmds { diff --git a/sdk/dotnet/Org/Gatewaytemplate.cs b/sdk/dotnet/Org/Gatewaytemplate.cs index ccabc908..6552d4bc 100644 --- a/sdk/dotnet/Org/Gatewaytemplate.cs +++ b/sdk/dotnet/Org/Gatewaytemplate.cs @@ -27,7 +27,7 @@ namespace Pulumi.JuniperMist.Org public partial class Gatewaytemplate : global::Pulumi.CustomResource { /// - /// additional CLI commands to append to the generated Junos config **Note**: no check is done + /// additional CLI commands to append to the generated Junos config. **Note**: no check is done /// [Output("additionalConfigCmds")] public Output> AdditionalConfigCmds { get; private set; } = null!; @@ -108,7 +108,8 @@ public partial class Gatewaytemplate : global::Pulumi.CustomResource public Output?> PathPreferences { get; private set; } = null!; /// - /// Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + /// Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + /// "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). /// [Output("portConfig")] public Output?> PortConfig { get; private set; } = null!; @@ -203,7 +204,7 @@ public sealed class GatewaytemplateArgs : global::Pulumi.ResourceArgs private InputList? _additionalConfigCmds; /// - /// additional CLI commands to append to the generated Junos config **Note**: no check is done + /// additional CLI commands to append to the generated Junos config. **Note**: no check is done /// public InputList AdditionalConfigCmds { @@ -348,7 +349,8 @@ public InputMap PathPreferences private InputMap? _portConfig; /// - /// Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + /// Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + /// "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). /// public InputMap PortConfig { @@ -430,7 +432,7 @@ public sealed class GatewaytemplateState : global::Pulumi.ResourceArgs private InputList? _additionalConfigCmds; /// - /// additional CLI commands to append to the generated Junos config **Note**: no check is done + /// additional CLI commands to append to the generated Junos config. **Note**: no check is done /// public InputList AdditionalConfigCmds { @@ -575,7 +577,8 @@ public InputMap PathPreferences private InputMap? _portConfig; /// - /// Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + /// Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + /// "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). /// public InputMap PortConfig { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayBgpConfigArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayBgpConfigArgs.cs index c871f1a5..f440e0df 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayBgpConfigArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayBgpConfigArgs.cs @@ -45,8 +45,7 @@ public sealed class DeviceprofileGatewayBgpConfigArgs : global::Pulumi.ResourceA public Input? ExportPolicy { get; set; } /// - /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - /// for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this /// [Input("extendedV4Nexthop")] public Input? ExtendedV4Nexthop { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayBgpConfigGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayBgpConfigGetArgs.cs index cabb320c..c96df7fd 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayBgpConfigGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayBgpConfigGetArgs.cs @@ -45,8 +45,7 @@ public sealed class DeviceprofileGatewayBgpConfigGetArgs : global::Pulumi.Resour public Input? ExportPolicy { get; set; } /// - /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - /// for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this /// [Input("extendedV4Nexthop")] public Input? ExtendedV4Nexthop { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkArgs.cs index 4c755968..5a1c2af7 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkArgs.cs @@ -68,6 +68,10 @@ public InputList RoutedForNetworks [Input("tenants")] private InputMap? _tenants; + + /// + /// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + /// public InputMap Tenants { get => _tenants ?? (_tenants = new InputMap()); diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkGetArgs.cs index 5ea658ce..15cb2345 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkGetArgs.cs @@ -68,6 +68,10 @@ public InputList RoutedForNetworks [Input("tenants")] private InputMap? _tenants; + + /// + /// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + /// public InputMap Tenants { get => _tenants ?? (_tenants = new InputMap()); diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessArgs.cs index 43f78ce3..680a9d10 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessArgs.cs @@ -19,7 +19,7 @@ public sealed class DeviceprofileGatewayNetworkInternetAccessArgs : global::Pulu private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -40,7 +40,7 @@ public InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs.cs index ae3326e5..6758e26f 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs.cs @@ -12,14 +12,26 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } [Input("name")] public Input? Name { get; set; } + /// + /// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + /// [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } + + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + /// + [Input("wanName")] + public Input? WanName { get; set; } public DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs() { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessDestinationNatGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessDestinationNatGetArgs.cs index bcb56917..d5e8a12a 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessDestinationNatGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessDestinationNatGetArgs.cs @@ -12,14 +12,26 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayNetworkInternetAccessDestinationNatGetArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } [Input("name")] public Input? Name { get; set; } + /// + /// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + /// [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } + + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + /// + [Input("wanName")] + public Input? WanName { get; set; } public DeviceprofileGatewayNetworkInternetAccessDestinationNatGetArgs() { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessGetArgs.cs index 62c510b5..bd35f709 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessGetArgs.cs @@ -19,7 +19,7 @@ public sealed class DeviceprofileGatewayNetworkInternetAccessGetArgs : global::P private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -40,7 +40,7 @@ public InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessStaticNatArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessStaticNatArgs.cs index 45917cae..6c3bbc3a 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessStaticNatArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessStaticNatArgs.cs @@ -12,14 +12,17 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayNetworkInternetAccessStaticNatArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } + /// + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + /// + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; - [Input("name")] - public Input? Name { get; set; } + [Input("name", required: true)] + public Input Name { get; set; } = null!; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") /// [Input("wanName")] public Input? WanName { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessStaticNatGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessStaticNatGetArgs.cs index 691e64e9..078c5d54 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessStaticNatGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkInternetAccessStaticNatGetArgs.cs @@ -12,14 +12,17 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayNetworkInternetAccessStaticNatGetArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } + /// + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + /// + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; - [Input("name")] - public Input? Name { get; set; } + [Input("name", required: true)] + public Input Name { get; set; } = null!; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") /// [Input("wanName")] public Input? WanName { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessArgs.cs index 53e57711..db38a04e 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessArgs.cs @@ -28,7 +28,7 @@ public sealed class DeviceprofileGatewayNetworkVpnAccessArgs : global::Pulumi.Re private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -55,8 +55,7 @@ public InputMap D public Input? NoReadvertiseToLanOspf { get; set; } /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// [Input("noReadvertiseToOverlay")] public Input? NoReadvertiseToOverlay { get; set; } @@ -65,8 +64,7 @@ public InputMap D private InputList? _otherVrfs; /// - /// by default, the routes are only readvertised toward the same vrf on spoke - /// to allow it to be leaked to other vrfs + /// by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs /// public InputList OtherVrfs { @@ -90,7 +88,7 @@ public InputList OtherVrfs private InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { @@ -99,8 +97,7 @@ public InputMap Static } /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// [Input("summarizedSubnet")] public Input? SummarizedSubnet { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs.cs index dfd97462..3f60d0a3 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } @@ -19,7 +22,7 @@ public sealed class DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs : glo public Input? Name { get; set; } [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } public DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs() { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessDestinationNatGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessDestinationNatGetArgs.cs index e861cead..dd7202f7 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessDestinationNatGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessDestinationNatGetArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayNetworkVpnAccessDestinationNatGetArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } @@ -19,7 +22,7 @@ public sealed class DeviceprofileGatewayNetworkVpnAccessDestinationNatGetArgs : public Input? Name { get; set; } [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } public DeviceprofileGatewayNetworkVpnAccessDestinationNatGetArgs() { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessGetArgs.cs index f58db53f..ac416081 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessGetArgs.cs @@ -28,7 +28,7 @@ public sealed class DeviceprofileGatewayNetworkVpnAccessGetArgs : global::Pulumi private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -55,8 +55,7 @@ public InputMap? NoReadvertiseToLanOspf { get; set; } /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// [Input("noReadvertiseToOverlay")] public Input? NoReadvertiseToOverlay { get; set; } @@ -65,8 +64,7 @@ public InputMap? _otherVrfs; /// - /// by default, the routes are only readvertised toward the same vrf on spoke - /// to allow it to be leaked to other vrfs + /// by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs /// public InputList OtherVrfs { @@ -90,7 +88,7 @@ public InputList OtherVrfs private InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { @@ -99,8 +97,7 @@ public InputMap Sta } /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// [Input("summarizedSubnet")] public Input? SummarizedSubnet { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessStaticNatArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessStaticNatArgs.cs index cdd349e1..74f45a3c 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessStaticNatArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessStaticNatArgs.cs @@ -12,17 +12,14 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayNetworkVpnAccessStaticNatArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } - - [Input("name")] - public Input? Name { get; set; } - /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") /// - [Input("wanName")] - public Input? WanName { get; set; } + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; + + [Input("name", required: true)] + public Input Name { get; set; } = null!; public DeviceprofileGatewayNetworkVpnAccessStaticNatArgs() { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessStaticNatGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessStaticNatGetArgs.cs index 9962673c..992123d6 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessStaticNatGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayNetworkVpnAccessStaticNatGetArgs.cs @@ -12,17 +12,14 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayNetworkVpnAccessStaticNatGetArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } - - [Input("name")] - public Input? Name { get; set; } - /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") /// - [Input("wanName")] - public Input? WanName { get; set; } + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; + + [Input("name", required: true)] + public Input Name { get; set; } = null!; public DeviceprofileGatewayNetworkVpnAccessStaticNatGetArgs() { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigArgs.cs index c6769c43..da1340e3 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigArgs.cs @@ -25,9 +25,7 @@ public sealed class DeviceprofileGatewayPortConfigArgs : global::Pulumi.Resource public Input? AeIdx { get; set; } /// - /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - /// Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - /// Note: Turning this on will enable force-up on one of the interfaces in the bundle only + /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only /// [Input("aeLacpForceUp")] public Input? AeLacpForceUp { get; set; } @@ -41,6 +39,9 @@ public sealed class DeviceprofileGatewayPortConfigArgs : global::Pulumi.Resource [Input("critical")] public Input? Critical { get; set; } + /// + /// Interface Description. Can be a variable (i.e. "{{myvar}}") + /// [Input("description")] public Input? Description { get; set; } @@ -60,15 +61,13 @@ public sealed class DeviceprofileGatewayPortConfigArgs : global::Pulumi.Resource public Input? DslType { get; set; } /// - /// if `wan_type`==`dsl` - /// 16 bit int + /// if `wan_type`==`dsl`, 16 bit int /// [Input("dslVci")] public Input? DslVci { get; set; } /// - /// if `wan_type`==`dsl` - /// 8 bit int + /// if `wan_type`==`dsl`, 8 bit int /// [Input("dslVpi")] public Input? DslVpi { get; set; } @@ -135,7 +134,7 @@ public Input? LtePassword private InputList? _networks; /// - /// if `usage`==`lan` + /// if `usage`==`lan`, name of the `junipermist.org.Network` resource /// public InputList Networks { @@ -153,7 +152,7 @@ public InputList Networks public Input? PoeDisabled { get; set; } /// - /// if `usage`==`lan` + /// Only for SRX and if `usage`==`lan`, the Untagged VLAN Network /// [Input("portNetwork")] public Input? PortNetwork { get; set; } @@ -218,11 +217,8 @@ public InputList RethNodes [Input("usage", required: true)] public Input Usage { get; set; } = null!; - /// - /// if WAN interface is on a VLAN - /// [Input("vlanId")] - public Input? VlanId { get; set; } + public Input? VlanId { get; set; } [Input("vpnPaths")] private InputMap? _vpnPaths; @@ -237,13 +233,13 @@ public InputMap VpnPaths } /// - /// when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + /// Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` /// [Input("wanArpPolicer")] public Input? WanArpPolicer { get; set; } /// - /// optional, if spoke should reach this port by a different IP + /// Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP /// [Input("wanExtIp")] public Input? WanExtIp { get; set; } @@ -252,7 +248,7 @@ public InputMap VpnPaths private InputMap? _wanExtraRoutes; /// - /// Property Key is the destianation CIDR (e.g "100.100.100.0/24") + /// Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") /// public InputMap WanExtraRoutes { @@ -260,20 +256,32 @@ public InputMap WanExtr set => _wanExtraRoutes = value; } + [Input("wanNetworks")] + private InputList? _wanNetworks; + + /// + /// Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + /// + public InputList WanNetworks + { + get => _wanNetworks ?? (_wanNetworks = new InputList()); + set => _wanNetworks = value; + } + /// - /// if `usage`==`wan` + /// Only if `usage`==`wan` /// [Input("wanProbeOverride")] public Input? WanProbeOverride { get; set; } /// - /// optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + /// Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip /// [Input("wanSourceNat")] public Input? WanSourceNat { get; set; } /// - /// if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + /// Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` /// [Input("wanType")] public Input? WanType { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigGetArgs.cs index c13c0570..5df62cec 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigGetArgs.cs @@ -25,9 +25,7 @@ public sealed class DeviceprofileGatewayPortConfigGetArgs : global::Pulumi.Resou public Input? AeIdx { get; set; } /// - /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - /// Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - /// Note: Turning this on will enable force-up on one of the interfaces in the bundle only + /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only /// [Input("aeLacpForceUp")] public Input? AeLacpForceUp { get; set; } @@ -41,6 +39,9 @@ public sealed class DeviceprofileGatewayPortConfigGetArgs : global::Pulumi.Resou [Input("critical")] public Input? Critical { get; set; } + /// + /// Interface Description. Can be a variable (i.e. "{{myvar}}") + /// [Input("description")] public Input? Description { get; set; } @@ -60,15 +61,13 @@ public sealed class DeviceprofileGatewayPortConfigGetArgs : global::Pulumi.Resou public Input? DslType { get; set; } /// - /// if `wan_type`==`dsl` - /// 16 bit int + /// if `wan_type`==`dsl`, 16 bit int /// [Input("dslVci")] public Input? DslVci { get; set; } /// - /// if `wan_type`==`dsl` - /// 8 bit int + /// if `wan_type`==`dsl`, 8 bit int /// [Input("dslVpi")] public Input? DslVpi { get; set; } @@ -135,7 +134,7 @@ public Input? LtePassword private InputList? _networks; /// - /// if `usage`==`lan` + /// if `usage`==`lan`, name of the `junipermist.org.Network` resource /// public InputList Networks { @@ -153,7 +152,7 @@ public InputList Networks public Input? PoeDisabled { get; set; } /// - /// if `usage`==`lan` + /// Only for SRX and if `usage`==`lan`, the Untagged VLAN Network /// [Input("portNetwork")] public Input? PortNetwork { get; set; } @@ -218,11 +217,8 @@ public InputList RethNodes [Input("usage", required: true)] public Input Usage { get; set; } = null!; - /// - /// if WAN interface is on a VLAN - /// [Input("vlanId")] - public Input? VlanId { get; set; } + public Input? VlanId { get; set; } [Input("vpnPaths")] private InputMap? _vpnPaths; @@ -237,13 +233,13 @@ public InputMap VpnPaths } /// - /// when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + /// Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` /// [Input("wanArpPolicer")] public Input? WanArpPolicer { get; set; } /// - /// optional, if spoke should reach this port by a different IP + /// Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP /// [Input("wanExtIp")] public Input? WanExtIp { get; set; } @@ -252,7 +248,7 @@ public InputMap VpnPaths private InputMap? _wanExtraRoutes; /// - /// Property Key is the destianation CIDR (e.g "100.100.100.0/24") + /// Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") /// public InputMap WanExtraRoutes { @@ -260,20 +256,32 @@ public InputMap WanE set => _wanExtraRoutes = value; } + [Input("wanNetworks")] + private InputList? _wanNetworks; + + /// + /// Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + /// + public InputList WanNetworks + { + get => _wanNetworks ?? (_wanNetworks = new InputList()); + set => _wanNetworks = value; + } + /// - /// if `usage`==`wan` + /// Only if `usage`==`wan` /// [Input("wanProbeOverride")] public Input? WanProbeOverride { get; set; } /// - /// optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + /// Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip /// [Input("wanSourceNat")] public Input? WanSourceNat { get; set; } /// - /// if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + /// Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` /// [Input("wanType")] public Input? WanType { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigIpConfigArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigIpConfigArgs.cs index ea92b8b3..2b8b7c2f 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigIpConfigArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigIpConfigArgs.cs @@ -37,16 +37,19 @@ public InputList DnsSuffixes } /// - /// except for out-of_band interface (vme/em0/fxp0) + /// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") /// [Input("gateway")] public Input? Gateway { get; set; } + /// + /// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + /// [Input("ip")] public Input? Ip { get; set; } /// - /// used only if `subnet` is not specified in `networks` + /// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") /// [Input("netmask")] public Input? Netmask { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigIpConfigGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigIpConfigGetArgs.cs index 0a50c1cd..ff86ca10 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigIpConfigGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigIpConfigGetArgs.cs @@ -37,16 +37,19 @@ public InputList DnsSuffixes } /// - /// except for out-of_band interface (vme/em0/fxp0) + /// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") /// [Input("gateway")] public Input? Gateway { get; set; } + /// + /// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + /// [Input("ip")] public Input? Ip { get; set; } /// - /// used only if `subnet` is not specified in `networks` + /// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") /// [Input("netmask")] public Input? Netmask { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigTrafficShapingArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigTrafficShapingArgs.cs index 24681dd3..267fb474 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigTrafficShapingArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigTrafficShapingArgs.cs @@ -16,8 +16,7 @@ public sealed class DeviceprofileGatewayPortConfigTrafficShapingArgs : global::P private InputList? _classPercentages; /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public InputList ClassPercentages { @@ -28,6 +27,12 @@ public InputList ClassPercentages [Input("enabled")] public Input? Enabled { get; set; } + /// + /// Interface Transmit Cap in kbps + /// + [Input("maxTxKbps")] + public Input? MaxTxKbps { get; set; } + public DeviceprofileGatewayPortConfigTrafficShapingArgs() { } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigTrafficShapingGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigTrafficShapingGetArgs.cs index 095de1eb..9db6e622 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigTrafficShapingGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigTrafficShapingGetArgs.cs @@ -16,8 +16,7 @@ public sealed class DeviceprofileGatewayPortConfigTrafficShapingGetArgs : global private InputList? _classPercentages; /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public InputList ClassPercentages { @@ -28,6 +27,12 @@ public InputList ClassPercentages [Input("enabled")] public Input? Enabled { get; set; } + /// + /// Interface Transmit Cap in kbps + /// + [Input("maxTxKbps")] + public Input? MaxTxKbps { get; set; } + public DeviceprofileGatewayPortConfigTrafficShapingGetArgs() { } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs.cs index 85116c11..5ece4b29 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs.cs @@ -16,8 +16,7 @@ public sealed class DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs : g private InputList? _classPercentages; /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public InputList ClassPercentages { @@ -28,6 +27,12 @@ public InputList ClassPercentages [Input("enabled")] public Input? Enabled { get; set; } + /// + /// Interface Transmit Cap in kbps + /// + [Input("maxTxKbps")] + public Input? MaxTxKbps { get; set; } + public DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs() { } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShapingGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShapingGetArgs.cs index 6bed89e1..3f40f7aa 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShapingGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShapingGetArgs.cs @@ -16,8 +16,7 @@ public sealed class DeviceprofileGatewayPortConfigVpnPathsTrafficShapingGetArgs private InputList? _classPercentages; /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public InputList ClassPercentages { @@ -28,6 +27,12 @@ public InputList ClassPercentages [Input("enabled")] public Input? Enabled { get; set; } + /// + /// Interface Transmit Cap in kbps + /// + [Input("maxTxKbps")] + public Input? MaxTxKbps { get; set; } + public DeviceprofileGatewayPortConfigVpnPathsTrafficShapingGetArgs() { } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermActionArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermActionArgs.cs index d70258c9..79d37445 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermActionArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermActionArgs.cs @@ -35,6 +35,18 @@ public InputList AddTargetVrfs set => _addTargetVrfs = value; } + [Input("aggregates")] + private InputList? _aggregates; + + /// + /// route aggregation + /// + public InputList Aggregates + { + get => _aggregates ?? (_aggregates = new InputList()); + set => _aggregates = value; + } + [Input("communities")] private InputList? _communities; diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermActionGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermActionGetArgs.cs index 1c498b69..a4ed9d3c 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermActionGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermActionGetArgs.cs @@ -35,6 +35,18 @@ public InputList AddTargetVrfs set => _addTargetVrfs = value; } + [Input("aggregates")] + private InputList? _aggregates; + + /// + /// route aggregation + /// + public InputList Aggregates + { + get => _aggregates ?? (_aggregates = new InputList()); + set => _aggregates = value; + } + [Input("communities")] private InputList? _communities; diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingArgs.cs index ca366dbf..f894fe8a 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingArgs.cs @@ -86,8 +86,7 @@ public InputList VpnNeighborMacs private InputList? _vpnPaths; /// - /// overlay-facing criteria (used for bgp_config where via=vpn) - /// ordered- + /// overlay-facing criteria (used for bgp_config where via=vpn). ordered- /// public InputList VpnPaths { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingGetArgs.cs index 7f874222..8fd8424d 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingGetArgs.cs @@ -86,8 +86,7 @@ public InputList VpnNeighborMacs private InputList? _vpnPaths; /// - /// overlay-facing criteria (used for bgp_config where via=vpn) - /// ordered- + /// overlay-facing criteria (used for bgp_config where via=vpn). ordered- /// public InputList VpnPaths { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsArgs.cs index ab6d365a..4be60497 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsArgs.cs @@ -16,8 +16,7 @@ public sealed class DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsAr public Input? Route { get; set; } /// - /// name of the vrf instance - /// it can also be the name of the VPN or wan if they + /// name of the vrf instance, it can also be the name of the VPN or wan if they /// [Input("vrfName")] public Input? VrfName { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsGetArgs.cs index 246688be..9979b2fa 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsGetArgs.cs @@ -16,8 +16,7 @@ public sealed class DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsGe public Input? Route { get; set; } /// - /// name of the vrf instance - /// it can also be the name of the VPN or wan if they + /// name of the vrf instance, it can also be the name of the VPN or wan if they /// [Input("vrfName")] public Input? VrfName { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayServicePolicyArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayServicePolicyArgs.cs index 110929d1..9e0ee0d7 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayServicePolicyArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayServicePolicyArgs.cs @@ -48,8 +48,7 @@ public InputList Ewfs public Input? Name { get; set; } /// - /// by default, we derive all paths available and use them - /// optionally, you can customize by using `path_preference` + /// by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` /// [Input("pathPreference")] public Input? PathPreference { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayServicePolicyGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayServicePolicyGetArgs.cs index 28f1fa6d..79a6bece 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayServicePolicyGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayServicePolicyGetArgs.cs @@ -48,8 +48,7 @@ public InputList Ewfs public Input? Name { get; set; } /// - /// by default, we derive all paths available and use them - /// optionally, you can customize by using `path_preference` + /// by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` /// [Input("pathPreference")] public Input? PathPreference { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsArgs.cs index 843fe9fe..f77db434 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsArgs.cs @@ -16,13 +16,13 @@ public sealed class DeviceprofileGatewayTunnelConfigsArgs : global::Pulumi.Resou public Input? AutoProvision { get; set; } /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// [Input("ikeLifetime")] public Input? IkeLifetime { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + /// Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` /// [Input("ikeMode")] public Input? IkeMode { get; set; } @@ -31,7 +31,7 @@ public sealed class DeviceprofileGatewayTunnelConfigsArgs : global::Pulumi.Resou private InputList? _ikeProposals; /// - /// if `provider`== `custom-ipsec` + /// if `provider`==`custom-ipsec` /// public InputList IkeProposals { @@ -40,7 +40,7 @@ public InputList IkePro } /// - /// if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// [Input("ipsecLifetime")] public Input? IpsecLifetime { get; set; } @@ -49,7 +49,7 @@ public InputList IkePro private InputList? _ipsecProposals; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// public InputList IpsecProposals { @@ -58,16 +58,13 @@ public InputList Ipse } /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// [Input("localId")] public Input? LocalId { get; set; } /// - /// enum: `active-active`, `active-standby` + /// Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` /// [Input("mode")] public Input? Mode { get; set; } @@ -76,7 +73,7 @@ public InputList Ipse private InputList? _networks; /// - /// networks reachable via this tunnel + /// if `provider`==`custom-ipsec`, networks reachable via this tunnel /// public InputList Networks { @@ -84,23 +81,26 @@ public InputList Networks set => _networks = value; } + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// [Input("primary")] public Input? Primary { get; set; } /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// [Input("probe")] public Input? Probe { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + /// Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` /// [Input("protocol")] public Input? Protocol { get; set; } /// - /// enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + /// Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` /// [Input("provider")] public Input? Provider { get; set; } @@ -109,10 +109,7 @@ public InputList Networks private Input? _psk; /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public Input? Psk { @@ -124,11 +121,14 @@ public Input? Psk } } + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// [Input("secondary")] public Input? Secondary { get; set; } /// - /// Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + /// Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` /// [Input("version")] public Input? Version { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionArgs.cs index 39b34335..e9e99fdb 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionArgs.cs @@ -15,12 +15,27 @@ public sealed class DeviceprofileGatewayTunnelConfigsAutoProvisionArgs : global: [Input("enable")] public Input? Enable { get; set; } + /// + /// API override for POP selection + /// [Input("latlng")] public Input? Latlng { get; set; } [Input("primary")] public Input? Primary { get; set; } + /// + /// enum: `jse-ipsec`, `zscaler-ipsec` + /// + [Input("provider", required: true)] + public Input Provider { get; set; } = null!; + + /// + /// API override for POP selection + /// + [Input("region")] + public Input? Region { get; set; } + [Input("secondary")] public Input? Secondary { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionGetArgs.cs index 9834c17e..70500f6d 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionGetArgs.cs @@ -15,12 +15,27 @@ public sealed class DeviceprofileGatewayTunnelConfigsAutoProvisionGetArgs : glob [Input("enable")] public Input? Enable { get; set; } + /// + /// API override for POP selection + /// [Input("latlng")] public Input? Latlng { get; set; } [Input("primary")] public Input? Primary { get; set; } + /// + /// enum: `jse-ipsec`, `zscaler-ipsec` + /// + [Input("provider", required: true)] + public Input Provider { get; set; } = null!; + + /// + /// API override for POP selection + /// + [Input("region")] + public Input? Region { get; set; } + [Input("secondary")] public Input? Secondary { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs.cs index 9627b9e4..bb671cd2 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs.cs @@ -12,8 +12,13 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs : global::Pulumi.ResourceArgs { - [Input("numHosts")] - public Input? NumHosts { get; set; } + [Input("probeIps")] + private InputList? _probeIps; + public InputList ProbeIps + { + get => _probeIps ?? (_probeIps = new InputList()); + set => _probeIps = value; + } [Input("wanNames")] private InputList? _wanNames; diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryGetArgs.cs index 8973e885..a1f6934a 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryGetArgs.cs @@ -12,8 +12,13 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryGetArgs : global::Pulumi.ResourceArgs { - [Input("numHosts")] - public Input? NumHosts { get; set; } + [Input("probeIps")] + private InputList? _probeIps; + public InputList ProbeIps + { + get => _probeIps ?? (_probeIps = new InputList()); + set => _probeIps = value; + } [Input("wanNames")] private InputList? _wanNames; diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs.cs index 95297b06..cdaf2cd3 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs.cs @@ -12,8 +12,13 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs : global::Pulumi.ResourceArgs { - [Input("numHosts")] - public Input? NumHosts { get; set; } + [Input("probeIps")] + private InputList? _probeIps; + public InputList ProbeIps + { + get => _probeIps ?? (_probeIps = new InputList()); + set => _probeIps = value; + } [Input("wanNames")] private InputList? _wanNames; diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryGetArgs.cs index f80542f2..02107852 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryGetArgs.cs @@ -12,8 +12,13 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryGetArgs : global::Pulumi.ResourceArgs { - [Input("numHosts")] - public Input? NumHosts { get; set; } + [Input("probeIps")] + private InputList? _probeIps; + public InputList ProbeIps + { + get => _probeIps ?? (_probeIps = new InputList()); + set => _probeIps = value; + } [Input("wanNames")] private InputList? _wanNames; diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsGetArgs.cs index 0752345f..ab0a10ec 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsGetArgs.cs @@ -16,13 +16,13 @@ public sealed class DeviceprofileGatewayTunnelConfigsGetArgs : global::Pulumi.Re public Input? AutoProvision { get; set; } /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// [Input("ikeLifetime")] public Input? IkeLifetime { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + /// Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` /// [Input("ikeMode")] public Input? IkeMode { get; set; } @@ -31,7 +31,7 @@ public sealed class DeviceprofileGatewayTunnelConfigsGetArgs : global::Pulumi.Re private InputList? _ikeProposals; /// - /// if `provider`== `custom-ipsec` + /// if `provider`==`custom-ipsec` /// public InputList IkeProposals { @@ -40,7 +40,7 @@ public InputList Ike } /// - /// if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// [Input("ipsecLifetime")] public Input? IpsecLifetime { get; set; } @@ -49,7 +49,7 @@ public InputList Ike private InputList? _ipsecProposals; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// public InputList IpsecProposals { @@ -58,16 +58,13 @@ public InputList I } /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// [Input("localId")] public Input? LocalId { get; set; } /// - /// enum: `active-active`, `active-standby` + /// Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` /// [Input("mode")] public Input? Mode { get; set; } @@ -76,7 +73,7 @@ public InputList I private InputList? _networks; /// - /// networks reachable via this tunnel + /// if `provider`==`custom-ipsec`, networks reachable via this tunnel /// public InputList Networks { @@ -84,23 +81,26 @@ public InputList Networks set => _networks = value; } + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// [Input("primary")] public Input? Primary { get; set; } /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// [Input("probe")] public Input? Probe { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + /// Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` /// [Input("protocol")] public Input? Protocol { get; set; } /// - /// enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + /// Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` /// [Input("provider")] public Input? Provider { get; set; } @@ -109,10 +109,7 @@ public InputList Networks private Input? _psk; /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public Input? Psk { @@ -124,11 +121,14 @@ public Input? Psk } } + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// [Input("secondary")] public Input? Secondary { get; set; } /// - /// Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + /// Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` /// [Input("version")] public Input? Version { get; set; } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsIpsecProposalArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsIpsecProposalArgs.cs index 77b15416..ca56a0ff 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsIpsecProposalArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsIpsecProposalArgs.cs @@ -19,7 +19,7 @@ public sealed class DeviceprofileGatewayTunnelConfigsIpsecProposalArgs : global: public Input? AuthAlgo { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: + /// Only if `provider`==`custom-ipsec`. enum: /// * 1 /// * 2 (1024-bit) /// * 5 diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsIpsecProposalGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsIpsecProposalGetArgs.cs index fa039c19..3a6bf5f9 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsIpsecProposalGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsIpsecProposalGetArgs.cs @@ -19,7 +19,7 @@ public sealed class DeviceprofileGatewayTunnelConfigsIpsecProposalGetArgs : glob public Input? AuthAlgo { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: + /// Only if `provider`==`custom-ipsec`. enum: /// * 1 /// * 2 (1024-bit) /// * 5 diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsPrimaryArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsPrimaryArgs.cs index 519078f3..ae1e3552 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsPrimaryArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsPrimaryArgs.cs @@ -12,7 +12,7 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayTunnelConfigsPrimaryArgs : global::Pulumi.ResourceArgs { - [Input("hosts")] + [Input("hosts", required: true)] private InputList? _hosts; public InputList Hosts { @@ -24,9 +24,7 @@ public InputList Hosts private InputList? _internalIps; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public InputList InternalIps { @@ -46,7 +44,7 @@ public InputList ProbeIps private InputList? _remoteIds; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public InputList RemoteIds { @@ -54,7 +52,7 @@ public InputList RemoteIds set => _remoteIds = value; } - [Input("wanNames")] + [Input("wanNames", required: true)] private InputList? _wanNames; public InputList WanNames { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsPrimaryGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsPrimaryGetArgs.cs index ef49fbe3..807204e8 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsPrimaryGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsPrimaryGetArgs.cs @@ -12,7 +12,7 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayTunnelConfigsPrimaryGetArgs : global::Pulumi.ResourceArgs { - [Input("hosts")] + [Input("hosts", required: true)] private InputList? _hosts; public InputList Hosts { @@ -24,9 +24,7 @@ public InputList Hosts private InputList? _internalIps; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public InputList InternalIps { @@ -46,7 +44,7 @@ public InputList ProbeIps private InputList? _remoteIds; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public InputList RemoteIds { @@ -54,7 +52,7 @@ public InputList RemoteIds set => _remoteIds = value; } - [Input("wanNames")] + [Input("wanNames", required: true)] private InputList? _wanNames; public InputList WanNames { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsSecondaryArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsSecondaryArgs.cs index 118e26a1..7f6e39cd 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsSecondaryArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsSecondaryArgs.cs @@ -12,7 +12,7 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayTunnelConfigsSecondaryArgs : global::Pulumi.ResourceArgs { - [Input("hosts")] + [Input("hosts", required: true)] private InputList? _hosts; public InputList Hosts { @@ -24,9 +24,7 @@ public InputList Hosts private InputList? _internalIps; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public InputList InternalIps { @@ -46,7 +44,7 @@ public InputList ProbeIps private InputList? _remoteIds; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public InputList RemoteIds { @@ -54,7 +52,7 @@ public InputList RemoteIds set => _remoteIds = value; } - [Input("wanNames")] + [Input("wanNames", required: true)] private InputList? _wanNames; public InputList WanNames { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsSecondaryGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsSecondaryGetArgs.cs index 3399357f..f3c12447 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsSecondaryGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelConfigsSecondaryGetArgs.cs @@ -12,7 +12,7 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayTunnelConfigsSecondaryGetArgs : global::Pulumi.ResourceArgs { - [Input("hosts")] + [Input("hosts", required: true)] private InputList? _hosts; public InputList Hosts { @@ -24,9 +24,7 @@ public InputList Hosts private InputList? _internalIps; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public InputList InternalIps { @@ -46,7 +44,7 @@ public InputList ProbeIps private InputList? _remoteIds; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public InputList RemoteIds { @@ -54,7 +52,7 @@ public InputList RemoteIds set => _remoteIds = value; } - [Input("wanNames")] + [Input("wanNames", required: true)] private InputList? _wanNames; public InputList WanNames { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsJseArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsJseArgs.cs index 912cf987..d6bbf905 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsJseArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsJseArgs.cs @@ -12,12 +12,15 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayTunnelProviderOptionsJseArgs : global::Pulumi.ResourceArgs { - [Input("name")] - public Input? Name { get; set; } - [Input("numUsers")] public Input? NumUsers { get; set; } + /// + /// JSE Organization name + /// + [Input("orgName")] + public Input? OrgName { get; set; } + public DeviceprofileGatewayTunnelProviderOptionsJseArgs() { } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsJseGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsJseGetArgs.cs index b054313f..fbac3fb2 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsJseGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsJseGetArgs.cs @@ -12,12 +12,15 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayTunnelProviderOptionsJseGetArgs : global::Pulumi.ResourceArgs { - [Input("name")] - public Input? Name { get; set; } - [Input("numUsers")] public Input? NumUsers { get; set; } + /// + /// JSE Organization name + /// + [Input("orgName")] + public Input? OrgName { get; set; } + public DeviceprofileGatewayTunnelProviderOptionsJseGetArgs() { } diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerArgs.cs index d9a2f191..7f47f6de 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerArgs.cs @@ -12,50 +12,62 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayTunnelProviderOptionsZscalerArgs : global::Pulumi.ResourceArgs { - [Input("aupAcceptanceRequired")] - public Input? AupAcceptanceRequired { get; set; } + [Input("aupBlockInternetUntilAccepted")] + public Input? AupBlockInternetUntilAccepted { get; set; } /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - [Input("aupExpire")] - public Input? AupExpire { get; set; } + [Input("aupEnabled")] + public Input? AupEnabled { get; set; } /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - [Input("aupSslProxy")] - public Input? AupSslProxy { get; set; } + [Input("aupForceSslInspection")] + public Input? AupForceSslInspection { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - [Input("downloadMbps")] - public Input? DownloadMbps { get; set; } + [Input("aupTimeoutInDays")] + public Input? AupTimeoutInDays { get; set; } /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to enforce user authentication /// - [Input("enableAup")] - public Input? EnableAup { get; set; } + [Input("authRequired")] + public Input? AuthRequired { get; set; } /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - [Input("enableCaution")] - public Input? EnableCaution { get; set; } + [Input("cautionEnabled")] + public Input? CautionEnabled { get; set; } - [Input("enforceAuthentication")] - public Input? EnforceAuthentication { get; set; } + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + [Input("dnBandwidth")] + public Input? DnBandwidth { get; set; } + + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + [Input("idleTimeInMinutes")] + public Input? IdleTimeInMinutes { get; set; } - [Input("name")] - public Input? Name { get; set; } + /// + /// if `true`, enable the firewall control option + /// + [Input("ofwEnabled")] + public Input? OfwEnabled { get; set; } [Input("subLocations")] private InputList? _subLocations; /// - /// if `use_xff`==`true` + /// `sub-locations` can be used for specific uses cases to define different configuration based on the user network /// public InputList SubLocations { @@ -64,16 +76,34 @@ public InputList - /// the download bandwidth cap of the link, in Mbps + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + [Input("surrogateIp")] + public Input? SurrogateIp { get; set; } + + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + [Input("surrogateIpEnforcedForKnownBrowsers")] + public Input? SurrogateIpEnforcedForKnownBrowsers { get; set; } + + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + [Input("surrogateRefreshTimeInMinutes")] + public Input? SurrogateRefreshTimeInMinutes { get; set; } + + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - [Input("uploadMbps")] - public Input? UploadMbps { get; set; } + [Input("upBandwidth")] + public Input? UpBandwidth { get; set; } /// /// location uses proxy chaining to forward traffic /// - [Input("useXff")] - public Input? UseXff { get; set; } + [Input("xffForwardEnabled")] + public Input? XffForwardEnabled { get; set; } public DeviceprofileGatewayTunnelProviderOptionsZscalerArgs() { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerGetArgs.cs index 6f486d66..4ac1e20a 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerGetArgs.cs @@ -12,50 +12,62 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayTunnelProviderOptionsZscalerGetArgs : global::Pulumi.ResourceArgs { - [Input("aupAcceptanceRequired")] - public Input? AupAcceptanceRequired { get; set; } + [Input("aupBlockInternetUntilAccepted")] + public Input? AupBlockInternetUntilAccepted { get; set; } /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - [Input("aupExpire")] - public Input? AupExpire { get; set; } + [Input("aupEnabled")] + public Input? AupEnabled { get; set; } /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - [Input("aupSslProxy")] - public Input? AupSslProxy { get; set; } + [Input("aupForceSslInspection")] + public Input? AupForceSslInspection { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - [Input("downloadMbps")] - public Input? DownloadMbps { get; set; } + [Input("aupTimeoutInDays")] + public Input? AupTimeoutInDays { get; set; } /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to enforce user authentication /// - [Input("enableAup")] - public Input? EnableAup { get; set; } + [Input("authRequired")] + public Input? AuthRequired { get; set; } /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - [Input("enableCaution")] - public Input? EnableCaution { get; set; } + [Input("cautionEnabled")] + public Input? CautionEnabled { get; set; } - [Input("enforceAuthentication")] - public Input? EnforceAuthentication { get; set; } + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + [Input("dnBandwidth")] + public Input? DnBandwidth { get; set; } + + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + [Input("idleTimeInMinutes")] + public Input? IdleTimeInMinutes { get; set; } - [Input("name")] - public Input? Name { get; set; } + /// + /// if `true`, enable the firewall control option + /// + [Input("ofwEnabled")] + public Input? OfwEnabled { get; set; } [Input("subLocations")] private InputList? _subLocations; /// - /// if `use_xff`==`true` + /// `sub-locations` can be used for specific uses cases to define different configuration based on the user network /// public InputList SubLocations { @@ -64,16 +76,34 @@ public InputList - /// the download bandwidth cap of the link, in Mbps + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + [Input("surrogateIp")] + public Input? SurrogateIp { get; set; } + + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + [Input("surrogateIpEnforcedForKnownBrowsers")] + public Input? SurrogateIpEnforcedForKnownBrowsers { get; set; } + + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + [Input("surrogateRefreshTimeInMinutes")] + public Input? SurrogateRefreshTimeInMinutes { get; set; } + + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - [Input("uploadMbps")] - public Input? UploadMbps { get; set; } + [Input("upBandwidth")] + public Input? UpBandwidth { get; set; } /// /// location uses proxy chaining to forward traffic /// - [Input("useXff")] - public Input? UseXff { get; set; } + [Input("xffForwardEnabled")] + public Input? XffForwardEnabled { get; set; } public DeviceprofileGatewayTunnelProviderOptionsZscalerGetArgs() { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs.cs index e900b07f..03dd353d 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs.cs @@ -12,55 +12,86 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs : global::Pulumi.ResourceArgs { - [Input("aupAcceptanceRequired")] - public Input? AupAcceptanceRequired { get; set; } + [Input("aupBlockInternetUntilAccepted")] + public Input? AupBlockInternetUntilAccepted { get; set; } /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - [Input("aupExpire")] - public Input? AupExpire { get; set; } + [Input("aupEnabled")] + public Input? AupEnabled { get; set; } /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - [Input("aupSslProxy")] - public Input? AupSslProxy { get; set; } + [Input("aupForceSslInspection")] + public Input? AupForceSslInspection { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - [Input("downloadMbps")] - public Input? DownloadMbps { get; set; } + [Input("aupTimeoutInDays")] + public Input? AupTimeoutInDays { get; set; } /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to authenticate users /// - [Input("enableAup")] - public Input? EnableAup { get; set; } + [Input("authRequired")] + public Input? AuthRequired { get; set; } /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - [Input("enableCaution")] - public Input? EnableCaution { get; set; } + [Input("cautionEnabled")] + public Input? CautionEnabled { get; set; } - [Input("enforceAuthentication")] - public Input? EnforceAuthentication { get; set; } + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + [Input("dnBandwidth")] + public Input? DnBandwidth { get; set; } - [Input("subnets")] - private InputList? _subnets; - public InputList Subnets - { - get => _subnets ?? (_subnets = new InputList()); - set => _subnets = value; - } + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + [Input("idleTimeInMinutes")] + public Input? IdleTimeInMinutes { get; set; } + + /// + /// Network name + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// if `true`, enable the firewall control option + /// + [Input("ofwEnabled")] + public Input? OfwEnabled { get; set; } + + /// + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + [Input("surrogateIp")] + public Input? SurrogateIp { get; set; } + + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + [Input("surrogateIpEnforcedForKnownBrowsers")] + public Input? SurrogateIpEnforcedForKnownBrowsers { get; set; } + + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + [Input("surrogateRefreshTimeInMinutes")] + public Input? SurrogateRefreshTimeInMinutes { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - [Input("uploadMbps")] - public Input? UploadMbps { get; set; } + [Input("upBandwidth")] + public Input? UpBandwidth { get; set; } public DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs() { diff --git a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationGetArgs.cs b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationGetArgs.cs index 2ed07721..7653bb6b 100644 --- a/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationGetArgs.cs @@ -12,55 +12,86 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationGetArgs : global::Pulumi.ResourceArgs { - [Input("aupAcceptanceRequired")] - public Input? AupAcceptanceRequired { get; set; } + [Input("aupBlockInternetUntilAccepted")] + public Input? AupBlockInternetUntilAccepted { get; set; } /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - [Input("aupExpire")] - public Input? AupExpire { get; set; } + [Input("aupEnabled")] + public Input? AupEnabled { get; set; } /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - [Input("aupSslProxy")] - public Input? AupSslProxy { get; set; } + [Input("aupForceSslInspection")] + public Input? AupForceSslInspection { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - [Input("downloadMbps")] - public Input? DownloadMbps { get; set; } + [Input("aupTimeoutInDays")] + public Input? AupTimeoutInDays { get; set; } /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to authenticate users /// - [Input("enableAup")] - public Input? EnableAup { get; set; } + [Input("authRequired")] + public Input? AuthRequired { get; set; } /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - [Input("enableCaution")] - public Input? EnableCaution { get; set; } + [Input("cautionEnabled")] + public Input? CautionEnabled { get; set; } - [Input("enforceAuthentication")] - public Input? EnforceAuthentication { get; set; } + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + [Input("dnBandwidth")] + public Input? DnBandwidth { get; set; } - [Input("subnets")] - private InputList? _subnets; - public InputList Subnets - { - get => _subnets ?? (_subnets = new InputList()); - set => _subnets = value; - } + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + [Input("idleTimeInMinutes")] + public Input? IdleTimeInMinutes { get; set; } + + /// + /// Network name + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// if `true`, enable the firewall control option + /// + [Input("ofwEnabled")] + public Input? OfwEnabled { get; set; } + + /// + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + [Input("surrogateIp")] + public Input? SurrogateIp { get; set; } + + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + [Input("surrogateIpEnforcedForKnownBrowsers")] + public Input? SurrogateIpEnforcedForKnownBrowsers { get; set; } + + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + [Input("surrogateRefreshTimeInMinutes")] + public Input? SurrogateRefreshTimeInMinutes { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - [Input("uploadMbps")] - public Input? UploadMbps { get; set; } + [Input("upBandwidth")] + public Input? UpBandwidth { get; set; } public DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationGetArgs() { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateBgpConfigArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateBgpConfigArgs.cs index 0fa7cce3..72cdd2bc 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateBgpConfigArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateBgpConfigArgs.cs @@ -45,8 +45,7 @@ public sealed class GatewaytemplateBgpConfigArgs : global::Pulumi.ResourceArgs public Input? ExportPolicy { get; set; } /// - /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - /// for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this /// [Input("extendedV4Nexthop")] public Input? ExtendedV4Nexthop { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateBgpConfigGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateBgpConfigGetArgs.cs index 43ccb8f4..824b258d 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateBgpConfigGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateBgpConfigGetArgs.cs @@ -45,8 +45,7 @@ public sealed class GatewaytemplateBgpConfigGetArgs : global::Pulumi.ResourceArg public Input? ExportPolicy { get; set; } /// - /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - /// for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this /// [Input("extendedV4Nexthop")] public Input? ExtendedV4Nexthop { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkArgs.cs index 8e960543..b7671d1e 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkArgs.cs @@ -68,6 +68,10 @@ public InputList RoutedForNetworks [Input("tenants")] private InputMap? _tenants; + + /// + /// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + /// public InputMap Tenants { get => _tenants ?? (_tenants = new InputMap()); diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkGetArgs.cs index e02dd56e..32fd2455 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkGetArgs.cs @@ -68,6 +68,10 @@ public InputList RoutedForNetworks [Input("tenants")] private InputMap? _tenants; + + /// + /// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + /// public InputMap Tenants { get => _tenants ?? (_tenants = new InputMap()); diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessArgs.cs index 279ff180..0a2856d0 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessArgs.cs @@ -19,7 +19,7 @@ public sealed class GatewaytemplateNetworkInternetAccessArgs : global::Pulumi.Re private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -40,7 +40,7 @@ public InputMap D private InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessDestinationNatArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessDestinationNatArgs.cs index ae902e47..3b833a54 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessDestinationNatArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessDestinationNatArgs.cs @@ -12,14 +12,26 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateNetworkInternetAccessDestinationNatArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } [Input("name")] public Input? Name { get; set; } + /// + /// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + /// [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } + + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + /// + [Input("wanName")] + public Input? WanName { get; set; } public GatewaytemplateNetworkInternetAccessDestinationNatArgs() { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessDestinationNatGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessDestinationNatGetArgs.cs index 0f43a164..59fb74dd 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessDestinationNatGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessDestinationNatGetArgs.cs @@ -12,14 +12,26 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateNetworkInternetAccessDestinationNatGetArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } [Input("name")] public Input? Name { get; set; } + /// + /// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + /// [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } + + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + /// + [Input("wanName")] + public Input? WanName { get; set; } public GatewaytemplateNetworkInternetAccessDestinationNatGetArgs() { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessGetArgs.cs index ee4cc990..aef74501 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessGetArgs.cs @@ -19,7 +19,7 @@ public sealed class GatewaytemplateNetworkInternetAccessGetArgs : global::Pulumi private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -40,7 +40,7 @@ public InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessStaticNatArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessStaticNatArgs.cs index 4163c60e..27463d0b 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessStaticNatArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessStaticNatArgs.cs @@ -12,14 +12,17 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateNetworkInternetAccessStaticNatArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } + /// + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + /// + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; - [Input("name")] - public Input? Name { get; set; } + [Input("name", required: true)] + public Input Name { get; set; } = null!; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") /// [Input("wanName")] public Input? WanName { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessStaticNatGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessStaticNatGetArgs.cs index 71af87fc..50376d15 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessStaticNatGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkInternetAccessStaticNatGetArgs.cs @@ -12,14 +12,17 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateNetworkInternetAccessStaticNatGetArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } + /// + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + /// + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; - [Input("name")] - public Input? Name { get; set; } + [Input("name", required: true)] + public Input Name { get; set; } = null!; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") /// [Input("wanName")] public Input? WanName { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessArgs.cs index 7dbe3475..da3d1742 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessArgs.cs @@ -28,7 +28,7 @@ public sealed class GatewaytemplateNetworkVpnAccessArgs : global::Pulumi.Resourc private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -55,8 +55,7 @@ public InputMap Destin public Input? NoReadvertiseToLanOspf { get; set; } /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// [Input("noReadvertiseToOverlay")] public Input? NoReadvertiseToOverlay { get; set; } @@ -65,8 +64,7 @@ public InputMap Destin private InputList? _otherVrfs; /// - /// by default, the routes are only readvertised toward the same vrf on spoke - /// to allow it to be leaked to other vrfs + /// by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs /// public InputList OtherVrfs { @@ -90,7 +88,7 @@ public InputList OtherVrfs private InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { @@ -99,8 +97,7 @@ public InputMap StaticNat } /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// [Input("summarizedSubnet")] public Input? SummarizedSubnet { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessDestinationNatArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessDestinationNatArgs.cs index 81b700c6..c5721360 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessDestinationNatArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessDestinationNatArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateNetworkVpnAccessDestinationNatArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } @@ -19,7 +22,7 @@ public sealed class GatewaytemplateNetworkVpnAccessDestinationNatArgs : global:: public Input? Name { get; set; } [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } public GatewaytemplateNetworkVpnAccessDestinationNatArgs() { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessDestinationNatGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessDestinationNatGetArgs.cs index e67d09ac..d6d33d5c 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessDestinationNatGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessDestinationNatGetArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateNetworkVpnAccessDestinationNatGetArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } @@ -19,7 +22,7 @@ public sealed class GatewaytemplateNetworkVpnAccessDestinationNatGetArgs : globa public Input? Name { get; set; } [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } public GatewaytemplateNetworkVpnAccessDestinationNatGetArgs() { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessGetArgs.cs index 131595d5..f5770627 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessGetArgs.cs @@ -28,7 +28,7 @@ public sealed class GatewaytemplateNetworkVpnAccessGetArgs : global::Pulumi.Reso private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -55,8 +55,7 @@ public InputMap Des public Input? NoReadvertiseToLanOspf { get; set; } /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// [Input("noReadvertiseToOverlay")] public Input? NoReadvertiseToOverlay { get; set; } @@ -65,8 +64,7 @@ public InputMap Des private InputList? _otherVrfs; /// - /// by default, the routes are only readvertised toward the same vrf on spoke - /// to allow it to be leaked to other vrfs + /// by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs /// public InputList OtherVrfs { @@ -90,7 +88,7 @@ public InputList OtherVrfs private InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { @@ -99,8 +97,7 @@ public InputMap StaticNa } /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// [Input("summarizedSubnet")] public Input? SummarizedSubnet { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessStaticNatArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessStaticNatArgs.cs index 2f05e37c..7059baef 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessStaticNatArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessStaticNatArgs.cs @@ -12,17 +12,14 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateNetworkVpnAccessStaticNatArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } - - [Input("name")] - public Input? Name { get; set; } - /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") /// - [Input("wanName")] - public Input? WanName { get; set; } + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; + + [Input("name", required: true)] + public Input Name { get; set; } = null!; public GatewaytemplateNetworkVpnAccessStaticNatArgs() { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessStaticNatGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessStaticNatGetArgs.cs index 8981bd65..af5d01d0 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessStaticNatGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateNetworkVpnAccessStaticNatGetArgs.cs @@ -12,17 +12,14 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateNetworkVpnAccessStaticNatGetArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } - - [Input("name")] - public Input? Name { get; set; } - /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") /// - [Input("wanName")] - public Input? WanName { get; set; } + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; + + [Input("name", required: true)] + public Input Name { get; set; } = null!; public GatewaytemplateNetworkVpnAccessStaticNatGetArgs() { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigArgs.cs index 1bd87ce1..434b56c8 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigArgs.cs @@ -25,9 +25,7 @@ public sealed class GatewaytemplatePortConfigArgs : global::Pulumi.ResourceArgs public Input? AeIdx { get; set; } /// - /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - /// Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - /// Note: Turning this on will enable force-up on one of the interfaces in the bundle only + /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only /// [Input("aeLacpForceUp")] public Input? AeLacpForceUp { get; set; } @@ -41,6 +39,9 @@ public sealed class GatewaytemplatePortConfigArgs : global::Pulumi.ResourceArgs [Input("critical")] public Input? Critical { get; set; } + /// + /// Interface Description. Can be a variable (i.e. "{{myvar}}") + /// [Input("description")] public Input? Description { get; set; } @@ -60,15 +61,13 @@ public sealed class GatewaytemplatePortConfigArgs : global::Pulumi.ResourceArgs public Input? DslType { get; set; } /// - /// if `wan_type`==`dsl` - /// 16 bit int + /// if `wan_type`==`dsl`, 16 bit int /// [Input("dslVci")] public Input? DslVci { get; set; } /// - /// if `wan_type`==`dsl` - /// 8 bit int + /// if `wan_type`==`dsl`, 8 bit int /// [Input("dslVpi")] public Input? DslVpi { get; set; } @@ -135,7 +134,7 @@ public Input? LtePassword private InputList? _networks; /// - /// if `usage`==`lan` + /// if `usage`==`lan`, name of the `junipermist.org.Network` resource /// public InputList Networks { @@ -153,7 +152,7 @@ public InputList Networks public Input? PoeDisabled { get; set; } /// - /// if `usage`==`lan` + /// Only for SRX and if `usage`==`lan`, the Untagged VLAN Network /// [Input("portNetwork")] public Input? PortNetwork { get; set; } @@ -218,11 +217,8 @@ public InputList RethNodes [Input("usage", required: true)] public Input Usage { get; set; } = null!; - /// - /// if WAN interface is on a VLAN - /// [Input("vlanId")] - public Input? VlanId { get; set; } + public Input? VlanId { get; set; } [Input("vpnPaths")] private InputMap? _vpnPaths; @@ -237,13 +233,13 @@ public InputMap VpnPaths } /// - /// when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + /// Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` /// [Input("wanArpPolicer")] public Input? WanArpPolicer { get; set; } /// - /// optional, if spoke should reach this port by a different IP + /// Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP /// [Input("wanExtIp")] public Input? WanExtIp { get; set; } @@ -252,7 +248,7 @@ public InputMap VpnPaths private InputMap? _wanExtraRoutes; /// - /// Property Key is the destianation CIDR (e.g "100.100.100.0/24") + /// Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") /// public InputMap WanExtraRoutes { @@ -260,20 +256,32 @@ public InputMap WanExtraRout set => _wanExtraRoutes = value; } + [Input("wanNetworks")] + private InputList? _wanNetworks; + + /// + /// Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + /// + public InputList WanNetworks + { + get => _wanNetworks ?? (_wanNetworks = new InputList()); + set => _wanNetworks = value; + } + /// - /// if `usage`==`wan` + /// Only if `usage`==`wan` /// [Input("wanProbeOverride")] public Input? WanProbeOverride { get; set; } /// - /// optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + /// Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip /// [Input("wanSourceNat")] public Input? WanSourceNat { get; set; } /// - /// if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + /// Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` /// [Input("wanType")] public Input? WanType { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigGetArgs.cs index 9fb814cc..e4622692 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigGetArgs.cs @@ -25,9 +25,7 @@ public sealed class GatewaytemplatePortConfigGetArgs : global::Pulumi.ResourceAr public Input? AeIdx { get; set; } /// - /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - /// Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - /// Note: Turning this on will enable force-up on one of the interfaces in the bundle only + /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only /// [Input("aeLacpForceUp")] public Input? AeLacpForceUp { get; set; } @@ -41,6 +39,9 @@ public sealed class GatewaytemplatePortConfigGetArgs : global::Pulumi.ResourceAr [Input("critical")] public Input? Critical { get; set; } + /// + /// Interface Description. Can be a variable (i.e. "{{myvar}}") + /// [Input("description")] public Input? Description { get; set; } @@ -60,15 +61,13 @@ public sealed class GatewaytemplatePortConfigGetArgs : global::Pulumi.ResourceAr public Input? DslType { get; set; } /// - /// if `wan_type`==`dsl` - /// 16 bit int + /// if `wan_type`==`dsl`, 16 bit int /// [Input("dslVci")] public Input? DslVci { get; set; } /// - /// if `wan_type`==`dsl` - /// 8 bit int + /// if `wan_type`==`dsl`, 8 bit int /// [Input("dslVpi")] public Input? DslVpi { get; set; } @@ -135,7 +134,7 @@ public Input? LtePassword private InputList? _networks; /// - /// if `usage`==`lan` + /// if `usage`==`lan`, name of the `junipermist.org.Network` resource /// public InputList Networks { @@ -153,7 +152,7 @@ public InputList Networks public Input? PoeDisabled { get; set; } /// - /// if `usage`==`lan` + /// Only for SRX and if `usage`==`lan`, the Untagged VLAN Network /// [Input("portNetwork")] public Input? PortNetwork { get; set; } @@ -218,11 +217,8 @@ public InputList RethNodes [Input("usage", required: true)] public Input Usage { get; set; } = null!; - /// - /// if WAN interface is on a VLAN - /// [Input("vlanId")] - public Input? VlanId { get; set; } + public Input? VlanId { get; set; } [Input("vpnPaths")] private InputMap? _vpnPaths; @@ -237,13 +233,13 @@ public InputMap VpnPaths } /// - /// when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + /// Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` /// [Input("wanArpPolicer")] public Input? WanArpPolicer { get; set; } /// - /// optional, if spoke should reach this port by a different IP + /// Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP /// [Input("wanExtIp")] public Input? WanExtIp { get; set; } @@ -252,7 +248,7 @@ public InputMap VpnPaths private InputMap? _wanExtraRoutes; /// - /// Property Key is the destianation CIDR (e.g "100.100.100.0/24") + /// Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") /// public InputMap WanExtraRoutes { @@ -260,20 +256,32 @@ public InputMap WanExtraR set => _wanExtraRoutes = value; } + [Input("wanNetworks")] + private InputList? _wanNetworks; + + /// + /// Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + /// + public InputList WanNetworks + { + get => _wanNetworks ?? (_wanNetworks = new InputList()); + set => _wanNetworks = value; + } + /// - /// if `usage`==`wan` + /// Only if `usage`==`wan` /// [Input("wanProbeOverride")] public Input? WanProbeOverride { get; set; } /// - /// optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + /// Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip /// [Input("wanSourceNat")] public Input? WanSourceNat { get; set; } /// - /// if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + /// Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` /// [Input("wanType")] public Input? WanType { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigIpConfigArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigIpConfigArgs.cs index 18f42b64..dc3b8372 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigIpConfigArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigIpConfigArgs.cs @@ -37,16 +37,19 @@ public InputList DnsSuffixes } /// - /// except for out-of_band interface (vme/em0/fxp0) + /// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") /// [Input("gateway")] public Input? Gateway { get; set; } + /// + /// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + /// [Input("ip")] public Input? Ip { get; set; } /// - /// used only if `subnet` is not specified in `networks` + /// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") /// [Input("netmask")] public Input? Netmask { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigIpConfigGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigIpConfigGetArgs.cs index bda4be05..f1b4af43 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigIpConfigGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigIpConfigGetArgs.cs @@ -37,16 +37,19 @@ public InputList DnsSuffixes } /// - /// except for out-of_band interface (vme/em0/fxp0) + /// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") /// [Input("gateway")] public Input? Gateway { get; set; } + /// + /// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + /// [Input("ip")] public Input? Ip { get; set; } /// - /// used only if `subnet` is not specified in `networks` + /// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") /// [Input("netmask")] public Input? Netmask { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigTrafficShapingArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigTrafficShapingArgs.cs index bd527e29..57325279 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigTrafficShapingArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigTrafficShapingArgs.cs @@ -16,8 +16,7 @@ public sealed class GatewaytemplatePortConfigTrafficShapingArgs : global::Pulumi private InputList? _classPercentages; /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public InputList ClassPercentages { @@ -28,6 +27,12 @@ public InputList ClassPercentages [Input("enabled")] public Input? Enabled { get; set; } + /// + /// Interface Transmit Cap in kbps + /// + [Input("maxTxKbps")] + public Input? MaxTxKbps { get; set; } + public GatewaytemplatePortConfigTrafficShapingArgs() { } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigTrafficShapingGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigTrafficShapingGetArgs.cs index 88a0a94e..bdc1b57e 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigTrafficShapingGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigTrafficShapingGetArgs.cs @@ -16,8 +16,7 @@ public sealed class GatewaytemplatePortConfigTrafficShapingGetArgs : global::Pul private InputList? _classPercentages; /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public InputList ClassPercentages { @@ -28,6 +27,12 @@ public InputList ClassPercentages [Input("enabled")] public Input? Enabled { get; set; } + /// + /// Interface Transmit Cap in kbps + /// + [Input("maxTxKbps")] + public Input? MaxTxKbps { get; set; } + public GatewaytemplatePortConfigTrafficShapingGetArgs() { } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigVpnPathsTrafficShapingArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigVpnPathsTrafficShapingArgs.cs index 930a3213..144483b5 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigVpnPathsTrafficShapingArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigVpnPathsTrafficShapingArgs.cs @@ -16,8 +16,7 @@ public sealed class GatewaytemplatePortConfigVpnPathsTrafficShapingArgs : global private InputList? _classPercentages; /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public InputList ClassPercentages { @@ -28,6 +27,12 @@ public InputList ClassPercentages [Input("enabled")] public Input? Enabled { get; set; } + /// + /// Interface Transmit Cap in kbps + /// + [Input("maxTxKbps")] + public Input? MaxTxKbps { get; set; } + public GatewaytemplatePortConfigVpnPathsTrafficShapingArgs() { } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigVpnPathsTrafficShapingGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigVpnPathsTrafficShapingGetArgs.cs index 6b1da553..e88e5da6 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigVpnPathsTrafficShapingGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplatePortConfigVpnPathsTrafficShapingGetArgs.cs @@ -16,8 +16,7 @@ public sealed class GatewaytemplatePortConfigVpnPathsTrafficShapingGetArgs : glo private InputList? _classPercentages; /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public InputList ClassPercentages { @@ -28,6 +27,12 @@ public InputList ClassPercentages [Input("enabled")] public Input? Enabled { get; set; } + /// + /// Interface Transmit Cap in kbps + /// + [Input("maxTxKbps")] + public Input? MaxTxKbps { get; set; } + public GatewaytemplatePortConfigVpnPathsTrafficShapingGetArgs() { } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermActionArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermActionArgs.cs index 0668a1d1..f3456125 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermActionArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermActionArgs.cs @@ -35,6 +35,18 @@ public InputList AddTargetVrfs set => _addTargetVrfs = value; } + [Input("aggregates")] + private InputList? _aggregates; + + /// + /// route aggregation + /// + public InputList Aggregates + { + get => _aggregates ?? (_aggregates = new InputList()); + set => _aggregates = value; + } + [Input("communities")] private InputList? _communities; diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermActionGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermActionGetArgs.cs index 679cb0e2..7241e8bf 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermActionGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermActionGetArgs.cs @@ -35,6 +35,18 @@ public InputList AddTargetVrfs set => _addTargetVrfs = value; } + [Input("aggregates")] + private InputList? _aggregates; + + /// + /// route aggregation + /// + public InputList Aggregates + { + get => _aggregates ?? (_aggregates = new InputList()); + set => _aggregates = value; + } + [Input("communities")] private InputList? _communities; diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingArgs.cs index 2c22a882..a10974aa 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingArgs.cs @@ -86,8 +86,7 @@ public InputList VpnNeighborMacs private InputList? _vpnPaths; /// - /// overlay-facing criteria (used for bgp_config where via=vpn) - /// ordered- + /// overlay-facing criteria (used for bgp_config where via=vpn). ordered- /// public InputList VpnPaths { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingGetArgs.cs index 62d394ed..3a91e2ec 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingGetArgs.cs @@ -86,8 +86,7 @@ public InputList VpnNeighborMacs private InputList? _vpnPaths; /// - /// overlay-facing criteria (used for bgp_config where via=vpn) - /// ordered- + /// overlay-facing criteria (used for bgp_config where via=vpn). ordered- /// public InputList VpnPaths { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExistsArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExistsArgs.cs index 5757c8f8..45996f96 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExistsArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExistsArgs.cs @@ -16,8 +16,7 @@ public sealed class GatewaytemplateRoutingPoliciesTermMatchingRouteExistsArgs : public Input? Route { get; set; } /// - /// name of the vrf instance - /// it can also be the name of the VPN or wan if they + /// name of the vrf instance, it can also be the name of the VPN or wan if they /// [Input("vrfName")] public Input? VrfName { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExistsGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExistsGetArgs.cs index 4cd51160..6ce810ac 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExistsGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExistsGetArgs.cs @@ -16,8 +16,7 @@ public sealed class GatewaytemplateRoutingPoliciesTermMatchingRouteExistsGetArgs public Input? Route { get; set; } /// - /// name of the vrf instance - /// it can also be the name of the VPN or wan if they + /// name of the vrf instance, it can also be the name of the VPN or wan if they /// [Input("vrfName")] public Input? VrfName { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateServicePolicyArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateServicePolicyArgs.cs index f79e1200..b3a3b70e 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateServicePolicyArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateServicePolicyArgs.cs @@ -48,8 +48,7 @@ public InputList Ewfs public Input? Name { get; set; } /// - /// by default, we derive all paths available and use them - /// optionally, you can customize by using `path_preference` + /// by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` /// [Input("pathPreference")] public Input? PathPreference { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateServicePolicyGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateServicePolicyGetArgs.cs index 3ac8f09c..3b20e4fb 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateServicePolicyGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateServicePolicyGetArgs.cs @@ -48,8 +48,7 @@ public InputList Ewfs public Input? Name { get; set; } /// - /// by default, we derive all paths available and use them - /// optionally, you can customize by using `path_preference` + /// by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` /// [Input("pathPreference")] public Input? PathPreference { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsArgs.cs index 61612f84..d433e556 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsArgs.cs @@ -16,13 +16,13 @@ public sealed class GatewaytemplateTunnelConfigsArgs : global::Pulumi.ResourceAr public Input? AutoProvision { get; set; } /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// [Input("ikeLifetime")] public Input? IkeLifetime { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + /// Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` /// [Input("ikeMode")] public Input? IkeMode { get; set; } @@ -31,7 +31,7 @@ public sealed class GatewaytemplateTunnelConfigsArgs : global::Pulumi.ResourceAr private InputList? _ikeProposals; /// - /// if `provider`== `custom-ipsec` + /// if `provider`==`custom-ipsec` /// public InputList IkeProposals { @@ -40,7 +40,7 @@ public InputList IkeProposal } /// - /// if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// [Input("ipsecLifetime")] public Input? IpsecLifetime { get; set; } @@ -49,7 +49,7 @@ public InputList IkeProposal private InputList? _ipsecProposals; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// public InputList IpsecProposals { @@ -58,16 +58,13 @@ public InputList IpsecProp } /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// [Input("localId")] public Input? LocalId { get; set; } /// - /// enum: `active-active`, `active-standby` + /// Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` /// [Input("mode")] public Input? Mode { get; set; } @@ -76,7 +73,7 @@ public InputList IpsecProp private InputList? _networks; /// - /// networks reachable via this tunnel + /// if `provider`==`custom-ipsec`, networks reachable via this tunnel /// public InputList Networks { @@ -84,23 +81,26 @@ public InputList Networks set => _networks = value; } + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// [Input("primary")] public Input? Primary { get; set; } /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// [Input("probe")] public Input? Probe { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + /// Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` /// [Input("protocol")] public Input? Protocol { get; set; } /// - /// enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + /// Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` /// [Input("provider")] public Input? Provider { get; set; } @@ -109,10 +109,7 @@ public InputList Networks private Input? _psk; /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public Input? Psk { @@ -124,11 +121,14 @@ public Input? Psk } } + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// [Input("secondary")] public Input? Secondary { get; set; } /// - /// Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + /// Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` /// [Input("version")] public Input? Version { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionArgs.cs index ec1dabb2..de3009aa 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionArgs.cs @@ -15,12 +15,27 @@ public sealed class GatewaytemplateTunnelConfigsAutoProvisionArgs : global::Pulu [Input("enable")] public Input? Enable { get; set; } + /// + /// API override for POP selection + /// [Input("latlng")] public Input? Latlng { get; set; } [Input("primary")] public Input? Primary { get; set; } + /// + /// enum: `jse-ipsec`, `zscaler-ipsec` + /// + [Input("provider", required: true)] + public Input Provider { get; set; } = null!; + + /// + /// API override for POP selection + /// + [Input("region")] + public Input? Region { get; set; } + [Input("secondary")] public Input? Secondary { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionGetArgs.cs index 50f41086..efedae71 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionGetArgs.cs @@ -15,12 +15,27 @@ public sealed class GatewaytemplateTunnelConfigsAutoProvisionGetArgs : global::P [Input("enable")] public Input? Enable { get; set; } + /// + /// API override for POP selection + /// [Input("latlng")] public Input? Latlng { get; set; } [Input("primary")] public Input? Primary { get; set; } + /// + /// enum: `jse-ipsec`, `zscaler-ipsec` + /// + [Input("provider", required: true)] + public Input Provider { get; set; } = null!; + + /// + /// API override for POP selection + /// + [Input("region")] + public Input? Region { get; set; } + [Input("secondary")] public Input? Secondary { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs.cs index d072d6a9..4ec99b8b 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs.cs @@ -12,8 +12,13 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs : global::Pulumi.ResourceArgs { - [Input("numHosts")] - public Input? NumHosts { get; set; } + [Input("probeIps")] + private InputList? _probeIps; + public InputList ProbeIps + { + get => _probeIps ?? (_probeIps = new InputList()); + set => _probeIps = value; + } [Input("wanNames")] private InputList? _wanNames; diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionPrimaryGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionPrimaryGetArgs.cs index d85bc1cd..5ed56193 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionPrimaryGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionPrimaryGetArgs.cs @@ -12,8 +12,13 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateTunnelConfigsAutoProvisionPrimaryGetArgs : global::Pulumi.ResourceArgs { - [Input("numHosts")] - public Input? NumHosts { get; set; } + [Input("probeIps")] + private InputList? _probeIps; + public InputList ProbeIps + { + get => _probeIps ?? (_probeIps = new InputList()); + set => _probeIps = value; + } [Input("wanNames")] private InputList? _wanNames; diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs.cs index 270a96a2..86c11425 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs.cs @@ -12,8 +12,13 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs : global::Pulumi.ResourceArgs { - [Input("numHosts")] - public Input? NumHosts { get; set; } + [Input("probeIps")] + private InputList? _probeIps; + public InputList ProbeIps + { + get => _probeIps ?? (_probeIps = new InputList()); + set => _probeIps = value; + } [Input("wanNames")] private InputList? _wanNames; diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionSecondaryGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionSecondaryGetArgs.cs index 8ae3b9f3..ab37de42 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionSecondaryGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsAutoProvisionSecondaryGetArgs.cs @@ -12,8 +12,13 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateTunnelConfigsAutoProvisionSecondaryGetArgs : global::Pulumi.ResourceArgs { - [Input("numHosts")] - public Input? NumHosts { get; set; } + [Input("probeIps")] + private InputList? _probeIps; + public InputList ProbeIps + { + get => _probeIps ?? (_probeIps = new InputList()); + set => _probeIps = value; + } [Input("wanNames")] private InputList? _wanNames; diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsGetArgs.cs index bec8fd5e..e5a1bd47 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsGetArgs.cs @@ -16,13 +16,13 @@ public sealed class GatewaytemplateTunnelConfigsGetArgs : global::Pulumi.Resourc public Input? AutoProvision { get; set; } /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// [Input("ikeLifetime")] public Input? IkeLifetime { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + /// Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` /// [Input("ikeMode")] public Input? IkeMode { get; set; } @@ -31,7 +31,7 @@ public sealed class GatewaytemplateTunnelConfigsGetArgs : global::Pulumi.Resourc private InputList? _ikeProposals; /// - /// if `provider`== `custom-ipsec` + /// if `provider`==`custom-ipsec` /// public InputList IkeProposals { @@ -40,7 +40,7 @@ public InputList IkePropo } /// - /// if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// [Input("ipsecLifetime")] public Input? IpsecLifetime { get; set; } @@ -49,7 +49,7 @@ public InputList IkePropo private InputList? _ipsecProposals; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// public InputList IpsecProposals { @@ -58,16 +58,13 @@ public InputList IpsecP } /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// [Input("localId")] public Input? LocalId { get; set; } /// - /// enum: `active-active`, `active-standby` + /// Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` /// [Input("mode")] public Input? Mode { get; set; } @@ -76,7 +73,7 @@ public InputList IpsecP private InputList? _networks; /// - /// networks reachable via this tunnel + /// if `provider`==`custom-ipsec`, networks reachable via this tunnel /// public InputList Networks { @@ -84,23 +81,26 @@ public InputList Networks set => _networks = value; } + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// [Input("primary")] public Input? Primary { get; set; } /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// [Input("probe")] public Input? Probe { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + /// Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` /// [Input("protocol")] public Input? Protocol { get; set; } /// - /// enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + /// Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` /// [Input("provider")] public Input? Provider { get; set; } @@ -109,10 +109,7 @@ public InputList Networks private Input? _psk; /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public Input? Psk { @@ -124,11 +121,14 @@ public Input? Psk } } + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// [Input("secondary")] public Input? Secondary { get; set; } /// - /// Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + /// Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` /// [Input("version")] public Input? Version { get; set; } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsIpsecProposalArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsIpsecProposalArgs.cs index e5a46f83..ffe8a16a 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsIpsecProposalArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsIpsecProposalArgs.cs @@ -19,7 +19,7 @@ public sealed class GatewaytemplateTunnelConfigsIpsecProposalArgs : global::Pulu public Input? AuthAlgo { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: + /// Only if `provider`==`custom-ipsec`. enum: /// * 1 /// * 2 (1024-bit) /// * 5 diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsIpsecProposalGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsIpsecProposalGetArgs.cs index 9c2adc6d..17ddc3e4 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsIpsecProposalGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsIpsecProposalGetArgs.cs @@ -19,7 +19,7 @@ public sealed class GatewaytemplateTunnelConfigsIpsecProposalGetArgs : global::P public Input? AuthAlgo { get; set; } /// - /// Only if `provider`== `custom-ipsec`. enum: + /// Only if `provider`==`custom-ipsec`. enum: /// * 1 /// * 2 (1024-bit) /// * 5 diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsPrimaryArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsPrimaryArgs.cs index 7582d0ab..d6cba7a7 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsPrimaryArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsPrimaryArgs.cs @@ -12,7 +12,7 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateTunnelConfigsPrimaryArgs : global::Pulumi.ResourceArgs { - [Input("hosts")] + [Input("hosts", required: true)] private InputList? _hosts; public InputList Hosts { @@ -24,9 +24,7 @@ public InputList Hosts private InputList? _internalIps; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public InputList InternalIps { @@ -46,7 +44,7 @@ public InputList ProbeIps private InputList? _remoteIds; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public InputList RemoteIds { @@ -54,7 +52,7 @@ public InputList RemoteIds set => _remoteIds = value; } - [Input("wanNames")] + [Input("wanNames", required: true)] private InputList? _wanNames; public InputList WanNames { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsPrimaryGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsPrimaryGetArgs.cs index 9f207549..ca11bdcd 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsPrimaryGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsPrimaryGetArgs.cs @@ -12,7 +12,7 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateTunnelConfigsPrimaryGetArgs : global::Pulumi.ResourceArgs { - [Input("hosts")] + [Input("hosts", required: true)] private InputList? _hosts; public InputList Hosts { @@ -24,9 +24,7 @@ public InputList Hosts private InputList? _internalIps; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public InputList InternalIps { @@ -46,7 +44,7 @@ public InputList ProbeIps private InputList? _remoteIds; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public InputList RemoteIds { @@ -54,7 +52,7 @@ public InputList RemoteIds set => _remoteIds = value; } - [Input("wanNames")] + [Input("wanNames", required: true)] private InputList? _wanNames; public InputList WanNames { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsSecondaryArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsSecondaryArgs.cs index 10e757e5..a1438def 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsSecondaryArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsSecondaryArgs.cs @@ -12,7 +12,7 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateTunnelConfigsSecondaryArgs : global::Pulumi.ResourceArgs { - [Input("hosts")] + [Input("hosts", required: true)] private InputList? _hosts; public InputList Hosts { @@ -24,9 +24,7 @@ public InputList Hosts private InputList? _internalIps; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public InputList InternalIps { @@ -46,7 +44,7 @@ public InputList ProbeIps private InputList? _remoteIds; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public InputList RemoteIds { @@ -54,7 +52,7 @@ public InputList RemoteIds set => _remoteIds = value; } - [Input("wanNames")] + [Input("wanNames", required: true)] private InputList? _wanNames; public InputList WanNames { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsSecondaryGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsSecondaryGetArgs.cs index bc56b925..1ea89e67 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsSecondaryGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelConfigsSecondaryGetArgs.cs @@ -12,7 +12,7 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateTunnelConfigsSecondaryGetArgs : global::Pulumi.ResourceArgs { - [Input("hosts")] + [Input("hosts", required: true)] private InputList? _hosts; public InputList Hosts { @@ -24,9 +24,7 @@ public InputList Hosts private InputList? _internalIps; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public InputList InternalIps { @@ -46,7 +44,7 @@ public InputList ProbeIps private InputList? _remoteIds; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public InputList RemoteIds { @@ -54,7 +52,7 @@ public InputList RemoteIds set => _remoteIds = value; } - [Input("wanNames")] + [Input("wanNames", required: true)] private InputList? _wanNames; public InputList WanNames { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsJseArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsJseArgs.cs index 7e5b33ff..f9e48461 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsJseArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsJseArgs.cs @@ -12,12 +12,15 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateTunnelProviderOptionsJseArgs : global::Pulumi.ResourceArgs { - [Input("name")] - public Input? Name { get; set; } - [Input("numUsers")] public Input? NumUsers { get; set; } + /// + /// JSE Organization name + /// + [Input("orgName")] + public Input? OrgName { get; set; } + public GatewaytemplateTunnelProviderOptionsJseArgs() { } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsJseGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsJseGetArgs.cs index 66320b09..8381b13f 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsJseGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsJseGetArgs.cs @@ -12,12 +12,15 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateTunnelProviderOptionsJseGetArgs : global::Pulumi.ResourceArgs { - [Input("name")] - public Input? Name { get; set; } - [Input("numUsers")] public Input? NumUsers { get; set; } + /// + /// JSE Organization name + /// + [Input("orgName")] + public Input? OrgName { get; set; } + public GatewaytemplateTunnelProviderOptionsJseGetArgs() { } diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerArgs.cs index 88109230..d2d06830 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerArgs.cs @@ -12,50 +12,62 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateTunnelProviderOptionsZscalerArgs : global::Pulumi.ResourceArgs { - [Input("aupAcceptanceRequired")] - public Input? AupAcceptanceRequired { get; set; } + [Input("aupBlockInternetUntilAccepted")] + public Input? AupBlockInternetUntilAccepted { get; set; } /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - [Input("aupExpire")] - public Input? AupExpire { get; set; } + [Input("aupEnabled")] + public Input? AupEnabled { get; set; } /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - [Input("aupSslProxy")] - public Input? AupSslProxy { get; set; } + [Input("aupForceSslInspection")] + public Input? AupForceSslInspection { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - [Input("downloadMbps")] - public Input? DownloadMbps { get; set; } + [Input("aupTimeoutInDays")] + public Input? AupTimeoutInDays { get; set; } /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to enforce user authentication /// - [Input("enableAup")] - public Input? EnableAup { get; set; } + [Input("authRequired")] + public Input? AuthRequired { get; set; } /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - [Input("enableCaution")] - public Input? EnableCaution { get; set; } + [Input("cautionEnabled")] + public Input? CautionEnabled { get; set; } - [Input("enforceAuthentication")] - public Input? EnforceAuthentication { get; set; } + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + [Input("dnBandwidth")] + public Input? DnBandwidth { get; set; } + + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + [Input("idleTimeInMinutes")] + public Input? IdleTimeInMinutes { get; set; } - [Input("name")] - public Input? Name { get; set; } + /// + /// if `true`, enable the firewall control option + /// + [Input("ofwEnabled")] + public Input? OfwEnabled { get; set; } [Input("subLocations")] private InputList? _subLocations; /// - /// if `use_xff`==`true` + /// `sub-locations` can be used for specific uses cases to define different configuration based on the user network /// public InputList SubLocations { @@ -64,16 +76,34 @@ public InputList - /// the download bandwidth cap of the link, in Mbps + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + [Input("surrogateIp")] + public Input? SurrogateIp { get; set; } + + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + [Input("surrogateIpEnforcedForKnownBrowsers")] + public Input? SurrogateIpEnforcedForKnownBrowsers { get; set; } + + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + [Input("surrogateRefreshTimeInMinutes")] + public Input? SurrogateRefreshTimeInMinutes { get; set; } + + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - [Input("uploadMbps")] - public Input? UploadMbps { get; set; } + [Input("upBandwidth")] + public Input? UpBandwidth { get; set; } /// /// location uses proxy chaining to forward traffic /// - [Input("useXff")] - public Input? UseXff { get; set; } + [Input("xffForwardEnabled")] + public Input? XffForwardEnabled { get; set; } public GatewaytemplateTunnelProviderOptionsZscalerArgs() { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerGetArgs.cs index 08b75085..49ddb975 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerGetArgs.cs @@ -12,50 +12,62 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateTunnelProviderOptionsZscalerGetArgs : global::Pulumi.ResourceArgs { - [Input("aupAcceptanceRequired")] - public Input? AupAcceptanceRequired { get; set; } + [Input("aupBlockInternetUntilAccepted")] + public Input? AupBlockInternetUntilAccepted { get; set; } /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - [Input("aupExpire")] - public Input? AupExpire { get; set; } + [Input("aupEnabled")] + public Input? AupEnabled { get; set; } /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - [Input("aupSslProxy")] - public Input? AupSslProxy { get; set; } + [Input("aupForceSslInspection")] + public Input? AupForceSslInspection { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - [Input("downloadMbps")] - public Input? DownloadMbps { get; set; } + [Input("aupTimeoutInDays")] + public Input? AupTimeoutInDays { get; set; } /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to enforce user authentication /// - [Input("enableAup")] - public Input? EnableAup { get; set; } + [Input("authRequired")] + public Input? AuthRequired { get; set; } /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - [Input("enableCaution")] - public Input? EnableCaution { get; set; } + [Input("cautionEnabled")] + public Input? CautionEnabled { get; set; } - [Input("enforceAuthentication")] - public Input? EnforceAuthentication { get; set; } + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + [Input("dnBandwidth")] + public Input? DnBandwidth { get; set; } + + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + [Input("idleTimeInMinutes")] + public Input? IdleTimeInMinutes { get; set; } - [Input("name")] - public Input? Name { get; set; } + /// + /// if `true`, enable the firewall control option + /// + [Input("ofwEnabled")] + public Input? OfwEnabled { get; set; } [Input("subLocations")] private InputList? _subLocations; /// - /// if `use_xff`==`true` + /// `sub-locations` can be used for specific uses cases to define different configuration based on the user network /// public InputList SubLocations { @@ -64,16 +76,34 @@ public InputList - /// the download bandwidth cap of the link, in Mbps + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + [Input("surrogateIp")] + public Input? SurrogateIp { get; set; } + + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + [Input("surrogateIpEnforcedForKnownBrowsers")] + public Input? SurrogateIpEnforcedForKnownBrowsers { get; set; } + + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + [Input("surrogateRefreshTimeInMinutes")] + public Input? SurrogateRefreshTimeInMinutes { get; set; } + + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - [Input("uploadMbps")] - public Input? UploadMbps { get; set; } + [Input("upBandwidth")] + public Input? UpBandwidth { get; set; } /// /// location uses proxy chaining to forward traffic /// - [Input("useXff")] - public Input? UseXff { get; set; } + [Input("xffForwardEnabled")] + public Input? XffForwardEnabled { get; set; } public GatewaytemplateTunnelProviderOptionsZscalerGetArgs() { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs.cs index f3fffcdc..4d984178 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs.cs @@ -12,55 +12,86 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs : global::Pulumi.ResourceArgs { - [Input("aupAcceptanceRequired")] - public Input? AupAcceptanceRequired { get; set; } + [Input("aupBlockInternetUntilAccepted")] + public Input? AupBlockInternetUntilAccepted { get; set; } /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - [Input("aupExpire")] - public Input? AupExpire { get; set; } + [Input("aupEnabled")] + public Input? AupEnabled { get; set; } /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - [Input("aupSslProxy")] - public Input? AupSslProxy { get; set; } + [Input("aupForceSslInspection")] + public Input? AupForceSslInspection { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - [Input("downloadMbps")] - public Input? DownloadMbps { get; set; } + [Input("aupTimeoutInDays")] + public Input? AupTimeoutInDays { get; set; } /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to authenticate users /// - [Input("enableAup")] - public Input? EnableAup { get; set; } + [Input("authRequired")] + public Input? AuthRequired { get; set; } /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - [Input("enableCaution")] - public Input? EnableCaution { get; set; } + [Input("cautionEnabled")] + public Input? CautionEnabled { get; set; } - [Input("enforceAuthentication")] - public Input? EnforceAuthentication { get; set; } + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + [Input("dnBandwidth")] + public Input? DnBandwidth { get; set; } - [Input("subnets")] - private InputList? _subnets; - public InputList Subnets - { - get => _subnets ?? (_subnets = new InputList()); - set => _subnets = value; - } + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + [Input("idleTimeInMinutes")] + public Input? IdleTimeInMinutes { get; set; } + + /// + /// Network name + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// if `true`, enable the firewall control option + /// + [Input("ofwEnabled")] + public Input? OfwEnabled { get; set; } + + /// + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + [Input("surrogateIp")] + public Input? SurrogateIp { get; set; } + + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + [Input("surrogateIpEnforcedForKnownBrowsers")] + public Input? SurrogateIpEnforcedForKnownBrowsers { get; set; } + + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + [Input("surrogateRefreshTimeInMinutes")] + public Input? SurrogateRefreshTimeInMinutes { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - [Input("uploadMbps")] - public Input? UploadMbps { get; set; } + [Input("upBandwidth")] + public Input? UpBandwidth { get; set; } public GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs() { diff --git a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocationGetArgs.cs b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocationGetArgs.cs index a9264ecb..0c7b6c46 100644 --- a/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocationGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocationGetArgs.cs @@ -12,55 +12,86 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class GatewaytemplateTunnelProviderOptionsZscalerSubLocationGetArgs : global::Pulumi.ResourceArgs { - [Input("aupAcceptanceRequired")] - public Input? AupAcceptanceRequired { get; set; } + [Input("aupBlockInternetUntilAccepted")] + public Input? AupBlockInternetUntilAccepted { get; set; } /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - [Input("aupExpire")] - public Input? AupExpire { get; set; } + [Input("aupEnabled")] + public Input? AupEnabled { get; set; } /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - [Input("aupSslProxy")] - public Input? AupSslProxy { get; set; } + [Input("aupForceSslInspection")] + public Input? AupForceSslInspection { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - [Input("downloadMbps")] - public Input? DownloadMbps { get; set; } + [Input("aupTimeoutInDays")] + public Input? AupTimeoutInDays { get; set; } /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to authenticate users /// - [Input("enableAup")] - public Input? EnableAup { get; set; } + [Input("authRequired")] + public Input? AuthRequired { get; set; } /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - [Input("enableCaution")] - public Input? EnableCaution { get; set; } + [Input("cautionEnabled")] + public Input? CautionEnabled { get; set; } - [Input("enforceAuthentication")] - public Input? EnforceAuthentication { get; set; } + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + [Input("dnBandwidth")] + public Input? DnBandwidth { get; set; } - [Input("subnets")] - private InputList? _subnets; - public InputList Subnets - { - get => _subnets ?? (_subnets = new InputList()); - set => _subnets = value; - } + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + [Input("idleTimeInMinutes")] + public Input? IdleTimeInMinutes { get; set; } + + /// + /// Network name + /// + [Input("name")] + public Input? Name { get; set; } + + /// + /// if `true`, enable the firewall control option + /// + [Input("ofwEnabled")] + public Input? OfwEnabled { get; set; } + + /// + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + [Input("surrogateIp")] + public Input? SurrogateIp { get; set; } + + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + [Input("surrogateIpEnforcedForKnownBrowsers")] + public Input? SurrogateIpEnforcedForKnownBrowsers { get; set; } + + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + [Input("surrogateRefreshTimeInMinutes")] + public Input? SurrogateRefreshTimeInMinutes { get; set; } /// - /// the download bandwidth cap of the link, in Mbps + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - [Input("uploadMbps")] - public Input? UploadMbps { get; set; } + [Input("upBandwidth")] + public Input? UpBandwidth { get; set; } public GatewaytemplateTunnelProviderOptionsZscalerSubLocationGetArgs() { diff --git a/sdk/dotnet/Org/Inputs/NetworkInternetAccessArgs.cs b/sdk/dotnet/Org/Inputs/NetworkInternetAccessArgs.cs index daa4ec46..8fa3a164 100644 --- a/sdk/dotnet/Org/Inputs/NetworkInternetAccessArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworkInternetAccessArgs.cs @@ -19,7 +19,7 @@ public sealed class NetworkInternetAccessArgs : global::Pulumi.ResourceArgs private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -40,7 +40,7 @@ public InputMap DestinationNat private InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { diff --git a/sdk/dotnet/Org/Inputs/NetworkInternetAccessDestinationNatArgs.cs b/sdk/dotnet/Org/Inputs/NetworkInternetAccessDestinationNatArgs.cs index 330081ac..3690d15c 100644 --- a/sdk/dotnet/Org/Inputs/NetworkInternetAccessDestinationNatArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworkInternetAccessDestinationNatArgs.cs @@ -12,14 +12,26 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class NetworkInternetAccessDestinationNatArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } [Input("name")] public Input? Name { get; set; } + /// + /// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + /// [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } + + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + /// + [Input("wanName")] + public Input? WanName { get; set; } public NetworkInternetAccessDestinationNatArgs() { diff --git a/sdk/dotnet/Org/Inputs/NetworkInternetAccessDestinationNatGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworkInternetAccessDestinationNatGetArgs.cs index 0afc2c70..4aae73bd 100644 --- a/sdk/dotnet/Org/Inputs/NetworkInternetAccessDestinationNatGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworkInternetAccessDestinationNatGetArgs.cs @@ -12,14 +12,26 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class NetworkInternetAccessDestinationNatGetArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } [Input("name")] public Input? Name { get; set; } + /// + /// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + /// [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } + + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + /// + [Input("wanName")] + public Input? WanName { get; set; } public NetworkInternetAccessDestinationNatGetArgs() { diff --git a/sdk/dotnet/Org/Inputs/NetworkInternetAccessGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworkInternetAccessGetArgs.cs index adf6a842..0541d6af 100644 --- a/sdk/dotnet/Org/Inputs/NetworkInternetAccessGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworkInternetAccessGetArgs.cs @@ -19,7 +19,7 @@ public sealed class NetworkInternetAccessGetArgs : global::Pulumi.ResourceArgs private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -40,7 +40,7 @@ public InputMap DestinationNa private InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { diff --git a/sdk/dotnet/Org/Inputs/NetworkInternetAccessStaticNatArgs.cs b/sdk/dotnet/Org/Inputs/NetworkInternetAccessStaticNatArgs.cs index 664d64d5..5a05de66 100644 --- a/sdk/dotnet/Org/Inputs/NetworkInternetAccessStaticNatArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworkInternetAccessStaticNatArgs.cs @@ -12,14 +12,17 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class NetworkInternetAccessStaticNatArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } + /// + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + /// + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; - [Input("name")] - public Input? Name { get; set; } + [Input("name", required: true)] + public Input Name { get; set; } = null!; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") /// [Input("wanName")] public Input? WanName { get; set; } diff --git a/sdk/dotnet/Org/Inputs/NetworkInternetAccessStaticNatGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworkInternetAccessStaticNatGetArgs.cs index dffb548d..d3dd6187 100644 --- a/sdk/dotnet/Org/Inputs/NetworkInternetAccessStaticNatGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworkInternetAccessStaticNatGetArgs.cs @@ -12,14 +12,17 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class NetworkInternetAccessStaticNatGetArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } + /// + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + /// + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; - [Input("name")] - public Input? Name { get; set; } + [Input("name", required: true)] + public Input Name { get; set; } = null!; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") /// [Input("wanName")] public Input? WanName { get; set; } diff --git a/sdk/dotnet/Org/Inputs/NetworkMulticastArgs.cs b/sdk/dotnet/Org/Inputs/NetworkMulticastArgs.cs new file mode 100644 index 00000000..551a303a --- /dev/null +++ b/sdk/dotnet/Org/Inputs/NetworkMulticastArgs.cs @@ -0,0 +1,41 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.JuniperMist.Org.Inputs +{ + + public sealed class NetworkMulticastArgs : global::Pulumi.ResourceArgs + { + /// + /// if the network will only be the soruce of the multicast traffic, IGMP can be disabled + /// + [Input("disableIgmp")] + public Input? DisableIgmp { get; set; } + + [Input("enabled")] + public Input? Enabled { get; set; } + + [Input("groups")] + private InputMap? _groups; + + /// + /// Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + /// + public InputMap Groups + { + get => _groups ?? (_groups = new InputMap()); + set => _groups = value; + } + + public NetworkMulticastArgs() + { + } + public static new NetworkMulticastArgs Empty => new NetworkMulticastArgs(); + } +} diff --git a/sdk/dotnet/Org/Inputs/NetworkMulticastGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworkMulticastGetArgs.cs new file mode 100644 index 00000000..98d77a13 --- /dev/null +++ b/sdk/dotnet/Org/Inputs/NetworkMulticastGetArgs.cs @@ -0,0 +1,41 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.JuniperMist.Org.Inputs +{ + + public sealed class NetworkMulticastGetArgs : global::Pulumi.ResourceArgs + { + /// + /// if the network will only be the soruce of the multicast traffic, IGMP can be disabled + /// + [Input("disableIgmp")] + public Input? DisableIgmp { get; set; } + + [Input("enabled")] + public Input? Enabled { get; set; } + + [Input("groups")] + private InputMap? _groups; + + /// + /// Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + /// + public InputMap Groups + { + get => _groups ?? (_groups = new InputMap()); + set => _groups = value; + } + + public NetworkMulticastGetArgs() + { + } + public static new NetworkMulticastGetArgs Empty => new NetworkMulticastGetArgs(); + } +} diff --git a/sdk/dotnet/Org/Inputs/NetworkMulticastGroupsArgs.cs b/sdk/dotnet/Org/Inputs/NetworkMulticastGroupsArgs.cs new file mode 100644 index 00000000..7baf3566 --- /dev/null +++ b/sdk/dotnet/Org/Inputs/NetworkMulticastGroupsArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.JuniperMist.Org.Inputs +{ + + public sealed class NetworkMulticastGroupsArgs : global::Pulumi.ResourceArgs + { + /// + /// RP (rendezvous point) IP Address + /// + [Input("rpIp")] + public Input? RpIp { get; set; } + + public NetworkMulticastGroupsArgs() + { + } + public static new NetworkMulticastGroupsArgs Empty => new NetworkMulticastGroupsArgs(); + } +} diff --git a/sdk/dotnet/Org/Inputs/NetworkMulticastGroupsGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworkMulticastGroupsGetArgs.cs new file mode 100644 index 00000000..30d88f21 --- /dev/null +++ b/sdk/dotnet/Org/Inputs/NetworkMulticastGroupsGetArgs.cs @@ -0,0 +1,26 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.JuniperMist.Org.Inputs +{ + + public sealed class NetworkMulticastGroupsGetArgs : global::Pulumi.ResourceArgs + { + /// + /// RP (rendezvous point) IP Address + /// + [Input("rpIp")] + public Input? RpIp { get; set; } + + public NetworkMulticastGroupsGetArgs() + { + } + public static new NetworkMulticastGroupsGetArgs Empty => new NetworkMulticastGroupsGetArgs(); + } +} diff --git a/sdk/dotnet/Org/Inputs/NetworkVpnAccessArgs.cs b/sdk/dotnet/Org/Inputs/NetworkVpnAccessArgs.cs index 0403624e..39ce7866 100644 --- a/sdk/dotnet/Org/Inputs/NetworkVpnAccessArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworkVpnAccessArgs.cs @@ -28,7 +28,7 @@ public sealed class NetworkVpnAccessArgs : global::Pulumi.ResourceArgs private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -90,7 +90,7 @@ public InputList OtherVrfs private InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { diff --git a/sdk/dotnet/Org/Inputs/NetworkVpnAccessDestinationNatArgs.cs b/sdk/dotnet/Org/Inputs/NetworkVpnAccessDestinationNatArgs.cs index 129a8ed8..ea0b6a5b 100644 --- a/sdk/dotnet/Org/Inputs/NetworkVpnAccessDestinationNatArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworkVpnAccessDestinationNatArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class NetworkVpnAccessDestinationNatArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } @@ -19,7 +22,7 @@ public sealed class NetworkVpnAccessDestinationNatArgs : global::Pulumi.Resource public Input? Name { get; set; } [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } public NetworkVpnAccessDestinationNatArgs() { diff --git a/sdk/dotnet/Org/Inputs/NetworkVpnAccessDestinationNatGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworkVpnAccessDestinationNatGetArgs.cs index 7eaed755..1673fc52 100644 --- a/sdk/dotnet/Org/Inputs/NetworkVpnAccessDestinationNatGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworkVpnAccessDestinationNatGetArgs.cs @@ -12,6 +12,9 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class NetworkVpnAccessDestinationNatGetArgs : global::Pulumi.ResourceArgs { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// [Input("internalIp")] public Input? InternalIp { get; set; } @@ -19,7 +22,7 @@ public sealed class NetworkVpnAccessDestinationNatGetArgs : global::Pulumi.Resou public Input? Name { get; set; } [Input("port")] - public Input? Port { get; set; } + public Input? Port { get; set; } public NetworkVpnAccessDestinationNatGetArgs() { diff --git a/sdk/dotnet/Org/Inputs/NetworkVpnAccessGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworkVpnAccessGetArgs.cs index d9757624..d6a41584 100644 --- a/sdk/dotnet/Org/Inputs/NetworkVpnAccessGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworkVpnAccessGetArgs.cs @@ -28,7 +28,7 @@ public sealed class NetworkVpnAccessGetArgs : global::Pulumi.ResourceArgs private InputMap? _destinationNat; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public InputMap DestinationNat { @@ -90,7 +90,7 @@ public InputList OtherVrfs private InputMap? _staticNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public InputMap StaticNat { diff --git a/sdk/dotnet/Org/Inputs/NetworkVpnAccessStaticNatArgs.cs b/sdk/dotnet/Org/Inputs/NetworkVpnAccessStaticNatArgs.cs index 0d28262f..373ea079 100644 --- a/sdk/dotnet/Org/Inputs/NetworkVpnAccessStaticNatArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworkVpnAccessStaticNatArgs.cs @@ -12,17 +12,14 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class NetworkVpnAccessStaticNatArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } - - [Input("name")] - public Input? Name { get; set; } - /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") /// - [Input("wanName")] - public Input? WanName { get; set; } + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; + + [Input("name", required: true)] + public Input Name { get; set; } = null!; public NetworkVpnAccessStaticNatArgs() { diff --git a/sdk/dotnet/Org/Inputs/NetworkVpnAccessStaticNatGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworkVpnAccessStaticNatGetArgs.cs index c9122eba..4718e376 100644 --- a/sdk/dotnet/Org/Inputs/NetworkVpnAccessStaticNatGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworkVpnAccessStaticNatGetArgs.cs @@ -12,17 +12,14 @@ namespace Pulumi.JuniperMist.Org.Inputs public sealed class NetworkVpnAccessStaticNatGetArgs : global::Pulumi.ResourceArgs { - [Input("internalIp")] - public Input? InternalIp { get; set; } - - [Input("name")] - public Input? Name { get; set; } - /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") /// - [Input("wanName")] - public Input? WanName { get; set; } + [Input("internalIp", required: true)] + public Input InternalIp { get; set; } = null!; + + [Input("name", required: true)] + public Input Name { get; set; } = null!; public NetworkVpnAccessStaticNatGetArgs() { diff --git a/sdk/dotnet/Org/Inputs/NetworktemplateAclPolicyArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplateAclPolicyArgs.cs index 381f1871..da980547 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplateAclPolicyArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplateAclPolicyArgs.cs @@ -16,8 +16,9 @@ public sealed class NetworktemplateAclPolicyArgs : global::Pulumi.ResourceArgs private InputList? _actions; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Actions: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public InputList Actions { @@ -32,8 +33,9 @@ public InputList Actions private InputList? _srcTags; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Source Tags: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public InputList SrcTags { diff --git a/sdk/dotnet/Org/Inputs/NetworktemplateAclPolicyGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplateAclPolicyGetArgs.cs index d00082fb..7ec66a1b 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplateAclPolicyGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplateAclPolicyGetArgs.cs @@ -16,8 +16,9 @@ public sealed class NetworktemplateAclPolicyGetArgs : global::Pulumi.ResourceArg private InputList? _actions; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Actions: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public InputList Actions { @@ -32,8 +33,9 @@ public InputList Actions private InputList? _srcTags; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Source Tags: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public InputList SrcTags { diff --git a/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsArgs.cs index 2bddfd43..b8576e59 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsArgs.cs @@ -14,9 +14,9 @@ public sealed class NetworktemplateAclTagsArgs : global::Pulumi.ResourceArgs { /// /// required if - /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - /// - `type`==`gbp_resource` - /// - `type`==`static_gbp` (applying gbp tag against matching conditions) + /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + /// - `type`==`gbp_resource` + /// - `type`==`static_gbp` (applying gbp tag against matching conditions) /// [Input("gbpTag")] public Input? GbpTag { get; set; } @@ -59,8 +59,7 @@ public InputList Macs private InputList? _specs; /// - /// if `type`==`resource` or `type`==`gbp_resource` - /// empty means unrestricted, i.e. any + /// if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any /// public InputList Specs { diff --git a/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsGetArgs.cs index 846d150f..0a195322 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsGetArgs.cs @@ -14,9 +14,9 @@ public sealed class NetworktemplateAclTagsGetArgs : global::Pulumi.ResourceArgs { /// /// required if - /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - /// - `type`==`gbp_resource` - /// - `type`==`static_gbp` (applying gbp tag against matching conditions) + /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + /// - `type`==`gbp_resource` + /// - `type`==`static_gbp` (applying gbp tag against matching conditions) /// [Input("gbpTag")] public Input? GbpTag { get; set; } @@ -59,8 +59,7 @@ public InputList Macs private InputList? _specs; /// - /// if `type`==`resource` or `type`==`gbp_resource` - /// empty means unrestricted, i.e. any + /// if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any /// public InputList Specs { diff --git a/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsSpecArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsSpecArgs.cs index 1ceac1e0..63b95405 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsSpecArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsSpecArgs.cs @@ -19,7 +19,7 @@ public sealed class NetworktemplateAclTagsSpecArgs : global::Pulumi.ResourceArgs public Input? PortRange { get; set; } /// - /// `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + /// `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 /// [Input("protocol")] public Input? Protocol { get; set; } diff --git a/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsSpecGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsSpecGetArgs.cs index d59472ae..15553cac 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsSpecGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplateAclTagsSpecGetArgs.cs @@ -19,7 +19,7 @@ public sealed class NetworktemplateAclTagsSpecGetArgs : global::Pulumi.ResourceA public Input? PortRange { get; set; } /// - /// `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + /// `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 /// [Input("protocol")] public Input? Protocol { get; set; } diff --git a/sdk/dotnet/Org/Inputs/NetworktemplateNetworksArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplateNetworksArgs.cs index 04097209..b84d9cd0 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplateNetworksArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplateNetworksArgs.cs @@ -25,8 +25,7 @@ public sealed class NetworktemplateNetworksArgs : global::Pulumi.ResourceArgs public Input? Gateway6 { get; set; } /// - /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - /// NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set /// [Input("isolation")] public Input? Isolation { get; set; } diff --git a/sdk/dotnet/Org/Inputs/NetworktemplateNetworksGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplateNetworksGetArgs.cs index 50460de0..dd5efacf 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplateNetworksGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplateNetworksGetArgs.cs @@ -25,8 +25,7 @@ public sealed class NetworktemplateNetworksGetArgs : global::Pulumi.ResourceArgs public Input? Gateway6 { get; set; } /// - /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - /// NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set /// [Input("isolation")] public Input? Isolation { get; set; } diff --git a/sdk/dotnet/Org/Inputs/NetworktemplatePortUsagesArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplatePortUsagesArgs.cs index 34bdda35..70a15cc0 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplatePortUsagesArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplatePortUsagesArgs.cs @@ -19,9 +19,7 @@ public sealed class NetworktemplatePortUsagesArgs : global::Pulumi.ResourceArgs public Input? AllNetworks { get; set; } /// - /// 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 allow_dhcpd is a tri_state. - /// 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. + /// 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 allow_dhcpd is a tri_state. 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. /// [Input("allowDhcpd")] public Input? AllowDhcpd { get; set; } @@ -99,8 +97,7 @@ public InputList DynamicVlanNetworks public Input? GuestNetwork { get; set; } /// - /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - /// NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together /// [Input("interSwitchLink")] public Input? InterSwitchLink { get; set; } @@ -220,8 +217,7 @@ public InputList Rules public Input? Speed { get; set; } /// - /// Switch storm control - /// Only if `mode`!=`dynamic` + /// Switch storm control. Only if `mode`!=`dynamic` /// [Input("stormControl")] public Input? StormControl { get; set; } diff --git a/sdk/dotnet/Org/Inputs/NetworktemplatePortUsagesGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplatePortUsagesGetArgs.cs index 2f857ec5..20a84c95 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplatePortUsagesGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplatePortUsagesGetArgs.cs @@ -19,9 +19,7 @@ public sealed class NetworktemplatePortUsagesGetArgs : global::Pulumi.ResourceAr public Input? AllNetworks { get; set; } /// - /// 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 allow_dhcpd is a tri_state. - /// 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. + /// 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 allow_dhcpd is a tri_state. 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. /// [Input("allowDhcpd")] public Input? AllowDhcpd { get; set; } @@ -99,8 +97,7 @@ public InputList DynamicVlanNetworks public Input? GuestNetwork { get; set; } /// - /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - /// NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together /// [Input("interSwitchLink")] public Input? InterSwitchLink { get; set; } @@ -220,8 +217,7 @@ public InputList Rules public Input? Speed { get; set; } /// - /// Switch storm control - /// Only if `mode`!=`dynamic` + /// Switch storm control. Only if `mode`!=`dynamic` /// [Input("stormControl")] public Input? StormControl { get; set; } diff --git a/sdk/dotnet/Org/Inputs/NetworktemplateRadiusConfigArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplateRadiusConfigArgs.cs index e1a8e85e..82562336 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplateRadiusConfigArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplateRadiusConfigArgs.cs @@ -47,8 +47,7 @@ public InputList AuthServers public Input? AuthServersTimeout { get; set; } /// - /// use `network`or `source_ip` - /// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + /// use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip /// [Input("network")] public Input? Network { get; set; } diff --git a/sdk/dotnet/Org/Inputs/NetworktemplateRadiusConfigGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplateRadiusConfigGetArgs.cs index 8c8f2497..df0f464e 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplateRadiusConfigGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplateRadiusConfigGetArgs.cs @@ -47,8 +47,7 @@ public InputList AuthServer public Input? AuthServersTimeout { get; set; } /// - /// use `network`or `source_ip` - /// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + /// use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip /// [Input("network")] public Input? Network { get; set; } diff --git a/sdk/dotnet/Org/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.cs index 191527a1..8604a2a1 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.cs @@ -16,8 +16,7 @@ public sealed class NetworktemplateSnmpConfigV3ConfigUsmUserArgs : global::Pulum private Input? _authenticationPassword; /// - /// Not required if `authentication_type`==`authentication_none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters. + /// Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. /// public Input? AuthenticationPassword { @@ -39,8 +38,7 @@ public Input? AuthenticationPassword private Input? _encryptionPassword; /// - /// Not required if `encryption_type`==`privacy-none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters + /// Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters /// public Input? EncryptionPassword { diff --git a/sdk/dotnet/Org/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserGetArgs.cs index b28eb514..750bfb94 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserGetArgs.cs @@ -16,8 +16,7 @@ public sealed class NetworktemplateSnmpConfigV3ConfigUsmUserGetArgs : global::Pu private Input? _authenticationPassword; /// - /// Not required if `authentication_type`==`authentication_none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters. + /// Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. /// public Input? AuthenticationPassword { @@ -39,8 +38,7 @@ public Input? AuthenticationPassword private Input? _encryptionPassword; /// - /// Not required if `encryption_type`==`privacy-none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters + /// Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters /// public Input? EncryptionPassword { diff --git a/sdk/dotnet/Org/Inputs/NetworktemplateSwitchMatchingRuleArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplateSwitchMatchingRuleArgs.cs index 3ac75e76..d360fdb5 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplateSwitchMatchingRuleArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplateSwitchMatchingRuleArgs.cs @@ -88,8 +88,7 @@ public InputMap PortConf private InputMap? _portMirroring; /// - /// Property key is the port mirroring instance name - /// port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed /// public InputMap PortMirroring { diff --git a/sdk/dotnet/Org/Inputs/NetworktemplateSwitchMatchingRuleGetArgs.cs b/sdk/dotnet/Org/Inputs/NetworktemplateSwitchMatchingRuleGetArgs.cs index 6c22a0cd..46a648cc 100644 --- a/sdk/dotnet/Org/Inputs/NetworktemplateSwitchMatchingRuleGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/NetworktemplateSwitchMatchingRuleGetArgs.cs @@ -88,8 +88,7 @@ public InputMap PortC private InputMap? _portMirroring; /// - /// Property key is the port mirroring instance name - /// port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed /// public InputMap PortMirroring { diff --git a/sdk/dotnet/Org/Inputs/WlanAppLimitArgs.cs b/sdk/dotnet/Org/Inputs/WlanAppLimitArgs.cs index c7dd4622..db46585f 100644 --- a/sdk/dotnet/Org/Inputs/WlanAppLimitArgs.cs +++ b/sdk/dotnet/Org/Inputs/WlanAppLimitArgs.cs @@ -32,8 +32,7 @@ public InputMap Apps private InputMap? _wxtagIds; /// - /// Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - /// Property key is the wxtag id + /// Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` /// public InputMap WxtagIds { diff --git a/sdk/dotnet/Org/Inputs/WlanAppLimitGetArgs.cs b/sdk/dotnet/Org/Inputs/WlanAppLimitGetArgs.cs index d369cac3..9ebaac82 100644 --- a/sdk/dotnet/Org/Inputs/WlanAppLimitGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/WlanAppLimitGetArgs.cs @@ -32,8 +32,7 @@ public InputMap Apps private InputMap? _wxtagIds; /// - /// Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - /// Property key is the wxtag id + /// Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` /// public InputMap WxtagIds { diff --git a/sdk/dotnet/Org/Inputs/WlanDnsServerRewriteArgs.cs b/sdk/dotnet/Org/Inputs/WlanDnsServerRewriteArgs.cs index 60868076..39b011e7 100644 --- a/sdk/dotnet/Org/Inputs/WlanDnsServerRewriteArgs.cs +++ b/sdk/dotnet/Org/Inputs/WlanDnsServerRewriteArgs.cs @@ -19,8 +19,7 @@ public sealed class WlanDnsServerRewriteArgs : global::Pulumi.ResourceArgs private InputMap? _radiusGroups; /// - /// map between radius_group and the desired DNS server (IPv4 only) - /// Property key is the RADIUS group, property value is the desired DNS Server + /// map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server /// public InputMap RadiusGroups { diff --git a/sdk/dotnet/Org/Inputs/WlanDnsServerRewriteGetArgs.cs b/sdk/dotnet/Org/Inputs/WlanDnsServerRewriteGetArgs.cs index 9d9af6d3..aded3cf4 100644 --- a/sdk/dotnet/Org/Inputs/WlanDnsServerRewriteGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/WlanDnsServerRewriteGetArgs.cs @@ -19,8 +19,7 @@ public sealed class WlanDnsServerRewriteGetArgs : global::Pulumi.ResourceArgs private InputMap? _radiusGroups; /// - /// map between radius_group and the desired DNS server (IPv4 only) - /// Property key is the RADIUS group, property value is the desired DNS Server + /// map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server /// public InputMap RadiusGroups { diff --git a/sdk/dotnet/Org/Inputs/WlanDynamicPskArgs.cs b/sdk/dotnet/Org/Inputs/WlanDynamicPskArgs.cs index 24824962..7928867a 100644 --- a/sdk/dotnet/Org/Inputs/WlanDynamicPskArgs.cs +++ b/sdk/dotnet/Org/Inputs/WlanDynamicPskArgs.cs @@ -35,8 +35,7 @@ public Input? DefaultPsk public Input? Enabled { get; set; } /// - /// when 11r is enabled, we'll try to use the cached PMK, this can be disabled - /// `false` means auto + /// when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto /// [Input("forceLookup")] public Input? ForceLookup { get; set; } diff --git a/sdk/dotnet/Org/Inputs/WlanDynamicPskGetArgs.cs b/sdk/dotnet/Org/Inputs/WlanDynamicPskGetArgs.cs index 350e0c4a..62b66e95 100644 --- a/sdk/dotnet/Org/Inputs/WlanDynamicPskGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/WlanDynamicPskGetArgs.cs @@ -35,8 +35,7 @@ public Input? DefaultPsk public Input? Enabled { get; set; } /// - /// when 11r is enabled, we'll try to use the cached PMK, this can be disabled - /// `false` means auto + /// when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto /// [Input("forceLookup")] public Input? ForceLookup { get; set; } diff --git a/sdk/dotnet/Org/Inputs/WlanRadsecArgs.cs b/sdk/dotnet/Org/Inputs/WlanRadsecArgs.cs index fd423d51..251376b2 100644 --- a/sdk/dotnet/Org/Inputs/WlanRadsecArgs.cs +++ b/sdk/dotnet/Org/Inputs/WlanRadsecArgs.cs @@ -25,8 +25,7 @@ public sealed class WlanRadsecArgs : global::Pulumi.ResourceArgs private InputList? _mxclusterIds; /// - /// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - /// Org mxedge(s) identified by mxcluster_ids + /// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids /// public InputList MxclusterIds { @@ -38,8 +37,7 @@ public InputList MxclusterIds private InputList? _proxyHosts; /// - /// default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - /// when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + /// default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` /// public InputList ProxyHosts { diff --git a/sdk/dotnet/Org/Inputs/WlanRadsecGetArgs.cs b/sdk/dotnet/Org/Inputs/WlanRadsecGetArgs.cs index f866c292..99de3d33 100644 --- a/sdk/dotnet/Org/Inputs/WlanRadsecGetArgs.cs +++ b/sdk/dotnet/Org/Inputs/WlanRadsecGetArgs.cs @@ -25,8 +25,7 @@ public sealed class WlanRadsecGetArgs : global::Pulumi.ResourceArgs private InputList? _mxclusterIds; /// - /// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - /// Org mxedge(s) identified by mxcluster_ids + /// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids /// public InputList MxclusterIds { @@ -38,8 +37,7 @@ public InputList MxclusterIds private InputList? _proxyHosts; /// - /// default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - /// when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + /// default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` /// public InputList ProxyHosts { diff --git a/sdk/dotnet/Org/Nacidp.cs b/sdk/dotnet/Org/Nacidp.cs index bf96dbcb..0d02d274 100644 --- a/sdk/dotnet/Org/Nacidp.cs +++ b/sdk/dotnet/Org/Nacidp.cs @@ -207,6 +207,12 @@ public partial class Nacidp : global::Pulumi.CustomResource [Output("oauthDiscoveryUrl")] public Output OauthDiscoveryUrl { get; private set; } = null!; + /// + /// enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + /// + [Output("oauthPingIdentityRegion")] + public Output OauthPingIdentityRegion { get; private set; } = null!; + /// /// if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials /// @@ -234,6 +240,18 @@ public partial class Nacidp : global::Pulumi.CustomResource [Output("orgId")] public Output OrgId { get; private set; } = null!; + /// + /// if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + /// + [Output("scimEnabled")] + public Output ScimEnabled { get; private set; } = null!; + + /// + /// if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + /// + [Output("scimSecretToken")] + public Output ScimSecretToken { get; private set; } = null!; + /// /// Create a Nacidp resource with the given unique name, arguments, and options. @@ -407,6 +425,12 @@ public InputList LdapServerHosts [Input("oauthDiscoveryUrl")] public Input? OauthDiscoveryUrl { get; set; } + /// + /// enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + /// + [Input("oauthPingIdentityRegion")] + public Input? OauthPingIdentityRegion { get; set; } + /// /// if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials /// @@ -434,6 +458,18 @@ public InputList LdapServerHosts [Input("orgId", required: true)] public Input OrgId { get; set; } = null!; + /// + /// if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + /// + [Input("scimEnabled")] + public Input? ScimEnabled { get; set; } + + /// + /// if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + /// + [Input("scimSecretToken")] + public Input? ScimSecretToken { get; set; } + public NacidpArgs() { } @@ -568,6 +604,12 @@ public InputList LdapServerHosts [Input("oauthDiscoveryUrl")] public Input? OauthDiscoveryUrl { get; set; } + /// + /// enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + /// + [Input("oauthPingIdentityRegion")] + public Input? OauthPingIdentityRegion { get; set; } + /// /// if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials /// @@ -595,6 +637,18 @@ public InputList LdapServerHosts [Input("orgId")] public Input? OrgId { get; set; } + /// + /// if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + /// + [Input("scimEnabled")] + public Input? ScimEnabled { get; set; } + + /// + /// if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + /// + [Input("scimSecretToken")] + public Input? ScimSecretToken { get; set; } + public NacidpState() { } diff --git a/sdk/dotnet/Org/Network.cs b/sdk/dotnet/Org/Network.cs index aa1f7cb4..30a15455 100644 --- a/sdk/dotnet/Org/Network.cs +++ b/sdk/dotnet/Org/Network.cs @@ -74,6 +74,12 @@ public partial class Network : global::Pulumi.CustomResource [Output("isolation")] public Output Isolation { get; private set; } = null!; + /// + /// whether to enable multicast support (only PIM-sparse mode is supported) + /// + [Output("multicast")] + public Output Multicast { get; private set; } = null!; + [Output("name")] public Output Name { get; private set; } = null!; @@ -92,6 +98,9 @@ public partial class Network : global::Pulumi.CustomResource [Output("subnet6")] public Output Subnet6 { get; private set; } = null!; + /// + /// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + /// [Output("tenants")] public Output?> Tenants { get; private set; } = null!; @@ -178,6 +187,12 @@ public sealed class NetworkArgs : global::Pulumi.ResourceArgs [Input("isolation")] public Input? Isolation { get; set; } + /// + /// whether to enable multicast support (only PIM-sparse mode is supported) + /// + [Input("multicast")] + public Input? Multicast { get; set; } + [Input("name")] public Input? Name { get; set; } @@ -204,6 +219,10 @@ public InputList RoutedForNetworks [Input("tenants")] private InputMap? _tenants; + + /// + /// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + /// public InputMap Tenants { get => _tenants ?? (_tenants = new InputMap()); @@ -260,6 +279,12 @@ public sealed class NetworkState : global::Pulumi.ResourceArgs [Input("isolation")] public Input? Isolation { get; set; } + /// + /// whether to enable multicast support (only PIM-sparse mode is supported) + /// + [Input("multicast")] + public Input? Multicast { get; set; } + [Input("name")] public Input? Name { get; set; } @@ -286,6 +311,10 @@ public InputList RoutedForNetworks [Input("tenants")] private InputMap? _tenants; + + /// + /// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + /// public InputMap Tenants { get => _tenants ?? (_tenants = new InputMap()); diff --git a/sdk/dotnet/Org/Networktemplate.cs b/sdk/dotnet/Org/Networktemplate.cs index 23a83806..55f8c4e9 100644 --- a/sdk/dotnet/Org/Networktemplate.cs +++ b/sdk/dotnet/Org/Networktemplate.cs @@ -96,7 +96,7 @@ public partial class Networktemplate : global::Pulumi.CustomResource public Output?> OspfAreas { get; private set; } = null!; /// - /// Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes /// interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A /// maximum 4 port mirrorings is allowed /// @@ -326,7 +326,7 @@ public InputMap OspfAreas private InputMap? _portMirroring; /// - /// Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes /// interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A /// maximum 4 port mirrorings is allowed /// @@ -532,7 +532,7 @@ public InputMap OspfAreas private InputMap? _portMirroring; /// - /// Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes /// interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A /// maximum 4 port mirrorings is allowed /// diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayBgpConfig.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayBgpConfig.cs index 0140f7eb..ae6da6a3 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayBgpConfig.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayBgpConfig.cs @@ -34,8 +34,7 @@ public sealed class DeviceprofileGatewayBgpConfig /// public readonly string? ExportPolicy; /// - /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - /// for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this /// public readonly bool? ExtendedV4Nexthop; /// diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetwork.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetwork.cs index 93e05991..1647b50c 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetwork.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetwork.cs @@ -39,6 +39,9 @@ public sealed class DeviceprofileGatewayNetwork public readonly ImmutableArray RoutedForNetworks; public readonly string Subnet; public readonly string? Subnet6; + /// + /// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + /// public readonly ImmutableDictionary? Tenants; public readonly string? VlanId; /// diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkInternetAccess.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkInternetAccess.cs index af848bd8..c7e587cd 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkInternetAccess.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkInternetAccess.cs @@ -15,7 +15,7 @@ public sealed class DeviceprofileGatewayNetworkInternetAccess { public readonly bool? CreateSimpleServicePolicy; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public readonly ImmutableDictionary? DestinationNat; public readonly bool? Enabled; @@ -24,7 +24,7 @@ public sealed class DeviceprofileGatewayNetworkInternetAccess /// public readonly bool? Restricted; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public readonly ImmutableDictionary? StaticNat; diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkInternetAccessDestinationNat.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkInternetAccessDestinationNat.cs index 972bfc31..a9ec2d4d 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkInternetAccessDestinationNat.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkInternetAccessDestinationNat.cs @@ -13,9 +13,19 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class DeviceprofileGatewayNetworkInternetAccessDestinationNat { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// public readonly string? InternalIp; public readonly string? Name; - public readonly int? Port; + /// + /// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + /// + public readonly string? Port; + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + /// + public readonly string? WanName; [OutputConstructor] private DeviceprofileGatewayNetworkInternetAccessDestinationNat( @@ -23,11 +33,14 @@ private DeviceprofileGatewayNetworkInternetAccessDestinationNat( string? name, - int? port) + string? port, + + string? wanName) { InternalIp = internalIp; Name = name; Port = port; + WanName = wanName; } } } diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkInternetAccessStaticNat.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkInternetAccessStaticNat.cs index c948d454..9ce71039 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkInternetAccessStaticNat.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkInternetAccessStaticNat.cs @@ -13,18 +13,21 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class DeviceprofileGatewayNetworkInternetAccessStaticNat { - public readonly string? InternalIp; - public readonly string? Name; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + /// + public readonly string InternalIp; + public readonly string Name; + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") /// public readonly string? WanName; [OutputConstructor] private DeviceprofileGatewayNetworkInternetAccessStaticNat( - string? internalIp, + string internalIp, - string? name, + string name, string? wanName) { diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkVpnAccess.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkVpnAccess.cs index 6060fc01..ea8302b2 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkVpnAccess.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkVpnAccess.cs @@ -22,7 +22,7 @@ public sealed class DeviceprofileGatewayNetworkVpnAccess /// public readonly bool? AllowPing; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public readonly ImmutableDictionary? DestinationNat; /// @@ -38,13 +38,11 @@ public sealed class DeviceprofileGatewayNetworkVpnAccess /// public readonly bool? NoReadvertiseToLanOspf; /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// public readonly bool? NoReadvertiseToOverlay; /// - /// by default, the routes are only readvertised toward the same vrf on spoke - /// to allow it to be leaked to other vrfs + /// by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs /// public readonly ImmutableArray OtherVrfs; /// @@ -56,12 +54,11 @@ public sealed class DeviceprofileGatewayNetworkVpnAccess /// public readonly Outputs.DeviceprofileGatewayNetworkVpnAccessSourceNat? SourceNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public readonly ImmutableDictionary? StaticNat; /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// public readonly string? SummarizedSubnet; /// diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkVpnAccessDestinationNat.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkVpnAccessDestinationNat.cs index 1d66c01d..005430e9 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkVpnAccessDestinationNat.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkVpnAccessDestinationNat.cs @@ -13,9 +13,12 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class DeviceprofileGatewayNetworkVpnAccessDestinationNat { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// public readonly string? InternalIp; public readonly string? Name; - public readonly int? Port; + public readonly string? Port; [OutputConstructor] private DeviceprofileGatewayNetworkVpnAccessDestinationNat( @@ -23,7 +26,7 @@ private DeviceprofileGatewayNetworkVpnAccessDestinationNat( string? name, - int? port) + string? port) { InternalIp = internalIp; Name = name; diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkVpnAccessStaticNat.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkVpnAccessStaticNat.cs index 516bb526..036a5eb1 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkVpnAccessStaticNat.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayNetworkVpnAccessStaticNat.cs @@ -13,24 +13,20 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class DeviceprofileGatewayNetworkVpnAccessStaticNat { - public readonly string? InternalIp; - public readonly string? Name; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") /// - public readonly string? WanName; + public readonly string InternalIp; + public readonly string Name; [OutputConstructor] private DeviceprofileGatewayNetworkVpnAccessStaticNat( - string? internalIp, + string internalIp, - string? name, - - string? wanName) + string name) { InternalIp = internalIp; Name = name; - WanName = wanName; } } } diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfig.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfig.cs index 026f6b36..3ad2847b 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfig.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfig.cs @@ -22,9 +22,7 @@ public sealed class DeviceprofileGatewayPortConfig /// public readonly string? AeIdx; /// - /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - /// Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - /// Note: Turning this on will enable force-up on one of the interfaces in the bundle only + /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only /// public readonly bool? AeLacpForceUp; public readonly bool? Aggregated; @@ -32,6 +30,9 @@ public sealed class DeviceprofileGatewayPortConfig /// if want to generate port up/down alarm, set it to true /// public readonly bool? Critical; + /// + /// Interface Description. Can be a variable (i.e. "{{myvar}}") + /// public readonly string? Description; public readonly bool? DisableAutoneg; /// @@ -43,13 +44,11 @@ public sealed class DeviceprofileGatewayPortConfig /// public readonly string? DslType; /// - /// if `wan_type`==`dsl` - /// 16 bit int + /// if `wan_type`==`dsl`, 16 bit int /// public readonly int? DslVci; /// - /// if `wan_type`==`dsl` - /// 8 bit int + /// if `wan_type`==`dsl`, 8 bit int /// public readonly int? DslVpi; /// @@ -83,7 +82,7 @@ public sealed class DeviceprofileGatewayPortConfig /// public readonly string? Name; /// - /// if `usage`==`lan` + /// if `usage`==`lan`, name of the `junipermist.org.Network` resource /// public readonly ImmutableArray Networks; /// @@ -92,7 +91,7 @@ public sealed class DeviceprofileGatewayPortConfig public readonly int? OuterVlanId; public readonly bool? PoeDisabled; /// - /// if `usage`==`lan` + /// Only for SRX and if `usage`==`lan`, the Untagged VLAN Network /// public readonly string? PortNetwork; /// @@ -129,36 +128,37 @@ public sealed class DeviceprofileGatewayPortConfig /// port usage name. enum: `ha_control`, `ha_data`, `lan`, `wan` /// public readonly string Usage; - /// - /// if WAN interface is on a VLAN - /// - public readonly int? VlanId; + public readonly string? VlanId; /// /// Property key is the VPN name /// public readonly ImmutableDictionary? VpnPaths; /// - /// when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + /// Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` /// public readonly string? WanArpPolicer; /// - /// optional, if spoke should reach this port by a different IP + /// Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP /// public readonly string? WanExtIp; /// - /// Property Key is the destianation CIDR (e.g "100.100.100.0/24") + /// Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") /// public readonly ImmutableDictionary? WanExtraRoutes; /// - /// if `usage`==`wan` + /// Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + /// + public readonly ImmutableArray WanNetworks; + /// + /// Only if `usage`==`wan` /// public readonly Outputs.DeviceprofileGatewayPortConfigWanProbeOverride? WanProbeOverride; /// - /// optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + /// Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip /// public readonly Outputs.DeviceprofileGatewayPortConfigWanSourceNat? WanSourceNat; /// - /// if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + /// Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` /// public readonly string? WanType; @@ -232,7 +232,7 @@ private DeviceprofileGatewayPortConfig( string usage, - int? vlanId, + string? vlanId, ImmutableDictionary? vpnPaths, @@ -242,6 +242,8 @@ private DeviceprofileGatewayPortConfig( ImmutableDictionary? wanExtraRoutes, + ImmutableArray wanNetworks, + Outputs.DeviceprofileGatewayPortConfigWanProbeOverride? wanProbeOverride, Outputs.DeviceprofileGatewayPortConfigWanSourceNat? wanSourceNat, @@ -287,6 +289,7 @@ private DeviceprofileGatewayPortConfig( WanArpPolicer = wanArpPolicer; WanExtIp = wanExtIp; WanExtraRoutes = wanExtraRoutes; + WanNetworks = wanNetworks; WanProbeOverride = wanProbeOverride; WanSourceNat = wanSourceNat; WanType = wanType; diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfigIpConfig.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfigIpConfig.cs index e32388a5..d23d98d3 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfigIpConfig.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfigIpConfig.cs @@ -22,12 +22,15 @@ public sealed class DeviceprofileGatewayPortConfigIpConfig /// public readonly ImmutableArray DnsSuffixes; /// - /// except for out-of_band interface (vme/em0/fxp0) + /// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") /// public readonly string? Gateway; + /// + /// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + /// public readonly string? Ip; /// - /// used only if `subnet` is not specified in `networks` + /// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") /// public readonly string? Netmask; /// diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfigTrafficShaping.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfigTrafficShaping.cs index 6a816651..6f891d54 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfigTrafficShaping.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfigTrafficShaping.cs @@ -14,20 +14,26 @@ namespace Pulumi.JuniperMist.Org.Outputs public sealed class DeviceprofileGatewayPortConfigTrafficShaping { /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public readonly ImmutableArray ClassPercentages; public readonly bool? Enabled; + /// + /// Interface Transmit Cap in kbps + /// + public readonly int? MaxTxKbps; [OutputConstructor] private DeviceprofileGatewayPortConfigTrafficShaping( ImmutableArray classPercentages, - bool? enabled) + bool? enabled, + + int? maxTxKbps) { ClassPercentages = classPercentages; Enabled = enabled; + MaxTxKbps = maxTxKbps; } } } diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShaping.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShaping.cs index e161ac56..c0c791b1 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShaping.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShaping.cs @@ -14,20 +14,26 @@ namespace Pulumi.JuniperMist.Org.Outputs public sealed class DeviceprofileGatewayPortConfigVpnPathsTrafficShaping { /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public readonly ImmutableArray ClassPercentages; public readonly bool? Enabled; + /// + /// Interface Transmit Cap in kbps + /// + public readonly int? MaxTxKbps; [OutputConstructor] private DeviceprofileGatewayPortConfigVpnPathsTrafficShaping( ImmutableArray classPercentages, - bool? enabled) + bool? enabled, + + int? maxTxKbps) { ClassPercentages = classPercentages; Enabled = enabled; + MaxTxKbps = maxTxKbps; } } } diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayRoutingPoliciesTermAction.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayRoutingPoliciesTermAction.cs index ef0372ed..b7338c55 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayRoutingPoliciesTermAction.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayRoutingPoliciesTermAction.cs @@ -20,6 +20,10 @@ public sealed class DeviceprofileGatewayRoutingPoliciesTermAction /// public readonly ImmutableArray AddTargetVrfs; /// + /// route aggregation + /// + public readonly ImmutableArray Aggregates; + /// /// when used as export policy, optional /// public readonly ImmutableArray Communities; @@ -49,6 +53,8 @@ private DeviceprofileGatewayRoutingPoliciesTermAction( ImmutableArray addTargetVrfs, + ImmutableArray aggregates, + ImmutableArray communities, ImmutableArray excludeAsPaths, @@ -64,6 +70,7 @@ private DeviceprofileGatewayRoutingPoliciesTermAction( Accept = accept; AddCommunities = addCommunities; AddTargetVrfs = addTargetVrfs; + Aggregates = aggregates; Communities = communities; ExcludeAsPaths = excludeAsPaths; ExcludeCommunities = excludeCommunities; diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayRoutingPoliciesTermMatching.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayRoutingPoliciesTermMatching.cs index 8acf2a2c..db14804d 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayRoutingPoliciesTermMatching.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayRoutingPoliciesTermMatching.cs @@ -34,8 +34,7 @@ public sealed class DeviceprofileGatewayRoutingPoliciesTermMatching public readonly ImmutableArray VpnNeighborMacs; public readonly Outputs.DeviceprofileGatewayRoutingPoliciesTermMatchingVpnPathSla? VpnPathSla; /// - /// overlay-facing criteria (used for bgp_config where via=vpn) - /// ordered- + /// overlay-facing criteria (used for bgp_config where via=vpn). ordered- /// public readonly ImmutableArray VpnPaths; diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists.cs index 0a7e994e..40a09477 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists.cs @@ -15,8 +15,7 @@ public sealed class DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists { public readonly string? Route; /// - /// name of the vrf instance - /// it can also be the name of the VPN or wan if they + /// name of the vrf instance, it can also be the name of the VPN or wan if they /// public readonly string? VrfName; diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayServicePolicy.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayServicePolicy.cs index 20127c02..7bbd2e55 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayServicePolicy.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayServicePolicy.cs @@ -32,8 +32,7 @@ public sealed class DeviceprofileGatewayServicePolicy /// public readonly string? Name; /// - /// by default, we derive all paths available and use them - /// optionally, you can customize by using `path_preference` + /// by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` /// public readonly string? PathPreference; /// diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigs.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigs.cs index d5295584..56bfa594 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigs.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigs.cs @@ -15,63 +15,63 @@ public sealed class DeviceprofileGatewayTunnelConfigs { public readonly Outputs.DeviceprofileGatewayTunnelConfigsAutoProvision? AutoProvision; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// public readonly int? IkeLifetime; /// - /// Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + /// Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` /// public readonly string? IkeMode; /// - /// if `provider`== `custom-ipsec` + /// if `provider`==`custom-ipsec` /// public readonly ImmutableArray IkeProposals; /// - /// if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// public readonly int? IpsecLifetime; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// public readonly ImmutableArray IpsecProposals; /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public readonly string? LocalId; /// - /// enum: `active-active`, `active-standby` + /// Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` /// public readonly string? Mode; /// - /// networks reachable via this tunnel + /// if `provider`==`custom-ipsec`, networks reachable via this tunnel /// public readonly ImmutableArray Networks; + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// public readonly Outputs.DeviceprofileGatewayTunnelConfigsPrimary? Primary; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// public readonly Outputs.DeviceprofileGatewayTunnelConfigsProbe? Probe; /// - /// Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + /// Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` /// public readonly string? Protocol; /// - /// enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + /// Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` /// public readonly string? Provider; /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public readonly string? Psk; + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// public readonly Outputs.DeviceprofileGatewayTunnelConfigsSecondary? Secondary; /// - /// Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + /// Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` /// public readonly string? Version; diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsAutoProvision.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsAutoProvision.cs index 35603842..0d033c80 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsAutoProvision.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsAutoProvision.cs @@ -14,8 +14,19 @@ namespace Pulumi.JuniperMist.Org.Outputs public sealed class DeviceprofileGatewayTunnelConfigsAutoProvision { public readonly bool? Enable; + /// + /// API override for POP selection + /// public readonly Outputs.DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng? Latlng; public readonly Outputs.DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary? Primary; + /// + /// enum: `jse-ipsec`, `zscaler-ipsec` + /// + public readonly string Provider; + /// + /// API override for POP selection + /// + public readonly string? Region; public readonly Outputs.DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary? Secondary; [OutputConstructor] @@ -26,11 +37,17 @@ private DeviceprofileGatewayTunnelConfigsAutoProvision( Outputs.DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary? primary, + string provider, + + string? region, + Outputs.DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary? secondary) { Enable = enable; Latlng = latlng; Primary = primary; + Provider = provider; + Region = region; Secondary = secondary; } } diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary.cs index d881fe9b..3db543ed 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary.cs @@ -13,7 +13,7 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary { - public readonly string? NumHosts; + public readonly ImmutableArray ProbeIps; /// /// optional, only needed if `vars_only`==`false` /// @@ -21,11 +21,11 @@ public sealed class DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary [OutputConstructor] private DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary( - string? numHosts, + ImmutableArray probeIps, ImmutableArray wanNames) { - NumHosts = numHosts; + ProbeIps = probeIps; WanNames = wanNames; } } diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary.cs index 88f55fb1..13b859dc 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary.cs @@ -13,7 +13,7 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary { - public readonly string? NumHosts; + public readonly ImmutableArray ProbeIps; /// /// optional, only needed if `vars_only`==`false` /// @@ -21,11 +21,11 @@ public sealed class DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary [OutputConstructor] private DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary( - string? numHosts, + ImmutableArray probeIps, ImmutableArray wanNames) { - NumHosts = numHosts; + ProbeIps = probeIps; WanNames = wanNames; } } diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsIpsecProposal.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsIpsecProposal.cs index 74f7cd3e..b5adba40 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsIpsecProposal.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsIpsecProposal.cs @@ -18,7 +18,7 @@ public sealed class DeviceprofileGatewayTunnelConfigsIpsecProposal /// public readonly string? AuthAlgo; /// - /// Only if `provider`== `custom-ipsec`. enum: + /// Only if `provider`==`custom-ipsec`. enum: /// * 1 /// * 2 (1024-bit) /// * 5 diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsPrimary.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsPrimary.cs index 617f74ee..f1302bc7 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsPrimary.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsPrimary.cs @@ -15,14 +15,12 @@ public sealed class DeviceprofileGatewayTunnelConfigsPrimary { public readonly ImmutableArray Hosts; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public readonly ImmutableArray InternalIps; public readonly ImmutableArray ProbeIps; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public readonly ImmutableArray RemoteIds; public readonly ImmutableArray WanNames; diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsSecondary.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsSecondary.cs index 290ab9c9..a412f599 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsSecondary.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelConfigsSecondary.cs @@ -15,14 +15,12 @@ public sealed class DeviceprofileGatewayTunnelConfigsSecondary { public readonly ImmutableArray Hosts; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public readonly ImmutableArray InternalIps; public readonly ImmutableArray ProbeIps; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public readonly ImmutableArray RemoteIds; public readonly ImmutableArray WanNames; diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelProviderOptionsJse.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelProviderOptionsJse.cs index d883ca64..d896edde 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelProviderOptionsJse.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelProviderOptionsJse.cs @@ -13,17 +13,20 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class DeviceprofileGatewayTunnelProviderOptionsJse { - public readonly string? Name; public readonly int? NumUsers; + /// + /// JSE Organization name + /// + public readonly string? OrgName; [OutputConstructor] private DeviceprofileGatewayTunnelProviderOptionsJse( - string? name, + int? numUsers, - int? numUsers) + string? orgName) { - Name = name; NumUsers = numUsers; + OrgName = orgName; } } } diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelProviderOptionsZscaler.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelProviderOptionsZscaler.cs index 8cba5337..4e0e3ce9 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelProviderOptionsZscaler.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelProviderOptionsZscaler.cs @@ -13,77 +13,111 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class DeviceprofileGatewayTunnelProviderOptionsZscaler { - public readonly bool? AupAcceptanceRequired; + public readonly bool? AupBlockInternetUntilAccepted; /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - public readonly int? AupExpire; + public readonly bool? AupEnabled; /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - public readonly bool? AupSslProxy; + public readonly bool? AupForceSslInspection; /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - public readonly int? DownloadMbps; + public readonly int? AupTimeoutInDays; /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to enforce user authentication /// - public readonly bool? EnableAup; + public readonly bool? AuthRequired; /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - public readonly bool? EnableCaution; - public readonly bool? EnforceAuthentication; - public readonly string? Name; + public readonly bool? CautionEnabled; /// - /// if `use_xff`==`true` + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + public readonly double? DnBandwidth; + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + public readonly int? IdleTimeInMinutes; + /// + /// if `true`, enable the firewall control option + /// + public readonly bool? OfwEnabled; + /// + /// `sub-locations` can be used for specific uses cases to define different configuration based on the user network /// public readonly ImmutableArray SubLocations; /// - /// the download bandwidth cap of the link, in Mbps + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + public readonly bool? SurrogateIp; + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers /// - public readonly int? UploadMbps; + public readonly bool? SurrogateIpEnforcedForKnownBrowsers; + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + public readonly int? SurrogateRefreshTimeInMinutes; + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + public readonly double? UpBandwidth; /// /// location uses proxy chaining to forward traffic /// - public readonly bool? UseXff; + public readonly bool? XffForwardEnabled; [OutputConstructor] private DeviceprofileGatewayTunnelProviderOptionsZscaler( - bool? aupAcceptanceRequired, + bool? aupBlockInternetUntilAccepted, - int? aupExpire, + bool? aupEnabled, - bool? aupSslProxy, + bool? aupForceSslInspection, - int? downloadMbps, + int? aupTimeoutInDays, - bool? enableAup, + bool? authRequired, - bool? enableCaution, + bool? cautionEnabled, - bool? enforceAuthentication, + double? dnBandwidth, - string? name, + int? idleTimeInMinutes, + + bool? ofwEnabled, ImmutableArray subLocations, - int? uploadMbps, + bool? surrogateIp, + + bool? surrogateIpEnforcedForKnownBrowsers, + + int? surrogateRefreshTimeInMinutes, + + double? upBandwidth, - bool? useXff) + bool? xffForwardEnabled) { - AupAcceptanceRequired = aupAcceptanceRequired; - AupExpire = aupExpire; - AupSslProxy = aupSslProxy; - DownloadMbps = downloadMbps; - EnableAup = enableAup; - EnableCaution = enableCaution; - EnforceAuthentication = enforceAuthentication; - Name = name; + AupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + AupEnabled = aupEnabled; + AupForceSslInspection = aupForceSslInspection; + AupTimeoutInDays = aupTimeoutInDays; + AuthRequired = authRequired; + CautionEnabled = cautionEnabled; + DnBandwidth = dnBandwidth; + IdleTimeInMinutes = idleTimeInMinutes; + OfwEnabled = ofwEnabled; SubLocations = subLocations; - UploadMbps = uploadMbps; - UseXff = useXff; + SurrogateIp = surrogateIp; + SurrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + SurrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + UpBandwidth = upBandwidth; + XffForwardEnabled = xffForwardEnabled; } } } diff --git a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation.cs b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation.cs index 37ab6763..650d1674 100644 --- a/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation.cs +++ b/sdk/dotnet/Org/Outputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation.cs @@ -13,63 +13,104 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation { - public readonly bool? AupAcceptanceRequired; + public readonly bool? AupBlockInternetUntilAccepted; /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - public readonly int? AupExpire; + public readonly bool? AupEnabled; /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - public readonly bool? AupSslProxy; + public readonly bool? AupForceSslInspection; /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - public readonly int? DownloadMbps; + public readonly int? AupTimeoutInDays; /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to authenticate users /// - public readonly bool? EnableAup; + public readonly bool? AuthRequired; /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - public readonly bool? EnableCaution; - public readonly bool? EnforceAuthentication; - public readonly ImmutableArray Subnets; + public readonly bool? CautionEnabled; /// - /// the download bandwidth cap of the link, in Mbps + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - public readonly int? UploadMbps; + public readonly double? DnBandwidth; + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + public readonly int? IdleTimeInMinutes; + /// + /// Network name + /// + public readonly string? Name; + /// + /// if `true`, enable the firewall control option + /// + public readonly bool? OfwEnabled; + /// + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + public readonly bool? SurrogateIp; + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + public readonly bool? SurrogateIpEnforcedForKnownBrowsers; + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + public readonly int? SurrogateRefreshTimeInMinutes; + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + public readonly double? UpBandwidth; [OutputConstructor] private DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation( - bool? aupAcceptanceRequired, + bool? aupBlockInternetUntilAccepted, + + bool? aupEnabled, + + bool? aupForceSslInspection, + + int? aupTimeoutInDays, + + bool? authRequired, + + bool? cautionEnabled, - int? aupExpire, + double? dnBandwidth, - bool? aupSslProxy, + int? idleTimeInMinutes, - int? downloadMbps, + string? name, - bool? enableAup, + bool? ofwEnabled, - bool? enableCaution, + bool? surrogateIp, - bool? enforceAuthentication, + bool? surrogateIpEnforcedForKnownBrowsers, - ImmutableArray subnets, + int? surrogateRefreshTimeInMinutes, - int? uploadMbps) + double? upBandwidth) { - AupAcceptanceRequired = aupAcceptanceRequired; - AupExpire = aupExpire; - AupSslProxy = aupSslProxy; - DownloadMbps = downloadMbps; - EnableAup = enableAup; - EnableCaution = enableCaution; - EnforceAuthentication = enforceAuthentication; - Subnets = subnets; - UploadMbps = uploadMbps; + AupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + AupEnabled = aupEnabled; + AupForceSslInspection = aupForceSslInspection; + AupTimeoutInDays = aupTimeoutInDays; + AuthRequired = authRequired; + CautionEnabled = cautionEnabled; + DnBandwidth = dnBandwidth; + IdleTimeInMinutes = idleTimeInMinutes; + Name = name; + OfwEnabled = ofwEnabled; + SurrogateIp = surrogateIp; + SurrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + SurrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + UpBandwidth = upBandwidth; } } } diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateBgpConfig.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateBgpConfig.cs index 2da3e372..f29149aa 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateBgpConfig.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateBgpConfig.cs @@ -34,8 +34,7 @@ public sealed class GatewaytemplateBgpConfig /// public readonly string? ExportPolicy; /// - /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - /// for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + /// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this /// public readonly bool? ExtendedV4Nexthop; /// diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateNetwork.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateNetwork.cs index 68f72add..e60aedab 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateNetwork.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateNetwork.cs @@ -39,6 +39,9 @@ public sealed class GatewaytemplateNetwork public readonly ImmutableArray RoutedForNetworks; public readonly string Subnet; public readonly string? Subnet6; + /// + /// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + /// public readonly ImmutableDictionary? Tenants; public readonly string? VlanId; /// diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkInternetAccess.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkInternetAccess.cs index 889acbfd..bf831567 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkInternetAccess.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkInternetAccess.cs @@ -15,7 +15,7 @@ public sealed class GatewaytemplateNetworkInternetAccess { public readonly bool? CreateSimpleServicePolicy; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public readonly ImmutableDictionary? DestinationNat; public readonly bool? Enabled; @@ -24,7 +24,7 @@ public sealed class GatewaytemplateNetworkInternetAccess /// public readonly bool? Restricted; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public readonly ImmutableDictionary? StaticNat; diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkInternetAccessDestinationNat.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkInternetAccessDestinationNat.cs index cf6ad052..b38659ff 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkInternetAccessDestinationNat.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkInternetAccessDestinationNat.cs @@ -13,9 +13,19 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class GatewaytemplateNetworkInternetAccessDestinationNat { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// public readonly string? InternalIp; public readonly string? Name; - public readonly int? Port; + /// + /// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + /// + public readonly string? Port; + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + /// + public readonly string? WanName; [OutputConstructor] private GatewaytemplateNetworkInternetAccessDestinationNat( @@ -23,11 +33,14 @@ private GatewaytemplateNetworkInternetAccessDestinationNat( string? name, - int? port) + string? port, + + string? wanName) { InternalIp = internalIp; Name = name; Port = port; + WanName = wanName; } } } diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkInternetAccessStaticNat.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkInternetAccessStaticNat.cs index 6db13cab..0a5f64e8 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkInternetAccessStaticNat.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkInternetAccessStaticNat.cs @@ -13,18 +13,21 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class GatewaytemplateNetworkInternetAccessStaticNat { - public readonly string? InternalIp; - public readonly string? Name; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + /// + public readonly string InternalIp; + public readonly string Name; + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") /// public readonly string? WanName; [OutputConstructor] private GatewaytemplateNetworkInternetAccessStaticNat( - string? internalIp, + string internalIp, - string? name, + string name, string? wanName) { diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkVpnAccess.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkVpnAccess.cs index a9d4db28..16bdadff 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkVpnAccess.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkVpnAccess.cs @@ -22,7 +22,7 @@ public sealed class GatewaytemplateNetworkVpnAccess /// public readonly bool? AllowPing; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public readonly ImmutableDictionary? DestinationNat; /// @@ -38,13 +38,11 @@ public sealed class GatewaytemplateNetworkVpnAccess /// public readonly bool? NoReadvertiseToLanOspf; /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// public readonly bool? NoReadvertiseToOverlay; /// - /// by default, the routes are only readvertised toward the same vrf on spoke - /// to allow it to be leaked to other vrfs + /// by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs /// public readonly ImmutableArray OtherVrfs; /// @@ -56,12 +54,11 @@ public sealed class GatewaytemplateNetworkVpnAccess /// public readonly Outputs.GatewaytemplateNetworkVpnAccessSourceNat? SourceNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public readonly ImmutableDictionary? StaticNat; /// - /// toward overlay - /// how HUB should deal with routes it received from Spokes + /// toward overlay, how HUB should deal with routes it received from Spokes /// public readonly string? SummarizedSubnet; /// diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkVpnAccessDestinationNat.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkVpnAccessDestinationNat.cs index 106c228c..a5eeb322 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkVpnAccessDestinationNat.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkVpnAccessDestinationNat.cs @@ -13,9 +13,12 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class GatewaytemplateNetworkVpnAccessDestinationNat { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// public readonly string? InternalIp; public readonly string? Name; - public readonly int? Port; + public readonly string? Port; [OutputConstructor] private GatewaytemplateNetworkVpnAccessDestinationNat( @@ -23,7 +26,7 @@ private GatewaytemplateNetworkVpnAccessDestinationNat( string? name, - int? port) + string? port) { InternalIp = internalIp; Name = name; diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkVpnAccessStaticNat.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkVpnAccessStaticNat.cs index 82a0bd4f..583de537 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkVpnAccessStaticNat.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateNetworkVpnAccessStaticNat.cs @@ -13,24 +13,20 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class GatewaytemplateNetworkVpnAccessStaticNat { - public readonly string? InternalIp; - public readonly string? Name; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") /// - public readonly string? WanName; + public readonly string InternalIp; + public readonly string Name; [OutputConstructor] private GatewaytemplateNetworkVpnAccessStaticNat( - string? internalIp, + string internalIp, - string? name, - - string? wanName) + string name) { InternalIp = internalIp; Name = name; - WanName = wanName; } } } diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfig.cs b/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfig.cs index 39effdb3..6f3a128f 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfig.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfig.cs @@ -22,9 +22,7 @@ public sealed class GatewaytemplatePortConfig /// public readonly string? AeIdx; /// - /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - /// Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - /// Note: Turning this on will enable force-up on one of the interfaces in the bundle only + /// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only /// public readonly bool? AeLacpForceUp; public readonly bool? Aggregated; @@ -32,6 +30,9 @@ public sealed class GatewaytemplatePortConfig /// if want to generate port up/down alarm, set it to true /// public readonly bool? Critical; + /// + /// Interface Description. Can be a variable (i.e. "{{myvar}}") + /// public readonly string? Description; public readonly bool? DisableAutoneg; /// @@ -43,13 +44,11 @@ public sealed class GatewaytemplatePortConfig /// public readonly string? DslType; /// - /// if `wan_type`==`dsl` - /// 16 bit int + /// if `wan_type`==`dsl`, 16 bit int /// public readonly int? DslVci; /// - /// if `wan_type`==`dsl` - /// 8 bit int + /// if `wan_type`==`dsl`, 8 bit int /// public readonly int? DslVpi; /// @@ -83,7 +82,7 @@ public sealed class GatewaytemplatePortConfig /// public readonly string? Name; /// - /// if `usage`==`lan` + /// if `usage`==`lan`, name of the `junipermist.org.Network` resource /// public readonly ImmutableArray Networks; /// @@ -92,7 +91,7 @@ public sealed class GatewaytemplatePortConfig public readonly int? OuterVlanId; public readonly bool? PoeDisabled; /// - /// if `usage`==`lan` + /// Only for SRX and if `usage`==`lan`, the Untagged VLAN Network /// public readonly string? PortNetwork; /// @@ -129,36 +128,37 @@ public sealed class GatewaytemplatePortConfig /// port usage name. enum: `ha_control`, `ha_data`, `lan`, `wan` /// public readonly string Usage; - /// - /// if WAN interface is on a VLAN - /// - public readonly int? VlanId; + public readonly string? VlanId; /// /// Property key is the VPN name /// public readonly ImmutableDictionary? VpnPaths; /// - /// when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + /// Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` /// public readonly string? WanArpPolicer; /// - /// optional, if spoke should reach this port by a different IP + /// Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP /// public readonly string? WanExtIp; /// - /// Property Key is the destianation CIDR (e.g "100.100.100.0/24") + /// Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") /// public readonly ImmutableDictionary? WanExtraRoutes; /// - /// if `usage`==`wan` + /// Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + /// + public readonly ImmutableArray WanNetworks; + /// + /// Only if `usage`==`wan` /// public readonly Outputs.GatewaytemplatePortConfigWanProbeOverride? WanProbeOverride; /// - /// optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + /// Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip /// public readonly Outputs.GatewaytemplatePortConfigWanSourceNat? WanSourceNat; /// - /// if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + /// Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` /// public readonly string? WanType; @@ -232,7 +232,7 @@ private GatewaytemplatePortConfig( string usage, - int? vlanId, + string? vlanId, ImmutableDictionary? vpnPaths, @@ -242,6 +242,8 @@ private GatewaytemplatePortConfig( ImmutableDictionary? wanExtraRoutes, + ImmutableArray wanNetworks, + Outputs.GatewaytemplatePortConfigWanProbeOverride? wanProbeOverride, Outputs.GatewaytemplatePortConfigWanSourceNat? wanSourceNat, @@ -287,6 +289,7 @@ private GatewaytemplatePortConfig( WanArpPolicer = wanArpPolicer; WanExtIp = wanExtIp; WanExtraRoutes = wanExtraRoutes; + WanNetworks = wanNetworks; WanProbeOverride = wanProbeOverride; WanSourceNat = wanSourceNat; WanType = wanType; diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfigIpConfig.cs b/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfigIpConfig.cs index 84475843..7b2321f2 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfigIpConfig.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfigIpConfig.cs @@ -22,12 +22,15 @@ public sealed class GatewaytemplatePortConfigIpConfig /// public readonly ImmutableArray DnsSuffixes; /// - /// except for out-of_band interface (vme/em0/fxp0) + /// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") /// public readonly string? Gateway; + /// + /// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + /// public readonly string? Ip; /// - /// used only if `subnet` is not specified in `networks` + /// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") /// public readonly string? Netmask; /// diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfigTrafficShaping.cs b/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfigTrafficShaping.cs index 33965d37..16129a01 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfigTrafficShaping.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfigTrafficShaping.cs @@ -14,20 +14,26 @@ namespace Pulumi.JuniperMist.Org.Outputs public sealed class GatewaytemplatePortConfigTrafficShaping { /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public readonly ImmutableArray ClassPercentages; public readonly bool? Enabled; + /// + /// Interface Transmit Cap in kbps + /// + public readonly int? MaxTxKbps; [OutputConstructor] private GatewaytemplatePortConfigTrafficShaping( ImmutableArray classPercentages, - bool? enabled) + bool? enabled, + + int? maxTxKbps) { ClassPercentages = classPercentages; Enabled = enabled; + MaxTxKbps = maxTxKbps; } } } diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfigVpnPathsTrafficShaping.cs b/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfigVpnPathsTrafficShaping.cs index 7361abd9..e9a702b4 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfigVpnPathsTrafficShaping.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplatePortConfigVpnPathsTrafficShaping.cs @@ -14,20 +14,26 @@ namespace Pulumi.JuniperMist.Org.Outputs public sealed class GatewaytemplatePortConfigVpnPathsTrafficShaping { /// - /// percentages for differet class of traffic: high / medium / low / best-effort - /// sum must be equal to 100 + /// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 /// public readonly ImmutableArray ClassPercentages; public readonly bool? Enabled; + /// + /// Interface Transmit Cap in kbps + /// + public readonly int? MaxTxKbps; [OutputConstructor] private GatewaytemplatePortConfigVpnPathsTrafficShaping( ImmutableArray classPercentages, - bool? enabled) + bool? enabled, + + int? maxTxKbps) { ClassPercentages = classPercentages; Enabled = enabled; + MaxTxKbps = maxTxKbps; } } } diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateRoutingPoliciesTermAction.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateRoutingPoliciesTermAction.cs index 93749f9d..382228b1 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateRoutingPoliciesTermAction.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateRoutingPoliciesTermAction.cs @@ -20,6 +20,10 @@ public sealed class GatewaytemplateRoutingPoliciesTermAction /// public readonly ImmutableArray AddTargetVrfs; /// + /// route aggregation + /// + public readonly ImmutableArray Aggregates; + /// /// when used as export policy, optional /// public readonly ImmutableArray Communities; @@ -49,6 +53,8 @@ private GatewaytemplateRoutingPoliciesTermAction( ImmutableArray addTargetVrfs, + ImmutableArray aggregates, + ImmutableArray communities, ImmutableArray excludeAsPaths, @@ -64,6 +70,7 @@ private GatewaytemplateRoutingPoliciesTermAction( Accept = accept; AddCommunities = addCommunities; AddTargetVrfs = addTargetVrfs; + Aggregates = aggregates; Communities = communities; ExcludeAsPaths = excludeAsPaths; ExcludeCommunities = excludeCommunities; diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateRoutingPoliciesTermMatching.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateRoutingPoliciesTermMatching.cs index 00cc27c1..fa3b483d 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateRoutingPoliciesTermMatching.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateRoutingPoliciesTermMatching.cs @@ -34,8 +34,7 @@ public sealed class GatewaytemplateRoutingPoliciesTermMatching public readonly ImmutableArray VpnNeighborMacs; public readonly Outputs.GatewaytemplateRoutingPoliciesTermMatchingVpnPathSla? VpnPathSla; /// - /// overlay-facing criteria (used for bgp_config where via=vpn) - /// ordered- + /// overlay-facing criteria (used for bgp_config where via=vpn). ordered- /// public readonly ImmutableArray VpnPaths; diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExists.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExists.cs index d7a26a1b..c482bffd 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExists.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExists.cs @@ -15,8 +15,7 @@ public sealed class GatewaytemplateRoutingPoliciesTermMatchingRouteExists { public readonly string? Route; /// - /// name of the vrf instance - /// it can also be the name of the VPN or wan if they + /// name of the vrf instance, it can also be the name of the VPN or wan if they /// public readonly string? VrfName; diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateServicePolicy.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateServicePolicy.cs index 613ef382..6d263758 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateServicePolicy.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateServicePolicy.cs @@ -32,8 +32,7 @@ public sealed class GatewaytemplateServicePolicy /// public readonly string? Name; /// - /// by default, we derive all paths available and use them - /// optionally, you can customize by using `path_preference` + /// by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` /// public readonly string? PathPreference; /// diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigs.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigs.cs index 184a4dcf..89195316 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigs.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigs.cs @@ -15,63 +15,63 @@ public sealed class GatewaytemplateTunnelConfigs { public readonly Outputs.GatewaytemplateTunnelConfigsAutoProvision? AutoProvision; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// public readonly int? IkeLifetime; /// - /// Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + /// Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` /// public readonly string? IkeMode; /// - /// if `provider`== `custom-ipsec` + /// if `provider`==`custom-ipsec` /// public readonly ImmutableArray IkeProposals; /// - /// if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 /// public readonly int? IpsecLifetime; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// public readonly ImmutableArray IpsecProposals; /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public readonly string? LocalId; /// - /// enum: `active-active`, `active-standby` + /// Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` /// public readonly string? Mode; /// - /// networks reachable via this tunnel + /// if `provider`==`custom-ipsec`, networks reachable via this tunnel /// public readonly ImmutableArray Networks; + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// public readonly Outputs.GatewaytemplateTunnelConfigsPrimary? Primary; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`custom-ipsec` /// public readonly Outputs.GatewaytemplateTunnelConfigsProbe? Probe; /// - /// Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + /// Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` /// public readonly string? Protocol; /// - /// enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + /// Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` /// public readonly string? Provider; /// - /// Only if: - /// * `provider`== `zscaler-ipsec` - /// * `provider`==`jse-ipsec` - /// * `provider`== `custom-ipsec` + /// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public readonly string? Psk; + /// + /// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + /// public readonly Outputs.GatewaytemplateTunnelConfigsSecondary? Secondary; /// - /// Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + /// Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` /// public readonly string? Version; diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsAutoProvision.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsAutoProvision.cs index d7cdac5d..daf1886c 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsAutoProvision.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsAutoProvision.cs @@ -14,8 +14,19 @@ namespace Pulumi.JuniperMist.Org.Outputs public sealed class GatewaytemplateTunnelConfigsAutoProvision { public readonly bool? Enable; + /// + /// API override for POP selection + /// public readonly Outputs.GatewaytemplateTunnelConfigsAutoProvisionLatlng? Latlng; public readonly Outputs.GatewaytemplateTunnelConfigsAutoProvisionPrimary? Primary; + /// + /// enum: `jse-ipsec`, `zscaler-ipsec` + /// + public readonly string Provider; + /// + /// API override for POP selection + /// + public readonly string? Region; public readonly Outputs.GatewaytemplateTunnelConfigsAutoProvisionSecondary? Secondary; [OutputConstructor] @@ -26,11 +37,17 @@ private GatewaytemplateTunnelConfigsAutoProvision( Outputs.GatewaytemplateTunnelConfigsAutoProvisionPrimary? primary, + string provider, + + string? region, + Outputs.GatewaytemplateTunnelConfigsAutoProvisionSecondary? secondary) { Enable = enable; Latlng = latlng; Primary = primary; + Provider = provider; + Region = region; Secondary = secondary; } } diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsAutoProvisionPrimary.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsAutoProvisionPrimary.cs index b0cf224f..dd0c0ffe 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsAutoProvisionPrimary.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsAutoProvisionPrimary.cs @@ -13,7 +13,7 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class GatewaytemplateTunnelConfigsAutoProvisionPrimary { - public readonly string? NumHosts; + public readonly ImmutableArray ProbeIps; /// /// optional, only needed if `vars_only`==`false` /// @@ -21,11 +21,11 @@ public sealed class GatewaytemplateTunnelConfigsAutoProvisionPrimary [OutputConstructor] private GatewaytemplateTunnelConfigsAutoProvisionPrimary( - string? numHosts, + ImmutableArray probeIps, ImmutableArray wanNames) { - NumHosts = numHosts; + ProbeIps = probeIps; WanNames = wanNames; } } diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsAutoProvisionSecondary.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsAutoProvisionSecondary.cs index dc530cbf..2e53f76d 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsAutoProvisionSecondary.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsAutoProvisionSecondary.cs @@ -13,7 +13,7 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class GatewaytemplateTunnelConfigsAutoProvisionSecondary { - public readonly string? NumHosts; + public readonly ImmutableArray ProbeIps; /// /// optional, only needed if `vars_only`==`false` /// @@ -21,11 +21,11 @@ public sealed class GatewaytemplateTunnelConfigsAutoProvisionSecondary [OutputConstructor] private GatewaytemplateTunnelConfigsAutoProvisionSecondary( - string? numHosts, + ImmutableArray probeIps, ImmutableArray wanNames) { - NumHosts = numHosts; + ProbeIps = probeIps; WanNames = wanNames; } } diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsIpsecProposal.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsIpsecProposal.cs index 8a0d9d79..44aaab81 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsIpsecProposal.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsIpsecProposal.cs @@ -18,7 +18,7 @@ public sealed class GatewaytemplateTunnelConfigsIpsecProposal /// public readonly string? AuthAlgo; /// - /// Only if `provider`== `custom-ipsec`. enum: + /// Only if `provider`==`custom-ipsec`. enum: /// * 1 /// * 2 (1024-bit) /// * 5 diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsPrimary.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsPrimary.cs index c86010b8..2367da67 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsPrimary.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsPrimary.cs @@ -15,14 +15,12 @@ public sealed class GatewaytemplateTunnelConfigsPrimary { public readonly ImmutableArray Hosts; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public readonly ImmutableArray InternalIps; public readonly ImmutableArray ProbeIps; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public readonly ImmutableArray RemoteIds; public readonly ImmutableArray WanNames; diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsSecondary.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsSecondary.cs index db865189..4bd4c877 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsSecondary.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelConfigsSecondary.cs @@ -15,14 +15,12 @@ public sealed class GatewaytemplateTunnelConfigsSecondary { public readonly ImmutableArray Hosts; /// - /// Only if: - /// * `provider`== `zscaler-gre` - /// * `provider`== `custom-gre` + /// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` /// public readonly ImmutableArray InternalIps; public readonly ImmutableArray ProbeIps; /// - /// Only if `provider`== `custom-ipsec` + /// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` /// public readonly ImmutableArray RemoteIds; public readonly ImmutableArray WanNames; diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelProviderOptionsJse.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelProviderOptionsJse.cs index f9643759..e4aa7579 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelProviderOptionsJse.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelProviderOptionsJse.cs @@ -13,17 +13,20 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class GatewaytemplateTunnelProviderOptionsJse { - public readonly string? Name; public readonly int? NumUsers; + /// + /// JSE Organization name + /// + public readonly string? OrgName; [OutputConstructor] private GatewaytemplateTunnelProviderOptionsJse( - string? name, + int? numUsers, - int? numUsers) + string? orgName) { - Name = name; NumUsers = numUsers; + OrgName = orgName; } } } diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelProviderOptionsZscaler.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelProviderOptionsZscaler.cs index e43b7499..a0a5dc9b 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelProviderOptionsZscaler.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelProviderOptionsZscaler.cs @@ -13,77 +13,111 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class GatewaytemplateTunnelProviderOptionsZscaler { - public readonly bool? AupAcceptanceRequired; + public readonly bool? AupBlockInternetUntilAccepted; /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - public readonly int? AupExpire; + public readonly bool? AupEnabled; /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - public readonly bool? AupSslProxy; + public readonly bool? AupForceSslInspection; /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - public readonly int? DownloadMbps; + public readonly int? AupTimeoutInDays; /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to enforce user authentication /// - public readonly bool? EnableAup; + public readonly bool? AuthRequired; /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - public readonly bool? EnableCaution; - public readonly bool? EnforceAuthentication; - public readonly string? Name; + public readonly bool? CautionEnabled; /// - /// if `use_xff`==`true` + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + public readonly double? DnBandwidth; + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + public readonly int? IdleTimeInMinutes; + /// + /// if `true`, enable the firewall control option + /// + public readonly bool? OfwEnabled; + /// + /// `sub-locations` can be used for specific uses cases to define different configuration based on the user network /// public readonly ImmutableArray SubLocations; /// - /// the download bandwidth cap of the link, in Mbps + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + public readonly bool? SurrogateIp; + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers /// - public readonly int? UploadMbps; + public readonly bool? SurrogateIpEnforcedForKnownBrowsers; + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + public readonly int? SurrogateRefreshTimeInMinutes; + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + public readonly double? UpBandwidth; /// /// location uses proxy chaining to forward traffic /// - public readonly bool? UseXff; + public readonly bool? XffForwardEnabled; [OutputConstructor] private GatewaytemplateTunnelProviderOptionsZscaler( - bool? aupAcceptanceRequired, + bool? aupBlockInternetUntilAccepted, - int? aupExpire, + bool? aupEnabled, - bool? aupSslProxy, + bool? aupForceSslInspection, - int? downloadMbps, + int? aupTimeoutInDays, - bool? enableAup, + bool? authRequired, - bool? enableCaution, + bool? cautionEnabled, - bool? enforceAuthentication, + double? dnBandwidth, - string? name, + int? idleTimeInMinutes, + + bool? ofwEnabled, ImmutableArray subLocations, - int? uploadMbps, + bool? surrogateIp, + + bool? surrogateIpEnforcedForKnownBrowsers, + + int? surrogateRefreshTimeInMinutes, + + double? upBandwidth, - bool? useXff) + bool? xffForwardEnabled) { - AupAcceptanceRequired = aupAcceptanceRequired; - AupExpire = aupExpire; - AupSslProxy = aupSslProxy; - DownloadMbps = downloadMbps; - EnableAup = enableAup; - EnableCaution = enableCaution; - EnforceAuthentication = enforceAuthentication; - Name = name; + AupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + AupEnabled = aupEnabled; + AupForceSslInspection = aupForceSslInspection; + AupTimeoutInDays = aupTimeoutInDays; + AuthRequired = authRequired; + CautionEnabled = cautionEnabled; + DnBandwidth = dnBandwidth; + IdleTimeInMinutes = idleTimeInMinutes; + OfwEnabled = ofwEnabled; SubLocations = subLocations; - UploadMbps = uploadMbps; - UseXff = useXff; + SurrogateIp = surrogateIp; + SurrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + SurrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + UpBandwidth = upBandwidth; + XffForwardEnabled = xffForwardEnabled; } } } diff --git a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocation.cs b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocation.cs index 306186d6..b1bc4c91 100644 --- a/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocation.cs +++ b/sdk/dotnet/Org/Outputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocation.cs @@ -13,63 +13,104 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class GatewaytemplateTunnelProviderOptionsZscalerSubLocation { - public readonly bool? AupAcceptanceRequired; + public readonly bool? AupBlockInternetUntilAccepted; /// - /// days before AUP is requested again + /// Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) /// - public readonly int? AupExpire; + public readonly bool? AupEnabled; /// /// proxy HTTPs traffic, requiring Zscaler cert to be installed in browser /// - public readonly bool? AupSslProxy; + public readonly bool? AupForceSslInspection; /// - /// the download bandwidth cap of the link, in Mbps + /// Required if `aup_enabled`==`true`. Days before AUP is requested again /// - public readonly int? DownloadMbps; + public readonly int? AupTimeoutInDays; /// - /// if `use_xff`==`true`, display Acceptable Use Policy (AUP) + /// Enable this option to authenticate users /// - public readonly bool? EnableAup; + public readonly bool? AuthRequired; /// - /// when `enforce_authentication`==`false`, display caution notification for non-authenticated users + /// Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users /// - public readonly bool? EnableCaution; - public readonly bool? EnforceAuthentication; - public readonly ImmutableArray Subnets; + public readonly bool? CautionEnabled; /// - /// the download bandwidth cap of the link, in Mbps + /// the download bandwidth cap of the link, in Mbps. Disabled if not set /// - public readonly int? UploadMbps; + public readonly double? DnBandwidth; + /// + /// Required if `surrogate_IP`==`true`, idle Time to Disassociation + /// + public readonly int? IdleTimeInMinutes; + /// + /// Network name + /// + public readonly string? Name; + /// + /// if `true`, enable the firewall control option + /// + public readonly bool? OfwEnabled; + /// + /// Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + /// + public readonly bool? SurrogateIp; + /// + /// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + /// + public readonly bool? SurrogateIpEnforcedForKnownBrowsers; + /// + /// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + /// + public readonly int? SurrogateRefreshTimeInMinutes; + /// + /// the download bandwidth cap of the link, in Mbps. Disabled if not set + /// + public readonly double? UpBandwidth; [OutputConstructor] private GatewaytemplateTunnelProviderOptionsZscalerSubLocation( - bool? aupAcceptanceRequired, + bool? aupBlockInternetUntilAccepted, + + bool? aupEnabled, + + bool? aupForceSslInspection, + + int? aupTimeoutInDays, + + bool? authRequired, + + bool? cautionEnabled, - int? aupExpire, + double? dnBandwidth, - bool? aupSslProxy, + int? idleTimeInMinutes, - int? downloadMbps, + string? name, - bool? enableAup, + bool? ofwEnabled, - bool? enableCaution, + bool? surrogateIp, - bool? enforceAuthentication, + bool? surrogateIpEnforcedForKnownBrowsers, - ImmutableArray subnets, + int? surrogateRefreshTimeInMinutes, - int? uploadMbps) + double? upBandwidth) { - AupAcceptanceRequired = aupAcceptanceRequired; - AupExpire = aupExpire; - AupSslProxy = aupSslProxy; - DownloadMbps = downloadMbps; - EnableAup = enableAup; - EnableCaution = enableCaution; - EnforceAuthentication = enforceAuthentication; - Subnets = subnets; - UploadMbps = uploadMbps; + AupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + AupEnabled = aupEnabled; + AupForceSslInspection = aupForceSslInspection; + AupTimeoutInDays = aupTimeoutInDays; + AuthRequired = authRequired; + CautionEnabled = cautionEnabled; + DnBandwidth = dnBandwidth; + IdleTimeInMinutes = idleTimeInMinutes; + Name = name; + OfwEnabled = ofwEnabled; + SurrogateIp = surrogateIp; + SurrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + SurrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + UpBandwidth = upBandwidth; } } } diff --git a/sdk/dotnet/Org/Outputs/NetworkInternetAccess.cs b/sdk/dotnet/Org/Outputs/NetworkInternetAccess.cs index f469be78..6ba874a1 100644 --- a/sdk/dotnet/Org/Outputs/NetworkInternetAccess.cs +++ b/sdk/dotnet/Org/Outputs/NetworkInternetAccess.cs @@ -15,7 +15,7 @@ public sealed class NetworkInternetAccess { public readonly bool? CreateSimpleServicePolicy; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public readonly ImmutableDictionary? DestinationNat; public readonly bool? Enabled; @@ -24,7 +24,7 @@ public sealed class NetworkInternetAccess /// public readonly bool? Restricted; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public readonly ImmutableDictionary? StaticNat; diff --git a/sdk/dotnet/Org/Outputs/NetworkInternetAccessDestinationNat.cs b/sdk/dotnet/Org/Outputs/NetworkInternetAccessDestinationNat.cs index ab38bfd9..0e989a1e 100644 --- a/sdk/dotnet/Org/Outputs/NetworkInternetAccessDestinationNat.cs +++ b/sdk/dotnet/Org/Outputs/NetworkInternetAccessDestinationNat.cs @@ -13,9 +13,19 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class NetworkInternetAccessDestinationNat { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// public readonly string? InternalIp; public readonly string? Name; - public readonly int? Port; + /// + /// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + /// + public readonly string? Port; + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + /// + public readonly string? WanName; [OutputConstructor] private NetworkInternetAccessDestinationNat( @@ -23,11 +33,14 @@ private NetworkInternetAccessDestinationNat( string? name, - int? port) + string? port, + + string? wanName) { InternalIp = internalIp; Name = name; Port = port; + WanName = wanName; } } } diff --git a/sdk/dotnet/Org/Outputs/NetworkInternetAccessStaticNat.cs b/sdk/dotnet/Org/Outputs/NetworkInternetAccessStaticNat.cs index 2bbf2f80..0930f9e3 100644 --- a/sdk/dotnet/Org/Outputs/NetworkInternetAccessStaticNat.cs +++ b/sdk/dotnet/Org/Outputs/NetworkInternetAccessStaticNat.cs @@ -13,18 +13,21 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class NetworkInternetAccessStaticNat { - public readonly string? InternalIp; - public readonly string? Name; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + /// + public readonly string InternalIp; + public readonly string Name; + /// + /// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") /// public readonly string? WanName; [OutputConstructor] private NetworkInternetAccessStaticNat( - string? internalIp, + string internalIp, - string? name, + string name, string? wanName) { diff --git a/sdk/dotnet/Org/Outputs/NetworkMulticast.cs b/sdk/dotnet/Org/Outputs/NetworkMulticast.cs new file mode 100644 index 00000000..5657d900 --- /dev/null +++ b/sdk/dotnet/Org/Outputs/NetworkMulticast.cs @@ -0,0 +1,39 @@ +// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +using System; +using System.Collections.Generic; +using System.Collections.Immutable; +using System.Threading.Tasks; +using Pulumi.Serialization; + +namespace Pulumi.JuniperMist.Org.Outputs +{ + + [OutputType] + public sealed class NetworkMulticast + { + /// + /// if the network will only be the soruce of the multicast traffic, IGMP can be disabled + /// + public readonly bool? DisableIgmp; + public readonly bool? Enabled; + /// + /// Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + /// + public readonly ImmutableDictionary? Groups; + + [OutputConstructor] + private NetworkMulticast( + bool? disableIgmp, + + bool? enabled, + + ImmutableDictionary? groups) + { + DisableIgmp = disableIgmp; + Enabled = enabled; + Groups = groups; + } + } +} diff --git a/sdk/dotnet/Device/Outputs/SwitchEvpnConfig.cs b/sdk/dotnet/Org/Outputs/NetworkMulticastGroups.cs similarity index 52% rename from sdk/dotnet/Device/Outputs/SwitchEvpnConfig.cs rename to sdk/dotnet/Org/Outputs/NetworkMulticastGroups.cs index 66113cb4..fd093f3b 100644 --- a/sdk/dotnet/Device/Outputs/SwitchEvpnConfig.cs +++ b/sdk/dotnet/Org/Outputs/NetworkMulticastGroups.cs @@ -7,26 +7,21 @@ using System.Threading.Tasks; using Pulumi.Serialization; -namespace Pulumi.JuniperMist.Device.Outputs +namespace Pulumi.JuniperMist.Org.Outputs { [OutputType] - public sealed class SwitchEvpnConfig + public sealed class NetworkMulticastGroups { - public readonly bool? Enabled; /// - /// enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` + /// RP (rendezvous point) IP Address /// - public readonly string? Role; + public readonly string? RpIp; [OutputConstructor] - private SwitchEvpnConfig( - bool? enabled, - - string? role) + private NetworkMulticastGroups(string? rpIp) { - Enabled = enabled; - Role = role; + RpIp = rpIp; } } } diff --git a/sdk/dotnet/Org/Outputs/NetworkVpnAccess.cs b/sdk/dotnet/Org/Outputs/NetworkVpnAccess.cs index 002d1f43..916b3838 100644 --- a/sdk/dotnet/Org/Outputs/NetworkVpnAccess.cs +++ b/sdk/dotnet/Org/Outputs/NetworkVpnAccess.cs @@ -22,7 +22,7 @@ public sealed class NetworkVpnAccess /// public readonly bool? AllowPing; /// - /// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + /// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined /// public readonly ImmutableDictionary? DestinationNat; /// @@ -56,7 +56,7 @@ public sealed class NetworkVpnAccess /// public readonly Outputs.NetworkVpnAccessSourceNat? SourceNat; /// - /// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + /// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") /// public readonly ImmutableDictionary? StaticNat; /// diff --git a/sdk/dotnet/Org/Outputs/NetworkVpnAccessDestinationNat.cs b/sdk/dotnet/Org/Outputs/NetworkVpnAccessDestinationNat.cs index 1a4522f7..3551cb84 100644 --- a/sdk/dotnet/Org/Outputs/NetworkVpnAccessDestinationNat.cs +++ b/sdk/dotnet/Org/Outputs/NetworkVpnAccessDestinationNat.cs @@ -13,9 +13,12 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class NetworkVpnAccessDestinationNat { + /// + /// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + /// public readonly string? InternalIp; public readonly string? Name; - public readonly int? Port; + public readonly string? Port; [OutputConstructor] private NetworkVpnAccessDestinationNat( @@ -23,7 +26,7 @@ private NetworkVpnAccessDestinationNat( string? name, - int? port) + string? port) { InternalIp = internalIp; Name = name; diff --git a/sdk/dotnet/Org/Outputs/NetworkVpnAccessStaticNat.cs b/sdk/dotnet/Org/Outputs/NetworkVpnAccessStaticNat.cs index 7de1d183..9b1b56c4 100644 --- a/sdk/dotnet/Org/Outputs/NetworkVpnAccessStaticNat.cs +++ b/sdk/dotnet/Org/Outputs/NetworkVpnAccessStaticNat.cs @@ -13,24 +13,20 @@ namespace Pulumi.JuniperMist.Org.Outputs [OutputType] public sealed class NetworkVpnAccessStaticNat { - public readonly string? InternalIp; - public readonly string? Name; /// - /// If not set, we configure the nat policies against all WAN ports for simplicity + /// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") /// - public readonly string? WanName; + public readonly string InternalIp; + public readonly string Name; [OutputConstructor] private NetworkVpnAccessStaticNat( - string? internalIp, + string internalIp, - string? name, - - string? wanName) + string name) { InternalIp = internalIp; Name = name; - WanName = wanName; } } } diff --git a/sdk/dotnet/Org/Outputs/NetworktemplateAclPolicy.cs b/sdk/dotnet/Org/Outputs/NetworktemplateAclPolicy.cs index f0a614a2..feda0d53 100644 --- a/sdk/dotnet/Org/Outputs/NetworktemplateAclPolicy.cs +++ b/sdk/dotnet/Org/Outputs/NetworktemplateAclPolicy.cs @@ -14,14 +14,16 @@ namespace Pulumi.JuniperMist.Org.Outputs public sealed class NetworktemplateAclPolicy { /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Actions: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public readonly ImmutableArray Actions; public readonly string? Name; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Source Tags: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public readonly ImmutableArray SrcTags; diff --git a/sdk/dotnet/Org/Outputs/NetworktemplateAclTags.cs b/sdk/dotnet/Org/Outputs/NetworktemplateAclTags.cs index 82a21689..d8b180f2 100644 --- a/sdk/dotnet/Org/Outputs/NetworktemplateAclTags.cs +++ b/sdk/dotnet/Org/Outputs/NetworktemplateAclTags.cs @@ -15,9 +15,9 @@ public sealed class NetworktemplateAclTags { /// /// required if - /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - /// - `type`==`gbp_resource` - /// - `type`==`static_gbp` (applying gbp tag against matching conditions) + /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + /// - `type`==`gbp_resource` + /// - `type`==`static_gbp` (applying gbp tag against matching conditions) /// public readonly int? GbpTag; /// @@ -43,8 +43,7 @@ public sealed class NetworktemplateAclTags /// public readonly string? RadiusGroup; /// - /// if `type`==`resource` or `type`==`gbp_resource` - /// empty means unrestricted, i.e. any + /// if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any /// public readonly ImmutableArray Specs; /// diff --git a/sdk/dotnet/Org/Outputs/NetworktemplateAclTagsSpec.cs b/sdk/dotnet/Org/Outputs/NetworktemplateAclTagsSpec.cs index dd2ab0e0..ae54156e 100644 --- a/sdk/dotnet/Org/Outputs/NetworktemplateAclTagsSpec.cs +++ b/sdk/dotnet/Org/Outputs/NetworktemplateAclTagsSpec.cs @@ -18,7 +18,7 @@ public sealed class NetworktemplateAclTagsSpec /// public readonly string? PortRange; /// - /// `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + /// `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 /// public readonly string? Protocol; diff --git a/sdk/dotnet/Org/Outputs/NetworktemplateNetworks.cs b/sdk/dotnet/Org/Outputs/NetworktemplateNetworks.cs index 19f1ffe7..40984440 100644 --- a/sdk/dotnet/Org/Outputs/NetworktemplateNetworks.cs +++ b/sdk/dotnet/Org/Outputs/NetworktemplateNetworks.cs @@ -22,8 +22,7 @@ public sealed class NetworktemplateNetworks /// public readonly string? Gateway6; /// - /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - /// NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set /// public readonly bool? Isolation; public readonly string? IsolationVlanId; diff --git a/sdk/dotnet/Org/Outputs/NetworktemplatePortUsages.cs b/sdk/dotnet/Org/Outputs/NetworktemplatePortUsages.cs index 64980c5a..953c0c91 100644 --- a/sdk/dotnet/Org/Outputs/NetworktemplatePortUsages.cs +++ b/sdk/dotnet/Org/Outputs/NetworktemplatePortUsages.cs @@ -18,9 +18,7 @@ public sealed class NetworktemplatePortUsages /// public readonly bool? AllNetworks; /// - /// 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 allow_dhcpd is a tri_state. - /// 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. + /// 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 allow_dhcpd is a tri_state. 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. /// public readonly bool? AllowDhcpd; /// @@ -68,8 +66,7 @@ public sealed class NetworktemplatePortUsages /// public readonly string? GuestNetwork; /// - /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - /// NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together /// public readonly bool? InterSwitchLink; /// @@ -141,8 +138,7 @@ public sealed class NetworktemplatePortUsages /// public readonly string? Speed; /// - /// Switch storm control - /// Only if `mode`!=`dynamic` + /// Switch storm control. Only if `mode`!=`dynamic` /// public readonly Outputs.NetworktemplatePortUsagesStormControl? StormControl; /// diff --git a/sdk/dotnet/Org/Outputs/NetworktemplateRadiusConfig.cs b/sdk/dotnet/Org/Outputs/NetworktemplateRadiusConfig.cs index b22c18bd..250e3e2f 100644 --- a/sdk/dotnet/Org/Outputs/NetworktemplateRadiusConfig.cs +++ b/sdk/dotnet/Org/Outputs/NetworktemplateRadiusConfig.cs @@ -28,8 +28,7 @@ public sealed class NetworktemplateRadiusConfig /// public readonly int? AuthServersTimeout; /// - /// use `network`or `source_ip` - /// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + /// use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip /// public readonly string? Network; /// diff --git a/sdk/dotnet/Org/Outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.cs b/sdk/dotnet/Org/Outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.cs index ac777974..5a1cbc20 100644 --- a/sdk/dotnet/Org/Outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.cs +++ b/sdk/dotnet/Org/Outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.cs @@ -14,8 +14,7 @@ namespace Pulumi.JuniperMist.Org.Outputs public sealed class NetworktemplateSnmpConfigV3ConfigUsmUser { /// - /// Not required if `authentication_type`==`authentication_none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters. + /// Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. /// public readonly string? AuthenticationPassword; /// @@ -23,8 +22,7 @@ public sealed class NetworktemplateSnmpConfigV3ConfigUsmUser /// public readonly string? AuthenticationType; /// - /// Not required if `encryption_type`==`privacy-none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters + /// Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters /// public readonly string? EncryptionPassword; /// diff --git a/sdk/dotnet/Org/Outputs/NetworktemplateSwitchMatchingRule.cs b/sdk/dotnet/Org/Outputs/NetworktemplateSwitchMatchingRule.cs index c45b3a11..a9c0f91f 100644 --- a/sdk/dotnet/Org/Outputs/NetworktemplateSwitchMatchingRule.cs +++ b/sdk/dotnet/Org/Outputs/NetworktemplateSwitchMatchingRule.cs @@ -52,8 +52,7 @@ public sealed class NetworktemplateSwitchMatchingRule /// public readonly ImmutableDictionary? PortConfig; /// - /// Property key is the port mirroring instance name - /// port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed /// public readonly ImmutableDictionary? PortMirroring; diff --git a/sdk/dotnet/Org/Outputs/WlanAppLimit.cs b/sdk/dotnet/Org/Outputs/WlanAppLimit.cs index b77a6dd6..25daf8ea 100644 --- a/sdk/dotnet/Org/Outputs/WlanAppLimit.cs +++ b/sdk/dotnet/Org/Outputs/WlanAppLimit.cs @@ -20,8 +20,7 @@ public sealed class WlanAppLimit public readonly ImmutableDictionary? Apps; public readonly bool? Enabled; /// - /// Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - /// Property key is the wxtag id + /// Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` /// public readonly ImmutableDictionary? WxtagIds; diff --git a/sdk/dotnet/Org/Outputs/WlanDnsServerRewrite.cs b/sdk/dotnet/Org/Outputs/WlanDnsServerRewrite.cs index 3b3651ec..661f02c6 100644 --- a/sdk/dotnet/Org/Outputs/WlanDnsServerRewrite.cs +++ b/sdk/dotnet/Org/Outputs/WlanDnsServerRewrite.cs @@ -15,8 +15,7 @@ public sealed class WlanDnsServerRewrite { public readonly bool? Enabled; /// - /// map between radius_group and the desired DNS server (IPv4 only) - /// Property key is the RADIUS group, property value is the desired DNS Server + /// map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server /// public readonly ImmutableDictionary? RadiusGroups; diff --git a/sdk/dotnet/Org/Outputs/WlanDynamicPsk.cs b/sdk/dotnet/Org/Outputs/WlanDynamicPsk.cs index f007974f..c7f47735 100644 --- a/sdk/dotnet/Org/Outputs/WlanDynamicPsk.cs +++ b/sdk/dotnet/Org/Outputs/WlanDynamicPsk.cs @@ -20,8 +20,7 @@ public sealed class WlanDynamicPsk public readonly string? DefaultVlanId; public readonly bool? Enabled; /// - /// when 11r is enabled, we'll try to use the cached PMK, this can be disabled - /// `false` means auto + /// when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto /// public readonly bool? ForceLookup; /// diff --git a/sdk/dotnet/Org/Outputs/WlanRadsec.cs b/sdk/dotnet/Org/Outputs/WlanRadsec.cs index 1e1fb8e5..d3b28a31 100644 --- a/sdk/dotnet/Org/Outputs/WlanRadsec.cs +++ b/sdk/dotnet/Org/Outputs/WlanRadsec.cs @@ -17,13 +17,11 @@ public sealed class WlanRadsec public readonly bool? Enabled; public readonly int? IdleTimeout; /// - /// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - /// Org mxedge(s) identified by mxcluster_ids + /// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids /// public readonly ImmutableArray MxclusterIds; /// - /// default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - /// when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + /// default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` /// public readonly ImmutableArray ProxyHosts; /// diff --git a/sdk/dotnet/Org/Sso.cs b/sdk/dotnet/Org/Sso.cs index d19c4672..a380794a 100644 --- a/sdk/dotnet/Org/Sso.cs +++ b/sdk/dotnet/Org/Sso.cs @@ -123,11 +123,11 @@ public partial class Sso : global::Pulumi.CustomResource public Output OrgId { get; private set; } = null!; /// - /// custom role attribute parsing scheme\n\nSupported Role Parsing - /// Schemes\n<table><tr><th>Name</th><th>Scheme</th></tr><tr><td>cn</td><td><ul><li>The expected role attribute format in - /// SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected - /// (or the entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - /// is “cn”</li></ul></td></tr></table> + /// custom role attribute parsing scheme. Supported Role Parsing Schemes + /// <table><tr><th>Name</th><th>Scheme</th></tr><tr><td>`cn`</td><td><ul><li>The expected role attribute format in SAML + /// Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected (or the + /// entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + /// “cn”</li></ul></td></tr></table> /// [Output("roleAttrExtraction")] public Output RoleAttrExtraction { get; private set; } = null!; @@ -138,19 +138,6 @@ public partial class Sso : global::Pulumi.CustomResource [Output("roleAttrFrom")] public Output RoleAttrFrom { get; private set; } = null!; - /// - /// if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - /// - [Output("scimEnabled")] - public Output ScimEnabled { get; private set; } = null!; - - /// - /// if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - /// Authorization header of SCIM provisioning requests by the IDP - /// - [Output("scimSecretToken")] - public Output ScimSecretToken { get; private set; } = null!; - /// /// Create a Sso resource with the given unique name, arguments, and options. @@ -258,11 +245,11 @@ public sealed class SsoArgs : global::Pulumi.ResourceArgs public Input OrgId { get; set; } = null!; /// - /// custom role attribute parsing scheme\n\nSupported Role Parsing - /// Schemes\n<table><tr><th>Name</th><th>Scheme</th></tr><tr><td>cn</td><td><ul><li>The expected role attribute format in - /// SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected - /// (or the entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - /// is “cn”</li></ul></td></tr></table> + /// custom role attribute parsing scheme. Supported Role Parsing Schemes + /// <table><tr><th>Name</th><th>Scheme</th></tr><tr><td>`cn`</td><td><ul><li>The expected role attribute format in SAML + /// Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected (or the + /// entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + /// “cn”</li></ul></td></tr></table> /// [Input("roleAttrExtraction")] public Input? RoleAttrExtraction { get; set; } @@ -273,19 +260,6 @@ public sealed class SsoArgs : global::Pulumi.ResourceArgs [Input("roleAttrFrom")] public Input? RoleAttrFrom { get; set; } - /// - /// if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - /// - [Input("scimEnabled")] - public Input? ScimEnabled { get; set; } - - /// - /// if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - /// Authorization header of SCIM provisioning requests by the IDP - /// - [Input("scimSecretToken")] - public Input? ScimSecretToken { get; set; } - public SsoArgs() { } @@ -362,11 +336,11 @@ public sealed class SsoState : global::Pulumi.ResourceArgs public Input? OrgId { get; set; } /// - /// custom role attribute parsing scheme\n\nSupported Role Parsing - /// Schemes\n<table><tr><th>Name</th><th>Scheme</th></tr><tr><td>cn</td><td><ul><li>The expected role attribute format in - /// SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected - /// (or the entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - /// is “cn”</li></ul></td></tr></table> + /// custom role attribute parsing scheme. Supported Role Parsing Schemes + /// <table><tr><th>Name</th><th>Scheme</th></tr><tr><td>`cn`</td><td><ul><li>The expected role attribute format in SAML + /// Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected (or the + /// entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + /// “cn”</li></ul></td></tr></table> /// [Input("roleAttrExtraction")] public Input? RoleAttrExtraction { get; set; } @@ -377,19 +351,6 @@ public sealed class SsoState : global::Pulumi.ResourceArgs [Input("roleAttrFrom")] public Input? RoleAttrFrom { get; set; } - /// - /// if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - /// - [Input("scimEnabled")] - public Input? ScimEnabled { get; set; } - - /// - /// if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - /// Authorization header of SCIM provisioning requests by the IDP - /// - [Input("scimSecretToken")] - public Input? ScimSecretToken { get; set; } - public SsoState() { } diff --git a/sdk/dotnet/Provider.cs b/sdk/dotnet/Provider.cs index 79e3c285..df0883b2 100644 --- a/sdk/dotnet/Provider.cs +++ b/sdk/dotnet/Provider.cs @@ -84,6 +84,12 @@ private static CustomResourceOptions MakeResourceOptions(CustomResourceOptions? public sealed class ProviderArgs : global::Pulumi.ResourceArgs { + /// + /// Flag to enable debugging API calls. Default is false. + /// + [Input("apiDebug", json: true)] + public Input? ApiDebug { get; set; } + /// /// Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 /// results in infinite timeout. diff --git a/sdk/dotnet/Site/Inputs/NetworktemplateAclPolicyArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplateAclPolicyArgs.cs index a8ff9593..c9be6d14 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplateAclPolicyArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplateAclPolicyArgs.cs @@ -16,8 +16,9 @@ public sealed class NetworktemplateAclPolicyArgs : global::Pulumi.ResourceArgs private InputList? _actions; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Actions: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public InputList Actions { @@ -32,8 +33,9 @@ public InputList Actions private InputList? _srcTags; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Source Tags: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public InputList SrcTags { diff --git a/sdk/dotnet/Site/Inputs/NetworktemplateAclPolicyGetArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplateAclPolicyGetArgs.cs index fbaf15e8..e07d9035 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplateAclPolicyGetArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplateAclPolicyGetArgs.cs @@ -16,8 +16,9 @@ public sealed class NetworktemplateAclPolicyGetArgs : global::Pulumi.ResourceArg private InputList? _actions; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Actions: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public InputList Actions { @@ -32,8 +33,9 @@ public InputList Actions private InputList? _srcTags; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Source Tags: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public InputList SrcTags { diff --git a/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsArgs.cs index 4ad2113b..5d9aad67 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsArgs.cs @@ -14,9 +14,9 @@ public sealed class NetworktemplateAclTagsArgs : global::Pulumi.ResourceArgs { /// /// required if - /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - /// - `type`==`gbp_resource` - /// - `type`==`static_gbp` (applying gbp tag against matching conditions) + /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + /// - `type`==`gbp_resource` + /// - `type`==`static_gbp` (applying gbp tag against matching conditions) /// [Input("gbpTag")] public Input? GbpTag { get; set; } @@ -59,8 +59,7 @@ public InputList Macs private InputList? _specs; /// - /// if `type`==`resource` or `type`==`gbp_resource` - /// empty means unrestricted, i.e. any + /// if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any /// public InputList Specs { diff --git a/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsGetArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsGetArgs.cs index 8fc73fa8..d122162e 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsGetArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsGetArgs.cs @@ -14,9 +14,9 @@ public sealed class NetworktemplateAclTagsGetArgs : global::Pulumi.ResourceArgs { /// /// required if - /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - /// - `type`==`gbp_resource` - /// - `type`==`static_gbp` (applying gbp tag against matching conditions) + /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + /// - `type`==`gbp_resource` + /// - `type`==`static_gbp` (applying gbp tag against matching conditions) /// [Input("gbpTag")] public Input? GbpTag { get; set; } @@ -59,8 +59,7 @@ public InputList Macs private InputList? _specs; /// - /// if `type`==`resource` or `type`==`gbp_resource` - /// empty means unrestricted, i.e. any + /// if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any /// public InputList Specs { diff --git a/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsSpecArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsSpecArgs.cs index 839f0e5d..4b3007ec 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsSpecArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsSpecArgs.cs @@ -19,7 +19,7 @@ public sealed class NetworktemplateAclTagsSpecArgs : global::Pulumi.ResourceArgs public Input? PortRange { get; set; } /// - /// `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + /// `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 /// [Input("protocol")] public Input? Protocol { get; set; } diff --git a/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsSpecGetArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsSpecGetArgs.cs index dfd78adc..616eb316 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsSpecGetArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplateAclTagsSpecGetArgs.cs @@ -19,7 +19,7 @@ public sealed class NetworktemplateAclTagsSpecGetArgs : global::Pulumi.ResourceA public Input? PortRange { get; set; } /// - /// `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + /// `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 /// [Input("protocol")] public Input? Protocol { get; set; } diff --git a/sdk/dotnet/Site/Inputs/NetworktemplateNetworksArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplateNetworksArgs.cs index 395b7370..ce895240 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplateNetworksArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplateNetworksArgs.cs @@ -25,8 +25,7 @@ public sealed class NetworktemplateNetworksArgs : global::Pulumi.ResourceArgs public Input? Gateway6 { get; set; } /// - /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - /// NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set /// [Input("isolation")] public Input? Isolation { get; set; } diff --git a/sdk/dotnet/Site/Inputs/NetworktemplateNetworksGetArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplateNetworksGetArgs.cs index d5ff1a26..23fe0a36 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplateNetworksGetArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplateNetworksGetArgs.cs @@ -25,8 +25,7 @@ public sealed class NetworktemplateNetworksGetArgs : global::Pulumi.ResourceArgs public Input? Gateway6 { get; set; } /// - /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - /// NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set /// [Input("isolation")] public Input? Isolation { get; set; } diff --git a/sdk/dotnet/Site/Inputs/NetworktemplatePortUsagesArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplatePortUsagesArgs.cs index 202f26f8..aca9b01f 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplatePortUsagesArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplatePortUsagesArgs.cs @@ -19,9 +19,7 @@ public sealed class NetworktemplatePortUsagesArgs : global::Pulumi.ResourceArgs public Input? AllNetworks { get; set; } /// - /// 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 allow_dhcpd is a tri_state. - /// 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. + /// 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 allow_dhcpd is a tri_state. 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. /// [Input("allowDhcpd")] public Input? AllowDhcpd { get; set; } @@ -99,8 +97,7 @@ public InputList DynamicVlanNetworks public Input? GuestNetwork { get; set; } /// - /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - /// NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together /// [Input("interSwitchLink")] public Input? InterSwitchLink { get; set; } @@ -220,8 +217,7 @@ public InputList Rules public Input? Speed { get; set; } /// - /// Switch storm control - /// Only if `mode`!=`dynamic` + /// Switch storm control. Only if `mode`!=`dynamic` /// [Input("stormControl")] public Input? StormControl { get; set; } diff --git a/sdk/dotnet/Site/Inputs/NetworktemplatePortUsagesGetArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplatePortUsagesGetArgs.cs index 4f1a040e..b762540a 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplatePortUsagesGetArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplatePortUsagesGetArgs.cs @@ -19,9 +19,7 @@ public sealed class NetworktemplatePortUsagesGetArgs : global::Pulumi.ResourceAr public Input? AllNetworks { get; set; } /// - /// 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 allow_dhcpd is a tri_state. - /// 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. + /// 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 allow_dhcpd is a tri_state. 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. /// [Input("allowDhcpd")] public Input? AllowDhcpd { get; set; } @@ -99,8 +97,7 @@ public InputList DynamicVlanNetworks public Input? GuestNetwork { get; set; } /// - /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - /// NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together /// [Input("interSwitchLink")] public Input? InterSwitchLink { get; set; } @@ -220,8 +217,7 @@ public InputList Rules public Input? Speed { get; set; } /// - /// Switch storm control - /// Only if `mode`!=`dynamic` + /// Switch storm control. Only if `mode`!=`dynamic` /// [Input("stormControl")] public Input? StormControl { get; set; } diff --git a/sdk/dotnet/Site/Inputs/NetworktemplateRadiusConfigArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplateRadiusConfigArgs.cs index 18fe4f91..a1003d97 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplateRadiusConfigArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplateRadiusConfigArgs.cs @@ -47,8 +47,7 @@ public InputList AuthServers public Input? AuthServersTimeout { get; set; } /// - /// use `network`or `source_ip` - /// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + /// use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip /// [Input("network")] public Input? Network { get; set; } diff --git a/sdk/dotnet/Site/Inputs/NetworktemplateRadiusConfigGetArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplateRadiusConfigGetArgs.cs index 679a7035..227bf047 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplateRadiusConfigGetArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplateRadiusConfigGetArgs.cs @@ -47,8 +47,7 @@ public InputList AuthServer public Input? AuthServersTimeout { get; set; } /// - /// use `network`or `source_ip` - /// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + /// use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip /// [Input("network")] public Input? Network { get; set; } diff --git a/sdk/dotnet/Site/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.cs index b24d2c78..30c9fe30 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.cs @@ -16,8 +16,7 @@ public sealed class NetworktemplateSnmpConfigV3ConfigUsmUserArgs : global::Pulum private Input? _authenticationPassword; /// - /// Not required if `authentication_type`==`authentication_none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters. + /// Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. /// public Input? AuthenticationPassword { @@ -39,8 +38,7 @@ public Input? AuthenticationPassword private Input? _encryptionPassword; /// - /// Not required if `encryption_type`==`privacy-none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters + /// Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters /// public Input? EncryptionPassword { diff --git a/sdk/dotnet/Site/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserGetArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserGetArgs.cs index a38bfeb6..16ace71d 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserGetArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplateSnmpConfigV3ConfigUsmUserGetArgs.cs @@ -16,8 +16,7 @@ public sealed class NetworktemplateSnmpConfigV3ConfigUsmUserGetArgs : global::Pu private Input? _authenticationPassword; /// - /// Not required if `authentication_type`==`authentication_none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters. + /// Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. /// public Input? AuthenticationPassword { @@ -39,8 +38,7 @@ public Input? AuthenticationPassword private Input? _encryptionPassword; /// - /// Not required if `encryption_type`==`privacy-none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters + /// Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters /// public Input? EncryptionPassword { diff --git a/sdk/dotnet/Site/Inputs/NetworktemplateSwitchMatchingRuleArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplateSwitchMatchingRuleArgs.cs index c5f4d4d3..d5cac42c 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplateSwitchMatchingRuleArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplateSwitchMatchingRuleArgs.cs @@ -88,8 +88,7 @@ public InputMap PortConf private InputMap? _portMirroring; /// - /// Property key is the port mirroring instance name - /// port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed /// public InputMap PortMirroring { diff --git a/sdk/dotnet/Site/Inputs/NetworktemplateSwitchMatchingRuleGetArgs.cs b/sdk/dotnet/Site/Inputs/NetworktemplateSwitchMatchingRuleGetArgs.cs index 66504da8..9ea5a4df 100644 --- a/sdk/dotnet/Site/Inputs/NetworktemplateSwitchMatchingRuleGetArgs.cs +++ b/sdk/dotnet/Site/Inputs/NetworktemplateSwitchMatchingRuleGetArgs.cs @@ -88,8 +88,7 @@ public InputMap PortC private InputMap? _portMirroring; /// - /// Property key is the port mirroring instance name - /// port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed /// public InputMap PortMirroring { diff --git a/sdk/dotnet/Site/Inputs/WlanAppLimitArgs.cs b/sdk/dotnet/Site/Inputs/WlanAppLimitArgs.cs index 06601d42..7f232156 100644 --- a/sdk/dotnet/Site/Inputs/WlanAppLimitArgs.cs +++ b/sdk/dotnet/Site/Inputs/WlanAppLimitArgs.cs @@ -32,8 +32,7 @@ public InputMap Apps private InputMap? _wxtagIds; /// - /// Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - /// Property key is the wxtag id + /// Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` /// public InputMap WxtagIds { diff --git a/sdk/dotnet/Site/Inputs/WlanAppLimitGetArgs.cs b/sdk/dotnet/Site/Inputs/WlanAppLimitGetArgs.cs index b11576e3..a6f9c85d 100644 --- a/sdk/dotnet/Site/Inputs/WlanAppLimitGetArgs.cs +++ b/sdk/dotnet/Site/Inputs/WlanAppLimitGetArgs.cs @@ -32,8 +32,7 @@ public InputMap Apps private InputMap? _wxtagIds; /// - /// Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - /// Property key is the wxtag id + /// Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` /// public InputMap WxtagIds { diff --git a/sdk/dotnet/Site/Inputs/WlanDnsServerRewriteArgs.cs b/sdk/dotnet/Site/Inputs/WlanDnsServerRewriteArgs.cs index 4d2de24e..b65385fd 100644 --- a/sdk/dotnet/Site/Inputs/WlanDnsServerRewriteArgs.cs +++ b/sdk/dotnet/Site/Inputs/WlanDnsServerRewriteArgs.cs @@ -19,8 +19,7 @@ public sealed class WlanDnsServerRewriteArgs : global::Pulumi.ResourceArgs private InputMap? _radiusGroups; /// - /// map between radius_group and the desired DNS server (IPv4 only) - /// Property key is the RADIUS group, property value is the desired DNS Server + /// map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server /// public InputMap RadiusGroups { diff --git a/sdk/dotnet/Site/Inputs/WlanDnsServerRewriteGetArgs.cs b/sdk/dotnet/Site/Inputs/WlanDnsServerRewriteGetArgs.cs index bc51d3aa..b727b8bb 100644 --- a/sdk/dotnet/Site/Inputs/WlanDnsServerRewriteGetArgs.cs +++ b/sdk/dotnet/Site/Inputs/WlanDnsServerRewriteGetArgs.cs @@ -19,8 +19,7 @@ public sealed class WlanDnsServerRewriteGetArgs : global::Pulumi.ResourceArgs private InputMap? _radiusGroups; /// - /// map between radius_group and the desired DNS server (IPv4 only) - /// Property key is the RADIUS group, property value is the desired DNS Server + /// map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server /// public InputMap RadiusGroups { diff --git a/sdk/dotnet/Site/Inputs/WlanDynamicPskArgs.cs b/sdk/dotnet/Site/Inputs/WlanDynamicPskArgs.cs index 16b26458..f828ede6 100644 --- a/sdk/dotnet/Site/Inputs/WlanDynamicPskArgs.cs +++ b/sdk/dotnet/Site/Inputs/WlanDynamicPskArgs.cs @@ -35,8 +35,7 @@ public Input? DefaultPsk public Input? Enabled { get; set; } /// - /// when 11r is enabled, we'll try to use the cached PMK, this can be disabled - /// `false` means auto + /// when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto /// [Input("forceLookup")] public Input? ForceLookup { get; set; } diff --git a/sdk/dotnet/Site/Inputs/WlanDynamicPskGetArgs.cs b/sdk/dotnet/Site/Inputs/WlanDynamicPskGetArgs.cs index 6406517d..f4e61f21 100644 --- a/sdk/dotnet/Site/Inputs/WlanDynamicPskGetArgs.cs +++ b/sdk/dotnet/Site/Inputs/WlanDynamicPskGetArgs.cs @@ -35,8 +35,7 @@ public Input? DefaultPsk public Input? Enabled { get; set; } /// - /// when 11r is enabled, we'll try to use the cached PMK, this can be disabled - /// `false` means auto + /// when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto /// [Input("forceLookup")] public Input? ForceLookup { get; set; } diff --git a/sdk/dotnet/Site/Inputs/WlanRadsecArgs.cs b/sdk/dotnet/Site/Inputs/WlanRadsecArgs.cs index 4738c7a8..b5b960c7 100644 --- a/sdk/dotnet/Site/Inputs/WlanRadsecArgs.cs +++ b/sdk/dotnet/Site/Inputs/WlanRadsecArgs.cs @@ -25,8 +25,7 @@ public sealed class WlanRadsecArgs : global::Pulumi.ResourceArgs private InputList? _mxclusterIds; /// - /// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - /// Org mxedge(s) identified by mxcluster_ids + /// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids /// public InputList MxclusterIds { @@ -38,8 +37,7 @@ public InputList MxclusterIds private InputList? _proxyHosts; /// - /// default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - /// when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + /// default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` /// public InputList ProxyHosts { diff --git a/sdk/dotnet/Site/Inputs/WlanRadsecGetArgs.cs b/sdk/dotnet/Site/Inputs/WlanRadsecGetArgs.cs index 41575ffa..365626e4 100644 --- a/sdk/dotnet/Site/Inputs/WlanRadsecGetArgs.cs +++ b/sdk/dotnet/Site/Inputs/WlanRadsecGetArgs.cs @@ -25,8 +25,7 @@ public sealed class WlanRadsecGetArgs : global::Pulumi.ResourceArgs private InputList? _mxclusterIds; /// - /// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - /// Org mxedge(s) identified by mxcluster_ids + /// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids /// public InputList MxclusterIds { @@ -38,8 +37,7 @@ public InputList MxclusterIds private InputList? _proxyHosts; /// - /// default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - /// when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + /// default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` /// public InputList ProxyHosts { diff --git a/sdk/dotnet/Site/Networktemplate.cs b/sdk/dotnet/Site/Networktemplate.cs index f849a2bf..8cbaae3c 100644 --- a/sdk/dotnet/Site/Networktemplate.cs +++ b/sdk/dotnet/Site/Networktemplate.cs @@ -100,7 +100,7 @@ public partial class Networktemplate : global::Pulumi.CustomResource public Output?> OspfAreas { get; private set; } = null!; /// - /// Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes /// interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A /// maximum 4 port mirrorings is allowed /// @@ -342,7 +342,7 @@ public InputMap OspfAreas private InputMap? _portMirroring; /// - /// Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes /// interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A /// maximum 4 port mirrorings is allowed /// @@ -560,7 +560,7 @@ public InputMap OspfAreas private InputMap? _portMirroring; /// - /// Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes /// interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A /// maximum 4 port mirrorings is allowed /// diff --git a/sdk/dotnet/Site/Outputs/NetworktemplateAclPolicy.cs b/sdk/dotnet/Site/Outputs/NetworktemplateAclPolicy.cs index ffdc1ea3..43682643 100644 --- a/sdk/dotnet/Site/Outputs/NetworktemplateAclPolicy.cs +++ b/sdk/dotnet/Site/Outputs/NetworktemplateAclPolicy.cs @@ -14,14 +14,16 @@ namespace Pulumi.JuniperMist.Site.Outputs public sealed class NetworktemplateAclPolicy { /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Actions: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public readonly ImmutableArray Actions; public readonly string? Name; /// - /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + /// ACL Policy Source Tags: + /// - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + /// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to /// public readonly ImmutableArray SrcTags; diff --git a/sdk/dotnet/Site/Outputs/NetworktemplateAclTags.cs b/sdk/dotnet/Site/Outputs/NetworktemplateAclTags.cs index 56841f4f..f43d59b6 100644 --- a/sdk/dotnet/Site/Outputs/NetworktemplateAclTags.cs +++ b/sdk/dotnet/Site/Outputs/NetworktemplateAclTags.cs @@ -15,9 +15,9 @@ public sealed class NetworktemplateAclTags { /// /// required if - /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - /// - `type`==`gbp_resource` - /// - `type`==`static_gbp` (applying gbp tag against matching conditions) + /// - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + /// - `type`==`gbp_resource` + /// - `type`==`static_gbp` (applying gbp tag against matching conditions) /// public readonly int? GbpTag; /// @@ -43,8 +43,7 @@ public sealed class NetworktemplateAclTags /// public readonly string? RadiusGroup; /// - /// if `type`==`resource` or `type`==`gbp_resource` - /// empty means unrestricted, i.e. any + /// if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any /// public readonly ImmutableArray Specs; /// diff --git a/sdk/dotnet/Site/Outputs/NetworktemplateAclTagsSpec.cs b/sdk/dotnet/Site/Outputs/NetworktemplateAclTagsSpec.cs index 564f960f..4a9c1dd9 100644 --- a/sdk/dotnet/Site/Outputs/NetworktemplateAclTagsSpec.cs +++ b/sdk/dotnet/Site/Outputs/NetworktemplateAclTagsSpec.cs @@ -18,7 +18,7 @@ public sealed class NetworktemplateAclTagsSpec /// public readonly string? PortRange; /// - /// `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + /// `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 /// public readonly string? Protocol; diff --git a/sdk/dotnet/Site/Outputs/NetworktemplateNetworks.cs b/sdk/dotnet/Site/Outputs/NetworktemplateNetworks.cs index 0116d308..da05c561 100644 --- a/sdk/dotnet/Site/Outputs/NetworktemplateNetworks.cs +++ b/sdk/dotnet/Site/Outputs/NetworktemplateNetworks.cs @@ -22,8 +22,7 @@ public sealed class NetworktemplateNetworks /// public readonly string? Gateway6; /// - /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - /// NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + /// whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set /// public readonly bool? Isolation; public readonly string? IsolationVlanId; diff --git a/sdk/dotnet/Site/Outputs/NetworktemplatePortUsages.cs b/sdk/dotnet/Site/Outputs/NetworktemplatePortUsages.cs index 6ae2082e..82c2fb39 100644 --- a/sdk/dotnet/Site/Outputs/NetworktemplatePortUsages.cs +++ b/sdk/dotnet/Site/Outputs/NetworktemplatePortUsages.cs @@ -18,9 +18,7 @@ public sealed class NetworktemplatePortUsages /// public readonly bool? AllNetworks; /// - /// 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 allow_dhcpd is a tri_state. - /// 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. + /// 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 allow_dhcpd is a tri_state. 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. /// public readonly bool? AllowDhcpd; /// @@ -68,8 +66,7 @@ public sealed class NetworktemplatePortUsages /// public readonly string? GuestNetwork; /// - /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - /// NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + /// Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together /// public readonly bool? InterSwitchLink; /// @@ -141,8 +138,7 @@ public sealed class NetworktemplatePortUsages /// public readonly string? Speed; /// - /// Switch storm control - /// Only if `mode`!=`dynamic` + /// Switch storm control. Only if `mode`!=`dynamic` /// public readonly Outputs.NetworktemplatePortUsagesStormControl? StormControl; /// diff --git a/sdk/dotnet/Site/Outputs/NetworktemplateRadiusConfig.cs b/sdk/dotnet/Site/Outputs/NetworktemplateRadiusConfig.cs index ae43ed19..ab7cb1c1 100644 --- a/sdk/dotnet/Site/Outputs/NetworktemplateRadiusConfig.cs +++ b/sdk/dotnet/Site/Outputs/NetworktemplateRadiusConfig.cs @@ -28,8 +28,7 @@ public sealed class NetworktemplateRadiusConfig /// public readonly int? AuthServersTimeout; /// - /// use `network`or `source_ip` - /// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + /// use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip /// public readonly string? Network; /// diff --git a/sdk/dotnet/Site/Outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.cs b/sdk/dotnet/Site/Outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.cs index 445140c3..8b74b95b 100644 --- a/sdk/dotnet/Site/Outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.cs +++ b/sdk/dotnet/Site/Outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.cs @@ -14,8 +14,7 @@ namespace Pulumi.JuniperMist.Site.Outputs public sealed class NetworktemplateSnmpConfigV3ConfigUsmUser { /// - /// Not required if `authentication_type`==`authentication_none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters. + /// Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. /// public readonly string? AuthenticationPassword; /// @@ -23,8 +22,7 @@ public sealed class NetworktemplateSnmpConfigV3ConfigUsmUser /// public readonly string? AuthenticationType; /// - /// Not required if `encryption_type`==`privacy-none` - /// include alphabetic, numeric, and special characters, but it cannot include control characters + /// Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters /// public readonly string? EncryptionPassword; /// diff --git a/sdk/dotnet/Site/Outputs/NetworktemplateSwitchMatchingRule.cs b/sdk/dotnet/Site/Outputs/NetworktemplateSwitchMatchingRule.cs index f54fad97..01e5f6a3 100644 --- a/sdk/dotnet/Site/Outputs/NetworktemplateSwitchMatchingRule.cs +++ b/sdk/dotnet/Site/Outputs/NetworktemplateSwitchMatchingRule.cs @@ -52,8 +52,7 @@ public sealed class NetworktemplateSwitchMatchingRule /// public readonly ImmutableDictionary? PortConfig; /// - /// Property key is the port mirroring instance name - /// port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + /// Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed /// public readonly ImmutableDictionary? PortMirroring; diff --git a/sdk/dotnet/Site/Outputs/WlanAppLimit.cs b/sdk/dotnet/Site/Outputs/WlanAppLimit.cs index 99f97add..72d7964a 100644 --- a/sdk/dotnet/Site/Outputs/WlanAppLimit.cs +++ b/sdk/dotnet/Site/Outputs/WlanAppLimit.cs @@ -20,8 +20,7 @@ public sealed class WlanAppLimit public readonly ImmutableDictionary? Apps; public readonly bool? Enabled; /// - /// Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - /// Property key is the wxtag id + /// Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` /// public readonly ImmutableDictionary? WxtagIds; diff --git a/sdk/dotnet/Site/Outputs/WlanDnsServerRewrite.cs b/sdk/dotnet/Site/Outputs/WlanDnsServerRewrite.cs index 51442bf5..c80c5909 100644 --- a/sdk/dotnet/Site/Outputs/WlanDnsServerRewrite.cs +++ b/sdk/dotnet/Site/Outputs/WlanDnsServerRewrite.cs @@ -15,8 +15,7 @@ public sealed class WlanDnsServerRewrite { public readonly bool? Enabled; /// - /// map between radius_group and the desired DNS server (IPv4 only) - /// Property key is the RADIUS group, property value is the desired DNS Server + /// map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server /// public readonly ImmutableDictionary? RadiusGroups; diff --git a/sdk/dotnet/Site/Outputs/WlanDynamicPsk.cs b/sdk/dotnet/Site/Outputs/WlanDynamicPsk.cs index 94710a85..ce749d0f 100644 --- a/sdk/dotnet/Site/Outputs/WlanDynamicPsk.cs +++ b/sdk/dotnet/Site/Outputs/WlanDynamicPsk.cs @@ -20,8 +20,7 @@ public sealed class WlanDynamicPsk public readonly string? DefaultVlanId; public readonly bool? Enabled; /// - /// when 11r is enabled, we'll try to use the cached PMK, this can be disabled - /// `false` means auto + /// when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto /// public readonly bool? ForceLookup; /// diff --git a/sdk/dotnet/Site/Outputs/WlanRadsec.cs b/sdk/dotnet/Site/Outputs/WlanRadsec.cs index b47727f9..be6933bb 100644 --- a/sdk/dotnet/Site/Outputs/WlanRadsec.cs +++ b/sdk/dotnet/Site/Outputs/WlanRadsec.cs @@ -17,13 +17,11 @@ public sealed class WlanRadsec public readonly bool? Enabled; public readonly int? IdleTimeout; /// - /// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - /// Org mxedge(s) identified by mxcluster_ids + /// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids /// public readonly ImmutableArray MxclusterIds; /// - /// default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - /// when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + /// default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` /// public readonly ImmutableArray ProxyHosts; /// diff --git a/sdk/go/junipermist/config/config.go b/sdk/go/junipermist/config/config.go index a713f0cd..efa5a805 100644 --- a/sdk/go/junipermist/config/config.go +++ b/sdk/go/junipermist/config/config.go @@ -11,6 +11,11 @@ import ( var _ = internal.GetEnvOrDefault +// Flag to enable debugging API calls. Default is false. +func GetApiDebug(ctx *pulumi.Context) bool { + return config.GetBool(ctx, "junipermist:apiDebug") +} + // Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 // results in infinite timeout. func GetApiTimeout(ctx *pulumi.Context) float64 { diff --git a/sdk/go/junipermist/device/gateway.go b/sdk/go/junipermist/device/gateway.go index 5fdad4bf..176f28f2 100644 --- a/sdk/go/junipermist/device/gateway.go +++ b/sdk/go/junipermist/device/gateway.go @@ -71,7 +71,7 @@ import ( type Gateway struct { pulumi.CustomResourceState - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds pulumi.StringArrayOutput `pulumi:"additionalConfigCmds"` BgpConfig GatewayBgpConfigMapOutput `pulumi:"bgpConfig"` DeviceId pulumi.StringOutput `pulumi:"deviceId"` @@ -171,7 +171,7 @@ func GetGateway(ctx *pulumi.Context, // Input properties used for looking up and filtering Gateway resources. type gatewayState struct { - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds []string `pulumi:"additionalConfigCmds"` BgpConfig map[string]GatewayBgpConfig `pulumi:"bgpConfig"` DeviceId *string `pulumi:"deviceId"` @@ -236,7 +236,7 @@ type gatewayState struct { } type GatewayState struct { - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds pulumi.StringArrayInput BgpConfig GatewayBgpConfigMapInput DeviceId pulumi.StringPtrInput @@ -305,7 +305,7 @@ func (GatewayState) ElementType() reflect.Type { } type gatewayArgs struct { - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds []string `pulumi:"additionalConfigCmds"` BgpConfig map[string]GatewayBgpConfig `pulumi:"bgpConfig"` DeviceId string `pulumi:"deviceId"` @@ -359,7 +359,7 @@ type gatewayArgs struct { // The set of arguments for constructing a Gateway resource. type GatewayArgs struct { - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds pulumi.StringArrayInput BgpConfig GatewayBgpConfigMapInput DeviceId pulumi.StringInput @@ -498,7 +498,7 @@ func (o GatewayOutput) ToGatewayOutputWithContext(ctx context.Context) GatewayOu return o } -// additional CLI commands to append to the generated Junos config **Note**: no check is done +// additional CLI commands to append to the generated Junos config. **Note**: no check is done func (o GatewayOutput) AdditionalConfigCmds() pulumi.StringArrayOutput { return o.ApplyT(func(v *Gateway) pulumi.StringArrayOutput { return v.AdditionalConfigCmds }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/junipermist/device/pulumiTypes.go b/sdk/go/junipermist/device/pulumiTypes.go index b724e46a..0c4ebe70 100644 --- a/sdk/go/junipermist/device/pulumiTypes.go +++ b/sdk/go/junipermist/device/pulumiTypes.go @@ -4426,8 +4426,7 @@ type GatewayBgpConfig struct { Export *string `pulumi:"export"` // default export policies if no per-neighbor policies defined ExportPolicy *string `pulumi:"exportPolicy"` - // by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - // for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + // by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this ExtendedV4Nexthop *bool `pulumi:"extendedV4Nexthop"` // `0` means disable GracefulRestartTime *int `pulumi:"gracefulRestartTime"` @@ -4478,8 +4477,7 @@ type GatewayBgpConfigArgs struct { Export pulumi.StringPtrInput `pulumi:"export"` // default export policies if no per-neighbor policies defined ExportPolicy pulumi.StringPtrInput `pulumi:"exportPolicy"` - // by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - // for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + // by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this ExtendedV4Nexthop pulumi.BoolPtrInput `pulumi:"extendedV4Nexthop"` // `0` means disable GracefulRestartTime pulumi.IntPtrInput `pulumi:"gracefulRestartTime"` @@ -4587,8 +4585,7 @@ func (o GatewayBgpConfigOutput) ExportPolicy() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayBgpConfig) *string { return v.ExportPolicy }).(pulumi.StringPtrOutput) } -// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) -// for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this +// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this func (o GatewayBgpConfigOutput) ExtendedV4Nexthop() pulumi.BoolPtrOutput { return o.ApplyT(func(v GatewayBgpConfig) *bool { return v.ExtendedV4Nexthop }).(pulumi.BoolPtrOutput) } @@ -6337,11 +6334,12 @@ type GatewayNetwork struct { Multicast *GatewayNetworkMulticast `pulumi:"multicast"` Name string `pulumi:"name"` // for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) - RoutedForNetworks []string `pulumi:"routedForNetworks"` - Subnet string `pulumi:"subnet"` - Subnet6 *string `pulumi:"subnet6"` - Tenants map[string]GatewayNetworkTenants `pulumi:"tenants"` - VlanId *string `pulumi:"vlanId"` + RoutedForNetworks []string `pulumi:"routedForNetworks"` + Subnet string `pulumi:"subnet"` + Subnet6 *string `pulumi:"subnet6"` + // Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + Tenants map[string]GatewayNetworkTenants `pulumi:"tenants"` + VlanId *string `pulumi:"vlanId"` // Property key is the VPN name. Whether this network can be accessed from vpn VpnAccess map[string]GatewayNetworkVpnAccess `pulumi:"vpnAccess"` } @@ -6371,11 +6369,12 @@ type GatewayNetworkArgs struct { Multicast GatewayNetworkMulticastPtrInput `pulumi:"multicast"` Name pulumi.StringInput `pulumi:"name"` // for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) - RoutedForNetworks pulumi.StringArrayInput `pulumi:"routedForNetworks"` - Subnet pulumi.StringInput `pulumi:"subnet"` - Subnet6 pulumi.StringPtrInput `pulumi:"subnet6"` - Tenants GatewayNetworkTenantsMapInput `pulumi:"tenants"` - VlanId pulumi.StringPtrInput `pulumi:"vlanId"` + RoutedForNetworks pulumi.StringArrayInput `pulumi:"routedForNetworks"` + Subnet pulumi.StringInput `pulumi:"subnet"` + Subnet6 pulumi.StringPtrInput `pulumi:"subnet6"` + // Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + Tenants GatewayNetworkTenantsMapInput `pulumi:"tenants"` + VlanId pulumi.StringPtrInput `pulumi:"vlanId"` // Property key is the VPN name. Whether this network can be accessed from vpn VpnAccess GatewayNetworkVpnAccessMapInput `pulumi:"vpnAccess"` } @@ -6480,6 +6479,7 @@ func (o GatewayNetworkOutput) Subnet6() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayNetwork) *string { return v.Subnet6 }).(pulumi.StringPtrOutput) } +// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") func (o GatewayNetworkOutput) Tenants() GatewayNetworkTenantsMapOutput { return o.ApplyT(func(v GatewayNetwork) map[string]GatewayNetworkTenants { return v.Tenants }).(GatewayNetworkTenantsMapOutput) } @@ -6648,12 +6648,12 @@ func (o GatewayNetworkInternalAccessPtrOutput) Enabled() pulumi.BoolPtrOutput { type GatewayNetworkInternetAccess struct { CreateSimpleServicePolicy *bool `pulumi:"createSimpleServicePolicy"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat map[string]GatewayNetworkInternetAccessDestinationNat `pulumi:"destinationNat"` Enabled *bool `pulumi:"enabled"` // by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies Restricted *bool `pulumi:"restricted"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat map[string]GatewayNetworkInternetAccessStaticNat `pulumi:"staticNat"` } @@ -6670,12 +6670,12 @@ type GatewayNetworkInternetAccessInput interface { type GatewayNetworkInternetAccessArgs struct { CreateSimpleServicePolicy pulumi.BoolPtrInput `pulumi:"createSimpleServicePolicy"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat GatewayNetworkInternetAccessDestinationNatMapInput `pulumi:"destinationNat"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` // by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies Restricted pulumi.BoolPtrInput `pulumi:"restricted"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat GatewayNetworkInternetAccessStaticNatMapInput `pulumi:"staticNat"` } @@ -6760,7 +6760,7 @@ func (o GatewayNetworkInternetAccessOutput) CreateSimpleServicePolicy() pulumi.B return o.ApplyT(func(v GatewayNetworkInternetAccess) *bool { return v.CreateSimpleServicePolicy }).(pulumi.BoolPtrOutput) } -// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") +// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined func (o GatewayNetworkInternetAccessOutput) DestinationNat() GatewayNetworkInternetAccessDestinationNatMapOutput { return o.ApplyT(func(v GatewayNetworkInternetAccess) map[string]GatewayNetworkInternetAccessDestinationNat { return v.DestinationNat @@ -6776,7 +6776,7 @@ func (o GatewayNetworkInternetAccessOutput) Restricted() pulumi.BoolPtrOutput { return o.ApplyT(func(v GatewayNetworkInternetAccess) *bool { return v.Restricted }).(pulumi.BoolPtrOutput) } -// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") +// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") func (o GatewayNetworkInternetAccessOutput) StaticNat() GatewayNetworkInternetAccessStaticNatMapOutput { return o.ApplyT(func(v GatewayNetworkInternetAccess) map[string]GatewayNetworkInternetAccessStaticNat { return v.StaticNat @@ -6816,7 +6816,7 @@ func (o GatewayNetworkInternetAccessPtrOutput) CreateSimpleServicePolicy() pulum }).(pulumi.BoolPtrOutput) } -// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") +// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined func (o GatewayNetworkInternetAccessPtrOutput) DestinationNat() GatewayNetworkInternetAccessDestinationNatMapOutput { return o.ApplyT(func(v *GatewayNetworkInternetAccess) map[string]GatewayNetworkInternetAccessDestinationNat { if v == nil { @@ -6845,7 +6845,7 @@ func (o GatewayNetworkInternetAccessPtrOutput) Restricted() pulumi.BoolPtrOutput }).(pulumi.BoolPtrOutput) } -// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") +// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") func (o GatewayNetworkInternetAccessPtrOutput) StaticNat() GatewayNetworkInternetAccessStaticNatMapOutput { return o.ApplyT(func(v *GatewayNetworkInternetAccess) map[string]GatewayNetworkInternetAccessStaticNat { if v == nil { @@ -6856,9 +6856,13 @@ func (o GatewayNetworkInternetAccessPtrOutput) StaticNat() GatewayNetworkInterne } type GatewayNetworkInternetAccessDestinationNat struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp *string `pulumi:"internalIp"` Name *string `pulumi:"name"` - Port *int `pulumi:"port"` + // The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + Port *string `pulumi:"port"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + WanName *string `pulumi:"wanName"` } // GatewayNetworkInternetAccessDestinationNatInput is an input type that accepts GatewayNetworkInternetAccessDestinationNatArgs and GatewayNetworkInternetAccessDestinationNatOutput values. @@ -6873,9 +6877,13 @@ type GatewayNetworkInternetAccessDestinationNatInput interface { } type GatewayNetworkInternetAccessDestinationNatArgs struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` Name pulumi.StringPtrInput `pulumi:"name"` - Port pulumi.IntPtrInput `pulumi:"port"` + // The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + Port pulumi.StringPtrInput `pulumi:"port"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + WanName pulumi.StringPtrInput `pulumi:"wanName"` } func (GatewayNetworkInternetAccessDestinationNatArgs) ElementType() reflect.Type { @@ -6929,6 +6937,7 @@ func (o GatewayNetworkInternetAccessDestinationNatOutput) ToGatewayNetworkIntern return o } +// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") func (o GatewayNetworkInternetAccessDestinationNatOutput) InternalIp() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayNetworkInternetAccessDestinationNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) } @@ -6937,8 +6946,14 @@ func (o GatewayNetworkInternetAccessDestinationNatOutput) Name() pulumi.StringPt return o.ApplyT(func(v GatewayNetworkInternetAccessDestinationNat) *string { return v.Name }).(pulumi.StringPtrOutput) } -func (o GatewayNetworkInternetAccessDestinationNatOutput) Port() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewayNetworkInternetAccessDestinationNat) *int { return v.Port }).(pulumi.IntPtrOutput) +// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") +func (o GatewayNetworkInternetAccessDestinationNatOutput) Port() pulumi.StringPtrOutput { + return o.ApplyT(func(v GatewayNetworkInternetAccessDestinationNat) *string { return v.Port }).(pulumi.StringPtrOutput) +} + +// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity +func (o GatewayNetworkInternetAccessDestinationNatOutput) WanName() pulumi.StringPtrOutput { + return o.ApplyT(func(v GatewayNetworkInternetAccessDestinationNat) *string { return v.WanName }).(pulumi.StringPtrOutput) } type GatewayNetworkInternetAccessDestinationNatMapOutput struct{ *pulumi.OutputState } @@ -6962,9 +6977,10 @@ func (o GatewayNetworkInternetAccessDestinationNatMapOutput) MapIndex(k pulumi.S } type GatewayNetworkInternetAccessStaticNat struct { - InternalIp *string `pulumi:"internalIp"` - Name *string `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp string `pulumi:"internalIp"` + Name string `pulumi:"name"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") WanName *string `pulumi:"wanName"` } @@ -6980,9 +6996,10 @@ type GatewayNetworkInternetAccessStaticNatInput interface { } type GatewayNetworkInternetAccessStaticNatArgs struct { - InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` - Name pulumi.StringPtrInput `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp pulumi.StringInput `pulumi:"internalIp"` + Name pulumi.StringInput `pulumi:"name"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") WanName pulumi.StringPtrInput `pulumi:"wanName"` } @@ -7037,15 +7054,16 @@ func (o GatewayNetworkInternetAccessStaticNatOutput) ToGatewayNetworkInternetAcc return o } -func (o GatewayNetworkInternetAccessStaticNatOutput) InternalIp() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewayNetworkInternetAccessStaticNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) +// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") +func (o GatewayNetworkInternetAccessStaticNatOutput) InternalIp() pulumi.StringOutput { + return o.ApplyT(func(v GatewayNetworkInternetAccessStaticNat) string { return v.InternalIp }).(pulumi.StringOutput) } -func (o GatewayNetworkInternetAccessStaticNatOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewayNetworkInternetAccessStaticNat) *string { return v.Name }).(pulumi.StringPtrOutput) +func (o GatewayNetworkInternetAccessStaticNatOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GatewayNetworkInternetAccessStaticNat) string { return v.Name }).(pulumi.StringOutput) } -// If not set, we configure the nat policies against all WAN ports for simplicity +// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") func (o GatewayNetworkInternetAccessStaticNatOutput) WanName() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayNetworkInternetAccessStaticNat) *string { return v.WanName }).(pulumi.StringPtrOutput) } @@ -7437,7 +7455,7 @@ type GatewayNetworkVpnAccess struct { AdvertisedSubnet *string `pulumi:"advertisedSubnet"` // whether to allow ping from vpn into this routed network AllowPing *bool `pulumi:"allowPing"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat map[string]GatewayNetworkVpnAccessDestinationNat `pulumi:"destinationNat"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub NatPool *string `pulumi:"natPool"` @@ -7445,20 +7463,17 @@ type GatewayNetworkVpnAccess struct { NoReadvertiseToLanBgp *bool `pulumi:"noReadvertiseToLanBgp"` // toward LAN-side OSPF peers NoReadvertiseToLanOspf *bool `pulumi:"noReadvertiseToLanOspf"` - // toward overlay - // how HUB should deal with routes it received from Spokes + // toward overlay, how HUB should deal with routes it received from Spokes NoReadvertiseToOverlay *bool `pulumi:"noReadvertiseToOverlay"` - // by default, the routes are only readvertised toward the same vrf on spoke - // to allow it to be leaked to other vrfs + // by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs OtherVrfs []string `pulumi:"otherVrfs"` // whether this network is routable Routed *bool `pulumi:"routed"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub SourceNat *GatewayNetworkVpnAccessSourceNat `pulumi:"sourceNat"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat map[string]GatewayNetworkVpnAccessStaticNat `pulumi:"staticNat"` - // toward overlay - // how HUB should deal with routes it received from Spokes + // toward overlay, how HUB should deal with routes it received from Spokes SummarizedSubnet *string `pulumi:"summarizedSubnet"` // toward LAN-side BGP peers SummarizedSubnetToLanBgp *string `pulumi:"summarizedSubnetToLanBgp"` @@ -7482,7 +7497,7 @@ type GatewayNetworkVpnAccessArgs struct { AdvertisedSubnet pulumi.StringPtrInput `pulumi:"advertisedSubnet"` // whether to allow ping from vpn into this routed network AllowPing pulumi.BoolPtrInput `pulumi:"allowPing"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat GatewayNetworkVpnAccessDestinationNatMapInput `pulumi:"destinationNat"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub NatPool pulumi.StringPtrInput `pulumi:"natPool"` @@ -7490,20 +7505,17 @@ type GatewayNetworkVpnAccessArgs struct { NoReadvertiseToLanBgp pulumi.BoolPtrInput `pulumi:"noReadvertiseToLanBgp"` // toward LAN-side OSPF peers NoReadvertiseToLanOspf pulumi.BoolPtrInput `pulumi:"noReadvertiseToLanOspf"` - // toward overlay - // how HUB should deal with routes it received from Spokes + // toward overlay, how HUB should deal with routes it received from Spokes NoReadvertiseToOverlay pulumi.BoolPtrInput `pulumi:"noReadvertiseToOverlay"` - // by default, the routes are only readvertised toward the same vrf on spoke - // to allow it to be leaked to other vrfs + // by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs OtherVrfs pulumi.StringArrayInput `pulumi:"otherVrfs"` // whether this network is routable Routed pulumi.BoolPtrInput `pulumi:"routed"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub SourceNat GatewayNetworkVpnAccessSourceNatPtrInput `pulumi:"sourceNat"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat GatewayNetworkVpnAccessStaticNatMapInput `pulumi:"staticNat"` - // toward overlay - // how HUB should deal with routes it received from Spokes + // toward overlay, how HUB should deal with routes it received from Spokes SummarizedSubnet pulumi.StringPtrInput `pulumi:"summarizedSubnet"` // toward LAN-side BGP peers SummarizedSubnetToLanBgp pulumi.StringPtrInput `pulumi:"summarizedSubnetToLanBgp"` @@ -7572,7 +7584,7 @@ func (o GatewayNetworkVpnAccessOutput) AllowPing() pulumi.BoolPtrOutput { return o.ApplyT(func(v GatewayNetworkVpnAccess) *bool { return v.AllowPing }).(pulumi.BoolPtrOutput) } -// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") +// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined func (o GatewayNetworkVpnAccessOutput) DestinationNat() GatewayNetworkVpnAccessDestinationNatMapOutput { return o.ApplyT(func(v GatewayNetworkVpnAccess) map[string]GatewayNetworkVpnAccessDestinationNat { return v.DestinationNat @@ -7594,14 +7606,12 @@ func (o GatewayNetworkVpnAccessOutput) NoReadvertiseToLanOspf() pulumi.BoolPtrOu return o.ApplyT(func(v GatewayNetworkVpnAccess) *bool { return v.NoReadvertiseToLanOspf }).(pulumi.BoolPtrOutput) } -// toward overlay -// how HUB should deal with routes it received from Spokes +// toward overlay, how HUB should deal with routes it received from Spokes func (o GatewayNetworkVpnAccessOutput) NoReadvertiseToOverlay() pulumi.BoolPtrOutput { return o.ApplyT(func(v GatewayNetworkVpnAccess) *bool { return v.NoReadvertiseToOverlay }).(pulumi.BoolPtrOutput) } -// by default, the routes are only readvertised toward the same vrf on spoke -// to allow it to be leaked to other vrfs +// by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs func (o GatewayNetworkVpnAccessOutput) OtherVrfs() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewayNetworkVpnAccess) []string { return v.OtherVrfs }).(pulumi.StringArrayOutput) } @@ -7616,13 +7626,12 @@ func (o GatewayNetworkVpnAccessOutput) SourceNat() GatewayNetworkVpnAccessSource return o.ApplyT(func(v GatewayNetworkVpnAccess) *GatewayNetworkVpnAccessSourceNat { return v.SourceNat }).(GatewayNetworkVpnAccessSourceNatPtrOutput) } -// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") +// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") func (o GatewayNetworkVpnAccessOutput) StaticNat() GatewayNetworkVpnAccessStaticNatMapOutput { return o.ApplyT(func(v GatewayNetworkVpnAccess) map[string]GatewayNetworkVpnAccessStaticNat { return v.StaticNat }).(GatewayNetworkVpnAccessStaticNatMapOutput) } -// toward overlay -// how HUB should deal with routes it received from Spokes +// toward overlay, how HUB should deal with routes it received from Spokes func (o GatewayNetworkVpnAccessOutput) SummarizedSubnet() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayNetworkVpnAccess) *string { return v.SummarizedSubnet }).(pulumi.StringPtrOutput) } @@ -7658,9 +7667,10 @@ func (o GatewayNetworkVpnAccessMapOutput) MapIndex(k pulumi.StringInput) Gateway } type GatewayNetworkVpnAccessDestinationNat struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp *string `pulumi:"internalIp"` Name *string `pulumi:"name"` - Port *int `pulumi:"port"` + Port *string `pulumi:"port"` } // GatewayNetworkVpnAccessDestinationNatInput is an input type that accepts GatewayNetworkVpnAccessDestinationNatArgs and GatewayNetworkVpnAccessDestinationNatOutput values. @@ -7675,9 +7685,10 @@ type GatewayNetworkVpnAccessDestinationNatInput interface { } type GatewayNetworkVpnAccessDestinationNatArgs struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` Name pulumi.StringPtrInput `pulumi:"name"` - Port pulumi.IntPtrInput `pulumi:"port"` + Port pulumi.StringPtrInput `pulumi:"port"` } func (GatewayNetworkVpnAccessDestinationNatArgs) ElementType() reflect.Type { @@ -7731,6 +7742,7 @@ func (o GatewayNetworkVpnAccessDestinationNatOutput) ToGatewayNetworkVpnAccessDe return o } +// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") func (o GatewayNetworkVpnAccessDestinationNatOutput) InternalIp() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayNetworkVpnAccessDestinationNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) } @@ -7739,8 +7751,8 @@ func (o GatewayNetworkVpnAccessDestinationNatOutput) Name() pulumi.StringPtrOutp return o.ApplyT(func(v GatewayNetworkVpnAccessDestinationNat) *string { return v.Name }).(pulumi.StringPtrOutput) } -func (o GatewayNetworkVpnAccessDestinationNatOutput) Port() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewayNetworkVpnAccessDestinationNat) *int { return v.Port }).(pulumi.IntPtrOutput) +func (o GatewayNetworkVpnAccessDestinationNatOutput) Port() pulumi.StringPtrOutput { + return o.ApplyT(func(v GatewayNetworkVpnAccessDestinationNat) *string { return v.Port }).(pulumi.StringPtrOutput) } type GatewayNetworkVpnAccessDestinationNatMapOutput struct{ *pulumi.OutputState } @@ -7897,10 +7909,9 @@ func (o GatewayNetworkVpnAccessSourceNatPtrOutput) ExternalIp() pulumi.StringPtr } type GatewayNetworkVpnAccessStaticNat struct { - InternalIp *string `pulumi:"internalIp"` - Name *string `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity - WanName *string `pulumi:"wanName"` + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp string `pulumi:"internalIp"` + Name string `pulumi:"name"` } // GatewayNetworkVpnAccessStaticNatInput is an input type that accepts GatewayNetworkVpnAccessStaticNatArgs and GatewayNetworkVpnAccessStaticNatOutput values. @@ -7915,10 +7926,9 @@ type GatewayNetworkVpnAccessStaticNatInput interface { } type GatewayNetworkVpnAccessStaticNatArgs struct { - InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` - Name pulumi.StringPtrInput `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity - WanName pulumi.StringPtrInput `pulumi:"wanName"` + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp pulumi.StringInput `pulumi:"internalIp"` + Name pulumi.StringInput `pulumi:"name"` } func (GatewayNetworkVpnAccessStaticNatArgs) ElementType() reflect.Type { @@ -7972,17 +7982,13 @@ func (o GatewayNetworkVpnAccessStaticNatOutput) ToGatewayNetworkVpnAccessStaticN return o } -func (o GatewayNetworkVpnAccessStaticNatOutput) InternalIp() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewayNetworkVpnAccessStaticNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) -} - -func (o GatewayNetworkVpnAccessStaticNatOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewayNetworkVpnAccessStaticNat) *string { return v.Name }).(pulumi.StringPtrOutput) +// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") +func (o GatewayNetworkVpnAccessStaticNatOutput) InternalIp() pulumi.StringOutput { + return o.ApplyT(func(v GatewayNetworkVpnAccessStaticNat) string { return v.InternalIp }).(pulumi.StringOutput) } -// If not set, we configure the nat policies against all WAN ports for simplicity -func (o GatewayNetworkVpnAccessStaticNatOutput) WanName() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewayNetworkVpnAccessStaticNat) *string { return v.WanName }).(pulumi.StringPtrOutput) +func (o GatewayNetworkVpnAccessStaticNatOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GatewayNetworkVpnAccessStaticNat) string { return v.Name }).(pulumi.StringOutput) } type GatewayNetworkVpnAccessStaticNatMapOutput struct{ *pulumi.OutputState } @@ -8794,24 +8800,21 @@ type GatewayPortConfig struct { AeDisableLacp *bool `pulumi:"aeDisableLacp"` // if `aggregated`==`true`. Users could force to use the designated AE name (must be an integer between 0 and 127) AeIdx *string `pulumi:"aeIdx"` - // For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - // Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - // Note: Turning this on will enable force-up on one of the interfaces in the bundle only + // For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only AeLacpForceUp *bool `pulumi:"aeLacpForceUp"` Aggregated *bool `pulumi:"aggregated"` // if want to generate port up/down alarm, set it to true - Critical *bool `pulumi:"critical"` + Critical *bool `pulumi:"critical"` + // Interface Description. Can be a variable (i.e. "{{myvar}}") Description *string `pulumi:"description"` DisableAutoneg *bool `pulumi:"disableAutoneg"` // port admin up (true) / down (false) Disabled *bool `pulumi:"disabled"` // if `wanType`==`dsl`. enum: `adsl`, `vdsl` DslType *string `pulumi:"dslType"` - // if `wanType`==`dsl` - // 16 bit int + // if `wanType`==`dsl`, 16 bit int DslVci *int `pulumi:"dslVci"` - // if `wanType`==`dsl` - // 8 bit int + // if `wanType`==`dsl`, 8 bit int DslVpi *int `pulumi:"dslVpi"` // enum: `auto`, `full`, `half` Duplex *string `pulumi:"duplex"` @@ -8829,12 +8832,12 @@ type GatewayPortConfig struct { Mtu *int `pulumi:"mtu"` // name that we'll use to derive config Name *string `pulumi:"name"` - // if `usage`==`lan` + // if `usage`==`lan`, name of the `org.Network` resource Networks []string `pulumi:"networks"` // for Q-in-Q OuterVlanId *int `pulumi:"outerVlanId"` PoeDisabled *bool `pulumi:"poeDisabled"` - // if `usage`==`lan` + // Only for SRX and if `usage`==`lan`, the Untagged VLAN Network PortNetwork *string `pulumi:"portNetwork"` // whether to preserve dscp when sending traffic over VPN (SSR-only) PreserveDscp *bool `pulumi:"preserveDscp"` @@ -8853,22 +8856,23 @@ type GatewayPortConfig struct { SvrPortRange *string `pulumi:"svrPortRange"` TrafficShaping *GatewayPortConfigTrafficShaping `pulumi:"trafficShaping"` // port usage name. enum: `haControl`, `haData`, `lan`, `wan` - Usage string `pulumi:"usage"` - // if WAN interface is on a VLAN - VlanId *int `pulumi:"vlanId"` + Usage string `pulumi:"usage"` + VlanId *string `pulumi:"vlanId"` // Property key is the VPN name VpnPaths map[string]GatewayPortConfigVpnPaths `pulumi:"vpnPaths"` - // when `wanType`==`broadband`. enum: `default`, `max`, `recommended` + // Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` WanArpPolicer *string `pulumi:"wanArpPolicer"` - // optional, if spoke should reach this port by a different IP + // Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP WanExtIp *string `pulumi:"wanExtIp"` - // Property Key is the destianation CIDR (e.g "100.100.100.0/24") + // Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") WanExtraRoutes map[string]GatewayPortConfigWanExtraRoutes `pulumi:"wanExtraRoutes"` - // if `usage`==`wan` + // Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + WanNetworks []string `pulumi:"wanNetworks"` + // Only if `usage`==`wan` WanProbeOverride *GatewayPortConfigWanProbeOverride `pulumi:"wanProbeOverride"` - // optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + // Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip WanSourceNat *GatewayPortConfigWanSourceNat `pulumi:"wanSourceNat"` - // if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + // Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` WanType *string `pulumi:"wanType"` } @@ -8888,24 +8892,21 @@ type GatewayPortConfigArgs struct { AeDisableLacp pulumi.BoolPtrInput `pulumi:"aeDisableLacp"` // if `aggregated`==`true`. Users could force to use the designated AE name (must be an integer between 0 and 127) AeIdx pulumi.StringPtrInput `pulumi:"aeIdx"` - // For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - // Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - // Note: Turning this on will enable force-up on one of the interfaces in the bundle only + // For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only AeLacpForceUp pulumi.BoolPtrInput `pulumi:"aeLacpForceUp"` Aggregated pulumi.BoolPtrInput `pulumi:"aggregated"` // if want to generate port up/down alarm, set it to true - Critical pulumi.BoolPtrInput `pulumi:"critical"` + Critical pulumi.BoolPtrInput `pulumi:"critical"` + // Interface Description. Can be a variable (i.e. "{{myvar}}") Description pulumi.StringPtrInput `pulumi:"description"` DisableAutoneg pulumi.BoolPtrInput `pulumi:"disableAutoneg"` // port admin up (true) / down (false) Disabled pulumi.BoolPtrInput `pulumi:"disabled"` // if `wanType`==`dsl`. enum: `adsl`, `vdsl` DslType pulumi.StringPtrInput `pulumi:"dslType"` - // if `wanType`==`dsl` - // 16 bit int + // if `wanType`==`dsl`, 16 bit int DslVci pulumi.IntPtrInput `pulumi:"dslVci"` - // if `wanType`==`dsl` - // 8 bit int + // if `wanType`==`dsl`, 8 bit int DslVpi pulumi.IntPtrInput `pulumi:"dslVpi"` // enum: `auto`, `full`, `half` Duplex pulumi.StringPtrInput `pulumi:"duplex"` @@ -8923,12 +8924,12 @@ type GatewayPortConfigArgs struct { Mtu pulumi.IntPtrInput `pulumi:"mtu"` // name that we'll use to derive config Name pulumi.StringPtrInput `pulumi:"name"` - // if `usage`==`lan` + // if `usage`==`lan`, name of the `org.Network` resource Networks pulumi.StringArrayInput `pulumi:"networks"` // for Q-in-Q OuterVlanId pulumi.IntPtrInput `pulumi:"outerVlanId"` PoeDisabled pulumi.BoolPtrInput `pulumi:"poeDisabled"` - // if `usage`==`lan` + // Only for SRX and if `usage`==`lan`, the Untagged VLAN Network PortNetwork pulumi.StringPtrInput `pulumi:"portNetwork"` // whether to preserve dscp when sending traffic over VPN (SSR-only) PreserveDscp pulumi.BoolPtrInput `pulumi:"preserveDscp"` @@ -8947,22 +8948,23 @@ type GatewayPortConfigArgs struct { SvrPortRange pulumi.StringPtrInput `pulumi:"svrPortRange"` TrafficShaping GatewayPortConfigTrafficShapingPtrInput `pulumi:"trafficShaping"` // port usage name. enum: `haControl`, `haData`, `lan`, `wan` - Usage pulumi.StringInput `pulumi:"usage"` - // if WAN interface is on a VLAN - VlanId pulumi.IntPtrInput `pulumi:"vlanId"` + Usage pulumi.StringInput `pulumi:"usage"` + VlanId pulumi.StringPtrInput `pulumi:"vlanId"` // Property key is the VPN name VpnPaths GatewayPortConfigVpnPathsMapInput `pulumi:"vpnPaths"` - // when `wanType`==`broadband`. enum: `default`, `max`, `recommended` + // Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` WanArpPolicer pulumi.StringPtrInput `pulumi:"wanArpPolicer"` - // optional, if spoke should reach this port by a different IP + // Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP WanExtIp pulumi.StringPtrInput `pulumi:"wanExtIp"` - // Property Key is the destianation CIDR (e.g "100.100.100.0/24") + // Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") WanExtraRoutes GatewayPortConfigWanExtraRoutesMapInput `pulumi:"wanExtraRoutes"` - // if `usage`==`wan` + // Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + WanNetworks pulumi.StringArrayInput `pulumi:"wanNetworks"` + // Only if `usage`==`wan` WanProbeOverride GatewayPortConfigWanProbeOverridePtrInput `pulumi:"wanProbeOverride"` - // optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + // Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip WanSourceNat GatewayPortConfigWanSourceNatPtrInput `pulumi:"wanSourceNat"` - // if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + // Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` WanType pulumi.StringPtrInput `pulumi:"wanType"` } @@ -9027,9 +9029,7 @@ func (o GatewayPortConfigOutput) AeIdx() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayPortConfig) *string { return v.AeIdx }).(pulumi.StringPtrOutput) } -// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n -// Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n -// Note: Turning this on will enable force-up on one of the interfaces in the bundle only +// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only func (o GatewayPortConfigOutput) AeLacpForceUp() pulumi.BoolPtrOutput { return o.ApplyT(func(v GatewayPortConfig) *bool { return v.AeLacpForceUp }).(pulumi.BoolPtrOutput) } @@ -9043,6 +9043,7 @@ func (o GatewayPortConfigOutput) Critical() pulumi.BoolPtrOutput { return o.ApplyT(func(v GatewayPortConfig) *bool { return v.Critical }).(pulumi.BoolPtrOutput) } +// Interface Description. Can be a variable (i.e. "{{myvar}}") func (o GatewayPortConfigOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayPortConfig) *string { return v.Description }).(pulumi.StringPtrOutput) } @@ -9061,14 +9062,12 @@ func (o GatewayPortConfigOutput) DslType() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayPortConfig) *string { return v.DslType }).(pulumi.StringPtrOutput) } -// if `wanType`==`dsl` -// 16 bit int +// if `wanType`==`dsl`, 16 bit int func (o GatewayPortConfigOutput) DslVci() pulumi.IntPtrOutput { return o.ApplyT(func(v GatewayPortConfig) *int { return v.DslVci }).(pulumi.IntPtrOutput) } -// if `wanType`==`dsl` -// 8 bit int +// if `wanType`==`dsl`, 8 bit int func (o GatewayPortConfigOutput) DslVpi() pulumi.IntPtrOutput { return o.ApplyT(func(v GatewayPortConfig) *int { return v.DslVpi }).(pulumi.IntPtrOutput) } @@ -9116,7 +9115,7 @@ func (o GatewayPortConfigOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayPortConfig) *string { return v.Name }).(pulumi.StringPtrOutput) } -// if `usage`==`lan` +// if `usage`==`lan`, name of the `org.Network` resource func (o GatewayPortConfigOutput) Networks() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewayPortConfig) []string { return v.Networks }).(pulumi.StringArrayOutput) } @@ -9130,7 +9129,7 @@ func (o GatewayPortConfigOutput) PoeDisabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v GatewayPortConfig) *bool { return v.PoeDisabled }).(pulumi.BoolPtrOutput) } -// if `usage`==`lan` +// Only for SRX and if `usage`==`lan`, the Untagged VLAN Network func (o GatewayPortConfigOutput) PortNetwork() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayPortConfig) *string { return v.PortNetwork }).(pulumi.StringPtrOutput) } @@ -9183,9 +9182,8 @@ func (o GatewayPortConfigOutput) Usage() pulumi.StringOutput { return o.ApplyT(func(v GatewayPortConfig) string { return v.Usage }).(pulumi.StringOutput) } -// if WAN interface is on a VLAN -func (o GatewayPortConfigOutput) VlanId() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewayPortConfig) *int { return v.VlanId }).(pulumi.IntPtrOutput) +func (o GatewayPortConfigOutput) VlanId() pulumi.StringPtrOutput { + return o.ApplyT(func(v GatewayPortConfig) *string { return v.VlanId }).(pulumi.StringPtrOutput) } // Property key is the VPN name @@ -9193,32 +9191,37 @@ func (o GatewayPortConfigOutput) VpnPaths() GatewayPortConfigVpnPathsMapOutput { return o.ApplyT(func(v GatewayPortConfig) map[string]GatewayPortConfigVpnPaths { return v.VpnPaths }).(GatewayPortConfigVpnPathsMapOutput) } -// when `wanType`==`broadband`. enum: `default`, `max`, `recommended` +// Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` func (o GatewayPortConfigOutput) WanArpPolicer() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayPortConfig) *string { return v.WanArpPolicer }).(pulumi.StringPtrOutput) } -// optional, if spoke should reach this port by a different IP +// Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP func (o GatewayPortConfigOutput) WanExtIp() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayPortConfig) *string { return v.WanExtIp }).(pulumi.StringPtrOutput) } -// Property Key is the destianation CIDR (e.g "100.100.100.0/24") +// Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") func (o GatewayPortConfigOutput) WanExtraRoutes() GatewayPortConfigWanExtraRoutesMapOutput { return o.ApplyT(func(v GatewayPortConfig) map[string]GatewayPortConfigWanExtraRoutes { return v.WanExtraRoutes }).(GatewayPortConfigWanExtraRoutesMapOutput) } -// if `usage`==`wan` +// Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined +func (o GatewayPortConfigOutput) WanNetworks() pulumi.StringArrayOutput { + return o.ApplyT(func(v GatewayPortConfig) []string { return v.WanNetworks }).(pulumi.StringArrayOutput) +} + +// Only if `usage`==`wan` func (o GatewayPortConfigOutput) WanProbeOverride() GatewayPortConfigWanProbeOverridePtrOutput { return o.ApplyT(func(v GatewayPortConfig) *GatewayPortConfigWanProbeOverride { return v.WanProbeOverride }).(GatewayPortConfigWanProbeOverridePtrOutput) } -// optional, by default, source-NAT is performed on all WAN Ports using the interface-ip +// Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip func (o GatewayPortConfigOutput) WanSourceNat() GatewayPortConfigWanSourceNatPtrOutput { return o.ApplyT(func(v GatewayPortConfig) *GatewayPortConfigWanSourceNat { return v.WanSourceNat }).(GatewayPortConfigWanSourceNatPtrOutput) } -// if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` +// Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` func (o GatewayPortConfigOutput) WanType() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayPortConfig) *string { return v.WanType }).(pulumi.StringPtrOutput) } @@ -9248,10 +9251,11 @@ type GatewayPortConfigIpConfig struct { Dns []string `pulumi:"dns"` // except for out-of_band interface (vme/em0/fxp0) DnsSuffixes []string `pulumi:"dnsSuffixes"` - // except for out-of_band interface (vme/em0/fxp0) + // except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") Gateway *string `pulumi:"gateway"` - Ip *string `pulumi:"ip"` - // used only if `subnet` is not specified in `networks` + // Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + Ip *string `pulumi:"ip"` + // used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") Netmask *string `pulumi:"netmask"` // optional, the network to be used for mgmt Network *string `pulumi:"network"` @@ -9281,10 +9285,11 @@ type GatewayPortConfigIpConfigArgs struct { Dns pulumi.StringArrayInput `pulumi:"dns"` // except for out-of_band interface (vme/em0/fxp0) DnsSuffixes pulumi.StringArrayInput `pulumi:"dnsSuffixes"` - // except for out-of_band interface (vme/em0/fxp0) + // except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") Gateway pulumi.StringPtrInput `pulumi:"gateway"` - Ip pulumi.StringPtrInput `pulumi:"ip"` - // used only if `subnet` is not specified in `networks` + // Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + Ip pulumi.StringPtrInput `pulumi:"ip"` + // used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") Netmask pulumi.StringPtrInput `pulumi:"netmask"` // optional, the network to be used for mgmt Network pulumi.StringPtrInput `pulumi:"network"` @@ -9385,16 +9390,17 @@ func (o GatewayPortConfigIpConfigOutput) DnsSuffixes() pulumi.StringArrayOutput return o.ApplyT(func(v GatewayPortConfigIpConfig) []string { return v.DnsSuffixes }).(pulumi.StringArrayOutput) } -// except for out-of_band interface (vme/em0/fxp0) +// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") func (o GatewayPortConfigIpConfigOutput) Gateway() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayPortConfigIpConfig) *string { return v.Gateway }).(pulumi.StringPtrOutput) } +// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") func (o GatewayPortConfigIpConfigOutput) Ip() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayPortConfigIpConfig) *string { return v.Ip }).(pulumi.StringPtrOutput) } -// used only if `subnet` is not specified in `networks` +// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") func (o GatewayPortConfigIpConfigOutput) Netmask() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayPortConfigIpConfig) *string { return v.Netmask }).(pulumi.StringPtrOutput) } @@ -9468,7 +9474,7 @@ func (o GatewayPortConfigIpConfigPtrOutput) DnsSuffixes() pulumi.StringArrayOutp }).(pulumi.StringArrayOutput) } -// except for out-of_band interface (vme/em0/fxp0) +// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") func (o GatewayPortConfigIpConfigPtrOutput) Gateway() pulumi.StringPtrOutput { return o.ApplyT(func(v *GatewayPortConfigIpConfig) *string { if v == nil { @@ -9478,6 +9484,7 @@ func (o GatewayPortConfigIpConfigPtrOutput) Gateway() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } +// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") func (o GatewayPortConfigIpConfigPtrOutput) Ip() pulumi.StringPtrOutput { return o.ApplyT(func(v *GatewayPortConfigIpConfig) *string { if v == nil { @@ -9487,7 +9494,7 @@ func (o GatewayPortConfigIpConfigPtrOutput) Ip() pulumi.StringPtrOutput { }).(pulumi.StringPtrOutput) } -// used only if `subnet` is not specified in `networks` +// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") func (o GatewayPortConfigIpConfigPtrOutput) Netmask() pulumi.StringPtrOutput { return o.ApplyT(func(v *GatewayPortConfigIpConfig) *string { if v == nil { @@ -9548,10 +9555,11 @@ func (o GatewayPortConfigIpConfigPtrOutput) Type() pulumi.StringPtrOutput { } type GatewayPortConfigTrafficShaping struct { - // percentages for differet class of traffic: high / medium / low / best-effort - // sum must be equal to 100 + // percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 ClassPercentages []int `pulumi:"classPercentages"` Enabled *bool `pulumi:"enabled"` + // Interface Transmit Cap in kbps + MaxTxKbps *int `pulumi:"maxTxKbps"` } // GatewayPortConfigTrafficShapingInput is an input type that accepts GatewayPortConfigTrafficShapingArgs and GatewayPortConfigTrafficShapingOutput values. @@ -9566,10 +9574,11 @@ type GatewayPortConfigTrafficShapingInput interface { } type GatewayPortConfigTrafficShapingArgs struct { - // percentages for differet class of traffic: high / medium / low / best-effort - // sum must be equal to 100 + // percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 ClassPercentages pulumi.IntArrayInput `pulumi:"classPercentages"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` + // Interface Transmit Cap in kbps + MaxTxKbps pulumi.IntPtrInput `pulumi:"maxTxKbps"` } func (GatewayPortConfigTrafficShapingArgs) ElementType() reflect.Type { @@ -9649,8 +9658,7 @@ func (o GatewayPortConfigTrafficShapingOutput) ToGatewayPortConfigTrafficShaping }).(GatewayPortConfigTrafficShapingPtrOutput) } -// percentages for differet class of traffic: high / medium / low / best-effort -// sum must be equal to 100 +// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 func (o GatewayPortConfigTrafficShapingOutput) ClassPercentages() pulumi.IntArrayOutput { return o.ApplyT(func(v GatewayPortConfigTrafficShaping) []int { return v.ClassPercentages }).(pulumi.IntArrayOutput) } @@ -9659,6 +9667,11 @@ func (o GatewayPortConfigTrafficShapingOutput) Enabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v GatewayPortConfigTrafficShaping) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } +// Interface Transmit Cap in kbps +func (o GatewayPortConfigTrafficShapingOutput) MaxTxKbps() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewayPortConfigTrafficShaping) *int { return v.MaxTxKbps }).(pulumi.IntPtrOutput) +} + type GatewayPortConfigTrafficShapingPtrOutput struct{ *pulumi.OutputState } func (GatewayPortConfigTrafficShapingPtrOutput) ElementType() reflect.Type { @@ -9683,8 +9696,7 @@ func (o GatewayPortConfigTrafficShapingPtrOutput) Elem() GatewayPortConfigTraffi }).(GatewayPortConfigTrafficShapingOutput) } -// percentages for differet class of traffic: high / medium / low / best-effort -// sum must be equal to 100 +// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 func (o GatewayPortConfigTrafficShapingPtrOutput) ClassPercentages() pulumi.IntArrayOutput { return o.ApplyT(func(v *GatewayPortConfigTrafficShaping) []int { if v == nil { @@ -9703,6 +9715,16 @@ func (o GatewayPortConfigTrafficShapingPtrOutput) Enabled() pulumi.BoolPtrOutput }).(pulumi.BoolPtrOutput) } +// Interface Transmit Cap in kbps +func (o GatewayPortConfigTrafficShapingPtrOutput) MaxTxKbps() pulumi.IntPtrOutput { + return o.ApplyT(func(v *GatewayPortConfigTrafficShaping) *int { + if v == nil { + return nil + } + return v.MaxTxKbps + }).(pulumi.IntPtrOutput) +} + type GatewayPortConfigVpnPaths struct { // Only if the VPN `type`==`hubSpoke`. enum: `broadband`, `lte` BfdProfile *string `pulumi:"bfdProfile"` @@ -9843,10 +9865,11 @@ func (o GatewayPortConfigVpnPathsMapOutput) MapIndex(k pulumi.StringInput) Gatew } type GatewayPortConfigVpnPathsTrafficShaping struct { - // percentages for differet class of traffic: high / medium / low / best-effort - // sum must be equal to 100 + // percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 ClassPercentages []int `pulumi:"classPercentages"` Enabled *bool `pulumi:"enabled"` + // Interface Transmit Cap in kbps + MaxTxKbps *int `pulumi:"maxTxKbps"` } // GatewayPortConfigVpnPathsTrafficShapingInput is an input type that accepts GatewayPortConfigVpnPathsTrafficShapingArgs and GatewayPortConfigVpnPathsTrafficShapingOutput values. @@ -9861,10 +9884,11 @@ type GatewayPortConfigVpnPathsTrafficShapingInput interface { } type GatewayPortConfigVpnPathsTrafficShapingArgs struct { - // percentages for differet class of traffic: high / medium / low / best-effort - // sum must be equal to 100 + // percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 ClassPercentages pulumi.IntArrayInput `pulumi:"classPercentages"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` + // Interface Transmit Cap in kbps + MaxTxKbps pulumi.IntPtrInput `pulumi:"maxTxKbps"` } func (GatewayPortConfigVpnPathsTrafficShapingArgs) ElementType() reflect.Type { @@ -9944,8 +9968,7 @@ func (o GatewayPortConfigVpnPathsTrafficShapingOutput) ToGatewayPortConfigVpnPat }).(GatewayPortConfigVpnPathsTrafficShapingPtrOutput) } -// percentages for differet class of traffic: high / medium / low / best-effort -// sum must be equal to 100 +// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 func (o GatewayPortConfigVpnPathsTrafficShapingOutput) ClassPercentages() pulumi.IntArrayOutput { return o.ApplyT(func(v GatewayPortConfigVpnPathsTrafficShaping) []int { return v.ClassPercentages }).(pulumi.IntArrayOutput) } @@ -9954,6 +9977,11 @@ func (o GatewayPortConfigVpnPathsTrafficShapingOutput) Enabled() pulumi.BoolPtrO return o.ApplyT(func(v GatewayPortConfigVpnPathsTrafficShaping) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } +// Interface Transmit Cap in kbps +func (o GatewayPortConfigVpnPathsTrafficShapingOutput) MaxTxKbps() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewayPortConfigVpnPathsTrafficShaping) *int { return v.MaxTxKbps }).(pulumi.IntPtrOutput) +} + type GatewayPortConfigVpnPathsTrafficShapingPtrOutput struct{ *pulumi.OutputState } func (GatewayPortConfigVpnPathsTrafficShapingPtrOutput) ElementType() reflect.Type { @@ -9978,8 +10006,7 @@ func (o GatewayPortConfigVpnPathsTrafficShapingPtrOutput) Elem() GatewayPortConf }).(GatewayPortConfigVpnPathsTrafficShapingOutput) } -// percentages for differet class of traffic: high / medium / low / best-effort -// sum must be equal to 100 +// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 func (o GatewayPortConfigVpnPathsTrafficShapingPtrOutput) ClassPercentages() pulumi.IntArrayOutput { return o.ApplyT(func(v *GatewayPortConfigVpnPathsTrafficShaping) []int { if v == nil { @@ -9998,6 +10025,16 @@ func (o GatewayPortConfigVpnPathsTrafficShapingPtrOutput) Enabled() pulumi.BoolP }).(pulumi.BoolPtrOutput) } +// Interface Transmit Cap in kbps +func (o GatewayPortConfigVpnPathsTrafficShapingPtrOutput) MaxTxKbps() pulumi.IntPtrOutput { + return o.ApplyT(func(v *GatewayPortConfigVpnPathsTrafficShaping) *int { + if v == nil { + return nil + } + return v.MaxTxKbps + }).(pulumi.IntPtrOutput) +} + type GatewayPortConfigWanExtraRoutes struct { Via *string `pulumi:"via"` } @@ -10934,6 +10971,8 @@ type GatewayRoutingPoliciesTermAction struct { AddCommunities []string `pulumi:"addCommunities"` // for SSR, hub decides how VRF routes are leaked on spoke AddTargetVrfs []string `pulumi:"addTargetVrfs"` + // route aggregation + Aggregates []string `pulumi:"aggregates"` // when used as export policy, optional Communities []string `pulumi:"communities"` // when used as export policy, optional. To exclude certain AS @@ -10963,6 +11002,8 @@ type GatewayRoutingPoliciesTermActionArgs struct { AddCommunities pulumi.StringArrayInput `pulumi:"addCommunities"` // for SSR, hub decides how VRF routes are leaked on spoke AddTargetVrfs pulumi.StringArrayInput `pulumi:"addTargetVrfs"` + // route aggregation + Aggregates pulumi.StringArrayInput `pulumi:"aggregates"` // when used as export policy, optional Communities pulumi.StringArrayInput `pulumi:"communities"` // when used as export policy, optional. To exclude certain AS @@ -11066,6 +11107,11 @@ func (o GatewayRoutingPoliciesTermActionOutput) AddTargetVrfs() pulumi.StringArr return o.ApplyT(func(v GatewayRoutingPoliciesTermAction) []string { return v.AddTargetVrfs }).(pulumi.StringArrayOutput) } +// route aggregation +func (o GatewayRoutingPoliciesTermActionOutput) Aggregates() pulumi.StringArrayOutput { + return o.ApplyT(func(v GatewayRoutingPoliciesTermAction) []string { return v.Aggregates }).(pulumi.StringArrayOutput) +} + // when used as export policy, optional func (o GatewayRoutingPoliciesTermActionOutput) Communities() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewayRoutingPoliciesTermAction) []string { return v.Communities }).(pulumi.StringArrayOutput) @@ -11147,6 +11193,16 @@ func (o GatewayRoutingPoliciesTermActionPtrOutput) AddTargetVrfs() pulumi.String }).(pulumi.StringArrayOutput) } +// route aggregation +func (o GatewayRoutingPoliciesTermActionPtrOutput) Aggregates() pulumi.StringArrayOutput { + return o.ApplyT(func(v *GatewayRoutingPoliciesTermAction) []string { + if v == nil { + return nil + } + return v.Aggregates + }).(pulumi.StringArrayOutput) +} + // when used as export policy, optional func (o GatewayRoutingPoliciesTermActionPtrOutput) Communities() pulumi.StringArrayOutput { return o.ApplyT(func(v *GatewayRoutingPoliciesTermAction) []string { @@ -11219,8 +11275,7 @@ type GatewayRoutingPoliciesTermMatching struct { // overlay-facing criteria (used for bgpConfig where via=vpn) VpnNeighborMacs []string `pulumi:"vpnNeighborMacs"` VpnPathSla *GatewayRoutingPoliciesTermMatchingVpnPathSla `pulumi:"vpnPathSla"` - // overlay-facing criteria (used for bgpConfig where via=vpn) - // ordered- + // overlay-facing criteria (used for bgpConfig where via=vpn). ordered- VpnPaths []string `pulumi:"vpnPaths"` } @@ -11248,8 +11303,7 @@ type GatewayRoutingPoliciesTermMatchingArgs struct { // overlay-facing criteria (used for bgpConfig where via=vpn) VpnNeighborMacs pulumi.StringArrayInput `pulumi:"vpnNeighborMacs"` VpnPathSla GatewayRoutingPoliciesTermMatchingVpnPathSlaPtrInput `pulumi:"vpnPathSla"` - // overlay-facing criteria (used for bgpConfig where via=vpn) - // ordered- + // overlay-facing criteria (used for bgpConfig where via=vpn). ordered- VpnPaths pulumi.StringArrayInput `pulumi:"vpnPaths"` } @@ -11370,8 +11424,7 @@ func (o GatewayRoutingPoliciesTermMatchingOutput) VpnPathSla() GatewayRoutingPol }).(GatewayRoutingPoliciesTermMatchingVpnPathSlaPtrOutput) } -// overlay-facing criteria (used for bgpConfig where via=vpn) -// ordered- +// overlay-facing criteria (used for bgpConfig where via=vpn). ordered- func (o GatewayRoutingPoliciesTermMatchingOutput) VpnPaths() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewayRoutingPoliciesTermMatching) []string { return v.VpnPaths }).(pulumi.StringArrayOutput) } @@ -11476,8 +11529,7 @@ func (o GatewayRoutingPoliciesTermMatchingPtrOutput) VpnPathSla() GatewayRouting }).(GatewayRoutingPoliciesTermMatchingVpnPathSlaPtrOutput) } -// overlay-facing criteria (used for bgpConfig where via=vpn) -// ordered- +// overlay-facing criteria (used for bgpConfig where via=vpn). ordered- func (o GatewayRoutingPoliciesTermMatchingPtrOutput) VpnPaths() pulumi.StringArrayOutput { return o.ApplyT(func(v *GatewayRoutingPoliciesTermMatching) []string { if v == nil { @@ -11489,8 +11541,7 @@ func (o GatewayRoutingPoliciesTermMatchingPtrOutput) VpnPaths() pulumi.StringArr type GatewayRoutingPoliciesTermMatchingRouteExists struct { Route *string `pulumi:"route"` - // name of the vrf instance - // it can also be the name of the VPN or wan if they + // name of the vrf instance, it can also be the name of the VPN or wan if they VrfName *string `pulumi:"vrfName"` } @@ -11507,8 +11558,7 @@ type GatewayRoutingPoliciesTermMatchingRouteExistsInput interface { type GatewayRoutingPoliciesTermMatchingRouteExistsArgs struct { Route pulumi.StringPtrInput `pulumi:"route"` - // name of the vrf instance - // it can also be the name of the VPN or wan if they + // name of the vrf instance, it can also be the name of the VPN or wan if they VrfName pulumi.StringPtrInput `pulumi:"vrfName"` } @@ -11593,8 +11643,7 @@ func (o GatewayRoutingPoliciesTermMatchingRouteExistsOutput) Route() pulumi.Stri return o.ApplyT(func(v GatewayRoutingPoliciesTermMatchingRouteExists) *string { return v.Route }).(pulumi.StringPtrOutput) } -// name of the vrf instance -// it can also be the name of the VPN or wan if they +// name of the vrf instance, it can also be the name of the VPN or wan if they func (o GatewayRoutingPoliciesTermMatchingRouteExistsOutput) VrfName() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayRoutingPoliciesTermMatchingRouteExists) *string { return v.VrfName }).(pulumi.StringPtrOutput) } @@ -11632,8 +11681,7 @@ func (o GatewayRoutingPoliciesTermMatchingRouteExistsPtrOutput) Route() pulumi.S }).(pulumi.StringPtrOutput) } -// name of the vrf instance -// it can also be the name of the VPN or wan if they +// name of the vrf instance, it can also be the name of the VPN or wan if they func (o GatewayRoutingPoliciesTermMatchingRouteExistsPtrOutput) VrfName() pulumi.StringPtrOutput { return o.ApplyT(func(v *GatewayRoutingPoliciesTermMatchingRouteExists) *string { if v == nil { @@ -11817,8 +11865,7 @@ type GatewayServicePolicy struct { LocalRouting *bool `pulumi:"localRouting"` // Required when `servicepolicyId` is not defined, optional otherwise (override the servicepolicy name) Name *string `pulumi:"name"` - // by default, we derive all paths available and use them - // optionally, you can customize by using `pathPreference` + // by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` PathPreference *string `pulumi:"pathPreference"` // used to link servicepolicy defined at org level and overwrite some attributes ServicepolicyId *string `pulumi:"servicepolicyId"` @@ -11850,8 +11897,7 @@ type GatewayServicePolicyArgs struct { LocalRouting pulumi.BoolPtrInput `pulumi:"localRouting"` // Required when `servicepolicyId` is not defined, optional otherwise (override the servicepolicy name) Name pulumi.StringPtrInput `pulumi:"name"` - // by default, we derive all paths available and use them - // optionally, you can customize by using `pathPreference` + // by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` PathPreference pulumi.StringPtrInput `pulumi:"pathPreference"` // used to link servicepolicy defined at org level and overwrite some attributes ServicepolicyId pulumi.StringPtrInput `pulumi:"servicepolicyId"` @@ -11940,8 +11986,7 @@ func (o GatewayServicePolicyOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayServicePolicy) *string { return v.Name }).(pulumi.StringPtrOutput) } -// by default, we derive all paths available and use them -// optionally, you can customize by using `pathPreference` +// by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` func (o GatewayServicePolicyOutput) PathPreference() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayServicePolicy) *string { return v.PathPreference }).(pulumi.StringPtrOutput) } @@ -12417,39 +12462,35 @@ func (o GatewayServicePolicyIdpPtrOutput) Profile() pulumi.StringPtrOutput { type GatewayTunnelConfigs struct { AutoProvision *GatewayTunnelConfigsAutoProvision `pulumi:"autoProvision"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 IkeLifetime *int `pulumi:"ikeLifetime"` - // Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + // Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` IkeMode *string `pulumi:"ikeMode"` - // if `provider`== `custom-ipsec` + // if `provider`==`custom-ipsec` IkeProposals []GatewayTunnelConfigsIkeProposal `pulumi:"ikeProposals"` - // if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 IpsecLifetime *int `pulumi:"ipsecLifetime"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec` IpsecProposals []GatewayTunnelConfigsIpsecProposal `pulumi:"ipsecProposals"` - // Only if: - // * `provider`== `zscaler-ipsec` - // * `provider`==`jse-ipsec` - // * `provider`== `custom-ipsec` + // Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` LocalId *string `pulumi:"localId"` - // enum: `active-active`, `active-standby` + // Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` Mode *string `pulumi:"mode"` - // networks reachable via this tunnel - Networks []string `pulumi:"networks"` - Primary *GatewayTunnelConfigsPrimary `pulumi:"primary"` - // Only if `provider`== `custom-ipsec` + // if `provider`==`custom-ipsec`, networks reachable via this tunnel + Networks []string `pulumi:"networks"` + // Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + Primary *GatewayTunnelConfigsPrimary `pulumi:"primary"` + // Only if `provider`==`custom-ipsec` Probe *GatewayTunnelConfigsProbe `pulumi:"probe"` - // Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + // Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` Protocol *string `pulumi:"protocol"` - // enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + // Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` Provider *string `pulumi:"provider"` - // Only if: - // * `provider`== `zscaler-ipsec` - // * `provider`==`jse-ipsec` - // * `provider`== `custom-ipsec` - Psk *string `pulumi:"psk"` + // Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + Psk *string `pulumi:"psk"` + // Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` Secondary *GatewayTunnelConfigsSecondary `pulumi:"secondary"` - // Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + // Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` Version *string `pulumi:"version"` } @@ -12466,39 +12507,35 @@ type GatewayTunnelConfigsInput interface { type GatewayTunnelConfigsArgs struct { AutoProvision GatewayTunnelConfigsAutoProvisionPtrInput `pulumi:"autoProvision"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 IkeLifetime pulumi.IntPtrInput `pulumi:"ikeLifetime"` - // Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + // Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` IkeMode pulumi.StringPtrInput `pulumi:"ikeMode"` - // if `provider`== `custom-ipsec` + // if `provider`==`custom-ipsec` IkeProposals GatewayTunnelConfigsIkeProposalArrayInput `pulumi:"ikeProposals"` - // if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 IpsecLifetime pulumi.IntPtrInput `pulumi:"ipsecLifetime"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec` IpsecProposals GatewayTunnelConfigsIpsecProposalArrayInput `pulumi:"ipsecProposals"` - // Only if: - // * `provider`== `zscaler-ipsec` - // * `provider`==`jse-ipsec` - // * `provider`== `custom-ipsec` + // Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` LocalId pulumi.StringPtrInput `pulumi:"localId"` - // enum: `active-active`, `active-standby` + // Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` Mode pulumi.StringPtrInput `pulumi:"mode"` - // networks reachable via this tunnel - Networks pulumi.StringArrayInput `pulumi:"networks"` - Primary GatewayTunnelConfigsPrimaryPtrInput `pulumi:"primary"` - // Only if `provider`== `custom-ipsec` + // if `provider`==`custom-ipsec`, networks reachable via this tunnel + Networks pulumi.StringArrayInput `pulumi:"networks"` + // Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + Primary GatewayTunnelConfigsPrimaryPtrInput `pulumi:"primary"` + // Only if `provider`==`custom-ipsec` Probe GatewayTunnelConfigsProbePtrInput `pulumi:"probe"` - // Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + // Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` Protocol pulumi.StringPtrInput `pulumi:"protocol"` - // enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + // Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` Provider pulumi.StringPtrInput `pulumi:"provider"` - // Only if: - // * `provider`== `zscaler-ipsec` - // * `provider`==`jse-ipsec` - // * `provider`== `custom-ipsec` - Psk pulumi.StringPtrInput `pulumi:"psk"` + // Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + Psk pulumi.StringPtrInput `pulumi:"psk"` + // Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` Secondary GatewayTunnelConfigsSecondaryPtrInput `pulumi:"secondary"` - // Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + // Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` Version pulumi.StringPtrInput `pulumi:"version"` } @@ -12557,81 +12594,77 @@ func (o GatewayTunnelConfigsOutput) AutoProvision() GatewayTunnelConfigsAutoProv return o.ApplyT(func(v GatewayTunnelConfigs) *GatewayTunnelConfigsAutoProvision { return v.AutoProvision }).(GatewayTunnelConfigsAutoProvisionPtrOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 func (o GatewayTunnelConfigsOutput) IkeLifetime() pulumi.IntPtrOutput { return o.ApplyT(func(v GatewayTunnelConfigs) *int { return v.IkeLifetime }).(pulumi.IntPtrOutput) } -// Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` +// Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` func (o GatewayTunnelConfigsOutput) IkeMode() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayTunnelConfigs) *string { return v.IkeMode }).(pulumi.StringPtrOutput) } -// if `provider`== `custom-ipsec` +// if `provider`==`custom-ipsec` func (o GatewayTunnelConfigsOutput) IkeProposals() GatewayTunnelConfigsIkeProposalArrayOutput { return o.ApplyT(func(v GatewayTunnelConfigs) []GatewayTunnelConfigsIkeProposal { return v.IkeProposals }).(GatewayTunnelConfigsIkeProposalArrayOutput) } -// if `provider`== `custom-ipsec` +// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 func (o GatewayTunnelConfigsOutput) IpsecLifetime() pulumi.IntPtrOutput { return o.ApplyT(func(v GatewayTunnelConfigs) *int { return v.IpsecLifetime }).(pulumi.IntPtrOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`custom-ipsec` func (o GatewayTunnelConfigsOutput) IpsecProposals() GatewayTunnelConfigsIpsecProposalArrayOutput { return o.ApplyT(func(v GatewayTunnelConfigs) []GatewayTunnelConfigsIpsecProposal { return v.IpsecProposals }).(GatewayTunnelConfigsIpsecProposalArrayOutput) } -// Only if: -// - `provider`== `zscaler-ipsec` -// - `provider`==`jse-ipsec` -// - `provider`== `custom-ipsec` +// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewayTunnelConfigsOutput) LocalId() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayTunnelConfigs) *string { return v.LocalId }).(pulumi.StringPtrOutput) } -// enum: `active-active`, `active-standby` +// Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` func (o GatewayTunnelConfigsOutput) Mode() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayTunnelConfigs) *string { return v.Mode }).(pulumi.StringPtrOutput) } -// networks reachable via this tunnel +// if `provider`==`custom-ipsec`, networks reachable via this tunnel func (o GatewayTunnelConfigsOutput) Networks() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewayTunnelConfigs) []string { return v.Networks }).(pulumi.StringArrayOutput) } +// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewayTunnelConfigsOutput) Primary() GatewayTunnelConfigsPrimaryPtrOutput { return o.ApplyT(func(v GatewayTunnelConfigs) *GatewayTunnelConfigsPrimary { return v.Primary }).(GatewayTunnelConfigsPrimaryPtrOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`custom-ipsec` func (o GatewayTunnelConfigsOutput) Probe() GatewayTunnelConfigsProbePtrOutput { return o.ApplyT(func(v GatewayTunnelConfigs) *GatewayTunnelConfigsProbe { return v.Probe }).(GatewayTunnelConfigsProbePtrOutput) } -// Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` +// Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` func (o GatewayTunnelConfigsOutput) Protocol() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayTunnelConfigs) *string { return v.Protocol }).(pulumi.StringPtrOutput) } -// enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` +// Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` func (o GatewayTunnelConfigsOutput) Provider() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayTunnelConfigs) *string { return v.Provider }).(pulumi.StringPtrOutput) } -// Only if: -// - `provider`== `zscaler-ipsec` -// - `provider`==`jse-ipsec` -// - `provider`== `custom-ipsec` +// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewayTunnelConfigsOutput) Psk() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayTunnelConfigs) *string { return v.Psk }).(pulumi.StringPtrOutput) } +// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewayTunnelConfigsOutput) Secondary() GatewayTunnelConfigsSecondaryPtrOutput { return o.ApplyT(func(v GatewayTunnelConfigs) *GatewayTunnelConfigsSecondary { return v.Secondary }).(GatewayTunnelConfigsSecondaryPtrOutput) } -// Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` +// Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` func (o GatewayTunnelConfigsOutput) Version() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewayTunnelConfigs) *string { return v.Version }).(pulumi.StringPtrOutput) } @@ -12657,9 +12690,14 @@ func (o GatewayTunnelConfigsMapOutput) MapIndex(k pulumi.StringInput) GatewayTun } type GatewayTunnelConfigsAutoProvision struct { - Enable *bool `pulumi:"enable"` - Latlng *GatewayTunnelConfigsAutoProvisionLatlng `pulumi:"latlng"` - Primary *GatewayTunnelConfigsAutoProvisionPrimary `pulumi:"primary"` + Enable *bool `pulumi:"enable"` + // API override for POP selection + Latlng *GatewayTunnelConfigsAutoProvisionLatlng `pulumi:"latlng"` + Primary *GatewayTunnelConfigsAutoProvisionPrimary `pulumi:"primary"` + // enum: `jse-ipsec`, `zscaler-ipsec` + Provider string `pulumi:"provider"` + // API override for POP selection + Region *string `pulumi:"region"` Secondary *GatewayTunnelConfigsAutoProvisionSecondary `pulumi:"secondary"` } @@ -12675,9 +12713,14 @@ type GatewayTunnelConfigsAutoProvisionInput interface { } type GatewayTunnelConfigsAutoProvisionArgs struct { - Enable pulumi.BoolPtrInput `pulumi:"enable"` - Latlng GatewayTunnelConfigsAutoProvisionLatlngPtrInput `pulumi:"latlng"` - Primary GatewayTunnelConfigsAutoProvisionPrimaryPtrInput `pulumi:"primary"` + Enable pulumi.BoolPtrInput `pulumi:"enable"` + // API override for POP selection + Latlng GatewayTunnelConfigsAutoProvisionLatlngPtrInput `pulumi:"latlng"` + Primary GatewayTunnelConfigsAutoProvisionPrimaryPtrInput `pulumi:"primary"` + // enum: `jse-ipsec`, `zscaler-ipsec` + Provider pulumi.StringInput `pulumi:"provider"` + // API override for POP selection + Region pulumi.StringPtrInput `pulumi:"region"` Secondary GatewayTunnelConfigsAutoProvisionSecondaryPtrInput `pulumi:"secondary"` } @@ -12762,6 +12805,7 @@ func (o GatewayTunnelConfigsAutoProvisionOutput) Enable() pulumi.BoolPtrOutput { return o.ApplyT(func(v GatewayTunnelConfigsAutoProvision) *bool { return v.Enable }).(pulumi.BoolPtrOutput) } +// API override for POP selection func (o GatewayTunnelConfigsAutoProvisionOutput) Latlng() GatewayTunnelConfigsAutoProvisionLatlngPtrOutput { return o.ApplyT(func(v GatewayTunnelConfigsAutoProvision) *GatewayTunnelConfigsAutoProvisionLatlng { return v.Latlng }).(GatewayTunnelConfigsAutoProvisionLatlngPtrOutput) } @@ -12770,6 +12814,16 @@ func (o GatewayTunnelConfigsAutoProvisionOutput) Primary() GatewayTunnelConfigsA return o.ApplyT(func(v GatewayTunnelConfigsAutoProvision) *GatewayTunnelConfigsAutoProvisionPrimary { return v.Primary }).(GatewayTunnelConfigsAutoProvisionPrimaryPtrOutput) } +// enum: `jse-ipsec`, `zscaler-ipsec` +func (o GatewayTunnelConfigsAutoProvisionOutput) Provider() pulumi.StringOutput { + return o.ApplyT(func(v GatewayTunnelConfigsAutoProvision) string { return v.Provider }).(pulumi.StringOutput) +} + +// API override for POP selection +func (o GatewayTunnelConfigsAutoProvisionOutput) Region() pulumi.StringPtrOutput { + return o.ApplyT(func(v GatewayTunnelConfigsAutoProvision) *string { return v.Region }).(pulumi.StringPtrOutput) +} + func (o GatewayTunnelConfigsAutoProvisionOutput) Secondary() GatewayTunnelConfigsAutoProvisionSecondaryPtrOutput { return o.ApplyT(func(v GatewayTunnelConfigsAutoProvision) *GatewayTunnelConfigsAutoProvisionSecondary { return v.Secondary @@ -12809,6 +12863,7 @@ func (o GatewayTunnelConfigsAutoProvisionPtrOutput) Enable() pulumi.BoolPtrOutpu }).(pulumi.BoolPtrOutput) } +// API override for POP selection func (o GatewayTunnelConfigsAutoProvisionPtrOutput) Latlng() GatewayTunnelConfigsAutoProvisionLatlngPtrOutput { return o.ApplyT(func(v *GatewayTunnelConfigsAutoProvision) *GatewayTunnelConfigsAutoProvisionLatlng { if v == nil { @@ -12827,6 +12882,26 @@ func (o GatewayTunnelConfigsAutoProvisionPtrOutput) Primary() GatewayTunnelConfi }).(GatewayTunnelConfigsAutoProvisionPrimaryPtrOutput) } +// enum: `jse-ipsec`, `zscaler-ipsec` +func (o GatewayTunnelConfigsAutoProvisionPtrOutput) Provider() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GatewayTunnelConfigsAutoProvision) *string { + if v == nil { + return nil + } + return &v.Provider + }).(pulumi.StringPtrOutput) +} + +// API override for POP selection +func (o GatewayTunnelConfigsAutoProvisionPtrOutput) Region() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GatewayTunnelConfigsAutoProvision) *string { + if v == nil { + return nil + } + return v.Region + }).(pulumi.StringPtrOutput) +} + func (o GatewayTunnelConfigsAutoProvisionPtrOutput) Secondary() GatewayTunnelConfigsAutoProvisionSecondaryPtrOutput { return o.ApplyT(func(v *GatewayTunnelConfigsAutoProvision) *GatewayTunnelConfigsAutoProvisionSecondary { if v == nil { @@ -12985,7 +13060,7 @@ func (o GatewayTunnelConfigsAutoProvisionLatlngPtrOutput) Lng() pulumi.Float64Pt } type GatewayTunnelConfigsAutoProvisionPrimary struct { - NumHosts *string `pulumi:"numHosts"` + ProbeIps []string `pulumi:"probeIps"` // optional, only needed if `varsOnly`==`false` WanNames []string `pulumi:"wanNames"` } @@ -13002,7 +13077,7 @@ type GatewayTunnelConfigsAutoProvisionPrimaryInput interface { } type GatewayTunnelConfigsAutoProvisionPrimaryArgs struct { - NumHosts pulumi.StringPtrInput `pulumi:"numHosts"` + ProbeIps pulumi.StringArrayInput `pulumi:"probeIps"` // optional, only needed if `varsOnly`==`false` WanNames pulumi.StringArrayInput `pulumi:"wanNames"` } @@ -13084,8 +13159,8 @@ func (o GatewayTunnelConfigsAutoProvisionPrimaryOutput) ToGatewayTunnelConfigsAu }).(GatewayTunnelConfigsAutoProvisionPrimaryPtrOutput) } -func (o GatewayTunnelConfigsAutoProvisionPrimaryOutput) NumHosts() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewayTunnelConfigsAutoProvisionPrimary) *string { return v.NumHosts }).(pulumi.StringPtrOutput) +func (o GatewayTunnelConfigsAutoProvisionPrimaryOutput) ProbeIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v GatewayTunnelConfigsAutoProvisionPrimary) []string { return v.ProbeIps }).(pulumi.StringArrayOutput) } // optional, only needed if `varsOnly`==`false` @@ -13117,13 +13192,13 @@ func (o GatewayTunnelConfigsAutoProvisionPrimaryPtrOutput) Elem() GatewayTunnelC }).(GatewayTunnelConfigsAutoProvisionPrimaryOutput) } -func (o GatewayTunnelConfigsAutoProvisionPrimaryPtrOutput) NumHosts() pulumi.StringPtrOutput { - return o.ApplyT(func(v *GatewayTunnelConfigsAutoProvisionPrimary) *string { +func (o GatewayTunnelConfigsAutoProvisionPrimaryPtrOutput) ProbeIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v *GatewayTunnelConfigsAutoProvisionPrimary) []string { if v == nil { return nil } - return v.NumHosts - }).(pulumi.StringPtrOutput) + return v.ProbeIps + }).(pulumi.StringArrayOutput) } // optional, only needed if `varsOnly`==`false` @@ -13137,7 +13212,7 @@ func (o GatewayTunnelConfigsAutoProvisionPrimaryPtrOutput) WanNames() pulumi.Str } type GatewayTunnelConfigsAutoProvisionSecondary struct { - NumHosts *string `pulumi:"numHosts"` + ProbeIps []string `pulumi:"probeIps"` // optional, only needed if `varsOnly`==`false` WanNames []string `pulumi:"wanNames"` } @@ -13154,7 +13229,7 @@ type GatewayTunnelConfigsAutoProvisionSecondaryInput interface { } type GatewayTunnelConfigsAutoProvisionSecondaryArgs struct { - NumHosts pulumi.StringPtrInput `pulumi:"numHosts"` + ProbeIps pulumi.StringArrayInput `pulumi:"probeIps"` // optional, only needed if `varsOnly`==`false` WanNames pulumi.StringArrayInput `pulumi:"wanNames"` } @@ -13236,8 +13311,8 @@ func (o GatewayTunnelConfigsAutoProvisionSecondaryOutput) ToGatewayTunnelConfigs }).(GatewayTunnelConfigsAutoProvisionSecondaryPtrOutput) } -func (o GatewayTunnelConfigsAutoProvisionSecondaryOutput) NumHosts() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewayTunnelConfigsAutoProvisionSecondary) *string { return v.NumHosts }).(pulumi.StringPtrOutput) +func (o GatewayTunnelConfigsAutoProvisionSecondaryOutput) ProbeIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v GatewayTunnelConfigsAutoProvisionSecondary) []string { return v.ProbeIps }).(pulumi.StringArrayOutput) } // optional, only needed if `varsOnly`==`false` @@ -13269,13 +13344,13 @@ func (o GatewayTunnelConfigsAutoProvisionSecondaryPtrOutput) Elem() GatewayTunne }).(GatewayTunnelConfigsAutoProvisionSecondaryOutput) } -func (o GatewayTunnelConfigsAutoProvisionSecondaryPtrOutput) NumHosts() pulumi.StringPtrOutput { - return o.ApplyT(func(v *GatewayTunnelConfigsAutoProvisionSecondary) *string { +func (o GatewayTunnelConfigsAutoProvisionSecondaryPtrOutput) ProbeIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v *GatewayTunnelConfigsAutoProvisionSecondary) []string { if v == nil { return nil } - return v.NumHosts - }).(pulumi.StringPtrOutput) + return v.ProbeIps + }).(pulumi.StringArrayOutput) } // optional, only needed if `varsOnly`==`false` @@ -13436,7 +13511,7 @@ func (o GatewayTunnelConfigsIkeProposalArrayOutput) Index(i pulumi.IntInput) Gat type GatewayTunnelConfigsIpsecProposal struct { // enum: `md5`, `sha1`, `sha2` AuthAlgo *string `pulumi:"authAlgo"` - // Only if `provider`== `custom-ipsec`. enum: + // Only if `provider`==`custom-ipsec`. enum: // * 1 // * 2 (1024-bit) // * 5 @@ -13466,7 +13541,7 @@ type GatewayTunnelConfigsIpsecProposalInput interface { type GatewayTunnelConfigsIpsecProposalArgs struct { // enum: `md5`, `sha1`, `sha2` AuthAlgo pulumi.StringPtrInput `pulumi:"authAlgo"` - // Only if `provider`== `custom-ipsec`. enum: + // Only if `provider`==`custom-ipsec`. enum: // * 1 // * 2 (1024-bit) // * 5 @@ -13538,7 +13613,7 @@ func (o GatewayTunnelConfigsIpsecProposalOutput) AuthAlgo() pulumi.StringPtrOutp return o.ApplyT(func(v GatewayTunnelConfigsIpsecProposal) *string { return v.AuthAlgo }).(pulumi.StringPtrOutput) } -// Only if `provider`== `custom-ipsec`. enum: +// Only if `provider`==`custom-ipsec`. enum: // - 1 // - 2 (1024-bit) // - 5 @@ -13580,12 +13655,10 @@ func (o GatewayTunnelConfigsIpsecProposalArrayOutput) Index(i pulumi.IntInput) G type GatewayTunnelConfigsPrimary struct { Hosts []string `pulumi:"hosts"` - // Only if: - // * `provider`== `zscaler-gre` - // * `provider`== `custom-gre` + // Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` InternalIps []string `pulumi:"internalIps"` ProbeIps []string `pulumi:"probeIps"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` RemoteIds []string `pulumi:"remoteIds"` WanNames []string `pulumi:"wanNames"` } @@ -13603,12 +13676,10 @@ type GatewayTunnelConfigsPrimaryInput interface { type GatewayTunnelConfigsPrimaryArgs struct { Hosts pulumi.StringArrayInput `pulumi:"hosts"` - // Only if: - // * `provider`== `zscaler-gre` - // * `provider`== `custom-gre` + // Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` InternalIps pulumi.StringArrayInput `pulumi:"internalIps"` ProbeIps pulumi.StringArrayInput `pulumi:"probeIps"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` RemoteIds pulumi.StringArrayInput `pulumi:"remoteIds"` WanNames pulumi.StringArrayInput `pulumi:"wanNames"` } @@ -13694,9 +13765,7 @@ func (o GatewayTunnelConfigsPrimaryOutput) Hosts() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewayTunnelConfigsPrimary) []string { return v.Hosts }).(pulumi.StringArrayOutput) } -// Only if: -// - `provider`== `zscaler-gre` -// - `provider`== `custom-gre` +// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` func (o GatewayTunnelConfigsPrimaryOutput) InternalIps() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewayTunnelConfigsPrimary) []string { return v.InternalIps }).(pulumi.StringArrayOutput) } @@ -13705,7 +13774,7 @@ func (o GatewayTunnelConfigsPrimaryOutput) ProbeIps() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewayTunnelConfigsPrimary) []string { return v.ProbeIps }).(pulumi.StringArrayOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewayTunnelConfigsPrimaryOutput) RemoteIds() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewayTunnelConfigsPrimary) []string { return v.RemoteIds }).(pulumi.StringArrayOutput) } @@ -13747,9 +13816,7 @@ func (o GatewayTunnelConfigsPrimaryPtrOutput) Hosts() pulumi.StringArrayOutput { }).(pulumi.StringArrayOutput) } -// Only if: -// - `provider`== `zscaler-gre` -// - `provider`== `custom-gre` +// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` func (o GatewayTunnelConfigsPrimaryPtrOutput) InternalIps() pulumi.StringArrayOutput { return o.ApplyT(func(v *GatewayTunnelConfigsPrimary) []string { if v == nil { @@ -13768,7 +13835,7 @@ func (o GatewayTunnelConfigsPrimaryPtrOutput) ProbeIps() pulumi.StringArrayOutpu }).(pulumi.StringArrayOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewayTunnelConfigsPrimaryPtrOutput) RemoteIds() pulumi.StringArrayOutput { return o.ApplyT(func(v *GatewayTunnelConfigsPrimary) []string { if v == nil { @@ -13983,12 +14050,10 @@ func (o GatewayTunnelConfigsProbePtrOutput) Type() pulumi.StringPtrOutput { type GatewayTunnelConfigsSecondary struct { Hosts []string `pulumi:"hosts"` - // Only if: - // * `provider`== `zscaler-gre` - // * `provider`== `custom-gre` + // Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` InternalIps []string `pulumi:"internalIps"` ProbeIps []string `pulumi:"probeIps"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` RemoteIds []string `pulumi:"remoteIds"` WanNames []string `pulumi:"wanNames"` } @@ -14006,12 +14071,10 @@ type GatewayTunnelConfigsSecondaryInput interface { type GatewayTunnelConfigsSecondaryArgs struct { Hosts pulumi.StringArrayInput `pulumi:"hosts"` - // Only if: - // * `provider`== `zscaler-gre` - // * `provider`== `custom-gre` + // Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` InternalIps pulumi.StringArrayInput `pulumi:"internalIps"` ProbeIps pulumi.StringArrayInput `pulumi:"probeIps"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` RemoteIds pulumi.StringArrayInput `pulumi:"remoteIds"` WanNames pulumi.StringArrayInput `pulumi:"wanNames"` } @@ -14097,9 +14160,7 @@ func (o GatewayTunnelConfigsSecondaryOutput) Hosts() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewayTunnelConfigsSecondary) []string { return v.Hosts }).(pulumi.StringArrayOutput) } -// Only if: -// - `provider`== `zscaler-gre` -// - `provider`== `custom-gre` +// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` func (o GatewayTunnelConfigsSecondaryOutput) InternalIps() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewayTunnelConfigsSecondary) []string { return v.InternalIps }).(pulumi.StringArrayOutput) } @@ -14108,7 +14169,7 @@ func (o GatewayTunnelConfigsSecondaryOutput) ProbeIps() pulumi.StringArrayOutput return o.ApplyT(func(v GatewayTunnelConfigsSecondary) []string { return v.ProbeIps }).(pulumi.StringArrayOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewayTunnelConfigsSecondaryOutput) RemoteIds() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewayTunnelConfigsSecondary) []string { return v.RemoteIds }).(pulumi.StringArrayOutput) } @@ -14150,9 +14211,7 @@ func (o GatewayTunnelConfigsSecondaryPtrOutput) Hosts() pulumi.StringArrayOutput }).(pulumi.StringArrayOutput) } -// Only if: -// - `provider`== `zscaler-gre` -// - `provider`== `custom-gre` +// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` func (o GatewayTunnelConfigsSecondaryPtrOutput) InternalIps() pulumi.StringArrayOutput { return o.ApplyT(func(v *GatewayTunnelConfigsSecondary) []string { if v == nil { @@ -14171,7 +14230,7 @@ func (o GatewayTunnelConfigsSecondaryPtrOutput) ProbeIps() pulumi.StringArrayOut }).(pulumi.StringArrayOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewayTunnelConfigsSecondaryPtrOutput) RemoteIds() pulumi.StringArrayOutput { return o.ApplyT(func(v *GatewayTunnelConfigsSecondary) []string { if v == nil { @@ -14347,8 +14406,9 @@ func (o GatewayTunnelProviderOptionsPtrOutput) Zscaler() GatewayTunnelProviderOp } type GatewayTunnelProviderOptionsJse struct { - Name *string `pulumi:"name"` - NumUsers *int `pulumi:"numUsers"` + NumUsers *int `pulumi:"numUsers"` + // JSE Organization name + OrgName *string `pulumi:"orgName"` } // GatewayTunnelProviderOptionsJseInput is an input type that accepts GatewayTunnelProviderOptionsJseArgs and GatewayTunnelProviderOptionsJseOutput values. @@ -14363,8 +14423,9 @@ type GatewayTunnelProviderOptionsJseInput interface { } type GatewayTunnelProviderOptionsJseArgs struct { - Name pulumi.StringPtrInput `pulumi:"name"` - NumUsers pulumi.IntPtrInput `pulumi:"numUsers"` + NumUsers pulumi.IntPtrInput `pulumi:"numUsers"` + // JSE Organization name + OrgName pulumi.StringPtrInput `pulumi:"orgName"` } func (GatewayTunnelProviderOptionsJseArgs) ElementType() reflect.Type { @@ -14444,14 +14505,15 @@ func (o GatewayTunnelProviderOptionsJseOutput) ToGatewayTunnelProviderOptionsJse }).(GatewayTunnelProviderOptionsJsePtrOutput) } -func (o GatewayTunnelProviderOptionsJseOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsJse) *string { return v.Name }).(pulumi.StringPtrOutput) -} - func (o GatewayTunnelProviderOptionsJseOutput) NumUsers() pulumi.IntPtrOutput { return o.ApplyT(func(v GatewayTunnelProviderOptionsJse) *int { return v.NumUsers }).(pulumi.IntPtrOutput) } +// JSE Organization name +func (o GatewayTunnelProviderOptionsJseOutput) OrgName() pulumi.StringPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsJse) *string { return v.OrgName }).(pulumi.StringPtrOutput) +} + type GatewayTunnelProviderOptionsJsePtrOutput struct{ *pulumi.OutputState } func (GatewayTunnelProviderOptionsJsePtrOutput) ElementType() reflect.Type { @@ -14476,44 +14538,55 @@ func (o GatewayTunnelProviderOptionsJsePtrOutput) Elem() GatewayTunnelProviderOp }).(GatewayTunnelProviderOptionsJseOutput) } -func (o GatewayTunnelProviderOptionsJsePtrOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v *GatewayTunnelProviderOptionsJse) *string { +func (o GatewayTunnelProviderOptionsJsePtrOutput) NumUsers() pulumi.IntPtrOutput { + return o.ApplyT(func(v *GatewayTunnelProviderOptionsJse) *int { if v == nil { return nil } - return v.Name - }).(pulumi.StringPtrOutput) + return v.NumUsers + }).(pulumi.IntPtrOutput) } -func (o GatewayTunnelProviderOptionsJsePtrOutput) NumUsers() pulumi.IntPtrOutput { - return o.ApplyT(func(v *GatewayTunnelProviderOptionsJse) *int { +// JSE Organization name +func (o GatewayTunnelProviderOptionsJsePtrOutput) OrgName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GatewayTunnelProviderOptionsJse) *string { if v == nil { return nil } - return v.NumUsers - }).(pulumi.IntPtrOutput) + return v.OrgName + }).(pulumi.StringPtrOutput) } type GatewayTunnelProviderOptionsZscaler struct { - AupAcceptanceRequired *bool `pulumi:"aupAcceptanceRequired"` - // days before AUP is requested again - AupExpire *int `pulumi:"aupExpire"` + AupBlockInternetUntilAccepted *bool `pulumi:"aupBlockInternetUntilAccepted"` + // Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) + AupEnabled *bool `pulumi:"aupEnabled"` // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - AupSslProxy *bool `pulumi:"aupSslProxy"` - // the download bandwidth cap of the link, in Mbps - DownloadMbps *int `pulumi:"downloadMbps"` - // if `useXff`==`true`, display Acceptable Use Policy (AUP) - EnableAup *bool `pulumi:"enableAup"` - // when `enforceAuthentication`==`false`, display caution notification for non-authenticated users - EnableCaution *bool `pulumi:"enableCaution"` - EnforceAuthentication *bool `pulumi:"enforceAuthentication"` - Name *string `pulumi:"name"` - // if `useXff`==`true` + AupForceSslInspection *bool `pulumi:"aupForceSslInspection"` + // Required if `aupEnabled`==`true`. Days before AUP is requested again + AupTimeoutInDays *int `pulumi:"aupTimeoutInDays"` + // Enable this option to enforce user authentication + AuthRequired *bool `pulumi:"authRequired"` + // Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users + CautionEnabled *bool `pulumi:"cautionEnabled"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + DnBandwidth *float64 `pulumi:"dnBandwidth"` + // Required if `surrogate_IP`==`true`, idle Time to Disassociation + IdleTimeInMinutes *int `pulumi:"idleTimeInMinutes"` + // if `true`, enable the firewall control option + OfwEnabled *bool `pulumi:"ofwEnabled"` + // `sub-locations` can be used for specific uses cases to define different configuration based on the user network SubLocations []GatewayTunnelProviderOptionsZscalerSubLocation `pulumi:"subLocations"` - // the download bandwidth cap of the link, in Mbps - UploadMbps *int `pulumi:"uploadMbps"` + // Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + SurrogateIp *bool `pulumi:"surrogateIp"` + // Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + SurrogateIpEnforcedForKnownBrowsers *bool `pulumi:"surrogateIpEnforcedForKnownBrowsers"` + // Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + SurrogateRefreshTimeInMinutes *int `pulumi:"surrogateRefreshTimeInMinutes"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + UpBandwidth *float64 `pulumi:"upBandwidth"` // location uses proxy chaining to forward traffic - UseXff *bool `pulumi:"useXff"` + XffForwardEnabled *bool `pulumi:"xffForwardEnabled"` } // GatewayTunnelProviderOptionsZscalerInput is an input type that accepts GatewayTunnelProviderOptionsZscalerArgs and GatewayTunnelProviderOptionsZscalerOutput values. @@ -14528,25 +14601,35 @@ type GatewayTunnelProviderOptionsZscalerInput interface { } type GatewayTunnelProviderOptionsZscalerArgs struct { - AupAcceptanceRequired pulumi.BoolPtrInput `pulumi:"aupAcceptanceRequired"` - // days before AUP is requested again - AupExpire pulumi.IntPtrInput `pulumi:"aupExpire"` + AupBlockInternetUntilAccepted pulumi.BoolPtrInput `pulumi:"aupBlockInternetUntilAccepted"` + // Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) + AupEnabled pulumi.BoolPtrInput `pulumi:"aupEnabled"` // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - AupSslProxy pulumi.BoolPtrInput `pulumi:"aupSslProxy"` - // the download bandwidth cap of the link, in Mbps - DownloadMbps pulumi.IntPtrInput `pulumi:"downloadMbps"` - // if `useXff`==`true`, display Acceptable Use Policy (AUP) - EnableAup pulumi.BoolPtrInput `pulumi:"enableAup"` - // when `enforceAuthentication`==`false`, display caution notification for non-authenticated users - EnableCaution pulumi.BoolPtrInput `pulumi:"enableCaution"` - EnforceAuthentication pulumi.BoolPtrInput `pulumi:"enforceAuthentication"` - Name pulumi.StringPtrInput `pulumi:"name"` - // if `useXff`==`true` + AupForceSslInspection pulumi.BoolPtrInput `pulumi:"aupForceSslInspection"` + // Required if `aupEnabled`==`true`. Days before AUP is requested again + AupTimeoutInDays pulumi.IntPtrInput `pulumi:"aupTimeoutInDays"` + // Enable this option to enforce user authentication + AuthRequired pulumi.BoolPtrInput `pulumi:"authRequired"` + // Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users + CautionEnabled pulumi.BoolPtrInput `pulumi:"cautionEnabled"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + DnBandwidth pulumi.Float64PtrInput `pulumi:"dnBandwidth"` + // Required if `surrogate_IP`==`true`, idle Time to Disassociation + IdleTimeInMinutes pulumi.IntPtrInput `pulumi:"idleTimeInMinutes"` + // if `true`, enable the firewall control option + OfwEnabled pulumi.BoolPtrInput `pulumi:"ofwEnabled"` + // `sub-locations` can be used for specific uses cases to define different configuration based on the user network SubLocations GatewayTunnelProviderOptionsZscalerSubLocationArrayInput `pulumi:"subLocations"` - // the download bandwidth cap of the link, in Mbps - UploadMbps pulumi.IntPtrInput `pulumi:"uploadMbps"` + // Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + SurrogateIp pulumi.BoolPtrInput `pulumi:"surrogateIp"` + // Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + SurrogateIpEnforcedForKnownBrowsers pulumi.BoolPtrInput `pulumi:"surrogateIpEnforcedForKnownBrowsers"` + // Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + SurrogateRefreshTimeInMinutes pulumi.IntPtrInput `pulumi:"surrogateRefreshTimeInMinutes"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + UpBandwidth pulumi.Float64PtrInput `pulumi:"upBandwidth"` // location uses proxy chaining to forward traffic - UseXff pulumi.BoolPtrInput `pulumi:"useXff"` + XffForwardEnabled pulumi.BoolPtrInput `pulumi:"xffForwardEnabled"` } func (GatewayTunnelProviderOptionsZscalerArgs) ElementType() reflect.Type { @@ -14626,58 +14709,80 @@ func (o GatewayTunnelProviderOptionsZscalerOutput) ToGatewayTunnelProviderOption }).(GatewayTunnelProviderOptionsZscalerPtrOutput) } -func (o GatewayTunnelProviderOptionsZscalerOutput) AupAcceptanceRequired() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.AupAcceptanceRequired }).(pulumi.BoolPtrOutput) +func (o GatewayTunnelProviderOptionsZscalerOutput) AupBlockInternetUntilAccepted() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.AupBlockInternetUntilAccepted }).(pulumi.BoolPtrOutput) } -// days before AUP is requested again -func (o GatewayTunnelProviderOptionsZscalerOutput) AupExpire() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *int { return v.AupExpire }).(pulumi.IntPtrOutput) +// Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) +func (o GatewayTunnelProviderOptionsZscalerOutput) AupEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.AupEnabled }).(pulumi.BoolPtrOutput) } // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser -func (o GatewayTunnelProviderOptionsZscalerOutput) AupSslProxy() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.AupSslProxy }).(pulumi.BoolPtrOutput) +func (o GatewayTunnelProviderOptionsZscalerOutput) AupForceSslInspection() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.AupForceSslInspection }).(pulumi.BoolPtrOutput) +} + +// Required if `aupEnabled`==`true`. Days before AUP is requested again +func (o GatewayTunnelProviderOptionsZscalerOutput) AupTimeoutInDays() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *int { return v.AupTimeoutInDays }).(pulumi.IntPtrOutput) } -// the download bandwidth cap of the link, in Mbps -func (o GatewayTunnelProviderOptionsZscalerOutput) DownloadMbps() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *int { return v.DownloadMbps }).(pulumi.IntPtrOutput) +// Enable this option to enforce user authentication +func (o GatewayTunnelProviderOptionsZscalerOutput) AuthRequired() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.AuthRequired }).(pulumi.BoolPtrOutput) } -// if `useXff`==`true`, display Acceptable Use Policy (AUP) -func (o GatewayTunnelProviderOptionsZscalerOutput) EnableAup() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.EnableAup }).(pulumi.BoolPtrOutput) +// Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users +func (o GatewayTunnelProviderOptionsZscalerOutput) CautionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.CautionEnabled }).(pulumi.BoolPtrOutput) } -// when `enforceAuthentication`==`false`, display caution notification for non-authenticated users -func (o GatewayTunnelProviderOptionsZscalerOutput) EnableCaution() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.EnableCaution }).(pulumi.BoolPtrOutput) +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o GatewayTunnelProviderOptionsZscalerOutput) DnBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *float64 { return v.DnBandwidth }).(pulumi.Float64PtrOutput) } -func (o GatewayTunnelProviderOptionsZscalerOutput) EnforceAuthentication() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.EnforceAuthentication }).(pulumi.BoolPtrOutput) +// Required if `surrogate_IP`==`true`, idle Time to Disassociation +func (o GatewayTunnelProviderOptionsZscalerOutput) IdleTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *int { return v.IdleTimeInMinutes }).(pulumi.IntPtrOutput) } -func (o GatewayTunnelProviderOptionsZscalerOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *string { return v.Name }).(pulumi.StringPtrOutput) +// if `true`, enable the firewall control option +func (o GatewayTunnelProviderOptionsZscalerOutput) OfwEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.OfwEnabled }).(pulumi.BoolPtrOutput) } -// if `useXff`==`true` +// `sub-locations` can be used for specific uses cases to define different configuration based on the user network func (o GatewayTunnelProviderOptionsZscalerOutput) SubLocations() GatewayTunnelProviderOptionsZscalerSubLocationArrayOutput { return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) []GatewayTunnelProviderOptionsZscalerSubLocation { return v.SubLocations }).(GatewayTunnelProviderOptionsZscalerSubLocationArrayOutput) } -// the download bandwidth cap of the link, in Mbps -func (o GatewayTunnelProviderOptionsZscalerOutput) UploadMbps() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *int { return v.UploadMbps }).(pulumi.IntPtrOutput) +// Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies +func (o GatewayTunnelProviderOptionsZscalerOutput) SurrogateIp() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.SurrogateIp }).(pulumi.BoolPtrOutput) +} + +// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers +func (o GatewayTunnelProviderOptionsZscalerOutput) SurrogateIpEnforcedForKnownBrowsers() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.SurrogateIpEnforcedForKnownBrowsers }).(pulumi.BoolPtrOutput) +} + +// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy +func (o GatewayTunnelProviderOptionsZscalerOutput) SurrogateRefreshTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *int { return v.SurrogateRefreshTimeInMinutes }).(pulumi.IntPtrOutput) +} + +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o GatewayTunnelProviderOptionsZscalerOutput) UpBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *float64 { return v.UpBandwidth }).(pulumi.Float64PtrOutput) } // location uses proxy chaining to forward traffic -func (o GatewayTunnelProviderOptionsZscalerOutput) UseXff() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.UseXff }).(pulumi.BoolPtrOutput) +func (o GatewayTunnelProviderOptionsZscalerOutput) XffForwardEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscaler) *bool { return v.XffForwardEnabled }).(pulumi.BoolPtrOutput) } type GatewayTunnelProviderOptionsZscalerPtrOutput struct{ *pulumi.OutputState } @@ -14704,84 +14809,96 @@ func (o GatewayTunnelProviderOptionsZscalerPtrOutput) Elem() GatewayTunnelProvid }).(GatewayTunnelProviderOptionsZscalerOutput) } -func (o GatewayTunnelProviderOptionsZscalerPtrOutput) AupAcceptanceRequired() pulumi.BoolPtrOutput { +func (o GatewayTunnelProviderOptionsZscalerPtrOutput) AupBlockInternetUntilAccepted() pulumi.BoolPtrOutput { return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.AupAcceptanceRequired + return v.AupBlockInternetUntilAccepted }).(pulumi.BoolPtrOutput) } -// days before AUP is requested again -func (o GatewayTunnelProviderOptionsZscalerPtrOutput) AupExpire() pulumi.IntPtrOutput { - return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *int { +// Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) +func (o GatewayTunnelProviderOptionsZscalerPtrOutput) AupEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.AupExpire - }).(pulumi.IntPtrOutput) + return v.AupEnabled + }).(pulumi.BoolPtrOutput) } // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser -func (o GatewayTunnelProviderOptionsZscalerPtrOutput) AupSslProxy() pulumi.BoolPtrOutput { +func (o GatewayTunnelProviderOptionsZscalerPtrOutput) AupForceSslInspection() pulumi.BoolPtrOutput { return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.AupSslProxy + return v.AupForceSslInspection }).(pulumi.BoolPtrOutput) } -// the download bandwidth cap of the link, in Mbps -func (o GatewayTunnelProviderOptionsZscalerPtrOutput) DownloadMbps() pulumi.IntPtrOutput { +// Required if `aupEnabled`==`true`. Days before AUP is requested again +func (o GatewayTunnelProviderOptionsZscalerPtrOutput) AupTimeoutInDays() pulumi.IntPtrOutput { return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *int { if v == nil { return nil } - return v.DownloadMbps + return v.AupTimeoutInDays }).(pulumi.IntPtrOutput) } -// if `useXff`==`true`, display Acceptable Use Policy (AUP) -func (o GatewayTunnelProviderOptionsZscalerPtrOutput) EnableAup() pulumi.BoolPtrOutput { +// Enable this option to enforce user authentication +func (o GatewayTunnelProviderOptionsZscalerPtrOutput) AuthRequired() pulumi.BoolPtrOutput { return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.EnableAup + return v.AuthRequired }).(pulumi.BoolPtrOutput) } -// when `enforceAuthentication`==`false`, display caution notification for non-authenticated users -func (o GatewayTunnelProviderOptionsZscalerPtrOutput) EnableCaution() pulumi.BoolPtrOutput { +// Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users +func (o GatewayTunnelProviderOptionsZscalerPtrOutput) CautionEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.EnableCaution + return v.CautionEnabled }).(pulumi.BoolPtrOutput) } -func (o GatewayTunnelProviderOptionsZscalerPtrOutput) EnforceAuthentication() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *bool { +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o GatewayTunnelProviderOptionsZscalerPtrOutput) DnBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *float64 { if v == nil { return nil } - return v.EnforceAuthentication - }).(pulumi.BoolPtrOutput) + return v.DnBandwidth + }).(pulumi.Float64PtrOutput) } -func (o GatewayTunnelProviderOptionsZscalerPtrOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *string { +// Required if `surrogate_IP`==`true`, idle Time to Disassociation +func (o GatewayTunnelProviderOptionsZscalerPtrOutput) IdleTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *int { if v == nil { return nil } - return v.Name - }).(pulumi.StringPtrOutput) + return v.IdleTimeInMinutes + }).(pulumi.IntPtrOutput) +} + +// if `true`, enable the firewall control option +func (o GatewayTunnelProviderOptionsZscalerPtrOutput) OfwEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *bool { + if v == nil { + return nil + } + return v.OfwEnabled + }).(pulumi.BoolPtrOutput) } -// if `useXff`==`true` +// `sub-locations` can be used for specific uses cases to define different configuration based on the user network func (o GatewayTunnelProviderOptionsZscalerPtrOutput) SubLocations() GatewayTunnelProviderOptionsZscalerSubLocationArrayOutput { return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) []GatewayTunnelProviderOptionsZscalerSubLocation { if v == nil { @@ -14791,42 +14908,84 @@ func (o GatewayTunnelProviderOptionsZscalerPtrOutput) SubLocations() GatewayTunn }).(GatewayTunnelProviderOptionsZscalerSubLocationArrayOutput) } -// the download bandwidth cap of the link, in Mbps -func (o GatewayTunnelProviderOptionsZscalerPtrOutput) UploadMbps() pulumi.IntPtrOutput { +// Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies +func (o GatewayTunnelProviderOptionsZscalerPtrOutput) SurrogateIp() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *bool { + if v == nil { + return nil + } + return v.SurrogateIp + }).(pulumi.BoolPtrOutput) +} + +// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers +func (o GatewayTunnelProviderOptionsZscalerPtrOutput) SurrogateIpEnforcedForKnownBrowsers() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *bool { + if v == nil { + return nil + } + return v.SurrogateIpEnforcedForKnownBrowsers + }).(pulumi.BoolPtrOutput) +} + +// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy +func (o GatewayTunnelProviderOptionsZscalerPtrOutput) SurrogateRefreshTimeInMinutes() pulumi.IntPtrOutput { return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *int { if v == nil { return nil } - return v.UploadMbps + return v.SurrogateRefreshTimeInMinutes }).(pulumi.IntPtrOutput) } +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o GatewayTunnelProviderOptionsZscalerPtrOutput) UpBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *float64 { + if v == nil { + return nil + } + return v.UpBandwidth + }).(pulumi.Float64PtrOutput) +} + // location uses proxy chaining to forward traffic -func (o GatewayTunnelProviderOptionsZscalerPtrOutput) UseXff() pulumi.BoolPtrOutput { +func (o GatewayTunnelProviderOptionsZscalerPtrOutput) XffForwardEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *GatewayTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.UseXff + return v.XffForwardEnabled }).(pulumi.BoolPtrOutput) } type GatewayTunnelProviderOptionsZscalerSubLocation struct { - AupAcceptanceRequired *bool `pulumi:"aupAcceptanceRequired"` - // days before AUP is requested again - AupExpire *int `pulumi:"aupExpire"` + AupBlockInternetUntilAccepted *bool `pulumi:"aupBlockInternetUntilAccepted"` + // Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) + AupEnabled *bool `pulumi:"aupEnabled"` // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - AupSslProxy *bool `pulumi:"aupSslProxy"` - // the download bandwidth cap of the link, in Mbps - DownloadMbps *int `pulumi:"downloadMbps"` - // if `useXff`==`true`, display Acceptable Use Policy (AUP) - EnableAup *bool `pulumi:"enableAup"` - // when `enforceAuthentication`==`false`, display caution notification for non-authenticated users - EnableCaution *bool `pulumi:"enableCaution"` - EnforceAuthentication *bool `pulumi:"enforceAuthentication"` - Subnets []string `pulumi:"subnets"` - // the download bandwidth cap of the link, in Mbps - UploadMbps *int `pulumi:"uploadMbps"` + AupForceSslInspection *bool `pulumi:"aupForceSslInspection"` + // Required if `aupEnabled`==`true`. Days before AUP is requested again + AupTimeoutInDays *int `pulumi:"aupTimeoutInDays"` + // Enable this option to authenticate users + AuthRequired *bool `pulumi:"authRequired"` + // Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users + CautionEnabled *bool `pulumi:"cautionEnabled"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + DnBandwidth *float64 `pulumi:"dnBandwidth"` + // Required if `surrogate_IP`==`true`, idle Time to Disassociation + IdleTimeInMinutes *int `pulumi:"idleTimeInMinutes"` + // Network name + Name *string `pulumi:"name"` + // if `true`, enable the firewall control option + OfwEnabled *bool `pulumi:"ofwEnabled"` + // Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + SurrogateIp *bool `pulumi:"surrogateIp"` + // Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + SurrogateIpEnforcedForKnownBrowsers *bool `pulumi:"surrogateIpEnforcedForKnownBrowsers"` + // Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + SurrogateRefreshTimeInMinutes *int `pulumi:"surrogateRefreshTimeInMinutes"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + UpBandwidth *float64 `pulumi:"upBandwidth"` } // GatewayTunnelProviderOptionsZscalerSubLocationInput is an input type that accepts GatewayTunnelProviderOptionsZscalerSubLocationArgs and GatewayTunnelProviderOptionsZscalerSubLocationOutput values. @@ -14841,21 +15000,33 @@ type GatewayTunnelProviderOptionsZscalerSubLocationInput interface { } type GatewayTunnelProviderOptionsZscalerSubLocationArgs struct { - AupAcceptanceRequired pulumi.BoolPtrInput `pulumi:"aupAcceptanceRequired"` - // days before AUP is requested again - AupExpire pulumi.IntPtrInput `pulumi:"aupExpire"` + AupBlockInternetUntilAccepted pulumi.BoolPtrInput `pulumi:"aupBlockInternetUntilAccepted"` + // Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) + AupEnabled pulumi.BoolPtrInput `pulumi:"aupEnabled"` // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - AupSslProxy pulumi.BoolPtrInput `pulumi:"aupSslProxy"` - // the download bandwidth cap of the link, in Mbps - DownloadMbps pulumi.IntPtrInput `pulumi:"downloadMbps"` - // if `useXff`==`true`, display Acceptable Use Policy (AUP) - EnableAup pulumi.BoolPtrInput `pulumi:"enableAup"` - // when `enforceAuthentication`==`false`, display caution notification for non-authenticated users - EnableCaution pulumi.BoolPtrInput `pulumi:"enableCaution"` - EnforceAuthentication pulumi.BoolPtrInput `pulumi:"enforceAuthentication"` - Subnets pulumi.StringArrayInput `pulumi:"subnets"` - // the download bandwidth cap of the link, in Mbps - UploadMbps pulumi.IntPtrInput `pulumi:"uploadMbps"` + AupForceSslInspection pulumi.BoolPtrInput `pulumi:"aupForceSslInspection"` + // Required if `aupEnabled`==`true`. Days before AUP is requested again + AupTimeoutInDays pulumi.IntPtrInput `pulumi:"aupTimeoutInDays"` + // Enable this option to authenticate users + AuthRequired pulumi.BoolPtrInput `pulumi:"authRequired"` + // Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users + CautionEnabled pulumi.BoolPtrInput `pulumi:"cautionEnabled"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + DnBandwidth pulumi.Float64PtrInput `pulumi:"dnBandwidth"` + // Required if `surrogate_IP`==`true`, idle Time to Disassociation + IdleTimeInMinutes pulumi.IntPtrInput `pulumi:"idleTimeInMinutes"` + // Network name + Name pulumi.StringPtrInput `pulumi:"name"` + // if `true`, enable the firewall control option + OfwEnabled pulumi.BoolPtrInput `pulumi:"ofwEnabled"` + // Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + SurrogateIp pulumi.BoolPtrInput `pulumi:"surrogateIp"` + // Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + SurrogateIpEnforcedForKnownBrowsers pulumi.BoolPtrInput `pulumi:"surrogateIpEnforcedForKnownBrowsers"` + // Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + SurrogateRefreshTimeInMinutes pulumi.IntPtrInput `pulumi:"surrogateRefreshTimeInMinutes"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + UpBandwidth pulumi.Float64PtrInput `pulumi:"upBandwidth"` } func (GatewayTunnelProviderOptionsZscalerSubLocationArgs) ElementType() reflect.Type { @@ -14909,46 +15080,75 @@ func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) ToGatewayTunnelPro return o } -func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) AupAcceptanceRequired() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.AupAcceptanceRequired }).(pulumi.BoolPtrOutput) +func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) AupBlockInternetUntilAccepted() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.AupBlockInternetUntilAccepted }).(pulumi.BoolPtrOutput) } -// days before AUP is requested again -func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) AupExpire() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *int { return v.AupExpire }).(pulumi.IntPtrOutput) +// Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) +func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) AupEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.AupEnabled }).(pulumi.BoolPtrOutput) } // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser -func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) AupSslProxy() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.AupSslProxy }).(pulumi.BoolPtrOutput) +func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) AupForceSslInspection() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.AupForceSslInspection }).(pulumi.BoolPtrOutput) +} + +// Required if `aupEnabled`==`true`. Days before AUP is requested again +func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) AupTimeoutInDays() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *int { return v.AupTimeoutInDays }).(pulumi.IntPtrOutput) +} + +// Enable this option to authenticate users +func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) AuthRequired() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.AuthRequired }).(pulumi.BoolPtrOutput) } -// the download bandwidth cap of the link, in Mbps -func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) DownloadMbps() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *int { return v.DownloadMbps }).(pulumi.IntPtrOutput) +// Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users +func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) CautionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.CautionEnabled }).(pulumi.BoolPtrOutput) } -// if `useXff`==`true`, display Acceptable Use Policy (AUP) -func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) EnableAup() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.EnableAup }).(pulumi.BoolPtrOutput) +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) DnBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *float64 { return v.DnBandwidth }).(pulumi.Float64PtrOutput) } -// when `enforceAuthentication`==`false`, display caution notification for non-authenticated users -func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) EnableCaution() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.EnableCaution }).(pulumi.BoolPtrOutput) +// Required if `surrogate_IP`==`true`, idle Time to Disassociation +func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) IdleTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *int { return v.IdleTimeInMinutes }).(pulumi.IntPtrOutput) } -func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) EnforceAuthentication() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.EnforceAuthentication }).(pulumi.BoolPtrOutput) +// Network name +func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *string { return v.Name }).(pulumi.StringPtrOutput) } -func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) Subnets() pulumi.StringArrayOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) []string { return v.Subnets }).(pulumi.StringArrayOutput) +// if `true`, enable the firewall control option +func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) OfwEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.OfwEnabled }).(pulumi.BoolPtrOutput) } -// the download bandwidth cap of the link, in Mbps -func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) UploadMbps() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *int { return v.UploadMbps }).(pulumi.IntPtrOutput) +// Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies +func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) SurrogateIp() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.SurrogateIp }).(pulumi.BoolPtrOutput) +} + +// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers +func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) SurrogateIpEnforcedForKnownBrowsers() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *bool { + return v.SurrogateIpEnforcedForKnownBrowsers + }).(pulumi.BoolPtrOutput) +} + +// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy +func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) SurrogateRefreshTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *int { return v.SurrogateRefreshTimeInMinutes }).(pulumi.IntPtrOutput) +} + +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o GatewayTunnelProviderOptionsZscalerSubLocationOutput) UpBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v GatewayTunnelProviderOptionsZscalerSubLocation) *float64 { return v.UpBandwidth }).(pulumi.Float64PtrOutput) } type GatewayTunnelProviderOptionsZscalerSubLocationArrayOutput struct{ *pulumi.OutputState } @@ -15203,12 +15403,14 @@ func (o GatewayVrfInstancesMapOutput) MapIndex(k pulumi.StringInput) GatewayVrfI } type SwitchAclPolicy struct { - // - for GBP-based policy, all srcTags and dstTags have to be gbp-based - // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + // ACL Policy Actions: + // - for GBP-based policy, all srcTags and dstTags have to be gbp-based + // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to Actions []SwitchAclPolicyAction `pulumi:"actions"` Name *string `pulumi:"name"` - // - for GBP-based policy, all srcTags and dstTags have to be gbp-based - // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + // ACL Policy Source Tags: + // - for GBP-based policy, all srcTags and dstTags have to be gbp-based + // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to SrcTags []string `pulumi:"srcTags"` } @@ -15224,12 +15426,14 @@ type SwitchAclPolicyInput interface { } type SwitchAclPolicyArgs struct { - // - for GBP-based policy, all srcTags and dstTags have to be gbp-based - // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + // ACL Policy Actions: + // - for GBP-based policy, all srcTags and dstTags have to be gbp-based + // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to Actions SwitchAclPolicyActionArrayInput `pulumi:"actions"` Name pulumi.StringPtrInput `pulumi:"name"` - // - for GBP-based policy, all srcTags and dstTags have to be gbp-based - // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + // ACL Policy Source Tags: + // - for GBP-based policy, all srcTags and dstTags have to be gbp-based + // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to SrcTags pulumi.StringArrayInput `pulumi:"srcTags"` } @@ -15284,8 +15488,9 @@ func (o SwitchAclPolicyOutput) ToSwitchAclPolicyOutputWithContext(ctx context.Co return o } -// - for GBP-based policy, all srcTags and dstTags have to be gbp-based -// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to +// ACL Policy Actions: +// - for GBP-based policy, all srcTags and dstTags have to be gbp-based +// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to func (o SwitchAclPolicyOutput) Actions() SwitchAclPolicyActionArrayOutput { return o.ApplyT(func(v SwitchAclPolicy) []SwitchAclPolicyAction { return v.Actions }).(SwitchAclPolicyActionArrayOutput) } @@ -15294,8 +15499,9 @@ func (o SwitchAclPolicyOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v SwitchAclPolicy) *string { return v.Name }).(pulumi.StringPtrOutput) } -// - for GBP-based policy, all srcTags and dstTags have to be gbp-based -// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to +// ACL Policy Source Tags: +// - for GBP-based policy, all srcTags and dstTags have to be gbp-based +// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to func (o SwitchAclPolicyOutput) SrcTags() pulumi.StringArrayOutput { return o.ApplyT(func(v SwitchAclPolicy) []string { return v.SrcTags }).(pulumi.StringArrayOutput) } @@ -15425,9 +15631,9 @@ func (o SwitchAclPolicyActionArrayOutput) Index(i pulumi.IntInput) SwitchAclPoli type SwitchAclTags struct { // required if - // - `type`==`dynamicGbp` (gbp_tag received from RADIUS) - // - `type`==`gbpResource` - // - `type`==`staticGbp` (applying gbp tag against matching conditions) + // - `type`==`dynamicGbp` (gbp_tag received from RADIUS) + // - `type`==`gbpResource` + // - `type`==`staticGbp` (applying gbp tag against matching conditions) GbpTag *int `pulumi:"gbpTag"` // required if // - `type`==`mac` @@ -15445,8 +15651,7 @@ type SwitchAclTags struct { // * `type`==`staticGbp` // if from matching radius_group RadiusGroup *string `pulumi:"radiusGroup"` - // if `type`==`resource` or `type`==`gbpResource` - // empty means unrestricted, i.e. any + // if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any Specs []SwitchAclTagsSpec `pulumi:"specs"` // if // - `type`==`subnet` @@ -15479,9 +15684,9 @@ type SwitchAclTagsInput interface { type SwitchAclTagsArgs struct { // required if - // - `type`==`dynamicGbp` (gbp_tag received from RADIUS) - // - `type`==`gbpResource` - // - `type`==`staticGbp` (applying gbp tag against matching conditions) + // - `type`==`dynamicGbp` (gbp_tag received from RADIUS) + // - `type`==`gbpResource` + // - `type`==`staticGbp` (applying gbp tag against matching conditions) GbpTag pulumi.IntPtrInput `pulumi:"gbpTag"` // required if // - `type`==`mac` @@ -15499,8 +15704,7 @@ type SwitchAclTagsArgs struct { // * `type`==`staticGbp` // if from matching radius_group RadiusGroup pulumi.StringPtrInput `pulumi:"radiusGroup"` - // if `type`==`resource` or `type`==`gbpResource` - // empty means unrestricted, i.e. any + // if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any Specs SwitchAclTagsSpecArrayInput `pulumi:"specs"` // if // - `type`==`subnet` @@ -15572,9 +15776,9 @@ func (o SwitchAclTagsOutput) ToSwitchAclTagsOutputWithContext(ctx context.Contex } // required if -// - `type`==`dynamicGbp` (gbp_tag received from RADIUS) -// - `type`==`gbpResource` -// - `type`==`staticGbp` (applying gbp tag against matching conditions) +// - `type`==`dynamicGbp` (gbp_tag received from RADIUS) +// - `type`==`gbpResource` +// - `type`==`staticGbp` (applying gbp tag against matching conditions) func (o SwitchAclTagsOutput) GbpTag() pulumi.IntPtrOutput { return o.ApplyT(func(v SwitchAclTags) *int { return v.GbpTag }).(pulumi.IntPtrOutput) } @@ -15604,8 +15808,7 @@ func (o SwitchAclTagsOutput) RadiusGroup() pulumi.StringPtrOutput { return o.ApplyT(func(v SwitchAclTags) *string { return v.RadiusGroup }).(pulumi.StringPtrOutput) } -// if `type`==`resource` or `type`==`gbpResource` -// empty means unrestricted, i.e. any +// if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any func (o SwitchAclTagsOutput) Specs() SwitchAclTagsSpecArrayOutput { return o.ApplyT(func(v SwitchAclTags) []SwitchAclTagsSpec { return v.Specs }).(SwitchAclTagsSpecArrayOutput) } @@ -15655,7 +15858,7 @@ func (o SwitchAclTagsMapOutput) MapIndex(k pulumi.StringInput) SwitchAclTagsOutp type SwitchAclTagsSpec struct { // matched dst port, "0" means any PortRange *string `pulumi:"portRange"` - // `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 + // `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 Protocol *string `pulumi:"protocol"` } @@ -15673,7 +15876,7 @@ type SwitchAclTagsSpecInput interface { type SwitchAclTagsSpecArgs struct { // matched dst port, "0" means any PortRange pulumi.StringPtrInput `pulumi:"portRange"` - // `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 + // `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 Protocol pulumi.StringPtrInput `pulumi:"protocol"` } @@ -15733,7 +15936,7 @@ func (o SwitchAclTagsSpecOutput) PortRange() pulumi.StringPtrOutput { return o.ApplyT(func(v SwitchAclTagsSpec) *string { return v.PortRange }).(pulumi.StringPtrOutput) } -// `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 +// `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 func (o SwitchAclTagsSpecOutput) Protocol() pulumi.StringPtrOutput { return o.ApplyT(func(v SwitchAclTagsSpec) *string { return v.Protocol }).(pulumi.StringPtrOutput) } @@ -16670,158 +16873,6 @@ func (o SwitchDhcpdConfigConfigVendorEncapsulatedMapOutput) MapIndex(k pulumi.St }).(SwitchDhcpdConfigConfigVendorEncapsulatedOutput) } -type SwitchEvpnConfig struct { - Enabled *bool `pulumi:"enabled"` - // enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - Role *string `pulumi:"role"` -} - -// SwitchEvpnConfigInput is an input type that accepts SwitchEvpnConfigArgs and SwitchEvpnConfigOutput values. -// You can construct a concrete instance of `SwitchEvpnConfigInput` via: -// -// SwitchEvpnConfigArgs{...} -type SwitchEvpnConfigInput interface { - pulumi.Input - - ToSwitchEvpnConfigOutput() SwitchEvpnConfigOutput - ToSwitchEvpnConfigOutputWithContext(context.Context) SwitchEvpnConfigOutput -} - -type SwitchEvpnConfigArgs struct { - Enabled pulumi.BoolPtrInput `pulumi:"enabled"` - // enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - Role pulumi.StringPtrInput `pulumi:"role"` -} - -func (SwitchEvpnConfigArgs) ElementType() reflect.Type { - return reflect.TypeOf((*SwitchEvpnConfig)(nil)).Elem() -} - -func (i SwitchEvpnConfigArgs) ToSwitchEvpnConfigOutput() SwitchEvpnConfigOutput { - return i.ToSwitchEvpnConfigOutputWithContext(context.Background()) -} - -func (i SwitchEvpnConfigArgs) ToSwitchEvpnConfigOutputWithContext(ctx context.Context) SwitchEvpnConfigOutput { - return pulumi.ToOutputWithContext(ctx, i).(SwitchEvpnConfigOutput) -} - -func (i SwitchEvpnConfigArgs) ToSwitchEvpnConfigPtrOutput() SwitchEvpnConfigPtrOutput { - return i.ToSwitchEvpnConfigPtrOutputWithContext(context.Background()) -} - -func (i SwitchEvpnConfigArgs) ToSwitchEvpnConfigPtrOutputWithContext(ctx context.Context) SwitchEvpnConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(SwitchEvpnConfigOutput).ToSwitchEvpnConfigPtrOutputWithContext(ctx) -} - -// SwitchEvpnConfigPtrInput is an input type that accepts SwitchEvpnConfigArgs, SwitchEvpnConfigPtr and SwitchEvpnConfigPtrOutput values. -// You can construct a concrete instance of `SwitchEvpnConfigPtrInput` via: -// -// SwitchEvpnConfigArgs{...} -// -// or: -// -// nil -type SwitchEvpnConfigPtrInput interface { - pulumi.Input - - ToSwitchEvpnConfigPtrOutput() SwitchEvpnConfigPtrOutput - ToSwitchEvpnConfigPtrOutputWithContext(context.Context) SwitchEvpnConfigPtrOutput -} - -type switchEvpnConfigPtrType SwitchEvpnConfigArgs - -func SwitchEvpnConfigPtr(v *SwitchEvpnConfigArgs) SwitchEvpnConfigPtrInput { - return (*switchEvpnConfigPtrType)(v) -} - -func (*switchEvpnConfigPtrType) ElementType() reflect.Type { - return reflect.TypeOf((**SwitchEvpnConfig)(nil)).Elem() -} - -func (i *switchEvpnConfigPtrType) ToSwitchEvpnConfigPtrOutput() SwitchEvpnConfigPtrOutput { - return i.ToSwitchEvpnConfigPtrOutputWithContext(context.Background()) -} - -func (i *switchEvpnConfigPtrType) ToSwitchEvpnConfigPtrOutputWithContext(ctx context.Context) SwitchEvpnConfigPtrOutput { - return pulumi.ToOutputWithContext(ctx, i).(SwitchEvpnConfigPtrOutput) -} - -type SwitchEvpnConfigOutput struct{ *pulumi.OutputState } - -func (SwitchEvpnConfigOutput) ElementType() reflect.Type { - return reflect.TypeOf((*SwitchEvpnConfig)(nil)).Elem() -} - -func (o SwitchEvpnConfigOutput) ToSwitchEvpnConfigOutput() SwitchEvpnConfigOutput { - return o -} - -func (o SwitchEvpnConfigOutput) ToSwitchEvpnConfigOutputWithContext(ctx context.Context) SwitchEvpnConfigOutput { - return o -} - -func (o SwitchEvpnConfigOutput) ToSwitchEvpnConfigPtrOutput() SwitchEvpnConfigPtrOutput { - return o.ToSwitchEvpnConfigPtrOutputWithContext(context.Background()) -} - -func (o SwitchEvpnConfigOutput) ToSwitchEvpnConfigPtrOutputWithContext(ctx context.Context) SwitchEvpnConfigPtrOutput { - return o.ApplyTWithContext(ctx, func(_ context.Context, v SwitchEvpnConfig) *SwitchEvpnConfig { - return &v - }).(SwitchEvpnConfigPtrOutput) -} - -func (o SwitchEvpnConfigOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v SwitchEvpnConfig) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) -} - -// enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` -func (o SwitchEvpnConfigOutput) Role() pulumi.StringPtrOutput { - return o.ApplyT(func(v SwitchEvpnConfig) *string { return v.Role }).(pulumi.StringPtrOutput) -} - -type SwitchEvpnConfigPtrOutput struct{ *pulumi.OutputState } - -func (SwitchEvpnConfigPtrOutput) ElementType() reflect.Type { - return reflect.TypeOf((**SwitchEvpnConfig)(nil)).Elem() -} - -func (o SwitchEvpnConfigPtrOutput) ToSwitchEvpnConfigPtrOutput() SwitchEvpnConfigPtrOutput { - return o -} - -func (o SwitchEvpnConfigPtrOutput) ToSwitchEvpnConfigPtrOutputWithContext(ctx context.Context) SwitchEvpnConfigPtrOutput { - return o -} - -func (o SwitchEvpnConfigPtrOutput) Elem() SwitchEvpnConfigOutput { - return o.ApplyT(func(v *SwitchEvpnConfig) SwitchEvpnConfig { - if v != nil { - return *v - } - var ret SwitchEvpnConfig - return ret - }).(SwitchEvpnConfigOutput) -} - -func (o SwitchEvpnConfigPtrOutput) Enabled() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *SwitchEvpnConfig) *bool { - if v == nil { - return nil - } - return v.Enabled - }).(pulumi.BoolPtrOutput) -} - -// enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` -func (o SwitchEvpnConfigPtrOutput) Role() pulumi.StringPtrOutput { - return o.ApplyT(func(v *SwitchEvpnConfig) *string { - if v == nil { - return nil - } - return v.Role - }).(pulumi.StringPtrOutput) -} - type SwitchExtraRoutes6 struct { // this takes precedence Discard *bool `pulumi:"discard"` @@ -17524,9 +17575,7 @@ func (o SwitchIpConfigPtrOutput) Type() pulumi.StringPtrOutput { type SwitchLocalPortConfig struct { // Only if `mode`==`trunk` whether to trunk all network/vlans AllNetworks *bool `pulumi:"allNetworks"` - // 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. - // 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. + // 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. 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. AllowDhcpd *bool `pulumi:"allowDhcpd"` AllowMultipleSupplicants *bool `pulumi:"allowMultipleSupplicants"` // Only if `portAuth`==`dot1x` bypass auth for known clients if set to true when RADIUS server is down @@ -17547,8 +17596,7 @@ type SwitchLocalPortConfig struct { EnableQos *bool `pulumi:"enableQos"` // Only if `portAuth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) GuestNetwork *string `pulumi:"guestNetwork"` - // inter_switch_link is used together with "isolation" under networks - // NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + // inter_switch_link is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together InterSwitchLink *bool `pulumi:"interSwitchLink"` // Only if `enableMacAuth`==`true` MacAuthOnly *bool `pulumi:"macAuthOnly"` @@ -17564,6 +17612,8 @@ type SwitchLocalPortConfig struct { Mtu *int `pulumi:"mtu"` // Only if `mode`==`trunk`, the list of network/vlans Networks []string `pulumi:"networks"` + // Additional note for the port config override + Note *string `pulumi:"note"` // Only if `mode`==`access` and `portAuth`!=`dot1x` whether the port should retain dynamically learned MAC addresses PersistMac *bool `pulumi:"persistMac"` // whether PoE capabilities are disabled for a port @@ -17608,9 +17658,7 @@ type SwitchLocalPortConfigInput interface { type SwitchLocalPortConfigArgs struct { // Only if `mode`==`trunk` whether to trunk all network/vlans AllNetworks pulumi.BoolPtrInput `pulumi:"allNetworks"` - // 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. - // 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. + // 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. 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. AllowDhcpd pulumi.BoolPtrInput `pulumi:"allowDhcpd"` AllowMultipleSupplicants pulumi.BoolPtrInput `pulumi:"allowMultipleSupplicants"` // Only if `portAuth`==`dot1x` bypass auth for known clients if set to true when RADIUS server is down @@ -17631,8 +17679,7 @@ type SwitchLocalPortConfigArgs struct { EnableQos pulumi.BoolPtrInput `pulumi:"enableQos"` // Only if `portAuth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) GuestNetwork pulumi.StringPtrInput `pulumi:"guestNetwork"` - // inter_switch_link is used together with "isolation" under networks - // NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + // inter_switch_link is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together InterSwitchLink pulumi.BoolPtrInput `pulumi:"interSwitchLink"` // Only if `enableMacAuth`==`true` MacAuthOnly pulumi.BoolPtrInput `pulumi:"macAuthOnly"` @@ -17648,6 +17695,8 @@ type SwitchLocalPortConfigArgs struct { Mtu pulumi.IntPtrInput `pulumi:"mtu"` // Only if `mode`==`trunk`, the list of network/vlans Networks pulumi.StringArrayInput `pulumi:"networks"` + // Additional note for the port config override + Note pulumi.StringPtrInput `pulumi:"note"` // Only if `mode`==`access` and `portAuth`!=`dot1x` whether the port should retain dynamically learned MAC addresses PersistMac pulumi.BoolPtrInput `pulumi:"persistMac"` // whether PoE capabilities are disabled for a port @@ -17734,9 +17783,7 @@ func (o SwitchLocalPortConfigOutput) AllNetworks() pulumi.BoolPtrOutput { return o.ApplyT(func(v SwitchLocalPortConfig) *bool { return v.AllNetworks }).(pulumi.BoolPtrOutput) } -// 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. -// 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. +// 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. 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. func (o SwitchLocalPortConfigOutput) AllowDhcpd() pulumi.BoolPtrOutput { return o.ApplyT(func(v SwitchLocalPortConfig) *bool { return v.AllowDhcpd }).(pulumi.BoolPtrOutput) } @@ -17793,8 +17840,7 @@ func (o SwitchLocalPortConfigOutput) GuestNetwork() pulumi.StringPtrOutput { return o.ApplyT(func(v SwitchLocalPortConfig) *string { return v.GuestNetwork }).(pulumi.StringPtrOutput) } -// inter_switch_link is used together with "isolation" under networks -// NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together +// inter_switch_link is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together func (o SwitchLocalPortConfigOutput) InterSwitchLink() pulumi.BoolPtrOutput { return o.ApplyT(func(v SwitchLocalPortConfig) *bool { return v.InterSwitchLink }).(pulumi.BoolPtrOutput) } @@ -17834,6 +17880,11 @@ func (o SwitchLocalPortConfigOutput) Networks() pulumi.StringArrayOutput { return o.ApplyT(func(v SwitchLocalPortConfig) []string { return v.Networks }).(pulumi.StringArrayOutput) } +// Additional note for the port config override +func (o SwitchLocalPortConfigOutput) Note() pulumi.StringPtrOutput { + return o.ApplyT(func(v SwitchLocalPortConfig) *string { return v.Note }).(pulumi.StringPtrOutput) +} + // Only if `mode`==`access` and `portAuth`!=`dot1x` whether the port should retain dynamically learned MAC addresses func (o SwitchLocalPortConfigOutput) PersistMac() pulumi.BoolPtrOutput { return o.ApplyT(func(v SwitchLocalPortConfig) *bool { return v.PersistMac }).(pulumi.BoolPtrOutput) @@ -18293,8 +18344,7 @@ type SwitchNetworks struct { Gateway *string `pulumi:"gateway"` // only required for EVPN-VXLAN networks, IPv6 Virtual Gateway Gateway6 *string `pulumi:"gateway6"` - // whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) - // NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set + // whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set Isolation *bool `pulumi:"isolation"` IsolationVlanId *string `pulumi:"isolationVlanId"` // optional for pure switching, required when L3 / routing features are used @@ -18320,8 +18370,7 @@ type SwitchNetworksArgs struct { Gateway pulumi.StringPtrInput `pulumi:"gateway"` // only required for EVPN-VXLAN networks, IPv6 Virtual Gateway Gateway6 pulumi.StringPtrInput `pulumi:"gateway6"` - // whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) - // NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set + // whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set Isolation pulumi.BoolPtrInput `pulumi:"isolation"` IsolationVlanId pulumi.StringPtrInput `pulumi:"isolationVlanId"` // optional for pure switching, required when L3 / routing features are used @@ -18392,8 +18441,7 @@ func (o SwitchNetworksOutput) Gateway6() pulumi.StringPtrOutput { return o.ApplyT(func(v SwitchNetworks) *string { return v.Gateway6 }).(pulumi.StringPtrOutput) } -// whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) -// NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set +// whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set func (o SwitchNetworksOutput) Isolation() pulumi.BoolPtrOutput { return o.ApplyT(func(v SwitchNetworks) *bool { return v.Isolation }).(pulumi.BoolPtrOutput) } @@ -19464,9 +19512,7 @@ func (o SwitchPortMirroringMapOutput) MapIndex(k pulumi.StringInput) SwitchPortM type SwitchPortUsages struct { // Only if `mode`==`trunk` whether to trunk all network/vlans AllNetworks *bool `pulumi:"allNetworks"` - // 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. - // 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. + // 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. 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. AllowDhcpd *bool `pulumi:"allowDhcpd"` // Only if `mode`!=`dynamic` AllowMultipleSupplicants *bool `pulumi:"allowMultipleSupplicants"` @@ -19490,8 +19536,7 @@ type SwitchPortUsages struct { EnableQos *bool `pulumi:"enableQos"` // Only if `mode`!=`dynamic` and `portAuth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) GuestNetwork *string `pulumi:"guestNetwork"` - // Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks - // NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + // Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together InterSwitchLink *bool `pulumi:"interSwitchLink"` // Only if `mode`!=`dynamic` and `enableMacAuth`==`true` MacAuthOnly *bool `pulumi:"macAuthOnly"` @@ -19527,8 +19572,7 @@ type SwitchPortUsages struct { ServerRejectNetwork *string `pulumi:"serverRejectNetwork"` // Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto` Speed *string `pulumi:"speed"` - // Switch storm control - // Only if `mode`!=`dynamic` + // Switch storm control. Only if `mode`!=`dynamic` StormControl *SwitchPortUsagesStormControl `pulumi:"stormControl"` // Only if `mode`!=`dynamic` when enabled, the port is not expected to receive BPDU frames StpEdge *bool `pulumi:"stpEdge"` @@ -19554,9 +19598,7 @@ type SwitchPortUsagesInput interface { type SwitchPortUsagesArgs struct { // Only if `mode`==`trunk` whether to trunk all network/vlans AllNetworks pulumi.BoolPtrInput `pulumi:"allNetworks"` - // 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. - // 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. + // 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. 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. AllowDhcpd pulumi.BoolPtrInput `pulumi:"allowDhcpd"` // Only if `mode`!=`dynamic` AllowMultipleSupplicants pulumi.BoolPtrInput `pulumi:"allowMultipleSupplicants"` @@ -19580,8 +19622,7 @@ type SwitchPortUsagesArgs struct { EnableQos pulumi.BoolPtrInput `pulumi:"enableQos"` // Only if `mode`!=`dynamic` and `portAuth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) GuestNetwork pulumi.StringPtrInput `pulumi:"guestNetwork"` - // Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks - // NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + // Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together InterSwitchLink pulumi.BoolPtrInput `pulumi:"interSwitchLink"` // Only if `mode`!=`dynamic` and `enableMacAuth`==`true` MacAuthOnly pulumi.BoolPtrInput `pulumi:"macAuthOnly"` @@ -19617,8 +19658,7 @@ type SwitchPortUsagesArgs struct { ServerRejectNetwork pulumi.StringPtrInput `pulumi:"serverRejectNetwork"` // Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto` Speed pulumi.StringPtrInput `pulumi:"speed"` - // Switch storm control - // Only if `mode`!=`dynamic` + // Switch storm control. Only if `mode`!=`dynamic` StormControl SwitchPortUsagesStormControlPtrInput `pulumi:"stormControl"` // Only if `mode`!=`dynamic` when enabled, the port is not expected to receive BPDU frames StpEdge pulumi.BoolPtrInput `pulumi:"stpEdge"` @@ -19686,9 +19726,7 @@ func (o SwitchPortUsagesOutput) AllNetworks() pulumi.BoolPtrOutput { return o.ApplyT(func(v SwitchPortUsages) *bool { return v.AllNetworks }).(pulumi.BoolPtrOutput) } -// 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. -// 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. +// 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. 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. func (o SwitchPortUsagesOutput) AllowDhcpd() pulumi.BoolPtrOutput { return o.ApplyT(func(v SwitchPortUsages) *bool { return v.AllowDhcpd }).(pulumi.BoolPtrOutput) } @@ -19748,8 +19786,7 @@ func (o SwitchPortUsagesOutput) GuestNetwork() pulumi.StringPtrOutput { return o.ApplyT(func(v SwitchPortUsages) *string { return v.GuestNetwork }).(pulumi.StringPtrOutput) } -// Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks -// NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together +// Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together func (o SwitchPortUsagesOutput) InterSwitchLink() pulumi.BoolPtrOutput { return o.ApplyT(func(v SwitchPortUsages) *bool { return v.InterSwitchLink }).(pulumi.BoolPtrOutput) } @@ -19839,8 +19876,7 @@ func (o SwitchPortUsagesOutput) Speed() pulumi.StringPtrOutput { return o.ApplyT(func(v SwitchPortUsages) *string { return v.Speed }).(pulumi.StringPtrOutput) } -// Switch storm control -// Only if `mode`!=`dynamic` +// Switch storm control. Only if `mode`!=`dynamic` func (o SwitchPortUsagesOutput) StormControl() SwitchPortUsagesStormControlPtrOutput { return o.ApplyT(func(v SwitchPortUsages) *SwitchPortUsagesStormControl { return v.StormControl }).(SwitchPortUsagesStormControlPtrOutput) } @@ -20246,8 +20282,7 @@ type SwitchRadiusConfig struct { AuthServersRetries *int `pulumi:"authServersRetries"` // radius auth session timeout AuthServersTimeout *int `pulumi:"authServersTimeout"` - // use `network`or `sourceIp` - // which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + // use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip Network *string `pulumi:"network"` // use `network`or `sourceIp` SourceIp *string `pulumi:"sourceIp"` @@ -20273,8 +20308,7 @@ type SwitchRadiusConfigArgs struct { AuthServersRetries pulumi.IntPtrInput `pulumi:"authServersRetries"` // radius auth session timeout AuthServersTimeout pulumi.IntPtrInput `pulumi:"authServersTimeout"` - // use `network`or `sourceIp` - // which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + // use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip Network pulumi.StringPtrInput `pulumi:"network"` // use `network`or `sourceIp` SourceIp pulumi.StringPtrInput `pulumi:"sourceIp"` @@ -20380,8 +20414,7 @@ func (o SwitchRadiusConfigOutput) AuthServersTimeout() pulumi.IntPtrOutput { return o.ApplyT(func(v SwitchRadiusConfig) *int { return v.AuthServersTimeout }).(pulumi.IntPtrOutput) } -// use `network`or `sourceIp` -// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip +// use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip func (o SwitchRadiusConfigOutput) Network() pulumi.StringPtrOutput { return o.ApplyT(func(v SwitchRadiusConfig) *string { return v.Network }).(pulumi.StringPtrOutput) } @@ -20463,8 +20496,7 @@ func (o SwitchRadiusConfigPtrOutput) AuthServersTimeout() pulumi.IntPtrOutput { }).(pulumi.IntPtrOutput) } -// use `network`or `sourceIp` -// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip +// use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip func (o SwitchRadiusConfigPtrOutput) Network() pulumi.StringPtrOutput { return o.ApplyT(func(v *SwitchRadiusConfig) *string { if v == nil { @@ -23891,13 +23923,11 @@ func (o SwitchSnmpConfigV3ConfigUsmPtrOutput) Users() SwitchSnmpConfigV3ConfigUs } type SwitchSnmpConfigV3ConfigUsmUser struct { - // Not required if `authenticationType`==`authenticationNone` - // include alphabetic, numeric, and special characters, but it cannot include control characters. + // Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. AuthenticationPassword *string `pulumi:"authenticationPassword"` // sha224, sha256, sha384, sha512 are supported in 21.1 and newer release. enum: `authenticationMd5`, `authenticationNone`, `authenticationSha`, `authenticationSha224`, `authenticationSha256`, `authenticationSha384`, `authenticationSha512` AuthenticationType *string `pulumi:"authenticationType"` - // Not required if `encryptionType`==`privacy-none` - // include alphabetic, numeric, and special characters, but it cannot include control characters + // Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters EncryptionPassword *string `pulumi:"encryptionPassword"` // enum: `privacy-3des`, `privacy-aes128`, `privacy-des`, `privacy-none` EncryptionType *string `pulumi:"encryptionType"` @@ -23916,13 +23946,11 @@ type SwitchSnmpConfigV3ConfigUsmUserInput interface { } type SwitchSnmpConfigV3ConfigUsmUserArgs struct { - // Not required if `authenticationType`==`authenticationNone` - // include alphabetic, numeric, and special characters, but it cannot include control characters. + // Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. AuthenticationPassword pulumi.StringPtrInput `pulumi:"authenticationPassword"` // sha224, sha256, sha384, sha512 are supported in 21.1 and newer release. enum: `authenticationMd5`, `authenticationNone`, `authenticationSha`, `authenticationSha224`, `authenticationSha256`, `authenticationSha384`, `authenticationSha512` AuthenticationType pulumi.StringPtrInput `pulumi:"authenticationType"` - // Not required if `encryptionType`==`privacy-none` - // include alphabetic, numeric, and special characters, but it cannot include control characters + // Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters EncryptionPassword pulumi.StringPtrInput `pulumi:"encryptionPassword"` // enum: `privacy-3des`, `privacy-aes128`, `privacy-des`, `privacy-none` EncryptionType pulumi.StringPtrInput `pulumi:"encryptionType"` @@ -23980,8 +24008,7 @@ func (o SwitchSnmpConfigV3ConfigUsmUserOutput) ToSwitchSnmpConfigV3ConfigUsmUser return o } -// Not required if `authenticationType`==`authenticationNone` -// include alphabetic, numeric, and special characters, but it cannot include control characters. +// Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. func (o SwitchSnmpConfigV3ConfigUsmUserOutput) AuthenticationPassword() pulumi.StringPtrOutput { return o.ApplyT(func(v SwitchSnmpConfigV3ConfigUsmUser) *string { return v.AuthenticationPassword }).(pulumi.StringPtrOutput) } @@ -23991,8 +24018,7 @@ func (o SwitchSnmpConfigV3ConfigUsmUserOutput) AuthenticationType() pulumi.Strin return o.ApplyT(func(v SwitchSnmpConfigV3ConfigUsmUser) *string { return v.AuthenticationType }).(pulumi.StringPtrOutput) } -// Not required if `encryptionType`==`privacy-none` -// include alphabetic, numeric, and special characters, but it cannot include control characters +// Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters func (o SwitchSnmpConfigV3ConfigUsmUserOutput) EncryptionPassword() pulumi.StringPtrOutput { return o.ApplyT(func(v SwitchSnmpConfigV3ConfigUsmUser) *string { return v.EncryptionPassword }).(pulumi.StringPtrOutput) } @@ -38937,8 +38963,6 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*SwitchDhcpdConfigConfigOptionsMapInput)(nil)).Elem(), SwitchDhcpdConfigConfigOptionsMap{}) pulumi.RegisterInputType(reflect.TypeOf((*SwitchDhcpdConfigConfigVendorEncapsulatedInput)(nil)).Elem(), SwitchDhcpdConfigConfigVendorEncapsulatedArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SwitchDhcpdConfigConfigVendorEncapsulatedMapInput)(nil)).Elem(), SwitchDhcpdConfigConfigVendorEncapsulatedMap{}) - pulumi.RegisterInputType(reflect.TypeOf((*SwitchEvpnConfigInput)(nil)).Elem(), SwitchEvpnConfigArgs{}) - pulumi.RegisterInputType(reflect.TypeOf((*SwitchEvpnConfigPtrInput)(nil)).Elem(), SwitchEvpnConfigArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*SwitchExtraRoutes6Input)(nil)).Elem(), SwitchExtraRoutes6Args{}) pulumi.RegisterInputType(reflect.TypeOf((*SwitchExtraRoutes6MapInput)(nil)).Elem(), SwitchExtraRoutes6Map{}) pulumi.RegisterInputType(reflect.TypeOf((*SwitchExtraRoutes6NextQualifiedInput)(nil)).Elem(), SwitchExtraRoutes6NextQualifiedArgs{}) @@ -39406,8 +39430,6 @@ func init() { pulumi.RegisterOutputType(SwitchDhcpdConfigConfigOptionsMapOutput{}) pulumi.RegisterOutputType(SwitchDhcpdConfigConfigVendorEncapsulatedOutput{}) pulumi.RegisterOutputType(SwitchDhcpdConfigConfigVendorEncapsulatedMapOutput{}) - pulumi.RegisterOutputType(SwitchEvpnConfigOutput{}) - pulumi.RegisterOutputType(SwitchEvpnConfigPtrOutput{}) pulumi.RegisterOutputType(SwitchExtraRoutes6Output{}) pulumi.RegisterOutputType(SwitchExtraRoutes6MapOutput{}) pulumi.RegisterOutputType(SwitchExtraRoutes6NextQualifiedOutput{}) diff --git a/sdk/go/junipermist/device/switch.go b/sdk/go/junipermist/device/switch.go index 7c308d11..8c779ae0 100644 --- a/sdk/go/junipermist/device/switch.go +++ b/sdk/go/junipermist/device/switch.go @@ -32,7 +32,7 @@ type Switch struct { AclPolicies SwitchAclPolicyArrayOutput `pulumi:"aclPolicies"` // ACL Tags to identify traffic source or destination. Key name is the tag name AclTags SwitchAclTagsMapOutput `pulumi:"aclTags"` - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds pulumi.StringArrayOutput `pulumi:"additionalConfigCmds"` DeviceId pulumi.StringOutput `pulumi:"deviceId"` DhcpSnooping SwitchDhcpSnoopingPtrOutput `pulumi:"dhcpSnooping"` @@ -42,9 +42,7 @@ type Switch struct { // Global dns settings. To keep compatibility, dns settings in `ipConfig` and `oobIpConfig` will overwrite this setting DnsServers pulumi.StringArrayOutput `pulumi:"dnsServers"` // Global dns settings. To keep compatibility, dns settings in `ipConfig` and `oobIpConfig` will overwrite this setting - DnsSuffixes pulumi.StringArrayOutput `pulumi:"dnsSuffixes"` - // EVPN Junos settings - EvpnConfig SwitchEvpnConfigOutput `pulumi:"evpnConfig"` + DnsSuffixes pulumi.StringArrayOutput `pulumi:"dnsSuffixes"` ExtraRoutes SwitchExtraRoutesMapOutput `pulumi:"extraRoutes"` // Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64") ExtraRoutes6 SwitchExtraRoutes6MapOutput `pulumi:"extraRoutes6"` @@ -72,8 +70,8 @@ type Switch struct { Notes pulumi.StringPtrOutput `pulumi:"notes"` // list of NTP servers specific to this device. By default, those in Site Settings will be used NtpServers pulumi.StringArrayOutput `pulumi:"ntpServers"` - // - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - // set separately (if desired): key parameter = `re1` + // Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + // re1 mgmt IP has to be set separately (if desired): key parameter = `re1` OobIpConfig SwitchOobIpConfigPtrOutput `pulumi:"oobIpConfig"` OrgId pulumi.StringOutput `pulumi:"orgId"` // Junos OSPF areas @@ -82,7 +80,7 @@ type Switch struct { OtherIpConfigs SwitchOtherIpConfigsMapOutput `pulumi:"otherIpConfigs"` // Property key is the port name or range (e.g. "ge-0/0/0-10") PortConfig SwitchPortConfigMapOutput `pulumi:"portConfig"` - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring SwitchPortMirroringMapOutput `pulumi:"portMirroring"` @@ -159,7 +157,7 @@ type switchState struct { AclPolicies []SwitchAclPolicy `pulumi:"aclPolicies"` // ACL Tags to identify traffic source or destination. Key name is the tag name AclTags map[string]SwitchAclTags `pulumi:"aclTags"` - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds []string `pulumi:"additionalConfigCmds"` DeviceId *string `pulumi:"deviceId"` DhcpSnooping *SwitchDhcpSnooping `pulumi:"dhcpSnooping"` @@ -169,9 +167,7 @@ type switchState struct { // Global dns settings. To keep compatibility, dns settings in `ipConfig` and `oobIpConfig` will overwrite this setting DnsServers []string `pulumi:"dnsServers"` // Global dns settings. To keep compatibility, dns settings in `ipConfig` and `oobIpConfig` will overwrite this setting - DnsSuffixes []string `pulumi:"dnsSuffixes"` - // EVPN Junos settings - EvpnConfig *SwitchEvpnConfig `pulumi:"evpnConfig"` + DnsSuffixes []string `pulumi:"dnsSuffixes"` ExtraRoutes map[string]SwitchExtraRoutes `pulumi:"extraRoutes"` // Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64") ExtraRoutes6 map[string]SwitchExtraRoutes6 `pulumi:"extraRoutes6"` @@ -199,8 +195,8 @@ type switchState struct { Notes *string `pulumi:"notes"` // list of NTP servers specific to this device. By default, those in Site Settings will be used NtpServers []string `pulumi:"ntpServers"` - // - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - // set separately (if desired): key parameter = `re1` + // Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + // re1 mgmt IP has to be set separately (if desired): key parameter = `re1` OobIpConfig *SwitchOobIpConfig `pulumi:"oobIpConfig"` OrgId *string `pulumi:"orgId"` // Junos OSPF areas @@ -209,7 +205,7 @@ type switchState struct { OtherIpConfigs map[string]SwitchOtherIpConfigs `pulumi:"otherIpConfigs"` // Property key is the port name or range (e.g. "ge-0/0/0-10") PortConfig map[string]SwitchPortConfig `pulumi:"portConfig"` - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring map[string]SwitchPortMirroring `pulumi:"portMirroring"` @@ -251,7 +247,7 @@ type SwitchState struct { AclPolicies SwitchAclPolicyArrayInput // ACL Tags to identify traffic source or destination. Key name is the tag name AclTags SwitchAclTagsMapInput - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds pulumi.StringArrayInput DeviceId pulumi.StringPtrInput DhcpSnooping SwitchDhcpSnoopingPtrInput @@ -262,8 +258,6 @@ type SwitchState struct { DnsServers pulumi.StringArrayInput // Global dns settings. To keep compatibility, dns settings in `ipConfig` and `oobIpConfig` will overwrite this setting DnsSuffixes pulumi.StringArrayInput - // EVPN Junos settings - EvpnConfig SwitchEvpnConfigPtrInput ExtraRoutes SwitchExtraRoutesMapInput // Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64") ExtraRoutes6 SwitchExtraRoutes6MapInput @@ -291,8 +285,8 @@ type SwitchState struct { Notes pulumi.StringPtrInput // list of NTP servers specific to this device. By default, those in Site Settings will be used NtpServers pulumi.StringArrayInput - // - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - // set separately (if desired): key parameter = `re1` + // Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + // re1 mgmt IP has to be set separately (if desired): key parameter = `re1` OobIpConfig SwitchOobIpConfigPtrInput OrgId pulumi.StringPtrInput // Junos OSPF areas @@ -301,7 +295,7 @@ type SwitchState struct { OtherIpConfigs SwitchOtherIpConfigsMapInput // Property key is the port name or range (e.g. "ge-0/0/0-10") PortConfig SwitchPortConfigMapInput - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring SwitchPortMirroringMapInput @@ -347,7 +341,7 @@ type switchArgs struct { AclPolicies []SwitchAclPolicy `pulumi:"aclPolicies"` // ACL Tags to identify traffic source or destination. Key name is the tag name AclTags map[string]SwitchAclTags `pulumi:"aclTags"` - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds []string `pulumi:"additionalConfigCmds"` DeviceId string `pulumi:"deviceId"` DhcpSnooping *SwitchDhcpSnooping `pulumi:"dhcpSnooping"` @@ -378,8 +372,8 @@ type switchArgs struct { Notes *string `pulumi:"notes"` // list of NTP servers specific to this device. By default, those in Site Settings will be used NtpServers []string `pulumi:"ntpServers"` - // - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - // set separately (if desired): key parameter = `re1` + // Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + // re1 mgmt IP has to be set separately (if desired): key parameter = `re1` OobIpConfig *SwitchOobIpConfig `pulumi:"oobIpConfig"` // Junos OSPF areas OspfAreas map[string]SwitchOspfAreas `pulumi:"ospfAreas"` @@ -387,7 +381,7 @@ type switchArgs struct { OtherIpConfigs map[string]SwitchOtherIpConfigs `pulumi:"otherIpConfigs"` // Property key is the port name or range (e.g. "ge-0/0/0-10") PortConfig map[string]SwitchPortConfig `pulumi:"portConfig"` - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring map[string]SwitchPortMirroring `pulumi:"portMirroring"` @@ -426,7 +420,7 @@ type SwitchArgs struct { AclPolicies SwitchAclPolicyArrayInput // ACL Tags to identify traffic source or destination. Key name is the tag name AclTags SwitchAclTagsMapInput - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds pulumi.StringArrayInput DeviceId pulumi.StringInput DhcpSnooping SwitchDhcpSnoopingPtrInput @@ -457,8 +451,8 @@ type SwitchArgs struct { Notes pulumi.StringPtrInput // list of NTP servers specific to this device. By default, those in Site Settings will be used NtpServers pulumi.StringArrayInput - // - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - // set separately (if desired): key parameter = `re1` + // Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + // re1 mgmt IP has to be set separately (if desired): key parameter = `re1` OobIpConfig SwitchOobIpConfigPtrInput // Junos OSPF areas OspfAreas SwitchOspfAreasMapInput @@ -466,7 +460,7 @@ type SwitchArgs struct { OtherIpConfigs SwitchOtherIpConfigsMapInput // Property key is the port name or range (e.g. "ge-0/0/0-10") PortConfig SwitchPortConfigMapInput - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring SwitchPortMirroringMapInput @@ -596,7 +590,7 @@ func (o SwitchOutput) AclTags() SwitchAclTagsMapOutput { return o.ApplyT(func(v *Switch) SwitchAclTagsMapOutput { return v.AclTags }).(SwitchAclTagsMapOutput) } -// additional CLI commands to append to the generated Junos config **Note**: no check is done +// additional CLI commands to append to the generated Junos config. **Note**: no check is done func (o SwitchOutput) AdditionalConfigCmds() pulumi.StringArrayOutput { return o.ApplyT(func(v *Switch) pulumi.StringArrayOutput { return v.AdditionalConfigCmds }).(pulumi.StringArrayOutput) } @@ -628,11 +622,6 @@ func (o SwitchOutput) DnsSuffixes() pulumi.StringArrayOutput { return o.ApplyT(func(v *Switch) pulumi.StringArrayOutput { return v.DnsSuffixes }).(pulumi.StringArrayOutput) } -// EVPN Junos settings -func (o SwitchOutput) EvpnConfig() SwitchEvpnConfigOutput { - return o.ApplyT(func(v *Switch) SwitchEvpnConfigOutput { return v.EvpnConfig }).(SwitchEvpnConfigOutput) -} - func (o SwitchOutput) ExtraRoutes() SwitchExtraRoutesMapOutput { return o.ApplyT(func(v *Switch) SwitchExtraRoutesMapOutput { return v.ExtraRoutes }).(SwitchExtraRoutesMapOutput) } @@ -708,8 +697,8 @@ func (o SwitchOutput) NtpServers() pulumi.StringArrayOutput { return o.ApplyT(func(v *Switch) pulumi.StringArrayOutput { return v.NtpServers }).(pulumi.StringArrayOutput) } -// - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be -// set separately (if desired): key parameter = `re1` +// Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, +// re1 mgmt IP has to be set separately (if desired): key parameter = `re1` func (o SwitchOutput) OobIpConfig() SwitchOobIpConfigPtrOutput { return o.ApplyT(func(v *Switch) SwitchOobIpConfigPtrOutput { return v.OobIpConfig }).(SwitchOobIpConfigPtrOutput) } @@ -733,7 +722,7 @@ func (o SwitchOutput) PortConfig() SwitchPortConfigMapOutput { return o.ApplyT(func(v *Switch) SwitchPortConfigMapOutput { return v.PortConfig }).(SwitchPortConfigMapOutput) } -// Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes +// Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed func (o SwitchOutput) PortMirroring() SwitchPortMirroringMapOutput { diff --git a/sdk/go/junipermist/org/deviceprofileGateway.go b/sdk/go/junipermist/org/deviceprofileGateway.go index 10038ef5..dcbf8db7 100644 --- a/sdk/go/junipermist/org/deviceprofileGateway.go +++ b/sdk/go/junipermist/org/deviceprofileGateway.go @@ -29,7 +29,7 @@ import ( type DeviceprofileGateway struct { pulumi.CustomResourceState - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds pulumi.StringArrayOutput `pulumi:"additionalConfigCmds"` BgpConfig DeviceprofileGatewayBgpConfigMapOutput `pulumi:"bgpConfig"` DhcpdConfig DeviceprofileGatewayDhcpdConfigPtrOutput `pulumi:"dhcpdConfig"` @@ -106,7 +106,7 @@ func GetDeviceprofileGateway(ctx *pulumi.Context, // Input properties used for looking up and filtering DeviceprofileGateway resources. type deviceprofileGatewayState struct { - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds []string `pulumi:"additionalConfigCmds"` BgpConfig map[string]DeviceprofileGatewayBgpConfig `pulumi:"bgpConfig"` DhcpdConfig *DeviceprofileGatewayDhcpdConfig `pulumi:"dhcpdConfig"` @@ -151,7 +151,7 @@ type deviceprofileGatewayState struct { } type DeviceprofileGatewayState struct { - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds pulumi.StringArrayInput BgpConfig DeviceprofileGatewayBgpConfigMapInput DhcpdConfig DeviceprofileGatewayDhcpdConfigPtrInput @@ -200,7 +200,7 @@ func (DeviceprofileGatewayState) ElementType() reflect.Type { } type deviceprofileGatewayArgs struct { - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds []string `pulumi:"additionalConfigCmds"` BgpConfig map[string]DeviceprofileGatewayBgpConfig `pulumi:"bgpConfig"` DhcpdConfig *DeviceprofileGatewayDhcpdConfig `pulumi:"dhcpdConfig"` @@ -244,7 +244,7 @@ type deviceprofileGatewayArgs struct { // The set of arguments for constructing a DeviceprofileGateway resource. type DeviceprofileGatewayArgs struct { - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds pulumi.StringArrayInput BgpConfig DeviceprofileGatewayBgpConfigMapInput DhcpdConfig DeviceprofileGatewayDhcpdConfigPtrInput @@ -373,7 +373,7 @@ func (o DeviceprofileGatewayOutput) ToDeviceprofileGatewayOutputWithContext(ctx return o } -// additional CLI commands to append to the generated Junos config **Note**: no check is done +// additional CLI commands to append to the generated Junos config. **Note**: no check is done func (o DeviceprofileGatewayOutput) AdditionalConfigCmds() pulumi.StringArrayOutput { return o.ApplyT(func(v *DeviceprofileGateway) pulumi.StringArrayOutput { return v.AdditionalConfigCmds }).(pulumi.StringArrayOutput) } diff --git a/sdk/go/junipermist/org/gatewaytemplate.go b/sdk/go/junipermist/org/gatewaytemplate.go index 4d72f402..2f983eb0 100644 --- a/sdk/go/junipermist/org/gatewaytemplate.go +++ b/sdk/go/junipermist/org/gatewaytemplate.go @@ -27,7 +27,7 @@ import ( type Gatewaytemplate struct { pulumi.CustomResourceState - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds pulumi.StringArrayOutput `pulumi:"additionalConfigCmds"` BgpConfig GatewaytemplateBgpConfigMapOutput `pulumi:"bgpConfig"` DhcpdConfig GatewaytemplateDhcpdConfigPtrOutput `pulumi:"dhcpdConfig"` @@ -54,7 +54,8 @@ type Gatewaytemplate struct { OrgId pulumi.StringOutput `pulumi:"orgId"` // Property key is the path name PathPreferences GatewaytemplatePathPreferencesMapOutput `pulumi:"pathPreferences"` - // Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + // Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + // "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). PortConfig GatewaytemplatePortConfigMapOutput `pulumi:"portConfig"` // auto assigned if not set RouterId pulumi.StringPtrOutput `pulumi:"routerId"` @@ -104,7 +105,7 @@ func GetGatewaytemplate(ctx *pulumi.Context, // Input properties used for looking up and filtering Gatewaytemplate resources. type gatewaytemplateState struct { - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds []string `pulumi:"additionalConfigCmds"` BgpConfig map[string]GatewaytemplateBgpConfig `pulumi:"bgpConfig"` DhcpdConfig *GatewaytemplateDhcpdConfig `pulumi:"dhcpdConfig"` @@ -131,7 +132,8 @@ type gatewaytemplateState struct { OrgId *string `pulumi:"orgId"` // Property key is the path name PathPreferences map[string]GatewaytemplatePathPreferences `pulumi:"pathPreferences"` - // Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + // Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + // "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). PortConfig map[string]GatewaytemplatePortConfig `pulumi:"portConfig"` // auto assigned if not set RouterId *string `pulumi:"routerId"` @@ -149,7 +151,7 @@ type gatewaytemplateState struct { } type GatewaytemplateState struct { - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds pulumi.StringArrayInput BgpConfig GatewaytemplateBgpConfigMapInput DhcpdConfig GatewaytemplateDhcpdConfigPtrInput @@ -176,7 +178,8 @@ type GatewaytemplateState struct { OrgId pulumi.StringPtrInput // Property key is the path name PathPreferences GatewaytemplatePathPreferencesMapInput - // Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + // Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + // "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). PortConfig GatewaytemplatePortConfigMapInput // auto assigned if not set RouterId pulumi.StringPtrInput @@ -198,7 +201,7 @@ func (GatewaytemplateState) ElementType() reflect.Type { } type gatewaytemplateArgs struct { - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds []string `pulumi:"additionalConfigCmds"` BgpConfig map[string]GatewaytemplateBgpConfig `pulumi:"bgpConfig"` DhcpdConfig *GatewaytemplateDhcpdConfig `pulumi:"dhcpdConfig"` @@ -225,7 +228,8 @@ type gatewaytemplateArgs struct { OrgId string `pulumi:"orgId"` // Property key is the path name PathPreferences map[string]GatewaytemplatePathPreferences `pulumi:"pathPreferences"` - // Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + // Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + // "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). PortConfig map[string]GatewaytemplatePortConfig `pulumi:"portConfig"` // auto assigned if not set RouterId *string `pulumi:"routerId"` @@ -244,7 +248,7 @@ type gatewaytemplateArgs struct { // The set of arguments for constructing a Gatewaytemplate resource. type GatewaytemplateArgs struct { - // additional CLI commands to append to the generated Junos config **Note**: no check is done + // additional CLI commands to append to the generated Junos config. **Note**: no check is done AdditionalConfigCmds pulumi.StringArrayInput BgpConfig GatewaytemplateBgpConfigMapInput DhcpdConfig GatewaytemplateDhcpdConfigPtrInput @@ -271,7 +275,8 @@ type GatewaytemplateArgs struct { OrgId pulumi.StringInput // Property key is the path name PathPreferences GatewaytemplatePathPreferencesMapInput - // Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + // Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + // "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). PortConfig GatewaytemplatePortConfigMapInput // auto assigned if not set RouterId pulumi.StringPtrInput @@ -375,7 +380,7 @@ func (o GatewaytemplateOutput) ToGatewaytemplateOutputWithContext(ctx context.Co return o } -// additional CLI commands to append to the generated Junos config **Note**: no check is done +// additional CLI commands to append to the generated Junos config. **Note**: no check is done func (o GatewaytemplateOutput) AdditionalConfigCmds() pulumi.StringArrayOutput { return o.ApplyT(func(v *Gatewaytemplate) pulumi.StringArrayOutput { return v.AdditionalConfigCmds }).(pulumi.StringArrayOutput) } @@ -453,7 +458,8 @@ func (o GatewaytemplateOutput) PathPreferences() GatewaytemplatePathPreferencesM return o.ApplyT(func(v *Gatewaytemplate) GatewaytemplatePathPreferencesMapOutput { return v.PathPreferences }).(GatewaytemplatePathPreferencesMapOutput) } -// Property key is the port(s) name or range (e.g. "ge-0/0/0-10") +// Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. +// "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). func (o GatewaytemplateOutput) PortConfig() GatewaytemplatePortConfigMapOutput { return o.ApplyT(func(v *Gatewaytemplate) GatewaytemplatePortConfigMapOutput { return v.PortConfig }).(GatewaytemplatePortConfigMapOutput) } diff --git a/sdk/go/junipermist/org/nacidp.go b/sdk/go/junipermist/org/nacidp.go index 9571eb00..4efbc583 100644 --- a/sdk/go/junipermist/org/nacidp.go +++ b/sdk/go/junipermist/org/nacidp.go @@ -134,6 +134,8 @@ type Nacidp struct { OauthCcClientSecret pulumi.StringPtrOutput `pulumi:"oauthCcClientSecret"` // if `idpType`==`oauth` OauthDiscoveryUrl pulumi.StringPtrOutput `pulumi:"oauthDiscoveryUrl"` + // enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + OauthPingIdentityRegion pulumi.StringOutput `pulumi:"oauthPingIdentityRegion"` // if `idpType`==`oauth`, ropc = Resource Owner Password Credentials OauthRopcClientId pulumi.StringPtrOutput `pulumi:"oauthRopcClientId"` // if `oauthType`==`azure` or `oauthType`==`azure-gov`. oauth*ropc*client_secret can be empty @@ -143,6 +145,10 @@ type Nacidp struct { // if `idpType`==`oauth`. enum: `azure`, `azure-gov`, `okta`, `pingIdentity` OauthType pulumi.StringOutput `pulumi:"oauthType"` OrgId pulumi.StringOutput `pulumi:"orgId"` + // if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + ScimEnabled pulumi.BoolOutput `pulumi:"scimEnabled"` + // if `idpType`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scimEnabled`==`true`, empty string when `scimEnabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + ScimSecretToken pulumi.StringOutput `pulumi:"scimSecretToken"` } // NewNacidp registers a new resource with the given unique name, arguments, and options. @@ -219,6 +225,8 @@ type nacidpState struct { OauthCcClientSecret *string `pulumi:"oauthCcClientSecret"` // if `idpType`==`oauth` OauthDiscoveryUrl *string `pulumi:"oauthDiscoveryUrl"` + // enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + OauthPingIdentityRegion *string `pulumi:"oauthPingIdentityRegion"` // if `idpType`==`oauth`, ropc = Resource Owner Password Credentials OauthRopcClientId *string `pulumi:"oauthRopcClientId"` // if `oauthType`==`azure` or `oauthType`==`azure-gov`. oauth*ropc*client_secret can be empty @@ -228,6 +236,10 @@ type nacidpState struct { // if `idpType`==`oauth`. enum: `azure`, `azure-gov`, `okta`, `pingIdentity` OauthType *string `pulumi:"oauthType"` OrgId *string `pulumi:"orgId"` + // if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + ScimEnabled *bool `pulumi:"scimEnabled"` + // if `idpType`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scimEnabled`==`true`, empty string when `scimEnabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + ScimSecretToken *string `pulumi:"scimSecretToken"` } type NacidpState struct { @@ -269,6 +281,8 @@ type NacidpState struct { OauthCcClientSecret pulumi.StringPtrInput // if `idpType`==`oauth` OauthDiscoveryUrl pulumi.StringPtrInput + // enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + OauthPingIdentityRegion pulumi.StringPtrInput // if `idpType`==`oauth`, ropc = Resource Owner Password Credentials OauthRopcClientId pulumi.StringPtrInput // if `oauthType`==`azure` or `oauthType`==`azure-gov`. oauth*ropc*client_secret can be empty @@ -278,6 +292,10 @@ type NacidpState struct { // if `idpType`==`oauth`. enum: `azure`, `azure-gov`, `okta`, `pingIdentity` OauthType pulumi.StringPtrInput OrgId pulumi.StringPtrInput + // if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + ScimEnabled pulumi.BoolPtrInput + // if `idpType`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scimEnabled`==`true`, empty string when `scimEnabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + ScimSecretToken pulumi.StringPtrInput } func (NacidpState) ElementType() reflect.Type { @@ -323,6 +341,8 @@ type nacidpArgs struct { OauthCcClientSecret *string `pulumi:"oauthCcClientSecret"` // if `idpType`==`oauth` OauthDiscoveryUrl *string `pulumi:"oauthDiscoveryUrl"` + // enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + OauthPingIdentityRegion *string `pulumi:"oauthPingIdentityRegion"` // if `idpType`==`oauth`, ropc = Resource Owner Password Credentials OauthRopcClientId *string `pulumi:"oauthRopcClientId"` // if `oauthType`==`azure` or `oauthType`==`azure-gov`. oauth*ropc*client_secret can be empty @@ -332,6 +352,10 @@ type nacidpArgs struct { // if `idpType`==`oauth`. enum: `azure`, `azure-gov`, `okta`, `pingIdentity` OauthType *string `pulumi:"oauthType"` OrgId string `pulumi:"orgId"` + // if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + ScimEnabled *bool `pulumi:"scimEnabled"` + // if `idpType`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scimEnabled`==`true`, empty string when `scimEnabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + ScimSecretToken *string `pulumi:"scimSecretToken"` } // The set of arguments for constructing a Nacidp resource. @@ -374,6 +398,8 @@ type NacidpArgs struct { OauthCcClientSecret pulumi.StringPtrInput // if `idpType`==`oauth` OauthDiscoveryUrl pulumi.StringPtrInput + // enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + OauthPingIdentityRegion pulumi.StringPtrInput // if `idpType`==`oauth`, ropc = Resource Owner Password Credentials OauthRopcClientId pulumi.StringPtrInput // if `oauthType`==`azure` or `oauthType`==`azure-gov`. oauth*ropc*client_secret can be empty @@ -383,6 +409,10 @@ type NacidpArgs struct { // if `idpType`==`oauth`. enum: `azure`, `azure-gov`, `okta`, `pingIdentity` OauthType pulumi.StringPtrInput OrgId pulumi.StringInput + // if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + ScimEnabled pulumi.BoolPtrInput + // if `idpType`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scimEnabled`==`true`, empty string when `scimEnabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + ScimSecretToken pulumi.StringPtrInput } func (NacidpArgs) ElementType() reflect.Type { @@ -567,6 +597,11 @@ func (o NacidpOutput) OauthDiscoveryUrl() pulumi.StringPtrOutput { return o.ApplyT(func(v *Nacidp) pulumi.StringPtrOutput { return v.OauthDiscoveryUrl }).(pulumi.StringPtrOutput) } +// enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) +func (o NacidpOutput) OauthPingIdentityRegion() pulumi.StringOutput { + return o.ApplyT(func(v *Nacidp) pulumi.StringOutput { return v.OauthPingIdentityRegion }).(pulumi.StringOutput) +} + // if `idpType`==`oauth`, ropc = Resource Owner Password Credentials func (o NacidpOutput) OauthRopcClientId() pulumi.StringPtrOutput { return o.ApplyT(func(v *Nacidp) pulumi.StringPtrOutput { return v.OauthRopcClientId }).(pulumi.StringPtrOutput) @@ -591,6 +626,16 @@ func (o NacidpOutput) OrgId() pulumi.StringOutput { return o.ApplyT(func(v *Nacidp) pulumi.StringOutput { return v.OrgId }).(pulumi.StringOutput) } +// if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP +func (o NacidpOutput) ScimEnabled() pulumi.BoolOutput { + return o.ApplyT(func(v *Nacidp) pulumi.BoolOutput { return v.ScimEnabled }).(pulumi.BoolOutput) +} + +// if `idpType`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scimEnabled`==`true`, empty string when `scimEnabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP +func (o NacidpOutput) ScimSecretToken() pulumi.StringOutput { + return o.ApplyT(func(v *Nacidp) pulumi.StringOutput { return v.ScimSecretToken }).(pulumi.StringOutput) +} + type NacidpArrayOutput struct{ *pulumi.OutputState } func (NacidpArrayOutput) ElementType() reflect.Type { diff --git a/sdk/go/junipermist/org/network.go b/sdk/go/junipermist/org/network.go index db8a1c2f..f01b806c 100644 --- a/sdk/go/junipermist/org/network.go +++ b/sdk/go/junipermist/org/network.go @@ -65,14 +65,17 @@ type Network struct { InternetAccess NetworkInternetAccessPtrOutput `pulumi:"internetAccess"` // whether to allow clients in the network to talk to each other Isolation pulumi.BoolPtrOutput `pulumi:"isolation"` - Name pulumi.StringOutput `pulumi:"name"` - OrgId pulumi.StringOutput `pulumi:"orgId"` + // whether to enable multicast support (only PIM-sparse mode is supported) + Multicast NetworkMulticastPtrOutput `pulumi:"multicast"` + Name pulumi.StringOutput `pulumi:"name"` + OrgId pulumi.StringOutput `pulumi:"orgId"` // for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) RoutedForNetworks pulumi.StringArrayOutput `pulumi:"routedForNetworks"` Subnet pulumi.StringOutput `pulumi:"subnet"` Subnet6 pulumi.StringPtrOutput `pulumi:"subnet6"` - Tenants NetworkTenantsMapOutput `pulumi:"tenants"` - VlanId pulumi.StringPtrOutput `pulumi:"vlanId"` + // Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + Tenants NetworkTenantsMapOutput `pulumi:"tenants"` + VlanId pulumi.StringPtrOutput `pulumi:"vlanId"` // Property key is the VPN name. Whether this network can be accessed from vpn VpnAccess NetworkVpnAccessMapOutput `pulumi:"vpnAccess"` } @@ -121,15 +124,18 @@ type networkState struct { // whether this network has direct internet access InternetAccess *NetworkInternetAccess `pulumi:"internetAccess"` // whether to allow clients in the network to talk to each other - Isolation *bool `pulumi:"isolation"` - Name *string `pulumi:"name"` - OrgId *string `pulumi:"orgId"` + Isolation *bool `pulumi:"isolation"` + // whether to enable multicast support (only PIM-sparse mode is supported) + Multicast *NetworkMulticast `pulumi:"multicast"` + Name *string `pulumi:"name"` + OrgId *string `pulumi:"orgId"` // for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) - RoutedForNetworks []string `pulumi:"routedForNetworks"` - Subnet *string `pulumi:"subnet"` - Subnet6 *string `pulumi:"subnet6"` - Tenants map[string]NetworkTenants `pulumi:"tenants"` - VlanId *string `pulumi:"vlanId"` + RoutedForNetworks []string `pulumi:"routedForNetworks"` + Subnet *string `pulumi:"subnet"` + Subnet6 *string `pulumi:"subnet6"` + // Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + Tenants map[string]NetworkTenants `pulumi:"tenants"` + VlanId *string `pulumi:"vlanId"` // Property key is the VPN name. Whether this network can be accessed from vpn VpnAccess map[string]NetworkVpnAccess `pulumi:"vpnAccess"` } @@ -144,14 +150,17 @@ type NetworkState struct { InternetAccess NetworkInternetAccessPtrInput // whether to allow clients in the network to talk to each other Isolation pulumi.BoolPtrInput + // whether to enable multicast support (only PIM-sparse mode is supported) + Multicast NetworkMulticastPtrInput Name pulumi.StringPtrInput OrgId pulumi.StringPtrInput // for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) RoutedForNetworks pulumi.StringArrayInput Subnet pulumi.StringPtrInput Subnet6 pulumi.StringPtrInput - Tenants NetworkTenantsMapInput - VlanId pulumi.StringPtrInput + // Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + Tenants NetworkTenantsMapInput + VlanId pulumi.StringPtrInput // Property key is the VPN name. Whether this network can be accessed from vpn VpnAccess NetworkVpnAccessMapInput } @@ -169,15 +178,18 @@ type networkArgs struct { // whether this network has direct internet access InternetAccess *NetworkInternetAccess `pulumi:"internetAccess"` // whether to allow clients in the network to talk to each other - Isolation *bool `pulumi:"isolation"` - Name *string `pulumi:"name"` - OrgId string `pulumi:"orgId"` + Isolation *bool `pulumi:"isolation"` + // whether to enable multicast support (only PIM-sparse mode is supported) + Multicast *NetworkMulticast `pulumi:"multicast"` + Name *string `pulumi:"name"` + OrgId string `pulumi:"orgId"` // for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) - RoutedForNetworks []string `pulumi:"routedForNetworks"` - Subnet string `pulumi:"subnet"` - Subnet6 *string `pulumi:"subnet6"` - Tenants map[string]NetworkTenants `pulumi:"tenants"` - VlanId *string `pulumi:"vlanId"` + RoutedForNetworks []string `pulumi:"routedForNetworks"` + Subnet string `pulumi:"subnet"` + Subnet6 *string `pulumi:"subnet6"` + // Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + Tenants map[string]NetworkTenants `pulumi:"tenants"` + VlanId *string `pulumi:"vlanId"` // Property key is the VPN name. Whether this network can be accessed from vpn VpnAccess map[string]NetworkVpnAccess `pulumi:"vpnAccess"` } @@ -193,14 +205,17 @@ type NetworkArgs struct { InternetAccess NetworkInternetAccessPtrInput // whether to allow clients in the network to talk to each other Isolation pulumi.BoolPtrInput + // whether to enable multicast support (only PIM-sparse mode is supported) + Multicast NetworkMulticastPtrInput Name pulumi.StringPtrInput OrgId pulumi.StringInput // for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) RoutedForNetworks pulumi.StringArrayInput Subnet pulumi.StringInput Subnet6 pulumi.StringPtrInput - Tenants NetworkTenantsMapInput - VlanId pulumi.StringPtrInput + // Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + Tenants NetworkTenantsMapInput + VlanId pulumi.StringPtrInput // Property key is the VPN name. Whether this network can be accessed from vpn VpnAccess NetworkVpnAccessMapInput } @@ -319,6 +334,11 @@ func (o NetworkOutput) Isolation() pulumi.BoolPtrOutput { return o.ApplyT(func(v *Network) pulumi.BoolPtrOutput { return v.Isolation }).(pulumi.BoolPtrOutput) } +// whether to enable multicast support (only PIM-sparse mode is supported) +func (o NetworkOutput) Multicast() NetworkMulticastPtrOutput { + return o.ApplyT(func(v *Network) NetworkMulticastPtrOutput { return v.Multicast }).(NetworkMulticastPtrOutput) +} + func (o NetworkOutput) Name() pulumi.StringOutput { return o.ApplyT(func(v *Network) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) } @@ -340,6 +360,7 @@ func (o NetworkOutput) Subnet6() pulumi.StringPtrOutput { return o.ApplyT(func(v *Network) pulumi.StringPtrOutput { return v.Subnet6 }).(pulumi.StringPtrOutput) } +// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") func (o NetworkOutput) Tenants() NetworkTenantsMapOutput { return o.ApplyT(func(v *Network) NetworkTenantsMapOutput { return v.Tenants }).(NetworkTenantsMapOutput) } diff --git a/sdk/go/junipermist/org/networktemplate.go b/sdk/go/junipermist/org/networktemplate.go index 549839ff..4b1a75bd 100644 --- a/sdk/go/junipermist/org/networktemplate.go +++ b/sdk/go/junipermist/org/networktemplate.go @@ -50,7 +50,7 @@ type Networktemplate struct { OrgId pulumi.StringOutput `pulumi:"orgId"` // Junos OSPF areas OspfAreas NetworktemplateOspfAreasMapOutput `pulumi:"ospfAreas"` - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring NetworktemplatePortMirroringMapOutput `pulumi:"portMirroring"` @@ -127,7 +127,7 @@ type networktemplateState struct { OrgId *string `pulumi:"orgId"` // Junos OSPF areas OspfAreas map[string]NetworktemplateOspfAreas `pulumi:"ospfAreas"` - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring map[string]NetworktemplatePortMirroring `pulumi:"portMirroring"` @@ -172,7 +172,7 @@ type NetworktemplateState struct { OrgId pulumi.StringPtrInput // Junos OSPF areas OspfAreas NetworktemplateOspfAreasMapInput - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring NetworktemplatePortMirroringMapInput @@ -221,7 +221,7 @@ type networktemplateArgs struct { OrgId string `pulumi:"orgId"` // Junos OSPF areas OspfAreas map[string]NetworktemplateOspfAreas `pulumi:"ospfAreas"` - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring map[string]NetworktemplatePortMirroring `pulumi:"portMirroring"` @@ -267,7 +267,7 @@ type NetworktemplateArgs struct { OrgId pulumi.StringInput // Junos OSPF areas OspfAreas NetworktemplateOspfAreasMapInput - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring NetworktemplatePortMirroringMapInput @@ -440,7 +440,7 @@ func (o NetworktemplateOutput) OspfAreas() NetworktemplateOspfAreasMapOutput { return o.ApplyT(func(v *Networktemplate) NetworktemplateOspfAreasMapOutput { return v.OspfAreas }).(NetworktemplateOspfAreasMapOutput) } -// Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes +// Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed func (o NetworktemplateOutput) PortMirroring() NetworktemplatePortMirroringMapOutput { diff --git a/sdk/go/junipermist/org/pulumiTypes.go b/sdk/go/junipermist/org/pulumiTypes.go index 72c96701..da3a8b86 100644 --- a/sdk/go/junipermist/org/pulumiTypes.go +++ b/sdk/go/junipermist/org/pulumiTypes.go @@ -4581,8 +4581,7 @@ type DeviceprofileGatewayBgpConfig struct { Export *string `pulumi:"export"` // default export policies if no per-neighbor policies defined ExportPolicy *string `pulumi:"exportPolicy"` - // by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - // for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + // by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this ExtendedV4Nexthop *bool `pulumi:"extendedV4Nexthop"` // `0` means disable GracefulRestartTime *int `pulumi:"gracefulRestartTime"` @@ -4633,8 +4632,7 @@ type DeviceprofileGatewayBgpConfigArgs struct { Export pulumi.StringPtrInput `pulumi:"export"` // default export policies if no per-neighbor policies defined ExportPolicy pulumi.StringPtrInput `pulumi:"exportPolicy"` - // by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - // for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + // by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this ExtendedV4Nexthop pulumi.BoolPtrInput `pulumi:"extendedV4Nexthop"` // `0` means disable GracefulRestartTime pulumi.IntPtrInput `pulumi:"gracefulRestartTime"` @@ -4742,8 +4740,7 @@ func (o DeviceprofileGatewayBgpConfigOutput) ExportPolicy() pulumi.StringPtrOutp return o.ApplyT(func(v DeviceprofileGatewayBgpConfig) *string { return v.ExportPolicy }).(pulumi.StringPtrOutput) } -// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) -// for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this +// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this func (o DeviceprofileGatewayBgpConfigOutput) ExtendedV4Nexthop() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayBgpConfig) *bool { return v.ExtendedV4Nexthop }).(pulumi.BoolPtrOutput) } @@ -6396,11 +6393,12 @@ type DeviceprofileGatewayNetwork struct { Multicast *DeviceprofileGatewayNetworkMulticast `pulumi:"multicast"` Name string `pulumi:"name"` // for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) - RoutedForNetworks []string `pulumi:"routedForNetworks"` - Subnet string `pulumi:"subnet"` - Subnet6 *string `pulumi:"subnet6"` - Tenants map[string]DeviceprofileGatewayNetworkTenants `pulumi:"tenants"` - VlanId *string `pulumi:"vlanId"` + RoutedForNetworks []string `pulumi:"routedForNetworks"` + Subnet string `pulumi:"subnet"` + Subnet6 *string `pulumi:"subnet6"` + // Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + Tenants map[string]DeviceprofileGatewayNetworkTenants `pulumi:"tenants"` + VlanId *string `pulumi:"vlanId"` // Property key is the VPN name. Whether this network can be accessed from vpn VpnAccess map[string]DeviceprofileGatewayNetworkVpnAccess `pulumi:"vpnAccess"` } @@ -6430,11 +6428,12 @@ type DeviceprofileGatewayNetworkArgs struct { Multicast DeviceprofileGatewayNetworkMulticastPtrInput `pulumi:"multicast"` Name pulumi.StringInput `pulumi:"name"` // for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) - RoutedForNetworks pulumi.StringArrayInput `pulumi:"routedForNetworks"` - Subnet pulumi.StringInput `pulumi:"subnet"` - Subnet6 pulumi.StringPtrInput `pulumi:"subnet6"` - Tenants DeviceprofileGatewayNetworkTenantsMapInput `pulumi:"tenants"` - VlanId pulumi.StringPtrInput `pulumi:"vlanId"` + RoutedForNetworks pulumi.StringArrayInput `pulumi:"routedForNetworks"` + Subnet pulumi.StringInput `pulumi:"subnet"` + Subnet6 pulumi.StringPtrInput `pulumi:"subnet6"` + // Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + Tenants DeviceprofileGatewayNetworkTenantsMapInput `pulumi:"tenants"` + VlanId pulumi.StringPtrInput `pulumi:"vlanId"` // Property key is the VPN name. Whether this network can be accessed from vpn VpnAccess DeviceprofileGatewayNetworkVpnAccessMapInput `pulumi:"vpnAccess"` } @@ -6543,6 +6542,7 @@ func (o DeviceprofileGatewayNetworkOutput) Subnet6() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayNetwork) *string { return v.Subnet6 }).(pulumi.StringPtrOutput) } +// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") func (o DeviceprofileGatewayNetworkOutput) Tenants() DeviceprofileGatewayNetworkTenantsMapOutput { return o.ApplyT(func(v DeviceprofileGatewayNetwork) map[string]DeviceprofileGatewayNetworkTenants { return v.Tenants }).(DeviceprofileGatewayNetworkTenantsMapOutput) } @@ -6713,12 +6713,12 @@ func (o DeviceprofileGatewayNetworkInternalAccessPtrOutput) Enabled() pulumi.Boo type DeviceprofileGatewayNetworkInternetAccess struct { CreateSimpleServicePolicy *bool `pulumi:"createSimpleServicePolicy"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat map[string]DeviceprofileGatewayNetworkInternetAccessDestinationNat `pulumi:"destinationNat"` Enabled *bool `pulumi:"enabled"` // by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies Restricted *bool `pulumi:"restricted"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat map[string]DeviceprofileGatewayNetworkInternetAccessStaticNat `pulumi:"staticNat"` } @@ -6735,12 +6735,12 @@ type DeviceprofileGatewayNetworkInternetAccessInput interface { type DeviceprofileGatewayNetworkInternetAccessArgs struct { CreateSimpleServicePolicy pulumi.BoolPtrInput `pulumi:"createSimpleServicePolicy"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat DeviceprofileGatewayNetworkInternetAccessDestinationNatMapInput `pulumi:"destinationNat"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` // by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies Restricted pulumi.BoolPtrInput `pulumi:"restricted"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat DeviceprofileGatewayNetworkInternetAccessStaticNatMapInput `pulumi:"staticNat"` } @@ -6825,7 +6825,7 @@ func (o DeviceprofileGatewayNetworkInternetAccessOutput) CreateSimpleServicePoli return o.ApplyT(func(v DeviceprofileGatewayNetworkInternetAccess) *bool { return v.CreateSimpleServicePolicy }).(pulumi.BoolPtrOutput) } -// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") +// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined func (o DeviceprofileGatewayNetworkInternetAccessOutput) DestinationNat() DeviceprofileGatewayNetworkInternetAccessDestinationNatMapOutput { return o.ApplyT(func(v DeviceprofileGatewayNetworkInternetAccess) map[string]DeviceprofileGatewayNetworkInternetAccessDestinationNat { return v.DestinationNat @@ -6841,7 +6841,7 @@ func (o DeviceprofileGatewayNetworkInternetAccessOutput) Restricted() pulumi.Boo return o.ApplyT(func(v DeviceprofileGatewayNetworkInternetAccess) *bool { return v.Restricted }).(pulumi.BoolPtrOutput) } -// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") +// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") func (o DeviceprofileGatewayNetworkInternetAccessOutput) StaticNat() DeviceprofileGatewayNetworkInternetAccessStaticNatMapOutput { return o.ApplyT(func(v DeviceprofileGatewayNetworkInternetAccess) map[string]DeviceprofileGatewayNetworkInternetAccessStaticNat { return v.StaticNat @@ -6881,7 +6881,7 @@ func (o DeviceprofileGatewayNetworkInternetAccessPtrOutput) CreateSimpleServiceP }).(pulumi.BoolPtrOutput) } -// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") +// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined func (o DeviceprofileGatewayNetworkInternetAccessPtrOutput) DestinationNat() DeviceprofileGatewayNetworkInternetAccessDestinationNatMapOutput { return o.ApplyT(func(v *DeviceprofileGatewayNetworkInternetAccess) map[string]DeviceprofileGatewayNetworkInternetAccessDestinationNat { if v == nil { @@ -6910,7 +6910,7 @@ func (o DeviceprofileGatewayNetworkInternetAccessPtrOutput) Restricted() pulumi. }).(pulumi.BoolPtrOutput) } -// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") +// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") func (o DeviceprofileGatewayNetworkInternetAccessPtrOutput) StaticNat() DeviceprofileGatewayNetworkInternetAccessStaticNatMapOutput { return o.ApplyT(func(v *DeviceprofileGatewayNetworkInternetAccess) map[string]DeviceprofileGatewayNetworkInternetAccessStaticNat { if v == nil { @@ -6921,9 +6921,13 @@ func (o DeviceprofileGatewayNetworkInternetAccessPtrOutput) StaticNat() Devicepr } type DeviceprofileGatewayNetworkInternetAccessDestinationNat struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp *string `pulumi:"internalIp"` Name *string `pulumi:"name"` - Port *int `pulumi:"port"` + // The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + Port *string `pulumi:"port"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + WanName *string `pulumi:"wanName"` } // DeviceprofileGatewayNetworkInternetAccessDestinationNatInput is an input type that accepts DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs and DeviceprofileGatewayNetworkInternetAccessDestinationNatOutput values. @@ -6938,9 +6942,13 @@ type DeviceprofileGatewayNetworkInternetAccessDestinationNatInput interface { } type DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` Name pulumi.StringPtrInput `pulumi:"name"` - Port pulumi.IntPtrInput `pulumi:"port"` + // The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + Port pulumi.StringPtrInput `pulumi:"port"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + WanName pulumi.StringPtrInput `pulumi:"wanName"` } func (DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs) ElementType() reflect.Type { @@ -6994,6 +7002,7 @@ func (o DeviceprofileGatewayNetworkInternetAccessDestinationNatOutput) ToDevicep return o } +// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") func (o DeviceprofileGatewayNetworkInternetAccessDestinationNatOutput) InternalIp() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayNetworkInternetAccessDestinationNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) } @@ -7002,8 +7011,14 @@ func (o DeviceprofileGatewayNetworkInternetAccessDestinationNatOutput) Name() pu return o.ApplyT(func(v DeviceprofileGatewayNetworkInternetAccessDestinationNat) *string { return v.Name }).(pulumi.StringPtrOutput) } -func (o DeviceprofileGatewayNetworkInternetAccessDestinationNatOutput) Port() pulumi.IntPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayNetworkInternetAccessDestinationNat) *int { return v.Port }).(pulumi.IntPtrOutput) +// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") +func (o DeviceprofileGatewayNetworkInternetAccessDestinationNatOutput) Port() pulumi.StringPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayNetworkInternetAccessDestinationNat) *string { return v.Port }).(pulumi.StringPtrOutput) +} + +// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity +func (o DeviceprofileGatewayNetworkInternetAccessDestinationNatOutput) WanName() pulumi.StringPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayNetworkInternetAccessDestinationNat) *string { return v.WanName }).(pulumi.StringPtrOutput) } type DeviceprofileGatewayNetworkInternetAccessDestinationNatMapOutput struct{ *pulumi.OutputState } @@ -7027,9 +7042,10 @@ func (o DeviceprofileGatewayNetworkInternetAccessDestinationNatMapOutput) MapInd } type DeviceprofileGatewayNetworkInternetAccessStaticNat struct { - InternalIp *string `pulumi:"internalIp"` - Name *string `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp string `pulumi:"internalIp"` + Name string `pulumi:"name"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") WanName *string `pulumi:"wanName"` } @@ -7045,9 +7061,10 @@ type DeviceprofileGatewayNetworkInternetAccessStaticNatInput interface { } type DeviceprofileGatewayNetworkInternetAccessStaticNatArgs struct { - InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` - Name pulumi.StringPtrInput `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp pulumi.StringInput `pulumi:"internalIp"` + Name pulumi.StringInput `pulumi:"name"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") WanName pulumi.StringPtrInput `pulumi:"wanName"` } @@ -7102,15 +7119,16 @@ func (o DeviceprofileGatewayNetworkInternetAccessStaticNatOutput) ToDeviceprofil return o } -func (o DeviceprofileGatewayNetworkInternetAccessStaticNatOutput) InternalIp() pulumi.StringPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayNetworkInternetAccessStaticNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) +// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") +func (o DeviceprofileGatewayNetworkInternetAccessStaticNatOutput) InternalIp() pulumi.StringOutput { + return o.ApplyT(func(v DeviceprofileGatewayNetworkInternetAccessStaticNat) string { return v.InternalIp }).(pulumi.StringOutput) } -func (o DeviceprofileGatewayNetworkInternetAccessStaticNatOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayNetworkInternetAccessStaticNat) *string { return v.Name }).(pulumi.StringPtrOutput) +func (o DeviceprofileGatewayNetworkInternetAccessStaticNatOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v DeviceprofileGatewayNetworkInternetAccessStaticNat) string { return v.Name }).(pulumi.StringOutput) } -// If not set, we configure the nat policies against all WAN ports for simplicity +// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") func (o DeviceprofileGatewayNetworkInternetAccessStaticNatOutput) WanName() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayNetworkInternetAccessStaticNat) *string { return v.WanName }).(pulumi.StringPtrOutput) } @@ -7504,7 +7522,7 @@ type DeviceprofileGatewayNetworkVpnAccess struct { AdvertisedSubnet *string `pulumi:"advertisedSubnet"` // whether to allow ping from vpn into this routed network AllowPing *bool `pulumi:"allowPing"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat map[string]DeviceprofileGatewayNetworkVpnAccessDestinationNat `pulumi:"destinationNat"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub NatPool *string `pulumi:"natPool"` @@ -7512,20 +7530,17 @@ type DeviceprofileGatewayNetworkVpnAccess struct { NoReadvertiseToLanBgp *bool `pulumi:"noReadvertiseToLanBgp"` // toward LAN-side OSPF peers NoReadvertiseToLanOspf *bool `pulumi:"noReadvertiseToLanOspf"` - // toward overlay - // how HUB should deal with routes it received from Spokes + // toward overlay, how HUB should deal with routes it received from Spokes NoReadvertiseToOverlay *bool `pulumi:"noReadvertiseToOverlay"` - // by default, the routes are only readvertised toward the same vrf on spoke - // to allow it to be leaked to other vrfs + // by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs OtherVrfs []string `pulumi:"otherVrfs"` // whether this network is routable Routed *bool `pulumi:"routed"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub SourceNat *DeviceprofileGatewayNetworkVpnAccessSourceNat `pulumi:"sourceNat"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat map[string]DeviceprofileGatewayNetworkVpnAccessStaticNat `pulumi:"staticNat"` - // toward overlay - // how HUB should deal with routes it received from Spokes + // toward overlay, how HUB should deal with routes it received from Spokes SummarizedSubnet *string `pulumi:"summarizedSubnet"` // toward LAN-side BGP peers SummarizedSubnetToLanBgp *string `pulumi:"summarizedSubnetToLanBgp"` @@ -7549,7 +7564,7 @@ type DeviceprofileGatewayNetworkVpnAccessArgs struct { AdvertisedSubnet pulumi.StringPtrInput `pulumi:"advertisedSubnet"` // whether to allow ping from vpn into this routed network AllowPing pulumi.BoolPtrInput `pulumi:"allowPing"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat DeviceprofileGatewayNetworkVpnAccessDestinationNatMapInput `pulumi:"destinationNat"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub NatPool pulumi.StringPtrInput `pulumi:"natPool"` @@ -7557,20 +7572,17 @@ type DeviceprofileGatewayNetworkVpnAccessArgs struct { NoReadvertiseToLanBgp pulumi.BoolPtrInput `pulumi:"noReadvertiseToLanBgp"` // toward LAN-side OSPF peers NoReadvertiseToLanOspf pulumi.BoolPtrInput `pulumi:"noReadvertiseToLanOspf"` - // toward overlay - // how HUB should deal with routes it received from Spokes + // toward overlay, how HUB should deal with routes it received from Spokes NoReadvertiseToOverlay pulumi.BoolPtrInput `pulumi:"noReadvertiseToOverlay"` - // by default, the routes are only readvertised toward the same vrf on spoke - // to allow it to be leaked to other vrfs + // by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs OtherVrfs pulumi.StringArrayInput `pulumi:"otherVrfs"` // whether this network is routable Routed pulumi.BoolPtrInput `pulumi:"routed"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub SourceNat DeviceprofileGatewayNetworkVpnAccessSourceNatPtrInput `pulumi:"sourceNat"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat DeviceprofileGatewayNetworkVpnAccessStaticNatMapInput `pulumi:"staticNat"` - // toward overlay - // how HUB should deal with routes it received from Spokes + // toward overlay, how HUB should deal with routes it received from Spokes SummarizedSubnet pulumi.StringPtrInput `pulumi:"summarizedSubnet"` // toward LAN-side BGP peers SummarizedSubnetToLanBgp pulumi.StringPtrInput `pulumi:"summarizedSubnetToLanBgp"` @@ -7639,7 +7651,7 @@ func (o DeviceprofileGatewayNetworkVpnAccessOutput) AllowPing() pulumi.BoolPtrOu return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccess) *bool { return v.AllowPing }).(pulumi.BoolPtrOutput) } -// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") +// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined func (o DeviceprofileGatewayNetworkVpnAccessOutput) DestinationNat() DeviceprofileGatewayNetworkVpnAccessDestinationNatMapOutput { return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccess) map[string]DeviceprofileGatewayNetworkVpnAccessDestinationNat { return v.DestinationNat @@ -7661,14 +7673,12 @@ func (o DeviceprofileGatewayNetworkVpnAccessOutput) NoReadvertiseToLanOspf() pul return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccess) *bool { return v.NoReadvertiseToLanOspf }).(pulumi.BoolPtrOutput) } -// toward overlay -// how HUB should deal with routes it received from Spokes +// toward overlay, how HUB should deal with routes it received from Spokes func (o DeviceprofileGatewayNetworkVpnAccessOutput) NoReadvertiseToOverlay() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccess) *bool { return v.NoReadvertiseToOverlay }).(pulumi.BoolPtrOutput) } -// by default, the routes are only readvertised toward the same vrf on spoke -// to allow it to be leaked to other vrfs +// by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs func (o DeviceprofileGatewayNetworkVpnAccessOutput) OtherVrfs() pulumi.StringArrayOutput { return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccess) []string { return v.OtherVrfs }).(pulumi.StringArrayOutput) } @@ -7685,15 +7695,14 @@ func (o DeviceprofileGatewayNetworkVpnAccessOutput) SourceNat() DeviceprofileGat }).(DeviceprofileGatewayNetworkVpnAccessSourceNatPtrOutput) } -// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") +// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") func (o DeviceprofileGatewayNetworkVpnAccessOutput) StaticNat() DeviceprofileGatewayNetworkVpnAccessStaticNatMapOutput { return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccess) map[string]DeviceprofileGatewayNetworkVpnAccessStaticNat { return v.StaticNat }).(DeviceprofileGatewayNetworkVpnAccessStaticNatMapOutput) } -// toward overlay -// how HUB should deal with routes it received from Spokes +// toward overlay, how HUB should deal with routes it received from Spokes func (o DeviceprofileGatewayNetworkVpnAccessOutput) SummarizedSubnet() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccess) *string { return v.SummarizedSubnet }).(pulumi.StringPtrOutput) } @@ -7729,9 +7738,10 @@ func (o DeviceprofileGatewayNetworkVpnAccessMapOutput) MapIndex(k pulumi.StringI } type DeviceprofileGatewayNetworkVpnAccessDestinationNat struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp *string `pulumi:"internalIp"` Name *string `pulumi:"name"` - Port *int `pulumi:"port"` + Port *string `pulumi:"port"` } // DeviceprofileGatewayNetworkVpnAccessDestinationNatInput is an input type that accepts DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs and DeviceprofileGatewayNetworkVpnAccessDestinationNatOutput values. @@ -7746,9 +7756,10 @@ type DeviceprofileGatewayNetworkVpnAccessDestinationNatInput interface { } type DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` Name pulumi.StringPtrInput `pulumi:"name"` - Port pulumi.IntPtrInput `pulumi:"port"` + Port pulumi.StringPtrInput `pulumi:"port"` } func (DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs) ElementType() reflect.Type { @@ -7802,6 +7813,7 @@ func (o DeviceprofileGatewayNetworkVpnAccessDestinationNatOutput) ToDeviceprofil return o } +// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") func (o DeviceprofileGatewayNetworkVpnAccessDestinationNatOutput) InternalIp() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccessDestinationNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) } @@ -7810,8 +7822,8 @@ func (o DeviceprofileGatewayNetworkVpnAccessDestinationNatOutput) Name() pulumi. return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccessDestinationNat) *string { return v.Name }).(pulumi.StringPtrOutput) } -func (o DeviceprofileGatewayNetworkVpnAccessDestinationNatOutput) Port() pulumi.IntPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccessDestinationNat) *int { return v.Port }).(pulumi.IntPtrOutput) +func (o DeviceprofileGatewayNetworkVpnAccessDestinationNatOutput) Port() pulumi.StringPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccessDestinationNat) *string { return v.Port }).(pulumi.StringPtrOutput) } type DeviceprofileGatewayNetworkVpnAccessDestinationNatMapOutput struct{ *pulumi.OutputState } @@ -7968,10 +7980,9 @@ func (o DeviceprofileGatewayNetworkVpnAccessSourceNatPtrOutput) ExternalIp() pul } type DeviceprofileGatewayNetworkVpnAccessStaticNat struct { - InternalIp *string `pulumi:"internalIp"` - Name *string `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity - WanName *string `pulumi:"wanName"` + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp string `pulumi:"internalIp"` + Name string `pulumi:"name"` } // DeviceprofileGatewayNetworkVpnAccessStaticNatInput is an input type that accepts DeviceprofileGatewayNetworkVpnAccessStaticNatArgs and DeviceprofileGatewayNetworkVpnAccessStaticNatOutput values. @@ -7986,10 +7997,9 @@ type DeviceprofileGatewayNetworkVpnAccessStaticNatInput interface { } type DeviceprofileGatewayNetworkVpnAccessStaticNatArgs struct { - InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` - Name pulumi.StringPtrInput `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity - WanName pulumi.StringPtrInput `pulumi:"wanName"` + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp pulumi.StringInput `pulumi:"internalIp"` + Name pulumi.StringInput `pulumi:"name"` } func (DeviceprofileGatewayNetworkVpnAccessStaticNatArgs) ElementType() reflect.Type { @@ -8043,17 +8053,13 @@ func (o DeviceprofileGatewayNetworkVpnAccessStaticNatOutput) ToDeviceprofileGate return o } -func (o DeviceprofileGatewayNetworkVpnAccessStaticNatOutput) InternalIp() pulumi.StringPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccessStaticNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) +// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") +func (o DeviceprofileGatewayNetworkVpnAccessStaticNatOutput) InternalIp() pulumi.StringOutput { + return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccessStaticNat) string { return v.InternalIp }).(pulumi.StringOutput) } -func (o DeviceprofileGatewayNetworkVpnAccessStaticNatOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccessStaticNat) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -// If not set, we configure the nat policies against all WAN ports for simplicity -func (o DeviceprofileGatewayNetworkVpnAccessStaticNatOutput) WanName() pulumi.StringPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccessStaticNat) *string { return v.WanName }).(pulumi.StringPtrOutput) +func (o DeviceprofileGatewayNetworkVpnAccessStaticNatOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v DeviceprofileGatewayNetworkVpnAccessStaticNat) string { return v.Name }).(pulumi.StringOutput) } type DeviceprofileGatewayNetworkVpnAccessStaticNatMapOutput struct{ *pulumi.OutputState } @@ -8865,24 +8871,21 @@ type DeviceprofileGatewayPortConfig struct { AeDisableLacp *bool `pulumi:"aeDisableLacp"` // if `aggregated`==`true`. Users could force to use the designated AE name (must be an integer between 0 and 127) AeIdx *string `pulumi:"aeIdx"` - // For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - // Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - // Note: Turning this on will enable force-up on one of the interfaces in the bundle only + // For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only AeLacpForceUp *bool `pulumi:"aeLacpForceUp"` Aggregated *bool `pulumi:"aggregated"` // if want to generate port up/down alarm, set it to true - Critical *bool `pulumi:"critical"` + Critical *bool `pulumi:"critical"` + // Interface Description. Can be a variable (i.e. "{{myvar}}") Description *string `pulumi:"description"` DisableAutoneg *bool `pulumi:"disableAutoneg"` // port admin up (true) / down (false) Disabled *bool `pulumi:"disabled"` // if `wanType`==`dsl`. enum: `adsl`, `vdsl` DslType *string `pulumi:"dslType"` - // if `wanType`==`dsl` - // 16 bit int + // if `wanType`==`dsl`, 16 bit int DslVci *int `pulumi:"dslVci"` - // if `wanType`==`dsl` - // 8 bit int + // if `wanType`==`dsl`, 8 bit int DslVpi *int `pulumi:"dslVpi"` // enum: `auto`, `full`, `half` Duplex *string `pulumi:"duplex"` @@ -8900,12 +8903,12 @@ type DeviceprofileGatewayPortConfig struct { Mtu *int `pulumi:"mtu"` // name that we'll use to derive config Name *string `pulumi:"name"` - // if `usage`==`lan` + // if `usage`==`lan`, name of the `org.Network` resource Networks []string `pulumi:"networks"` // for Q-in-Q OuterVlanId *int `pulumi:"outerVlanId"` PoeDisabled *bool `pulumi:"poeDisabled"` - // if `usage`==`lan` + // Only for SRX and if `usage`==`lan`, the Untagged VLAN Network PortNetwork *string `pulumi:"portNetwork"` // whether to preserve dscp when sending traffic over VPN (SSR-only) PreserveDscp *bool `pulumi:"preserveDscp"` @@ -8924,22 +8927,23 @@ type DeviceprofileGatewayPortConfig struct { SvrPortRange *string `pulumi:"svrPortRange"` TrafficShaping *DeviceprofileGatewayPortConfigTrafficShaping `pulumi:"trafficShaping"` // port usage name. enum: `haControl`, `haData`, `lan`, `wan` - Usage string `pulumi:"usage"` - // if WAN interface is on a VLAN - VlanId *int `pulumi:"vlanId"` + Usage string `pulumi:"usage"` + VlanId *string `pulumi:"vlanId"` // Property key is the VPN name VpnPaths map[string]DeviceprofileGatewayPortConfigVpnPaths `pulumi:"vpnPaths"` - // when `wanType`==`broadband`. enum: `default`, `max`, `recommended` + // Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` WanArpPolicer *string `pulumi:"wanArpPolicer"` - // optional, if spoke should reach this port by a different IP + // Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP WanExtIp *string `pulumi:"wanExtIp"` - // Property Key is the destianation CIDR (e.g "100.100.100.0/24") + // Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") WanExtraRoutes map[string]DeviceprofileGatewayPortConfigWanExtraRoutes `pulumi:"wanExtraRoutes"` - // if `usage`==`wan` + // Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + WanNetworks []string `pulumi:"wanNetworks"` + // Only if `usage`==`wan` WanProbeOverride *DeviceprofileGatewayPortConfigWanProbeOverride `pulumi:"wanProbeOverride"` - // optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + // Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip WanSourceNat *DeviceprofileGatewayPortConfigWanSourceNat `pulumi:"wanSourceNat"` - // if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + // Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` WanType *string `pulumi:"wanType"` } @@ -8959,24 +8963,21 @@ type DeviceprofileGatewayPortConfigArgs struct { AeDisableLacp pulumi.BoolPtrInput `pulumi:"aeDisableLacp"` // if `aggregated`==`true`. Users could force to use the designated AE name (must be an integer between 0 and 127) AeIdx pulumi.StringPtrInput `pulumi:"aeIdx"` - // For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - // Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - // Note: Turning this on will enable force-up on one of the interfaces in the bundle only + // For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only AeLacpForceUp pulumi.BoolPtrInput `pulumi:"aeLacpForceUp"` Aggregated pulumi.BoolPtrInput `pulumi:"aggregated"` // if want to generate port up/down alarm, set it to true - Critical pulumi.BoolPtrInput `pulumi:"critical"` + Critical pulumi.BoolPtrInput `pulumi:"critical"` + // Interface Description. Can be a variable (i.e. "{{myvar}}") Description pulumi.StringPtrInput `pulumi:"description"` DisableAutoneg pulumi.BoolPtrInput `pulumi:"disableAutoneg"` // port admin up (true) / down (false) Disabled pulumi.BoolPtrInput `pulumi:"disabled"` // if `wanType`==`dsl`. enum: `adsl`, `vdsl` DslType pulumi.StringPtrInput `pulumi:"dslType"` - // if `wanType`==`dsl` - // 16 bit int + // if `wanType`==`dsl`, 16 bit int DslVci pulumi.IntPtrInput `pulumi:"dslVci"` - // if `wanType`==`dsl` - // 8 bit int + // if `wanType`==`dsl`, 8 bit int DslVpi pulumi.IntPtrInput `pulumi:"dslVpi"` // enum: `auto`, `full`, `half` Duplex pulumi.StringPtrInput `pulumi:"duplex"` @@ -8994,12 +8995,12 @@ type DeviceprofileGatewayPortConfigArgs struct { Mtu pulumi.IntPtrInput `pulumi:"mtu"` // name that we'll use to derive config Name pulumi.StringPtrInput `pulumi:"name"` - // if `usage`==`lan` + // if `usage`==`lan`, name of the `org.Network` resource Networks pulumi.StringArrayInput `pulumi:"networks"` // for Q-in-Q OuterVlanId pulumi.IntPtrInput `pulumi:"outerVlanId"` PoeDisabled pulumi.BoolPtrInput `pulumi:"poeDisabled"` - // if `usage`==`lan` + // Only for SRX and if `usage`==`lan`, the Untagged VLAN Network PortNetwork pulumi.StringPtrInput `pulumi:"portNetwork"` // whether to preserve dscp when sending traffic over VPN (SSR-only) PreserveDscp pulumi.BoolPtrInput `pulumi:"preserveDscp"` @@ -9018,22 +9019,23 @@ type DeviceprofileGatewayPortConfigArgs struct { SvrPortRange pulumi.StringPtrInput `pulumi:"svrPortRange"` TrafficShaping DeviceprofileGatewayPortConfigTrafficShapingPtrInput `pulumi:"trafficShaping"` // port usage name. enum: `haControl`, `haData`, `lan`, `wan` - Usage pulumi.StringInput `pulumi:"usage"` - // if WAN interface is on a VLAN - VlanId pulumi.IntPtrInput `pulumi:"vlanId"` + Usage pulumi.StringInput `pulumi:"usage"` + VlanId pulumi.StringPtrInput `pulumi:"vlanId"` // Property key is the VPN name VpnPaths DeviceprofileGatewayPortConfigVpnPathsMapInput `pulumi:"vpnPaths"` - // when `wanType`==`broadband`. enum: `default`, `max`, `recommended` + // Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` WanArpPolicer pulumi.StringPtrInput `pulumi:"wanArpPolicer"` - // optional, if spoke should reach this port by a different IP + // Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP WanExtIp pulumi.StringPtrInput `pulumi:"wanExtIp"` - // Property Key is the destianation CIDR (e.g "100.100.100.0/24") + // Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") WanExtraRoutes DeviceprofileGatewayPortConfigWanExtraRoutesMapInput `pulumi:"wanExtraRoutes"` - // if `usage`==`wan` + // Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + WanNetworks pulumi.StringArrayInput `pulumi:"wanNetworks"` + // Only if `usage`==`wan` WanProbeOverride DeviceprofileGatewayPortConfigWanProbeOverridePtrInput `pulumi:"wanProbeOverride"` - // optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + // Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip WanSourceNat DeviceprofileGatewayPortConfigWanSourceNatPtrInput `pulumi:"wanSourceNat"` - // if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + // Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` WanType pulumi.StringPtrInput `pulumi:"wanType"` } @@ -9098,9 +9100,7 @@ func (o DeviceprofileGatewayPortConfigOutput) AeIdx() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *string { return v.AeIdx }).(pulumi.StringPtrOutput) } -// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n -// Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n -// Note: Turning this on will enable force-up on one of the interfaces in the bundle only +// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only func (o DeviceprofileGatewayPortConfigOutput) AeLacpForceUp() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *bool { return v.AeLacpForceUp }).(pulumi.BoolPtrOutput) } @@ -9114,6 +9114,7 @@ func (o DeviceprofileGatewayPortConfigOutput) Critical() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *bool { return v.Critical }).(pulumi.BoolPtrOutput) } +// Interface Description. Can be a variable (i.e. "{{myvar}}") func (o DeviceprofileGatewayPortConfigOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *string { return v.Description }).(pulumi.StringPtrOutput) } @@ -9132,14 +9133,12 @@ func (o DeviceprofileGatewayPortConfigOutput) DslType() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *string { return v.DslType }).(pulumi.StringPtrOutput) } -// if `wanType`==`dsl` -// 16 bit int +// if `wanType`==`dsl`, 16 bit int func (o DeviceprofileGatewayPortConfigOutput) DslVci() pulumi.IntPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *int { return v.DslVci }).(pulumi.IntPtrOutput) } -// if `wanType`==`dsl` -// 8 bit int +// if `wanType`==`dsl`, 8 bit int func (o DeviceprofileGatewayPortConfigOutput) DslVpi() pulumi.IntPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *int { return v.DslVpi }).(pulumi.IntPtrOutput) } @@ -9187,7 +9186,7 @@ func (o DeviceprofileGatewayPortConfigOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *string { return v.Name }).(pulumi.StringPtrOutput) } -// if `usage`==`lan` +// if `usage`==`lan`, name of the `org.Network` resource func (o DeviceprofileGatewayPortConfigOutput) Networks() pulumi.StringArrayOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) []string { return v.Networks }).(pulumi.StringArrayOutput) } @@ -9201,7 +9200,7 @@ func (o DeviceprofileGatewayPortConfigOutput) PoeDisabled() pulumi.BoolPtrOutput return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *bool { return v.PoeDisabled }).(pulumi.BoolPtrOutput) } -// if `usage`==`lan` +// Only for SRX and if `usage`==`lan`, the Untagged VLAN Network func (o DeviceprofileGatewayPortConfigOutput) PortNetwork() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *string { return v.PortNetwork }).(pulumi.StringPtrOutput) } @@ -9256,9 +9255,8 @@ func (o DeviceprofileGatewayPortConfigOutput) Usage() pulumi.StringOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) string { return v.Usage }).(pulumi.StringOutput) } -// if WAN interface is on a VLAN -func (o DeviceprofileGatewayPortConfigOutput) VlanId() pulumi.IntPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *int { return v.VlanId }).(pulumi.IntPtrOutput) +func (o DeviceprofileGatewayPortConfigOutput) VlanId() pulumi.StringPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *string { return v.VlanId }).(pulumi.StringPtrOutput) } // Property key is the VPN name @@ -9268,38 +9266,43 @@ func (o DeviceprofileGatewayPortConfigOutput) VpnPaths() DeviceprofileGatewayPor }).(DeviceprofileGatewayPortConfigVpnPathsMapOutput) } -// when `wanType`==`broadband`. enum: `default`, `max`, `recommended` +// Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` func (o DeviceprofileGatewayPortConfigOutput) WanArpPolicer() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *string { return v.WanArpPolicer }).(pulumi.StringPtrOutput) } -// optional, if spoke should reach this port by a different IP +// Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP func (o DeviceprofileGatewayPortConfigOutput) WanExtIp() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *string { return v.WanExtIp }).(pulumi.StringPtrOutput) } -// Property Key is the destianation CIDR (e.g "100.100.100.0/24") +// Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") func (o DeviceprofileGatewayPortConfigOutput) WanExtraRoutes() DeviceprofileGatewayPortConfigWanExtraRoutesMapOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) map[string]DeviceprofileGatewayPortConfigWanExtraRoutes { return v.WanExtraRoutes }).(DeviceprofileGatewayPortConfigWanExtraRoutesMapOutput) } -// if `usage`==`wan` +// Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined +func (o DeviceprofileGatewayPortConfigOutput) WanNetworks() pulumi.StringArrayOutput { + return o.ApplyT(func(v DeviceprofileGatewayPortConfig) []string { return v.WanNetworks }).(pulumi.StringArrayOutput) +} + +// Only if `usage`==`wan` func (o DeviceprofileGatewayPortConfigOutput) WanProbeOverride() DeviceprofileGatewayPortConfigWanProbeOverridePtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *DeviceprofileGatewayPortConfigWanProbeOverride { return v.WanProbeOverride }).(DeviceprofileGatewayPortConfigWanProbeOverridePtrOutput) } -// optional, by default, source-NAT is performed on all WAN Ports using the interface-ip +// Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip func (o DeviceprofileGatewayPortConfigOutput) WanSourceNat() DeviceprofileGatewayPortConfigWanSourceNatPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *DeviceprofileGatewayPortConfigWanSourceNat { return v.WanSourceNat }).(DeviceprofileGatewayPortConfigWanSourceNatPtrOutput) } -// if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` +// Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` func (o DeviceprofileGatewayPortConfigOutput) WanType() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfig) *string { return v.WanType }).(pulumi.StringPtrOutput) } @@ -9329,10 +9332,11 @@ type DeviceprofileGatewayPortConfigIpConfig struct { Dns []string `pulumi:"dns"` // except for out-of_band interface (vme/em0/fxp0) DnsSuffixes []string `pulumi:"dnsSuffixes"` - // except for out-of_band interface (vme/em0/fxp0) + // except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") Gateway *string `pulumi:"gateway"` - Ip *string `pulumi:"ip"` - // used only if `subnet` is not specified in `networks` + // Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + Ip *string `pulumi:"ip"` + // used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") Netmask *string `pulumi:"netmask"` // optional, the network to be used for mgmt Network *string `pulumi:"network"` @@ -9362,10 +9366,11 @@ type DeviceprofileGatewayPortConfigIpConfigArgs struct { Dns pulumi.StringArrayInput `pulumi:"dns"` // except for out-of_band interface (vme/em0/fxp0) DnsSuffixes pulumi.StringArrayInput `pulumi:"dnsSuffixes"` - // except for out-of_band interface (vme/em0/fxp0) + // except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") Gateway pulumi.StringPtrInput `pulumi:"gateway"` - Ip pulumi.StringPtrInput `pulumi:"ip"` - // used only if `subnet` is not specified in `networks` + // Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + Ip pulumi.StringPtrInput `pulumi:"ip"` + // used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") Netmask pulumi.StringPtrInput `pulumi:"netmask"` // optional, the network to be used for mgmt Network pulumi.StringPtrInput `pulumi:"network"` @@ -9466,16 +9471,17 @@ func (o DeviceprofileGatewayPortConfigIpConfigOutput) DnsSuffixes() pulumi.Strin return o.ApplyT(func(v DeviceprofileGatewayPortConfigIpConfig) []string { return v.DnsSuffixes }).(pulumi.StringArrayOutput) } -// except for out-of_band interface (vme/em0/fxp0) +// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") func (o DeviceprofileGatewayPortConfigIpConfigOutput) Gateway() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfigIpConfig) *string { return v.Gateway }).(pulumi.StringPtrOutput) } +// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") func (o DeviceprofileGatewayPortConfigIpConfigOutput) Ip() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfigIpConfig) *string { return v.Ip }).(pulumi.StringPtrOutput) } -// used only if `subnet` is not specified in `networks` +// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") func (o DeviceprofileGatewayPortConfigIpConfigOutput) Netmask() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfigIpConfig) *string { return v.Netmask }).(pulumi.StringPtrOutput) } @@ -9549,7 +9555,7 @@ func (o DeviceprofileGatewayPortConfigIpConfigPtrOutput) DnsSuffixes() pulumi.St }).(pulumi.StringArrayOutput) } -// except for out-of_band interface (vme/em0/fxp0) +// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") func (o DeviceprofileGatewayPortConfigIpConfigPtrOutput) Gateway() pulumi.StringPtrOutput { return o.ApplyT(func(v *DeviceprofileGatewayPortConfigIpConfig) *string { if v == nil { @@ -9559,6 +9565,7 @@ func (o DeviceprofileGatewayPortConfigIpConfigPtrOutput) Gateway() pulumi.String }).(pulumi.StringPtrOutput) } +// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") func (o DeviceprofileGatewayPortConfigIpConfigPtrOutput) Ip() pulumi.StringPtrOutput { return o.ApplyT(func(v *DeviceprofileGatewayPortConfigIpConfig) *string { if v == nil { @@ -9568,7 +9575,7 @@ func (o DeviceprofileGatewayPortConfigIpConfigPtrOutput) Ip() pulumi.StringPtrOu }).(pulumi.StringPtrOutput) } -// used only if `subnet` is not specified in `networks` +// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") func (o DeviceprofileGatewayPortConfigIpConfigPtrOutput) Netmask() pulumi.StringPtrOutput { return o.ApplyT(func(v *DeviceprofileGatewayPortConfigIpConfig) *string { if v == nil { @@ -9629,10 +9636,11 @@ func (o DeviceprofileGatewayPortConfigIpConfigPtrOutput) Type() pulumi.StringPtr } type DeviceprofileGatewayPortConfigTrafficShaping struct { - // percentages for differet class of traffic: high / medium / low / best-effort - // sum must be equal to 100 + // percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 ClassPercentages []int `pulumi:"classPercentages"` Enabled *bool `pulumi:"enabled"` + // Interface Transmit Cap in kbps + MaxTxKbps *int `pulumi:"maxTxKbps"` } // DeviceprofileGatewayPortConfigTrafficShapingInput is an input type that accepts DeviceprofileGatewayPortConfigTrafficShapingArgs and DeviceprofileGatewayPortConfigTrafficShapingOutput values. @@ -9647,10 +9655,11 @@ type DeviceprofileGatewayPortConfigTrafficShapingInput interface { } type DeviceprofileGatewayPortConfigTrafficShapingArgs struct { - // percentages for differet class of traffic: high / medium / low / best-effort - // sum must be equal to 100 + // percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 ClassPercentages pulumi.IntArrayInput `pulumi:"classPercentages"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` + // Interface Transmit Cap in kbps + MaxTxKbps pulumi.IntPtrInput `pulumi:"maxTxKbps"` } func (DeviceprofileGatewayPortConfigTrafficShapingArgs) ElementType() reflect.Type { @@ -9730,8 +9739,7 @@ func (o DeviceprofileGatewayPortConfigTrafficShapingOutput) ToDeviceprofileGatew }).(DeviceprofileGatewayPortConfigTrafficShapingPtrOutput) } -// percentages for differet class of traffic: high / medium / low / best-effort -// sum must be equal to 100 +// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 func (o DeviceprofileGatewayPortConfigTrafficShapingOutput) ClassPercentages() pulumi.IntArrayOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfigTrafficShaping) []int { return v.ClassPercentages }).(pulumi.IntArrayOutput) } @@ -9740,6 +9748,11 @@ func (o DeviceprofileGatewayPortConfigTrafficShapingOutput) Enabled() pulumi.Boo return o.ApplyT(func(v DeviceprofileGatewayPortConfigTrafficShaping) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } +// Interface Transmit Cap in kbps +func (o DeviceprofileGatewayPortConfigTrafficShapingOutput) MaxTxKbps() pulumi.IntPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayPortConfigTrafficShaping) *int { return v.MaxTxKbps }).(pulumi.IntPtrOutput) +} + type DeviceprofileGatewayPortConfigTrafficShapingPtrOutput struct{ *pulumi.OutputState } func (DeviceprofileGatewayPortConfigTrafficShapingPtrOutput) ElementType() reflect.Type { @@ -9764,8 +9777,7 @@ func (o DeviceprofileGatewayPortConfigTrafficShapingPtrOutput) Elem() Deviceprof }).(DeviceprofileGatewayPortConfigTrafficShapingOutput) } -// percentages for differet class of traffic: high / medium / low / best-effort -// sum must be equal to 100 +// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 func (o DeviceprofileGatewayPortConfigTrafficShapingPtrOutput) ClassPercentages() pulumi.IntArrayOutput { return o.ApplyT(func(v *DeviceprofileGatewayPortConfigTrafficShaping) []int { if v == nil { @@ -9784,6 +9796,16 @@ func (o DeviceprofileGatewayPortConfigTrafficShapingPtrOutput) Enabled() pulumi. }).(pulumi.BoolPtrOutput) } +// Interface Transmit Cap in kbps +func (o DeviceprofileGatewayPortConfigTrafficShapingPtrOutput) MaxTxKbps() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DeviceprofileGatewayPortConfigTrafficShaping) *int { + if v == nil { + return nil + } + return v.MaxTxKbps + }).(pulumi.IntPtrOutput) +} + type DeviceprofileGatewayPortConfigVpnPaths struct { // Only if the VPN `type`==`hubSpoke`. enum: `broadband`, `lte` BfdProfile *string `pulumi:"bfdProfile"` @@ -9926,10 +9948,11 @@ func (o DeviceprofileGatewayPortConfigVpnPathsMapOutput) MapIndex(k pulumi.Strin } type DeviceprofileGatewayPortConfigVpnPathsTrafficShaping struct { - // percentages for differet class of traffic: high / medium / low / best-effort - // sum must be equal to 100 + // percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 ClassPercentages []int `pulumi:"classPercentages"` Enabled *bool `pulumi:"enabled"` + // Interface Transmit Cap in kbps + MaxTxKbps *int `pulumi:"maxTxKbps"` } // DeviceprofileGatewayPortConfigVpnPathsTrafficShapingInput is an input type that accepts DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs and DeviceprofileGatewayPortConfigVpnPathsTrafficShapingOutput values. @@ -9944,10 +9967,11 @@ type DeviceprofileGatewayPortConfigVpnPathsTrafficShapingInput interface { } type DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs struct { - // percentages for differet class of traffic: high / medium / low / best-effort - // sum must be equal to 100 + // percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 ClassPercentages pulumi.IntArrayInput `pulumi:"classPercentages"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` + // Interface Transmit Cap in kbps + MaxTxKbps pulumi.IntPtrInput `pulumi:"maxTxKbps"` } func (DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs) ElementType() reflect.Type { @@ -10027,8 +10051,7 @@ func (o DeviceprofileGatewayPortConfigVpnPathsTrafficShapingOutput) ToDeviceprof }).(DeviceprofileGatewayPortConfigVpnPathsTrafficShapingPtrOutput) } -// percentages for differet class of traffic: high / medium / low / best-effort -// sum must be equal to 100 +// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 func (o DeviceprofileGatewayPortConfigVpnPathsTrafficShapingOutput) ClassPercentages() pulumi.IntArrayOutput { return o.ApplyT(func(v DeviceprofileGatewayPortConfigVpnPathsTrafficShaping) []int { return v.ClassPercentages }).(pulumi.IntArrayOutput) } @@ -10037,6 +10060,11 @@ func (o DeviceprofileGatewayPortConfigVpnPathsTrafficShapingOutput) Enabled() pu return o.ApplyT(func(v DeviceprofileGatewayPortConfigVpnPathsTrafficShaping) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } +// Interface Transmit Cap in kbps +func (o DeviceprofileGatewayPortConfigVpnPathsTrafficShapingOutput) MaxTxKbps() pulumi.IntPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayPortConfigVpnPathsTrafficShaping) *int { return v.MaxTxKbps }).(pulumi.IntPtrOutput) +} + type DeviceprofileGatewayPortConfigVpnPathsTrafficShapingPtrOutput struct{ *pulumi.OutputState } func (DeviceprofileGatewayPortConfigVpnPathsTrafficShapingPtrOutput) ElementType() reflect.Type { @@ -10061,8 +10089,7 @@ func (o DeviceprofileGatewayPortConfigVpnPathsTrafficShapingPtrOutput) Elem() De }).(DeviceprofileGatewayPortConfigVpnPathsTrafficShapingOutput) } -// percentages for differet class of traffic: high / medium / low / best-effort -// sum must be equal to 100 +// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 func (o DeviceprofileGatewayPortConfigVpnPathsTrafficShapingPtrOutput) ClassPercentages() pulumi.IntArrayOutput { return o.ApplyT(func(v *DeviceprofileGatewayPortConfigVpnPathsTrafficShaping) []int { if v == nil { @@ -10081,6 +10108,16 @@ func (o DeviceprofileGatewayPortConfigVpnPathsTrafficShapingPtrOutput) Enabled() }).(pulumi.BoolPtrOutput) } +// Interface Transmit Cap in kbps +func (o DeviceprofileGatewayPortConfigVpnPathsTrafficShapingPtrOutput) MaxTxKbps() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DeviceprofileGatewayPortConfigVpnPathsTrafficShaping) *int { + if v == nil { + return nil + } + return v.MaxTxKbps + }).(pulumi.IntPtrOutput) +} + type DeviceprofileGatewayPortConfigWanExtraRoutes struct { Via *string `pulumi:"via"` } @@ -10695,6 +10732,8 @@ type DeviceprofileGatewayRoutingPoliciesTermAction struct { AddCommunities []string `pulumi:"addCommunities"` // for SSR, hub decides how VRF routes are leaked on spoke AddTargetVrfs []string `pulumi:"addTargetVrfs"` + // route aggregation + Aggregates []string `pulumi:"aggregates"` // when used as export policy, optional Communities []string `pulumi:"communities"` // when used as export policy, optional. To exclude certain AS @@ -10724,6 +10763,8 @@ type DeviceprofileGatewayRoutingPoliciesTermActionArgs struct { AddCommunities pulumi.StringArrayInput `pulumi:"addCommunities"` // for SSR, hub decides how VRF routes are leaked on spoke AddTargetVrfs pulumi.StringArrayInput `pulumi:"addTargetVrfs"` + // route aggregation + Aggregates pulumi.StringArrayInput `pulumi:"aggregates"` // when used as export policy, optional Communities pulumi.StringArrayInput `pulumi:"communities"` // when used as export policy, optional. To exclude certain AS @@ -10827,6 +10868,11 @@ func (o DeviceprofileGatewayRoutingPoliciesTermActionOutput) AddTargetVrfs() pul return o.ApplyT(func(v DeviceprofileGatewayRoutingPoliciesTermAction) []string { return v.AddTargetVrfs }).(pulumi.StringArrayOutput) } +// route aggregation +func (o DeviceprofileGatewayRoutingPoliciesTermActionOutput) Aggregates() pulumi.StringArrayOutput { + return o.ApplyT(func(v DeviceprofileGatewayRoutingPoliciesTermAction) []string { return v.Aggregates }).(pulumi.StringArrayOutput) +} + // when used as export policy, optional func (o DeviceprofileGatewayRoutingPoliciesTermActionOutput) Communities() pulumi.StringArrayOutput { return o.ApplyT(func(v DeviceprofileGatewayRoutingPoliciesTermAction) []string { return v.Communities }).(pulumi.StringArrayOutput) @@ -10908,6 +10954,16 @@ func (o DeviceprofileGatewayRoutingPoliciesTermActionPtrOutput) AddTargetVrfs() }).(pulumi.StringArrayOutput) } +// route aggregation +func (o DeviceprofileGatewayRoutingPoliciesTermActionPtrOutput) Aggregates() pulumi.StringArrayOutput { + return o.ApplyT(func(v *DeviceprofileGatewayRoutingPoliciesTermAction) []string { + if v == nil { + return nil + } + return v.Aggregates + }).(pulumi.StringArrayOutput) +} + // when used as export policy, optional func (o DeviceprofileGatewayRoutingPoliciesTermActionPtrOutput) Communities() pulumi.StringArrayOutput { return o.ApplyT(func(v *DeviceprofileGatewayRoutingPoliciesTermAction) []string { @@ -10980,8 +11036,7 @@ type DeviceprofileGatewayRoutingPoliciesTermMatching struct { // overlay-facing criteria (used for bgpConfig where via=vpn) VpnNeighborMacs []string `pulumi:"vpnNeighborMacs"` VpnPathSla *DeviceprofileGatewayRoutingPoliciesTermMatchingVpnPathSla `pulumi:"vpnPathSla"` - // overlay-facing criteria (used for bgpConfig where via=vpn) - // ordered- + // overlay-facing criteria (used for bgpConfig where via=vpn). ordered- VpnPaths []string `pulumi:"vpnPaths"` } @@ -11009,8 +11064,7 @@ type DeviceprofileGatewayRoutingPoliciesTermMatchingArgs struct { // overlay-facing criteria (used for bgpConfig where via=vpn) VpnNeighborMacs pulumi.StringArrayInput `pulumi:"vpnNeighborMacs"` VpnPathSla DeviceprofileGatewayRoutingPoliciesTermMatchingVpnPathSlaPtrInput `pulumi:"vpnPathSla"` - // overlay-facing criteria (used for bgpConfig where via=vpn) - // ordered- + // overlay-facing criteria (used for bgpConfig where via=vpn). ordered- VpnPaths pulumi.StringArrayInput `pulumi:"vpnPaths"` } @@ -11131,8 +11185,7 @@ func (o DeviceprofileGatewayRoutingPoliciesTermMatchingOutput) VpnPathSla() Devi }).(DeviceprofileGatewayRoutingPoliciesTermMatchingVpnPathSlaPtrOutput) } -// overlay-facing criteria (used for bgpConfig where via=vpn) -// ordered- +// overlay-facing criteria (used for bgpConfig where via=vpn). ordered- func (o DeviceprofileGatewayRoutingPoliciesTermMatchingOutput) VpnPaths() pulumi.StringArrayOutput { return o.ApplyT(func(v DeviceprofileGatewayRoutingPoliciesTermMatching) []string { return v.VpnPaths }).(pulumi.StringArrayOutput) } @@ -11237,8 +11290,7 @@ func (o DeviceprofileGatewayRoutingPoliciesTermMatchingPtrOutput) VpnPathSla() D }).(DeviceprofileGatewayRoutingPoliciesTermMatchingVpnPathSlaPtrOutput) } -// overlay-facing criteria (used for bgpConfig where via=vpn) -// ordered- +// overlay-facing criteria (used for bgpConfig where via=vpn). ordered- func (o DeviceprofileGatewayRoutingPoliciesTermMatchingPtrOutput) VpnPaths() pulumi.StringArrayOutput { return o.ApplyT(func(v *DeviceprofileGatewayRoutingPoliciesTermMatching) []string { if v == nil { @@ -11250,8 +11302,7 @@ func (o DeviceprofileGatewayRoutingPoliciesTermMatchingPtrOutput) VpnPaths() pul type DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists struct { Route *string `pulumi:"route"` - // name of the vrf instance - // it can also be the name of the VPN or wan if they + // name of the vrf instance, it can also be the name of the VPN or wan if they VrfName *string `pulumi:"vrfName"` } @@ -11268,8 +11319,7 @@ type DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsInput interface { type DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsArgs struct { Route pulumi.StringPtrInput `pulumi:"route"` - // name of the vrf instance - // it can also be the name of the VPN or wan if they + // name of the vrf instance, it can also be the name of the VPN or wan if they VrfName pulumi.StringPtrInput `pulumi:"vrfName"` } @@ -11354,8 +11404,7 @@ func (o DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsOutput) Route( return o.ApplyT(func(v DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists) *string { return v.Route }).(pulumi.StringPtrOutput) } -// name of the vrf instance -// it can also be the name of the VPN or wan if they +// name of the vrf instance, it can also be the name of the VPN or wan if they func (o DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsOutput) VrfName() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists) *string { return v.VrfName }).(pulumi.StringPtrOutput) } @@ -11393,8 +11442,7 @@ func (o DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsPtrOutput) Rou }).(pulumi.StringPtrOutput) } -// name of the vrf instance -// it can also be the name of the VPN or wan if they +// name of the vrf instance, it can also be the name of the VPN or wan if they func (o DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsPtrOutput) VrfName() pulumi.StringPtrOutput { return o.ApplyT(func(v *DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists) *string { if v == nil { @@ -11578,8 +11626,7 @@ type DeviceprofileGatewayServicePolicy struct { LocalRouting *bool `pulumi:"localRouting"` // Required when `servicepolicyId` is not defined, optional otherwise (override the servicepolicy name) Name *string `pulumi:"name"` - // by default, we derive all paths available and use them - // optionally, you can customize by using `pathPreference` + // by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` PathPreference *string `pulumi:"pathPreference"` // used to link servicepolicy defined at org level and overwrite some attributes ServicepolicyId *string `pulumi:"servicepolicyId"` @@ -11611,8 +11658,7 @@ type DeviceprofileGatewayServicePolicyArgs struct { LocalRouting pulumi.BoolPtrInput `pulumi:"localRouting"` // Required when `servicepolicyId` is not defined, optional otherwise (override the servicepolicy name) Name pulumi.StringPtrInput `pulumi:"name"` - // by default, we derive all paths available and use them - // optionally, you can customize by using `pathPreference` + // by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` PathPreference pulumi.StringPtrInput `pulumi:"pathPreference"` // used to link servicepolicy defined at org level and overwrite some attributes ServicepolicyId pulumi.StringPtrInput `pulumi:"servicepolicyId"` @@ -11701,8 +11747,7 @@ func (o DeviceprofileGatewayServicePolicyOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayServicePolicy) *string { return v.Name }).(pulumi.StringPtrOutput) } -// by default, we derive all paths available and use them -// optionally, you can customize by using `pathPreference` +// by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` func (o DeviceprofileGatewayServicePolicyOutput) PathPreference() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayServicePolicy) *string { return v.PathPreference }).(pulumi.StringPtrOutput) } @@ -12178,39 +12223,35 @@ func (o DeviceprofileGatewayServicePolicyIdpPtrOutput) Profile() pulumi.StringPt type DeviceprofileGatewayTunnelConfigs struct { AutoProvision *DeviceprofileGatewayTunnelConfigsAutoProvision `pulumi:"autoProvision"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 IkeLifetime *int `pulumi:"ikeLifetime"` - // Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + // Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` IkeMode *string `pulumi:"ikeMode"` - // if `provider`== `custom-ipsec` + // if `provider`==`custom-ipsec` IkeProposals []DeviceprofileGatewayTunnelConfigsIkeProposal `pulumi:"ikeProposals"` - // if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 IpsecLifetime *int `pulumi:"ipsecLifetime"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec` IpsecProposals []DeviceprofileGatewayTunnelConfigsIpsecProposal `pulumi:"ipsecProposals"` - // Only if: - // * `provider`== `zscaler-ipsec` - // * `provider`==`jse-ipsec` - // * `provider`== `custom-ipsec` + // Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` LocalId *string `pulumi:"localId"` - // enum: `active-active`, `active-standby` + // Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` Mode *string `pulumi:"mode"` - // networks reachable via this tunnel - Networks []string `pulumi:"networks"` - Primary *DeviceprofileGatewayTunnelConfigsPrimary `pulumi:"primary"` - // Only if `provider`== `custom-ipsec` + // if `provider`==`custom-ipsec`, networks reachable via this tunnel + Networks []string `pulumi:"networks"` + // Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + Primary *DeviceprofileGatewayTunnelConfigsPrimary `pulumi:"primary"` + // Only if `provider`==`custom-ipsec` Probe *DeviceprofileGatewayTunnelConfigsProbe `pulumi:"probe"` - // Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + // Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` Protocol *string `pulumi:"protocol"` - // enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + // Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` Provider *string `pulumi:"provider"` - // Only if: - // * `provider`== `zscaler-ipsec` - // * `provider`==`jse-ipsec` - // * `provider`== `custom-ipsec` - Psk *string `pulumi:"psk"` + // Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + Psk *string `pulumi:"psk"` + // Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` Secondary *DeviceprofileGatewayTunnelConfigsSecondary `pulumi:"secondary"` - // Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + // Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` Version *string `pulumi:"version"` } @@ -12227,39 +12268,35 @@ type DeviceprofileGatewayTunnelConfigsInput interface { type DeviceprofileGatewayTunnelConfigsArgs struct { AutoProvision DeviceprofileGatewayTunnelConfigsAutoProvisionPtrInput `pulumi:"autoProvision"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 IkeLifetime pulumi.IntPtrInput `pulumi:"ikeLifetime"` - // Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + // Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` IkeMode pulumi.StringPtrInput `pulumi:"ikeMode"` - // if `provider`== `custom-ipsec` + // if `provider`==`custom-ipsec` IkeProposals DeviceprofileGatewayTunnelConfigsIkeProposalArrayInput `pulumi:"ikeProposals"` - // if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 IpsecLifetime pulumi.IntPtrInput `pulumi:"ipsecLifetime"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec` IpsecProposals DeviceprofileGatewayTunnelConfigsIpsecProposalArrayInput `pulumi:"ipsecProposals"` - // Only if: - // * `provider`== `zscaler-ipsec` - // * `provider`==`jse-ipsec` - // * `provider`== `custom-ipsec` + // Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` LocalId pulumi.StringPtrInput `pulumi:"localId"` - // enum: `active-active`, `active-standby` + // Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` Mode pulumi.StringPtrInput `pulumi:"mode"` - // networks reachable via this tunnel - Networks pulumi.StringArrayInput `pulumi:"networks"` - Primary DeviceprofileGatewayTunnelConfigsPrimaryPtrInput `pulumi:"primary"` - // Only if `provider`== `custom-ipsec` + // if `provider`==`custom-ipsec`, networks reachable via this tunnel + Networks pulumi.StringArrayInput `pulumi:"networks"` + // Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + Primary DeviceprofileGatewayTunnelConfigsPrimaryPtrInput `pulumi:"primary"` + // Only if `provider`==`custom-ipsec` Probe DeviceprofileGatewayTunnelConfigsProbePtrInput `pulumi:"probe"` - // Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + // Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` Protocol pulumi.StringPtrInput `pulumi:"protocol"` - // enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + // Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` Provider pulumi.StringPtrInput `pulumi:"provider"` - // Only if: - // * `provider`== `zscaler-ipsec` - // * `provider`==`jse-ipsec` - // * `provider`== `custom-ipsec` - Psk pulumi.StringPtrInput `pulumi:"psk"` + // Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + Psk pulumi.StringPtrInput `pulumi:"psk"` + // Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` Secondary DeviceprofileGatewayTunnelConfigsSecondaryPtrInput `pulumi:"secondary"` - // Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + // Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` Version pulumi.StringPtrInput `pulumi:"version"` } @@ -12320,87 +12357,83 @@ func (o DeviceprofileGatewayTunnelConfigsOutput) AutoProvision() DeviceprofileGa }).(DeviceprofileGatewayTunnelConfigsAutoProvisionPtrOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 func (o DeviceprofileGatewayTunnelConfigsOutput) IkeLifetime() pulumi.IntPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) *int { return v.IkeLifetime }).(pulumi.IntPtrOutput) } -// Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` +// Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` func (o DeviceprofileGatewayTunnelConfigsOutput) IkeMode() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) *string { return v.IkeMode }).(pulumi.StringPtrOutput) } -// if `provider`== `custom-ipsec` +// if `provider`==`custom-ipsec` func (o DeviceprofileGatewayTunnelConfigsOutput) IkeProposals() DeviceprofileGatewayTunnelConfigsIkeProposalArrayOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) []DeviceprofileGatewayTunnelConfigsIkeProposal { return v.IkeProposals }).(DeviceprofileGatewayTunnelConfigsIkeProposalArrayOutput) } -// if `provider`== `custom-ipsec` +// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 func (o DeviceprofileGatewayTunnelConfigsOutput) IpsecLifetime() pulumi.IntPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) *int { return v.IpsecLifetime }).(pulumi.IntPtrOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`custom-ipsec` func (o DeviceprofileGatewayTunnelConfigsOutput) IpsecProposals() DeviceprofileGatewayTunnelConfigsIpsecProposalArrayOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) []DeviceprofileGatewayTunnelConfigsIpsecProposal { return v.IpsecProposals }).(DeviceprofileGatewayTunnelConfigsIpsecProposalArrayOutput) } -// Only if: -// - `provider`== `zscaler-ipsec` -// - `provider`==`jse-ipsec` -// - `provider`== `custom-ipsec` +// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o DeviceprofileGatewayTunnelConfigsOutput) LocalId() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) *string { return v.LocalId }).(pulumi.StringPtrOutput) } -// enum: `active-active`, `active-standby` +// Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` func (o DeviceprofileGatewayTunnelConfigsOutput) Mode() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) *string { return v.Mode }).(pulumi.StringPtrOutput) } -// networks reachable via this tunnel +// if `provider`==`custom-ipsec`, networks reachable via this tunnel func (o DeviceprofileGatewayTunnelConfigsOutput) Networks() pulumi.StringArrayOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) []string { return v.Networks }).(pulumi.StringArrayOutput) } +// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o DeviceprofileGatewayTunnelConfigsOutput) Primary() DeviceprofileGatewayTunnelConfigsPrimaryPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) *DeviceprofileGatewayTunnelConfigsPrimary { return v.Primary }).(DeviceprofileGatewayTunnelConfigsPrimaryPtrOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`custom-ipsec` func (o DeviceprofileGatewayTunnelConfigsOutput) Probe() DeviceprofileGatewayTunnelConfigsProbePtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) *DeviceprofileGatewayTunnelConfigsProbe { return v.Probe }).(DeviceprofileGatewayTunnelConfigsProbePtrOutput) } -// Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` +// Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` func (o DeviceprofileGatewayTunnelConfigsOutput) Protocol() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) *string { return v.Protocol }).(pulumi.StringPtrOutput) } -// enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` +// Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` func (o DeviceprofileGatewayTunnelConfigsOutput) Provider() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) *string { return v.Provider }).(pulumi.StringPtrOutput) } -// Only if: -// - `provider`== `zscaler-ipsec` -// - `provider`==`jse-ipsec` -// - `provider`== `custom-ipsec` +// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o DeviceprofileGatewayTunnelConfigsOutput) Psk() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) *string { return v.Psk }).(pulumi.StringPtrOutput) } +// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o DeviceprofileGatewayTunnelConfigsOutput) Secondary() DeviceprofileGatewayTunnelConfigsSecondaryPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) *DeviceprofileGatewayTunnelConfigsSecondary { return v.Secondary }).(DeviceprofileGatewayTunnelConfigsSecondaryPtrOutput) } -// Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` +// Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` func (o DeviceprofileGatewayTunnelConfigsOutput) Version() pulumi.StringPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigs) *string { return v.Version }).(pulumi.StringPtrOutput) } @@ -12426,9 +12459,14 @@ func (o DeviceprofileGatewayTunnelConfigsMapOutput) MapIndex(k pulumi.StringInpu } type DeviceprofileGatewayTunnelConfigsAutoProvision struct { - Enable *bool `pulumi:"enable"` - Latlng *DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng `pulumi:"latlng"` - Primary *DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary `pulumi:"primary"` + Enable *bool `pulumi:"enable"` + // API override for POP selection + Latlng *DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng `pulumi:"latlng"` + Primary *DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary `pulumi:"primary"` + // enum: `jse-ipsec`, `zscaler-ipsec` + Provider string `pulumi:"provider"` + // API override for POP selection + Region *string `pulumi:"region"` Secondary *DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary `pulumi:"secondary"` } @@ -12444,9 +12482,14 @@ type DeviceprofileGatewayTunnelConfigsAutoProvisionInput interface { } type DeviceprofileGatewayTunnelConfigsAutoProvisionArgs struct { - Enable pulumi.BoolPtrInput `pulumi:"enable"` - Latlng DeviceprofileGatewayTunnelConfigsAutoProvisionLatlngPtrInput `pulumi:"latlng"` - Primary DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryPtrInput `pulumi:"primary"` + Enable pulumi.BoolPtrInput `pulumi:"enable"` + // API override for POP selection + Latlng DeviceprofileGatewayTunnelConfigsAutoProvisionLatlngPtrInput `pulumi:"latlng"` + Primary DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryPtrInput `pulumi:"primary"` + // enum: `jse-ipsec`, `zscaler-ipsec` + Provider pulumi.StringInput `pulumi:"provider"` + // API override for POP selection + Region pulumi.StringPtrInput `pulumi:"region"` Secondary DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryPtrInput `pulumi:"secondary"` } @@ -12531,6 +12574,7 @@ func (o DeviceprofileGatewayTunnelConfigsAutoProvisionOutput) Enable() pulumi.Bo return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsAutoProvision) *bool { return v.Enable }).(pulumi.BoolPtrOutput) } +// API override for POP selection func (o DeviceprofileGatewayTunnelConfigsAutoProvisionOutput) Latlng() DeviceprofileGatewayTunnelConfigsAutoProvisionLatlngPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsAutoProvision) *DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng { return v.Latlng @@ -12543,6 +12587,16 @@ func (o DeviceprofileGatewayTunnelConfigsAutoProvisionOutput) Primary() Devicepr }).(DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryPtrOutput) } +// enum: `jse-ipsec`, `zscaler-ipsec` +func (o DeviceprofileGatewayTunnelConfigsAutoProvisionOutput) Provider() pulumi.StringOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsAutoProvision) string { return v.Provider }).(pulumi.StringOutput) +} + +// API override for POP selection +func (o DeviceprofileGatewayTunnelConfigsAutoProvisionOutput) Region() pulumi.StringPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsAutoProvision) *string { return v.Region }).(pulumi.StringPtrOutput) +} + func (o DeviceprofileGatewayTunnelConfigsAutoProvisionOutput) Secondary() DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsAutoProvision) *DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary { return v.Secondary @@ -12582,6 +12636,7 @@ func (o DeviceprofileGatewayTunnelConfigsAutoProvisionPtrOutput) Enable() pulumi }).(pulumi.BoolPtrOutput) } +// API override for POP selection func (o DeviceprofileGatewayTunnelConfigsAutoProvisionPtrOutput) Latlng() DeviceprofileGatewayTunnelConfigsAutoProvisionLatlngPtrOutput { return o.ApplyT(func(v *DeviceprofileGatewayTunnelConfigsAutoProvision) *DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng { if v == nil { @@ -12600,6 +12655,26 @@ func (o DeviceprofileGatewayTunnelConfigsAutoProvisionPtrOutput) Primary() Devic }).(DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryPtrOutput) } +// enum: `jse-ipsec`, `zscaler-ipsec` +func (o DeviceprofileGatewayTunnelConfigsAutoProvisionPtrOutput) Provider() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DeviceprofileGatewayTunnelConfigsAutoProvision) *string { + if v == nil { + return nil + } + return &v.Provider + }).(pulumi.StringPtrOutput) +} + +// API override for POP selection +func (o DeviceprofileGatewayTunnelConfigsAutoProvisionPtrOutput) Region() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DeviceprofileGatewayTunnelConfigsAutoProvision) *string { + if v == nil { + return nil + } + return v.Region + }).(pulumi.StringPtrOutput) +} + func (o DeviceprofileGatewayTunnelConfigsAutoProvisionPtrOutput) Secondary() DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryPtrOutput { return o.ApplyT(func(v *DeviceprofileGatewayTunnelConfigsAutoProvision) *DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary { if v == nil { @@ -12758,7 +12833,7 @@ func (o DeviceprofileGatewayTunnelConfigsAutoProvisionLatlngPtrOutput) Lng() pul } type DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary struct { - NumHosts *string `pulumi:"numHosts"` + ProbeIps []string `pulumi:"probeIps"` // optional, only needed if `varsOnly`==`false` WanNames []string `pulumi:"wanNames"` } @@ -12775,7 +12850,7 @@ type DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryInput interface { } type DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs struct { - NumHosts pulumi.StringPtrInput `pulumi:"numHosts"` + ProbeIps pulumi.StringArrayInput `pulumi:"probeIps"` // optional, only needed if `varsOnly`==`false` WanNames pulumi.StringArrayInput `pulumi:"wanNames"` } @@ -12857,8 +12932,8 @@ func (o DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryOutput) ToDevicepro }).(DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryPtrOutput) } -func (o DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryOutput) NumHosts() pulumi.StringPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary) *string { return v.NumHosts }).(pulumi.StringPtrOutput) +func (o DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryOutput) ProbeIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary) []string { return v.ProbeIps }).(pulumi.StringArrayOutput) } // optional, only needed if `varsOnly`==`false` @@ -12890,13 +12965,13 @@ func (o DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryPtrOutput) Elem() D }).(DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryOutput) } -func (o DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryPtrOutput) NumHosts() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary) *string { +func (o DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryPtrOutput) ProbeIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v *DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary) []string { if v == nil { return nil } - return v.NumHosts - }).(pulumi.StringPtrOutput) + return v.ProbeIps + }).(pulumi.StringArrayOutput) } // optional, only needed if `varsOnly`==`false` @@ -12910,7 +12985,7 @@ func (o DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryPtrOutput) WanNames } type DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary struct { - NumHosts *string `pulumi:"numHosts"` + ProbeIps []string `pulumi:"probeIps"` // optional, only needed if `varsOnly`==`false` WanNames []string `pulumi:"wanNames"` } @@ -12927,7 +13002,7 @@ type DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryInput interface { } type DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs struct { - NumHosts pulumi.StringPtrInput `pulumi:"numHosts"` + ProbeIps pulumi.StringArrayInput `pulumi:"probeIps"` // optional, only needed if `varsOnly`==`false` WanNames pulumi.StringArrayInput `pulumi:"wanNames"` } @@ -13009,8 +13084,8 @@ func (o DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryOutput) ToDevicep }).(DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryPtrOutput) } -func (o DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryOutput) NumHosts() pulumi.StringPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary) *string { return v.NumHosts }).(pulumi.StringPtrOutput) +func (o DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryOutput) ProbeIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary) []string { return v.ProbeIps }).(pulumi.StringArrayOutput) } // optional, only needed if `varsOnly`==`false` @@ -13042,13 +13117,13 @@ func (o DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryPtrOutput) Elem() }).(DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryOutput) } -func (o DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryPtrOutput) NumHosts() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary) *string { +func (o DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryPtrOutput) ProbeIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v *DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary) []string { if v == nil { return nil } - return v.NumHosts - }).(pulumi.StringPtrOutput) + return v.ProbeIps + }).(pulumi.StringArrayOutput) } // optional, only needed if `varsOnly`==`false` @@ -13209,7 +13284,7 @@ func (o DeviceprofileGatewayTunnelConfigsIkeProposalArrayOutput) Index(i pulumi. type DeviceprofileGatewayTunnelConfigsIpsecProposal struct { // enum: `md5`, `sha1`, `sha2` AuthAlgo *string `pulumi:"authAlgo"` - // Only if `provider`== `custom-ipsec`. enum: + // Only if `provider`==`custom-ipsec`. enum: // * 1 // * 2 (1024-bit) // * 5 @@ -13239,7 +13314,7 @@ type DeviceprofileGatewayTunnelConfigsIpsecProposalInput interface { type DeviceprofileGatewayTunnelConfigsIpsecProposalArgs struct { // enum: `md5`, `sha1`, `sha2` AuthAlgo pulumi.StringPtrInput `pulumi:"authAlgo"` - // Only if `provider`== `custom-ipsec`. enum: + // Only if `provider`==`custom-ipsec`. enum: // * 1 // * 2 (1024-bit) // * 5 @@ -13311,7 +13386,7 @@ func (o DeviceprofileGatewayTunnelConfigsIpsecProposalOutput) AuthAlgo() pulumi. return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsIpsecProposal) *string { return v.AuthAlgo }).(pulumi.StringPtrOutput) } -// Only if `provider`== `custom-ipsec`. enum: +// Only if `provider`==`custom-ipsec`. enum: // - 1 // - 2 (1024-bit) // - 5 @@ -13353,12 +13428,10 @@ func (o DeviceprofileGatewayTunnelConfigsIpsecProposalArrayOutput) Index(i pulum type DeviceprofileGatewayTunnelConfigsPrimary struct { Hosts []string `pulumi:"hosts"` - // Only if: - // * `provider`== `zscaler-gre` - // * `provider`== `custom-gre` + // Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` InternalIps []string `pulumi:"internalIps"` ProbeIps []string `pulumi:"probeIps"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` RemoteIds []string `pulumi:"remoteIds"` WanNames []string `pulumi:"wanNames"` } @@ -13376,12 +13449,10 @@ type DeviceprofileGatewayTunnelConfigsPrimaryInput interface { type DeviceprofileGatewayTunnelConfigsPrimaryArgs struct { Hosts pulumi.StringArrayInput `pulumi:"hosts"` - // Only if: - // * `provider`== `zscaler-gre` - // * `provider`== `custom-gre` + // Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` InternalIps pulumi.StringArrayInput `pulumi:"internalIps"` ProbeIps pulumi.StringArrayInput `pulumi:"probeIps"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` RemoteIds pulumi.StringArrayInput `pulumi:"remoteIds"` WanNames pulumi.StringArrayInput `pulumi:"wanNames"` } @@ -13467,9 +13538,7 @@ func (o DeviceprofileGatewayTunnelConfigsPrimaryOutput) Hosts() pulumi.StringArr return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsPrimary) []string { return v.Hosts }).(pulumi.StringArrayOutput) } -// Only if: -// - `provider`== `zscaler-gre` -// - `provider`== `custom-gre` +// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` func (o DeviceprofileGatewayTunnelConfigsPrimaryOutput) InternalIps() pulumi.StringArrayOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsPrimary) []string { return v.InternalIps }).(pulumi.StringArrayOutput) } @@ -13478,7 +13547,7 @@ func (o DeviceprofileGatewayTunnelConfigsPrimaryOutput) ProbeIps() pulumi.String return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsPrimary) []string { return v.ProbeIps }).(pulumi.StringArrayOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o DeviceprofileGatewayTunnelConfigsPrimaryOutput) RemoteIds() pulumi.StringArrayOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsPrimary) []string { return v.RemoteIds }).(pulumi.StringArrayOutput) } @@ -13520,9 +13589,7 @@ func (o DeviceprofileGatewayTunnelConfigsPrimaryPtrOutput) Hosts() pulumi.String }).(pulumi.StringArrayOutput) } -// Only if: -// - `provider`== `zscaler-gre` -// - `provider`== `custom-gre` +// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` func (o DeviceprofileGatewayTunnelConfigsPrimaryPtrOutput) InternalIps() pulumi.StringArrayOutput { return o.ApplyT(func(v *DeviceprofileGatewayTunnelConfigsPrimary) []string { if v == nil { @@ -13541,7 +13608,7 @@ func (o DeviceprofileGatewayTunnelConfigsPrimaryPtrOutput) ProbeIps() pulumi.Str }).(pulumi.StringArrayOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o DeviceprofileGatewayTunnelConfigsPrimaryPtrOutput) RemoteIds() pulumi.StringArrayOutput { return o.ApplyT(func(v *DeviceprofileGatewayTunnelConfigsPrimary) []string { if v == nil { @@ -13756,12 +13823,10 @@ func (o DeviceprofileGatewayTunnelConfigsProbePtrOutput) Type() pulumi.StringPtr type DeviceprofileGatewayTunnelConfigsSecondary struct { Hosts []string `pulumi:"hosts"` - // Only if: - // * `provider`== `zscaler-gre` - // * `provider`== `custom-gre` + // Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` InternalIps []string `pulumi:"internalIps"` ProbeIps []string `pulumi:"probeIps"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` RemoteIds []string `pulumi:"remoteIds"` WanNames []string `pulumi:"wanNames"` } @@ -13779,12 +13844,10 @@ type DeviceprofileGatewayTunnelConfigsSecondaryInput interface { type DeviceprofileGatewayTunnelConfigsSecondaryArgs struct { Hosts pulumi.StringArrayInput `pulumi:"hosts"` - // Only if: - // * `provider`== `zscaler-gre` - // * `provider`== `custom-gre` + // Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` InternalIps pulumi.StringArrayInput `pulumi:"internalIps"` ProbeIps pulumi.StringArrayInput `pulumi:"probeIps"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` RemoteIds pulumi.StringArrayInput `pulumi:"remoteIds"` WanNames pulumi.StringArrayInput `pulumi:"wanNames"` } @@ -13870,9 +13933,7 @@ func (o DeviceprofileGatewayTunnelConfigsSecondaryOutput) Hosts() pulumi.StringA return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsSecondary) []string { return v.Hosts }).(pulumi.StringArrayOutput) } -// Only if: -// - `provider`== `zscaler-gre` -// - `provider`== `custom-gre` +// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` func (o DeviceprofileGatewayTunnelConfigsSecondaryOutput) InternalIps() pulumi.StringArrayOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsSecondary) []string { return v.InternalIps }).(pulumi.StringArrayOutput) } @@ -13881,7 +13942,7 @@ func (o DeviceprofileGatewayTunnelConfigsSecondaryOutput) ProbeIps() pulumi.Stri return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsSecondary) []string { return v.ProbeIps }).(pulumi.StringArrayOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o DeviceprofileGatewayTunnelConfigsSecondaryOutput) RemoteIds() pulumi.StringArrayOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelConfigsSecondary) []string { return v.RemoteIds }).(pulumi.StringArrayOutput) } @@ -13923,9 +13984,7 @@ func (o DeviceprofileGatewayTunnelConfigsSecondaryPtrOutput) Hosts() pulumi.Stri }).(pulumi.StringArrayOutput) } -// Only if: -// - `provider`== `zscaler-gre` -// - `provider`== `custom-gre` +// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` func (o DeviceprofileGatewayTunnelConfigsSecondaryPtrOutput) InternalIps() pulumi.StringArrayOutput { return o.ApplyT(func(v *DeviceprofileGatewayTunnelConfigsSecondary) []string { if v == nil { @@ -13944,7 +14003,7 @@ func (o DeviceprofileGatewayTunnelConfigsSecondaryPtrOutput) ProbeIps() pulumi.S }).(pulumi.StringArrayOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o DeviceprofileGatewayTunnelConfigsSecondaryPtrOutput) RemoteIds() pulumi.StringArrayOutput { return o.ApplyT(func(v *DeviceprofileGatewayTunnelConfigsSecondary) []string { if v == nil { @@ -14124,8 +14183,9 @@ func (o DeviceprofileGatewayTunnelProviderOptionsPtrOutput) Zscaler() Deviceprof } type DeviceprofileGatewayTunnelProviderOptionsJse struct { - Name *string `pulumi:"name"` - NumUsers *int `pulumi:"numUsers"` + NumUsers *int `pulumi:"numUsers"` + // JSE Organization name + OrgName *string `pulumi:"orgName"` } // DeviceprofileGatewayTunnelProviderOptionsJseInput is an input type that accepts DeviceprofileGatewayTunnelProviderOptionsJseArgs and DeviceprofileGatewayTunnelProviderOptionsJseOutput values. @@ -14140,8 +14200,9 @@ type DeviceprofileGatewayTunnelProviderOptionsJseInput interface { } type DeviceprofileGatewayTunnelProviderOptionsJseArgs struct { - Name pulumi.StringPtrInput `pulumi:"name"` - NumUsers pulumi.IntPtrInput `pulumi:"numUsers"` + NumUsers pulumi.IntPtrInput `pulumi:"numUsers"` + // JSE Organization name + OrgName pulumi.StringPtrInput `pulumi:"orgName"` } func (DeviceprofileGatewayTunnelProviderOptionsJseArgs) ElementType() reflect.Type { @@ -14221,14 +14282,15 @@ func (o DeviceprofileGatewayTunnelProviderOptionsJseOutput) ToDeviceprofileGatew }).(DeviceprofileGatewayTunnelProviderOptionsJsePtrOutput) } -func (o DeviceprofileGatewayTunnelProviderOptionsJseOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsJse) *string { return v.Name }).(pulumi.StringPtrOutput) -} - func (o DeviceprofileGatewayTunnelProviderOptionsJseOutput) NumUsers() pulumi.IntPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsJse) *int { return v.NumUsers }).(pulumi.IntPtrOutput) } +// JSE Organization name +func (o DeviceprofileGatewayTunnelProviderOptionsJseOutput) OrgName() pulumi.StringPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsJse) *string { return v.OrgName }).(pulumi.StringPtrOutput) +} + type DeviceprofileGatewayTunnelProviderOptionsJsePtrOutput struct{ *pulumi.OutputState } func (DeviceprofileGatewayTunnelProviderOptionsJsePtrOutput) ElementType() reflect.Type { @@ -14253,44 +14315,55 @@ func (o DeviceprofileGatewayTunnelProviderOptionsJsePtrOutput) Elem() Deviceprof }).(DeviceprofileGatewayTunnelProviderOptionsJseOutput) } -func (o DeviceprofileGatewayTunnelProviderOptionsJsePtrOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsJse) *string { +func (o DeviceprofileGatewayTunnelProviderOptionsJsePtrOutput) NumUsers() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsJse) *int { if v == nil { return nil } - return v.Name - }).(pulumi.StringPtrOutput) + return v.NumUsers + }).(pulumi.IntPtrOutput) } -func (o DeviceprofileGatewayTunnelProviderOptionsJsePtrOutput) NumUsers() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsJse) *int { +// JSE Organization name +func (o DeviceprofileGatewayTunnelProviderOptionsJsePtrOutput) OrgName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsJse) *string { if v == nil { return nil } - return v.NumUsers - }).(pulumi.IntPtrOutput) + return v.OrgName + }).(pulumi.StringPtrOutput) } type DeviceprofileGatewayTunnelProviderOptionsZscaler struct { - AupAcceptanceRequired *bool `pulumi:"aupAcceptanceRequired"` - // days before AUP is requested again - AupExpire *int `pulumi:"aupExpire"` + AupBlockInternetUntilAccepted *bool `pulumi:"aupBlockInternetUntilAccepted"` + // Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) + AupEnabled *bool `pulumi:"aupEnabled"` // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - AupSslProxy *bool `pulumi:"aupSslProxy"` - // the download bandwidth cap of the link, in Mbps - DownloadMbps *int `pulumi:"downloadMbps"` - // if `useXff`==`true`, display Acceptable Use Policy (AUP) - EnableAup *bool `pulumi:"enableAup"` - // when `enforceAuthentication`==`false`, display caution notification for non-authenticated users - EnableCaution *bool `pulumi:"enableCaution"` - EnforceAuthentication *bool `pulumi:"enforceAuthentication"` - Name *string `pulumi:"name"` - // if `useXff`==`true` + AupForceSslInspection *bool `pulumi:"aupForceSslInspection"` + // Required if `aupEnabled`==`true`. Days before AUP is requested again + AupTimeoutInDays *int `pulumi:"aupTimeoutInDays"` + // Enable this option to enforce user authentication + AuthRequired *bool `pulumi:"authRequired"` + // Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users + CautionEnabled *bool `pulumi:"cautionEnabled"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + DnBandwidth *float64 `pulumi:"dnBandwidth"` + // Required if `surrogate_IP`==`true`, idle Time to Disassociation + IdleTimeInMinutes *int `pulumi:"idleTimeInMinutes"` + // if `true`, enable the firewall control option + OfwEnabled *bool `pulumi:"ofwEnabled"` + // `sub-locations` can be used for specific uses cases to define different configuration based on the user network SubLocations []DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation `pulumi:"subLocations"` - // the download bandwidth cap of the link, in Mbps - UploadMbps *int `pulumi:"uploadMbps"` + // Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + SurrogateIp *bool `pulumi:"surrogateIp"` + // Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + SurrogateIpEnforcedForKnownBrowsers *bool `pulumi:"surrogateIpEnforcedForKnownBrowsers"` + // Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + SurrogateRefreshTimeInMinutes *int `pulumi:"surrogateRefreshTimeInMinutes"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + UpBandwidth *float64 `pulumi:"upBandwidth"` // location uses proxy chaining to forward traffic - UseXff *bool `pulumi:"useXff"` + XffForwardEnabled *bool `pulumi:"xffForwardEnabled"` } // DeviceprofileGatewayTunnelProviderOptionsZscalerInput is an input type that accepts DeviceprofileGatewayTunnelProviderOptionsZscalerArgs and DeviceprofileGatewayTunnelProviderOptionsZscalerOutput values. @@ -14305,25 +14378,35 @@ type DeviceprofileGatewayTunnelProviderOptionsZscalerInput interface { } type DeviceprofileGatewayTunnelProviderOptionsZscalerArgs struct { - AupAcceptanceRequired pulumi.BoolPtrInput `pulumi:"aupAcceptanceRequired"` - // days before AUP is requested again - AupExpire pulumi.IntPtrInput `pulumi:"aupExpire"` + AupBlockInternetUntilAccepted pulumi.BoolPtrInput `pulumi:"aupBlockInternetUntilAccepted"` + // Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) + AupEnabled pulumi.BoolPtrInput `pulumi:"aupEnabled"` // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - AupSslProxy pulumi.BoolPtrInput `pulumi:"aupSslProxy"` - // the download bandwidth cap of the link, in Mbps - DownloadMbps pulumi.IntPtrInput `pulumi:"downloadMbps"` - // if `useXff`==`true`, display Acceptable Use Policy (AUP) - EnableAup pulumi.BoolPtrInput `pulumi:"enableAup"` - // when `enforceAuthentication`==`false`, display caution notification for non-authenticated users - EnableCaution pulumi.BoolPtrInput `pulumi:"enableCaution"` - EnforceAuthentication pulumi.BoolPtrInput `pulumi:"enforceAuthentication"` - Name pulumi.StringPtrInput `pulumi:"name"` - // if `useXff`==`true` + AupForceSslInspection pulumi.BoolPtrInput `pulumi:"aupForceSslInspection"` + // Required if `aupEnabled`==`true`. Days before AUP is requested again + AupTimeoutInDays pulumi.IntPtrInput `pulumi:"aupTimeoutInDays"` + // Enable this option to enforce user authentication + AuthRequired pulumi.BoolPtrInput `pulumi:"authRequired"` + // Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users + CautionEnabled pulumi.BoolPtrInput `pulumi:"cautionEnabled"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + DnBandwidth pulumi.Float64PtrInput `pulumi:"dnBandwidth"` + // Required if `surrogate_IP`==`true`, idle Time to Disassociation + IdleTimeInMinutes pulumi.IntPtrInput `pulumi:"idleTimeInMinutes"` + // if `true`, enable the firewall control option + OfwEnabled pulumi.BoolPtrInput `pulumi:"ofwEnabled"` + // `sub-locations` can be used for specific uses cases to define different configuration based on the user network SubLocations DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArrayInput `pulumi:"subLocations"` - // the download bandwidth cap of the link, in Mbps - UploadMbps pulumi.IntPtrInput `pulumi:"uploadMbps"` + // Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + SurrogateIp pulumi.BoolPtrInput `pulumi:"surrogateIp"` + // Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + SurrogateIpEnforcedForKnownBrowsers pulumi.BoolPtrInput `pulumi:"surrogateIpEnforcedForKnownBrowsers"` + // Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + SurrogateRefreshTimeInMinutes pulumi.IntPtrInput `pulumi:"surrogateRefreshTimeInMinutes"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + UpBandwidth pulumi.Float64PtrInput `pulumi:"upBandwidth"` // location uses proxy chaining to forward traffic - UseXff pulumi.BoolPtrInput `pulumi:"useXff"` + XffForwardEnabled pulumi.BoolPtrInput `pulumi:"xffForwardEnabled"` } func (DeviceprofileGatewayTunnelProviderOptionsZscalerArgs) ElementType() reflect.Type { @@ -14403,58 +14486,82 @@ func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) ToDeviceprofileG }).(DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) } -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) AupAcceptanceRequired() pulumi.BoolPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { return v.AupAcceptanceRequired }).(pulumi.BoolPtrOutput) +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) AupBlockInternetUntilAccepted() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { return v.AupBlockInternetUntilAccepted }).(pulumi.BoolPtrOutput) } -// days before AUP is requested again -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) AupExpire() pulumi.IntPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *int { return v.AupExpire }).(pulumi.IntPtrOutput) +// Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) AupEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { return v.AupEnabled }).(pulumi.BoolPtrOutput) } // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) AupSslProxy() pulumi.BoolPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { return v.AupSslProxy }).(pulumi.BoolPtrOutput) +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) AupForceSslInspection() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { return v.AupForceSslInspection }).(pulumi.BoolPtrOutput) +} + +// Required if `aupEnabled`==`true`. Days before AUP is requested again +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) AupTimeoutInDays() pulumi.IntPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *int { return v.AupTimeoutInDays }).(pulumi.IntPtrOutput) } -// the download bandwidth cap of the link, in Mbps -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) DownloadMbps() pulumi.IntPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *int { return v.DownloadMbps }).(pulumi.IntPtrOutput) +// Enable this option to enforce user authentication +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) AuthRequired() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { return v.AuthRequired }).(pulumi.BoolPtrOutput) } -// if `useXff`==`true`, display Acceptable Use Policy (AUP) -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) EnableAup() pulumi.BoolPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { return v.EnableAup }).(pulumi.BoolPtrOutput) +// Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) CautionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { return v.CautionEnabled }).(pulumi.BoolPtrOutput) } -// when `enforceAuthentication`==`false`, display caution notification for non-authenticated users -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) EnableCaution() pulumi.BoolPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { return v.EnableCaution }).(pulumi.BoolPtrOutput) +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) DnBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *float64 { return v.DnBandwidth }).(pulumi.Float64PtrOutput) } -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) EnforceAuthentication() pulumi.BoolPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { return v.EnforceAuthentication }).(pulumi.BoolPtrOutput) +// Required if `surrogate_IP`==`true`, idle Time to Disassociation +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) IdleTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *int { return v.IdleTimeInMinutes }).(pulumi.IntPtrOutput) } -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *string { return v.Name }).(pulumi.StringPtrOutput) +// if `true`, enable the firewall control option +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) OfwEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { return v.OfwEnabled }).(pulumi.BoolPtrOutput) } -// if `useXff`==`true` +// `sub-locations` can be used for specific uses cases to define different configuration based on the user network func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) SubLocations() DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArrayOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) []DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation { return v.SubLocations }).(DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArrayOutput) } -// the download bandwidth cap of the link, in Mbps -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) UploadMbps() pulumi.IntPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *int { return v.UploadMbps }).(pulumi.IntPtrOutput) +// Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) SurrogateIp() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { return v.SurrogateIp }).(pulumi.BoolPtrOutput) +} + +// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) SurrogateIpEnforcedForKnownBrowsers() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { + return v.SurrogateIpEnforcedForKnownBrowsers + }).(pulumi.BoolPtrOutput) +} + +// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) SurrogateRefreshTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *int { return v.SurrogateRefreshTimeInMinutes }).(pulumi.IntPtrOutput) +} + +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) UpBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *float64 { return v.UpBandwidth }).(pulumi.Float64PtrOutput) } // location uses proxy chaining to forward traffic -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) UseXff() pulumi.BoolPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { return v.UseXff }).(pulumi.BoolPtrOutput) +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) XffForwardEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { return v.XffForwardEnabled }).(pulumi.BoolPtrOutput) } type DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput struct{ *pulumi.OutputState } @@ -14481,84 +14588,96 @@ func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) Elem() Device }).(DeviceprofileGatewayTunnelProviderOptionsZscalerOutput) } -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) AupAcceptanceRequired() pulumi.BoolPtrOutput { +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) AupBlockInternetUntilAccepted() pulumi.BoolPtrOutput { return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.AupAcceptanceRequired + return v.AupBlockInternetUntilAccepted }).(pulumi.BoolPtrOutput) } -// days before AUP is requested again -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) AupExpire() pulumi.IntPtrOutput { - return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *int { +// Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) AupEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.AupExpire - }).(pulumi.IntPtrOutput) + return v.AupEnabled + }).(pulumi.BoolPtrOutput) } // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) AupSslProxy() pulumi.BoolPtrOutput { +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) AupForceSslInspection() pulumi.BoolPtrOutput { return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.AupSslProxy + return v.AupForceSslInspection }).(pulumi.BoolPtrOutput) } -// the download bandwidth cap of the link, in Mbps -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) DownloadMbps() pulumi.IntPtrOutput { +// Required if `aupEnabled`==`true`. Days before AUP is requested again +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) AupTimeoutInDays() pulumi.IntPtrOutput { return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *int { if v == nil { return nil } - return v.DownloadMbps + return v.AupTimeoutInDays }).(pulumi.IntPtrOutput) } -// if `useXff`==`true`, display Acceptable Use Policy (AUP) -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) EnableAup() pulumi.BoolPtrOutput { +// Enable this option to enforce user authentication +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) AuthRequired() pulumi.BoolPtrOutput { return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.EnableAup + return v.AuthRequired }).(pulumi.BoolPtrOutput) } -// when `enforceAuthentication`==`false`, display caution notification for non-authenticated users -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) EnableCaution() pulumi.BoolPtrOutput { +// Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) CautionEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.EnableCaution + return v.CautionEnabled }).(pulumi.BoolPtrOutput) } -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) EnforceAuthentication() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) DnBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *float64 { if v == nil { return nil } - return v.EnforceAuthentication - }).(pulumi.BoolPtrOutput) + return v.DnBandwidth + }).(pulumi.Float64PtrOutput) } -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *string { +// Required if `surrogate_IP`==`true`, idle Time to Disassociation +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) IdleTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *int { if v == nil { return nil } - return v.Name - }).(pulumi.StringPtrOutput) + return v.IdleTimeInMinutes + }).(pulumi.IntPtrOutput) } -// if `useXff`==`true` +// if `true`, enable the firewall control option +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) OfwEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { + if v == nil { + return nil + } + return v.OfwEnabled + }).(pulumi.BoolPtrOutput) +} + +// `sub-locations` can be used for specific uses cases to define different configuration based on the user network func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) SubLocations() DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArrayOutput { return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) []DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation { if v == nil { @@ -14568,42 +14687,84 @@ func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) SubLocations( }).(DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArrayOutput) } -// the download bandwidth cap of the link, in Mbps -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) UploadMbps() pulumi.IntPtrOutput { +// Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) SurrogateIp() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { + if v == nil { + return nil + } + return v.SurrogateIp + }).(pulumi.BoolPtrOutput) +} + +// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) SurrogateIpEnforcedForKnownBrowsers() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { + if v == nil { + return nil + } + return v.SurrogateIpEnforcedForKnownBrowsers + }).(pulumi.BoolPtrOutput) +} + +// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) SurrogateRefreshTimeInMinutes() pulumi.IntPtrOutput { return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *int { if v == nil { return nil } - return v.UploadMbps + return v.SurrogateRefreshTimeInMinutes }).(pulumi.IntPtrOutput) } +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) UpBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *float64 { + if v == nil { + return nil + } + return v.UpBandwidth + }).(pulumi.Float64PtrOutput) +} + // location uses proxy chaining to forward traffic -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) UseXff() pulumi.BoolPtrOutput { +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerPtrOutput) XffForwardEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *DeviceprofileGatewayTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.UseXff + return v.XffForwardEnabled }).(pulumi.BoolPtrOutput) } type DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation struct { - AupAcceptanceRequired *bool `pulumi:"aupAcceptanceRequired"` - // days before AUP is requested again - AupExpire *int `pulumi:"aupExpire"` + AupBlockInternetUntilAccepted *bool `pulumi:"aupBlockInternetUntilAccepted"` + // Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) + AupEnabled *bool `pulumi:"aupEnabled"` // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - AupSslProxy *bool `pulumi:"aupSslProxy"` - // the download bandwidth cap of the link, in Mbps - DownloadMbps *int `pulumi:"downloadMbps"` - // if `useXff`==`true`, display Acceptable Use Policy (AUP) - EnableAup *bool `pulumi:"enableAup"` - // when `enforceAuthentication`==`false`, display caution notification for non-authenticated users - EnableCaution *bool `pulumi:"enableCaution"` - EnforceAuthentication *bool `pulumi:"enforceAuthentication"` - Subnets []string `pulumi:"subnets"` - // the download bandwidth cap of the link, in Mbps - UploadMbps *int `pulumi:"uploadMbps"` + AupForceSslInspection *bool `pulumi:"aupForceSslInspection"` + // Required if `aupEnabled`==`true`. Days before AUP is requested again + AupTimeoutInDays *int `pulumi:"aupTimeoutInDays"` + // Enable this option to authenticate users + AuthRequired *bool `pulumi:"authRequired"` + // Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users + CautionEnabled *bool `pulumi:"cautionEnabled"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + DnBandwidth *float64 `pulumi:"dnBandwidth"` + // Required if `surrogate_IP`==`true`, idle Time to Disassociation + IdleTimeInMinutes *int `pulumi:"idleTimeInMinutes"` + // Network name + Name *string `pulumi:"name"` + // if `true`, enable the firewall control option + OfwEnabled *bool `pulumi:"ofwEnabled"` + // Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + SurrogateIp *bool `pulumi:"surrogateIp"` + // Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + SurrogateIpEnforcedForKnownBrowsers *bool `pulumi:"surrogateIpEnforcedForKnownBrowsers"` + // Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + SurrogateRefreshTimeInMinutes *int `pulumi:"surrogateRefreshTimeInMinutes"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + UpBandwidth *float64 `pulumi:"upBandwidth"` } // DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationInput is an input type that accepts DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs and DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput values. @@ -14618,21 +14779,33 @@ type DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationInput interface } type DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs struct { - AupAcceptanceRequired pulumi.BoolPtrInput `pulumi:"aupAcceptanceRequired"` - // days before AUP is requested again - AupExpire pulumi.IntPtrInput `pulumi:"aupExpire"` + AupBlockInternetUntilAccepted pulumi.BoolPtrInput `pulumi:"aupBlockInternetUntilAccepted"` + // Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) + AupEnabled pulumi.BoolPtrInput `pulumi:"aupEnabled"` // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - AupSslProxy pulumi.BoolPtrInput `pulumi:"aupSslProxy"` - // the download bandwidth cap of the link, in Mbps - DownloadMbps pulumi.IntPtrInput `pulumi:"downloadMbps"` - // if `useXff`==`true`, display Acceptable Use Policy (AUP) - EnableAup pulumi.BoolPtrInput `pulumi:"enableAup"` - // when `enforceAuthentication`==`false`, display caution notification for non-authenticated users - EnableCaution pulumi.BoolPtrInput `pulumi:"enableCaution"` - EnforceAuthentication pulumi.BoolPtrInput `pulumi:"enforceAuthentication"` - Subnets pulumi.StringArrayInput `pulumi:"subnets"` - // the download bandwidth cap of the link, in Mbps - UploadMbps pulumi.IntPtrInput `pulumi:"uploadMbps"` + AupForceSslInspection pulumi.BoolPtrInput `pulumi:"aupForceSslInspection"` + // Required if `aupEnabled`==`true`. Days before AUP is requested again + AupTimeoutInDays pulumi.IntPtrInput `pulumi:"aupTimeoutInDays"` + // Enable this option to authenticate users + AuthRequired pulumi.BoolPtrInput `pulumi:"authRequired"` + // Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users + CautionEnabled pulumi.BoolPtrInput `pulumi:"cautionEnabled"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + DnBandwidth pulumi.Float64PtrInput `pulumi:"dnBandwidth"` + // Required if `surrogate_IP`==`true`, idle Time to Disassociation + IdleTimeInMinutes pulumi.IntPtrInput `pulumi:"idleTimeInMinutes"` + // Network name + Name pulumi.StringPtrInput `pulumi:"name"` + // if `true`, enable the firewall control option + OfwEnabled pulumi.BoolPtrInput `pulumi:"ofwEnabled"` + // Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + SurrogateIp pulumi.BoolPtrInput `pulumi:"surrogateIp"` + // Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + SurrogateIpEnforcedForKnownBrowsers pulumi.BoolPtrInput `pulumi:"surrogateIpEnforcedForKnownBrowsers"` + // Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + SurrogateRefreshTimeInMinutes pulumi.IntPtrInput `pulumi:"surrogateRefreshTimeInMinutes"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + UpBandwidth pulumi.Float64PtrInput `pulumi:"upBandwidth"` } func (DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs) ElementType() reflect.Type { @@ -14686,50 +14859,81 @@ func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) ToDev return o } -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) AupAcceptanceRequired() pulumi.BoolPtrOutput { +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) AupBlockInternetUntilAccepted() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *bool { - return v.AupAcceptanceRequired + return v.AupBlockInternetUntilAccepted }).(pulumi.BoolPtrOutput) } -// days before AUP is requested again -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) AupExpire() pulumi.IntPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *int { return v.AupExpire }).(pulumi.IntPtrOutput) +// Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) AupEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.AupEnabled }).(pulumi.BoolPtrOutput) } // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) AupSslProxy() pulumi.BoolPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.AupSslProxy }).(pulumi.BoolPtrOutput) +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) AupForceSslInspection() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *bool { + return v.AupForceSslInspection + }).(pulumi.BoolPtrOutput) +} + +// Required if `aupEnabled`==`true`. Days before AUP is requested again +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) AupTimeoutInDays() pulumi.IntPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *int { return v.AupTimeoutInDays }).(pulumi.IntPtrOutput) +} + +// Enable this option to authenticate users +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) AuthRequired() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.AuthRequired }).(pulumi.BoolPtrOutput) +} + +// Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) CautionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.CautionEnabled }).(pulumi.BoolPtrOutput) } -// the download bandwidth cap of the link, in Mbps -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) DownloadMbps() pulumi.IntPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *int { return v.DownloadMbps }).(pulumi.IntPtrOutput) +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) DnBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *float64 { return v.DnBandwidth }).(pulumi.Float64PtrOutput) } -// if `useXff`==`true`, display Acceptable Use Policy (AUP) -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) EnableAup() pulumi.BoolPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.EnableAup }).(pulumi.BoolPtrOutput) +// Required if `surrogate_IP`==`true`, idle Time to Disassociation +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) IdleTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *int { return v.IdleTimeInMinutes }).(pulumi.IntPtrOutput) } -// when `enforceAuthentication`==`false`, display caution notification for non-authenticated users -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) EnableCaution() pulumi.BoolPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.EnableCaution }).(pulumi.BoolPtrOutput) +// Network name +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *string { return v.Name }).(pulumi.StringPtrOutput) } -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) EnforceAuthentication() pulumi.BoolPtrOutput { +// if `true`, enable the firewall control option +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) OfwEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.OfwEnabled }).(pulumi.BoolPtrOutput) +} + +// Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) SurrogateIp() pulumi.BoolPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *bool { return v.SurrogateIp }).(pulumi.BoolPtrOutput) +} + +// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) SurrogateIpEnforcedForKnownBrowsers() pulumi.BoolPtrOutput { return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *bool { - return v.EnforceAuthentication + return v.SurrogateIpEnforcedForKnownBrowsers }).(pulumi.BoolPtrOutput) } -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) Subnets() pulumi.StringArrayOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) []string { return v.Subnets }).(pulumi.StringArrayOutput) +// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) SurrogateRefreshTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *int { + return v.SurrogateRefreshTimeInMinutes + }).(pulumi.IntPtrOutput) } -// the download bandwidth cap of the link, in Mbps -func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) UploadMbps() pulumi.IntPtrOutput { - return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *int { return v.UploadMbps }).(pulumi.IntPtrOutput) +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationOutput) UpBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation) *float64 { return v.UpBandwidth }).(pulumi.Float64PtrOutput) } type DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArrayOutput struct{ *pulumi.OutputState } @@ -15885,8 +16089,7 @@ type GatewaytemplateBgpConfig struct { Export *string `pulumi:"export"` // default export policies if no per-neighbor policies defined ExportPolicy *string `pulumi:"exportPolicy"` - // by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - // for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + // by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this ExtendedV4Nexthop *bool `pulumi:"extendedV4Nexthop"` // `0` means disable GracefulRestartTime *int `pulumi:"gracefulRestartTime"` @@ -15937,8 +16140,7 @@ type GatewaytemplateBgpConfigArgs struct { Export pulumi.StringPtrInput `pulumi:"export"` // default export policies if no per-neighbor policies defined ExportPolicy pulumi.StringPtrInput `pulumi:"exportPolicy"` - // by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - // for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + // by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this ExtendedV4Nexthop pulumi.BoolPtrInput `pulumi:"extendedV4Nexthop"` // `0` means disable GracefulRestartTime pulumi.IntPtrInput `pulumi:"gracefulRestartTime"` @@ -16046,8 +16248,7 @@ func (o GatewaytemplateBgpConfigOutput) ExportPolicy() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateBgpConfig) *string { return v.ExportPolicy }).(pulumi.StringPtrOutput) } -// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) -// for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this +// by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this func (o GatewaytemplateBgpConfigOutput) ExtendedV4Nexthop() pulumi.BoolPtrOutput { return o.ApplyT(func(v GatewaytemplateBgpConfig) *bool { return v.ExtendedV4Nexthop }).(pulumi.BoolPtrOutput) } @@ -17694,11 +17895,12 @@ type GatewaytemplateNetwork struct { Multicast *GatewaytemplateNetworkMulticast `pulumi:"multicast"` Name string `pulumi:"name"` // for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) - RoutedForNetworks []string `pulumi:"routedForNetworks"` - Subnet string `pulumi:"subnet"` - Subnet6 *string `pulumi:"subnet6"` - Tenants map[string]GatewaytemplateNetworkTenants `pulumi:"tenants"` - VlanId *string `pulumi:"vlanId"` + RoutedForNetworks []string `pulumi:"routedForNetworks"` + Subnet string `pulumi:"subnet"` + Subnet6 *string `pulumi:"subnet6"` + // Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + Tenants map[string]GatewaytemplateNetworkTenants `pulumi:"tenants"` + VlanId *string `pulumi:"vlanId"` // Property key is the VPN name. Whether this network can be accessed from vpn VpnAccess map[string]GatewaytemplateNetworkVpnAccess `pulumi:"vpnAccess"` } @@ -17728,11 +17930,12 @@ type GatewaytemplateNetworkArgs struct { Multicast GatewaytemplateNetworkMulticastPtrInput `pulumi:"multicast"` Name pulumi.StringInput `pulumi:"name"` // for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) - RoutedForNetworks pulumi.StringArrayInput `pulumi:"routedForNetworks"` - Subnet pulumi.StringInput `pulumi:"subnet"` - Subnet6 pulumi.StringPtrInput `pulumi:"subnet6"` - Tenants GatewaytemplateNetworkTenantsMapInput `pulumi:"tenants"` - VlanId pulumi.StringPtrInput `pulumi:"vlanId"` + RoutedForNetworks pulumi.StringArrayInput `pulumi:"routedForNetworks"` + Subnet pulumi.StringInput `pulumi:"subnet"` + Subnet6 pulumi.StringPtrInput `pulumi:"subnet6"` + // Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + Tenants GatewaytemplateNetworkTenantsMapInput `pulumi:"tenants"` + VlanId pulumi.StringPtrInput `pulumi:"vlanId"` // Property key is the VPN name. Whether this network can be accessed from vpn VpnAccess GatewaytemplateNetworkVpnAccessMapInput `pulumi:"vpnAccess"` } @@ -17837,6 +18040,7 @@ func (o GatewaytemplateNetworkOutput) Subnet6() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateNetwork) *string { return v.Subnet6 }).(pulumi.StringPtrOutput) } +// Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") func (o GatewaytemplateNetworkOutput) Tenants() GatewaytemplateNetworkTenantsMapOutput { return o.ApplyT(func(v GatewaytemplateNetwork) map[string]GatewaytemplateNetworkTenants { return v.Tenants }).(GatewaytemplateNetworkTenantsMapOutput) } @@ -18005,12 +18209,12 @@ func (o GatewaytemplateNetworkInternalAccessPtrOutput) Enabled() pulumi.BoolPtrO type GatewaytemplateNetworkInternetAccess struct { CreateSimpleServicePolicy *bool `pulumi:"createSimpleServicePolicy"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat map[string]GatewaytemplateNetworkInternetAccessDestinationNat `pulumi:"destinationNat"` Enabled *bool `pulumi:"enabled"` // by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies Restricted *bool `pulumi:"restricted"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat map[string]GatewaytemplateNetworkInternetAccessStaticNat `pulumi:"staticNat"` } @@ -18027,12 +18231,12 @@ type GatewaytemplateNetworkInternetAccessInput interface { type GatewaytemplateNetworkInternetAccessArgs struct { CreateSimpleServicePolicy pulumi.BoolPtrInput `pulumi:"createSimpleServicePolicy"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat GatewaytemplateNetworkInternetAccessDestinationNatMapInput `pulumi:"destinationNat"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` // by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies Restricted pulumi.BoolPtrInput `pulumi:"restricted"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat GatewaytemplateNetworkInternetAccessStaticNatMapInput `pulumi:"staticNat"` } @@ -18117,7 +18321,7 @@ func (o GatewaytemplateNetworkInternetAccessOutput) CreateSimpleServicePolicy() return o.ApplyT(func(v GatewaytemplateNetworkInternetAccess) *bool { return v.CreateSimpleServicePolicy }).(pulumi.BoolPtrOutput) } -// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") +// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined func (o GatewaytemplateNetworkInternetAccessOutput) DestinationNat() GatewaytemplateNetworkInternetAccessDestinationNatMapOutput { return o.ApplyT(func(v GatewaytemplateNetworkInternetAccess) map[string]GatewaytemplateNetworkInternetAccessDestinationNat { return v.DestinationNat @@ -18133,7 +18337,7 @@ func (o GatewaytemplateNetworkInternetAccessOutput) Restricted() pulumi.BoolPtrO return o.ApplyT(func(v GatewaytemplateNetworkInternetAccess) *bool { return v.Restricted }).(pulumi.BoolPtrOutput) } -// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") +// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") func (o GatewaytemplateNetworkInternetAccessOutput) StaticNat() GatewaytemplateNetworkInternetAccessStaticNatMapOutput { return o.ApplyT(func(v GatewaytemplateNetworkInternetAccess) map[string]GatewaytemplateNetworkInternetAccessStaticNat { return v.StaticNat @@ -18173,7 +18377,7 @@ func (o GatewaytemplateNetworkInternetAccessPtrOutput) CreateSimpleServicePolicy }).(pulumi.BoolPtrOutput) } -// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") +// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined func (o GatewaytemplateNetworkInternetAccessPtrOutput) DestinationNat() GatewaytemplateNetworkInternetAccessDestinationNatMapOutput { return o.ApplyT(func(v *GatewaytemplateNetworkInternetAccess) map[string]GatewaytemplateNetworkInternetAccessDestinationNat { if v == nil { @@ -18202,7 +18406,7 @@ func (o GatewaytemplateNetworkInternetAccessPtrOutput) Restricted() pulumi.BoolP }).(pulumi.BoolPtrOutput) } -// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") +// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") func (o GatewaytemplateNetworkInternetAccessPtrOutput) StaticNat() GatewaytemplateNetworkInternetAccessStaticNatMapOutput { return o.ApplyT(func(v *GatewaytemplateNetworkInternetAccess) map[string]GatewaytemplateNetworkInternetAccessStaticNat { if v == nil { @@ -18213,9 +18417,13 @@ func (o GatewaytemplateNetworkInternetAccessPtrOutput) StaticNat() Gatewaytempla } type GatewaytemplateNetworkInternetAccessDestinationNat struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp *string `pulumi:"internalIp"` Name *string `pulumi:"name"` - Port *int `pulumi:"port"` + // The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + Port *string `pulumi:"port"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + WanName *string `pulumi:"wanName"` } // GatewaytemplateNetworkInternetAccessDestinationNatInput is an input type that accepts GatewaytemplateNetworkInternetAccessDestinationNatArgs and GatewaytemplateNetworkInternetAccessDestinationNatOutput values. @@ -18230,9 +18438,13 @@ type GatewaytemplateNetworkInternetAccessDestinationNatInput interface { } type GatewaytemplateNetworkInternetAccessDestinationNatArgs struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` Name pulumi.StringPtrInput `pulumi:"name"` - Port pulumi.IntPtrInput `pulumi:"port"` + // The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + Port pulumi.StringPtrInput `pulumi:"port"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + WanName pulumi.StringPtrInput `pulumi:"wanName"` } func (GatewaytemplateNetworkInternetAccessDestinationNatArgs) ElementType() reflect.Type { @@ -18286,6 +18498,7 @@ func (o GatewaytemplateNetworkInternetAccessDestinationNatOutput) ToGatewaytempl return o } +// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") func (o GatewaytemplateNetworkInternetAccessDestinationNatOutput) InternalIp() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateNetworkInternetAccessDestinationNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) } @@ -18294,8 +18507,14 @@ func (o GatewaytemplateNetworkInternetAccessDestinationNatOutput) Name() pulumi. return o.ApplyT(func(v GatewaytemplateNetworkInternetAccessDestinationNat) *string { return v.Name }).(pulumi.StringPtrOutput) } -func (o GatewaytemplateNetworkInternetAccessDestinationNatOutput) Port() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewaytemplateNetworkInternetAccessDestinationNat) *int { return v.Port }).(pulumi.IntPtrOutput) +// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") +func (o GatewaytemplateNetworkInternetAccessDestinationNatOutput) Port() pulumi.StringPtrOutput { + return o.ApplyT(func(v GatewaytemplateNetworkInternetAccessDestinationNat) *string { return v.Port }).(pulumi.StringPtrOutput) +} + +// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity +func (o GatewaytemplateNetworkInternetAccessDestinationNatOutput) WanName() pulumi.StringPtrOutput { + return o.ApplyT(func(v GatewaytemplateNetworkInternetAccessDestinationNat) *string { return v.WanName }).(pulumi.StringPtrOutput) } type GatewaytemplateNetworkInternetAccessDestinationNatMapOutput struct{ *pulumi.OutputState } @@ -18319,9 +18538,10 @@ func (o GatewaytemplateNetworkInternetAccessDestinationNatMapOutput) MapIndex(k } type GatewaytemplateNetworkInternetAccessStaticNat struct { - InternalIp *string `pulumi:"internalIp"` - Name *string `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp string `pulumi:"internalIp"` + Name string `pulumi:"name"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") WanName *string `pulumi:"wanName"` } @@ -18337,9 +18557,10 @@ type GatewaytemplateNetworkInternetAccessStaticNatInput interface { } type GatewaytemplateNetworkInternetAccessStaticNatArgs struct { - InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` - Name pulumi.StringPtrInput `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp pulumi.StringInput `pulumi:"internalIp"` + Name pulumi.StringInput `pulumi:"name"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") WanName pulumi.StringPtrInput `pulumi:"wanName"` } @@ -18394,15 +18615,16 @@ func (o GatewaytemplateNetworkInternetAccessStaticNatOutput) ToGatewaytemplateNe return o } -func (o GatewaytemplateNetworkInternetAccessStaticNatOutput) InternalIp() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewaytemplateNetworkInternetAccessStaticNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) +// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") +func (o GatewaytemplateNetworkInternetAccessStaticNatOutput) InternalIp() pulumi.StringOutput { + return o.ApplyT(func(v GatewaytemplateNetworkInternetAccessStaticNat) string { return v.InternalIp }).(pulumi.StringOutput) } -func (o GatewaytemplateNetworkInternetAccessStaticNatOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewaytemplateNetworkInternetAccessStaticNat) *string { return v.Name }).(pulumi.StringPtrOutput) +func (o GatewaytemplateNetworkInternetAccessStaticNatOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GatewaytemplateNetworkInternetAccessStaticNat) string { return v.Name }).(pulumi.StringOutput) } -// If not set, we configure the nat policies against all WAN ports for simplicity +// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") func (o GatewaytemplateNetworkInternetAccessStaticNatOutput) WanName() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateNetworkInternetAccessStaticNat) *string { return v.WanName }).(pulumi.StringPtrOutput) } @@ -18796,7 +19018,7 @@ type GatewaytemplateNetworkVpnAccess struct { AdvertisedSubnet *string `pulumi:"advertisedSubnet"` // whether to allow ping from vpn into this routed network AllowPing *bool `pulumi:"allowPing"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat map[string]GatewaytemplateNetworkVpnAccessDestinationNat `pulumi:"destinationNat"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub NatPool *string `pulumi:"natPool"` @@ -18804,20 +19026,17 @@ type GatewaytemplateNetworkVpnAccess struct { NoReadvertiseToLanBgp *bool `pulumi:"noReadvertiseToLanBgp"` // toward LAN-side OSPF peers NoReadvertiseToLanOspf *bool `pulumi:"noReadvertiseToLanOspf"` - // toward overlay - // how HUB should deal with routes it received from Spokes + // toward overlay, how HUB should deal with routes it received from Spokes NoReadvertiseToOverlay *bool `pulumi:"noReadvertiseToOverlay"` - // by default, the routes are only readvertised toward the same vrf on spoke - // to allow it to be leaked to other vrfs + // by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs OtherVrfs []string `pulumi:"otherVrfs"` // whether this network is routable Routed *bool `pulumi:"routed"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub SourceNat *GatewaytemplateNetworkVpnAccessSourceNat `pulumi:"sourceNat"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat map[string]GatewaytemplateNetworkVpnAccessStaticNat `pulumi:"staticNat"` - // toward overlay - // how HUB should deal with routes it received from Spokes + // toward overlay, how HUB should deal with routes it received from Spokes SummarizedSubnet *string `pulumi:"summarizedSubnet"` // toward LAN-side BGP peers SummarizedSubnetToLanBgp *string `pulumi:"summarizedSubnetToLanBgp"` @@ -18841,7 +19060,7 @@ type GatewaytemplateNetworkVpnAccessArgs struct { AdvertisedSubnet pulumi.StringPtrInput `pulumi:"advertisedSubnet"` // whether to allow ping from vpn into this routed network AllowPing pulumi.BoolPtrInput `pulumi:"allowPing"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat GatewaytemplateNetworkVpnAccessDestinationNatMapInput `pulumi:"destinationNat"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub NatPool pulumi.StringPtrInput `pulumi:"natPool"` @@ -18849,20 +19068,17 @@ type GatewaytemplateNetworkVpnAccessArgs struct { NoReadvertiseToLanBgp pulumi.BoolPtrInput `pulumi:"noReadvertiseToLanBgp"` // toward LAN-side OSPF peers NoReadvertiseToLanOspf pulumi.BoolPtrInput `pulumi:"noReadvertiseToLanOspf"` - // toward overlay - // how HUB should deal with routes it received from Spokes + // toward overlay, how HUB should deal with routes it received from Spokes NoReadvertiseToOverlay pulumi.BoolPtrInput `pulumi:"noReadvertiseToOverlay"` - // by default, the routes are only readvertised toward the same vrf on spoke - // to allow it to be leaked to other vrfs + // by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs OtherVrfs pulumi.StringArrayInput `pulumi:"otherVrfs"` // whether this network is routable Routed pulumi.BoolPtrInput `pulumi:"routed"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub SourceNat GatewaytemplateNetworkVpnAccessSourceNatPtrInput `pulumi:"sourceNat"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat GatewaytemplateNetworkVpnAccessStaticNatMapInput `pulumi:"staticNat"` - // toward overlay - // how HUB should deal with routes it received from Spokes + // toward overlay, how HUB should deal with routes it received from Spokes SummarizedSubnet pulumi.StringPtrInput `pulumi:"summarizedSubnet"` // toward LAN-side BGP peers SummarizedSubnetToLanBgp pulumi.StringPtrInput `pulumi:"summarizedSubnetToLanBgp"` @@ -18931,7 +19147,7 @@ func (o GatewaytemplateNetworkVpnAccessOutput) AllowPing() pulumi.BoolPtrOutput return o.ApplyT(func(v GatewaytemplateNetworkVpnAccess) *bool { return v.AllowPing }).(pulumi.BoolPtrOutput) } -// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") +// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined func (o GatewaytemplateNetworkVpnAccessOutput) DestinationNat() GatewaytemplateNetworkVpnAccessDestinationNatMapOutput { return o.ApplyT(func(v GatewaytemplateNetworkVpnAccess) map[string]GatewaytemplateNetworkVpnAccessDestinationNat { return v.DestinationNat @@ -18953,14 +19169,12 @@ func (o GatewaytemplateNetworkVpnAccessOutput) NoReadvertiseToLanOspf() pulumi.B return o.ApplyT(func(v GatewaytemplateNetworkVpnAccess) *bool { return v.NoReadvertiseToLanOspf }).(pulumi.BoolPtrOutput) } -// toward overlay -// how HUB should deal with routes it received from Spokes +// toward overlay, how HUB should deal with routes it received from Spokes func (o GatewaytemplateNetworkVpnAccessOutput) NoReadvertiseToOverlay() pulumi.BoolPtrOutput { return o.ApplyT(func(v GatewaytemplateNetworkVpnAccess) *bool { return v.NoReadvertiseToOverlay }).(pulumi.BoolPtrOutput) } -// by default, the routes are only readvertised toward the same vrf on spoke -// to allow it to be leaked to other vrfs +// by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs func (o GatewaytemplateNetworkVpnAccessOutput) OtherVrfs() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewaytemplateNetworkVpnAccess) []string { return v.OtherVrfs }).(pulumi.StringArrayOutput) } @@ -18975,15 +19189,14 @@ func (o GatewaytemplateNetworkVpnAccessOutput) SourceNat() GatewaytemplateNetwor return o.ApplyT(func(v GatewaytemplateNetworkVpnAccess) *GatewaytemplateNetworkVpnAccessSourceNat { return v.SourceNat }).(GatewaytemplateNetworkVpnAccessSourceNatPtrOutput) } -// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") +// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") func (o GatewaytemplateNetworkVpnAccessOutput) StaticNat() GatewaytemplateNetworkVpnAccessStaticNatMapOutput { return o.ApplyT(func(v GatewaytemplateNetworkVpnAccess) map[string]GatewaytemplateNetworkVpnAccessStaticNat { return v.StaticNat }).(GatewaytemplateNetworkVpnAccessStaticNatMapOutput) } -// toward overlay -// how HUB should deal with routes it received from Spokes +// toward overlay, how HUB should deal with routes it received from Spokes func (o GatewaytemplateNetworkVpnAccessOutput) SummarizedSubnet() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateNetworkVpnAccess) *string { return v.SummarizedSubnet }).(pulumi.StringPtrOutput) } @@ -19019,9 +19232,10 @@ func (o GatewaytemplateNetworkVpnAccessMapOutput) MapIndex(k pulumi.StringInput) } type GatewaytemplateNetworkVpnAccessDestinationNat struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp *string `pulumi:"internalIp"` Name *string `pulumi:"name"` - Port *int `pulumi:"port"` + Port *string `pulumi:"port"` } // GatewaytemplateNetworkVpnAccessDestinationNatInput is an input type that accepts GatewaytemplateNetworkVpnAccessDestinationNatArgs and GatewaytemplateNetworkVpnAccessDestinationNatOutput values. @@ -19036,9 +19250,10 @@ type GatewaytemplateNetworkVpnAccessDestinationNatInput interface { } type GatewaytemplateNetworkVpnAccessDestinationNatArgs struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` Name pulumi.StringPtrInput `pulumi:"name"` - Port pulumi.IntPtrInput `pulumi:"port"` + Port pulumi.StringPtrInput `pulumi:"port"` } func (GatewaytemplateNetworkVpnAccessDestinationNatArgs) ElementType() reflect.Type { @@ -19092,6 +19307,7 @@ func (o GatewaytemplateNetworkVpnAccessDestinationNatOutput) ToGatewaytemplateNe return o } +// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") func (o GatewaytemplateNetworkVpnAccessDestinationNatOutput) InternalIp() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateNetworkVpnAccessDestinationNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) } @@ -19100,8 +19316,8 @@ func (o GatewaytemplateNetworkVpnAccessDestinationNatOutput) Name() pulumi.Strin return o.ApplyT(func(v GatewaytemplateNetworkVpnAccessDestinationNat) *string { return v.Name }).(pulumi.StringPtrOutput) } -func (o GatewaytemplateNetworkVpnAccessDestinationNatOutput) Port() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewaytemplateNetworkVpnAccessDestinationNat) *int { return v.Port }).(pulumi.IntPtrOutput) +func (o GatewaytemplateNetworkVpnAccessDestinationNatOutput) Port() pulumi.StringPtrOutput { + return o.ApplyT(func(v GatewaytemplateNetworkVpnAccessDestinationNat) *string { return v.Port }).(pulumi.StringPtrOutput) } type GatewaytemplateNetworkVpnAccessDestinationNatMapOutput struct{ *pulumi.OutputState } @@ -19258,10 +19474,9 @@ func (o GatewaytemplateNetworkVpnAccessSourceNatPtrOutput) ExternalIp() pulumi.S } type GatewaytemplateNetworkVpnAccessStaticNat struct { - InternalIp *string `pulumi:"internalIp"` - Name *string `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity - WanName *string `pulumi:"wanName"` + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp string `pulumi:"internalIp"` + Name string `pulumi:"name"` } // GatewaytemplateNetworkVpnAccessStaticNatInput is an input type that accepts GatewaytemplateNetworkVpnAccessStaticNatArgs and GatewaytemplateNetworkVpnAccessStaticNatOutput values. @@ -19276,10 +19491,9 @@ type GatewaytemplateNetworkVpnAccessStaticNatInput interface { } type GatewaytemplateNetworkVpnAccessStaticNatArgs struct { - InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` - Name pulumi.StringPtrInput `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity - WanName pulumi.StringPtrInput `pulumi:"wanName"` + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp pulumi.StringInput `pulumi:"internalIp"` + Name pulumi.StringInput `pulumi:"name"` } func (GatewaytemplateNetworkVpnAccessStaticNatArgs) ElementType() reflect.Type { @@ -19333,17 +19547,13 @@ func (o GatewaytemplateNetworkVpnAccessStaticNatOutput) ToGatewaytemplateNetwork return o } -func (o GatewaytemplateNetworkVpnAccessStaticNatOutput) InternalIp() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewaytemplateNetworkVpnAccessStaticNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) +// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") +func (o GatewaytemplateNetworkVpnAccessStaticNatOutput) InternalIp() pulumi.StringOutput { + return o.ApplyT(func(v GatewaytemplateNetworkVpnAccessStaticNat) string { return v.InternalIp }).(pulumi.StringOutput) } -func (o GatewaytemplateNetworkVpnAccessStaticNatOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewaytemplateNetworkVpnAccessStaticNat) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -// If not set, we configure the nat policies against all WAN ports for simplicity -func (o GatewaytemplateNetworkVpnAccessStaticNatOutput) WanName() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewaytemplateNetworkVpnAccessStaticNat) *string { return v.WanName }).(pulumi.StringPtrOutput) +func (o GatewaytemplateNetworkVpnAccessStaticNatOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v GatewaytemplateNetworkVpnAccessStaticNat) string { return v.Name }).(pulumi.StringOutput) } type GatewaytemplateNetworkVpnAccessStaticNatMapOutput struct{ *pulumi.OutputState } @@ -20155,24 +20365,21 @@ type GatewaytemplatePortConfig struct { AeDisableLacp *bool `pulumi:"aeDisableLacp"` // if `aggregated`==`true`. Users could force to use the designated AE name (must be an integer between 0 and 127) AeIdx *string `pulumi:"aeIdx"` - // For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - // Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - // Note: Turning this on will enable force-up on one of the interfaces in the bundle only + // For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only AeLacpForceUp *bool `pulumi:"aeLacpForceUp"` Aggregated *bool `pulumi:"aggregated"` // if want to generate port up/down alarm, set it to true - Critical *bool `pulumi:"critical"` + Critical *bool `pulumi:"critical"` + // Interface Description. Can be a variable (i.e. "{{myvar}}") Description *string `pulumi:"description"` DisableAutoneg *bool `pulumi:"disableAutoneg"` // port admin up (true) / down (false) Disabled *bool `pulumi:"disabled"` // if `wanType`==`dsl`. enum: `adsl`, `vdsl` DslType *string `pulumi:"dslType"` - // if `wanType`==`dsl` - // 16 bit int + // if `wanType`==`dsl`, 16 bit int DslVci *int `pulumi:"dslVci"` - // if `wanType`==`dsl` - // 8 bit int + // if `wanType`==`dsl`, 8 bit int DslVpi *int `pulumi:"dslVpi"` // enum: `auto`, `full`, `half` Duplex *string `pulumi:"duplex"` @@ -20190,12 +20397,12 @@ type GatewaytemplatePortConfig struct { Mtu *int `pulumi:"mtu"` // name that we'll use to derive config Name *string `pulumi:"name"` - // if `usage`==`lan` + // if `usage`==`lan`, name of the `org.Network` resource Networks []string `pulumi:"networks"` // for Q-in-Q OuterVlanId *int `pulumi:"outerVlanId"` PoeDisabled *bool `pulumi:"poeDisabled"` - // if `usage`==`lan` + // Only for SRX and if `usage`==`lan`, the Untagged VLAN Network PortNetwork *string `pulumi:"portNetwork"` // whether to preserve dscp when sending traffic over VPN (SSR-only) PreserveDscp *bool `pulumi:"preserveDscp"` @@ -20214,22 +20421,23 @@ type GatewaytemplatePortConfig struct { SvrPortRange *string `pulumi:"svrPortRange"` TrafficShaping *GatewaytemplatePortConfigTrafficShaping `pulumi:"trafficShaping"` // port usage name. enum: `haControl`, `haData`, `lan`, `wan` - Usage string `pulumi:"usage"` - // if WAN interface is on a VLAN - VlanId *int `pulumi:"vlanId"` + Usage string `pulumi:"usage"` + VlanId *string `pulumi:"vlanId"` // Property key is the VPN name VpnPaths map[string]GatewaytemplatePortConfigVpnPaths `pulumi:"vpnPaths"` - // when `wanType`==`broadband`. enum: `default`, `max`, `recommended` + // Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` WanArpPolicer *string `pulumi:"wanArpPolicer"` - // optional, if spoke should reach this port by a different IP + // Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP WanExtIp *string `pulumi:"wanExtIp"` - // Property Key is the destianation CIDR (e.g "100.100.100.0/24") + // Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") WanExtraRoutes map[string]GatewaytemplatePortConfigWanExtraRoutes `pulumi:"wanExtraRoutes"` - // if `usage`==`wan` + // Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + WanNetworks []string `pulumi:"wanNetworks"` + // Only if `usage`==`wan` WanProbeOverride *GatewaytemplatePortConfigWanProbeOverride `pulumi:"wanProbeOverride"` - // optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + // Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip WanSourceNat *GatewaytemplatePortConfigWanSourceNat `pulumi:"wanSourceNat"` - // if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + // Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` WanType *string `pulumi:"wanType"` } @@ -20249,24 +20457,21 @@ type GatewaytemplatePortConfigArgs struct { AeDisableLacp pulumi.BoolPtrInput `pulumi:"aeDisableLacp"` // if `aggregated`==`true`. Users could force to use the designated AE name (must be an integer between 0 and 127) AeIdx pulumi.StringPtrInput `pulumi:"aeIdx"` - // For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - // Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - // Note: Turning this on will enable force-up on one of the interfaces in the bundle only + // For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only AeLacpForceUp pulumi.BoolPtrInput `pulumi:"aeLacpForceUp"` Aggregated pulumi.BoolPtrInput `pulumi:"aggregated"` // if want to generate port up/down alarm, set it to true - Critical pulumi.BoolPtrInput `pulumi:"critical"` + Critical pulumi.BoolPtrInput `pulumi:"critical"` + // Interface Description. Can be a variable (i.e. "{{myvar}}") Description pulumi.StringPtrInput `pulumi:"description"` DisableAutoneg pulumi.BoolPtrInput `pulumi:"disableAutoneg"` // port admin up (true) / down (false) Disabled pulumi.BoolPtrInput `pulumi:"disabled"` // if `wanType`==`dsl`. enum: `adsl`, `vdsl` DslType pulumi.StringPtrInput `pulumi:"dslType"` - // if `wanType`==`dsl` - // 16 bit int + // if `wanType`==`dsl`, 16 bit int DslVci pulumi.IntPtrInput `pulumi:"dslVci"` - // if `wanType`==`dsl` - // 8 bit int + // if `wanType`==`dsl`, 8 bit int DslVpi pulumi.IntPtrInput `pulumi:"dslVpi"` // enum: `auto`, `full`, `half` Duplex pulumi.StringPtrInput `pulumi:"duplex"` @@ -20284,12 +20489,12 @@ type GatewaytemplatePortConfigArgs struct { Mtu pulumi.IntPtrInput `pulumi:"mtu"` // name that we'll use to derive config Name pulumi.StringPtrInput `pulumi:"name"` - // if `usage`==`lan` + // if `usage`==`lan`, name of the `org.Network` resource Networks pulumi.StringArrayInput `pulumi:"networks"` // for Q-in-Q OuterVlanId pulumi.IntPtrInput `pulumi:"outerVlanId"` PoeDisabled pulumi.BoolPtrInput `pulumi:"poeDisabled"` - // if `usage`==`lan` + // Only for SRX and if `usage`==`lan`, the Untagged VLAN Network PortNetwork pulumi.StringPtrInput `pulumi:"portNetwork"` // whether to preserve dscp when sending traffic over VPN (SSR-only) PreserveDscp pulumi.BoolPtrInput `pulumi:"preserveDscp"` @@ -20308,22 +20513,23 @@ type GatewaytemplatePortConfigArgs struct { SvrPortRange pulumi.StringPtrInput `pulumi:"svrPortRange"` TrafficShaping GatewaytemplatePortConfigTrafficShapingPtrInput `pulumi:"trafficShaping"` // port usage name. enum: `haControl`, `haData`, `lan`, `wan` - Usage pulumi.StringInput `pulumi:"usage"` - // if WAN interface is on a VLAN - VlanId pulumi.IntPtrInput `pulumi:"vlanId"` + Usage pulumi.StringInput `pulumi:"usage"` + VlanId pulumi.StringPtrInput `pulumi:"vlanId"` // Property key is the VPN name VpnPaths GatewaytemplatePortConfigVpnPathsMapInput `pulumi:"vpnPaths"` - // when `wanType`==`broadband`. enum: `default`, `max`, `recommended` + // Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` WanArpPolicer pulumi.StringPtrInput `pulumi:"wanArpPolicer"` - // optional, if spoke should reach this port by a different IP + // Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP WanExtIp pulumi.StringPtrInput `pulumi:"wanExtIp"` - // Property Key is the destianation CIDR (e.g "100.100.100.0/24") + // Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") WanExtraRoutes GatewaytemplatePortConfigWanExtraRoutesMapInput `pulumi:"wanExtraRoutes"` - // if `usage`==`wan` + // Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + WanNetworks pulumi.StringArrayInput `pulumi:"wanNetworks"` + // Only if `usage`==`wan` WanProbeOverride GatewaytemplatePortConfigWanProbeOverridePtrInput `pulumi:"wanProbeOverride"` - // optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + // Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip WanSourceNat GatewaytemplatePortConfigWanSourceNatPtrInput `pulumi:"wanSourceNat"` - // if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + // Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` WanType pulumi.StringPtrInput `pulumi:"wanType"` } @@ -20388,9 +20594,7 @@ func (o GatewaytemplatePortConfigOutput) AeIdx() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *string { return v.AeIdx }).(pulumi.StringPtrOutput) } -// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n -// Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n -// Note: Turning this on will enable force-up on one of the interfaces in the bundle only +// For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only func (o GatewaytemplatePortConfigOutput) AeLacpForceUp() pulumi.BoolPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *bool { return v.AeLacpForceUp }).(pulumi.BoolPtrOutput) } @@ -20404,6 +20608,7 @@ func (o GatewaytemplatePortConfigOutput) Critical() pulumi.BoolPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *bool { return v.Critical }).(pulumi.BoolPtrOutput) } +// Interface Description. Can be a variable (i.e. "{{myvar}}") func (o GatewaytemplatePortConfigOutput) Description() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *string { return v.Description }).(pulumi.StringPtrOutput) } @@ -20422,14 +20627,12 @@ func (o GatewaytemplatePortConfigOutput) DslType() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *string { return v.DslType }).(pulumi.StringPtrOutput) } -// if `wanType`==`dsl` -// 16 bit int +// if `wanType`==`dsl`, 16 bit int func (o GatewaytemplatePortConfigOutput) DslVci() pulumi.IntPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *int { return v.DslVci }).(pulumi.IntPtrOutput) } -// if `wanType`==`dsl` -// 8 bit int +// if `wanType`==`dsl`, 8 bit int func (o GatewaytemplatePortConfigOutput) DslVpi() pulumi.IntPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *int { return v.DslVpi }).(pulumi.IntPtrOutput) } @@ -20477,7 +20680,7 @@ func (o GatewaytemplatePortConfigOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *string { return v.Name }).(pulumi.StringPtrOutput) } -// if `usage`==`lan` +// if `usage`==`lan`, name of the `org.Network` resource func (o GatewaytemplatePortConfigOutput) Networks() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) []string { return v.Networks }).(pulumi.StringArrayOutput) } @@ -20491,7 +20694,7 @@ func (o GatewaytemplatePortConfigOutput) PoeDisabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *bool { return v.PoeDisabled }).(pulumi.BoolPtrOutput) } -// if `usage`==`lan` +// Only for SRX and if `usage`==`lan`, the Untagged VLAN Network func (o GatewaytemplatePortConfigOutput) PortNetwork() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *string { return v.PortNetwork }).(pulumi.StringPtrOutput) } @@ -20544,9 +20747,8 @@ func (o GatewaytemplatePortConfigOutput) Usage() pulumi.StringOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) string { return v.Usage }).(pulumi.StringOutput) } -// if WAN interface is on a VLAN -func (o GatewaytemplatePortConfigOutput) VlanId() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewaytemplatePortConfig) *int { return v.VlanId }).(pulumi.IntPtrOutput) +func (o GatewaytemplatePortConfigOutput) VlanId() pulumi.StringPtrOutput { + return o.ApplyT(func(v GatewaytemplatePortConfig) *string { return v.VlanId }).(pulumi.StringPtrOutput) } // Property key is the VPN name @@ -20554,36 +20756,41 @@ func (o GatewaytemplatePortConfigOutput) VpnPaths() GatewaytemplatePortConfigVpn return o.ApplyT(func(v GatewaytemplatePortConfig) map[string]GatewaytemplatePortConfigVpnPaths { return v.VpnPaths }).(GatewaytemplatePortConfigVpnPathsMapOutput) } -// when `wanType`==`broadband`. enum: `default`, `max`, `recommended` +// Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` func (o GatewaytemplatePortConfigOutput) WanArpPolicer() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *string { return v.WanArpPolicer }).(pulumi.StringPtrOutput) } -// optional, if spoke should reach this port by a different IP +// Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP func (o GatewaytemplatePortConfigOutput) WanExtIp() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *string { return v.WanExtIp }).(pulumi.StringPtrOutput) } -// Property Key is the destianation CIDR (e.g "100.100.100.0/24") +// Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") func (o GatewaytemplatePortConfigOutput) WanExtraRoutes() GatewaytemplatePortConfigWanExtraRoutesMapOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) map[string]GatewaytemplatePortConfigWanExtraRoutes { return v.WanExtraRoutes }).(GatewaytemplatePortConfigWanExtraRoutesMapOutput) } -// if `usage`==`wan` +// Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined +func (o GatewaytemplatePortConfigOutput) WanNetworks() pulumi.StringArrayOutput { + return o.ApplyT(func(v GatewaytemplatePortConfig) []string { return v.WanNetworks }).(pulumi.StringArrayOutput) +} + +// Only if `usage`==`wan` func (o GatewaytemplatePortConfigOutput) WanProbeOverride() GatewaytemplatePortConfigWanProbeOverridePtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *GatewaytemplatePortConfigWanProbeOverride { return v.WanProbeOverride }).(GatewaytemplatePortConfigWanProbeOverridePtrOutput) } -// optional, by default, source-NAT is performed on all WAN Ports using the interface-ip +// Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip func (o GatewaytemplatePortConfigOutput) WanSourceNat() GatewaytemplatePortConfigWanSourceNatPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *GatewaytemplatePortConfigWanSourceNat { return v.WanSourceNat }).(GatewaytemplatePortConfigWanSourceNatPtrOutput) } -// if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` +// Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` func (o GatewaytemplatePortConfigOutput) WanType() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfig) *string { return v.WanType }).(pulumi.StringPtrOutput) } @@ -20613,10 +20820,11 @@ type GatewaytemplatePortConfigIpConfig struct { Dns []string `pulumi:"dns"` // except for out-of_band interface (vme/em0/fxp0) DnsSuffixes []string `pulumi:"dnsSuffixes"` - // except for out-of_band interface (vme/em0/fxp0) + // except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") Gateway *string `pulumi:"gateway"` - Ip *string `pulumi:"ip"` - // used only if `subnet` is not specified in `networks` + // Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + Ip *string `pulumi:"ip"` + // used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") Netmask *string `pulumi:"netmask"` // optional, the network to be used for mgmt Network *string `pulumi:"network"` @@ -20646,10 +20854,11 @@ type GatewaytemplatePortConfigIpConfigArgs struct { Dns pulumi.StringArrayInput `pulumi:"dns"` // except for out-of_band interface (vme/em0/fxp0) DnsSuffixes pulumi.StringArrayInput `pulumi:"dnsSuffixes"` - // except for out-of_band interface (vme/em0/fxp0) + // except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") Gateway pulumi.StringPtrInput `pulumi:"gateway"` - Ip pulumi.StringPtrInput `pulumi:"ip"` - // used only if `subnet` is not specified in `networks` + // Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + Ip pulumi.StringPtrInput `pulumi:"ip"` + // used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") Netmask pulumi.StringPtrInput `pulumi:"netmask"` // optional, the network to be used for mgmt Network pulumi.StringPtrInput `pulumi:"network"` @@ -20750,16 +20959,17 @@ func (o GatewaytemplatePortConfigIpConfigOutput) DnsSuffixes() pulumi.StringArra return o.ApplyT(func(v GatewaytemplatePortConfigIpConfig) []string { return v.DnsSuffixes }).(pulumi.StringArrayOutput) } -// except for out-of_band interface (vme/em0/fxp0) +// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") func (o GatewaytemplatePortConfigIpConfigOutput) Gateway() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfigIpConfig) *string { return v.Gateway }).(pulumi.StringPtrOutput) } +// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") func (o GatewaytemplatePortConfigIpConfigOutput) Ip() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfigIpConfig) *string { return v.Ip }).(pulumi.StringPtrOutput) } -// used only if `subnet` is not specified in `networks` +// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") func (o GatewaytemplatePortConfigIpConfigOutput) Netmask() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplatePortConfigIpConfig) *string { return v.Netmask }).(pulumi.StringPtrOutput) } @@ -20833,7 +21043,7 @@ func (o GatewaytemplatePortConfigIpConfigPtrOutput) DnsSuffixes() pulumi.StringA }).(pulumi.StringArrayOutput) } -// except for out-of_band interface (vme/em0/fxp0) +// except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") func (o GatewaytemplatePortConfigIpConfigPtrOutput) Gateway() pulumi.StringPtrOutput { return o.ApplyT(func(v *GatewaytemplatePortConfigIpConfig) *string { if v == nil { @@ -20843,6 +21053,7 @@ func (o GatewaytemplatePortConfigIpConfigPtrOutput) Gateway() pulumi.StringPtrOu }).(pulumi.StringPtrOutput) } +// Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") func (o GatewaytemplatePortConfigIpConfigPtrOutput) Ip() pulumi.StringPtrOutput { return o.ApplyT(func(v *GatewaytemplatePortConfigIpConfig) *string { if v == nil { @@ -20852,7 +21063,7 @@ func (o GatewaytemplatePortConfigIpConfigPtrOutput) Ip() pulumi.StringPtrOutput }).(pulumi.StringPtrOutput) } -// used only if `subnet` is not specified in `networks` +// used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") func (o GatewaytemplatePortConfigIpConfigPtrOutput) Netmask() pulumi.StringPtrOutput { return o.ApplyT(func(v *GatewaytemplatePortConfigIpConfig) *string { if v == nil { @@ -20913,10 +21124,11 @@ func (o GatewaytemplatePortConfigIpConfigPtrOutput) Type() pulumi.StringPtrOutpu } type GatewaytemplatePortConfigTrafficShaping struct { - // percentages for differet class of traffic: high / medium / low / best-effort - // sum must be equal to 100 + // percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 ClassPercentages []int `pulumi:"classPercentages"` Enabled *bool `pulumi:"enabled"` + // Interface Transmit Cap in kbps + MaxTxKbps *int `pulumi:"maxTxKbps"` } // GatewaytemplatePortConfigTrafficShapingInput is an input type that accepts GatewaytemplatePortConfigTrafficShapingArgs and GatewaytemplatePortConfigTrafficShapingOutput values. @@ -20931,10 +21143,11 @@ type GatewaytemplatePortConfigTrafficShapingInput interface { } type GatewaytemplatePortConfigTrafficShapingArgs struct { - // percentages for differet class of traffic: high / medium / low / best-effort - // sum must be equal to 100 + // percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 ClassPercentages pulumi.IntArrayInput `pulumi:"classPercentages"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` + // Interface Transmit Cap in kbps + MaxTxKbps pulumi.IntPtrInput `pulumi:"maxTxKbps"` } func (GatewaytemplatePortConfigTrafficShapingArgs) ElementType() reflect.Type { @@ -21014,8 +21227,7 @@ func (o GatewaytemplatePortConfigTrafficShapingOutput) ToGatewaytemplatePortConf }).(GatewaytemplatePortConfigTrafficShapingPtrOutput) } -// percentages for differet class of traffic: high / medium / low / best-effort -// sum must be equal to 100 +// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 func (o GatewaytemplatePortConfigTrafficShapingOutput) ClassPercentages() pulumi.IntArrayOutput { return o.ApplyT(func(v GatewaytemplatePortConfigTrafficShaping) []int { return v.ClassPercentages }).(pulumi.IntArrayOutput) } @@ -21024,6 +21236,11 @@ func (o GatewaytemplatePortConfigTrafficShapingOutput) Enabled() pulumi.BoolPtrO return o.ApplyT(func(v GatewaytemplatePortConfigTrafficShaping) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } +// Interface Transmit Cap in kbps +func (o GatewaytemplatePortConfigTrafficShapingOutput) MaxTxKbps() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewaytemplatePortConfigTrafficShaping) *int { return v.MaxTxKbps }).(pulumi.IntPtrOutput) +} + type GatewaytemplatePortConfigTrafficShapingPtrOutput struct{ *pulumi.OutputState } func (GatewaytemplatePortConfigTrafficShapingPtrOutput) ElementType() reflect.Type { @@ -21048,8 +21265,7 @@ func (o GatewaytemplatePortConfigTrafficShapingPtrOutput) Elem() Gatewaytemplate }).(GatewaytemplatePortConfigTrafficShapingOutput) } -// percentages for differet class of traffic: high / medium / low / best-effort -// sum must be equal to 100 +// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 func (o GatewaytemplatePortConfigTrafficShapingPtrOutput) ClassPercentages() pulumi.IntArrayOutput { return o.ApplyT(func(v *GatewaytemplatePortConfigTrafficShaping) []int { if v == nil { @@ -21068,6 +21284,16 @@ func (o GatewaytemplatePortConfigTrafficShapingPtrOutput) Enabled() pulumi.BoolP }).(pulumi.BoolPtrOutput) } +// Interface Transmit Cap in kbps +func (o GatewaytemplatePortConfigTrafficShapingPtrOutput) MaxTxKbps() pulumi.IntPtrOutput { + return o.ApplyT(func(v *GatewaytemplatePortConfigTrafficShaping) *int { + if v == nil { + return nil + } + return v.MaxTxKbps + }).(pulumi.IntPtrOutput) +} + type GatewaytemplatePortConfigVpnPaths struct { // Only if the VPN `type`==`hubSpoke`. enum: `broadband`, `lte` BfdProfile *string `pulumi:"bfdProfile"` @@ -21210,10 +21436,11 @@ func (o GatewaytemplatePortConfigVpnPathsMapOutput) MapIndex(k pulumi.StringInpu } type GatewaytemplatePortConfigVpnPathsTrafficShaping struct { - // percentages for differet class of traffic: high / medium / low / best-effort - // sum must be equal to 100 + // percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 ClassPercentages []int `pulumi:"classPercentages"` Enabled *bool `pulumi:"enabled"` + // Interface Transmit Cap in kbps + MaxTxKbps *int `pulumi:"maxTxKbps"` } // GatewaytemplatePortConfigVpnPathsTrafficShapingInput is an input type that accepts GatewaytemplatePortConfigVpnPathsTrafficShapingArgs and GatewaytemplatePortConfigVpnPathsTrafficShapingOutput values. @@ -21228,10 +21455,11 @@ type GatewaytemplatePortConfigVpnPathsTrafficShapingInput interface { } type GatewaytemplatePortConfigVpnPathsTrafficShapingArgs struct { - // percentages for differet class of traffic: high / medium / low / best-effort - // sum must be equal to 100 + // percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 ClassPercentages pulumi.IntArrayInput `pulumi:"classPercentages"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` + // Interface Transmit Cap in kbps + MaxTxKbps pulumi.IntPtrInput `pulumi:"maxTxKbps"` } func (GatewaytemplatePortConfigVpnPathsTrafficShapingArgs) ElementType() reflect.Type { @@ -21311,8 +21539,7 @@ func (o GatewaytemplatePortConfigVpnPathsTrafficShapingOutput) ToGatewaytemplate }).(GatewaytemplatePortConfigVpnPathsTrafficShapingPtrOutput) } -// percentages for differet class of traffic: high / medium / low / best-effort -// sum must be equal to 100 +// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 func (o GatewaytemplatePortConfigVpnPathsTrafficShapingOutput) ClassPercentages() pulumi.IntArrayOutput { return o.ApplyT(func(v GatewaytemplatePortConfigVpnPathsTrafficShaping) []int { return v.ClassPercentages }).(pulumi.IntArrayOutput) } @@ -21321,6 +21548,11 @@ func (o GatewaytemplatePortConfigVpnPathsTrafficShapingOutput) Enabled() pulumi. return o.ApplyT(func(v GatewaytemplatePortConfigVpnPathsTrafficShaping) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } +// Interface Transmit Cap in kbps +func (o GatewaytemplatePortConfigVpnPathsTrafficShapingOutput) MaxTxKbps() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewaytemplatePortConfigVpnPathsTrafficShaping) *int { return v.MaxTxKbps }).(pulumi.IntPtrOutput) +} + type GatewaytemplatePortConfigVpnPathsTrafficShapingPtrOutput struct{ *pulumi.OutputState } func (GatewaytemplatePortConfigVpnPathsTrafficShapingPtrOutput) ElementType() reflect.Type { @@ -21345,8 +21577,7 @@ func (o GatewaytemplatePortConfigVpnPathsTrafficShapingPtrOutput) Elem() Gateway }).(GatewaytemplatePortConfigVpnPathsTrafficShapingOutput) } -// percentages for differet class of traffic: high / medium / low / best-effort -// sum must be equal to 100 +// percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 func (o GatewaytemplatePortConfigVpnPathsTrafficShapingPtrOutput) ClassPercentages() pulumi.IntArrayOutput { return o.ApplyT(func(v *GatewaytemplatePortConfigVpnPathsTrafficShaping) []int { if v == nil { @@ -21365,6 +21596,16 @@ func (o GatewaytemplatePortConfigVpnPathsTrafficShapingPtrOutput) Enabled() pulu }).(pulumi.BoolPtrOutput) } +// Interface Transmit Cap in kbps +func (o GatewaytemplatePortConfigVpnPathsTrafficShapingPtrOutput) MaxTxKbps() pulumi.IntPtrOutput { + return o.ApplyT(func(v *GatewaytemplatePortConfigVpnPathsTrafficShaping) *int { + if v == nil { + return nil + } + return v.MaxTxKbps + }).(pulumi.IntPtrOutput) +} + type GatewaytemplatePortConfigWanExtraRoutes struct { Via *string `pulumi:"via"` } @@ -21977,6 +22218,8 @@ type GatewaytemplateRoutingPoliciesTermAction struct { AddCommunities []string `pulumi:"addCommunities"` // for SSR, hub decides how VRF routes are leaked on spoke AddTargetVrfs []string `pulumi:"addTargetVrfs"` + // route aggregation + Aggregates []string `pulumi:"aggregates"` // when used as export policy, optional Communities []string `pulumi:"communities"` // when used as export policy, optional. To exclude certain AS @@ -22006,6 +22249,8 @@ type GatewaytemplateRoutingPoliciesTermActionArgs struct { AddCommunities pulumi.StringArrayInput `pulumi:"addCommunities"` // for SSR, hub decides how VRF routes are leaked on spoke AddTargetVrfs pulumi.StringArrayInput `pulumi:"addTargetVrfs"` + // route aggregation + Aggregates pulumi.StringArrayInput `pulumi:"aggregates"` // when used as export policy, optional Communities pulumi.StringArrayInput `pulumi:"communities"` // when used as export policy, optional. To exclude certain AS @@ -22109,6 +22354,11 @@ func (o GatewaytemplateRoutingPoliciesTermActionOutput) AddTargetVrfs() pulumi.S return o.ApplyT(func(v GatewaytemplateRoutingPoliciesTermAction) []string { return v.AddTargetVrfs }).(pulumi.StringArrayOutput) } +// route aggregation +func (o GatewaytemplateRoutingPoliciesTermActionOutput) Aggregates() pulumi.StringArrayOutput { + return o.ApplyT(func(v GatewaytemplateRoutingPoliciesTermAction) []string { return v.Aggregates }).(pulumi.StringArrayOutput) +} + // when used as export policy, optional func (o GatewaytemplateRoutingPoliciesTermActionOutput) Communities() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewaytemplateRoutingPoliciesTermAction) []string { return v.Communities }).(pulumi.StringArrayOutput) @@ -22190,6 +22440,16 @@ func (o GatewaytemplateRoutingPoliciesTermActionPtrOutput) AddTargetVrfs() pulum }).(pulumi.StringArrayOutput) } +// route aggregation +func (o GatewaytemplateRoutingPoliciesTermActionPtrOutput) Aggregates() pulumi.StringArrayOutput { + return o.ApplyT(func(v *GatewaytemplateRoutingPoliciesTermAction) []string { + if v == nil { + return nil + } + return v.Aggregates + }).(pulumi.StringArrayOutput) +} + // when used as export policy, optional func (o GatewaytemplateRoutingPoliciesTermActionPtrOutput) Communities() pulumi.StringArrayOutput { return o.ApplyT(func(v *GatewaytemplateRoutingPoliciesTermAction) []string { @@ -22262,8 +22522,7 @@ type GatewaytemplateRoutingPoliciesTermMatching struct { // overlay-facing criteria (used for bgpConfig where via=vpn) VpnNeighborMacs []string `pulumi:"vpnNeighborMacs"` VpnPathSla *GatewaytemplateRoutingPoliciesTermMatchingVpnPathSla `pulumi:"vpnPathSla"` - // overlay-facing criteria (used for bgpConfig where via=vpn) - // ordered- + // overlay-facing criteria (used for bgpConfig where via=vpn). ordered- VpnPaths []string `pulumi:"vpnPaths"` } @@ -22291,8 +22550,7 @@ type GatewaytemplateRoutingPoliciesTermMatchingArgs struct { // overlay-facing criteria (used for bgpConfig where via=vpn) VpnNeighborMacs pulumi.StringArrayInput `pulumi:"vpnNeighborMacs"` VpnPathSla GatewaytemplateRoutingPoliciesTermMatchingVpnPathSlaPtrInput `pulumi:"vpnPathSla"` - // overlay-facing criteria (used for bgpConfig where via=vpn) - // ordered- + // overlay-facing criteria (used for bgpConfig where via=vpn). ordered- VpnPaths pulumi.StringArrayInput `pulumi:"vpnPaths"` } @@ -22413,8 +22671,7 @@ func (o GatewaytemplateRoutingPoliciesTermMatchingOutput) VpnPathSla() Gatewayte }).(GatewaytemplateRoutingPoliciesTermMatchingVpnPathSlaPtrOutput) } -// overlay-facing criteria (used for bgpConfig where via=vpn) -// ordered- +// overlay-facing criteria (used for bgpConfig where via=vpn). ordered- func (o GatewaytemplateRoutingPoliciesTermMatchingOutput) VpnPaths() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewaytemplateRoutingPoliciesTermMatching) []string { return v.VpnPaths }).(pulumi.StringArrayOutput) } @@ -22519,8 +22776,7 @@ func (o GatewaytemplateRoutingPoliciesTermMatchingPtrOutput) VpnPathSla() Gatewa }).(GatewaytemplateRoutingPoliciesTermMatchingVpnPathSlaPtrOutput) } -// overlay-facing criteria (used for bgpConfig where via=vpn) -// ordered- +// overlay-facing criteria (used for bgpConfig where via=vpn). ordered- func (o GatewaytemplateRoutingPoliciesTermMatchingPtrOutput) VpnPaths() pulumi.StringArrayOutput { return o.ApplyT(func(v *GatewaytemplateRoutingPoliciesTermMatching) []string { if v == nil { @@ -22532,8 +22788,7 @@ func (o GatewaytemplateRoutingPoliciesTermMatchingPtrOutput) VpnPaths() pulumi.S type GatewaytemplateRoutingPoliciesTermMatchingRouteExists struct { Route *string `pulumi:"route"` - // name of the vrf instance - // it can also be the name of the VPN or wan if they + // name of the vrf instance, it can also be the name of the VPN or wan if they VrfName *string `pulumi:"vrfName"` } @@ -22550,8 +22805,7 @@ type GatewaytemplateRoutingPoliciesTermMatchingRouteExistsInput interface { type GatewaytemplateRoutingPoliciesTermMatchingRouteExistsArgs struct { Route pulumi.StringPtrInput `pulumi:"route"` - // name of the vrf instance - // it can also be the name of the VPN or wan if they + // name of the vrf instance, it can also be the name of the VPN or wan if they VrfName pulumi.StringPtrInput `pulumi:"vrfName"` } @@ -22636,8 +22890,7 @@ func (o GatewaytemplateRoutingPoliciesTermMatchingRouteExistsOutput) Route() pul return o.ApplyT(func(v GatewaytemplateRoutingPoliciesTermMatchingRouteExists) *string { return v.Route }).(pulumi.StringPtrOutput) } -// name of the vrf instance -// it can also be the name of the VPN or wan if they +// name of the vrf instance, it can also be the name of the VPN or wan if they func (o GatewaytemplateRoutingPoliciesTermMatchingRouteExistsOutput) VrfName() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateRoutingPoliciesTermMatchingRouteExists) *string { return v.VrfName }).(pulumi.StringPtrOutput) } @@ -22675,8 +22928,7 @@ func (o GatewaytemplateRoutingPoliciesTermMatchingRouteExistsPtrOutput) Route() }).(pulumi.StringPtrOutput) } -// name of the vrf instance -// it can also be the name of the VPN or wan if they +// name of the vrf instance, it can also be the name of the VPN or wan if they func (o GatewaytemplateRoutingPoliciesTermMatchingRouteExistsPtrOutput) VrfName() pulumi.StringPtrOutput { return o.ApplyT(func(v *GatewaytemplateRoutingPoliciesTermMatchingRouteExists) *string { if v == nil { @@ -22860,8 +23112,7 @@ type GatewaytemplateServicePolicy struct { LocalRouting *bool `pulumi:"localRouting"` // Required when `servicepolicyId` is not defined, optional otherwise (override the servicepolicy name) Name *string `pulumi:"name"` - // by default, we derive all paths available and use them - // optionally, you can customize by using `pathPreference` + // by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` PathPreference *string `pulumi:"pathPreference"` // used to link servicepolicy defined at org level and overwrite some attributes ServicepolicyId *string `pulumi:"servicepolicyId"` @@ -22893,8 +23144,7 @@ type GatewaytemplateServicePolicyArgs struct { LocalRouting pulumi.BoolPtrInput `pulumi:"localRouting"` // Required when `servicepolicyId` is not defined, optional otherwise (override the servicepolicy name) Name pulumi.StringPtrInput `pulumi:"name"` - // by default, we derive all paths available and use them - // optionally, you can customize by using `pathPreference` + // by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` PathPreference pulumi.StringPtrInput `pulumi:"pathPreference"` // used to link servicepolicy defined at org level and overwrite some attributes ServicepolicyId pulumi.StringPtrInput `pulumi:"servicepolicyId"` @@ -22983,8 +23233,7 @@ func (o GatewaytemplateServicePolicyOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateServicePolicy) *string { return v.Name }).(pulumi.StringPtrOutput) } -// by default, we derive all paths available and use them -// optionally, you can customize by using `pathPreference` +// by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` func (o GatewaytemplateServicePolicyOutput) PathPreference() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateServicePolicy) *string { return v.PathPreference }).(pulumi.StringPtrOutput) } @@ -23460,39 +23709,35 @@ func (o GatewaytemplateServicePolicyIdpPtrOutput) Profile() pulumi.StringPtrOutp type GatewaytemplateTunnelConfigs struct { AutoProvision *GatewaytemplateTunnelConfigsAutoProvision `pulumi:"autoProvision"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 IkeLifetime *int `pulumi:"ikeLifetime"` - // Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + // Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` IkeMode *string `pulumi:"ikeMode"` - // if `provider`== `custom-ipsec` + // if `provider`==`custom-ipsec` IkeProposals []GatewaytemplateTunnelConfigsIkeProposal `pulumi:"ikeProposals"` - // if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 IpsecLifetime *int `pulumi:"ipsecLifetime"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec` IpsecProposals []GatewaytemplateTunnelConfigsIpsecProposal `pulumi:"ipsecProposals"` - // Only if: - // * `provider`== `zscaler-ipsec` - // * `provider`==`jse-ipsec` - // * `provider`== `custom-ipsec` + // Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` LocalId *string `pulumi:"localId"` - // enum: `active-active`, `active-standby` + // Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` Mode *string `pulumi:"mode"` - // networks reachable via this tunnel - Networks []string `pulumi:"networks"` - Primary *GatewaytemplateTunnelConfigsPrimary `pulumi:"primary"` - // Only if `provider`== `custom-ipsec` + // if `provider`==`custom-ipsec`, networks reachable via this tunnel + Networks []string `pulumi:"networks"` + // Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + Primary *GatewaytemplateTunnelConfigsPrimary `pulumi:"primary"` + // Only if `provider`==`custom-ipsec` Probe *GatewaytemplateTunnelConfigsProbe `pulumi:"probe"` - // Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + // Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` Protocol *string `pulumi:"protocol"` - // enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + // Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` Provider *string `pulumi:"provider"` - // Only if: - // * `provider`== `zscaler-ipsec` - // * `provider`==`jse-ipsec` - // * `provider`== `custom-ipsec` - Psk *string `pulumi:"psk"` + // Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + Psk *string `pulumi:"psk"` + // Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` Secondary *GatewaytemplateTunnelConfigsSecondary `pulumi:"secondary"` - // Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + // Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` Version *string `pulumi:"version"` } @@ -23509,39 +23754,35 @@ type GatewaytemplateTunnelConfigsInput interface { type GatewaytemplateTunnelConfigsArgs struct { AutoProvision GatewaytemplateTunnelConfigsAutoProvisionPtrInput `pulumi:"autoProvision"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 IkeLifetime pulumi.IntPtrInput `pulumi:"ikeLifetime"` - // Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + // Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` IkeMode pulumi.StringPtrInput `pulumi:"ikeMode"` - // if `provider`== `custom-ipsec` + // if `provider`==`custom-ipsec` IkeProposals GatewaytemplateTunnelConfigsIkeProposalArrayInput `pulumi:"ikeProposals"` - // if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 IpsecLifetime pulumi.IntPtrInput `pulumi:"ipsecLifetime"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`custom-ipsec` IpsecProposals GatewaytemplateTunnelConfigsIpsecProposalArrayInput `pulumi:"ipsecProposals"` - // Only if: - // * `provider`== `zscaler-ipsec` - // * `provider`==`jse-ipsec` - // * `provider`== `custom-ipsec` + // Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` LocalId pulumi.StringPtrInput `pulumi:"localId"` - // enum: `active-active`, `active-standby` + // Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` Mode pulumi.StringPtrInput `pulumi:"mode"` - // networks reachable via this tunnel - Networks pulumi.StringArrayInput `pulumi:"networks"` - Primary GatewaytemplateTunnelConfigsPrimaryPtrInput `pulumi:"primary"` - // Only if `provider`== `custom-ipsec` + // if `provider`==`custom-ipsec`, networks reachable via this tunnel + Networks pulumi.StringArrayInput `pulumi:"networks"` + // Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + Primary GatewaytemplateTunnelConfigsPrimaryPtrInput `pulumi:"primary"` + // Only if `provider`==`custom-ipsec` Probe GatewaytemplateTunnelConfigsProbePtrInput `pulumi:"probe"` - // Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + // Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` Protocol pulumi.StringPtrInput `pulumi:"protocol"` - // enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + // Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` Provider pulumi.StringPtrInput `pulumi:"provider"` - // Only if: - // * `provider`== `zscaler-ipsec` - // * `provider`==`jse-ipsec` - // * `provider`== `custom-ipsec` - Psk pulumi.StringPtrInput `pulumi:"psk"` + // Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + Psk pulumi.StringPtrInput `pulumi:"psk"` + // Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` Secondary GatewaytemplateTunnelConfigsSecondaryPtrInput `pulumi:"secondary"` - // Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + // Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` Version pulumi.StringPtrInput `pulumi:"version"` } @@ -23602,83 +23843,79 @@ func (o GatewaytemplateTunnelConfigsOutput) AutoProvision() GatewaytemplateTunne }).(GatewaytemplateTunnelConfigsAutoProvisionPtrOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 func (o GatewaytemplateTunnelConfigsOutput) IkeLifetime() pulumi.IntPtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) *int { return v.IkeLifetime }).(pulumi.IntPtrOutput) } -// Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` +// Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` func (o GatewaytemplateTunnelConfigsOutput) IkeMode() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) *string { return v.IkeMode }).(pulumi.StringPtrOutput) } -// if `provider`== `custom-ipsec` +// if `provider`==`custom-ipsec` func (o GatewaytemplateTunnelConfigsOutput) IkeProposals() GatewaytemplateTunnelConfigsIkeProposalArrayOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) []GatewaytemplateTunnelConfigsIkeProposal { return v.IkeProposals }).(GatewaytemplateTunnelConfigsIkeProposalArrayOutput) } -// if `provider`== `custom-ipsec` +// Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 func (o GatewaytemplateTunnelConfigsOutput) IpsecLifetime() pulumi.IntPtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) *int { return v.IpsecLifetime }).(pulumi.IntPtrOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`custom-ipsec` func (o GatewaytemplateTunnelConfigsOutput) IpsecProposals() GatewaytemplateTunnelConfigsIpsecProposalArrayOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) []GatewaytemplateTunnelConfigsIpsecProposal { return v.IpsecProposals }).(GatewaytemplateTunnelConfigsIpsecProposalArrayOutput) } -// Only if: -// - `provider`== `zscaler-ipsec` -// - `provider`==`jse-ipsec` -// - `provider`== `custom-ipsec` +// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewaytemplateTunnelConfigsOutput) LocalId() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) *string { return v.LocalId }).(pulumi.StringPtrOutput) } -// enum: `active-active`, `active-standby` +// Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` func (o GatewaytemplateTunnelConfigsOutput) Mode() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) *string { return v.Mode }).(pulumi.StringPtrOutput) } -// networks reachable via this tunnel +// if `provider`==`custom-ipsec`, networks reachable via this tunnel func (o GatewaytemplateTunnelConfigsOutput) Networks() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) []string { return v.Networks }).(pulumi.StringArrayOutput) } +// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewaytemplateTunnelConfigsOutput) Primary() GatewaytemplateTunnelConfigsPrimaryPtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) *GatewaytemplateTunnelConfigsPrimary { return v.Primary }).(GatewaytemplateTunnelConfigsPrimaryPtrOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`custom-ipsec` func (o GatewaytemplateTunnelConfigsOutput) Probe() GatewaytemplateTunnelConfigsProbePtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) *GatewaytemplateTunnelConfigsProbe { return v.Probe }).(GatewaytemplateTunnelConfigsProbePtrOutput) } -// Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` +// Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` func (o GatewaytemplateTunnelConfigsOutput) Protocol() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) *string { return v.Protocol }).(pulumi.StringPtrOutput) } -// enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` +// Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` func (o GatewaytemplateTunnelConfigsOutput) Provider() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) *string { return v.Provider }).(pulumi.StringPtrOutput) } -// Only if: -// - `provider`== `zscaler-ipsec` -// - `provider`==`jse-ipsec` -// - `provider`== `custom-ipsec` +// Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewaytemplateTunnelConfigsOutput) Psk() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) *string { return v.Psk }).(pulumi.StringPtrOutput) } +// Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewaytemplateTunnelConfigsOutput) Secondary() GatewaytemplateTunnelConfigsSecondaryPtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) *GatewaytemplateTunnelConfigsSecondary { return v.Secondary }).(GatewaytemplateTunnelConfigsSecondaryPtrOutput) } -// Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` +// Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` func (o GatewaytemplateTunnelConfigsOutput) Version() pulumi.StringPtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigs) *string { return v.Version }).(pulumi.StringPtrOutput) } @@ -23704,9 +23941,14 @@ func (o GatewaytemplateTunnelConfigsMapOutput) MapIndex(k pulumi.StringInput) Ga } type GatewaytemplateTunnelConfigsAutoProvision struct { - Enable *bool `pulumi:"enable"` - Latlng *GatewaytemplateTunnelConfigsAutoProvisionLatlng `pulumi:"latlng"` - Primary *GatewaytemplateTunnelConfigsAutoProvisionPrimary `pulumi:"primary"` + Enable *bool `pulumi:"enable"` + // API override for POP selection + Latlng *GatewaytemplateTunnelConfigsAutoProvisionLatlng `pulumi:"latlng"` + Primary *GatewaytemplateTunnelConfigsAutoProvisionPrimary `pulumi:"primary"` + // enum: `jse-ipsec`, `zscaler-ipsec` + Provider string `pulumi:"provider"` + // API override for POP selection + Region *string `pulumi:"region"` Secondary *GatewaytemplateTunnelConfigsAutoProvisionSecondary `pulumi:"secondary"` } @@ -23722,9 +23964,14 @@ type GatewaytemplateTunnelConfigsAutoProvisionInput interface { } type GatewaytemplateTunnelConfigsAutoProvisionArgs struct { - Enable pulumi.BoolPtrInput `pulumi:"enable"` - Latlng GatewaytemplateTunnelConfigsAutoProvisionLatlngPtrInput `pulumi:"latlng"` - Primary GatewaytemplateTunnelConfigsAutoProvisionPrimaryPtrInput `pulumi:"primary"` + Enable pulumi.BoolPtrInput `pulumi:"enable"` + // API override for POP selection + Latlng GatewaytemplateTunnelConfigsAutoProvisionLatlngPtrInput `pulumi:"latlng"` + Primary GatewaytemplateTunnelConfigsAutoProvisionPrimaryPtrInput `pulumi:"primary"` + // enum: `jse-ipsec`, `zscaler-ipsec` + Provider pulumi.StringInput `pulumi:"provider"` + // API override for POP selection + Region pulumi.StringPtrInput `pulumi:"region"` Secondary GatewaytemplateTunnelConfigsAutoProvisionSecondaryPtrInput `pulumi:"secondary"` } @@ -23809,6 +24056,7 @@ func (o GatewaytemplateTunnelConfigsAutoProvisionOutput) Enable() pulumi.BoolPtr return o.ApplyT(func(v GatewaytemplateTunnelConfigsAutoProvision) *bool { return v.Enable }).(pulumi.BoolPtrOutput) } +// API override for POP selection func (o GatewaytemplateTunnelConfigsAutoProvisionOutput) Latlng() GatewaytemplateTunnelConfigsAutoProvisionLatlngPtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigsAutoProvision) *GatewaytemplateTunnelConfigsAutoProvisionLatlng { return v.Latlng @@ -23821,6 +24069,16 @@ func (o GatewaytemplateTunnelConfigsAutoProvisionOutput) Primary() Gatewaytempla }).(GatewaytemplateTunnelConfigsAutoProvisionPrimaryPtrOutput) } +// enum: `jse-ipsec`, `zscaler-ipsec` +func (o GatewaytemplateTunnelConfigsAutoProvisionOutput) Provider() pulumi.StringOutput { + return o.ApplyT(func(v GatewaytemplateTunnelConfigsAutoProvision) string { return v.Provider }).(pulumi.StringOutput) +} + +// API override for POP selection +func (o GatewaytemplateTunnelConfigsAutoProvisionOutput) Region() pulumi.StringPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelConfigsAutoProvision) *string { return v.Region }).(pulumi.StringPtrOutput) +} + func (o GatewaytemplateTunnelConfigsAutoProvisionOutput) Secondary() GatewaytemplateTunnelConfigsAutoProvisionSecondaryPtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigsAutoProvision) *GatewaytemplateTunnelConfigsAutoProvisionSecondary { return v.Secondary @@ -23860,6 +24118,7 @@ func (o GatewaytemplateTunnelConfigsAutoProvisionPtrOutput) Enable() pulumi.Bool }).(pulumi.BoolPtrOutput) } +// API override for POP selection func (o GatewaytemplateTunnelConfigsAutoProvisionPtrOutput) Latlng() GatewaytemplateTunnelConfigsAutoProvisionLatlngPtrOutput { return o.ApplyT(func(v *GatewaytemplateTunnelConfigsAutoProvision) *GatewaytemplateTunnelConfigsAutoProvisionLatlng { if v == nil { @@ -23878,6 +24137,26 @@ func (o GatewaytemplateTunnelConfigsAutoProvisionPtrOutput) Primary() Gatewaytem }).(GatewaytemplateTunnelConfigsAutoProvisionPrimaryPtrOutput) } +// enum: `jse-ipsec`, `zscaler-ipsec` +func (o GatewaytemplateTunnelConfigsAutoProvisionPtrOutput) Provider() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GatewaytemplateTunnelConfigsAutoProvision) *string { + if v == nil { + return nil + } + return &v.Provider + }).(pulumi.StringPtrOutput) +} + +// API override for POP selection +func (o GatewaytemplateTunnelConfigsAutoProvisionPtrOutput) Region() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GatewaytemplateTunnelConfigsAutoProvision) *string { + if v == nil { + return nil + } + return v.Region + }).(pulumi.StringPtrOutput) +} + func (o GatewaytemplateTunnelConfigsAutoProvisionPtrOutput) Secondary() GatewaytemplateTunnelConfigsAutoProvisionSecondaryPtrOutput { return o.ApplyT(func(v *GatewaytemplateTunnelConfigsAutoProvision) *GatewaytemplateTunnelConfigsAutoProvisionSecondary { if v == nil { @@ -24036,7 +24315,7 @@ func (o GatewaytemplateTunnelConfigsAutoProvisionLatlngPtrOutput) Lng() pulumi.F } type GatewaytemplateTunnelConfigsAutoProvisionPrimary struct { - NumHosts *string `pulumi:"numHosts"` + ProbeIps []string `pulumi:"probeIps"` // optional, only needed if `varsOnly`==`false` WanNames []string `pulumi:"wanNames"` } @@ -24053,7 +24332,7 @@ type GatewaytemplateTunnelConfigsAutoProvisionPrimaryInput interface { } type GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs struct { - NumHosts pulumi.StringPtrInput `pulumi:"numHosts"` + ProbeIps pulumi.StringArrayInput `pulumi:"probeIps"` // optional, only needed if `varsOnly`==`false` WanNames pulumi.StringArrayInput `pulumi:"wanNames"` } @@ -24135,8 +24414,8 @@ func (o GatewaytemplateTunnelConfigsAutoProvisionPrimaryOutput) ToGatewaytemplat }).(GatewaytemplateTunnelConfigsAutoProvisionPrimaryPtrOutput) } -func (o GatewaytemplateTunnelConfigsAutoProvisionPrimaryOutput) NumHosts() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelConfigsAutoProvisionPrimary) *string { return v.NumHosts }).(pulumi.StringPtrOutput) +func (o GatewaytemplateTunnelConfigsAutoProvisionPrimaryOutput) ProbeIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v GatewaytemplateTunnelConfigsAutoProvisionPrimary) []string { return v.ProbeIps }).(pulumi.StringArrayOutput) } // optional, only needed if `varsOnly`==`false` @@ -24168,13 +24447,13 @@ func (o GatewaytemplateTunnelConfigsAutoProvisionPrimaryPtrOutput) Elem() Gatewa }).(GatewaytemplateTunnelConfigsAutoProvisionPrimaryOutput) } -func (o GatewaytemplateTunnelConfigsAutoProvisionPrimaryPtrOutput) NumHosts() pulumi.StringPtrOutput { - return o.ApplyT(func(v *GatewaytemplateTunnelConfigsAutoProvisionPrimary) *string { +func (o GatewaytemplateTunnelConfigsAutoProvisionPrimaryPtrOutput) ProbeIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v *GatewaytemplateTunnelConfigsAutoProvisionPrimary) []string { if v == nil { return nil } - return v.NumHosts - }).(pulumi.StringPtrOutput) + return v.ProbeIps + }).(pulumi.StringArrayOutput) } // optional, only needed if `varsOnly`==`false` @@ -24188,7 +24467,7 @@ func (o GatewaytemplateTunnelConfigsAutoProvisionPrimaryPtrOutput) WanNames() pu } type GatewaytemplateTunnelConfigsAutoProvisionSecondary struct { - NumHosts *string `pulumi:"numHosts"` + ProbeIps []string `pulumi:"probeIps"` // optional, only needed if `varsOnly`==`false` WanNames []string `pulumi:"wanNames"` } @@ -24205,7 +24484,7 @@ type GatewaytemplateTunnelConfigsAutoProvisionSecondaryInput interface { } type GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs struct { - NumHosts pulumi.StringPtrInput `pulumi:"numHosts"` + ProbeIps pulumi.StringArrayInput `pulumi:"probeIps"` // optional, only needed if `varsOnly`==`false` WanNames pulumi.StringArrayInput `pulumi:"wanNames"` } @@ -24287,8 +24566,8 @@ func (o GatewaytemplateTunnelConfigsAutoProvisionSecondaryOutput) ToGatewaytempl }).(GatewaytemplateTunnelConfigsAutoProvisionSecondaryPtrOutput) } -func (o GatewaytemplateTunnelConfigsAutoProvisionSecondaryOutput) NumHosts() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelConfigsAutoProvisionSecondary) *string { return v.NumHosts }).(pulumi.StringPtrOutput) +func (o GatewaytemplateTunnelConfigsAutoProvisionSecondaryOutput) ProbeIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v GatewaytemplateTunnelConfigsAutoProvisionSecondary) []string { return v.ProbeIps }).(pulumi.StringArrayOutput) } // optional, only needed if `varsOnly`==`false` @@ -24320,13 +24599,13 @@ func (o GatewaytemplateTunnelConfigsAutoProvisionSecondaryPtrOutput) Elem() Gate }).(GatewaytemplateTunnelConfigsAutoProvisionSecondaryOutput) } -func (o GatewaytemplateTunnelConfigsAutoProvisionSecondaryPtrOutput) NumHosts() pulumi.StringPtrOutput { - return o.ApplyT(func(v *GatewaytemplateTunnelConfigsAutoProvisionSecondary) *string { +func (o GatewaytemplateTunnelConfigsAutoProvisionSecondaryPtrOutput) ProbeIps() pulumi.StringArrayOutput { + return o.ApplyT(func(v *GatewaytemplateTunnelConfigsAutoProvisionSecondary) []string { if v == nil { return nil } - return v.NumHosts - }).(pulumi.StringPtrOutput) + return v.ProbeIps + }).(pulumi.StringArrayOutput) } // optional, only needed if `varsOnly`==`false` @@ -24487,7 +24766,7 @@ func (o GatewaytemplateTunnelConfigsIkeProposalArrayOutput) Index(i pulumi.IntIn type GatewaytemplateTunnelConfigsIpsecProposal struct { // enum: `md5`, `sha1`, `sha2` AuthAlgo *string `pulumi:"authAlgo"` - // Only if `provider`== `custom-ipsec`. enum: + // Only if `provider`==`custom-ipsec`. enum: // * 1 // * 2 (1024-bit) // * 5 @@ -24517,7 +24796,7 @@ type GatewaytemplateTunnelConfigsIpsecProposalInput interface { type GatewaytemplateTunnelConfigsIpsecProposalArgs struct { // enum: `md5`, `sha1`, `sha2` AuthAlgo pulumi.StringPtrInput `pulumi:"authAlgo"` - // Only if `provider`== `custom-ipsec`. enum: + // Only if `provider`==`custom-ipsec`. enum: // * 1 // * 2 (1024-bit) // * 5 @@ -24589,7 +24868,7 @@ func (o GatewaytemplateTunnelConfigsIpsecProposalOutput) AuthAlgo() pulumi.Strin return o.ApplyT(func(v GatewaytemplateTunnelConfigsIpsecProposal) *string { return v.AuthAlgo }).(pulumi.StringPtrOutput) } -// Only if `provider`== `custom-ipsec`. enum: +// Only if `provider`==`custom-ipsec`. enum: // - 1 // - 2 (1024-bit) // - 5 @@ -24631,12 +24910,10 @@ func (o GatewaytemplateTunnelConfigsIpsecProposalArrayOutput) Index(i pulumi.Int type GatewaytemplateTunnelConfigsPrimary struct { Hosts []string `pulumi:"hosts"` - // Only if: - // * `provider`== `zscaler-gre` - // * `provider`== `custom-gre` + // Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` InternalIps []string `pulumi:"internalIps"` ProbeIps []string `pulumi:"probeIps"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` RemoteIds []string `pulumi:"remoteIds"` WanNames []string `pulumi:"wanNames"` } @@ -24654,12 +24931,10 @@ type GatewaytemplateTunnelConfigsPrimaryInput interface { type GatewaytemplateTunnelConfigsPrimaryArgs struct { Hosts pulumi.StringArrayInput `pulumi:"hosts"` - // Only if: - // * `provider`== `zscaler-gre` - // * `provider`== `custom-gre` + // Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` InternalIps pulumi.StringArrayInput `pulumi:"internalIps"` ProbeIps pulumi.StringArrayInput `pulumi:"probeIps"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` RemoteIds pulumi.StringArrayInput `pulumi:"remoteIds"` WanNames pulumi.StringArrayInput `pulumi:"wanNames"` } @@ -24745,9 +25020,7 @@ func (o GatewaytemplateTunnelConfigsPrimaryOutput) Hosts() pulumi.StringArrayOut return o.ApplyT(func(v GatewaytemplateTunnelConfigsPrimary) []string { return v.Hosts }).(pulumi.StringArrayOutput) } -// Only if: -// - `provider`== `zscaler-gre` -// - `provider`== `custom-gre` +// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` func (o GatewaytemplateTunnelConfigsPrimaryOutput) InternalIps() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigsPrimary) []string { return v.InternalIps }).(pulumi.StringArrayOutput) } @@ -24756,7 +25029,7 @@ func (o GatewaytemplateTunnelConfigsPrimaryOutput) ProbeIps() pulumi.StringArray return o.ApplyT(func(v GatewaytemplateTunnelConfigsPrimary) []string { return v.ProbeIps }).(pulumi.StringArrayOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewaytemplateTunnelConfigsPrimaryOutput) RemoteIds() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigsPrimary) []string { return v.RemoteIds }).(pulumi.StringArrayOutput) } @@ -24798,9 +25071,7 @@ func (o GatewaytemplateTunnelConfigsPrimaryPtrOutput) Hosts() pulumi.StringArray }).(pulumi.StringArrayOutput) } -// Only if: -// - `provider`== `zscaler-gre` -// - `provider`== `custom-gre` +// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` func (o GatewaytemplateTunnelConfigsPrimaryPtrOutput) InternalIps() pulumi.StringArrayOutput { return o.ApplyT(func(v *GatewaytemplateTunnelConfigsPrimary) []string { if v == nil { @@ -24819,7 +25090,7 @@ func (o GatewaytemplateTunnelConfigsPrimaryPtrOutput) ProbeIps() pulumi.StringAr }).(pulumi.StringArrayOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewaytemplateTunnelConfigsPrimaryPtrOutput) RemoteIds() pulumi.StringArrayOutput { return o.ApplyT(func(v *GatewaytemplateTunnelConfigsPrimary) []string { if v == nil { @@ -25034,12 +25305,10 @@ func (o GatewaytemplateTunnelConfigsProbePtrOutput) Type() pulumi.StringPtrOutpu type GatewaytemplateTunnelConfigsSecondary struct { Hosts []string `pulumi:"hosts"` - // Only if: - // * `provider`== `zscaler-gre` - // * `provider`== `custom-gre` + // Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` InternalIps []string `pulumi:"internalIps"` ProbeIps []string `pulumi:"probeIps"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` RemoteIds []string `pulumi:"remoteIds"` WanNames []string `pulumi:"wanNames"` } @@ -25057,12 +25326,10 @@ type GatewaytemplateTunnelConfigsSecondaryInput interface { type GatewaytemplateTunnelConfigsSecondaryArgs struct { Hosts pulumi.StringArrayInput `pulumi:"hosts"` - // Only if: - // * `provider`== `zscaler-gre` - // * `provider`== `custom-gre` + // Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` InternalIps pulumi.StringArrayInput `pulumi:"internalIps"` ProbeIps pulumi.StringArrayInput `pulumi:"probeIps"` - // Only if `provider`== `custom-ipsec` + // Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` RemoteIds pulumi.StringArrayInput `pulumi:"remoteIds"` WanNames pulumi.StringArrayInput `pulumi:"wanNames"` } @@ -25148,9 +25415,7 @@ func (o GatewaytemplateTunnelConfigsSecondaryOutput) Hosts() pulumi.StringArrayO return o.ApplyT(func(v GatewaytemplateTunnelConfigsSecondary) []string { return v.Hosts }).(pulumi.StringArrayOutput) } -// Only if: -// - `provider`== `zscaler-gre` -// - `provider`== `custom-gre` +// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` func (o GatewaytemplateTunnelConfigsSecondaryOutput) InternalIps() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigsSecondary) []string { return v.InternalIps }).(pulumi.StringArrayOutput) } @@ -25159,7 +25424,7 @@ func (o GatewaytemplateTunnelConfigsSecondaryOutput) ProbeIps() pulumi.StringArr return o.ApplyT(func(v GatewaytemplateTunnelConfigsSecondary) []string { return v.ProbeIps }).(pulumi.StringArrayOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewaytemplateTunnelConfigsSecondaryOutput) RemoteIds() pulumi.StringArrayOutput { return o.ApplyT(func(v GatewaytemplateTunnelConfigsSecondary) []string { return v.RemoteIds }).(pulumi.StringArrayOutput) } @@ -25201,9 +25466,7 @@ func (o GatewaytemplateTunnelConfigsSecondaryPtrOutput) Hosts() pulumi.StringArr }).(pulumi.StringArrayOutput) } -// Only if: -// - `provider`== `zscaler-gre` -// - `provider`== `custom-gre` +// Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` func (o GatewaytemplateTunnelConfigsSecondaryPtrOutput) InternalIps() pulumi.StringArrayOutput { return o.ApplyT(func(v *GatewaytemplateTunnelConfigsSecondary) []string { if v == nil { @@ -25222,7 +25485,7 @@ func (o GatewaytemplateTunnelConfigsSecondaryPtrOutput) ProbeIps() pulumi.String }).(pulumi.StringArrayOutput) } -// Only if `provider`== `custom-ipsec` +// Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` func (o GatewaytemplateTunnelConfigsSecondaryPtrOutput) RemoteIds() pulumi.StringArrayOutput { return o.ApplyT(func(v *GatewaytemplateTunnelConfigsSecondary) []string { if v == nil { @@ -25400,8 +25663,9 @@ func (o GatewaytemplateTunnelProviderOptionsPtrOutput) Zscaler() Gatewaytemplate } type GatewaytemplateTunnelProviderOptionsJse struct { - Name *string `pulumi:"name"` - NumUsers *int `pulumi:"numUsers"` + NumUsers *int `pulumi:"numUsers"` + // JSE Organization name + OrgName *string `pulumi:"orgName"` } // GatewaytemplateTunnelProviderOptionsJseInput is an input type that accepts GatewaytemplateTunnelProviderOptionsJseArgs and GatewaytemplateTunnelProviderOptionsJseOutput values. @@ -25416,8 +25680,9 @@ type GatewaytemplateTunnelProviderOptionsJseInput interface { } type GatewaytemplateTunnelProviderOptionsJseArgs struct { - Name pulumi.StringPtrInput `pulumi:"name"` - NumUsers pulumi.IntPtrInput `pulumi:"numUsers"` + NumUsers pulumi.IntPtrInput `pulumi:"numUsers"` + // JSE Organization name + OrgName pulumi.StringPtrInput `pulumi:"orgName"` } func (GatewaytemplateTunnelProviderOptionsJseArgs) ElementType() reflect.Type { @@ -25497,14 +25762,15 @@ func (o GatewaytemplateTunnelProviderOptionsJseOutput) ToGatewaytemplateTunnelPr }).(GatewaytemplateTunnelProviderOptionsJsePtrOutput) } -func (o GatewaytemplateTunnelProviderOptionsJseOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsJse) *string { return v.Name }).(pulumi.StringPtrOutput) -} - func (o GatewaytemplateTunnelProviderOptionsJseOutput) NumUsers() pulumi.IntPtrOutput { return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsJse) *int { return v.NumUsers }).(pulumi.IntPtrOutput) } +// JSE Organization name +func (o GatewaytemplateTunnelProviderOptionsJseOutput) OrgName() pulumi.StringPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsJse) *string { return v.OrgName }).(pulumi.StringPtrOutput) +} + type GatewaytemplateTunnelProviderOptionsJsePtrOutput struct{ *pulumi.OutputState } func (GatewaytemplateTunnelProviderOptionsJsePtrOutput) ElementType() reflect.Type { @@ -25529,44 +25795,55 @@ func (o GatewaytemplateTunnelProviderOptionsJsePtrOutput) Elem() Gatewaytemplate }).(GatewaytemplateTunnelProviderOptionsJseOutput) } -func (o GatewaytemplateTunnelProviderOptionsJsePtrOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsJse) *string { +func (o GatewaytemplateTunnelProviderOptionsJsePtrOutput) NumUsers() pulumi.IntPtrOutput { + return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsJse) *int { if v == nil { return nil } - return v.Name - }).(pulumi.StringPtrOutput) + return v.NumUsers + }).(pulumi.IntPtrOutput) } -func (o GatewaytemplateTunnelProviderOptionsJsePtrOutput) NumUsers() pulumi.IntPtrOutput { - return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsJse) *int { +// JSE Organization name +func (o GatewaytemplateTunnelProviderOptionsJsePtrOutput) OrgName() pulumi.StringPtrOutput { + return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsJse) *string { if v == nil { return nil } - return v.NumUsers - }).(pulumi.IntPtrOutput) + return v.OrgName + }).(pulumi.StringPtrOutput) } type GatewaytemplateTunnelProviderOptionsZscaler struct { - AupAcceptanceRequired *bool `pulumi:"aupAcceptanceRequired"` - // days before AUP is requested again - AupExpire *int `pulumi:"aupExpire"` + AupBlockInternetUntilAccepted *bool `pulumi:"aupBlockInternetUntilAccepted"` + // Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) + AupEnabled *bool `pulumi:"aupEnabled"` // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - AupSslProxy *bool `pulumi:"aupSslProxy"` - // the download bandwidth cap of the link, in Mbps - DownloadMbps *int `pulumi:"downloadMbps"` - // if `useXff`==`true`, display Acceptable Use Policy (AUP) - EnableAup *bool `pulumi:"enableAup"` - // when `enforceAuthentication`==`false`, display caution notification for non-authenticated users - EnableCaution *bool `pulumi:"enableCaution"` - EnforceAuthentication *bool `pulumi:"enforceAuthentication"` - Name *string `pulumi:"name"` - // if `useXff`==`true` + AupForceSslInspection *bool `pulumi:"aupForceSslInspection"` + // Required if `aupEnabled`==`true`. Days before AUP is requested again + AupTimeoutInDays *int `pulumi:"aupTimeoutInDays"` + // Enable this option to enforce user authentication + AuthRequired *bool `pulumi:"authRequired"` + // Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users + CautionEnabled *bool `pulumi:"cautionEnabled"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + DnBandwidth *float64 `pulumi:"dnBandwidth"` + // Required if `surrogate_IP`==`true`, idle Time to Disassociation + IdleTimeInMinutes *int `pulumi:"idleTimeInMinutes"` + // if `true`, enable the firewall control option + OfwEnabled *bool `pulumi:"ofwEnabled"` + // `sub-locations` can be used for specific uses cases to define different configuration based on the user network SubLocations []GatewaytemplateTunnelProviderOptionsZscalerSubLocation `pulumi:"subLocations"` - // the download bandwidth cap of the link, in Mbps - UploadMbps *int `pulumi:"uploadMbps"` + // Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + SurrogateIp *bool `pulumi:"surrogateIp"` + // Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + SurrogateIpEnforcedForKnownBrowsers *bool `pulumi:"surrogateIpEnforcedForKnownBrowsers"` + // Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + SurrogateRefreshTimeInMinutes *int `pulumi:"surrogateRefreshTimeInMinutes"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + UpBandwidth *float64 `pulumi:"upBandwidth"` // location uses proxy chaining to forward traffic - UseXff *bool `pulumi:"useXff"` + XffForwardEnabled *bool `pulumi:"xffForwardEnabled"` } // GatewaytemplateTunnelProviderOptionsZscalerInput is an input type that accepts GatewaytemplateTunnelProviderOptionsZscalerArgs and GatewaytemplateTunnelProviderOptionsZscalerOutput values. @@ -25581,25 +25858,35 @@ type GatewaytemplateTunnelProviderOptionsZscalerInput interface { } type GatewaytemplateTunnelProviderOptionsZscalerArgs struct { - AupAcceptanceRequired pulumi.BoolPtrInput `pulumi:"aupAcceptanceRequired"` - // days before AUP is requested again - AupExpire pulumi.IntPtrInput `pulumi:"aupExpire"` + AupBlockInternetUntilAccepted pulumi.BoolPtrInput `pulumi:"aupBlockInternetUntilAccepted"` + // Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) + AupEnabled pulumi.BoolPtrInput `pulumi:"aupEnabled"` // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - AupSslProxy pulumi.BoolPtrInput `pulumi:"aupSslProxy"` - // the download bandwidth cap of the link, in Mbps - DownloadMbps pulumi.IntPtrInput `pulumi:"downloadMbps"` - // if `useXff`==`true`, display Acceptable Use Policy (AUP) - EnableAup pulumi.BoolPtrInput `pulumi:"enableAup"` - // when `enforceAuthentication`==`false`, display caution notification for non-authenticated users - EnableCaution pulumi.BoolPtrInput `pulumi:"enableCaution"` - EnforceAuthentication pulumi.BoolPtrInput `pulumi:"enforceAuthentication"` - Name pulumi.StringPtrInput `pulumi:"name"` - // if `useXff`==`true` + AupForceSslInspection pulumi.BoolPtrInput `pulumi:"aupForceSslInspection"` + // Required if `aupEnabled`==`true`. Days before AUP is requested again + AupTimeoutInDays pulumi.IntPtrInput `pulumi:"aupTimeoutInDays"` + // Enable this option to enforce user authentication + AuthRequired pulumi.BoolPtrInput `pulumi:"authRequired"` + // Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users + CautionEnabled pulumi.BoolPtrInput `pulumi:"cautionEnabled"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + DnBandwidth pulumi.Float64PtrInput `pulumi:"dnBandwidth"` + // Required if `surrogate_IP`==`true`, idle Time to Disassociation + IdleTimeInMinutes pulumi.IntPtrInput `pulumi:"idleTimeInMinutes"` + // if `true`, enable the firewall control option + OfwEnabled pulumi.BoolPtrInput `pulumi:"ofwEnabled"` + // `sub-locations` can be used for specific uses cases to define different configuration based on the user network SubLocations GatewaytemplateTunnelProviderOptionsZscalerSubLocationArrayInput `pulumi:"subLocations"` - // the download bandwidth cap of the link, in Mbps - UploadMbps pulumi.IntPtrInput `pulumi:"uploadMbps"` + // Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + SurrogateIp pulumi.BoolPtrInput `pulumi:"surrogateIp"` + // Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + SurrogateIpEnforcedForKnownBrowsers pulumi.BoolPtrInput `pulumi:"surrogateIpEnforcedForKnownBrowsers"` + // Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + SurrogateRefreshTimeInMinutes pulumi.IntPtrInput `pulumi:"surrogateRefreshTimeInMinutes"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + UpBandwidth pulumi.Float64PtrInput `pulumi:"upBandwidth"` // location uses proxy chaining to forward traffic - UseXff pulumi.BoolPtrInput `pulumi:"useXff"` + XffForwardEnabled pulumi.BoolPtrInput `pulumi:"xffForwardEnabled"` } func (GatewaytemplateTunnelProviderOptionsZscalerArgs) ElementType() reflect.Type { @@ -25679,58 +25966,82 @@ func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) ToGatewaytemplateTunn }).(GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) } -func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) AupAcceptanceRequired() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { return v.AupAcceptanceRequired }).(pulumi.BoolPtrOutput) +func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) AupBlockInternetUntilAccepted() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { return v.AupBlockInternetUntilAccepted }).(pulumi.BoolPtrOutput) } -// days before AUP is requested again -func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) AupExpire() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *int { return v.AupExpire }).(pulumi.IntPtrOutput) +// Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) +func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) AupEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { return v.AupEnabled }).(pulumi.BoolPtrOutput) } // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser -func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) AupSslProxy() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { return v.AupSslProxy }).(pulumi.BoolPtrOutput) +func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) AupForceSslInspection() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { return v.AupForceSslInspection }).(pulumi.BoolPtrOutput) +} + +// Required if `aupEnabled`==`true`. Days before AUP is requested again +func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) AupTimeoutInDays() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *int { return v.AupTimeoutInDays }).(pulumi.IntPtrOutput) } -// the download bandwidth cap of the link, in Mbps -func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) DownloadMbps() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *int { return v.DownloadMbps }).(pulumi.IntPtrOutput) +// Enable this option to enforce user authentication +func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) AuthRequired() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { return v.AuthRequired }).(pulumi.BoolPtrOutput) } -// if `useXff`==`true`, display Acceptable Use Policy (AUP) -func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) EnableAup() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { return v.EnableAup }).(pulumi.BoolPtrOutput) +// Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users +func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) CautionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { return v.CautionEnabled }).(pulumi.BoolPtrOutput) } -// when `enforceAuthentication`==`false`, display caution notification for non-authenticated users -func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) EnableCaution() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { return v.EnableCaution }).(pulumi.BoolPtrOutput) +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) DnBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *float64 { return v.DnBandwidth }).(pulumi.Float64PtrOutput) } -func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) EnforceAuthentication() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { return v.EnforceAuthentication }).(pulumi.BoolPtrOutput) +// Required if `surrogate_IP`==`true`, idle Time to Disassociation +func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) IdleTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *int { return v.IdleTimeInMinutes }).(pulumi.IntPtrOutput) } -func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *string { return v.Name }).(pulumi.StringPtrOutput) +// if `true`, enable the firewall control option +func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) OfwEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { return v.OfwEnabled }).(pulumi.BoolPtrOutput) } -// if `useXff`==`true` +// `sub-locations` can be used for specific uses cases to define different configuration based on the user network func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) SubLocations() GatewaytemplateTunnelProviderOptionsZscalerSubLocationArrayOutput { return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) []GatewaytemplateTunnelProviderOptionsZscalerSubLocation { return v.SubLocations }).(GatewaytemplateTunnelProviderOptionsZscalerSubLocationArrayOutput) } -// the download bandwidth cap of the link, in Mbps -func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) UploadMbps() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *int { return v.UploadMbps }).(pulumi.IntPtrOutput) +// Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies +func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) SurrogateIp() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { return v.SurrogateIp }).(pulumi.BoolPtrOutput) +} + +// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers +func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) SurrogateIpEnforcedForKnownBrowsers() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { + return v.SurrogateIpEnforcedForKnownBrowsers + }).(pulumi.BoolPtrOutput) +} + +// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy +func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) SurrogateRefreshTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *int { return v.SurrogateRefreshTimeInMinutes }).(pulumi.IntPtrOutput) +} + +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) UpBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *float64 { return v.UpBandwidth }).(pulumi.Float64PtrOutput) } // location uses proxy chaining to forward traffic -func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) UseXff() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { return v.UseXff }).(pulumi.BoolPtrOutput) +func (o GatewaytemplateTunnelProviderOptionsZscalerOutput) XffForwardEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscaler) *bool { return v.XffForwardEnabled }).(pulumi.BoolPtrOutput) } type GatewaytemplateTunnelProviderOptionsZscalerPtrOutput struct{ *pulumi.OutputState } @@ -25757,84 +26068,96 @@ func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) Elem() Gatewaytemp }).(GatewaytemplateTunnelProviderOptionsZscalerOutput) } -func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) AupAcceptanceRequired() pulumi.BoolPtrOutput { +func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) AupBlockInternetUntilAccepted() pulumi.BoolPtrOutput { return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.AupAcceptanceRequired + return v.AupBlockInternetUntilAccepted }).(pulumi.BoolPtrOutput) } -// days before AUP is requested again -func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) AupExpire() pulumi.IntPtrOutput { - return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *int { +// Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) +func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) AupEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.AupExpire - }).(pulumi.IntPtrOutput) + return v.AupEnabled + }).(pulumi.BoolPtrOutput) } // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser -func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) AupSslProxy() pulumi.BoolPtrOutput { +func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) AupForceSslInspection() pulumi.BoolPtrOutput { return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.AupSslProxy + return v.AupForceSslInspection }).(pulumi.BoolPtrOutput) } -// the download bandwidth cap of the link, in Mbps -func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) DownloadMbps() pulumi.IntPtrOutput { +// Required if `aupEnabled`==`true`. Days before AUP is requested again +func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) AupTimeoutInDays() pulumi.IntPtrOutput { return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *int { if v == nil { return nil } - return v.DownloadMbps + return v.AupTimeoutInDays }).(pulumi.IntPtrOutput) } -// if `useXff`==`true`, display Acceptable Use Policy (AUP) -func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) EnableAup() pulumi.BoolPtrOutput { +// Enable this option to enforce user authentication +func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) AuthRequired() pulumi.BoolPtrOutput { return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.EnableAup + return v.AuthRequired }).(pulumi.BoolPtrOutput) } -// when `enforceAuthentication`==`false`, display caution notification for non-authenticated users -func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) EnableCaution() pulumi.BoolPtrOutput { +// Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users +func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) CautionEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.EnableCaution + return v.CautionEnabled }).(pulumi.BoolPtrOutput) } -func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) EnforceAuthentication() pulumi.BoolPtrOutput { - return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *bool { +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) DnBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *float64 { if v == nil { return nil } - return v.EnforceAuthentication - }).(pulumi.BoolPtrOutput) + return v.DnBandwidth + }).(pulumi.Float64PtrOutput) } -func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *string { +// Required if `surrogate_IP`==`true`, idle Time to Disassociation +func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) IdleTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *int { if v == nil { return nil } - return v.Name - }).(pulumi.StringPtrOutput) + return v.IdleTimeInMinutes + }).(pulumi.IntPtrOutput) +} + +// if `true`, enable the firewall control option +func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) OfwEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *bool { + if v == nil { + return nil + } + return v.OfwEnabled + }).(pulumi.BoolPtrOutput) } -// if `useXff`==`true` +// `sub-locations` can be used for specific uses cases to define different configuration based on the user network func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) SubLocations() GatewaytemplateTunnelProviderOptionsZscalerSubLocationArrayOutput { return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) []GatewaytemplateTunnelProviderOptionsZscalerSubLocation { if v == nil { @@ -25844,42 +26167,84 @@ func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) SubLocations() Gat }).(GatewaytemplateTunnelProviderOptionsZscalerSubLocationArrayOutput) } -// the download bandwidth cap of the link, in Mbps -func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) UploadMbps() pulumi.IntPtrOutput { +// Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies +func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) SurrogateIp() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *bool { + if v == nil { + return nil + } + return v.SurrogateIp + }).(pulumi.BoolPtrOutput) +} + +// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers +func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) SurrogateIpEnforcedForKnownBrowsers() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *bool { + if v == nil { + return nil + } + return v.SurrogateIpEnforcedForKnownBrowsers + }).(pulumi.BoolPtrOutput) +} + +// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy +func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) SurrogateRefreshTimeInMinutes() pulumi.IntPtrOutput { return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *int { if v == nil { return nil } - return v.UploadMbps + return v.SurrogateRefreshTimeInMinutes }).(pulumi.IntPtrOutput) } +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) UpBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *float64 { + if v == nil { + return nil + } + return v.UpBandwidth + }).(pulumi.Float64PtrOutput) +} + // location uses proxy chaining to forward traffic -func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) UseXff() pulumi.BoolPtrOutput { +func (o GatewaytemplateTunnelProviderOptionsZscalerPtrOutput) XffForwardEnabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v *GatewaytemplateTunnelProviderOptionsZscaler) *bool { if v == nil { return nil } - return v.UseXff + return v.XffForwardEnabled }).(pulumi.BoolPtrOutput) } type GatewaytemplateTunnelProviderOptionsZscalerSubLocation struct { - AupAcceptanceRequired *bool `pulumi:"aupAcceptanceRequired"` - // days before AUP is requested again - AupExpire *int `pulumi:"aupExpire"` + AupBlockInternetUntilAccepted *bool `pulumi:"aupBlockInternetUntilAccepted"` + // Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) + AupEnabled *bool `pulumi:"aupEnabled"` // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - AupSslProxy *bool `pulumi:"aupSslProxy"` - // the download bandwidth cap of the link, in Mbps - DownloadMbps *int `pulumi:"downloadMbps"` - // if `useXff`==`true`, display Acceptable Use Policy (AUP) - EnableAup *bool `pulumi:"enableAup"` - // when `enforceAuthentication`==`false`, display caution notification for non-authenticated users - EnableCaution *bool `pulumi:"enableCaution"` - EnforceAuthentication *bool `pulumi:"enforceAuthentication"` - Subnets []string `pulumi:"subnets"` - // the download bandwidth cap of the link, in Mbps - UploadMbps *int `pulumi:"uploadMbps"` + AupForceSslInspection *bool `pulumi:"aupForceSslInspection"` + // Required if `aupEnabled`==`true`. Days before AUP is requested again + AupTimeoutInDays *int `pulumi:"aupTimeoutInDays"` + // Enable this option to authenticate users + AuthRequired *bool `pulumi:"authRequired"` + // Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users + CautionEnabled *bool `pulumi:"cautionEnabled"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + DnBandwidth *float64 `pulumi:"dnBandwidth"` + // Required if `surrogate_IP`==`true`, idle Time to Disassociation + IdleTimeInMinutes *int `pulumi:"idleTimeInMinutes"` + // Network name + Name *string `pulumi:"name"` + // if `true`, enable the firewall control option + OfwEnabled *bool `pulumi:"ofwEnabled"` + // Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + SurrogateIp *bool `pulumi:"surrogateIp"` + // Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + SurrogateIpEnforcedForKnownBrowsers *bool `pulumi:"surrogateIpEnforcedForKnownBrowsers"` + // Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + SurrogateRefreshTimeInMinutes *int `pulumi:"surrogateRefreshTimeInMinutes"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + UpBandwidth *float64 `pulumi:"upBandwidth"` } // GatewaytemplateTunnelProviderOptionsZscalerSubLocationInput is an input type that accepts GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs and GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput values. @@ -25894,21 +26259,33 @@ type GatewaytemplateTunnelProviderOptionsZscalerSubLocationInput interface { } type GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs struct { - AupAcceptanceRequired pulumi.BoolPtrInput `pulumi:"aupAcceptanceRequired"` - // days before AUP is requested again - AupExpire pulumi.IntPtrInput `pulumi:"aupExpire"` + AupBlockInternetUntilAccepted pulumi.BoolPtrInput `pulumi:"aupBlockInternetUntilAccepted"` + // Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) + AupEnabled pulumi.BoolPtrInput `pulumi:"aupEnabled"` // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - AupSslProxy pulumi.BoolPtrInput `pulumi:"aupSslProxy"` - // the download bandwidth cap of the link, in Mbps - DownloadMbps pulumi.IntPtrInput `pulumi:"downloadMbps"` - // if `useXff`==`true`, display Acceptable Use Policy (AUP) - EnableAup pulumi.BoolPtrInput `pulumi:"enableAup"` - // when `enforceAuthentication`==`false`, display caution notification for non-authenticated users - EnableCaution pulumi.BoolPtrInput `pulumi:"enableCaution"` - EnforceAuthentication pulumi.BoolPtrInput `pulumi:"enforceAuthentication"` - Subnets pulumi.StringArrayInput `pulumi:"subnets"` - // the download bandwidth cap of the link, in Mbps - UploadMbps pulumi.IntPtrInput `pulumi:"uploadMbps"` + AupForceSslInspection pulumi.BoolPtrInput `pulumi:"aupForceSslInspection"` + // Required if `aupEnabled`==`true`. Days before AUP is requested again + AupTimeoutInDays pulumi.IntPtrInput `pulumi:"aupTimeoutInDays"` + // Enable this option to authenticate users + AuthRequired pulumi.BoolPtrInput `pulumi:"authRequired"` + // Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users + CautionEnabled pulumi.BoolPtrInput `pulumi:"cautionEnabled"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + DnBandwidth pulumi.Float64PtrInput `pulumi:"dnBandwidth"` + // Required if `surrogate_IP`==`true`, idle Time to Disassociation + IdleTimeInMinutes pulumi.IntPtrInput `pulumi:"idleTimeInMinutes"` + // Network name + Name pulumi.StringPtrInput `pulumi:"name"` + // if `true`, enable the firewall control option + OfwEnabled pulumi.BoolPtrInput `pulumi:"ofwEnabled"` + // Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + SurrogateIp pulumi.BoolPtrInput `pulumi:"surrogateIp"` + // Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + SurrogateIpEnforcedForKnownBrowsers pulumi.BoolPtrInput `pulumi:"surrogateIpEnforcedForKnownBrowsers"` + // Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + SurrogateRefreshTimeInMinutes pulumi.IntPtrInput `pulumi:"surrogateRefreshTimeInMinutes"` + // the download bandwidth cap of the link, in Mbps. Disabled if not set + UpBandwidth pulumi.Float64PtrInput `pulumi:"upBandwidth"` } func (GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs) ElementType() reflect.Type { @@ -25962,46 +26339,79 @@ func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) ToGatewayt return o } -func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) AupAcceptanceRequired() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *bool { return v.AupAcceptanceRequired }).(pulumi.BoolPtrOutput) +func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) AupBlockInternetUntilAccepted() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *bool { + return v.AupBlockInternetUntilAccepted + }).(pulumi.BoolPtrOutput) } -// days before AUP is requested again -func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) AupExpire() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *int { return v.AupExpire }).(pulumi.IntPtrOutput) +// Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) +func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) AupEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *bool { return v.AupEnabled }).(pulumi.BoolPtrOutput) } // proxy HTTPs traffic, requiring Zscaler cert to be installed in browser -func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) AupSslProxy() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *bool { return v.AupSslProxy }).(pulumi.BoolPtrOutput) +func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) AupForceSslInspection() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *bool { return v.AupForceSslInspection }).(pulumi.BoolPtrOutput) +} + +// Required if `aupEnabled`==`true`. Days before AUP is requested again +func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) AupTimeoutInDays() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *int { return v.AupTimeoutInDays }).(pulumi.IntPtrOutput) +} + +// Enable this option to authenticate users +func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) AuthRequired() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *bool { return v.AuthRequired }).(pulumi.BoolPtrOutput) } -// the download bandwidth cap of the link, in Mbps -func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) DownloadMbps() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *int { return v.DownloadMbps }).(pulumi.IntPtrOutput) +// Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users +func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) CautionEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *bool { return v.CautionEnabled }).(pulumi.BoolPtrOutput) } -// if `useXff`==`true`, display Acceptable Use Policy (AUP) -func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) EnableAup() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *bool { return v.EnableAup }).(pulumi.BoolPtrOutput) +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) DnBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *float64 { return v.DnBandwidth }).(pulumi.Float64PtrOutput) } -// when `enforceAuthentication`==`false`, display caution notification for non-authenticated users -func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) EnableCaution() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *bool { return v.EnableCaution }).(pulumi.BoolPtrOutput) +// Required if `surrogate_IP`==`true`, idle Time to Disassociation +func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) IdleTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *int { return v.IdleTimeInMinutes }).(pulumi.IntPtrOutput) } -func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) EnforceAuthentication() pulumi.BoolPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *bool { return v.EnforceAuthentication }).(pulumi.BoolPtrOutput) +// Network name +func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) Name() pulumi.StringPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *string { return v.Name }).(pulumi.StringPtrOutput) } -func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) Subnets() pulumi.StringArrayOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) []string { return v.Subnets }).(pulumi.StringArrayOutput) +// if `true`, enable the firewall control option +func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) OfwEnabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *bool { return v.OfwEnabled }).(pulumi.BoolPtrOutput) } -// the download bandwidth cap of the link, in Mbps -func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) UploadMbps() pulumi.IntPtrOutput { - return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *int { return v.UploadMbps }).(pulumi.IntPtrOutput) +// Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies +func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) SurrogateIp() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *bool { return v.SurrogateIp }).(pulumi.BoolPtrOutput) +} + +// Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers +func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) SurrogateIpEnforcedForKnownBrowsers() pulumi.BoolPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *bool { + return v.SurrogateIpEnforcedForKnownBrowsers + }).(pulumi.BoolPtrOutput) +} + +// Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy +func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) SurrogateRefreshTimeInMinutes() pulumi.IntPtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *int { + return v.SurrogateRefreshTimeInMinutes + }).(pulumi.IntPtrOutput) +} + +// the download bandwidth cap of the link, in Mbps. Disabled if not set +func (o GatewaytemplateTunnelProviderOptionsZscalerSubLocationOutput) UpBandwidth() pulumi.Float64PtrOutput { + return o.ApplyT(func(v GatewaytemplateTunnelProviderOptionsZscalerSubLocation) *float64 { return v.UpBandwidth }).(pulumi.Float64PtrOutput) } type GatewaytemplateTunnelProviderOptionsZscalerSubLocationArrayOutput struct{ *pulumi.OutputState } @@ -27505,12 +27915,12 @@ func (o NetworkInternalAccessPtrOutput) Enabled() pulumi.BoolPtrOutput { type NetworkInternetAccess struct { CreateSimpleServicePolicy *bool `pulumi:"createSimpleServicePolicy"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat map[string]NetworkInternetAccessDestinationNat `pulumi:"destinationNat"` Enabled *bool `pulumi:"enabled"` // by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies Restricted *bool `pulumi:"restricted"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat map[string]NetworkInternetAccessStaticNat `pulumi:"staticNat"` } @@ -27527,12 +27937,12 @@ type NetworkInternetAccessInput interface { type NetworkInternetAccessArgs struct { CreateSimpleServicePolicy pulumi.BoolPtrInput `pulumi:"createSimpleServicePolicy"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat NetworkInternetAccessDestinationNatMapInput `pulumi:"destinationNat"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` // by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies Restricted pulumi.BoolPtrInput `pulumi:"restricted"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat NetworkInternetAccessStaticNatMapInput `pulumi:"staticNat"` } @@ -27617,7 +28027,7 @@ func (o NetworkInternetAccessOutput) CreateSimpleServicePolicy() pulumi.BoolPtrO return o.ApplyT(func(v NetworkInternetAccess) *bool { return v.CreateSimpleServicePolicy }).(pulumi.BoolPtrOutput) } -// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") +// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined func (o NetworkInternetAccessOutput) DestinationNat() NetworkInternetAccessDestinationNatMapOutput { return o.ApplyT(func(v NetworkInternetAccess) map[string]NetworkInternetAccessDestinationNat { return v.DestinationNat }).(NetworkInternetAccessDestinationNatMapOutput) } @@ -27631,7 +28041,7 @@ func (o NetworkInternetAccessOutput) Restricted() pulumi.BoolPtrOutput { return o.ApplyT(func(v NetworkInternetAccess) *bool { return v.Restricted }).(pulumi.BoolPtrOutput) } -// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") +// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") func (o NetworkInternetAccessOutput) StaticNat() NetworkInternetAccessStaticNatMapOutput { return o.ApplyT(func(v NetworkInternetAccess) map[string]NetworkInternetAccessStaticNat { return v.StaticNat }).(NetworkInternetAccessStaticNatMapOutput) } @@ -27669,7 +28079,7 @@ func (o NetworkInternetAccessPtrOutput) CreateSimpleServicePolicy() pulumi.BoolP }).(pulumi.BoolPtrOutput) } -// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") +// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined func (o NetworkInternetAccessPtrOutput) DestinationNat() NetworkInternetAccessDestinationNatMapOutput { return o.ApplyT(func(v *NetworkInternetAccess) map[string]NetworkInternetAccessDestinationNat { if v == nil { @@ -27698,7 +28108,7 @@ func (o NetworkInternetAccessPtrOutput) Restricted() pulumi.BoolPtrOutput { }).(pulumi.BoolPtrOutput) } -// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") +// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") func (o NetworkInternetAccessPtrOutput) StaticNat() NetworkInternetAccessStaticNatMapOutput { return o.ApplyT(func(v *NetworkInternetAccess) map[string]NetworkInternetAccessStaticNat { if v == nil { @@ -27709,9 +28119,13 @@ func (o NetworkInternetAccessPtrOutput) StaticNat() NetworkInternetAccessStaticN } type NetworkInternetAccessDestinationNat struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp *string `pulumi:"internalIp"` Name *string `pulumi:"name"` - Port *int `pulumi:"port"` + // The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + Port *string `pulumi:"port"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + WanName *string `pulumi:"wanName"` } // NetworkInternetAccessDestinationNatInput is an input type that accepts NetworkInternetAccessDestinationNatArgs and NetworkInternetAccessDestinationNatOutput values. @@ -27726,9 +28140,13 @@ type NetworkInternetAccessDestinationNatInput interface { } type NetworkInternetAccessDestinationNatArgs struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` Name pulumi.StringPtrInput `pulumi:"name"` - Port pulumi.IntPtrInput `pulumi:"port"` + // The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + Port pulumi.StringPtrInput `pulumi:"port"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + WanName pulumi.StringPtrInput `pulumi:"wanName"` } func (NetworkInternetAccessDestinationNatArgs) ElementType() reflect.Type { @@ -27782,6 +28200,7 @@ func (o NetworkInternetAccessDestinationNatOutput) ToNetworkInternetAccessDestin return o } +// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") func (o NetworkInternetAccessDestinationNatOutput) InternalIp() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworkInternetAccessDestinationNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) } @@ -27790,8 +28209,14 @@ func (o NetworkInternetAccessDestinationNatOutput) Name() pulumi.StringPtrOutput return o.ApplyT(func(v NetworkInternetAccessDestinationNat) *string { return v.Name }).(pulumi.StringPtrOutput) } -func (o NetworkInternetAccessDestinationNatOutput) Port() pulumi.IntPtrOutput { - return o.ApplyT(func(v NetworkInternetAccessDestinationNat) *int { return v.Port }).(pulumi.IntPtrOutput) +// The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") +func (o NetworkInternetAccessDestinationNatOutput) Port() pulumi.StringPtrOutput { + return o.ApplyT(func(v NetworkInternetAccessDestinationNat) *string { return v.Port }).(pulumi.StringPtrOutput) +} + +// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity +func (o NetworkInternetAccessDestinationNatOutput) WanName() pulumi.StringPtrOutput { + return o.ApplyT(func(v NetworkInternetAccessDestinationNat) *string { return v.WanName }).(pulumi.StringPtrOutput) } type NetworkInternetAccessDestinationNatMapOutput struct{ *pulumi.OutputState } @@ -27815,9 +28240,10 @@ func (o NetworkInternetAccessDestinationNatMapOutput) MapIndex(k pulumi.StringIn } type NetworkInternetAccessStaticNat struct { - InternalIp *string `pulumi:"internalIp"` - Name *string `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp string `pulumi:"internalIp"` + Name string `pulumi:"name"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") WanName *string `pulumi:"wanName"` } @@ -27833,9 +28259,10 @@ type NetworkInternetAccessStaticNatInput interface { } type NetworkInternetAccessStaticNatArgs struct { - InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` - Name pulumi.StringPtrInput `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp pulumi.StringInput `pulumi:"internalIp"` + Name pulumi.StringInput `pulumi:"name"` + // SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") WanName pulumi.StringPtrInput `pulumi:"wanName"` } @@ -27890,15 +28317,16 @@ func (o NetworkInternetAccessStaticNatOutput) ToNetworkInternetAccessStaticNatOu return o } -func (o NetworkInternetAccessStaticNatOutput) InternalIp() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkInternetAccessStaticNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) +// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") +func (o NetworkInternetAccessStaticNatOutput) InternalIp() pulumi.StringOutput { + return o.ApplyT(func(v NetworkInternetAccessStaticNat) string { return v.InternalIp }).(pulumi.StringOutput) } -func (o NetworkInternetAccessStaticNatOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkInternetAccessStaticNat) *string { return v.Name }).(pulumi.StringPtrOutput) +func (o NetworkInternetAccessStaticNatOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v NetworkInternetAccessStaticNat) string { return v.Name }).(pulumi.StringOutput) } -// If not set, we configure the nat policies against all WAN ports for simplicity +// SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") func (o NetworkInternetAccessStaticNatOutput) WanName() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworkInternetAccessStaticNat) *string { return v.WanName }).(pulumi.StringPtrOutput) } @@ -27923,6 +28351,274 @@ func (o NetworkInternetAccessStaticNatMapOutput) MapIndex(k pulumi.StringInput) }).(NetworkInternetAccessStaticNatOutput) } +type NetworkMulticast struct { + // if the network will only be the soruce of the multicast traffic, IGMP can be disabled + DisableIgmp *bool `pulumi:"disableIgmp"` + Enabled *bool `pulumi:"enabled"` + // Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + Groups map[string]NetworkMulticastGroups `pulumi:"groups"` +} + +// NetworkMulticastInput is an input type that accepts NetworkMulticastArgs and NetworkMulticastOutput values. +// You can construct a concrete instance of `NetworkMulticastInput` via: +// +// NetworkMulticastArgs{...} +type NetworkMulticastInput interface { + pulumi.Input + + ToNetworkMulticastOutput() NetworkMulticastOutput + ToNetworkMulticastOutputWithContext(context.Context) NetworkMulticastOutput +} + +type NetworkMulticastArgs struct { + // if the network will only be the soruce of the multicast traffic, IGMP can be disabled + DisableIgmp pulumi.BoolPtrInput `pulumi:"disableIgmp"` + Enabled pulumi.BoolPtrInput `pulumi:"enabled"` + // Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + Groups NetworkMulticastGroupsMapInput `pulumi:"groups"` +} + +func (NetworkMulticastArgs) ElementType() reflect.Type { + return reflect.TypeOf((*NetworkMulticast)(nil)).Elem() +} + +func (i NetworkMulticastArgs) ToNetworkMulticastOutput() NetworkMulticastOutput { + return i.ToNetworkMulticastOutputWithContext(context.Background()) +} + +func (i NetworkMulticastArgs) ToNetworkMulticastOutputWithContext(ctx context.Context) NetworkMulticastOutput { + return pulumi.ToOutputWithContext(ctx, i).(NetworkMulticastOutput) +} + +func (i NetworkMulticastArgs) ToNetworkMulticastPtrOutput() NetworkMulticastPtrOutput { + return i.ToNetworkMulticastPtrOutputWithContext(context.Background()) +} + +func (i NetworkMulticastArgs) ToNetworkMulticastPtrOutputWithContext(ctx context.Context) NetworkMulticastPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(NetworkMulticastOutput).ToNetworkMulticastPtrOutputWithContext(ctx) +} + +// NetworkMulticastPtrInput is an input type that accepts NetworkMulticastArgs, NetworkMulticastPtr and NetworkMulticastPtrOutput values. +// You can construct a concrete instance of `NetworkMulticastPtrInput` via: +// +// NetworkMulticastArgs{...} +// +// or: +// +// nil +type NetworkMulticastPtrInput interface { + pulumi.Input + + ToNetworkMulticastPtrOutput() NetworkMulticastPtrOutput + ToNetworkMulticastPtrOutputWithContext(context.Context) NetworkMulticastPtrOutput +} + +type networkMulticastPtrType NetworkMulticastArgs + +func NetworkMulticastPtr(v *NetworkMulticastArgs) NetworkMulticastPtrInput { + return (*networkMulticastPtrType)(v) +} + +func (*networkMulticastPtrType) ElementType() reflect.Type { + return reflect.TypeOf((**NetworkMulticast)(nil)).Elem() +} + +func (i *networkMulticastPtrType) ToNetworkMulticastPtrOutput() NetworkMulticastPtrOutput { + return i.ToNetworkMulticastPtrOutputWithContext(context.Background()) +} + +func (i *networkMulticastPtrType) ToNetworkMulticastPtrOutputWithContext(ctx context.Context) NetworkMulticastPtrOutput { + return pulumi.ToOutputWithContext(ctx, i).(NetworkMulticastPtrOutput) +} + +type NetworkMulticastOutput struct{ *pulumi.OutputState } + +func (NetworkMulticastOutput) ElementType() reflect.Type { + return reflect.TypeOf((*NetworkMulticast)(nil)).Elem() +} + +func (o NetworkMulticastOutput) ToNetworkMulticastOutput() NetworkMulticastOutput { + return o +} + +func (o NetworkMulticastOutput) ToNetworkMulticastOutputWithContext(ctx context.Context) NetworkMulticastOutput { + return o +} + +func (o NetworkMulticastOutput) ToNetworkMulticastPtrOutput() NetworkMulticastPtrOutput { + return o.ToNetworkMulticastPtrOutputWithContext(context.Background()) +} + +func (o NetworkMulticastOutput) ToNetworkMulticastPtrOutputWithContext(ctx context.Context) NetworkMulticastPtrOutput { + return o.ApplyTWithContext(ctx, func(_ context.Context, v NetworkMulticast) *NetworkMulticast { + return &v + }).(NetworkMulticastPtrOutput) +} + +// if the network will only be the soruce of the multicast traffic, IGMP can be disabled +func (o NetworkMulticastOutput) DisableIgmp() pulumi.BoolPtrOutput { + return o.ApplyT(func(v NetworkMulticast) *bool { return v.DisableIgmp }).(pulumi.BoolPtrOutput) +} + +func (o NetworkMulticastOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v NetworkMulticast) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) +} + +// Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") +func (o NetworkMulticastOutput) Groups() NetworkMulticastGroupsMapOutput { + return o.ApplyT(func(v NetworkMulticast) map[string]NetworkMulticastGroups { return v.Groups }).(NetworkMulticastGroupsMapOutput) +} + +type NetworkMulticastPtrOutput struct{ *pulumi.OutputState } + +func (NetworkMulticastPtrOutput) ElementType() reflect.Type { + return reflect.TypeOf((**NetworkMulticast)(nil)).Elem() +} + +func (o NetworkMulticastPtrOutput) ToNetworkMulticastPtrOutput() NetworkMulticastPtrOutput { + return o +} + +func (o NetworkMulticastPtrOutput) ToNetworkMulticastPtrOutputWithContext(ctx context.Context) NetworkMulticastPtrOutput { + return o +} + +func (o NetworkMulticastPtrOutput) Elem() NetworkMulticastOutput { + return o.ApplyT(func(v *NetworkMulticast) NetworkMulticast { + if v != nil { + return *v + } + var ret NetworkMulticast + return ret + }).(NetworkMulticastOutput) +} + +// if the network will only be the soruce of the multicast traffic, IGMP can be disabled +func (o NetworkMulticastPtrOutput) DisableIgmp() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *NetworkMulticast) *bool { + if v == nil { + return nil + } + return v.DisableIgmp + }).(pulumi.BoolPtrOutput) +} + +func (o NetworkMulticastPtrOutput) Enabled() pulumi.BoolPtrOutput { + return o.ApplyT(func(v *NetworkMulticast) *bool { + if v == nil { + return nil + } + return v.Enabled + }).(pulumi.BoolPtrOutput) +} + +// Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") +func (o NetworkMulticastPtrOutput) Groups() NetworkMulticastGroupsMapOutput { + return o.ApplyT(func(v *NetworkMulticast) map[string]NetworkMulticastGroups { + if v == nil { + return nil + } + return v.Groups + }).(NetworkMulticastGroupsMapOutput) +} + +type NetworkMulticastGroups struct { + // RP (rendezvous point) IP Address + RpIp *string `pulumi:"rpIp"` +} + +// NetworkMulticastGroupsInput is an input type that accepts NetworkMulticastGroupsArgs and NetworkMulticastGroupsOutput values. +// You can construct a concrete instance of `NetworkMulticastGroupsInput` via: +// +// NetworkMulticastGroupsArgs{...} +type NetworkMulticastGroupsInput interface { + pulumi.Input + + ToNetworkMulticastGroupsOutput() NetworkMulticastGroupsOutput + ToNetworkMulticastGroupsOutputWithContext(context.Context) NetworkMulticastGroupsOutput +} + +type NetworkMulticastGroupsArgs struct { + // RP (rendezvous point) IP Address + RpIp pulumi.StringPtrInput `pulumi:"rpIp"` +} + +func (NetworkMulticastGroupsArgs) ElementType() reflect.Type { + return reflect.TypeOf((*NetworkMulticastGroups)(nil)).Elem() +} + +func (i NetworkMulticastGroupsArgs) ToNetworkMulticastGroupsOutput() NetworkMulticastGroupsOutput { + return i.ToNetworkMulticastGroupsOutputWithContext(context.Background()) +} + +func (i NetworkMulticastGroupsArgs) ToNetworkMulticastGroupsOutputWithContext(ctx context.Context) NetworkMulticastGroupsOutput { + return pulumi.ToOutputWithContext(ctx, i).(NetworkMulticastGroupsOutput) +} + +// NetworkMulticastGroupsMapInput is an input type that accepts NetworkMulticastGroupsMap and NetworkMulticastGroupsMapOutput values. +// You can construct a concrete instance of `NetworkMulticastGroupsMapInput` via: +// +// NetworkMulticastGroupsMap{ "key": NetworkMulticastGroupsArgs{...} } +type NetworkMulticastGroupsMapInput interface { + pulumi.Input + + ToNetworkMulticastGroupsMapOutput() NetworkMulticastGroupsMapOutput + ToNetworkMulticastGroupsMapOutputWithContext(context.Context) NetworkMulticastGroupsMapOutput +} + +type NetworkMulticastGroupsMap map[string]NetworkMulticastGroupsInput + +func (NetworkMulticastGroupsMap) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]NetworkMulticastGroups)(nil)).Elem() +} + +func (i NetworkMulticastGroupsMap) ToNetworkMulticastGroupsMapOutput() NetworkMulticastGroupsMapOutput { + return i.ToNetworkMulticastGroupsMapOutputWithContext(context.Background()) +} + +func (i NetworkMulticastGroupsMap) ToNetworkMulticastGroupsMapOutputWithContext(ctx context.Context) NetworkMulticastGroupsMapOutput { + return pulumi.ToOutputWithContext(ctx, i).(NetworkMulticastGroupsMapOutput) +} + +type NetworkMulticastGroupsOutput struct{ *pulumi.OutputState } + +func (NetworkMulticastGroupsOutput) ElementType() reflect.Type { + return reflect.TypeOf((*NetworkMulticastGroups)(nil)).Elem() +} + +func (o NetworkMulticastGroupsOutput) ToNetworkMulticastGroupsOutput() NetworkMulticastGroupsOutput { + return o +} + +func (o NetworkMulticastGroupsOutput) ToNetworkMulticastGroupsOutputWithContext(ctx context.Context) NetworkMulticastGroupsOutput { + return o +} + +// RP (rendezvous point) IP Address +func (o NetworkMulticastGroupsOutput) RpIp() pulumi.StringPtrOutput { + return o.ApplyT(func(v NetworkMulticastGroups) *string { return v.RpIp }).(pulumi.StringPtrOutput) +} + +type NetworkMulticastGroupsMapOutput struct{ *pulumi.OutputState } + +func (NetworkMulticastGroupsMapOutput) ElementType() reflect.Type { + return reflect.TypeOf((*map[string]NetworkMulticastGroups)(nil)).Elem() +} + +func (o NetworkMulticastGroupsMapOutput) ToNetworkMulticastGroupsMapOutput() NetworkMulticastGroupsMapOutput { + return o +} + +func (o NetworkMulticastGroupsMapOutput) ToNetworkMulticastGroupsMapOutputWithContext(ctx context.Context) NetworkMulticastGroupsMapOutput { + return o +} + +func (o NetworkMulticastGroupsMapOutput) MapIndex(k pulumi.StringInput) NetworkMulticastGroupsOutput { + return pulumi.All(o, k).ApplyT(func(vs []interface{}) NetworkMulticastGroups { + return vs[0].(map[string]NetworkMulticastGroups)[vs[1].(string)] + }).(NetworkMulticastGroupsOutput) +} + type NetworkTenants struct { Addresses []string `pulumi:"addresses"` } @@ -28022,7 +28718,7 @@ type NetworkVpnAccess struct { AdvertisedSubnet *string `pulumi:"advertisedSubnet"` // whether to allow ping from vpn into this routed network AllowPing *bool `pulumi:"allowPing"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat map[string]NetworkVpnAccessDestinationNat `pulumi:"destinationNat"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub NatPool *string `pulumi:"natPool"` @@ -28040,7 +28736,7 @@ type NetworkVpnAccess struct { Routed *bool `pulumi:"routed"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub SourceNat *NetworkVpnAccessSourceNat `pulumi:"sourceNat"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat map[string]NetworkVpnAccessStaticNat `pulumi:"staticNat"` // toward overlay // how HUB should deal with routes it received from Spokes @@ -28067,7 +28763,7 @@ type NetworkVpnAccessArgs struct { AdvertisedSubnet pulumi.StringPtrInput `pulumi:"advertisedSubnet"` // whether to allow ping from vpn into this routed network AllowPing pulumi.BoolPtrInput `pulumi:"allowPing"` - // Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + // Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined DestinationNat NetworkVpnAccessDestinationNatMapInput `pulumi:"destinationNat"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub NatPool pulumi.StringPtrInput `pulumi:"natPool"` @@ -28085,7 +28781,7 @@ type NetworkVpnAccessArgs struct { Routed pulumi.BoolPtrInput `pulumi:"routed"` // if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub SourceNat NetworkVpnAccessSourceNatPtrInput `pulumi:"sourceNat"` - // Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + // Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") StaticNat NetworkVpnAccessStaticNatMapInput `pulumi:"staticNat"` // toward overlay // how HUB should deal with routes it received from Spokes @@ -28157,7 +28853,7 @@ func (o NetworkVpnAccessOutput) AllowPing() pulumi.BoolPtrOutput { return o.ApplyT(func(v NetworkVpnAccess) *bool { return v.AllowPing }).(pulumi.BoolPtrOutput) } -// Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") +// Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined func (o NetworkVpnAccessOutput) DestinationNat() NetworkVpnAccessDestinationNatMapOutput { return o.ApplyT(func(v NetworkVpnAccess) map[string]NetworkVpnAccessDestinationNat { return v.DestinationNat }).(NetworkVpnAccessDestinationNatMapOutput) } @@ -28199,7 +28895,7 @@ func (o NetworkVpnAccessOutput) SourceNat() NetworkVpnAccessSourceNatPtrOutput { return o.ApplyT(func(v NetworkVpnAccess) *NetworkVpnAccessSourceNat { return v.SourceNat }).(NetworkVpnAccessSourceNatPtrOutput) } -// Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") +// Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") func (o NetworkVpnAccessOutput) StaticNat() NetworkVpnAccessStaticNatMapOutput { return o.ApplyT(func(v NetworkVpnAccess) map[string]NetworkVpnAccessStaticNat { return v.StaticNat }).(NetworkVpnAccessStaticNatMapOutput) } @@ -28241,9 +28937,10 @@ func (o NetworkVpnAccessMapOutput) MapIndex(k pulumi.StringInput) NetworkVpnAcce } type NetworkVpnAccessDestinationNat struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp *string `pulumi:"internalIp"` Name *string `pulumi:"name"` - Port *int `pulumi:"port"` + Port *string `pulumi:"port"` } // NetworkVpnAccessDestinationNatInput is an input type that accepts NetworkVpnAccessDestinationNatArgs and NetworkVpnAccessDestinationNatOutput values. @@ -28258,9 +28955,10 @@ type NetworkVpnAccessDestinationNatInput interface { } type NetworkVpnAccessDestinationNatArgs struct { + // The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` Name pulumi.StringPtrInput `pulumi:"name"` - Port pulumi.IntPtrInput `pulumi:"port"` + Port pulumi.StringPtrInput `pulumi:"port"` } func (NetworkVpnAccessDestinationNatArgs) ElementType() reflect.Type { @@ -28314,6 +29012,7 @@ func (o NetworkVpnAccessDestinationNatOutput) ToNetworkVpnAccessDestinationNatOu return o } +// The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") func (o NetworkVpnAccessDestinationNatOutput) InternalIp() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworkVpnAccessDestinationNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) } @@ -28322,8 +29021,8 @@ func (o NetworkVpnAccessDestinationNatOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworkVpnAccessDestinationNat) *string { return v.Name }).(pulumi.StringPtrOutput) } -func (o NetworkVpnAccessDestinationNatOutput) Port() pulumi.IntPtrOutput { - return o.ApplyT(func(v NetworkVpnAccessDestinationNat) *int { return v.Port }).(pulumi.IntPtrOutput) +func (o NetworkVpnAccessDestinationNatOutput) Port() pulumi.StringPtrOutput { + return o.ApplyT(func(v NetworkVpnAccessDestinationNat) *string { return v.Port }).(pulumi.StringPtrOutput) } type NetworkVpnAccessDestinationNatMapOutput struct{ *pulumi.OutputState } @@ -28480,10 +29179,9 @@ func (o NetworkVpnAccessSourceNatPtrOutput) ExternalIp() pulumi.StringPtrOutput } type NetworkVpnAccessStaticNat struct { - InternalIp *string `pulumi:"internalIp"` - Name *string `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity - WanName *string `pulumi:"wanName"` + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp string `pulumi:"internalIp"` + Name string `pulumi:"name"` } // NetworkVpnAccessStaticNatInput is an input type that accepts NetworkVpnAccessStaticNatArgs and NetworkVpnAccessStaticNatOutput values. @@ -28498,10 +29196,9 @@ type NetworkVpnAccessStaticNatInput interface { } type NetworkVpnAccessStaticNatArgs struct { - InternalIp pulumi.StringPtrInput `pulumi:"internalIp"` - Name pulumi.StringPtrInput `pulumi:"name"` - // If not set, we configure the nat policies against all WAN ports for simplicity - WanName pulumi.StringPtrInput `pulumi:"wanName"` + // The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + InternalIp pulumi.StringInput `pulumi:"internalIp"` + Name pulumi.StringInput `pulumi:"name"` } func (NetworkVpnAccessStaticNatArgs) ElementType() reflect.Type { @@ -28555,17 +29252,13 @@ func (o NetworkVpnAccessStaticNatOutput) ToNetworkVpnAccessStaticNatOutputWithCo return o } -func (o NetworkVpnAccessStaticNatOutput) InternalIp() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkVpnAccessStaticNat) *string { return v.InternalIp }).(pulumi.StringPtrOutput) +// The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") +func (o NetworkVpnAccessStaticNatOutput) InternalIp() pulumi.StringOutput { + return o.ApplyT(func(v NetworkVpnAccessStaticNat) string { return v.InternalIp }).(pulumi.StringOutput) } -func (o NetworkVpnAccessStaticNatOutput) Name() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkVpnAccessStaticNat) *string { return v.Name }).(pulumi.StringPtrOutput) -} - -// If not set, we configure the nat policies against all WAN ports for simplicity -func (o NetworkVpnAccessStaticNatOutput) WanName() pulumi.StringPtrOutput { - return o.ApplyT(func(v NetworkVpnAccessStaticNat) *string { return v.WanName }).(pulumi.StringPtrOutput) +func (o NetworkVpnAccessStaticNatOutput) Name() pulumi.StringOutput { + return o.ApplyT(func(v NetworkVpnAccessStaticNat) string { return v.Name }).(pulumi.StringOutput) } type NetworkVpnAccessStaticNatMapOutput struct{ *pulumi.OutputState } @@ -28589,12 +29282,14 @@ func (o NetworkVpnAccessStaticNatMapOutput) MapIndex(k pulumi.StringInput) Netwo } type NetworktemplateAclPolicy struct { - // - for GBP-based policy, all srcTags and dstTags have to be gbp-based - // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + // ACL Policy Actions: + // - for GBP-based policy, all srcTags and dstTags have to be gbp-based + // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to Actions []NetworktemplateAclPolicyAction `pulumi:"actions"` Name *string `pulumi:"name"` - // - for GBP-based policy, all srcTags and dstTags have to be gbp-based - // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + // ACL Policy Source Tags: + // - for GBP-based policy, all srcTags and dstTags have to be gbp-based + // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to SrcTags []string `pulumi:"srcTags"` } @@ -28610,12 +29305,14 @@ type NetworktemplateAclPolicyInput interface { } type NetworktemplateAclPolicyArgs struct { - // - for GBP-based policy, all srcTags and dstTags have to be gbp-based - // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + // ACL Policy Actions: + // - for GBP-based policy, all srcTags and dstTags have to be gbp-based + // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to Actions NetworktemplateAclPolicyActionArrayInput `pulumi:"actions"` Name pulumi.StringPtrInput `pulumi:"name"` - // - for GBP-based policy, all srcTags and dstTags have to be gbp-based - // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + // ACL Policy Source Tags: + // - for GBP-based policy, all srcTags and dstTags have to be gbp-based + // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to SrcTags pulumi.StringArrayInput `pulumi:"srcTags"` } @@ -28670,8 +29367,9 @@ func (o NetworktemplateAclPolicyOutput) ToNetworktemplateAclPolicyOutputWithCont return o } -// - for GBP-based policy, all srcTags and dstTags have to be gbp-based -// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to +// ACL Policy Actions: +// - for GBP-based policy, all srcTags and dstTags have to be gbp-based +// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to func (o NetworktemplateAclPolicyOutput) Actions() NetworktemplateAclPolicyActionArrayOutput { return o.ApplyT(func(v NetworktemplateAclPolicy) []NetworktemplateAclPolicyAction { return v.Actions }).(NetworktemplateAclPolicyActionArrayOutput) } @@ -28680,8 +29378,9 @@ func (o NetworktemplateAclPolicyOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateAclPolicy) *string { return v.Name }).(pulumi.StringPtrOutput) } -// - for GBP-based policy, all srcTags and dstTags have to be gbp-based -// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to +// ACL Policy Source Tags: +// - for GBP-based policy, all srcTags and dstTags have to be gbp-based +// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to func (o NetworktemplateAclPolicyOutput) SrcTags() pulumi.StringArrayOutput { return o.ApplyT(func(v NetworktemplateAclPolicy) []string { return v.SrcTags }).(pulumi.StringArrayOutput) } @@ -28811,9 +29510,9 @@ func (o NetworktemplateAclPolicyActionArrayOutput) Index(i pulumi.IntInput) Netw type NetworktemplateAclTags struct { // required if - // - `type`==`dynamicGbp` (gbp_tag received from RADIUS) - // - `type`==`gbpResource` - // - `type`==`staticGbp` (applying gbp tag against matching conditions) + // - `type`==`dynamicGbp` (gbp_tag received from RADIUS) + // - `type`==`gbpResource` + // - `type`==`staticGbp` (applying gbp tag against matching conditions) GbpTag *int `pulumi:"gbpTag"` // required if // - `type`==`mac` @@ -28831,8 +29530,7 @@ type NetworktemplateAclTags struct { // * `type`==`staticGbp` // if from matching radius_group RadiusGroup *string `pulumi:"radiusGroup"` - // if `type`==`resource` or `type`==`gbpResource` - // empty means unrestricted, i.e. any + // if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any Specs []NetworktemplateAclTagsSpec `pulumi:"specs"` // if // - `type`==`subnet` @@ -28865,9 +29563,9 @@ type NetworktemplateAclTagsInput interface { type NetworktemplateAclTagsArgs struct { // required if - // - `type`==`dynamicGbp` (gbp_tag received from RADIUS) - // - `type`==`gbpResource` - // - `type`==`staticGbp` (applying gbp tag against matching conditions) + // - `type`==`dynamicGbp` (gbp_tag received from RADIUS) + // - `type`==`gbpResource` + // - `type`==`staticGbp` (applying gbp tag against matching conditions) GbpTag pulumi.IntPtrInput `pulumi:"gbpTag"` // required if // - `type`==`mac` @@ -28885,8 +29583,7 @@ type NetworktemplateAclTagsArgs struct { // * `type`==`staticGbp` // if from matching radius_group RadiusGroup pulumi.StringPtrInput `pulumi:"radiusGroup"` - // if `type`==`resource` or `type`==`gbpResource` - // empty means unrestricted, i.e. any + // if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any Specs NetworktemplateAclTagsSpecArrayInput `pulumi:"specs"` // if // - `type`==`subnet` @@ -28958,9 +29655,9 @@ func (o NetworktemplateAclTagsOutput) ToNetworktemplateAclTagsOutputWithContext( } // required if -// - `type`==`dynamicGbp` (gbp_tag received from RADIUS) -// - `type`==`gbpResource` -// - `type`==`staticGbp` (applying gbp tag against matching conditions) +// - `type`==`dynamicGbp` (gbp_tag received from RADIUS) +// - `type`==`gbpResource` +// - `type`==`staticGbp` (applying gbp tag against matching conditions) func (o NetworktemplateAclTagsOutput) GbpTag() pulumi.IntPtrOutput { return o.ApplyT(func(v NetworktemplateAclTags) *int { return v.GbpTag }).(pulumi.IntPtrOutput) } @@ -28990,8 +29687,7 @@ func (o NetworktemplateAclTagsOutput) RadiusGroup() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateAclTags) *string { return v.RadiusGroup }).(pulumi.StringPtrOutput) } -// if `type`==`resource` or `type`==`gbpResource` -// empty means unrestricted, i.e. any +// if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any func (o NetworktemplateAclTagsOutput) Specs() NetworktemplateAclTagsSpecArrayOutput { return o.ApplyT(func(v NetworktemplateAclTags) []NetworktemplateAclTagsSpec { return v.Specs }).(NetworktemplateAclTagsSpecArrayOutput) } @@ -29041,7 +29737,7 @@ func (o NetworktemplateAclTagsMapOutput) MapIndex(k pulumi.StringInput) Networkt type NetworktemplateAclTagsSpec struct { // matched dst port, "0" means any PortRange *string `pulumi:"portRange"` - // `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 + // `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 Protocol *string `pulumi:"protocol"` } @@ -29059,7 +29755,7 @@ type NetworktemplateAclTagsSpecInput interface { type NetworktemplateAclTagsSpecArgs struct { // matched dst port, "0" means any PortRange pulumi.StringPtrInput `pulumi:"portRange"` - // `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 + // `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 Protocol pulumi.StringPtrInput `pulumi:"protocol"` } @@ -29119,7 +29815,7 @@ func (o NetworktemplateAclTagsSpecOutput) PortRange() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateAclTagsSpec) *string { return v.PortRange }).(pulumi.StringPtrOutput) } -// `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 +// `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 func (o NetworktemplateAclTagsSpecOutput) Protocol() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateAclTagsSpec) *string { return v.Protocol }).(pulumi.StringPtrOutput) } @@ -29966,8 +30662,7 @@ type NetworktemplateNetworks struct { Gateway *string `pulumi:"gateway"` // only required for EVPN-VXLAN networks, IPv6 Virtual Gateway Gateway6 *string `pulumi:"gateway6"` - // whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) - // NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set + // whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set Isolation *bool `pulumi:"isolation"` IsolationVlanId *string `pulumi:"isolationVlanId"` // optional for pure switching, required when L3 / routing features are used @@ -29993,8 +30688,7 @@ type NetworktemplateNetworksArgs struct { Gateway pulumi.StringPtrInput `pulumi:"gateway"` // only required for EVPN-VXLAN networks, IPv6 Virtual Gateway Gateway6 pulumi.StringPtrInput `pulumi:"gateway6"` - // whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) - // NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set + // whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set Isolation pulumi.BoolPtrInput `pulumi:"isolation"` IsolationVlanId pulumi.StringPtrInput `pulumi:"isolationVlanId"` // optional for pure switching, required when L3 / routing features are used @@ -30065,8 +30759,7 @@ func (o NetworktemplateNetworksOutput) Gateway6() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateNetworks) *string { return v.Gateway6 }).(pulumi.StringPtrOutput) } -// whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) -// NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set +// whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set func (o NetworktemplateNetworksOutput) Isolation() pulumi.BoolPtrOutput { return o.ApplyT(func(v NetworktemplateNetworks) *bool { return v.Isolation }).(pulumi.BoolPtrOutput) } @@ -30532,9 +31225,7 @@ func (o NetworktemplatePortMirroringMapOutput) MapIndex(k pulumi.StringInput) Ne type NetworktemplatePortUsages struct { // Only if `mode`==`trunk` whether to trunk all network/vlans AllNetworks *bool `pulumi:"allNetworks"` - // 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. - // 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. + // 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. 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. AllowDhcpd *bool `pulumi:"allowDhcpd"` // Only if `mode`!=`dynamic` AllowMultipleSupplicants *bool `pulumi:"allowMultipleSupplicants"` @@ -30558,8 +31249,7 @@ type NetworktemplatePortUsages struct { EnableQos *bool `pulumi:"enableQos"` // Only if `mode`!=`dynamic` and `portAuth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) GuestNetwork *string `pulumi:"guestNetwork"` - // Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks - // NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + // Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together InterSwitchLink *bool `pulumi:"interSwitchLink"` // Only if `mode`!=`dynamic` and `enableMacAuth`==`true` MacAuthOnly *bool `pulumi:"macAuthOnly"` @@ -30595,8 +31285,7 @@ type NetworktemplatePortUsages struct { ServerRejectNetwork *string `pulumi:"serverRejectNetwork"` // Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto` Speed *string `pulumi:"speed"` - // Switch storm control - // Only if `mode`!=`dynamic` + // Switch storm control. Only if `mode`!=`dynamic` StormControl *NetworktemplatePortUsagesStormControl `pulumi:"stormControl"` // Only if `mode`!=`dynamic` when enabled, the port is not expected to receive BPDU frames StpEdge *bool `pulumi:"stpEdge"` @@ -30624,9 +31313,7 @@ type NetworktemplatePortUsagesInput interface { type NetworktemplatePortUsagesArgs struct { // Only if `mode`==`trunk` whether to trunk all network/vlans AllNetworks pulumi.BoolPtrInput `pulumi:"allNetworks"` - // 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. - // 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. + // 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. 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. AllowDhcpd pulumi.BoolPtrInput `pulumi:"allowDhcpd"` // Only if `mode`!=`dynamic` AllowMultipleSupplicants pulumi.BoolPtrInput `pulumi:"allowMultipleSupplicants"` @@ -30650,8 +31337,7 @@ type NetworktemplatePortUsagesArgs struct { EnableQos pulumi.BoolPtrInput `pulumi:"enableQos"` // Only if `mode`!=`dynamic` and `portAuth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) GuestNetwork pulumi.StringPtrInput `pulumi:"guestNetwork"` - // Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks - // NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + // Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together InterSwitchLink pulumi.BoolPtrInput `pulumi:"interSwitchLink"` // Only if `mode`!=`dynamic` and `enableMacAuth`==`true` MacAuthOnly pulumi.BoolPtrInput `pulumi:"macAuthOnly"` @@ -30687,8 +31373,7 @@ type NetworktemplatePortUsagesArgs struct { ServerRejectNetwork pulumi.StringPtrInput `pulumi:"serverRejectNetwork"` // Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto` Speed pulumi.StringPtrInput `pulumi:"speed"` - // Switch storm control - // Only if `mode`!=`dynamic` + // Switch storm control. Only if `mode`!=`dynamic` StormControl NetworktemplatePortUsagesStormControlPtrInput `pulumi:"stormControl"` // Only if `mode`!=`dynamic` when enabled, the port is not expected to receive BPDU frames StpEdge pulumi.BoolPtrInput `pulumi:"stpEdge"` @@ -30758,9 +31443,7 @@ func (o NetworktemplatePortUsagesOutput) AllNetworks() pulumi.BoolPtrOutput { return o.ApplyT(func(v NetworktemplatePortUsages) *bool { return v.AllNetworks }).(pulumi.BoolPtrOutput) } -// 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. -// 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. +// 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. 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. func (o NetworktemplatePortUsagesOutput) AllowDhcpd() pulumi.BoolPtrOutput { return o.ApplyT(func(v NetworktemplatePortUsages) *bool { return v.AllowDhcpd }).(pulumi.BoolPtrOutput) } @@ -30820,8 +31503,7 @@ func (o NetworktemplatePortUsagesOutput) GuestNetwork() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplatePortUsages) *string { return v.GuestNetwork }).(pulumi.StringPtrOutput) } -// Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks -// NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together +// Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together func (o NetworktemplatePortUsagesOutput) InterSwitchLink() pulumi.BoolPtrOutput { return o.ApplyT(func(v NetworktemplatePortUsages) *bool { return v.InterSwitchLink }).(pulumi.BoolPtrOutput) } @@ -30911,8 +31593,7 @@ func (o NetworktemplatePortUsagesOutput) Speed() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplatePortUsages) *string { return v.Speed }).(pulumi.StringPtrOutput) } -// Switch storm control -// Only if `mode`!=`dynamic` +// Switch storm control. Only if `mode`!=`dynamic` func (o NetworktemplatePortUsagesOutput) StormControl() NetworktemplatePortUsagesStormControlPtrOutput { return o.ApplyT(func(v NetworktemplatePortUsages) *NetworktemplatePortUsagesStormControl { return v.StormControl }).(NetworktemplatePortUsagesStormControlPtrOutput) } @@ -31323,8 +32004,7 @@ type NetworktemplateRadiusConfig struct { AuthServersRetries *int `pulumi:"authServersRetries"` // radius auth session timeout AuthServersTimeout *int `pulumi:"authServersTimeout"` - // use `network`or `sourceIp` - // which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + // use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip Network *string `pulumi:"network"` // use `network`or `sourceIp` SourceIp *string `pulumi:"sourceIp"` @@ -31350,8 +32030,7 @@ type NetworktemplateRadiusConfigArgs struct { AuthServersRetries pulumi.IntPtrInput `pulumi:"authServersRetries"` // radius auth session timeout AuthServersTimeout pulumi.IntPtrInput `pulumi:"authServersTimeout"` - // use `network`or `sourceIp` - // which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + // use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip Network pulumi.StringPtrInput `pulumi:"network"` // use `network`or `sourceIp` SourceIp pulumi.StringPtrInput `pulumi:"sourceIp"` @@ -31457,8 +32136,7 @@ func (o NetworktemplateRadiusConfigOutput) AuthServersTimeout() pulumi.IntPtrOut return o.ApplyT(func(v NetworktemplateRadiusConfig) *int { return v.AuthServersTimeout }).(pulumi.IntPtrOutput) } -// use `network`or `sourceIp` -// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip +// use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip func (o NetworktemplateRadiusConfigOutput) Network() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateRadiusConfig) *string { return v.Network }).(pulumi.StringPtrOutput) } @@ -31540,8 +32218,7 @@ func (o NetworktemplateRadiusConfigPtrOutput) AuthServersTimeout() pulumi.IntPtr }).(pulumi.IntPtrOutput) } -// use `network`or `sourceIp` -// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip +// use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip func (o NetworktemplateRadiusConfigPtrOutput) Network() pulumi.StringPtrOutput { return o.ApplyT(func(v *NetworktemplateRadiusConfig) *string { if v == nil { @@ -34980,13 +35657,11 @@ func (o NetworktemplateSnmpConfigV3ConfigUsmPtrOutput) Users() NetworktemplateSn } type NetworktemplateSnmpConfigV3ConfigUsmUser struct { - // Not required if `authenticationType`==`authenticationNone` - // include alphabetic, numeric, and special characters, but it cannot include control characters. + // Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. AuthenticationPassword *string `pulumi:"authenticationPassword"` // sha224, sha256, sha384, sha512 are supported in 21.1 and newer release. enum: `authenticationMd5`, `authenticationNone`, `authenticationSha`, `authenticationSha224`, `authenticationSha256`, `authenticationSha384`, `authenticationSha512` AuthenticationType *string `pulumi:"authenticationType"` - // Not required if `encryptionType`==`privacy-none` - // include alphabetic, numeric, and special characters, but it cannot include control characters + // Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters EncryptionPassword *string `pulumi:"encryptionPassword"` // enum: `privacy-3des`, `privacy-aes128`, `privacy-des`, `privacy-none` EncryptionType *string `pulumi:"encryptionType"` @@ -35005,13 +35680,11 @@ type NetworktemplateSnmpConfigV3ConfigUsmUserInput interface { } type NetworktemplateSnmpConfigV3ConfigUsmUserArgs struct { - // Not required if `authenticationType`==`authenticationNone` - // include alphabetic, numeric, and special characters, but it cannot include control characters. + // Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. AuthenticationPassword pulumi.StringPtrInput `pulumi:"authenticationPassword"` // sha224, sha256, sha384, sha512 are supported in 21.1 and newer release. enum: `authenticationMd5`, `authenticationNone`, `authenticationSha`, `authenticationSha224`, `authenticationSha256`, `authenticationSha384`, `authenticationSha512` AuthenticationType pulumi.StringPtrInput `pulumi:"authenticationType"` - // Not required if `encryptionType`==`privacy-none` - // include alphabetic, numeric, and special characters, but it cannot include control characters + // Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters EncryptionPassword pulumi.StringPtrInput `pulumi:"encryptionPassword"` // enum: `privacy-3des`, `privacy-aes128`, `privacy-des`, `privacy-none` EncryptionType pulumi.StringPtrInput `pulumi:"encryptionType"` @@ -35069,8 +35742,7 @@ func (o NetworktemplateSnmpConfigV3ConfigUsmUserOutput) ToNetworktemplateSnmpCon return o } -// Not required if `authenticationType`==`authenticationNone` -// include alphabetic, numeric, and special characters, but it cannot include control characters. +// Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. func (o NetworktemplateSnmpConfigV3ConfigUsmUserOutput) AuthenticationPassword() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateSnmpConfigV3ConfigUsmUser) *string { return v.AuthenticationPassword }).(pulumi.StringPtrOutput) } @@ -35080,8 +35752,7 @@ func (o NetworktemplateSnmpConfigV3ConfigUsmUserOutput) AuthenticationType() pul return o.ApplyT(func(v NetworktemplateSnmpConfigV3ConfigUsmUser) *string { return v.AuthenticationType }).(pulumi.StringPtrOutput) } -// Not required if `encryptionType`==`privacy-none` -// include alphabetic, numeric, and special characters, but it cannot include control characters +// Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters func (o NetworktemplateSnmpConfigV3ConfigUsmUserOutput) EncryptionPassword() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateSnmpConfigV3ConfigUsmUser) *string { return v.EncryptionPassword }).(pulumi.StringPtrOutput) } @@ -36064,8 +36735,7 @@ type NetworktemplateSwitchMatchingRule struct { OobIpConfig *NetworktemplateSwitchMatchingRuleOobIpConfig `pulumi:"oobIpConfig"` // Propery key is the interface name or interface range PortConfig map[string]NetworktemplateSwitchMatchingRulePortConfig `pulumi:"portConfig"` - // Property key is the port mirroring instance name - // portMirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed PortMirroring map[string]NetworktemplateSwitchMatchingRulePortMirroring `pulumi:"portMirroring"` } @@ -36106,8 +36776,7 @@ type NetworktemplateSwitchMatchingRuleArgs struct { OobIpConfig NetworktemplateSwitchMatchingRuleOobIpConfigPtrInput `pulumi:"oobIpConfig"` // Propery key is the interface name or interface range PortConfig NetworktemplateSwitchMatchingRulePortConfigMapInput `pulumi:"portConfig"` - // Property key is the port mirroring instance name - // portMirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed PortMirroring NetworktemplateSwitchMatchingRulePortMirroringMapInput `pulumi:"portMirroring"` } @@ -36226,8 +36895,7 @@ func (o NetworktemplateSwitchMatchingRuleOutput) PortConfig() NetworktemplateSwi }).(NetworktemplateSwitchMatchingRulePortConfigMapOutput) } -// Property key is the port mirroring instance name -// portMirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed +// Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed func (o NetworktemplateSwitchMatchingRuleOutput) PortMirroring() NetworktemplateSwitchMatchingRulePortMirroringMapOutput { return o.ApplyT(func(v NetworktemplateSwitchMatchingRule) map[string]NetworktemplateSwitchMatchingRulePortMirroring { return v.PortMirroring @@ -46505,8 +47173,7 @@ type WlanAppLimit struct { // Property key is the app key, defined in Get Application List Apps map[string]int `pulumi:"apps"` Enabled *bool `pulumi:"enabled"` - // Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps - // Property key is the wxtag id + // Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtagId` WxtagIds map[string]int `pulumi:"wxtagIds"` } @@ -46526,8 +47193,7 @@ type WlanAppLimitArgs struct { // Property key is the app key, defined in Get Application List Apps pulumi.IntMapInput `pulumi:"apps"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` - // Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps - // Property key is the wxtag id + // Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtagId` WxtagIds pulumi.IntMapInput `pulumi:"wxtagIds"` } @@ -46618,8 +47284,7 @@ func (o WlanAppLimitOutput) Enabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v WlanAppLimit) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -// Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps -// Property key is the wxtag id +// Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtagId` func (o WlanAppLimitOutput) WxtagIds() pulumi.IntMapOutput { return o.ApplyT(func(v WlanAppLimit) map[string]int { return v.WxtagIds }).(pulumi.IntMapOutput) } @@ -46668,8 +47333,7 @@ func (o WlanAppLimitPtrOutput) Enabled() pulumi.BoolPtrOutput { }).(pulumi.BoolPtrOutput) } -// Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps -// Property key is the wxtag id +// Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtagId` func (o WlanAppLimitPtrOutput) WxtagIds() pulumi.IntMapOutput { return o.ApplyT(func(v *WlanAppLimit) map[string]int { if v == nil { @@ -48176,8 +48840,7 @@ func (o WlanCoaServerArrayOutput) Index(i pulumi.IntInput) WlanCoaServerOutput { type WlanDnsServerRewrite struct { Enabled *bool `pulumi:"enabled"` - // map between radiusGroup and the desired DNS server (IPv4 only) - // Property key is the RADIUS group, property value is the desired DNS Server + // map between radiusGroup and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server RadiusGroups map[string]string `pulumi:"radiusGroups"` } @@ -48194,8 +48857,7 @@ type WlanDnsServerRewriteInput interface { type WlanDnsServerRewriteArgs struct { Enabled pulumi.BoolPtrInput `pulumi:"enabled"` - // map between radiusGroup and the desired DNS server (IPv4 only) - // Property key is the RADIUS group, property value is the desired DNS Server + // map between radiusGroup and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server RadiusGroups pulumi.StringMapInput `pulumi:"radiusGroups"` } @@ -48280,8 +48942,7 @@ func (o WlanDnsServerRewriteOutput) Enabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v WlanDnsServerRewrite) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -// map between radiusGroup and the desired DNS server (IPv4 only) -// Property key is the RADIUS group, property value is the desired DNS Server +// map between radiusGroup and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server func (o WlanDnsServerRewriteOutput) RadiusGroups() pulumi.StringMapOutput { return o.ApplyT(func(v WlanDnsServerRewrite) map[string]string { return v.RadiusGroups }).(pulumi.StringMapOutput) } @@ -48319,8 +48980,7 @@ func (o WlanDnsServerRewritePtrOutput) Enabled() pulumi.BoolPtrOutput { }).(pulumi.BoolPtrOutput) } -// map between radiusGroup and the desired DNS server (IPv4 only) -// Property key is the RADIUS group, property value is the desired DNS Server +// map between radiusGroup and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server func (o WlanDnsServerRewritePtrOutput) RadiusGroups() pulumi.StringMapOutput { return o.ApplyT(func(v *WlanDnsServerRewrite) map[string]string { if v == nil { @@ -48335,8 +48995,7 @@ type WlanDynamicPsk struct { DefaultPsk *string `pulumi:"defaultPsk"` DefaultVlanId *string `pulumi:"defaultVlanId"` Enabled *bool `pulumi:"enabled"` - // when 11r is enabled, we'll try to use the cached PMK, this can be disabled - // `false` means auto + // when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto ForceLookup *bool `pulumi:"forceLookup"` // enum: `cloudPsks`, `radius` Source *string `pulumi:"source"` @@ -48358,8 +49017,7 @@ type WlanDynamicPskArgs struct { DefaultPsk pulumi.StringPtrInput `pulumi:"defaultPsk"` DefaultVlanId pulumi.StringPtrInput `pulumi:"defaultVlanId"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` - // when 11r is enabled, we'll try to use the cached PMK, this can be disabled - // `false` means auto + // when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto ForceLookup pulumi.BoolPtrInput `pulumi:"forceLookup"` // enum: `cloudPsks`, `radius` Source pulumi.StringPtrInput `pulumi:"source"` @@ -48455,8 +49113,7 @@ func (o WlanDynamicPskOutput) Enabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v WlanDynamicPsk) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -// when 11r is enabled, we'll try to use the cached PMK, this can be disabled -// `false` means auto +// when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto func (o WlanDynamicPskOutput) ForceLookup() pulumi.BoolPtrOutput { return o.ApplyT(func(v WlanDynamicPsk) *bool { return v.ForceLookup }).(pulumi.BoolPtrOutput) } @@ -48518,8 +49175,7 @@ func (o WlanDynamicPskPtrOutput) Enabled() pulumi.BoolPtrOutput { }).(pulumi.BoolPtrOutput) } -// when 11r is enabled, we'll try to use the cached PMK, this can be disabled -// `false` means auto +// when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto func (o WlanDynamicPskPtrOutput) ForceLookup() pulumi.BoolPtrOutput { return o.ApplyT(func(v *WlanDynamicPsk) *bool { if v == nil { @@ -54182,11 +54838,9 @@ type WlanRadsec struct { CoaEnabled *bool `pulumi:"coaEnabled"` Enabled *bool `pulumi:"enabled"` IdleTimeout *int `pulumi:"idleTimeout"` - // To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - // Org mxedge(s) identified by mxcluster_ids + // To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids MxclusterIds []string `pulumi:"mxclusterIds"` - // default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - // when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + // default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `useSiteMxedge` ProxyHosts []string `pulumi:"proxyHosts"` // name of the server to verify (against the cacerts in Org Setting). Only if not Mist Edge. ServerName *string `pulumi:"serverName"` @@ -54213,11 +54867,9 @@ type WlanRadsecArgs struct { CoaEnabled pulumi.BoolPtrInput `pulumi:"coaEnabled"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` IdleTimeout pulumi.IntPtrInput `pulumi:"idleTimeout"` - // To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - // Org mxedge(s) identified by mxcluster_ids + // To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids MxclusterIds pulumi.StringArrayInput `pulumi:"mxclusterIds"` - // default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - // when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + // default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `useSiteMxedge` ProxyHosts pulumi.StringArrayInput `pulumi:"proxyHosts"` // name of the server to verify (against the cacerts in Org Setting). Only if not Mist Edge. ServerName pulumi.StringPtrInput `pulumi:"serverName"` @@ -54318,14 +54970,12 @@ func (o WlanRadsecOutput) IdleTimeout() pulumi.IntPtrOutput { return o.ApplyT(func(v WlanRadsec) *int { return v.IdleTimeout }).(pulumi.IntPtrOutput) } -// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. -// Org mxedge(s) identified by mxcluster_ids +// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids func (o WlanRadsecOutput) MxclusterIds() pulumi.StringArrayOutput { return o.ApplyT(func(v WlanRadsec) []string { return v.MxclusterIds }).(pulumi.StringArrayOutput) } -// default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts -// when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge +// default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `useSiteMxedge` func (o WlanRadsecOutput) ProxyHosts() pulumi.StringArrayOutput { return o.ApplyT(func(v WlanRadsec) []string { return v.ProxyHosts }).(pulumi.StringArrayOutput) } @@ -54401,8 +55051,7 @@ func (o WlanRadsecPtrOutput) IdleTimeout() pulumi.IntPtrOutput { }).(pulumi.IntPtrOutput) } -// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. -// Org mxedge(s) identified by mxcluster_ids +// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids func (o WlanRadsecPtrOutput) MxclusterIds() pulumi.StringArrayOutput { return o.ApplyT(func(v *WlanRadsec) []string { if v == nil { @@ -54412,8 +55061,7 @@ func (o WlanRadsecPtrOutput) MxclusterIds() pulumi.StringArrayOutput { }).(pulumi.StringArrayOutput) } -// default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts -// when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge +// default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `useSiteMxedge` func (o WlanRadsecPtrOutput) ProxyHosts() pulumi.StringArrayOutput { return o.ApplyT(func(v *WlanRadsec) []string { if v == nil { @@ -59139,6 +59787,10 @@ func init() { pulumi.RegisterInputType(reflect.TypeOf((*NetworkInternetAccessDestinationNatMapInput)(nil)).Elem(), NetworkInternetAccessDestinationNatMap{}) pulumi.RegisterInputType(reflect.TypeOf((*NetworkInternetAccessStaticNatInput)(nil)).Elem(), NetworkInternetAccessStaticNatArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*NetworkInternetAccessStaticNatMapInput)(nil)).Elem(), NetworkInternetAccessStaticNatMap{}) + pulumi.RegisterInputType(reflect.TypeOf((*NetworkMulticastInput)(nil)).Elem(), NetworkMulticastArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*NetworkMulticastPtrInput)(nil)).Elem(), NetworkMulticastArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*NetworkMulticastGroupsInput)(nil)).Elem(), NetworkMulticastGroupsArgs{}) + pulumi.RegisterInputType(reflect.TypeOf((*NetworkMulticastGroupsMapInput)(nil)).Elem(), NetworkMulticastGroupsMap{}) pulumi.RegisterInputType(reflect.TypeOf((*NetworkTenantsInput)(nil)).Elem(), NetworkTenantsArgs{}) pulumi.RegisterInputType(reflect.TypeOf((*NetworkTenantsMapInput)(nil)).Elem(), NetworkTenantsMap{}) pulumi.RegisterInputType(reflect.TypeOf((*NetworkVpnAccessInput)(nil)).Elem(), NetworkVpnAccessArgs{}) @@ -59786,6 +60438,10 @@ func init() { pulumi.RegisterOutputType(NetworkInternetAccessDestinationNatMapOutput{}) pulumi.RegisterOutputType(NetworkInternetAccessStaticNatOutput{}) pulumi.RegisterOutputType(NetworkInternetAccessStaticNatMapOutput{}) + pulumi.RegisterOutputType(NetworkMulticastOutput{}) + pulumi.RegisterOutputType(NetworkMulticastPtrOutput{}) + pulumi.RegisterOutputType(NetworkMulticastGroupsOutput{}) + pulumi.RegisterOutputType(NetworkMulticastGroupsMapOutput{}) pulumi.RegisterOutputType(NetworkTenantsOutput{}) pulumi.RegisterOutputType(NetworkTenantsMapOutput{}) pulumi.RegisterOutputType(NetworkVpnAccessOutput{}) diff --git a/sdk/go/junipermist/org/sso.go b/sdk/go/junipermist/org/sso.go index 1bdb24ac..8351f4fb 100644 --- a/sdk/go/junipermist/org/sso.go +++ b/sdk/go/junipermist/org/sso.go @@ -89,19 +89,14 @@ type Sso struct { // enum: `email`, `unspecified` NameidFormat pulumi.StringOutput `pulumi:"nameidFormat"` OrgId pulumi.StringOutput `pulumi:"orgId"` - // custom role attribute parsing scheme\n\nSupported Role Parsing - // Schemes\n
NameScheme
cn
  • The expected role attribute format in - // SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - // (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - // is “cn”
+ // custom role attribute parsing scheme. Supported Role Parsing Schemes + //
NameScheme
`cn`
  • The expected role attribute format in SAML + // Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + // entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + // “cn”
RoleAttrExtraction pulumi.StringPtrOutput `pulumi:"roleAttrExtraction"` // name of the attribute in SAML Assertion to extract role from. Default: `Role` RoleAttrFrom pulumi.StringOutput `pulumi:"roleAttrFrom"` - // if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - ScimEnabled pulumi.BoolOutput `pulumi:"scimEnabled"` - // if `idpType`==`oauth`, scimSecretToken (generated by caller, crypto-random) is used as the Bearer token in the - // Authorization header of SCIM provisioning requests by the IDP - ScimSecretToken pulumi.StringPtrOutput `pulumi:"scimSecretToken"` } // NewSso registers a new resource with the given unique name, arguments, and options. @@ -174,19 +169,14 @@ type ssoState struct { // enum: `email`, `unspecified` NameidFormat *string `pulumi:"nameidFormat"` OrgId *string `pulumi:"orgId"` - // custom role attribute parsing scheme\n\nSupported Role Parsing - // Schemes\n
NameScheme
cn
  • The expected role attribute format in - // SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - // (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - // is “cn”
+ // custom role attribute parsing scheme. Supported Role Parsing Schemes + //
NameScheme
`cn`
  • The expected role attribute format in SAML + // Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + // entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + // “cn”
RoleAttrExtraction *string `pulumi:"roleAttrExtraction"` // name of the attribute in SAML Assertion to extract role from. Default: `Role` RoleAttrFrom *string `pulumi:"roleAttrFrom"` - // if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - ScimEnabled *bool `pulumi:"scimEnabled"` - // if `idpType`==`oauth`, scimSecretToken (generated by caller, crypto-random) is used as the Bearer token in the - // Authorization header of SCIM provisioning requests by the IDP - ScimSecretToken *string `pulumi:"scimSecretToken"` } type SsoState struct { @@ -215,19 +205,14 @@ type SsoState struct { // enum: `email`, `unspecified` NameidFormat pulumi.StringPtrInput OrgId pulumi.StringPtrInput - // custom role attribute parsing scheme\n\nSupported Role Parsing - // Schemes\n
NameScheme
cn
  • The expected role attribute format in - // SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - // (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - // is “cn”
+ // custom role attribute parsing scheme. Supported Role Parsing Schemes + //
NameScheme
`cn`
  • The expected role attribute format in SAML + // Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + // entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + // “cn”
RoleAttrExtraction pulumi.StringPtrInput // name of the attribute in SAML Assertion to extract role from. Default: `Role` RoleAttrFrom pulumi.StringPtrInput - // if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - ScimEnabled pulumi.BoolPtrInput - // if `idpType`==`oauth`, scimSecretToken (generated by caller, crypto-random) is used as the Bearer token in the - // Authorization header of SCIM provisioning requests by the IDP - ScimSecretToken pulumi.StringPtrInput } func (SsoState) ElementType() reflect.Type { @@ -256,19 +241,14 @@ type ssoArgs struct { // enum: `email`, `unspecified` NameidFormat *string `pulumi:"nameidFormat"` OrgId string `pulumi:"orgId"` - // custom role attribute parsing scheme\n\nSupported Role Parsing - // Schemes\n
NameScheme
cn
  • The expected role attribute format in - // SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - // (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - // is “cn”
+ // custom role attribute parsing scheme. Supported Role Parsing Schemes + //
NameScheme
`cn`
  • The expected role attribute format in SAML + // Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + // entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + // “cn”
RoleAttrExtraction *string `pulumi:"roleAttrExtraction"` // name of the attribute in SAML Assertion to extract role from. Default: `Role` RoleAttrFrom *string `pulumi:"roleAttrFrom"` - // if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - ScimEnabled *bool `pulumi:"scimEnabled"` - // if `idpType`==`oauth`, scimSecretToken (generated by caller, crypto-random) is used as the Bearer token in the - // Authorization header of SCIM provisioning requests by the IDP - ScimSecretToken *string `pulumi:"scimSecretToken"` } // The set of arguments for constructing a Sso resource. @@ -294,19 +274,14 @@ type SsoArgs struct { // enum: `email`, `unspecified` NameidFormat pulumi.StringPtrInput OrgId pulumi.StringInput - // custom role attribute parsing scheme\n\nSupported Role Parsing - // Schemes\n
NameScheme
cn
  • The expected role attribute format in - // SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - // (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - // is “cn”
+ // custom role attribute parsing scheme. Supported Role Parsing Schemes + //
NameScheme
`cn`
  • The expected role attribute format in SAML + // Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + // entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + // “cn”
RoleAttrExtraction pulumi.StringPtrInput // name of the attribute in SAML Assertion to extract role from. Default: `Role` RoleAttrFrom pulumi.StringPtrInput - // if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - ScimEnabled pulumi.BoolPtrInput - // if `idpType`==`oauth`, scimSecretToken (generated by caller, crypto-random) is used as the Bearer token in the - // Authorization header of SCIM provisioning requests by the IDP - ScimSecretToken pulumi.StringPtrInput } func (SsoArgs) ElementType() reflect.Type { @@ -454,11 +429,11 @@ func (o SsoOutput) OrgId() pulumi.StringOutput { return o.ApplyT(func(v *Sso) pulumi.StringOutput { return v.OrgId }).(pulumi.StringOutput) } -// custom role attribute parsing scheme\n\nSupported Role Parsing -// Schemes\n
NameScheme
cn
  • The expected role attribute format in -// SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected -// (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value -// is “cn”
+// custom role attribute parsing scheme. Supported Role Parsing Schemes +//
NameScheme
`cn`
  • The expected role attribute format in SAML +// Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the +// entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is +// “cn”
func (o SsoOutput) RoleAttrExtraction() pulumi.StringPtrOutput { return o.ApplyT(func(v *Sso) pulumi.StringPtrOutput { return v.RoleAttrExtraction }).(pulumi.StringPtrOutput) } @@ -468,17 +443,6 @@ func (o SsoOutput) RoleAttrFrom() pulumi.StringOutput { return o.ApplyT(func(v *Sso) pulumi.StringOutput { return v.RoleAttrFrom }).(pulumi.StringOutput) } -// if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP -func (o SsoOutput) ScimEnabled() pulumi.BoolOutput { - return o.ApplyT(func(v *Sso) pulumi.BoolOutput { return v.ScimEnabled }).(pulumi.BoolOutput) -} - -// if `idpType`==`oauth`, scimSecretToken (generated by caller, crypto-random) is used as the Bearer token in the -// Authorization header of SCIM provisioning requests by the IDP -func (o SsoOutput) ScimSecretToken() pulumi.StringPtrOutput { - return o.ApplyT(func(v *Sso) pulumi.StringPtrOutput { return v.ScimSecretToken }).(pulumi.StringPtrOutput) -} - type SsoArrayOutput struct{ *pulumi.OutputState } func (SsoArrayOutput) ElementType() reflect.Type { diff --git a/sdk/go/junipermist/provider.go b/sdk/go/junipermist/provider.go index f1826b62..c5597469 100644 --- a/sdk/go/junipermist/provider.go +++ b/sdk/go/junipermist/provider.go @@ -60,6 +60,8 @@ func NewProvider(ctx *pulumi.Context, } type providerArgs struct { + // Flag to enable debugging API calls. Default is false. + ApiDebug *bool `pulumi:"apiDebug"` // Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 // results in infinite timeout. ApiTimeout *float64 `pulumi:"apiTimeout"` @@ -79,6 +81,8 @@ type providerArgs struct { // The set of arguments for constructing a Provider resource. type ProviderArgs struct { + // Flag to enable debugging API calls. Default is false. + ApiDebug pulumi.BoolPtrInput // Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 // results in infinite timeout. ApiTimeout pulumi.Float64PtrInput diff --git a/sdk/go/junipermist/site/networktemplate.go b/sdk/go/junipermist/site/networktemplate.go index b823c2ce..8ae67c54 100644 --- a/sdk/go/junipermist/site/networktemplate.go +++ b/sdk/go/junipermist/site/networktemplate.go @@ -54,7 +54,7 @@ type Networktemplate struct { NtpServers pulumi.StringArrayOutput `pulumi:"ntpServers"` // Junos OSPF areas OspfAreas NetworktemplateOspfAreasMapOutput `pulumi:"ospfAreas"` - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring NetworktemplatePortMirroringMapOutput `pulumi:"portMirroring"` @@ -133,7 +133,7 @@ type networktemplateState struct { NtpServers []string `pulumi:"ntpServers"` // Junos OSPF areas OspfAreas map[string]NetworktemplateOspfAreas `pulumi:"ospfAreas"` - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring map[string]NetworktemplatePortMirroring `pulumi:"portMirroring"` @@ -180,7 +180,7 @@ type NetworktemplateState struct { NtpServers pulumi.StringArrayInput // Junos OSPF areas OspfAreas NetworktemplateOspfAreasMapInput - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring NetworktemplatePortMirroringMapInput @@ -231,7 +231,7 @@ type networktemplateArgs struct { NtpServers []string `pulumi:"ntpServers"` // Junos OSPF areas OspfAreas map[string]NetworktemplateOspfAreas `pulumi:"ospfAreas"` - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring map[string]NetworktemplatePortMirroring `pulumi:"portMirroring"` @@ -279,7 +279,7 @@ type NetworktemplateArgs struct { NtpServers pulumi.StringArrayInput // Junos OSPF areas OspfAreas NetworktemplateOspfAreasMapInput - // Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed PortMirroring NetworktemplatePortMirroringMapInput @@ -451,7 +451,7 @@ func (o NetworktemplateOutput) OspfAreas() NetworktemplateOspfAreasMapOutput { return o.ApplyT(func(v *Networktemplate) NetworktemplateOspfAreasMapOutput { return v.OspfAreas }).(NetworktemplateOspfAreasMapOutput) } -// Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes +// Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes // interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A // maximum 4 port mirrorings is allowed func (o NetworktemplateOutput) PortMirroring() NetworktemplatePortMirroringMapOutput { diff --git a/sdk/go/junipermist/site/pulumiTypes.go b/sdk/go/junipermist/site/pulumiTypes.go index 6268b5e6..fccda510 100644 --- a/sdk/go/junipermist/site/pulumiTypes.go +++ b/sdk/go/junipermist/site/pulumiTypes.go @@ -903,12 +903,14 @@ func (o EvpnTopologySwitchesMapOutput) MapIndex(k pulumi.StringInput) EvpnTopolo } type NetworktemplateAclPolicy struct { - // - for GBP-based policy, all srcTags and dstTags have to be gbp-based - // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + // ACL Policy Actions: + // - for GBP-based policy, all srcTags and dstTags have to be gbp-based + // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to Actions []NetworktemplateAclPolicyAction `pulumi:"actions"` Name *string `pulumi:"name"` - // - for GBP-based policy, all srcTags and dstTags have to be gbp-based - // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + // ACL Policy Source Tags: + // - for GBP-based policy, all srcTags and dstTags have to be gbp-based + // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to SrcTags []string `pulumi:"srcTags"` } @@ -924,12 +926,14 @@ type NetworktemplateAclPolicyInput interface { } type NetworktemplateAclPolicyArgs struct { - // - for GBP-based policy, all srcTags and dstTags have to be gbp-based - // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + // ACL Policy Actions: + // - for GBP-based policy, all srcTags and dstTags have to be gbp-based + // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to Actions NetworktemplateAclPolicyActionArrayInput `pulumi:"actions"` Name pulumi.StringPtrInput `pulumi:"name"` - // - for GBP-based policy, all srcTags and dstTags have to be gbp-based - // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + // ACL Policy Source Tags: + // - for GBP-based policy, all srcTags and dstTags have to be gbp-based + // - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to SrcTags pulumi.StringArrayInput `pulumi:"srcTags"` } @@ -984,8 +988,9 @@ func (o NetworktemplateAclPolicyOutput) ToNetworktemplateAclPolicyOutputWithCont return o } -// - for GBP-based policy, all srcTags and dstTags have to be gbp-based -// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to +// ACL Policy Actions: +// - for GBP-based policy, all srcTags and dstTags have to be gbp-based +// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to func (o NetworktemplateAclPolicyOutput) Actions() NetworktemplateAclPolicyActionArrayOutput { return o.ApplyT(func(v NetworktemplateAclPolicy) []NetworktemplateAclPolicyAction { return v.Actions }).(NetworktemplateAclPolicyActionArrayOutput) } @@ -994,8 +999,9 @@ func (o NetworktemplateAclPolicyOutput) Name() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateAclPolicy) *string { return v.Name }).(pulumi.StringPtrOutput) } -// - for GBP-based policy, all srcTags and dstTags have to be gbp-based -// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to +// ACL Policy Source Tags: +// - for GBP-based policy, all srcTags and dstTags have to be gbp-based +// - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to func (o NetworktemplateAclPolicyOutput) SrcTags() pulumi.StringArrayOutput { return o.ApplyT(func(v NetworktemplateAclPolicy) []string { return v.SrcTags }).(pulumi.StringArrayOutput) } @@ -1125,9 +1131,9 @@ func (o NetworktemplateAclPolicyActionArrayOutput) Index(i pulumi.IntInput) Netw type NetworktemplateAclTags struct { // required if - // - `type`==`dynamicGbp` (gbp_tag received from RADIUS) - // - `type`==`gbpResource` - // - `type`==`staticGbp` (applying gbp tag against matching conditions) + // - `type`==`dynamicGbp` (gbp_tag received from RADIUS) + // - `type`==`gbpResource` + // - `type`==`staticGbp` (applying gbp tag against matching conditions) GbpTag *int `pulumi:"gbpTag"` // required if // - `type`==`mac` @@ -1145,8 +1151,7 @@ type NetworktemplateAclTags struct { // * `type`==`staticGbp` // if from matching radius_group RadiusGroup *string `pulumi:"radiusGroup"` - // if `type`==`resource` or `type`==`gbpResource` - // empty means unrestricted, i.e. any + // if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any Specs []NetworktemplateAclTagsSpec `pulumi:"specs"` // if // - `type`==`subnet` @@ -1179,9 +1184,9 @@ type NetworktemplateAclTagsInput interface { type NetworktemplateAclTagsArgs struct { // required if - // - `type`==`dynamicGbp` (gbp_tag received from RADIUS) - // - `type`==`gbpResource` - // - `type`==`staticGbp` (applying gbp tag against matching conditions) + // - `type`==`dynamicGbp` (gbp_tag received from RADIUS) + // - `type`==`gbpResource` + // - `type`==`staticGbp` (applying gbp tag against matching conditions) GbpTag pulumi.IntPtrInput `pulumi:"gbpTag"` // required if // - `type`==`mac` @@ -1199,8 +1204,7 @@ type NetworktemplateAclTagsArgs struct { // * `type`==`staticGbp` // if from matching radius_group RadiusGroup pulumi.StringPtrInput `pulumi:"radiusGroup"` - // if `type`==`resource` or `type`==`gbpResource` - // empty means unrestricted, i.e. any + // if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any Specs NetworktemplateAclTagsSpecArrayInput `pulumi:"specs"` // if // - `type`==`subnet` @@ -1272,9 +1276,9 @@ func (o NetworktemplateAclTagsOutput) ToNetworktemplateAclTagsOutputWithContext( } // required if -// - `type`==`dynamicGbp` (gbp_tag received from RADIUS) -// - `type`==`gbpResource` -// - `type`==`staticGbp` (applying gbp tag against matching conditions) +// - `type`==`dynamicGbp` (gbp_tag received from RADIUS) +// - `type`==`gbpResource` +// - `type`==`staticGbp` (applying gbp tag against matching conditions) func (o NetworktemplateAclTagsOutput) GbpTag() pulumi.IntPtrOutput { return o.ApplyT(func(v NetworktemplateAclTags) *int { return v.GbpTag }).(pulumi.IntPtrOutput) } @@ -1304,8 +1308,7 @@ func (o NetworktemplateAclTagsOutput) RadiusGroup() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateAclTags) *string { return v.RadiusGroup }).(pulumi.StringPtrOutput) } -// if `type`==`resource` or `type`==`gbpResource` -// empty means unrestricted, i.e. any +// if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any func (o NetworktemplateAclTagsOutput) Specs() NetworktemplateAclTagsSpecArrayOutput { return o.ApplyT(func(v NetworktemplateAclTags) []NetworktemplateAclTagsSpec { return v.Specs }).(NetworktemplateAclTagsSpecArrayOutput) } @@ -1355,7 +1358,7 @@ func (o NetworktemplateAclTagsMapOutput) MapIndex(k pulumi.StringInput) Networkt type NetworktemplateAclTagsSpec struct { // matched dst port, "0" means any PortRange *string `pulumi:"portRange"` - // `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 + // `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 Protocol *string `pulumi:"protocol"` } @@ -1373,7 +1376,7 @@ type NetworktemplateAclTagsSpecInput interface { type NetworktemplateAclTagsSpecArgs struct { // matched dst port, "0" means any PortRange pulumi.StringPtrInput `pulumi:"portRange"` - // `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 + // `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 Protocol pulumi.StringPtrInput `pulumi:"protocol"` } @@ -1433,7 +1436,7 @@ func (o NetworktemplateAclTagsSpecOutput) PortRange() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateAclTagsSpec) *string { return v.PortRange }).(pulumi.StringPtrOutput) } -// `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 +// `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 func (o NetworktemplateAclTagsSpecOutput) Protocol() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateAclTagsSpec) *string { return v.Protocol }).(pulumi.StringPtrOutput) } @@ -2280,8 +2283,7 @@ type NetworktemplateNetworks struct { Gateway *string `pulumi:"gateway"` // only required for EVPN-VXLAN networks, IPv6 Virtual Gateway Gateway6 *string `pulumi:"gateway6"` - // whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) - // NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set + // whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set Isolation *bool `pulumi:"isolation"` IsolationVlanId *string `pulumi:"isolationVlanId"` // optional for pure switching, required when L3 / routing features are used @@ -2307,8 +2309,7 @@ type NetworktemplateNetworksArgs struct { Gateway pulumi.StringPtrInput `pulumi:"gateway"` // only required for EVPN-VXLAN networks, IPv6 Virtual Gateway Gateway6 pulumi.StringPtrInput `pulumi:"gateway6"` - // whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) - // NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set + // whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set Isolation pulumi.BoolPtrInput `pulumi:"isolation"` IsolationVlanId pulumi.StringPtrInput `pulumi:"isolationVlanId"` // optional for pure switching, required when L3 / routing features are used @@ -2379,8 +2380,7 @@ func (o NetworktemplateNetworksOutput) Gateway6() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateNetworks) *string { return v.Gateway6 }).(pulumi.StringPtrOutput) } -// whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) -// NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set +// whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set func (o NetworktemplateNetworksOutput) Isolation() pulumi.BoolPtrOutput { return o.ApplyT(func(v NetworktemplateNetworks) *bool { return v.Isolation }).(pulumi.BoolPtrOutput) } @@ -2848,9 +2848,7 @@ func (o NetworktemplatePortMirroringMapOutput) MapIndex(k pulumi.StringInput) Ne type NetworktemplatePortUsages struct { // Only if `mode`==`trunk` whether to trunk all network/vlans AllNetworks *bool `pulumi:"allNetworks"` - // 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. - // 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. + // 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. 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. AllowDhcpd *bool `pulumi:"allowDhcpd"` // Only if `mode`!=`dynamic` AllowMultipleSupplicants *bool `pulumi:"allowMultipleSupplicants"` @@ -2874,8 +2872,7 @@ type NetworktemplatePortUsages struct { EnableQos *bool `pulumi:"enableQos"` // Only if `mode`!=`dynamic` and `portAuth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) GuestNetwork *string `pulumi:"guestNetwork"` - // Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks - // NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + // Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together InterSwitchLink *bool `pulumi:"interSwitchLink"` // Only if `mode`!=`dynamic` and `enableMacAuth`==`true` MacAuthOnly *bool `pulumi:"macAuthOnly"` @@ -2911,8 +2908,7 @@ type NetworktemplatePortUsages struct { ServerRejectNetwork *string `pulumi:"serverRejectNetwork"` // Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto` Speed *string `pulumi:"speed"` - // Switch storm control - // Only if `mode`!=`dynamic` + // Switch storm control. Only if `mode`!=`dynamic` StormControl *NetworktemplatePortUsagesStormControl `pulumi:"stormControl"` // Only if `mode`!=`dynamic` when enabled, the port is not expected to receive BPDU frames StpEdge *bool `pulumi:"stpEdge"` @@ -2940,9 +2936,7 @@ type NetworktemplatePortUsagesInput interface { type NetworktemplatePortUsagesArgs struct { // Only if `mode`==`trunk` whether to trunk all network/vlans AllNetworks pulumi.BoolPtrInput `pulumi:"allNetworks"` - // 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. - // 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. + // 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. 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. AllowDhcpd pulumi.BoolPtrInput `pulumi:"allowDhcpd"` // Only if `mode`!=`dynamic` AllowMultipleSupplicants pulumi.BoolPtrInput `pulumi:"allowMultipleSupplicants"` @@ -2966,8 +2960,7 @@ type NetworktemplatePortUsagesArgs struct { EnableQos pulumi.BoolPtrInput `pulumi:"enableQos"` // Only if `mode`!=`dynamic` and `portAuth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) GuestNetwork pulumi.StringPtrInput `pulumi:"guestNetwork"` - // Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks - // NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + // Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together InterSwitchLink pulumi.BoolPtrInput `pulumi:"interSwitchLink"` // Only if `mode`!=`dynamic` and `enableMacAuth`==`true` MacAuthOnly pulumi.BoolPtrInput `pulumi:"macAuthOnly"` @@ -3003,8 +2996,7 @@ type NetworktemplatePortUsagesArgs struct { ServerRejectNetwork pulumi.StringPtrInput `pulumi:"serverRejectNetwork"` // Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto` Speed pulumi.StringPtrInput `pulumi:"speed"` - // Switch storm control - // Only if `mode`!=`dynamic` + // Switch storm control. Only if `mode`!=`dynamic` StormControl NetworktemplatePortUsagesStormControlPtrInput `pulumi:"stormControl"` // Only if `mode`!=`dynamic` when enabled, the port is not expected to receive BPDU frames StpEdge pulumi.BoolPtrInput `pulumi:"stpEdge"` @@ -3074,9 +3066,7 @@ func (o NetworktemplatePortUsagesOutput) AllNetworks() pulumi.BoolPtrOutput { return o.ApplyT(func(v NetworktemplatePortUsages) *bool { return v.AllNetworks }).(pulumi.BoolPtrOutput) } -// 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. -// 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. +// 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. 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. func (o NetworktemplatePortUsagesOutput) AllowDhcpd() pulumi.BoolPtrOutput { return o.ApplyT(func(v NetworktemplatePortUsages) *bool { return v.AllowDhcpd }).(pulumi.BoolPtrOutput) } @@ -3136,8 +3126,7 @@ func (o NetworktemplatePortUsagesOutput) GuestNetwork() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplatePortUsages) *string { return v.GuestNetwork }).(pulumi.StringPtrOutput) } -// Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks -// NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together +// Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together func (o NetworktemplatePortUsagesOutput) InterSwitchLink() pulumi.BoolPtrOutput { return o.ApplyT(func(v NetworktemplatePortUsages) *bool { return v.InterSwitchLink }).(pulumi.BoolPtrOutput) } @@ -3227,8 +3216,7 @@ func (o NetworktemplatePortUsagesOutput) Speed() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplatePortUsages) *string { return v.Speed }).(pulumi.StringPtrOutput) } -// Switch storm control -// Only if `mode`!=`dynamic` +// Switch storm control. Only if `mode`!=`dynamic` func (o NetworktemplatePortUsagesOutput) StormControl() NetworktemplatePortUsagesStormControlPtrOutput { return o.ApplyT(func(v NetworktemplatePortUsages) *NetworktemplatePortUsagesStormControl { return v.StormControl }).(NetworktemplatePortUsagesStormControlPtrOutput) } @@ -3639,8 +3627,7 @@ type NetworktemplateRadiusConfig struct { AuthServersRetries *int `pulumi:"authServersRetries"` // radius auth session timeout AuthServersTimeout *int `pulumi:"authServersTimeout"` - // use `network`or `sourceIp` - // which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + // use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip Network *string `pulumi:"network"` // use `network`or `sourceIp` SourceIp *string `pulumi:"sourceIp"` @@ -3666,8 +3653,7 @@ type NetworktemplateRadiusConfigArgs struct { AuthServersRetries pulumi.IntPtrInput `pulumi:"authServersRetries"` // radius auth session timeout AuthServersTimeout pulumi.IntPtrInput `pulumi:"authServersTimeout"` - // use `network`or `sourceIp` - // which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + // use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip Network pulumi.StringPtrInput `pulumi:"network"` // use `network`or `sourceIp` SourceIp pulumi.StringPtrInput `pulumi:"sourceIp"` @@ -3773,8 +3759,7 @@ func (o NetworktemplateRadiusConfigOutput) AuthServersTimeout() pulumi.IntPtrOut return o.ApplyT(func(v NetworktemplateRadiusConfig) *int { return v.AuthServersTimeout }).(pulumi.IntPtrOutput) } -// use `network`or `sourceIp` -// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip +// use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip func (o NetworktemplateRadiusConfigOutput) Network() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateRadiusConfig) *string { return v.Network }).(pulumi.StringPtrOutput) } @@ -3856,8 +3841,7 @@ func (o NetworktemplateRadiusConfigPtrOutput) AuthServersTimeout() pulumi.IntPtr }).(pulumi.IntPtrOutput) } -// use `network`or `sourceIp` -// which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip +// use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip func (o NetworktemplateRadiusConfigPtrOutput) Network() pulumi.StringPtrOutput { return o.ApplyT(func(v *NetworktemplateRadiusConfig) *string { if v == nil { @@ -7296,13 +7280,11 @@ func (o NetworktemplateSnmpConfigV3ConfigUsmPtrOutput) Users() NetworktemplateSn } type NetworktemplateSnmpConfigV3ConfigUsmUser struct { - // Not required if `authenticationType`==`authenticationNone` - // include alphabetic, numeric, and special characters, but it cannot include control characters. + // Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. AuthenticationPassword *string `pulumi:"authenticationPassword"` // sha224, sha256, sha384, sha512 are supported in 21.1 and newer release. enum: `authenticationMd5`, `authenticationNone`, `authenticationSha`, `authenticationSha224`, `authenticationSha256`, `authenticationSha384`, `authenticationSha512` AuthenticationType *string `pulumi:"authenticationType"` - // Not required if `encryptionType`==`privacy-none` - // include alphabetic, numeric, and special characters, but it cannot include control characters + // Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters EncryptionPassword *string `pulumi:"encryptionPassword"` // enum: `privacy-3des`, `privacy-aes128`, `privacy-des`, `privacy-none` EncryptionType *string `pulumi:"encryptionType"` @@ -7321,13 +7303,11 @@ type NetworktemplateSnmpConfigV3ConfigUsmUserInput interface { } type NetworktemplateSnmpConfigV3ConfigUsmUserArgs struct { - // Not required if `authenticationType`==`authenticationNone` - // include alphabetic, numeric, and special characters, but it cannot include control characters. + // Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. AuthenticationPassword pulumi.StringPtrInput `pulumi:"authenticationPassword"` // sha224, sha256, sha384, sha512 are supported in 21.1 and newer release. enum: `authenticationMd5`, `authenticationNone`, `authenticationSha`, `authenticationSha224`, `authenticationSha256`, `authenticationSha384`, `authenticationSha512` AuthenticationType pulumi.StringPtrInput `pulumi:"authenticationType"` - // Not required if `encryptionType`==`privacy-none` - // include alphabetic, numeric, and special characters, but it cannot include control characters + // Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters EncryptionPassword pulumi.StringPtrInput `pulumi:"encryptionPassword"` // enum: `privacy-3des`, `privacy-aes128`, `privacy-des`, `privacy-none` EncryptionType pulumi.StringPtrInput `pulumi:"encryptionType"` @@ -7385,8 +7365,7 @@ func (o NetworktemplateSnmpConfigV3ConfigUsmUserOutput) ToNetworktemplateSnmpCon return o } -// Not required if `authenticationType`==`authenticationNone` -// include alphabetic, numeric, and special characters, but it cannot include control characters. +// Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. func (o NetworktemplateSnmpConfigV3ConfigUsmUserOutput) AuthenticationPassword() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateSnmpConfigV3ConfigUsmUser) *string { return v.AuthenticationPassword }).(pulumi.StringPtrOutput) } @@ -7396,8 +7375,7 @@ func (o NetworktemplateSnmpConfigV3ConfigUsmUserOutput) AuthenticationType() pul return o.ApplyT(func(v NetworktemplateSnmpConfigV3ConfigUsmUser) *string { return v.AuthenticationType }).(pulumi.StringPtrOutput) } -// Not required if `encryptionType`==`privacy-none` -// include alphabetic, numeric, and special characters, but it cannot include control characters +// Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters func (o NetworktemplateSnmpConfigV3ConfigUsmUserOutput) EncryptionPassword() pulumi.StringPtrOutput { return o.ApplyT(func(v NetworktemplateSnmpConfigV3ConfigUsmUser) *string { return v.EncryptionPassword }).(pulumi.StringPtrOutput) } @@ -8380,8 +8358,7 @@ type NetworktemplateSwitchMatchingRule struct { OobIpConfig *NetworktemplateSwitchMatchingRuleOobIpConfig `pulumi:"oobIpConfig"` // Propery key is the interface name or interface range PortConfig map[string]NetworktemplateSwitchMatchingRulePortConfig `pulumi:"portConfig"` - // Property key is the port mirroring instance name - // portMirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed PortMirroring map[string]NetworktemplateSwitchMatchingRulePortMirroring `pulumi:"portMirroring"` } @@ -8422,8 +8399,7 @@ type NetworktemplateSwitchMatchingRuleArgs struct { OobIpConfig NetworktemplateSwitchMatchingRuleOobIpConfigPtrInput `pulumi:"oobIpConfig"` // Propery key is the interface name or interface range PortConfig NetworktemplateSwitchMatchingRulePortConfigMapInput `pulumi:"portConfig"` - // Property key is the port mirroring instance name - // portMirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + // Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed PortMirroring NetworktemplateSwitchMatchingRulePortMirroringMapInput `pulumi:"portMirroring"` } @@ -8542,8 +8518,7 @@ func (o NetworktemplateSwitchMatchingRuleOutput) PortConfig() NetworktemplateSwi }).(NetworktemplateSwitchMatchingRulePortConfigMapOutput) } -// Property key is the port mirroring instance name -// portMirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed +// Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed func (o NetworktemplateSwitchMatchingRuleOutput) PortMirroring() NetworktemplateSwitchMatchingRulePortMirroringMapOutput { return o.ApplyT(func(v NetworktemplateSwitchMatchingRule) map[string]NetworktemplateSwitchMatchingRulePortMirroring { return v.PortMirroring @@ -18773,8 +18748,7 @@ type WlanAppLimit struct { // Property key is the app key, defined in Get Application List Apps map[string]int `pulumi:"apps"` Enabled *bool `pulumi:"enabled"` - // Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps - // Property key is the wxtag id + // Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtagId` WxtagIds map[string]int `pulumi:"wxtagIds"` } @@ -18794,8 +18768,7 @@ type WlanAppLimitArgs struct { // Property key is the app key, defined in Get Application List Apps pulumi.IntMapInput `pulumi:"apps"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` - // Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps - // Property key is the wxtag id + // Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtagId` WxtagIds pulumi.IntMapInput `pulumi:"wxtagIds"` } @@ -18886,8 +18859,7 @@ func (o WlanAppLimitOutput) Enabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v WlanAppLimit) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -// Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps -// Property key is the wxtag id +// Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtagId` func (o WlanAppLimitOutput) WxtagIds() pulumi.IntMapOutput { return o.ApplyT(func(v WlanAppLimit) map[string]int { return v.WxtagIds }).(pulumi.IntMapOutput) } @@ -18936,8 +18908,7 @@ func (o WlanAppLimitPtrOutput) Enabled() pulumi.BoolPtrOutput { }).(pulumi.BoolPtrOutput) } -// Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps -// Property key is the wxtag id +// Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtagId` func (o WlanAppLimitPtrOutput) WxtagIds() pulumi.IntMapOutput { return o.ApplyT(func(v *WlanAppLimit) map[string]int { if v == nil { @@ -20444,8 +20415,7 @@ func (o WlanCoaServerArrayOutput) Index(i pulumi.IntInput) WlanCoaServerOutput { type WlanDnsServerRewrite struct { Enabled *bool `pulumi:"enabled"` - // map between radiusGroup and the desired DNS server (IPv4 only) - // Property key is the RADIUS group, property value is the desired DNS Server + // map between radiusGroup and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server RadiusGroups map[string]string `pulumi:"radiusGroups"` } @@ -20462,8 +20432,7 @@ type WlanDnsServerRewriteInput interface { type WlanDnsServerRewriteArgs struct { Enabled pulumi.BoolPtrInput `pulumi:"enabled"` - // map between radiusGroup and the desired DNS server (IPv4 only) - // Property key is the RADIUS group, property value is the desired DNS Server + // map between radiusGroup and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server RadiusGroups pulumi.StringMapInput `pulumi:"radiusGroups"` } @@ -20548,8 +20517,7 @@ func (o WlanDnsServerRewriteOutput) Enabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v WlanDnsServerRewrite) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -// map between radiusGroup and the desired DNS server (IPv4 only) -// Property key is the RADIUS group, property value is the desired DNS Server +// map between radiusGroup and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server func (o WlanDnsServerRewriteOutput) RadiusGroups() pulumi.StringMapOutput { return o.ApplyT(func(v WlanDnsServerRewrite) map[string]string { return v.RadiusGroups }).(pulumi.StringMapOutput) } @@ -20587,8 +20555,7 @@ func (o WlanDnsServerRewritePtrOutput) Enabled() pulumi.BoolPtrOutput { }).(pulumi.BoolPtrOutput) } -// map between radiusGroup and the desired DNS server (IPv4 only) -// Property key is the RADIUS group, property value is the desired DNS Server +// map between radiusGroup and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server func (o WlanDnsServerRewritePtrOutput) RadiusGroups() pulumi.StringMapOutput { return o.ApplyT(func(v *WlanDnsServerRewrite) map[string]string { if v == nil { @@ -20603,8 +20570,7 @@ type WlanDynamicPsk struct { DefaultPsk *string `pulumi:"defaultPsk"` DefaultVlanId *string `pulumi:"defaultVlanId"` Enabled *bool `pulumi:"enabled"` - // when 11r is enabled, we'll try to use the cached PMK, this can be disabled - // `false` means auto + // when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto ForceLookup *bool `pulumi:"forceLookup"` // enum: `cloudPsks`, `radius` Source *string `pulumi:"source"` @@ -20626,8 +20592,7 @@ type WlanDynamicPskArgs struct { DefaultPsk pulumi.StringPtrInput `pulumi:"defaultPsk"` DefaultVlanId pulumi.StringPtrInput `pulumi:"defaultVlanId"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` - // when 11r is enabled, we'll try to use the cached PMK, this can be disabled - // `false` means auto + // when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto ForceLookup pulumi.BoolPtrInput `pulumi:"forceLookup"` // enum: `cloudPsks`, `radius` Source pulumi.StringPtrInput `pulumi:"source"` @@ -20723,8 +20688,7 @@ func (o WlanDynamicPskOutput) Enabled() pulumi.BoolPtrOutput { return o.ApplyT(func(v WlanDynamicPsk) *bool { return v.Enabled }).(pulumi.BoolPtrOutput) } -// when 11r is enabled, we'll try to use the cached PMK, this can be disabled -// `false` means auto +// when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto func (o WlanDynamicPskOutput) ForceLookup() pulumi.BoolPtrOutput { return o.ApplyT(func(v WlanDynamicPsk) *bool { return v.ForceLookup }).(pulumi.BoolPtrOutput) } @@ -20786,8 +20750,7 @@ func (o WlanDynamicPskPtrOutput) Enabled() pulumi.BoolPtrOutput { }).(pulumi.BoolPtrOutput) } -// when 11r is enabled, we'll try to use the cached PMK, this can be disabled -// `false` means auto +// when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto func (o WlanDynamicPskPtrOutput) ForceLookup() pulumi.BoolPtrOutput { return o.ApplyT(func(v *WlanDynamicPsk) *bool { if v == nil { @@ -26450,11 +26413,9 @@ type WlanRadsec struct { CoaEnabled *bool `pulumi:"coaEnabled"` Enabled *bool `pulumi:"enabled"` IdleTimeout *int `pulumi:"idleTimeout"` - // To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - // Org mxedge(s) identified by mxcluster_ids + // To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids MxclusterIds []string `pulumi:"mxclusterIds"` - // default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - // when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + // default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `useSiteMxedge` ProxyHosts []string `pulumi:"proxyHosts"` // name of the server to verify (against the cacerts in Org Setting). Only if not Mist Edge. ServerName *string `pulumi:"serverName"` @@ -26481,11 +26442,9 @@ type WlanRadsecArgs struct { CoaEnabled pulumi.BoolPtrInput `pulumi:"coaEnabled"` Enabled pulumi.BoolPtrInput `pulumi:"enabled"` IdleTimeout pulumi.IntPtrInput `pulumi:"idleTimeout"` - // To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - // Org mxedge(s) identified by mxcluster_ids + // To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids MxclusterIds pulumi.StringArrayInput `pulumi:"mxclusterIds"` - // default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - // when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + // default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `useSiteMxedge` ProxyHosts pulumi.StringArrayInput `pulumi:"proxyHosts"` // name of the server to verify (against the cacerts in Org Setting). Only if not Mist Edge. ServerName pulumi.StringPtrInput `pulumi:"serverName"` @@ -26586,14 +26545,12 @@ func (o WlanRadsecOutput) IdleTimeout() pulumi.IntPtrOutput { return o.ApplyT(func(v WlanRadsec) *int { return v.IdleTimeout }).(pulumi.IntPtrOutput) } -// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. -// Org mxedge(s) identified by mxcluster_ids +// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids func (o WlanRadsecOutput) MxclusterIds() pulumi.StringArrayOutput { return o.ApplyT(func(v WlanRadsec) []string { return v.MxclusterIds }).(pulumi.StringArrayOutput) } -// default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts -// when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge +// default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `useSiteMxedge` func (o WlanRadsecOutput) ProxyHosts() pulumi.StringArrayOutput { return o.ApplyT(func(v WlanRadsec) []string { return v.ProxyHosts }).(pulumi.StringArrayOutput) } @@ -26669,8 +26626,7 @@ func (o WlanRadsecPtrOutput) IdleTimeout() pulumi.IntPtrOutput { }).(pulumi.IntPtrOutput) } -// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. -// Org mxedge(s) identified by mxcluster_ids +// To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids func (o WlanRadsecPtrOutput) MxclusterIds() pulumi.StringArrayOutput { return o.ApplyT(func(v *WlanRadsec) []string { if v == nil { @@ -26680,8 +26636,7 @@ func (o WlanRadsecPtrOutput) MxclusterIds() pulumi.StringArrayOutput { }).(pulumi.StringArrayOutput) } -// default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts -// when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge +// default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `useSiteMxedge` func (o WlanRadsecPtrOutput) ProxyHosts() pulumi.StringArrayOutput { return o.ApplyT(func(v *WlanRadsec) []string { if v == nil { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/Config.java b/sdk/java/src/main/java/com/pulumi/junipermist/Config.java index f45e7d37..70a8eced 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/Config.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/Config.java @@ -4,6 +4,7 @@ package com.pulumi.junipermist; import com.pulumi.core.internal.Codegen; +import java.lang.Boolean; import java.lang.Double; import java.lang.String; import java.util.Optional; @@ -11,6 +12,13 @@ public final class Config { private static final com.pulumi.Config config = com.pulumi.Config.of("junipermist"); +/** + * Flag to enable debugging API calls. Default is false. + * + */ + public Optional apiDebug() { + return Codegen.booleanProp("apiDebug").config(config).get(); + } /** * Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 * results in infinite timeout. diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/ProviderArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/ProviderArgs.java index b525bc53..2af0ea90 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/ProviderArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/ProviderArgs.java @@ -5,6 +5,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import java.lang.Boolean; import java.lang.Double; import java.lang.String; import java.util.Objects; @@ -16,6 +17,21 @@ public final class ProviderArgs extends com.pulumi.resources.ResourceArgs { public static final ProviderArgs Empty = new ProviderArgs(); + /** + * Flag to enable debugging API calls. Default is false. + * + */ + @Import(name="apiDebug", json=true) + private @Nullable Output apiDebug; + + /** + * @return Flag to enable debugging API calls. Default is false. + * + */ + public Optional> apiDebug() { + return Optional.ofNullable(this.apiDebug); + } + /** * Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 * results in infinite timeout. @@ -115,6 +131,7 @@ public Optional> username() { private ProviderArgs() {} private ProviderArgs(ProviderArgs $) { + this.apiDebug = $.apiDebug; this.apiTimeout = $.apiTimeout; this.apitoken = $.apitoken; this.host = $.host; @@ -141,6 +158,27 @@ public Builder(ProviderArgs defaults) { $ = new ProviderArgs(Objects.requireNonNull(defaults)); } + /** + * @param apiDebug Flag to enable debugging API calls. Default is false. + * + * @return builder + * + */ + public Builder apiDebug(@Nullable Output apiDebug) { + $.apiDebug = apiDebug; + return this; + } + + /** + * @param apiDebug Flag to enable debugging API calls. Default is false. + * + * @return builder + * + */ + public Builder apiDebug(Boolean apiDebug) { + return apiDebug(Output.of(apiDebug)); + } + /** * @param apiTimeout Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 * results in infinite timeout. diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/Gateway.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/Gateway.java index 359e82dd..7ff2235d 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/Gateway.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/Gateway.java @@ -104,14 +104,14 @@ @ResourceType(type="junipermist:device/gateway:Gateway") public class Gateway extends com.pulumi.resources.CustomResource { /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ @Export(name="additionalConfigCmds", refs={List.class,String.class}, tree="[0,1]") private Output> additionalConfigCmds; /** - * @return additional CLI commands to append to the generated Junos config **Note**: no check is done + * @return additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ public Output>> additionalConfigCmds() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/GatewayArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/GatewayArgs.java index 33f1483b..6eac5355 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/GatewayArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/GatewayArgs.java @@ -38,14 +38,14 @@ public final class GatewayArgs extends com.pulumi.resources.ResourceArgs { public static final GatewayArgs Empty = new GatewayArgs(); /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ @Import(name="additionalConfigCmds") private @Nullable Output> additionalConfigCmds; /** - * @return additional CLI commands to append to the generated Junos config **Note**: no check is done + * @return additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ public Optional>> additionalConfigCmds() { @@ -461,7 +461,7 @@ public Builder(GatewayArgs defaults) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -472,7 +472,7 @@ public Builder additionalConfigCmds(@Nullable Output> additionalCon } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -482,7 +482,7 @@ public Builder additionalConfigCmds(List additionalConfigCmds) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/Switch.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/Switch.java index c80b1b53..467c3dba 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/Switch.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/Switch.java @@ -14,7 +14,6 @@ import com.pulumi.junipermist.device.outputs.SwitchAclTags; import com.pulumi.junipermist.device.outputs.SwitchDhcpSnooping; import com.pulumi.junipermist.device.outputs.SwitchDhcpdConfig; -import com.pulumi.junipermist.device.outputs.SwitchEvpnConfig; import com.pulumi.junipermist.device.outputs.SwitchExtraRoutes6; import com.pulumi.junipermist.device.outputs.SwitchExtraRoutes; import com.pulumi.junipermist.device.outputs.SwitchIpConfig; @@ -84,14 +83,14 @@ public Output>> aclTags() { return Codegen.optional(this.aclTags); } /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ @Export(name="additionalConfigCmds", refs={List.class,String.class}, tree="[0,1]") private Output> additionalConfigCmds; /** - * @return additional CLI commands to append to the generated Junos config **Note**: no check is done + * @return additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ public Output>> additionalConfigCmds() { @@ -157,20 +156,6 @@ public Output>> dnsServers() { public Output>> dnsSuffixes() { return Codegen.optional(this.dnsSuffixes); } - /** - * EVPN Junos settings - * - */ - @Export(name="evpnConfig", refs={SwitchEvpnConfig.class}, tree="[0]") - private Output evpnConfig; - - /** - * @return EVPN Junos settings - * - */ - public Output evpnConfig() { - return this.evpnConfig; - } @Export(name="extraRoutes", refs={Map.class,String.class,SwitchExtraRoutes.class}, tree="[0,1,2]") private Output> extraRoutes; @@ -350,16 +335,16 @@ public Output>> ntpServers() { return Codegen.optional(this.ntpServers); } /** - * - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - * set separately (if desired): key parameter = `re1` + * Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + * re1 mgmt IP has to be set separately (if desired): key parameter = `re1` * */ @Export(name="oobIpConfig", refs={SwitchOobIpConfig.class}, tree="[0]") private Output oobIpConfig; /** - * @return - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - * set separately (if desired): key parameter = `re1` + * @return Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + * re1 mgmt IP has to be set separately (if desired): key parameter = `re1` * */ public Output> oobIpConfig() { @@ -414,7 +399,7 @@ public Output>> portConfig() { return Codegen.optional(this.portConfig); } /** - * Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -423,7 +408,7 @@ public Output>> portConfig() { private Output> portMirroring; /** - * @return Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/SwitchArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/SwitchArgs.java index 0fd12594..d320dfe4 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/SwitchArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/SwitchArgs.java @@ -68,14 +68,14 @@ public Optional>> aclTags() { } /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ @Import(name="additionalConfigCmds") private @Nullable Output> additionalConfigCmds; /** - * @return additional CLI commands to append to the generated Junos config **Note**: no check is done + * @return additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ public Optional>> additionalConfigCmds() { @@ -292,16 +292,16 @@ public Optional>> ntpServers() { } /** - * - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - * set separately (if desired): key parameter = `re1` + * Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + * re1 mgmt IP has to be set separately (if desired): key parameter = `re1` * */ @Import(name="oobIpConfig") private @Nullable Output oobIpConfig; /** - * @return - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - * set separately (if desired): key parameter = `re1` + * @return Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + * re1 mgmt IP has to be set separately (if desired): key parameter = `re1` * */ public Optional> oobIpConfig() { @@ -354,7 +354,7 @@ public Optional>> portConfig() { } /** - * Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -363,7 +363,7 @@ public Optional>> portConfig() { private @Nullable Output> portMirroring; /** - * @return Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -679,7 +679,7 @@ public Builder aclTags(Map aclTags) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -690,7 +690,7 @@ public Builder additionalConfigCmds(@Nullable Output> additionalCon } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -700,7 +700,7 @@ public Builder additionalConfigCmds(List additionalConfigCmds) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -1027,8 +1027,8 @@ public Builder ntpServers(String... ntpServers) { } /** - * @param oobIpConfig - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - * set separately (if desired): key parameter = `re1` + * @param oobIpConfig Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + * re1 mgmt IP has to be set separately (if desired): key parameter = `re1` * * @return builder * @@ -1039,8 +1039,8 @@ public Builder oobIpConfig(@Nullable Output oobIpConfig) } /** - * @param oobIpConfig - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - * set separately (if desired): key parameter = `re1` + * @param oobIpConfig Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + * re1 mgmt IP has to be set separately (if desired): key parameter = `re1` * * @return builder * @@ -1113,7 +1113,7 @@ public Builder portConfig(Map portConfig) { } /** - * @param portMirroring Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @param portMirroring Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -1126,7 +1126,7 @@ public Builder portMirroring(@Nullable Output> exportPolicy() { } /** - * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * */ @Import(name="extendedV4Nexthop") private @Nullable Output extendedV4Nexthop; /** - * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * */ public Optional> extendedV4Nexthop() { @@ -436,8 +434,7 @@ public Builder exportPolicy(String exportPolicy) { } /** - * @param extendedV4Nexthop by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * @param extendedV4Nexthop by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * * @return builder * @@ -448,8 +445,7 @@ public Builder extendedV4Nexthop(@Nullable Output extendedV4Nexthop) { } /** - * @param extendedV4Nexthop by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * @param extendedV4Nexthop by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkArgs.java index a1d8ae36..f1ae3eb5 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkArgs.java @@ -141,9 +141,17 @@ public Optional> subnet6() { return Optional.ofNullable(this.subnet6); } + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="tenants") private @Nullable Output> tenants; + /** + * @return Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ public Optional>> tenants() { return Optional.ofNullable(this.tenants); } @@ -376,11 +384,23 @@ public Builder subnet6(String subnet6) { return subnet6(Output.of(subnet6)); } + /** + * @param tenants Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder tenants(@Nullable Output> tenants) { $.tenants = tenants; return this; } + /** + * @param tenants Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder tenants(Map tenants) { return tenants(Output.of(tenants)); } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkInternetAccessArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkInternetAccessArgs.java index 6a72f48b..fb7bcf57 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkInternetAccessArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkInternetAccessArgs.java @@ -27,14 +27,14 @@ public Optional> createSimpleServicePolicy() { } /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ @Import(name="destinationNat") private @Nullable Output> destinationNat; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Optional>> destinationNat() { @@ -64,14 +64,14 @@ public Optional> restricted() { } /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ @Import(name="staticNat") private @Nullable Output> staticNat; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Optional>> staticNat() { @@ -116,7 +116,7 @@ public Builder createSimpleServicePolicy(Boolean createSimpleServicePolicy) { } /** - * @param destinationNat Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @param destinationNat Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * * @return builder * @@ -127,7 +127,7 @@ public Builder destinationNat(@Nullable Output internalIp; + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional> internalIp() { return Optional.ofNullable(this.internalIp); } @@ -30,19 +37,43 @@ public Optional> name() { return Optional.ofNullable(this.name); } + /** + * The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="port") - private @Nullable Output port; + private @Nullable Output port; - public Optional> port() { + /** + * @return The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ + public Optional> port() { return Optional.ofNullable(this.port); } + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + @Import(name="wanName") + private @Nullable Output wanName; + + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + public Optional> wanName() { + return Optional.ofNullable(this.wanName); + } + private GatewayNetworkInternetAccessDestinationNatArgs() {} private GatewayNetworkInternetAccessDestinationNatArgs(GatewayNetworkInternetAccessDestinationNatArgs $) { this.internalIp = $.internalIp; this.name = $.name; this.port = $.port; + this.wanName = $.wanName; } public static Builder builder() { @@ -63,11 +94,23 @@ public Builder(GatewayNetworkInternetAccessDestinationNatArgs defaults) { $ = new GatewayNetworkInternetAccessDestinationNatArgs(Objects.requireNonNull(defaults)); } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(@Nullable Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } @@ -81,15 +124,48 @@ public Builder name(String name) { return name(Output.of(name)); } - public Builder port(@Nullable Output port) { + /** + * @param port The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder port(@Nullable Output port) { $.port = port; return this; } - public Builder port(Integer port) { + /** + * @param port The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder port(String port) { return port(Output.of(port)); } + /** + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + * @return builder + * + */ + public Builder wanName(@Nullable Output wanName) { + $.wanName = wanName; + return this; + } + + /** + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + * @return builder + * + */ + public Builder wanName(String wanName) { + return wanName(Output.of(wanName)); + } + public GatewayNetworkInternetAccessDestinationNatArgs build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkInternetAccessStaticNatArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkInternetAccessStaticNatArgs.java index a5154aa0..db71ed98 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkInternetAccessStaticNatArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkInternetAccessStaticNatArgs.java @@ -5,6 +5,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -15,29 +16,37 @@ public final class GatewayNetworkInternetAccessStaticNatArgs extends com.pulumi. public static final GatewayNetworkInternetAccessStaticNatArgs Empty = new GatewayNetworkInternetAccessStaticNatArgs(); - @Import(name="internalIp") - private @Nullable Output internalIp; + /** + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + @Import(name="internalIp", required=true) + private Output internalIp; - public Optional> internalIp() { - return Optional.ofNullable(this.internalIp); + /** + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + public Output internalIp() { + return this.internalIp; } - @Import(name="name") - private @Nullable Output name; + @Import(name="name", required=true) + private Output name; - public Optional> name() { - return Optional.ofNullable(this.name); + public Output name() { + return this.name; } /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ @Import(name="wanName") private @Nullable Output wanName; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ public Optional> wanName() { @@ -70,16 +79,28 @@ public Builder(GatewayNetworkInternetAccessStaticNatArgs defaults) { $ = new GatewayNetworkInternetAccessStaticNatArgs(Objects.requireNonNull(defaults)); } - public Builder internalIp(@Nullable Output internalIp) { + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder internalIp(Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } - public Builder name(@Nullable Output name) { + public Builder name(Output name) { $.name = name; return this; } @@ -89,7 +110,7 @@ public Builder name(String name) { } /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * * @return builder * @@ -100,7 +121,7 @@ public Builder wanName(@Nullable Output wanName) { } /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * * @return builder * @@ -110,6 +131,12 @@ public Builder wanName(String wanName) { } public GatewayNetworkInternetAccessStaticNatArgs build() { + if ($.internalIp == null) { + throw new MissingRequiredPropertyException("GatewayNetworkInternetAccessStaticNatArgs", "internalIp"); + } + if ($.name == null) { + throw new MissingRequiredPropertyException("GatewayNetworkInternetAccessStaticNatArgs", "name"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkVpnAccessArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkVpnAccessArgs.java index bd97617b..fe6cc022 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkVpnAccessArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkVpnAccessArgs.java @@ -52,14 +52,14 @@ public Optional> allowPing() { } /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ @Import(name="destinationNat") private @Nullable Output> destinationNat; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Optional>> destinationNat() { @@ -112,16 +112,14 @@ public Optional> noReadvertiseToLanOspf() { } /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes * */ @Import(name="noReadvertiseToOverlay") private @Nullable Output noReadvertiseToOverlay; /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ public Optional> noReadvertiseToOverlay() { @@ -129,16 +127,14 @@ public Optional> noReadvertiseToOverlay() { } /** - * by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * */ @Import(name="otherVrfs") private @Nullable Output> otherVrfs; /** - * @return by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @return by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * */ public Optional>> otherVrfs() { @@ -176,14 +172,14 @@ public Optional> sourceNat() { } /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ @Import(name="staticNat") private @Nullable Output> staticNat; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Optional>> staticNat() { @@ -191,16 +187,14 @@ public Optional>> static } /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes * */ @Import(name="summarizedSubnet") private @Nullable Output summarizedSubnet; /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ public Optional> summarizedSubnet() { @@ -317,7 +311,7 @@ public Builder allowPing(Boolean allowPing) { } /** - * @param destinationNat Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @param destinationNat Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * * @return builder * @@ -328,7 +322,7 @@ public Builder destinationNat(@Nullable Output noReadvertiseToO } /** - * @param noReadvertiseToOverlay toward overlay - * how HUB should deal with routes it received from Spokes + * @param noReadvertiseToOverlay toward overlay, how HUB should deal with routes it received from Spokes * * @return builder * @@ -424,8 +416,7 @@ public Builder noReadvertiseToOverlay(Boolean noReadvertiseToOverlay) { } /** - * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * * @return builder * @@ -436,8 +427,7 @@ public Builder otherVrfs(@Nullable Output> otherVrfs) { } /** - * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * * @return builder * @@ -447,8 +437,7 @@ public Builder otherVrfs(List otherVrfs) { } /** - * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * * @return builder * @@ -500,7 +489,7 @@ public Builder sourceNat(GatewayNetworkVpnAccessSourceNatArgs sourceNat) { } /** - * @param staticNat Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @param staticNat Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * * @return builder * @@ -511,7 +500,7 @@ public Builder staticNat(@Nullable Output static } /** - * @param summarizedSubnet toward overlay - * how HUB should deal with routes it received from Spokes + * @param summarizedSubnet toward overlay, how HUB should deal with routes it received from Spokes * * @return builder * @@ -533,8 +521,7 @@ public Builder summarizedSubnet(@Nullable Output summarizedSubnet) { } /** - * @param summarizedSubnet toward overlay - * how HUB should deal with routes it received from Spokes + * @param summarizedSubnet toward overlay, how HUB should deal with routes it received from Spokes * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkVpnAccessDestinationNatArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkVpnAccessDestinationNatArgs.java index fb5c97e2..4ecbdfc4 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkVpnAccessDestinationNatArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkVpnAccessDestinationNatArgs.java @@ -5,7 +5,6 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; -import java.lang.Integer; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -16,9 +15,17 @@ public final class GatewayNetworkVpnAccessDestinationNatArgs extends com.pulumi. public static final GatewayNetworkVpnAccessDestinationNatArgs Empty = new GatewayNetworkVpnAccessDestinationNatArgs(); + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="internalIp") private @Nullable Output internalIp; + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional> internalIp() { return Optional.ofNullable(this.internalIp); } @@ -31,9 +38,9 @@ public Optional> name() { } @Import(name="port") - private @Nullable Output port; + private @Nullable Output port; - public Optional> port() { + public Optional> port() { return Optional.ofNullable(this.port); } @@ -63,11 +70,23 @@ public Builder(GatewayNetworkVpnAccessDestinationNatArgs defaults) { $ = new GatewayNetworkVpnAccessDestinationNatArgs(Objects.requireNonNull(defaults)); } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(@Nullable Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } @@ -81,12 +100,12 @@ public Builder name(String name) { return name(Output.of(name)); } - public Builder port(@Nullable Output port) { + public Builder port(@Nullable Output port) { $.port = port; return this; } - public Builder port(Integer port) { + public Builder port(String port) { return port(Output.of(port)); } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkVpnAccessStaticNatArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkVpnAccessStaticNatArgs.java index fc045bb8..4b0ac0de 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkVpnAccessStaticNatArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayNetworkVpnAccessStaticNatArgs.java @@ -5,43 +5,35 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; -import java.util.Optional; -import javax.annotation.Nullable; public final class GatewayNetworkVpnAccessStaticNatArgs extends com.pulumi.resources.ResourceArgs { public static final GatewayNetworkVpnAccessStaticNatArgs Empty = new GatewayNetworkVpnAccessStaticNatArgs(); - @Import(name="internalIp") - private @Nullable Output internalIp; - - public Optional> internalIp() { - return Optional.ofNullable(this.internalIp); - } - - @Import(name="name") - private @Nullable Output name; - - public Optional> name() { - return Optional.ofNullable(this.name); - } - /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - @Import(name="wanName") - private @Nullable Output wanName; + @Import(name="internalIp", required=true) + private Output internalIp; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - public Optional> wanName() { - return Optional.ofNullable(this.wanName); + public Output internalIp() { + return this.internalIp; + } + + @Import(name="name", required=true) + private Output name; + + public Output name() { + return this.name; } private GatewayNetworkVpnAccessStaticNatArgs() {} @@ -49,7 +41,6 @@ private GatewayNetworkVpnAccessStaticNatArgs() {} private GatewayNetworkVpnAccessStaticNatArgs(GatewayNetworkVpnAccessStaticNatArgs $) { this.internalIp = $.internalIp; this.name = $.name; - this.wanName = $.wanName; } public static Builder builder() { @@ -70,16 +61,28 @@ public Builder(GatewayNetworkVpnAccessStaticNatArgs defaults) { $ = new GatewayNetworkVpnAccessStaticNatArgs(Objects.requireNonNull(defaults)); } - public Builder internalIp(@Nullable Output internalIp) { + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder internalIp(Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } - public Builder name(@Nullable Output name) { + public Builder name(Output name) { $.name = name; return this; } @@ -88,28 +91,13 @@ public Builder name(String name) { return name(Output.of(name)); } - /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity - * - * @return builder - * - */ - public Builder wanName(@Nullable Output wanName) { - $.wanName = wanName; - return this; - } - - /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity - * - * @return builder - * - */ - public Builder wanName(String wanName) { - return wanName(Output.of(wanName)); - } - public GatewayNetworkVpnAccessStaticNatArgs build() { + if ($.internalIp == null) { + throw new MissingRequiredPropertyException("GatewayNetworkVpnAccessStaticNatArgs", "internalIp"); + } + if ($.name == null) { + throw new MissingRequiredPropertyException("GatewayNetworkVpnAccessStaticNatArgs", "name"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigArgs.java index 64988e2e..7ee70fa1 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigArgs.java @@ -57,18 +57,14 @@ public Optional> aeIdx() { } /** - * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * */ @Import(name="aeLacpForceUp") private @Nullable Output aeLacpForceUp; /** - * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * */ public Optional> aeLacpForceUp() { @@ -97,9 +93,17 @@ public Optional> critical() { return Optional.ofNullable(this.critical); } + /** + * Interface Description. Can be a variable (i.e. "{{myvar}}") + * + */ @Import(name="description") private @Nullable Output description; + /** + * @return Interface Description. Can be a variable (i.e. "{{myvar}}") + * + */ public Optional> description() { return Optional.ofNullable(this.description); } @@ -142,16 +146,14 @@ public Optional> dslType() { } /** - * if `wan_type`==`dsl` - * 16 bit int + * if `wan_type`==`dsl`, 16 bit int * */ @Import(name="dslVci") private @Nullable Output dslVci; /** - * @return if `wan_type`==`dsl` - * 16 bit int + * @return if `wan_type`==`dsl`, 16 bit int * */ public Optional> dslVci() { @@ -159,16 +161,14 @@ public Optional> dslVci() { } /** - * if `wan_type`==`dsl` - * 8 bit int + * if `wan_type`==`dsl`, 8 bit int * */ @Import(name="dslVpi") private @Nullable Output dslVpi; /** - * @return if `wan_type`==`dsl` - * 8 bit int + * @return if `wan_type`==`dsl`, 8 bit int * */ public Optional> dslVpi() { @@ -295,14 +295,14 @@ public Optional> name() { } /** - * if `usage`==`lan` + * if `usage`==`lan`, name of the `junipermist.org.Network` resource * */ @Import(name="networks") private @Nullable Output> networks; /** - * @return if `usage`==`lan` + * @return if `usage`==`lan`, name of the `junipermist.org.Network` resource * */ public Optional>> networks() { @@ -332,14 +332,14 @@ public Optional> poeDisabled() { } /** - * if `usage`==`lan` + * Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * */ @Import(name="portNetwork") private @Nullable Output portNetwork; /** - * @return if `usage`==`lan` + * @return Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * */ public Optional> portNetwork() { @@ -480,18 +480,10 @@ public Output usage() { return this.usage; } - /** - * if WAN interface is on a VLAN - * - */ @Import(name="vlanId") - private @Nullable Output vlanId; + private @Nullable Output vlanId; - /** - * @return if WAN interface is on a VLAN - * - */ - public Optional> vlanId() { + public Optional> vlanId() { return Optional.ofNullable(this.vlanId); } @@ -511,14 +503,14 @@ public Optional>> vpnPaths() { } /** - * when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * */ @Import(name="wanArpPolicer") private @Nullable Output wanArpPolicer; /** - * @return when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @return Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * */ public Optional> wanArpPolicer() { @@ -526,14 +518,14 @@ public Optional> wanArpPolicer() { } /** - * optional, if spoke should reach this port by a different IP + * Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * */ @Import(name="wanExtIp") private @Nullable Output wanExtIp; /** - * @return optional, if spoke should reach this port by a different IP + * @return Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * */ public Optional> wanExtIp() { @@ -541,14 +533,14 @@ public Optional> wanExtIp() { } /** - * Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * */ @Import(name="wanExtraRoutes") private @Nullable Output> wanExtraRoutes; /** - * @return Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * @return Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * */ public Optional>> wanExtraRoutes() { @@ -556,14 +548,29 @@ public Optional>> wanExtr } /** - * if `usage`==`wan` + * Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + */ + @Import(name="wanNetworks") + private @Nullable Output> wanNetworks; + + /** + * @return Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + */ + public Optional>> wanNetworks() { + return Optional.ofNullable(this.wanNetworks); + } + + /** + * Only if `usage`==`wan` * */ @Import(name="wanProbeOverride") private @Nullable Output wanProbeOverride; /** - * @return if `usage`==`wan` + * @return Only if `usage`==`wan` * */ public Optional> wanProbeOverride() { @@ -571,14 +578,14 @@ public Optional> wanProbeOverride( } /** - * optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip * */ @Import(name="wanSourceNat") private @Nullable Output wanSourceNat; /** - * @return optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * @return Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip * */ public Optional> wanSourceNat() { @@ -586,14 +593,14 @@ public Optional> wanSourceNat() { } /** - * if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * */ @Import(name="wanType") private @Nullable Output wanType; /** - * @return if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * @return Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * */ public Optional> wanType() { @@ -642,6 +649,7 @@ private GatewayPortConfigArgs(GatewayPortConfigArgs $) { this.wanArpPolicer = $.wanArpPolicer; this.wanExtIp = $.wanExtIp; this.wanExtraRoutes = $.wanExtraRoutes; + this.wanNetworks = $.wanNetworks; this.wanProbeOverride = $.wanProbeOverride; this.wanSourceNat = $.wanSourceNat; this.wanType = $.wanType; @@ -708,9 +716,7 @@ public Builder aeIdx(String aeIdx) { } /** - * @param aeLacpForceUp For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @param aeLacpForceUp For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * * @return builder * @@ -721,9 +727,7 @@ public Builder aeLacpForceUp(@Nullable Output aeLacpForceUp) { } /** - * @param aeLacpForceUp For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @param aeLacpForceUp For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * * @return builder * @@ -762,11 +766,23 @@ public Builder critical(Boolean critical) { return critical(Output.of(critical)); } + /** + * @param description Interface Description. Can be a variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder description(@Nullable Output description) { $.description = description; return this; } + /** + * @param description Interface Description. Can be a variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder description(String description) { return description(Output.of(description)); } @@ -823,8 +839,7 @@ public Builder dslType(String dslType) { } /** - * @param dslVci if `wan_type`==`dsl` - * 16 bit int + * @param dslVci if `wan_type`==`dsl`, 16 bit int * * @return builder * @@ -835,8 +850,7 @@ public Builder dslVci(@Nullable Output dslVci) { } /** - * @param dslVci if `wan_type`==`dsl` - * 16 bit int + * @param dslVci if `wan_type`==`dsl`, 16 bit int * * @return builder * @@ -846,8 +860,7 @@ public Builder dslVci(Integer dslVci) { } /** - * @param dslVpi if `wan_type`==`dsl` - * 8 bit int + * @param dslVpi if `wan_type`==`dsl`, 8 bit int * * @return builder * @@ -858,8 +871,7 @@ public Builder dslVpi(@Nullable Output dslVpi) { } /** - * @param dslVpi if `wan_type`==`dsl` - * 8 bit int + * @param dslVpi if `wan_type`==`dsl`, 8 bit int * * @return builder * @@ -1034,7 +1046,7 @@ public Builder name(String name) { } /** - * @param networks if `usage`==`lan` + * @param networks if `usage`==`lan`, name of the `junipermist.org.Network` resource * * @return builder * @@ -1045,7 +1057,7 @@ public Builder networks(@Nullable Output> networks) { } /** - * @param networks if `usage`==`lan` + * @param networks if `usage`==`lan`, name of the `junipermist.org.Network` resource * * @return builder * @@ -1055,7 +1067,7 @@ public Builder networks(List networks) { } /** - * @param networks if `usage`==`lan` + * @param networks if `usage`==`lan`, name of the `junipermist.org.Network` resource * * @return builder * @@ -1095,7 +1107,7 @@ public Builder poeDisabled(Boolean poeDisabled) { } /** - * @param portNetwork if `usage`==`lan` + * @param portNetwork Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * * @return builder * @@ -1106,7 +1118,7 @@ public Builder portNetwork(@Nullable Output portNetwork) { } /** - * @param portNetwork if `usage`==`lan` + * @param portNetwork Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * * @return builder * @@ -1311,24 +1323,12 @@ public Builder usage(String usage) { return usage(Output.of(usage)); } - /** - * @param vlanId if WAN interface is on a VLAN - * - * @return builder - * - */ - public Builder vlanId(@Nullable Output vlanId) { + public Builder vlanId(@Nullable Output vlanId) { $.vlanId = vlanId; return this; } - /** - * @param vlanId if WAN interface is on a VLAN - * - * @return builder - * - */ - public Builder vlanId(Integer vlanId) { + public Builder vlanId(String vlanId) { return vlanId(Output.of(vlanId)); } @@ -1354,7 +1354,7 @@ public Builder vpnPaths(Map vpnPaths) { } /** - * @param wanArpPolicer when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @param wanArpPolicer Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * * @return builder * @@ -1365,7 +1365,7 @@ public Builder wanArpPolicer(@Nullable Output wanArpPolicer) { } /** - * @param wanArpPolicer when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @param wanArpPolicer Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * * @return builder * @@ -1375,7 +1375,7 @@ public Builder wanArpPolicer(String wanArpPolicer) { } /** - * @param wanExtIp optional, if spoke should reach this port by a different IP + * @param wanExtIp Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * * @return builder * @@ -1386,7 +1386,7 @@ public Builder wanExtIp(@Nullable Output wanExtIp) { } /** - * @param wanExtIp optional, if spoke should reach this port by a different IP + * @param wanExtIp Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * * @return builder * @@ -1396,7 +1396,7 @@ public Builder wanExtIp(String wanExtIp) { } /** - * @param wanExtraRoutes Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * @param wanExtraRoutes Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * * @return builder * @@ -1407,7 +1407,7 @@ public Builder wanExtraRoutes(@Nullable Output wa } /** - * @param wanProbeOverride if `usage`==`wan` + * @param wanNetworks Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + * @return builder + * + */ + public Builder wanNetworks(@Nullable Output> wanNetworks) { + $.wanNetworks = wanNetworks; + return this; + } + + /** + * @param wanNetworks Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + * @return builder + * + */ + public Builder wanNetworks(List wanNetworks) { + return wanNetworks(Output.of(wanNetworks)); + } + + /** + * @param wanNetworks Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + * @return builder + * + */ + public Builder wanNetworks(String... wanNetworks) { + return wanNetworks(List.of(wanNetworks)); + } + + /** + * @param wanProbeOverride Only if `usage`==`wan` * * @return builder * @@ -1428,7 +1459,7 @@ public Builder wanProbeOverride(@Nullable Output } /** - * @param wanSourceNat optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * @param wanSourceNat Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip * * @return builder * @@ -1459,7 +1490,7 @@ public Builder wanSourceNat(GatewayPortConfigWanSourceNatArgs wanSourceNat) { } /** - * @param wanType if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * @param wanType Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * * @return builder * @@ -1470,7 +1501,7 @@ public Builder wanType(@Nullable Output wanType) { } /** - * @param wanType if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * @param wanType Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigIpConfigArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigIpConfigArgs.java index c246d9b9..a574775d 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigIpConfigArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigIpConfigArgs.java @@ -47,36 +47,44 @@ public Optional>> dnsSuffixes() { } /** - * except for out-of_band interface (vme/em0/fxp0) + * except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * */ @Import(name="gateway") private @Nullable Output gateway; /** - * @return except for out-of_band interface (vme/em0/fxp0) + * @return except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * */ public Optional> gateway() { return Optional.ofNullable(this.gateway); } + /** + * Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="ip") private @Nullable Output ip; + /** + * @return Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + */ public Optional> ip() { return Optional.ofNullable(this.ip); } /** - * used only if `subnet` is not specified in `networks` + * used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * */ @Import(name="netmask") private @Nullable Output netmask; /** - * @return used only if `subnet` is not specified in `networks` + * @return used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * */ public Optional> netmask() { @@ -254,7 +262,7 @@ public Builder dnsSuffixes(String... dnsSuffixes) { } /** - * @param gateway except for out-of_band interface (vme/em0/fxp0) + * @param gateway except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * * @return builder * @@ -265,7 +273,7 @@ public Builder gateway(@Nullable Output gateway) { } /** - * @param gateway except for out-of_band interface (vme/em0/fxp0) + * @param gateway except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * * @return builder * @@ -274,17 +282,29 @@ public Builder gateway(String gateway) { return gateway(Output.of(gateway)); } + /** + * @param ip Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder ip(@Nullable Output ip) { $.ip = ip; return this; } + /** + * @param ip Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder ip(String ip) { return ip(Output.of(ip)); } /** - * @param netmask used only if `subnet` is not specified in `networks` + * @param netmask used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * * @return builder * @@ -295,7 +315,7 @@ public Builder netmask(@Nullable Output netmask) { } /** - * @param netmask used only if `subnet` is not specified in `networks` + * @param netmask used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigTrafficShapingArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigTrafficShapingArgs.java index f829d514..2c8e3f10 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigTrafficShapingArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigTrafficShapingArgs.java @@ -18,16 +18,14 @@ public final class GatewayPortConfigTrafficShapingArgs extends com.pulumi.resour public static final GatewayPortConfigTrafficShapingArgs Empty = new GatewayPortConfigTrafficShapingArgs(); /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ @Import(name="classPercentages") private @Nullable Output> classPercentages; /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ public Optional>> classPercentages() { @@ -41,11 +39,27 @@ public Optional> enabled() { return Optional.ofNullable(this.enabled); } + /** + * Interface Transmit Cap in kbps + * + */ + @Import(name="maxTxKbps") + private @Nullable Output maxTxKbps; + + /** + * @return Interface Transmit Cap in kbps + * + */ + public Optional> maxTxKbps() { + return Optional.ofNullable(this.maxTxKbps); + } + private GatewayPortConfigTrafficShapingArgs() {} private GatewayPortConfigTrafficShapingArgs(GatewayPortConfigTrafficShapingArgs $) { this.classPercentages = $.classPercentages; this.enabled = $.enabled; + this.maxTxKbps = $.maxTxKbps; } public static Builder builder() { @@ -67,8 +81,7 @@ public Builder(GatewayPortConfigTrafficShapingArgs defaults) { } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -79,8 +92,7 @@ public Builder classPercentages(@Nullable Output> classPercentages } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -90,8 +102,7 @@ public Builder classPercentages(List classPercentages) { } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -109,6 +120,27 @@ public Builder enabled(Boolean enabled) { return enabled(Output.of(enabled)); } + /** + * @param maxTxKbps Interface Transmit Cap in kbps + * + * @return builder + * + */ + public Builder maxTxKbps(@Nullable Output maxTxKbps) { + $.maxTxKbps = maxTxKbps; + return this; + } + + /** + * @param maxTxKbps Interface Transmit Cap in kbps + * + * @return builder + * + */ + public Builder maxTxKbps(Integer maxTxKbps) { + return maxTxKbps(Output.of(maxTxKbps)); + } + public GatewayPortConfigTrafficShapingArgs build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigVpnPathsTrafficShapingArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigVpnPathsTrafficShapingArgs.java index c29b1659..78c8ed29 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigVpnPathsTrafficShapingArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayPortConfigVpnPathsTrafficShapingArgs.java @@ -18,16 +18,14 @@ public final class GatewayPortConfigVpnPathsTrafficShapingArgs extends com.pulum public static final GatewayPortConfigVpnPathsTrafficShapingArgs Empty = new GatewayPortConfigVpnPathsTrafficShapingArgs(); /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ @Import(name="classPercentages") private @Nullable Output> classPercentages; /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ public Optional>> classPercentages() { @@ -41,11 +39,27 @@ public Optional> enabled() { return Optional.ofNullable(this.enabled); } + /** + * Interface Transmit Cap in kbps + * + */ + @Import(name="maxTxKbps") + private @Nullable Output maxTxKbps; + + /** + * @return Interface Transmit Cap in kbps + * + */ + public Optional> maxTxKbps() { + return Optional.ofNullable(this.maxTxKbps); + } + private GatewayPortConfigVpnPathsTrafficShapingArgs() {} private GatewayPortConfigVpnPathsTrafficShapingArgs(GatewayPortConfigVpnPathsTrafficShapingArgs $) { this.classPercentages = $.classPercentages; this.enabled = $.enabled; + this.maxTxKbps = $.maxTxKbps; } public static Builder builder() { @@ -67,8 +81,7 @@ public Builder(GatewayPortConfigVpnPathsTrafficShapingArgs defaults) { } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -79,8 +92,7 @@ public Builder classPercentages(@Nullable Output> classPercentages } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -90,8 +102,7 @@ public Builder classPercentages(List classPercentages) { } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -109,6 +120,27 @@ public Builder enabled(Boolean enabled) { return enabled(Output.of(enabled)); } + /** + * @param maxTxKbps Interface Transmit Cap in kbps + * + * @return builder + * + */ + public Builder maxTxKbps(@Nullable Output maxTxKbps) { + $.maxTxKbps = maxTxKbps; + return this; + } + + /** + * @param maxTxKbps Interface Transmit Cap in kbps + * + * @return builder + * + */ + public Builder maxTxKbps(Integer maxTxKbps) { + return maxTxKbps(Output.of(maxTxKbps)); + } + public GatewayPortConfigVpnPathsTrafficShapingArgs build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayRoutingPoliciesTermActionArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayRoutingPoliciesTermActionArgs.java index c3680efd..36ef1c75 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayRoutingPoliciesTermActionArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayRoutingPoliciesTermActionArgs.java @@ -46,6 +46,21 @@ public Optional>> addTargetVrfs() { return Optional.ofNullable(this.addTargetVrfs); } + /** + * route aggregation + * + */ + @Import(name="aggregates") + private @Nullable Output> aggregates; + + /** + * @return route aggregation + * + */ + public Optional>> aggregates() { + return Optional.ofNullable(this.aggregates); + } + /** * when used as export policy, optional * @@ -134,6 +149,7 @@ private GatewayRoutingPoliciesTermActionArgs(GatewayRoutingPoliciesTermActionArg this.accept = $.accept; this.addCommunities = $.addCommunities; this.addTargetVrfs = $.addTargetVrfs; + this.aggregates = $.aggregates; this.communities = $.communities; this.excludeAsPaths = $.excludeAsPaths; this.excludeCommunities = $.excludeCommunities; @@ -213,6 +229,37 @@ public Builder addTargetVrfs(String... addTargetVrfs) { return addTargetVrfs(List.of(addTargetVrfs)); } + /** + * @param aggregates route aggregation + * + * @return builder + * + */ + public Builder aggregates(@Nullable Output> aggregates) { + $.aggregates = aggregates; + return this; + } + + /** + * @param aggregates route aggregation + * + * @return builder + * + */ + public Builder aggregates(List aggregates) { + return aggregates(Output.of(aggregates)); + } + + /** + * @param aggregates route aggregation + * + * @return builder + * + */ + public Builder aggregates(String... aggregates) { + return aggregates(List.of(aggregates)); + } + /** * @param communities when used as export policy, optional * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayRoutingPoliciesTermMatchingArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayRoutingPoliciesTermMatchingArgs.java index 1353d2a7..a1116b91 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayRoutingPoliciesTermMatchingArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayRoutingPoliciesTermMatchingArgs.java @@ -107,16 +107,14 @@ public Optional> vpnPat } /** - * overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * overlay-facing criteria (used for bgp_config where via=vpn). ordered- * */ @Import(name="vpnPaths") private @Nullable Output> vpnPaths; /** - * @return overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @return overlay-facing criteria (used for bgp_config where via=vpn). ordered- * */ public Optional>> vpnPaths() { @@ -324,8 +322,7 @@ public Builder vpnPathSla(GatewayRoutingPoliciesTermMatchingVpnPathSlaArgs vpnPa } /** - * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn). ordered- * * @return builder * @@ -336,8 +333,7 @@ public Builder vpnPaths(@Nullable Output> vpnPaths) { } /** - * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn). ordered- * * @return builder * @@ -347,8 +343,7 @@ public Builder vpnPaths(List vpnPaths) { } /** - * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn). ordered- * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayRoutingPoliciesTermMatchingRouteExistsArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayRoutingPoliciesTermMatchingRouteExistsArgs.java index 3b9ee215..7926cea3 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayRoutingPoliciesTermMatchingRouteExistsArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayRoutingPoliciesTermMatchingRouteExistsArgs.java @@ -23,16 +23,14 @@ public Optional> route() { } /** - * name of the vrf instance - * it can also be the name of the VPN or wan if they + * name of the vrf instance, it can also be the name of the VPN or wan if they * */ @Import(name="vrfName") private @Nullable Output vrfName; /** - * @return name of the vrf instance - * it can also be the name of the VPN or wan if they + * @return name of the vrf instance, it can also be the name of the VPN or wan if they * */ public Optional> vrfName() { @@ -74,8 +72,7 @@ public Builder route(String route) { } /** - * @param vrfName name of the vrf instance - * it can also be the name of the VPN or wan if they + * @param vrfName name of the vrf instance, it can also be the name of the VPN or wan if they * * @return builder * @@ -86,8 +83,7 @@ public Builder vrfName(@Nullable Output vrfName) { } /** - * @param vrfName name of the vrf instance - * it can also be the name of the VPN or wan if they + * @param vrfName name of the vrf instance, it can also be the name of the VPN or wan if they * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayServicePolicyArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayServicePolicyArgs.java index 92158155..845bb11d 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayServicePolicyArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayServicePolicyArgs.java @@ -95,16 +95,14 @@ public Optional> name() { } /** - * by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * */ @Import(name="pathPreference") private @Nullable Output pathPreference; /** - * @return by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @return by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * */ public Optional> pathPreference() { @@ -296,8 +294,7 @@ public Builder name(String name) { } /** - * @param pathPreference by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @param pathPreference by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * * @return builder * @@ -308,8 +305,7 @@ public Builder pathPreference(@Nullable Output pathPreference) { } /** - * @param pathPreference by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @param pathPreference by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayState.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayState.java index 3e6141e1..322856fc 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayState.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayState.java @@ -37,14 +37,14 @@ public final class GatewayState extends com.pulumi.resources.ResourceArgs { public static final GatewayState Empty = new GatewayState(); /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ @Import(name="additionalConfigCmds") private @Nullable Output> additionalConfigCmds; /** - * @return additional CLI commands to append to the generated Junos config **Note**: no check is done + * @return additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ public Optional>> additionalConfigCmds() { @@ -556,7 +556,7 @@ public Builder(GatewayState defaults) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -567,7 +567,7 @@ public Builder additionalConfigCmds(@Nullable Output> additionalCon } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -577,7 +577,7 @@ public Builder additionalConfigCmds(List additionalConfigCmds) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsArgs.java index 518a0a1d..d0f291a9 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsArgs.java @@ -31,14 +31,14 @@ public Optional> autoProvision() { } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ @Import(name="ikeLifetime") private @Nullable Output ikeLifetime; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ public Optional> ikeLifetime() { @@ -46,14 +46,14 @@ public Optional> ikeLifetime() { } /** - * Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * */ @Import(name="ikeMode") private @Nullable Output ikeMode; /** - * @return Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @return Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * */ public Optional> ikeMode() { @@ -61,14 +61,14 @@ public Optional> ikeMode() { } /** - * if `provider`== `custom-ipsec` + * if `provider`==`custom-ipsec` * */ @Import(name="ikeProposals") private @Nullable Output> ikeProposals; /** - * @return if `provider`== `custom-ipsec` + * @return if `provider`==`custom-ipsec` * */ public Optional>> ikeProposals() { @@ -76,14 +76,14 @@ public Optional>> ikeProposals( } /** - * if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ @Import(name="ipsecLifetime") private @Nullable Output ipsecLifetime; /** - * @return if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ public Optional> ipsecLifetime() { @@ -91,14 +91,14 @@ public Optional> ipsecLifetime() { } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` * */ @Import(name="ipsecProposals") private @Nullable Output> ipsecProposals; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ public Optional>> ipsecProposals() { @@ -106,20 +106,14 @@ public Optional>> ipsecPropos } /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ @Import(name="localId") private @Nullable Output localId; /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional> localId() { @@ -127,14 +121,14 @@ public Optional> localId() { } /** - * enum: `active-active`, `active-standby` + * Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * */ @Import(name="mode") private @Nullable Output mode; /** - * @return enum: `active-active`, `active-standby` + * @return Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * */ public Optional> mode() { @@ -142,36 +136,44 @@ public Optional> mode() { } /** - * networks reachable via this tunnel + * if `provider`==`custom-ipsec`, networks reachable via this tunnel * */ @Import(name="networks") private @Nullable Output> networks; /** - * @return networks reachable via this tunnel + * @return if `provider`==`custom-ipsec`, networks reachable via this tunnel * */ public Optional>> networks() { return Optional.ofNullable(this.networks); } + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ @Import(name="primary") private @Nullable Output primary; + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ public Optional> primary() { return Optional.ofNullable(this.primary); } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` * */ @Import(name="probe") private @Nullable Output probe; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ public Optional> probe() { @@ -179,14 +181,14 @@ public Optional> probe() { } /** - * Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * */ @Import(name="protocol") private @Nullable Output protocol; /** - * @return Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * @return Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * */ public Optional> protocol() { @@ -194,14 +196,14 @@ public Optional> protocol() { } /** - * enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * */ @Import(name="provider") private @Nullable Output provider; /** - * @return enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @return Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * */ public Optional> provider() { @@ -209,42 +211,44 @@ public Optional> provider() { } /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ @Import(name="psk") private @Nullable Output psk; /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional> psk() { return Optional.ofNullable(this.psk); } + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ @Import(name="secondary") private @Nullable Output secondary; + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ public Optional> secondary() { return Optional.ofNullable(this.secondary); } /** - * Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * */ @Import(name="version") private @Nullable Output version; /** - * @return Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @return Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * */ public Optional> version() { @@ -300,7 +304,7 @@ public Builder autoProvision(GatewayTunnelConfigsAutoProvisionArgs autoProvision } /** - * @param ikeLifetime Only if `provider`== `custom-ipsec` + * @param ikeLifetime Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * * @return builder * @@ -311,7 +315,7 @@ public Builder ikeLifetime(@Nullable Output ikeLifetime) { } /** - * @param ikeLifetime Only if `provider`== `custom-ipsec` + * @param ikeLifetime Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * * @return builder * @@ -321,7 +325,7 @@ public Builder ikeLifetime(Integer ikeLifetime) { } /** - * @param ikeMode Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @param ikeMode Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * * @return builder * @@ -332,7 +336,7 @@ public Builder ikeMode(@Nullable Output ikeMode) { } /** - * @param ikeMode Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @param ikeMode Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * * @return builder * @@ -342,7 +346,7 @@ public Builder ikeMode(String ikeMode) { } /** - * @param ikeProposals if `provider`== `custom-ipsec` + * @param ikeProposals if `provider`==`custom-ipsec` * * @return builder * @@ -353,7 +357,7 @@ public Builder ikeProposals(@Nullable Output ikeProposa } /** - * @param ikeProposals if `provider`== `custom-ipsec` + * @param ikeProposals if `provider`==`custom-ipsec` * * @return builder * @@ -373,7 +377,7 @@ public Builder ikeProposals(GatewayTunnelConfigsIkeProposalArgs... ikeProposals) } /** - * @param ipsecLifetime if `provider`== `custom-ipsec` + * @param ipsecLifetime Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * * @return builder * @@ -384,7 +388,7 @@ public Builder ipsecLifetime(@Nullable Output ipsecLifetime) { } /** - * @param ipsecLifetime if `provider`== `custom-ipsec` + * @param ipsecLifetime Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * * @return builder * @@ -394,7 +398,7 @@ public Builder ipsecLifetime(Integer ipsecLifetime) { } /** - * @param ipsecProposals Only if `provider`== `custom-ipsec` + * @param ipsecProposals Only if `provider`==`custom-ipsec` * * @return builder * @@ -405,7 +409,7 @@ public Builder ipsecProposals(@Nullable Output ipsecP } /** - * @param ipsecProposals Only if `provider`== `custom-ipsec` + * @param ipsecProposals Only if `provider`==`custom-ipsec` * * @return builder * @@ -425,10 +429,7 @@ public Builder ipsecProposals(GatewayTunnelConfigsIpsecProposalArgs... ipsecProp } /** - * @param localId Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @param localId Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -439,10 +440,7 @@ public Builder localId(@Nullable Output localId) { } /** - * @param localId Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @param localId Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -452,7 +450,7 @@ public Builder localId(String localId) { } /** - * @param mode enum: `active-active`, `active-standby` + * @param mode Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * * @return builder * @@ -463,7 +461,7 @@ public Builder mode(@Nullable Output mode) { } /** - * @param mode enum: `active-active`, `active-standby` + * @param mode Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * * @return builder * @@ -473,7 +471,7 @@ public Builder mode(String mode) { } /** - * @param networks networks reachable via this tunnel + * @param networks if `provider`==`custom-ipsec`, networks reachable via this tunnel * * @return builder * @@ -484,7 +482,7 @@ public Builder networks(@Nullable Output> networks) { } /** - * @param networks networks reachable via this tunnel + * @param networks if `provider`==`custom-ipsec`, networks reachable via this tunnel * * @return builder * @@ -494,7 +492,7 @@ public Builder networks(List networks) { } /** - * @param networks networks reachable via this tunnel + * @param networks if `provider`==`custom-ipsec`, networks reachable via this tunnel * * @return builder * @@ -503,17 +501,29 @@ public Builder networks(String... networks) { return networks(List.of(networks)); } + /** + * @param primary Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + * @return builder + * + */ public Builder primary(@Nullable Output primary) { $.primary = primary; return this; } + /** + * @param primary Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + * @return builder + * + */ public Builder primary(GatewayTunnelConfigsPrimaryArgs primary) { return primary(Output.of(primary)); } /** - * @param probe Only if `provider`== `custom-ipsec` + * @param probe Only if `provider`==`custom-ipsec` * * @return builder * @@ -524,7 +534,7 @@ public Builder probe(@Nullable Output probe) { } /** - * @param probe Only if `provider`== `custom-ipsec` + * @param probe Only if `provider`==`custom-ipsec` * * @return builder * @@ -534,7 +544,7 @@ public Builder probe(GatewayTunnelConfigsProbeArgs probe) { } /** - * @param protocol Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * @param protocol Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * * @return builder * @@ -545,7 +555,7 @@ public Builder protocol(@Nullable Output protocol) { } /** - * @param protocol Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * @param protocol Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * * @return builder * @@ -555,7 +565,7 @@ public Builder protocol(String protocol) { } /** - * @param provider enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @param provider Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * * @return builder * @@ -566,7 +576,7 @@ public Builder provider(@Nullable Output provider) { } /** - * @param provider enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @param provider Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * * @return builder * @@ -576,10 +586,7 @@ public Builder provider(String provider) { } /** - * @param psk Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @param psk Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -590,10 +597,7 @@ public Builder psk(@Nullable Output psk) { } /** - * @param psk Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @param psk Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -602,17 +606,29 @@ public Builder psk(String psk) { return psk(Output.of(psk)); } + /** + * @param secondary Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + * @return builder + * + */ public Builder secondary(@Nullable Output secondary) { $.secondary = secondary; return this; } + /** + * @param secondary Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + * @return builder + * + */ public Builder secondary(GatewayTunnelConfigsSecondaryArgs secondary) { return secondary(Output.of(secondary)); } /** - * @param version Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @param version Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * * @return builder * @@ -623,7 +639,7 @@ public Builder version(@Nullable Output version) { } /** - * @param version Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @param version Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsAutoProvisionArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsAutoProvisionArgs.java index 514696e7..694da6fa 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsAutoProvisionArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsAutoProvisionArgs.java @@ -5,10 +5,12 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import com.pulumi.junipermist.device.inputs.GatewayTunnelConfigsAutoProvisionLatlngArgs; import com.pulumi.junipermist.device.inputs.GatewayTunnelConfigsAutoProvisionPrimaryArgs; import com.pulumi.junipermist.device.inputs.GatewayTunnelConfigsAutoProvisionSecondaryArgs; import java.lang.Boolean; +import java.lang.String; import java.util.Objects; import java.util.Optional; import javax.annotation.Nullable; @@ -25,9 +27,17 @@ public Optional> enable() { return Optional.ofNullable(this.enable); } + /** + * API override for POP selection + * + */ @Import(name="latlng") private @Nullable Output latlng; + /** + * @return API override for POP selection + * + */ public Optional> latlng() { return Optional.ofNullable(this.latlng); } @@ -39,6 +49,36 @@ public Optional> primary() return Optional.ofNullable(this.primary); } + /** + * enum: `jse-ipsec`, `zscaler-ipsec` + * + */ + @Import(name="provider", required=true) + private Output provider; + + /** + * @return enum: `jse-ipsec`, `zscaler-ipsec` + * + */ + public Output provider() { + return this.provider; + } + + /** + * API override for POP selection + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return API override for POP selection + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + @Import(name="secondary") private @Nullable Output secondary; @@ -52,6 +92,8 @@ private GatewayTunnelConfigsAutoProvisionArgs(GatewayTunnelConfigsAutoProvisionA this.enable = $.enable; this.latlng = $.latlng; this.primary = $.primary; + this.provider = $.provider; + this.region = $.region; this.secondary = $.secondary; } @@ -82,11 +124,23 @@ public Builder enable(Boolean enable) { return enable(Output.of(enable)); } + /** + * @param latlng API override for POP selection + * + * @return builder + * + */ public Builder latlng(@Nullable Output latlng) { $.latlng = latlng; return this; } + /** + * @param latlng API override for POP selection + * + * @return builder + * + */ public Builder latlng(GatewayTunnelConfigsAutoProvisionLatlngArgs latlng) { return latlng(Output.of(latlng)); } @@ -100,6 +154,48 @@ public Builder primary(GatewayTunnelConfigsAutoProvisionPrimaryArgs primary) { return primary(Output.of(primary)); } + /** + * @param provider enum: `jse-ipsec`, `zscaler-ipsec` + * + * @return builder + * + */ + public Builder provider(Output provider) { + $.provider = provider; + return this; + } + + /** + * @param provider enum: `jse-ipsec`, `zscaler-ipsec` + * + * @return builder + * + */ + public Builder provider(String provider) { + return provider(Output.of(provider)); + } + + /** + * @param region API override for POP selection + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region API override for POP selection + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + public Builder secondary(@Nullable Output secondary) { $.secondary = secondary; return this; @@ -110,6 +206,9 @@ public Builder secondary(GatewayTunnelConfigsAutoProvisionSecondaryArgs secondar } public GatewayTunnelConfigsAutoProvisionArgs build() { + if ($.provider == null) { + throw new MissingRequiredPropertyException("GatewayTunnelConfigsAutoProvisionArgs", "provider"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsAutoProvisionPrimaryArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsAutoProvisionPrimaryArgs.java index 6ddbcbab..45b0c5b9 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsAutoProvisionPrimaryArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsAutoProvisionPrimaryArgs.java @@ -16,11 +16,11 @@ public final class GatewayTunnelConfigsAutoProvisionPrimaryArgs extends com.pulu public static final GatewayTunnelConfigsAutoProvisionPrimaryArgs Empty = new GatewayTunnelConfigsAutoProvisionPrimaryArgs(); - @Import(name="numHosts") - private @Nullable Output numHosts; + @Import(name="probeIps") + private @Nullable Output> probeIps; - public Optional> numHosts() { - return Optional.ofNullable(this.numHosts); + public Optional>> probeIps() { + return Optional.ofNullable(this.probeIps); } /** @@ -41,7 +41,7 @@ public Optional>> wanNames() { private GatewayTunnelConfigsAutoProvisionPrimaryArgs() {} private GatewayTunnelConfigsAutoProvisionPrimaryArgs(GatewayTunnelConfigsAutoProvisionPrimaryArgs $) { - this.numHosts = $.numHosts; + this.probeIps = $.probeIps; this.wanNames = $.wanNames; } @@ -63,13 +63,17 @@ public Builder(GatewayTunnelConfigsAutoProvisionPrimaryArgs defaults) { $ = new GatewayTunnelConfigsAutoProvisionPrimaryArgs(Objects.requireNonNull(defaults)); } - public Builder numHosts(@Nullable Output numHosts) { - $.numHosts = numHosts; + public Builder probeIps(@Nullable Output> probeIps) { + $.probeIps = probeIps; return this; } - public Builder numHosts(String numHosts) { - return numHosts(Output.of(numHosts)); + public Builder probeIps(List probeIps) { + return probeIps(Output.of(probeIps)); + } + + public Builder probeIps(String... probeIps) { + return probeIps(List.of(probeIps)); } /** diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsAutoProvisionSecondaryArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsAutoProvisionSecondaryArgs.java index 0e17e34c..9c1be94c 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsAutoProvisionSecondaryArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsAutoProvisionSecondaryArgs.java @@ -16,11 +16,11 @@ public final class GatewayTunnelConfigsAutoProvisionSecondaryArgs extends com.pu public static final GatewayTunnelConfigsAutoProvisionSecondaryArgs Empty = new GatewayTunnelConfigsAutoProvisionSecondaryArgs(); - @Import(name="numHosts") - private @Nullable Output numHosts; + @Import(name="probeIps") + private @Nullable Output> probeIps; - public Optional> numHosts() { - return Optional.ofNullable(this.numHosts); + public Optional>> probeIps() { + return Optional.ofNullable(this.probeIps); } /** @@ -41,7 +41,7 @@ public Optional>> wanNames() { private GatewayTunnelConfigsAutoProvisionSecondaryArgs() {} private GatewayTunnelConfigsAutoProvisionSecondaryArgs(GatewayTunnelConfigsAutoProvisionSecondaryArgs $) { - this.numHosts = $.numHosts; + this.probeIps = $.probeIps; this.wanNames = $.wanNames; } @@ -63,13 +63,17 @@ public Builder(GatewayTunnelConfigsAutoProvisionSecondaryArgs defaults) { $ = new GatewayTunnelConfigsAutoProvisionSecondaryArgs(Objects.requireNonNull(defaults)); } - public Builder numHosts(@Nullable Output numHosts) { - $.numHosts = numHosts; + public Builder probeIps(@Nullable Output> probeIps) { + $.probeIps = probeIps; return this; } - public Builder numHosts(String numHosts) { - return numHosts(Output.of(numHosts)); + public Builder probeIps(List probeIps) { + return probeIps(Output.of(probeIps)); + } + + public Builder probeIps(String... probeIps) { + return probeIps(List.of(probeIps)); } /** diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsIpsecProposalArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsIpsecProposalArgs.java index 72ac8d10..109a4073 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsIpsecProposalArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsIpsecProposalArgs.java @@ -31,7 +31,7 @@ public Optional> authAlgo() { } /** - * Only if `provider`== `custom-ipsec`. enum: + * Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -48,7 +48,7 @@ public Optional> authAlgo() { private @Nullable Output dhGroup; /** - * @return Only if `provider`== `custom-ipsec`. enum: + * @return Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -128,7 +128,7 @@ public Builder authAlgo(String authAlgo) { } /** - * @param dhGroup Only if `provider`== `custom-ipsec`. enum: + * @param dhGroup Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -149,7 +149,7 @@ public Builder dhGroup(@Nullable Output dhGroup) { } /** - * @param dhGroup Only if `provider`== `custom-ipsec`. enum: + * @param dhGroup Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsPrimaryArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsPrimaryArgs.java index 98f2d7b2..0d955d99 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsPrimaryArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsPrimaryArgs.java @@ -5,6 +5,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.List; import java.util.Objects; @@ -16,26 +17,22 @@ public final class GatewayTunnelConfigsPrimaryArgs extends com.pulumi.resources. public static final GatewayTunnelConfigsPrimaryArgs Empty = new GatewayTunnelConfigsPrimaryArgs(); - @Import(name="hosts") - private @Nullable Output> hosts; + @Import(name="hosts", required=true) + private Output> hosts; - public Optional>> hosts() { - return Optional.ofNullable(this.hosts); + public Output> hosts() { + return this.hosts; } /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ @Import(name="internalIps") private @Nullable Output> internalIps; /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ public Optional>> internalIps() { @@ -50,25 +47,25 @@ public Optional>> probeIps() { } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ @Import(name="remoteIds") private @Nullable Output> remoteIds; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional>> remoteIds() { return Optional.ofNullable(this.remoteIds); } - @Import(name="wanNames") - private @Nullable Output> wanNames; + @Import(name="wanNames", required=true) + private Output> wanNames; - public Optional>> wanNames() { - return Optional.ofNullable(this.wanNames); + public Output> wanNames() { + return this.wanNames; } private GatewayTunnelConfigsPrimaryArgs() {} @@ -99,7 +96,7 @@ public Builder(GatewayTunnelConfigsPrimaryArgs defaults) { $ = new GatewayTunnelConfigsPrimaryArgs(Objects.requireNonNull(defaults)); } - public Builder hosts(@Nullable Output> hosts) { + public Builder hosts(Output> hosts) { $.hosts = hosts; return this; } @@ -113,9 +110,7 @@ public Builder hosts(String... hosts) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -126,9 +121,7 @@ public Builder internalIps(@Nullable Output> internalIps) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -138,9 +131,7 @@ public Builder internalIps(List internalIps) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -163,7 +154,7 @@ public Builder probeIps(String... probeIps) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -174,7 +165,7 @@ public Builder remoteIds(@Nullable Output> remoteIds) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -184,7 +175,7 @@ public Builder remoteIds(List remoteIds) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -193,7 +184,7 @@ public Builder remoteIds(String... remoteIds) { return remoteIds(List.of(remoteIds)); } - public Builder wanNames(@Nullable Output> wanNames) { + public Builder wanNames(Output> wanNames) { $.wanNames = wanNames; return this; } @@ -207,6 +198,12 @@ public Builder wanNames(String... wanNames) { } public GatewayTunnelConfigsPrimaryArgs build() { + if ($.hosts == null) { + throw new MissingRequiredPropertyException("GatewayTunnelConfigsPrimaryArgs", "hosts"); + } + if ($.wanNames == null) { + throw new MissingRequiredPropertyException("GatewayTunnelConfigsPrimaryArgs", "wanNames"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsSecondaryArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsSecondaryArgs.java index 68d2032a..95b1e029 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsSecondaryArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelConfigsSecondaryArgs.java @@ -5,6 +5,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.List; import java.util.Objects; @@ -16,26 +17,22 @@ public final class GatewayTunnelConfigsSecondaryArgs extends com.pulumi.resource public static final GatewayTunnelConfigsSecondaryArgs Empty = new GatewayTunnelConfigsSecondaryArgs(); - @Import(name="hosts") - private @Nullable Output> hosts; + @Import(name="hosts", required=true) + private Output> hosts; - public Optional>> hosts() { - return Optional.ofNullable(this.hosts); + public Output> hosts() { + return this.hosts; } /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ @Import(name="internalIps") private @Nullable Output> internalIps; /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ public Optional>> internalIps() { @@ -50,25 +47,25 @@ public Optional>> probeIps() { } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ @Import(name="remoteIds") private @Nullable Output> remoteIds; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional>> remoteIds() { return Optional.ofNullable(this.remoteIds); } - @Import(name="wanNames") - private @Nullable Output> wanNames; + @Import(name="wanNames", required=true) + private Output> wanNames; - public Optional>> wanNames() { - return Optional.ofNullable(this.wanNames); + public Output> wanNames() { + return this.wanNames; } private GatewayTunnelConfigsSecondaryArgs() {} @@ -99,7 +96,7 @@ public Builder(GatewayTunnelConfigsSecondaryArgs defaults) { $ = new GatewayTunnelConfigsSecondaryArgs(Objects.requireNonNull(defaults)); } - public Builder hosts(@Nullable Output> hosts) { + public Builder hosts(Output> hosts) { $.hosts = hosts; return this; } @@ -113,9 +110,7 @@ public Builder hosts(String... hosts) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -126,9 +121,7 @@ public Builder internalIps(@Nullable Output> internalIps) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -138,9 +131,7 @@ public Builder internalIps(List internalIps) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -163,7 +154,7 @@ public Builder probeIps(String... probeIps) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -174,7 +165,7 @@ public Builder remoteIds(@Nullable Output> remoteIds) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -184,7 +175,7 @@ public Builder remoteIds(List remoteIds) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -193,7 +184,7 @@ public Builder remoteIds(String... remoteIds) { return remoteIds(List.of(remoteIds)); } - public Builder wanNames(@Nullable Output> wanNames) { + public Builder wanNames(Output> wanNames) { $.wanNames = wanNames; return this; } @@ -207,6 +198,12 @@ public Builder wanNames(String... wanNames) { } public GatewayTunnelConfigsSecondaryArgs build() { + if ($.hosts == null) { + throw new MissingRequiredPropertyException("GatewayTunnelConfigsSecondaryArgs", "hosts"); + } + if ($.wanNames == null) { + throw new MissingRequiredPropertyException("GatewayTunnelConfigsSecondaryArgs", "wanNames"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelProviderOptionsJseArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelProviderOptionsJseArgs.java index a313fabc..6f6049f1 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelProviderOptionsJseArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelProviderOptionsJseArgs.java @@ -16,13 +16,6 @@ public final class GatewayTunnelProviderOptionsJseArgs extends com.pulumi.resour public static final GatewayTunnelProviderOptionsJseArgs Empty = new GatewayTunnelProviderOptionsJseArgs(); - @Import(name="name") - private @Nullable Output name; - - public Optional> name() { - return Optional.ofNullable(this.name); - } - @Import(name="numUsers") private @Nullable Output numUsers; @@ -30,11 +23,26 @@ public Optional> numUsers() { return Optional.ofNullable(this.numUsers); } + /** + * JSE Organization name + * + */ + @Import(name="orgName") + private @Nullable Output orgName; + + /** + * @return JSE Organization name + * + */ + public Optional> orgName() { + return Optional.ofNullable(this.orgName); + } + private GatewayTunnelProviderOptionsJseArgs() {} private GatewayTunnelProviderOptionsJseArgs(GatewayTunnelProviderOptionsJseArgs $) { - this.name = $.name; this.numUsers = $.numUsers; + this.orgName = $.orgName; } public static Builder builder() { @@ -55,22 +63,34 @@ public Builder(GatewayTunnelProviderOptionsJseArgs defaults) { $ = new GatewayTunnelProviderOptionsJseArgs(Objects.requireNonNull(defaults)); } - public Builder name(@Nullable Output name) { - $.name = name; + public Builder numUsers(@Nullable Output numUsers) { + $.numUsers = numUsers; return this; } - public Builder name(String name) { - return name(Output.of(name)); + public Builder numUsers(Integer numUsers) { + return numUsers(Output.of(numUsers)); } - public Builder numUsers(@Nullable Output numUsers) { - $.numUsers = numUsers; + /** + * @param orgName JSE Organization name + * + * @return builder + * + */ + public Builder orgName(@Nullable Output orgName) { + $.orgName = orgName; return this; } - public Builder numUsers(Integer numUsers) { - return numUsers(Output.of(numUsers)); + /** + * @param orgName JSE Organization name + * + * @return builder + * + */ + public Builder orgName(String orgName) { + return orgName(Output.of(orgName)); } public GatewayTunnelProviderOptionsJseArgs build() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelProviderOptionsZscalerArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelProviderOptionsZscalerArgs.java index 516ad4f4..dd3e3bca 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelProviderOptionsZscalerArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelProviderOptionsZscalerArgs.java @@ -7,8 +7,8 @@ import com.pulumi.core.annotations.Import; import com.pulumi.junipermist.device.inputs.GatewayTunnelProviderOptionsZscalerSubLocationArgs; import java.lang.Boolean; +import java.lang.Double; import java.lang.Integer; -import java.lang.String; import java.util.List; import java.util.Objects; import java.util.Optional; @@ -19,111 +19,142 @@ public final class GatewayTunnelProviderOptionsZscalerArgs extends com.pulumi.re public static final GatewayTunnelProviderOptionsZscalerArgs Empty = new GatewayTunnelProviderOptionsZscalerArgs(); - @Import(name="aupAcceptanceRequired") - private @Nullable Output aupAcceptanceRequired; + @Import(name="aupBlockInternetUntilAccepted") + private @Nullable Output aupBlockInternetUntilAccepted; - public Optional> aupAcceptanceRequired() { - return Optional.ofNullable(this.aupAcceptanceRequired); + public Optional> aupBlockInternetUntilAccepted() { + return Optional.ofNullable(this.aupBlockInternetUntilAccepted); } /** - * days before AUP is requested again + * Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - @Import(name="aupExpire") - private @Nullable Output aupExpire; + @Import(name="aupEnabled") + private @Nullable Output aupEnabled; /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - public Optional> aupExpire() { - return Optional.ofNullable(this.aupExpire); + public Optional> aupEnabled() { + return Optional.ofNullable(this.aupEnabled); } /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - @Import(name="aupSslProxy") - private @Nullable Output aupSslProxy; + @Import(name="aupForceSslInspection") + private @Nullable Output aupForceSslInspection; /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - public Optional> aupSslProxy() { - return Optional.ofNullable(this.aupSslProxy); + public Optional> aupForceSslInspection() { + return Optional.ofNullable(this.aupForceSslInspection); } /** - * the download bandwidth cap of the link, in Mbps + * Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - @Import(name="downloadMbps") - private @Nullable Output downloadMbps; + @Import(name="aupTimeoutInDays") + private @Nullable Output aupTimeoutInDays; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - public Optional> downloadMbps() { - return Optional.ofNullable(this.downloadMbps); + public Optional> aupTimeoutInDays() { + return Optional.ofNullable(this.aupTimeoutInDays); } /** - * if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to enforce user authentication * */ - @Import(name="enableAup") - private @Nullable Output enableAup; + @Import(name="authRequired") + private @Nullable Output authRequired; /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Enable this option to enforce user authentication * */ - public Optional> enableAup() { - return Optional.ofNullable(this.enableAup); + public Optional> authRequired() { + return Optional.ofNullable(this.authRequired); } /** - * when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - @Import(name="enableCaution") - private @Nullable Output enableCaution; + @Import(name="cautionEnabled") + private @Nullable Output cautionEnabled; /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - public Optional> enableCaution() { - return Optional.ofNullable(this.enableCaution); + public Optional> cautionEnabled() { + return Optional.ofNullable(this.cautionEnabled); } - @Import(name="enforceAuthentication") - private @Nullable Output enforceAuthentication; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + @Import(name="dnBandwidth") + private @Nullable Output dnBandwidth; + + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional> dnBandwidth() { + return Optional.ofNullable(this.dnBandwidth); + } - public Optional> enforceAuthentication() { - return Optional.ofNullable(this.enforceAuthentication); + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + @Import(name="idleTimeInMinutes") + private @Nullable Output idleTimeInMinutes; + + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + public Optional> idleTimeInMinutes() { + return Optional.ofNullable(this.idleTimeInMinutes); } - @Import(name="name") - private @Nullable Output name; + /** + * if `true`, enable the firewall control option + * + */ + @Import(name="ofwEnabled") + private @Nullable Output ofwEnabled; - public Optional> name() { - return Optional.ofNullable(this.name); + /** + * @return if `true`, enable the firewall control option + * + */ + public Optional> ofwEnabled() { + return Optional.ofNullable(this.ofwEnabled); } /** - * if `use_xff`==`true` + * `sub-locations` can be used for specific uses cases to define different configuration based on the user network * */ @Import(name="subLocations") private @Nullable Output> subLocations; /** - * @return if `use_xff`==`true` + * @return `sub-locations` can be used for specific uses cases to define different configuration based on the user network * */ public Optional>> subLocations() { @@ -131,49 +162,98 @@ public Optional> } /** - * the download bandwidth cap of the link, in Mbps + * Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + */ + @Import(name="surrogateIp") + private @Nullable Output surrogateIp; + + /** + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + */ + public Optional> surrogateIp() { + return Optional.ofNullable(this.surrogateIp); + } + + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + @Import(name="surrogateIpEnforcedForKnownBrowsers") + private @Nullable Output surrogateIpEnforcedForKnownBrowsers; + + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + public Optional> surrogateIpEnforcedForKnownBrowsers() { + return Optional.ofNullable(this.surrogateIpEnforcedForKnownBrowsers); + } + + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + @Import(name="surrogateRefreshTimeInMinutes") + private @Nullable Output surrogateRefreshTimeInMinutes; + + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + public Optional> surrogateRefreshTimeInMinutes() { + return Optional.ofNullable(this.surrogateRefreshTimeInMinutes); + } + + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - @Import(name="uploadMbps") - private @Nullable Output uploadMbps; + @Import(name="upBandwidth") + private @Nullable Output upBandwidth; /** - * @return the download bandwidth cap of the link, in Mbps + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - public Optional> uploadMbps() { - return Optional.ofNullable(this.uploadMbps); + public Optional> upBandwidth() { + return Optional.ofNullable(this.upBandwidth); } /** * location uses proxy chaining to forward traffic * */ - @Import(name="useXff") - private @Nullable Output useXff; + @Import(name="xffForwardEnabled") + private @Nullable Output xffForwardEnabled; /** * @return location uses proxy chaining to forward traffic * */ - public Optional> useXff() { - return Optional.ofNullable(this.useXff); + public Optional> xffForwardEnabled() { + return Optional.ofNullable(this.xffForwardEnabled); } private GatewayTunnelProviderOptionsZscalerArgs() {} private GatewayTunnelProviderOptionsZscalerArgs(GatewayTunnelProviderOptionsZscalerArgs $) { - this.aupAcceptanceRequired = $.aupAcceptanceRequired; - this.aupExpire = $.aupExpire; - this.aupSslProxy = $.aupSslProxy; - this.downloadMbps = $.downloadMbps; - this.enableAup = $.enableAup; - this.enableCaution = $.enableCaution; - this.enforceAuthentication = $.enforceAuthentication; - this.name = $.name; + this.aupBlockInternetUntilAccepted = $.aupBlockInternetUntilAccepted; + this.aupEnabled = $.aupEnabled; + this.aupForceSslInspection = $.aupForceSslInspection; + this.aupTimeoutInDays = $.aupTimeoutInDays; + this.authRequired = $.authRequired; + this.cautionEnabled = $.cautionEnabled; + this.dnBandwidth = $.dnBandwidth; + this.idleTimeInMinutes = $.idleTimeInMinutes; + this.ofwEnabled = $.ofwEnabled; this.subLocations = $.subLocations; - this.uploadMbps = $.uploadMbps; - this.useXff = $.useXff; + this.surrogateIp = $.surrogateIp; + this.surrogateIpEnforcedForKnownBrowsers = $.surrogateIpEnforcedForKnownBrowsers; + this.surrogateRefreshTimeInMinutes = $.surrogateRefreshTimeInMinutes; + this.upBandwidth = $.upBandwidth; + this.xffForwardEnabled = $.xffForwardEnabled; } public static Builder builder() { @@ -194,140 +274,185 @@ public Builder(GatewayTunnelProviderOptionsZscalerArgs defaults) { $ = new GatewayTunnelProviderOptionsZscalerArgs(Objects.requireNonNull(defaults)); } - public Builder aupAcceptanceRequired(@Nullable Output aupAcceptanceRequired) { - $.aupAcceptanceRequired = aupAcceptanceRequired; + public Builder aupBlockInternetUntilAccepted(@Nullable Output aupBlockInternetUntilAccepted) { + $.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; return this; } - public Builder aupAcceptanceRequired(Boolean aupAcceptanceRequired) { - return aupAcceptanceRequired(Output.of(aupAcceptanceRequired)); + public Builder aupBlockInternetUntilAccepted(Boolean aupBlockInternetUntilAccepted) { + return aupBlockInternetUntilAccepted(Output.of(aupBlockInternetUntilAccepted)); } /** - * @param aupExpire days before AUP is requested again + * @param aupEnabled Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * * @return builder * */ - public Builder aupExpire(@Nullable Output aupExpire) { - $.aupExpire = aupExpire; + public Builder aupEnabled(@Nullable Output aupEnabled) { + $.aupEnabled = aupEnabled; return this; } /** - * @param aupExpire days before AUP is requested again + * @param aupEnabled Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * * @return builder * */ - public Builder aupExpire(Integer aupExpire) { - return aupExpire(Output.of(aupExpire)); + public Builder aupEnabled(Boolean aupEnabled) { + return aupEnabled(Output.of(aupEnabled)); } /** - * @param aupSslProxy proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * @param aupForceSslInspection proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * * @return builder * */ - public Builder aupSslProxy(@Nullable Output aupSslProxy) { - $.aupSslProxy = aupSslProxy; + public Builder aupForceSslInspection(@Nullable Output aupForceSslInspection) { + $.aupForceSslInspection = aupForceSslInspection; return this; } /** - * @param aupSslProxy proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * @param aupForceSslInspection proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * * @return builder * */ - public Builder aupSslProxy(Boolean aupSslProxy) { - return aupSslProxy(Output.of(aupSslProxy)); + public Builder aupForceSslInspection(Boolean aupForceSslInspection) { + return aupForceSslInspection(Output.of(aupForceSslInspection)); } /** - * @param downloadMbps the download bandwidth cap of the link, in Mbps + * @param aupTimeoutInDays Required if `aup_enabled`==`true`. Days before AUP is requested again * * @return builder * */ - public Builder downloadMbps(@Nullable Output downloadMbps) { - $.downloadMbps = downloadMbps; + public Builder aupTimeoutInDays(@Nullable Output aupTimeoutInDays) { + $.aupTimeoutInDays = aupTimeoutInDays; return this; } /** - * @param downloadMbps the download bandwidth cap of the link, in Mbps + * @param aupTimeoutInDays Required if `aup_enabled`==`true`. Days before AUP is requested again * * @return builder * */ - public Builder downloadMbps(Integer downloadMbps) { - return downloadMbps(Output.of(downloadMbps)); + public Builder aupTimeoutInDays(Integer aupTimeoutInDays) { + return aupTimeoutInDays(Output.of(aupTimeoutInDays)); } /** - * @param enableAup if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @param authRequired Enable this option to enforce user authentication * * @return builder * */ - public Builder enableAup(@Nullable Output enableAup) { - $.enableAup = enableAup; + public Builder authRequired(@Nullable Output authRequired) { + $.authRequired = authRequired; return this; } /** - * @param enableAup if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @param authRequired Enable this option to enforce user authentication * * @return builder * */ - public Builder enableAup(Boolean enableAup) { - return enableAup(Output.of(enableAup)); + public Builder authRequired(Boolean authRequired) { + return authRequired(Output.of(authRequired)); } /** - * @param enableCaution when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @param cautionEnabled Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * * @return builder * */ - public Builder enableCaution(@Nullable Output enableCaution) { - $.enableCaution = enableCaution; + public Builder cautionEnabled(@Nullable Output cautionEnabled) { + $.cautionEnabled = cautionEnabled; return this; } /** - * @param enableCaution when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @param cautionEnabled Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * * @return builder * */ - public Builder enableCaution(Boolean enableCaution) { - return enableCaution(Output.of(enableCaution)); + public Builder cautionEnabled(Boolean cautionEnabled) { + return cautionEnabled(Output.of(cautionEnabled)); } - public Builder enforceAuthentication(@Nullable Output enforceAuthentication) { - $.enforceAuthentication = enforceAuthentication; + /** + * @param dnBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set + * + * @return builder + * + */ + public Builder dnBandwidth(@Nullable Output dnBandwidth) { + $.dnBandwidth = dnBandwidth; + return this; + } + + /** + * @param dnBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set + * + * @return builder + * + */ + public Builder dnBandwidth(Double dnBandwidth) { + return dnBandwidth(Output.of(dnBandwidth)); + } + + /** + * @param idleTimeInMinutes Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + * @return builder + * + */ + public Builder idleTimeInMinutes(@Nullable Output idleTimeInMinutes) { + $.idleTimeInMinutes = idleTimeInMinutes; return this; } - public Builder enforceAuthentication(Boolean enforceAuthentication) { - return enforceAuthentication(Output.of(enforceAuthentication)); + /** + * @param idleTimeInMinutes Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + * @return builder + * + */ + public Builder idleTimeInMinutes(Integer idleTimeInMinutes) { + return idleTimeInMinutes(Output.of(idleTimeInMinutes)); } - public Builder name(@Nullable Output name) { - $.name = name; + /** + * @param ofwEnabled if `true`, enable the firewall control option + * + * @return builder + * + */ + public Builder ofwEnabled(@Nullable Output ofwEnabled) { + $.ofwEnabled = ofwEnabled; return this; } - public Builder name(String name) { - return name(Output.of(name)); + /** + * @param ofwEnabled if `true`, enable the firewall control option + * + * @return builder + * + */ + public Builder ofwEnabled(Boolean ofwEnabled) { + return ofwEnabled(Output.of(ofwEnabled)); } /** - * @param subLocations if `use_xff`==`true` + * @param subLocations `sub-locations` can be used for specific uses cases to define different configuration based on the user network * * @return builder * @@ -338,7 +463,7 @@ public Builder subLocations(@Nullable Output surrogateIp) { + $.surrogateIp = surrogateIp; + return this; + } + + /** + * @param surrogateIp Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + * @return builder + * + */ + public Builder surrogateIp(Boolean surrogateIp) { + return surrogateIp(Output.of(surrogateIp)); + } + + /** + * @param surrogateIpEnforcedForKnownBrowsers Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + * @return builder + * + */ + public Builder surrogateIpEnforcedForKnownBrowsers(@Nullable Output surrogateIpEnforcedForKnownBrowsers) { + $.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + return this; + } + + /** + * @param surrogateIpEnforcedForKnownBrowsers Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + * @return builder + * + */ + public Builder surrogateIpEnforcedForKnownBrowsers(Boolean surrogateIpEnforcedForKnownBrowsers) { + return surrogateIpEnforcedForKnownBrowsers(Output.of(surrogateIpEnforcedForKnownBrowsers)); + } + + /** + * @param surrogateRefreshTimeInMinutes Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + * @return builder + * + */ + public Builder surrogateRefreshTimeInMinutes(@Nullable Output surrogateRefreshTimeInMinutes) { + $.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + return this; + } + + /** + * @param surrogateRefreshTimeInMinutes Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + * @return builder + * + */ + public Builder surrogateRefreshTimeInMinutes(Integer surrogateRefreshTimeInMinutes) { + return surrogateRefreshTimeInMinutes(Output.of(surrogateRefreshTimeInMinutes)); + } + + /** + * @param upBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder uploadMbps(@Nullable Output uploadMbps) { - $.uploadMbps = uploadMbps; + public Builder upBandwidth(@Nullable Output upBandwidth) { + $.upBandwidth = upBandwidth; return this; } /** - * @param uploadMbps the download bandwidth cap of the link, in Mbps + * @param upBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder uploadMbps(Integer uploadMbps) { - return uploadMbps(Output.of(uploadMbps)); + public Builder upBandwidth(Double upBandwidth) { + return upBandwidth(Output.of(upBandwidth)); } /** - * @param useXff location uses proxy chaining to forward traffic + * @param xffForwardEnabled location uses proxy chaining to forward traffic * * @return builder * */ - public Builder useXff(@Nullable Output useXff) { - $.useXff = useXff; + public Builder xffForwardEnabled(@Nullable Output xffForwardEnabled) { + $.xffForwardEnabled = xffForwardEnabled; return this; } /** - * @param useXff location uses proxy chaining to forward traffic + * @param xffForwardEnabled location uses proxy chaining to forward traffic * * @return builder * */ - public Builder useXff(Boolean useXff) { - return useXff(Output.of(useXff)); + public Builder xffForwardEnabled(Boolean xffForwardEnabled) { + return xffForwardEnabled(Output.of(xffForwardEnabled)); } public GatewayTunnelProviderOptionsZscalerArgs build() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelProviderOptionsZscalerSubLocationArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelProviderOptionsZscalerSubLocationArgs.java index c142067a..454ef4f6 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelProviderOptionsZscalerSubLocationArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/GatewayTunnelProviderOptionsZscalerSubLocationArgs.java @@ -6,9 +6,9 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; import java.lang.Boolean; +import java.lang.Double; import java.lang.Integer; import java.lang.String; -import java.util.List; import java.util.Objects; import java.util.Optional; import javax.annotation.Nullable; @@ -18,129 +18,225 @@ public final class GatewayTunnelProviderOptionsZscalerSubLocationArgs extends co public static final GatewayTunnelProviderOptionsZscalerSubLocationArgs Empty = new GatewayTunnelProviderOptionsZscalerSubLocationArgs(); - @Import(name="aupAcceptanceRequired") - private @Nullable Output aupAcceptanceRequired; + @Import(name="aupBlockInternetUntilAccepted") + private @Nullable Output aupBlockInternetUntilAccepted; - public Optional> aupAcceptanceRequired() { - return Optional.ofNullable(this.aupAcceptanceRequired); + public Optional> aupBlockInternetUntilAccepted() { + return Optional.ofNullable(this.aupBlockInternetUntilAccepted); } /** - * days before AUP is requested again + * Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - @Import(name="aupExpire") - private @Nullable Output aupExpire; + @Import(name="aupEnabled") + private @Nullable Output aupEnabled; /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - public Optional> aupExpire() { - return Optional.ofNullable(this.aupExpire); + public Optional> aupEnabled() { + return Optional.ofNullable(this.aupEnabled); } /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - @Import(name="aupSslProxy") - private @Nullable Output aupSslProxy; + @Import(name="aupForceSslInspection") + private @Nullable Output aupForceSslInspection; /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - public Optional> aupSslProxy() { - return Optional.ofNullable(this.aupSslProxy); + public Optional> aupForceSslInspection() { + return Optional.ofNullable(this.aupForceSslInspection); } /** - * the download bandwidth cap of the link, in Mbps + * Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - @Import(name="downloadMbps") - private @Nullable Output downloadMbps; + @Import(name="aupTimeoutInDays") + private @Nullable Output aupTimeoutInDays; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - public Optional> downloadMbps() { - return Optional.ofNullable(this.downloadMbps); + public Optional> aupTimeoutInDays() { + return Optional.ofNullable(this.aupTimeoutInDays); } /** - * if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to authenticate users * */ - @Import(name="enableAup") - private @Nullable Output enableAup; + @Import(name="authRequired") + private @Nullable Output authRequired; /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Enable this option to authenticate users * */ - public Optional> enableAup() { - return Optional.ofNullable(this.enableAup); + public Optional> authRequired() { + return Optional.ofNullable(this.authRequired); } /** - * when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - @Import(name="enableCaution") - private @Nullable Output enableCaution; + @Import(name="cautionEnabled") + private @Nullable Output cautionEnabled; /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - public Optional> enableCaution() { - return Optional.ofNullable(this.enableCaution); + public Optional> cautionEnabled() { + return Optional.ofNullable(this.cautionEnabled); } - @Import(name="enforceAuthentication") - private @Nullable Output enforceAuthentication; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + @Import(name="dnBandwidth") + private @Nullable Output dnBandwidth; + + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional> dnBandwidth() { + return Optional.ofNullable(this.dnBandwidth); + } + + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + @Import(name="idleTimeInMinutes") + private @Nullable Output idleTimeInMinutes; + + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + public Optional> idleTimeInMinutes() { + return Optional.ofNullable(this.idleTimeInMinutes); + } + + /** + * Network name + * + */ + @Import(name="name") + private @Nullable Output name; - public Optional> enforceAuthentication() { - return Optional.ofNullable(this.enforceAuthentication); + /** + * @return Network name + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); } - @Import(name="subnets") - private @Nullable Output> subnets; + /** + * if `true`, enable the firewall control option + * + */ + @Import(name="ofwEnabled") + private @Nullable Output ofwEnabled; - public Optional>> subnets() { - return Optional.ofNullable(this.subnets); + /** + * @return if `true`, enable the firewall control option + * + */ + public Optional> ofwEnabled() { + return Optional.ofNullable(this.ofwEnabled); } /** - * the download bandwidth cap of the link, in Mbps + * Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies * */ - @Import(name="uploadMbps") - private @Nullable Output uploadMbps; + @Import(name="surrogateIp") + private @Nullable Output surrogateIp; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies * */ - public Optional> uploadMbps() { - return Optional.ofNullable(this.uploadMbps); + public Optional> surrogateIp() { + return Optional.ofNullable(this.surrogateIp); + } + + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + @Import(name="surrogateIpEnforcedForKnownBrowsers") + private @Nullable Output surrogateIpEnforcedForKnownBrowsers; + + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + public Optional> surrogateIpEnforcedForKnownBrowsers() { + return Optional.ofNullable(this.surrogateIpEnforcedForKnownBrowsers); + } + + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + @Import(name="surrogateRefreshTimeInMinutes") + private @Nullable Output surrogateRefreshTimeInMinutes; + + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + public Optional> surrogateRefreshTimeInMinutes() { + return Optional.ofNullable(this.surrogateRefreshTimeInMinutes); + } + + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + @Import(name="upBandwidth") + private @Nullable Output upBandwidth; + + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional> upBandwidth() { + return Optional.ofNullable(this.upBandwidth); } private GatewayTunnelProviderOptionsZscalerSubLocationArgs() {} private GatewayTunnelProviderOptionsZscalerSubLocationArgs(GatewayTunnelProviderOptionsZscalerSubLocationArgs $) { - this.aupAcceptanceRequired = $.aupAcceptanceRequired; - this.aupExpire = $.aupExpire; - this.aupSslProxy = $.aupSslProxy; - this.downloadMbps = $.downloadMbps; - this.enableAup = $.enableAup; - this.enableCaution = $.enableCaution; - this.enforceAuthentication = $.enforceAuthentication; - this.subnets = $.subnets; - this.uploadMbps = $.uploadMbps; + this.aupBlockInternetUntilAccepted = $.aupBlockInternetUntilAccepted; + this.aupEnabled = $.aupEnabled; + this.aupForceSslInspection = $.aupForceSslInspection; + this.aupTimeoutInDays = $.aupTimeoutInDays; + this.authRequired = $.authRequired; + this.cautionEnabled = $.cautionEnabled; + this.dnBandwidth = $.dnBandwidth; + this.idleTimeInMinutes = $.idleTimeInMinutes; + this.name = $.name; + this.ofwEnabled = $.ofwEnabled; + this.surrogateIp = $.surrogateIp; + this.surrogateIpEnforcedForKnownBrowsers = $.surrogateIpEnforcedForKnownBrowsers; + this.surrogateRefreshTimeInMinutes = $.surrogateRefreshTimeInMinutes; + this.upBandwidth = $.upBandwidth; } public static Builder builder() { @@ -161,161 +257,286 @@ public Builder(GatewayTunnelProviderOptionsZscalerSubLocationArgs defaults) { $ = new GatewayTunnelProviderOptionsZscalerSubLocationArgs(Objects.requireNonNull(defaults)); } - public Builder aupAcceptanceRequired(@Nullable Output aupAcceptanceRequired) { - $.aupAcceptanceRequired = aupAcceptanceRequired; + public Builder aupBlockInternetUntilAccepted(@Nullable Output aupBlockInternetUntilAccepted) { + $.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + return this; + } + + public Builder aupBlockInternetUntilAccepted(Boolean aupBlockInternetUntilAccepted) { + return aupBlockInternetUntilAccepted(Output.of(aupBlockInternetUntilAccepted)); + } + + /** + * @param aupEnabled Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + * + * @return builder + * + */ + public Builder aupEnabled(@Nullable Output aupEnabled) { + $.aupEnabled = aupEnabled; + return this; + } + + /** + * @param aupEnabled Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + * + * @return builder + * + */ + public Builder aupEnabled(Boolean aupEnabled) { + return aupEnabled(Output.of(aupEnabled)); + } + + /** + * @param aupForceSslInspection proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * + * @return builder + * + */ + public Builder aupForceSslInspection(@Nullable Output aupForceSslInspection) { + $.aupForceSslInspection = aupForceSslInspection; return this; } - public Builder aupAcceptanceRequired(Boolean aupAcceptanceRequired) { - return aupAcceptanceRequired(Output.of(aupAcceptanceRequired)); + /** + * @param aupForceSslInspection proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * + * @return builder + * + */ + public Builder aupForceSslInspection(Boolean aupForceSslInspection) { + return aupForceSslInspection(Output.of(aupForceSslInspection)); } /** - * @param aupExpire days before AUP is requested again + * @param aupTimeoutInDays Required if `aup_enabled`==`true`. Days before AUP is requested again * * @return builder * */ - public Builder aupExpire(@Nullable Output aupExpire) { - $.aupExpire = aupExpire; + public Builder aupTimeoutInDays(@Nullable Output aupTimeoutInDays) { + $.aupTimeoutInDays = aupTimeoutInDays; return this; } /** - * @param aupExpire days before AUP is requested again + * @param aupTimeoutInDays Required if `aup_enabled`==`true`. Days before AUP is requested again * * @return builder * */ - public Builder aupExpire(Integer aupExpire) { - return aupExpire(Output.of(aupExpire)); + public Builder aupTimeoutInDays(Integer aupTimeoutInDays) { + return aupTimeoutInDays(Output.of(aupTimeoutInDays)); } /** - * @param aupSslProxy proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * @param authRequired Enable this option to authenticate users * * @return builder * */ - public Builder aupSslProxy(@Nullable Output aupSslProxy) { - $.aupSslProxy = aupSslProxy; + public Builder authRequired(@Nullable Output authRequired) { + $.authRequired = authRequired; return this; } /** - * @param aupSslProxy proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * @param authRequired Enable this option to authenticate users * * @return builder * */ - public Builder aupSslProxy(Boolean aupSslProxy) { - return aupSslProxy(Output.of(aupSslProxy)); + public Builder authRequired(Boolean authRequired) { + return authRequired(Output.of(authRequired)); } /** - * @param downloadMbps the download bandwidth cap of the link, in Mbps + * @param cautionEnabled Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * * @return builder * */ - public Builder downloadMbps(@Nullable Output downloadMbps) { - $.downloadMbps = downloadMbps; + public Builder cautionEnabled(@Nullable Output cautionEnabled) { + $.cautionEnabled = cautionEnabled; return this; } /** - * @param downloadMbps the download bandwidth cap of the link, in Mbps + * @param cautionEnabled Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * * @return builder * */ - public Builder downloadMbps(Integer downloadMbps) { - return downloadMbps(Output.of(downloadMbps)); + public Builder cautionEnabled(Boolean cautionEnabled) { + return cautionEnabled(Output.of(cautionEnabled)); } /** - * @param enableAup if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @param dnBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder enableAup(@Nullable Output enableAup) { - $.enableAup = enableAup; + public Builder dnBandwidth(@Nullable Output dnBandwidth) { + $.dnBandwidth = dnBandwidth; return this; } /** - * @param enableAup if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @param dnBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder enableAup(Boolean enableAup) { - return enableAup(Output.of(enableAup)); + public Builder dnBandwidth(Double dnBandwidth) { + return dnBandwidth(Output.of(dnBandwidth)); } /** - * @param enableCaution when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @param idleTimeInMinutes Required if `surrogate_IP`==`true`, idle Time to Disassociation * * @return builder * */ - public Builder enableCaution(@Nullable Output enableCaution) { - $.enableCaution = enableCaution; + public Builder idleTimeInMinutes(@Nullable Output idleTimeInMinutes) { + $.idleTimeInMinutes = idleTimeInMinutes; return this; } /** - * @param enableCaution when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @param idleTimeInMinutes Required if `surrogate_IP`==`true`, idle Time to Disassociation * * @return builder * */ - public Builder enableCaution(Boolean enableCaution) { - return enableCaution(Output.of(enableCaution)); + public Builder idleTimeInMinutes(Integer idleTimeInMinutes) { + return idleTimeInMinutes(Output.of(idleTimeInMinutes)); } - public Builder enforceAuthentication(@Nullable Output enforceAuthentication) { - $.enforceAuthentication = enforceAuthentication; + /** + * @param name Network name + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; return this; } - public Builder enforceAuthentication(Boolean enforceAuthentication) { - return enforceAuthentication(Output.of(enforceAuthentication)); + /** + * @param name Network name + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); } - public Builder subnets(@Nullable Output> subnets) { - $.subnets = subnets; + /** + * @param ofwEnabled if `true`, enable the firewall control option + * + * @return builder + * + */ + public Builder ofwEnabled(@Nullable Output ofwEnabled) { + $.ofwEnabled = ofwEnabled; return this; } - public Builder subnets(List subnets) { - return subnets(Output.of(subnets)); + /** + * @param ofwEnabled if `true`, enable the firewall control option + * + * @return builder + * + */ + public Builder ofwEnabled(Boolean ofwEnabled) { + return ofwEnabled(Output.of(ofwEnabled)); } - public Builder subnets(String... subnets) { - return subnets(List.of(subnets)); + /** + * @param surrogateIp Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + * @return builder + * + */ + public Builder surrogateIp(@Nullable Output surrogateIp) { + $.surrogateIp = surrogateIp; + return this; + } + + /** + * @param surrogateIp Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + * @return builder + * + */ + public Builder surrogateIp(Boolean surrogateIp) { + return surrogateIp(Output.of(surrogateIp)); + } + + /** + * @param surrogateIpEnforcedForKnownBrowsers Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + * @return builder + * + */ + public Builder surrogateIpEnforcedForKnownBrowsers(@Nullable Output surrogateIpEnforcedForKnownBrowsers) { + $.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + return this; + } + + /** + * @param surrogateIpEnforcedForKnownBrowsers Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + * @return builder + * + */ + public Builder surrogateIpEnforcedForKnownBrowsers(Boolean surrogateIpEnforcedForKnownBrowsers) { + return surrogateIpEnforcedForKnownBrowsers(Output.of(surrogateIpEnforcedForKnownBrowsers)); + } + + /** + * @param surrogateRefreshTimeInMinutes Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + * @return builder + * + */ + public Builder surrogateRefreshTimeInMinutes(@Nullable Output surrogateRefreshTimeInMinutes) { + $.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + return this; + } + + /** + * @param surrogateRefreshTimeInMinutes Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + * @return builder + * + */ + public Builder surrogateRefreshTimeInMinutes(Integer surrogateRefreshTimeInMinutes) { + return surrogateRefreshTimeInMinutes(Output.of(surrogateRefreshTimeInMinutes)); } /** - * @param uploadMbps the download bandwidth cap of the link, in Mbps + * @param upBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder uploadMbps(@Nullable Output uploadMbps) { - $.uploadMbps = uploadMbps; + public Builder upBandwidth(@Nullable Output upBandwidth) { + $.upBandwidth = upBandwidth; return this; } /** - * @param uploadMbps the download bandwidth cap of the link, in Mbps + * @param upBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder uploadMbps(Integer uploadMbps) { - return uploadMbps(Output.of(uploadMbps)); + public Builder upBandwidth(Double upBandwidth) { + return upBandwidth(Output.of(upBandwidth)); } public GatewayTunnelProviderOptionsZscalerSubLocationArgs build() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchAclPolicyArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchAclPolicyArgs.java index eb6636cd..c1e0e069 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchAclPolicyArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchAclPolicyArgs.java @@ -18,16 +18,18 @@ public final class SwitchAclPolicyArgs extends com.pulumi.resources.ResourceArgs public static final SwitchAclPolicyArgs Empty = new SwitchAclPolicyArgs(); /** - * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ @Import(name="actions") private @Nullable Output> actions; /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ public Optional>> actions() { @@ -42,16 +44,18 @@ public Optional> name() { } /** - * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ @Import(name="srcTags") private @Nullable Output> srcTags; /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ public Optional>> srcTags() { @@ -85,8 +89,9 @@ public Builder(SwitchAclPolicyArgs defaults) { } /** - * @param actions - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param actions ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -97,8 +102,9 @@ public Builder actions(@Nullable Output> actions } /** - * @param actions - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param actions ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -108,8 +114,9 @@ public Builder actions(List actions) { } /** - * @param actions - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param actions ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -128,8 +135,9 @@ public Builder name(String name) { } /** - * @param srcTags - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param srcTags ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -140,8 +148,9 @@ public Builder srcTags(@Nullable Output> srcTags) { } /** - * @param srcTags - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param srcTags ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -151,8 +160,9 @@ public Builder srcTags(List srcTags) { } /** - * @param srcTags - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param srcTags ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchAclTagsArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchAclTagsArgs.java index 83c1b216..1c3d488e 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchAclTagsArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchAclTagsArgs.java @@ -21,9 +21,9 @@ public final class SwitchAclTagsArgs extends com.pulumi.resources.ResourceArgs { /** * required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * */ @Import(name="gbpTag") @@ -31,9 +31,9 @@ public final class SwitchAclTagsArgs extends com.pulumi.resources.ResourceArgs { /** * @return required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * */ public Optional> gbpTag() { @@ -106,16 +106,14 @@ public Optional> radiusGroup() { } /** - * if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * */ @Import(name="specs") private @Nullable Output> specs; /** - * @return if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @return if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * */ public Optional>> specs() { @@ -208,9 +206,9 @@ public Builder(SwitchAclTagsArgs defaults) { /** * @param gbpTag required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * * @return builder * @@ -222,9 +220,9 @@ public Builder gbpTag(@Nullable Output gbpTag) { /** * @param gbpTag required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * * @return builder * @@ -329,8 +327,7 @@ public Builder radiusGroup(String radiusGroup) { } /** - * @param specs if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @param specs if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * * @return builder * @@ -341,8 +338,7 @@ public Builder specs(@Nullable Output> specs) { } /** - * @param specs if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @param specs if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * * @return builder * @@ -352,8 +348,7 @@ public Builder specs(List specs) { } /** - * @param specs if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @param specs if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchAclTagsSpecArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchAclTagsSpecArgs.java index 2234655d..88121f56 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchAclTagsSpecArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchAclTagsSpecArgs.java @@ -31,14 +31,14 @@ public Optional> portRange() { } /** - * `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * */ @Import(name="protocol") private @Nullable Output protocol; /** - * @return `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @return `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * */ public Optional> protocol() { @@ -92,7 +92,7 @@ public Builder portRange(String portRange) { } /** - * @param protocol `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @param protocol `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * * @return builder * @@ -103,7 +103,7 @@ public Builder protocol(@Nullable Output protocol) { } /** - * @param protocol `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @param protocol `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchEvpnConfigArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchEvpnConfigArgs.java deleted file mode 100644 index ac324edd..00000000 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchEvpnConfigArgs.java +++ /dev/null @@ -1,101 +0,0 @@ -// *** WARNING: this file was generated by pulumi-java-gen. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -package com.pulumi.junipermist.device.inputs; - -import com.pulumi.core.Output; -import com.pulumi.core.annotations.Import; -import java.lang.Boolean; -import java.lang.String; -import java.util.Objects; -import java.util.Optional; -import javax.annotation.Nullable; - - -public final class SwitchEvpnConfigArgs extends com.pulumi.resources.ResourceArgs { - - public static final SwitchEvpnConfigArgs Empty = new SwitchEvpnConfigArgs(); - - @Import(name="enabled") - private @Nullable Output enabled; - - public Optional> enabled() { - return Optional.ofNullable(this.enabled); - } - - /** - * enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - * - */ - @Import(name="role") - private @Nullable Output role; - - /** - * @return enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - * - */ - public Optional> role() { - return Optional.ofNullable(this.role); - } - - private SwitchEvpnConfigArgs() {} - - private SwitchEvpnConfigArgs(SwitchEvpnConfigArgs $) { - this.enabled = $.enabled; - this.role = $.role; - } - - public static Builder builder() { - return new Builder(); - } - public static Builder builder(SwitchEvpnConfigArgs defaults) { - return new Builder(defaults); - } - - public static final class Builder { - private SwitchEvpnConfigArgs $; - - public Builder() { - $ = new SwitchEvpnConfigArgs(); - } - - public Builder(SwitchEvpnConfigArgs defaults) { - $ = new SwitchEvpnConfigArgs(Objects.requireNonNull(defaults)); - } - - public Builder enabled(@Nullable Output enabled) { - $.enabled = enabled; - return this; - } - - public Builder enabled(Boolean enabled) { - return enabled(Output.of(enabled)); - } - - /** - * @param role enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - * - * @return builder - * - */ - public Builder role(@Nullable Output role) { - $.role = role; - return this; - } - - /** - * @param role enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - * - * @return builder - * - */ - public Builder role(String role) { - return role(Output.of(role)); - } - - public SwitchEvpnConfigArgs build() { - return $; - } - } - -} diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchLocalPortConfigArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchLocalPortConfigArgs.java index 194dcf7a..22c6ab7a 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchLocalPortConfigArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchLocalPortConfigArgs.java @@ -36,18 +36,14 @@ public Optional> allNetworks() { } /** - * 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 allow_dhcpd is a tri_state. - * 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. + * 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 allow_dhcpd is a tri_state. 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. * */ @Import(name="allowDhcpd") private @Nullable Output allowDhcpd; /** - * @return 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 allow_dhcpd is a tri_state. - * 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. + * @return 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 allow_dhcpd is a tri_state. 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. * */ public Optional> allowDhcpd() { @@ -196,16 +192,14 @@ public Optional> guestNetwork() { } /** - * inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ @Import(name="interSwitchLink") private @Nullable Output interSwitchLink; /** - * @return inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @return inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ public Optional> interSwitchLink() { @@ -317,6 +311,21 @@ public Optional>> networks() { return Optional.ofNullable(this.networks); } + /** + * Additional note for the port config override + * + */ + @Import(name="note") + private @Nullable Output note; + + /** + * @return Additional note for the port config override + * + */ + public Optional> note() { + return Optional.ofNullable(this.note); + } + /** * Only if `mode`==`access` and `port_auth`!=`dot1x` whether the port should retain dynamically learned MAC addresses * @@ -550,6 +559,7 @@ private SwitchLocalPortConfigArgs(SwitchLocalPortConfigArgs $) { this.mode = $.mode; this.mtu = $.mtu; this.networks = $.networks; + this.note = $.note; this.persistMac = $.persistMac; this.poeDisabled = $.poeDisabled; this.portAuth = $.portAuth; @@ -607,9 +617,7 @@ public Builder allNetworks(Boolean allNetworks) { } /** - * @param allowDhcpd 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 allow_dhcpd is a tri_state. - * 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. + * @param allowDhcpd 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 allow_dhcpd is a tri_state. 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. * * @return builder * @@ -620,9 +628,7 @@ public Builder allowDhcpd(@Nullable Output allowDhcpd) { } /** - * @param allowDhcpd 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 allow_dhcpd is a tri_state. - * 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. + * @param allowDhcpd 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 allow_dhcpd is a tri_state. 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. * * @return builder * @@ -837,8 +843,7 @@ public Builder guestNetwork(String guestNetwork) { } /** - * @param interSwitchLink inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @param interSwitchLink inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * * @return builder * @@ -849,8 +854,7 @@ public Builder interSwitchLink(@Nullable Output interSwitchLink) { } /** - * @param interSwitchLink inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @param interSwitchLink inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * * @return builder * @@ -1016,6 +1020,27 @@ public Builder networks(String... networks) { return networks(List.of(networks)); } + /** + * @param note Additional note for the port config override + * + * @return builder + * + */ + public Builder note(@Nullable Output note) { + $.note = note; + return this; + } + + /** + * @param note Additional note for the port config override + * + * @return builder + * + */ + public Builder note(String note) { + return note(Output.of(note)); + } + /** * @param persistMac Only if `mode`==`access` and `port_auth`!=`dot1x` whether the port should retain dynamically learned MAC addresses * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchNetworksArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchNetworksArgs.java index 6479f771..0b72bdbc 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchNetworksArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchNetworksArgs.java @@ -48,16 +48,14 @@ public Optional> gateway6() { } /** - * whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * */ @Import(name="isolation") private @Nullable Output isolation; /** - * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * */ public Optional> isolation() { @@ -181,8 +179,7 @@ public Builder gateway6(String gateway6) { } /** - * @param isolation whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @param isolation whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * * @return builder * @@ -193,8 +190,7 @@ public Builder isolation(@Nullable Output isolation) { } /** - * @param isolation whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @param isolation whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchPortUsagesArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchPortUsagesArgs.java index 5ee9c825..b2371e6d 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchPortUsagesArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchPortUsagesArgs.java @@ -36,18 +36,14 @@ public Optional> allNetworks() { } /** - * 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 allow_dhcpd is a tri_state. - * 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. + * 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 allow_dhcpd is a tri_state. 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. * */ @Import(name="allowDhcpd") private @Nullable Output allowDhcpd; /** - * @return 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 allow_dhcpd is a tri_state. - * 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. + * @return 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 allow_dhcpd is a tri_state. 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. * */ public Optional> allowDhcpd() { @@ -220,16 +216,14 @@ public Optional> guestNetwork() { } /** - * Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ @Import(name="interSwitchLink") private @Nullable Output interSwitchLink; /** - * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ public Optional> interSwitchLink() { @@ -492,16 +486,14 @@ public Optional> speed() { } /** - * Switch storm control - * Only if `mode`!=`dynamic` + * Switch storm control. Only if `mode`!=`dynamic` * */ @Import(name="stormControl") private @Nullable Output stormControl; /** - * @return Switch storm control - * Only if `mode`!=`dynamic` + * @return Switch storm control. Only if `mode`!=`dynamic` * */ public Optional> stormControl() { @@ -649,9 +641,7 @@ public Builder allNetworks(Boolean allNetworks) { } /** - * @param allowDhcpd 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 allow_dhcpd is a tri_state. - * 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. + * @param allowDhcpd 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 allow_dhcpd is a tri_state. 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. * * @return builder * @@ -662,9 +652,7 @@ public Builder allowDhcpd(@Nullable Output allowDhcpd) { } /** - * @param allowDhcpd 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 allow_dhcpd is a tri_state. - * 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. + * @param allowDhcpd 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 allow_dhcpd is a tri_state. 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. * * @return builder * @@ -915,8 +903,7 @@ public Builder guestNetwork(String guestNetwork) { } /** - * @param interSwitchLink Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @param interSwitchLink Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * * @return builder * @@ -927,8 +914,7 @@ public Builder interSwitchLink(@Nullable Output interSwitchLink) { } /** - * @param interSwitchLink Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @param interSwitchLink Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * * @return builder * @@ -1315,8 +1301,7 @@ public Builder speed(String speed) { } /** - * @param stormControl Switch storm control - * Only if `mode`!=`dynamic` + * @param stormControl Switch storm control. Only if `mode`!=`dynamic` * * @return builder * @@ -1327,8 +1312,7 @@ public Builder stormControl(@Nullable Output s } /** - * @param stormControl Switch storm control - * Only if `mode`!=`dynamic` + * @param stormControl Switch storm control. Only if `mode`!=`dynamic` * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchRadiusConfigArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchRadiusConfigArgs.java index fcb58d2b..ee1d8c44 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchRadiusConfigArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchRadiusConfigArgs.java @@ -79,16 +79,14 @@ public Optional> authServersTimeout() { } /** - * use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * */ @Import(name="network") private @Nullable Output network; /** - * @return use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @return use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * */ public Optional> network() { @@ -230,8 +228,7 @@ public Builder authServersTimeout(Integer authServersTimeout) { } /** - * @param network use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @param network use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * * @return builder * @@ -242,8 +239,7 @@ public Builder network(@Nullable Output network) { } /** - * @param network use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @param network use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchSnmpConfigV3ConfigUsmUserArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchSnmpConfigV3ConfigUsmUserArgs.java index 69bdcba4..5aef7b28 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchSnmpConfigV3ConfigUsmUserArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchSnmpConfigV3ConfigUsmUserArgs.java @@ -16,16 +16,14 @@ public final class SwitchSnmpConfigV3ConfigUsmUserArgs extends com.pulumi.resour public static final SwitchSnmpConfigV3ConfigUsmUserArgs Empty = new SwitchSnmpConfigV3ConfigUsmUserArgs(); /** - * Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * */ @Import(name="authenticationPassword") private @Nullable Output authenticationPassword; /** - * @return Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @return Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * */ public Optional> authenticationPassword() { @@ -48,16 +46,14 @@ public Optional> authenticationType() { } /** - * Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * */ @Import(name="encryptionPassword") private @Nullable Output encryptionPassword; /** - * @return Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @return Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * */ public Optional> encryptionPassword() { @@ -115,8 +111,7 @@ public Builder(SwitchSnmpConfigV3ConfigUsmUserArgs defaults) { } /** - * @param authenticationPassword Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @param authenticationPassword Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * * @return builder * @@ -127,8 +122,7 @@ public Builder authenticationPassword(@Nullable Output authenticationPas } /** - * @param authenticationPassword Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @param authenticationPassword Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * * @return builder * @@ -159,8 +153,7 @@ public Builder authenticationType(String authenticationType) { } /** - * @param encryptionPassword Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @param encryptionPassword Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * * @return builder * @@ -171,8 +164,7 @@ public Builder encryptionPassword(@Nullable Output encryptionPassword) { } /** - * @param encryptionPassword Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @param encryptionPassword Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchState.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchState.java index 76cf83b4..833b2b06 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchState.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/inputs/SwitchState.java @@ -9,7 +9,6 @@ import com.pulumi.junipermist.device.inputs.SwitchAclTagsArgs; import com.pulumi.junipermist.device.inputs.SwitchDhcpSnoopingArgs; import com.pulumi.junipermist.device.inputs.SwitchDhcpdConfigArgs; -import com.pulumi.junipermist.device.inputs.SwitchEvpnConfigArgs; import com.pulumi.junipermist.device.inputs.SwitchExtraRoutes6Args; import com.pulumi.junipermist.device.inputs.SwitchExtraRoutesArgs; import com.pulumi.junipermist.device.inputs.SwitchIpConfigArgs; @@ -68,14 +67,14 @@ public Optional>> aclTags() { } /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ @Import(name="additionalConfigCmds") private @Nullable Output> additionalConfigCmds; /** - * @return additional CLI commands to append to the generated Junos config **Note**: no check is done + * @return additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ public Optional>> additionalConfigCmds() { @@ -148,21 +147,6 @@ public Optional>> dnsSuffixes() { return Optional.ofNullable(this.dnsSuffixes); } - /** - * EVPN Junos settings - * - */ - @Import(name="evpnConfig") - private @Nullable Output evpnConfig; - - /** - * @return EVPN Junos settings - * - */ - public Optional> evpnConfig() { - return Optional.ofNullable(this.evpnConfig); - } - @Import(name="extraRoutes") private @Nullable Output> extraRoutes; @@ -358,16 +342,16 @@ public Optional>> ntpServers() { } /** - * - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - * set separately (if desired): key parameter = `re1` + * Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + * re1 mgmt IP has to be set separately (if desired): key parameter = `re1` * */ @Import(name="oobIpConfig") private @Nullable Output oobIpConfig; /** - * @return - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - * set separately (if desired): key parameter = `re1` + * @return Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + * re1 mgmt IP has to be set separately (if desired): key parameter = `re1` * */ public Optional> oobIpConfig() { @@ -427,7 +411,7 @@ public Optional>> portConfig() { } /** - * Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -436,7 +420,7 @@ public Optional>> portConfig() { private @Nullable Output> portMirroring; /** - * @return Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -694,7 +678,6 @@ private SwitchState(SwitchState $) { this.disableAutoConfig = $.disableAutoConfig; this.dnsServers = $.dnsServers; this.dnsSuffixes = $.dnsSuffixes; - this.evpnConfig = $.evpnConfig; this.extraRoutes = $.extraRoutes; this.extraRoutes6 = $.extraRoutes6; this.image1Url = $.image1Url; @@ -791,7 +774,7 @@ public Builder aclTags(Map aclTags) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -802,7 +785,7 @@ public Builder additionalConfigCmds(@Nullable Output> additionalCon } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -812,7 +795,7 @@ public Builder additionalConfigCmds(List additionalConfigCmds) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -931,27 +914,6 @@ public Builder dnsSuffixes(String... dnsSuffixes) { return dnsSuffixes(List.of(dnsSuffixes)); } - /** - * @param evpnConfig EVPN Junos settings - * - * @return builder - * - */ - public Builder evpnConfig(@Nullable Output evpnConfig) { - $.evpnConfig = evpnConfig; - return this; - } - - /** - * @param evpnConfig EVPN Junos settings - * - * @return builder - * - */ - public Builder evpnConfig(SwitchEvpnConfigArgs evpnConfig) { - return evpnConfig(Output.of(evpnConfig)); - } - public Builder extraRoutes(@Nullable Output> extraRoutes) { $.extraRoutes = extraRoutes; return this; @@ -1229,8 +1191,8 @@ public Builder ntpServers(String... ntpServers) { } /** - * @param oobIpConfig - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - * set separately (if desired): key parameter = `re1` + * @param oobIpConfig Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + * re1 mgmt IP has to be set separately (if desired): key parameter = `re1` * * @return builder * @@ -1241,8 +1203,8 @@ public Builder oobIpConfig(@Nullable Output oobIpConfig) } /** - * @param oobIpConfig - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - * set separately (if desired): key parameter = `re1` + * @param oobIpConfig Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + * re1 mgmt IP has to be set separately (if desired): key parameter = `re1` * * @return builder * @@ -1324,7 +1286,7 @@ public Builder portConfig(Map portConfig) { } /** - * @param portMirroring Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @param portMirroring Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -1337,7 +1299,7 @@ public Builder portMirroring(@Nullable Output exportPolicy() { return Optional.ofNullable(this.exportPolicy); } /** - * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * */ public Optional extendedV4Nexthop() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetwork.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetwork.java index 3673db8e..34818647 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetwork.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetwork.java @@ -51,6 +51,10 @@ public final class GatewayNetwork { private @Nullable List routedForNetworks; private String subnet; private @Nullable String subnet6; + /** + * @return Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ private @Nullable Map tenants; private @Nullable String vlanId; /** @@ -113,6 +117,10 @@ public String subnet() { public Optional subnet6() { return Optional.ofNullable(this.subnet6); } + /** + * @return Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ public Map tenants() { return this.tenants == null ? Map.of() : this.tenants; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkInternetAccess.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkInternetAccess.java index dd5ea68f..130903d4 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkInternetAccess.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkInternetAccess.java @@ -17,7 +17,7 @@ public final class GatewayNetworkInternetAccess { private @Nullable Boolean createSimpleServicePolicy; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ private @Nullable Map destinationNat; @@ -28,7 +28,7 @@ public final class GatewayNetworkInternetAccess { */ private @Nullable Boolean restricted; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ private @Nullable Map staticNat; @@ -38,7 +38,7 @@ public Optional createSimpleServicePolicy() { return Optional.ofNullable(this.createSimpleServicePolicy); } /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Map destinationNat() { @@ -55,7 +55,7 @@ public Optional restricted() { return Optional.ofNullable(this.restricted); } /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Map staticNat() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkInternetAccessDestinationNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkInternetAccessDestinationNat.java index de265921..a5371427 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkInternetAccessDestinationNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkInternetAccessDestinationNat.java @@ -4,7 +4,6 @@ package com.pulumi.junipermist.device.outputs; import com.pulumi.core.annotations.CustomType; -import java.lang.Integer; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -12,20 +11,48 @@ @CustomType public final class GatewayNetworkInternetAccessDestinationNat { + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + /** + * @return The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ + private @Nullable String port; + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + private @Nullable String wanName; private GatewayNetworkInternetAccessDestinationNat() {} + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional internalIp() { return Optional.ofNullable(this.internalIp); } public Optional name() { return Optional.ofNullable(this.name); } - public Optional port() { + /** + * @return The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ + public Optional port() { return Optional.ofNullable(this.port); } + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + public Optional wanName() { + return Optional.ofNullable(this.wanName); + } public static Builder builder() { return new Builder(); @@ -38,13 +65,15 @@ public static Builder builder(GatewayNetworkInternetAccessDestinationNat default public static final class Builder { private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + private @Nullable String port; + private @Nullable String wanName; public Builder() {} public Builder(GatewayNetworkInternetAccessDestinationNat defaults) { Objects.requireNonNull(defaults); this.internalIp = defaults.internalIp; this.name = defaults.name; this.port = defaults.port; + this.wanName = defaults.wanName; } @CustomType.Setter @@ -60,16 +89,23 @@ public Builder name(@Nullable String name) { return this; } @CustomType.Setter - public Builder port(@Nullable Integer port) { + public Builder port(@Nullable String port) { this.port = port; return this; } + @CustomType.Setter + public Builder wanName(@Nullable String wanName) { + + this.wanName = wanName; + return this; + } public GatewayNetworkInternetAccessDestinationNat build() { final var _resultValue = new GatewayNetworkInternetAccessDestinationNat(); _resultValue.internalIp = internalIp; _resultValue.name = name; _resultValue.port = port; + _resultValue.wanName = wanName; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkInternetAccessStaticNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkInternetAccessStaticNat.java index aff475dc..bfcbac83 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkInternetAccessStaticNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkInternetAccessStaticNat.java @@ -4,6 +4,7 @@ package com.pulumi.junipermist.device.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -11,23 +12,31 @@ @CustomType public final class GatewayNetworkInternetAccessStaticNat { - private @Nullable String internalIp; - private @Nullable String name; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + private String internalIp; + private String name; + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ private @Nullable String wanName; private GatewayNetworkInternetAccessStaticNat() {} - public Optional internalIp() { - return Optional.ofNullable(this.internalIp); + /** + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + public String internalIp() { + return this.internalIp; } - public Optional name() { - return Optional.ofNullable(this.name); + public String name() { + return this.name; } /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ public Optional wanName() { @@ -43,8 +52,8 @@ public static Builder builder(GatewayNetworkInternetAccessStaticNat defaults) { } @CustomType.Builder public static final class Builder { - private @Nullable String internalIp; - private @Nullable String name; + private String internalIp; + private String name; private @Nullable String wanName; public Builder() {} public Builder(GatewayNetworkInternetAccessStaticNat defaults) { @@ -55,14 +64,18 @@ public Builder(GatewayNetworkInternetAccessStaticNat defaults) { } @CustomType.Setter - public Builder internalIp(@Nullable String internalIp) { - + public Builder internalIp(String internalIp) { + if (internalIp == null) { + throw new MissingRequiredPropertyException("GatewayNetworkInternetAccessStaticNat", "internalIp"); + } this.internalIp = internalIp; return this; } @CustomType.Setter - public Builder name(@Nullable String name) { - + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GatewayNetworkInternetAccessStaticNat", "name"); + } this.name = name; return this; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkVpnAccess.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkVpnAccess.java index 10ef60ef..52d58543 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkVpnAccess.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkVpnAccess.java @@ -28,7 +28,7 @@ public final class GatewayNetworkVpnAccess { */ private @Nullable Boolean allowPing; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ private @Nullable Map destinationNat; @@ -48,14 +48,12 @@ public final class GatewayNetworkVpnAccess { */ private @Nullable Boolean noReadvertiseToLanOspf; /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ private @Nullable Boolean noReadvertiseToOverlay; /** - * @return by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @return by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * */ private @Nullable List otherVrfs; @@ -70,13 +68,12 @@ public final class GatewayNetworkVpnAccess { */ private @Nullable GatewayNetworkVpnAccessSourceNat sourceNat; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ private @Nullable Map staticNat; /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ private @Nullable String summarizedSubnet; @@ -107,7 +104,7 @@ public Optional allowPing() { return Optional.ofNullable(this.allowPing); } /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Map destinationNat() { @@ -135,16 +132,14 @@ public Optional noReadvertiseToLanOspf() { return Optional.ofNullable(this.noReadvertiseToLanOspf); } /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ public Optional noReadvertiseToOverlay() { return Optional.ofNullable(this.noReadvertiseToOverlay); } /** - * @return by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @return by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * */ public List otherVrfs() { @@ -165,15 +160,14 @@ public Optional sourceNat() { return Optional.ofNullable(this.sourceNat); } /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Map staticNat() { return this.staticNat == null ? Map.of() : this.staticNat; } /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ public Optional summarizedSubnet() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkVpnAccessDestinationNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkVpnAccessDestinationNat.java index a870c04d..a60b45c7 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkVpnAccessDestinationNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkVpnAccessDestinationNat.java @@ -4,7 +4,6 @@ package com.pulumi.junipermist.device.outputs; import com.pulumi.core.annotations.CustomType; -import java.lang.Integer; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -12,18 +11,26 @@ @CustomType public final class GatewayNetworkVpnAccessDestinationNat { + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + private @Nullable String port; private GatewayNetworkVpnAccessDestinationNat() {} + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional internalIp() { return Optional.ofNullable(this.internalIp); } public Optional name() { return Optional.ofNullable(this.name); } - public Optional port() { + public Optional port() { return Optional.ofNullable(this.port); } @@ -38,7 +45,7 @@ public static Builder builder(GatewayNetworkVpnAccessDestinationNat defaults) { public static final class Builder { private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + private @Nullable String port; public Builder() {} public Builder(GatewayNetworkVpnAccessDestinationNat defaults) { Objects.requireNonNull(defaults); @@ -60,7 +67,7 @@ public Builder name(@Nullable String name) { return this; } @CustomType.Setter - public Builder port(@Nullable Integer port) { + public Builder port(@Nullable String port) { this.port = port; return this; diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkVpnAccessStaticNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkVpnAccessStaticNat.java index ddabbe54..4b538db4 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkVpnAccessStaticNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayNetworkVpnAccessStaticNat.java @@ -4,34 +4,29 @@ package com.pulumi.junipermist.device.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; -import java.util.Optional; -import javax.annotation.Nullable; @CustomType public final class GatewayNetworkVpnAccessStaticNat { - private @Nullable String internalIp; - private @Nullable String name; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - private @Nullable String wanName; + private String internalIp; + private String name; private GatewayNetworkVpnAccessStaticNat() {} - public Optional internalIp() { - return Optional.ofNullable(this.internalIp); - } - public Optional name() { - return Optional.ofNullable(this.name); - } /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - public Optional wanName() { - return Optional.ofNullable(this.wanName); + public String internalIp() { + return this.internalIp; + } + public String name() { + return this.name; } public static Builder builder() { @@ -43,40 +38,35 @@ public static Builder builder(GatewayNetworkVpnAccessStaticNat defaults) { } @CustomType.Builder public static final class Builder { - private @Nullable String internalIp; - private @Nullable String name; - private @Nullable String wanName; + private String internalIp; + private String name; public Builder() {} public Builder(GatewayNetworkVpnAccessStaticNat defaults) { Objects.requireNonNull(defaults); this.internalIp = defaults.internalIp; this.name = defaults.name; - this.wanName = defaults.wanName; } @CustomType.Setter - public Builder internalIp(@Nullable String internalIp) { - + public Builder internalIp(String internalIp) { + if (internalIp == null) { + throw new MissingRequiredPropertyException("GatewayNetworkVpnAccessStaticNat", "internalIp"); + } this.internalIp = internalIp; return this; } @CustomType.Setter - public Builder name(@Nullable String name) { - + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GatewayNetworkVpnAccessStaticNat", "name"); + } this.name = name; return this; } - @CustomType.Setter - public Builder wanName(@Nullable String wanName) { - - this.wanName = wanName; - return this; - } public GatewayNetworkVpnAccessStaticNat build() { final var _resultValue = new GatewayNetworkVpnAccessStaticNat(); _resultValue.internalIp = internalIp; _resultValue.name = name; - _resultValue.wanName = wanName; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfig.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfig.java index 29fdfb1c..1bc1b9a9 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfig.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfig.java @@ -33,9 +33,7 @@ public final class GatewayPortConfig { */ private @Nullable String aeIdx; /** - * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * */ private @Nullable Boolean aeLacpForceUp; @@ -45,6 +43,10 @@ public final class GatewayPortConfig { * */ private @Nullable Boolean critical; + /** + * @return Interface Description. Can be a variable (i.e. "{{myvar}}") + * + */ private @Nullable String description; private @Nullable Boolean disableAutoneg; /** @@ -58,14 +60,12 @@ public final class GatewayPortConfig { */ private @Nullable String dslType; /** - * @return if `wan_type`==`dsl` - * 16 bit int + * @return if `wan_type`==`dsl`, 16 bit int * */ private @Nullable Integer dslVci; /** - * @return if `wan_type`==`dsl` - * 8 bit int + * @return if `wan_type`==`dsl`, 8 bit int * */ private @Nullable Integer dslVpi; @@ -107,7 +107,7 @@ public final class GatewayPortConfig { */ private @Nullable String name; /** - * @return if `usage`==`lan` + * @return if `usage`==`lan`, name of the `junipermist.org.Network` resource * */ private @Nullable List networks; @@ -118,7 +118,7 @@ public final class GatewayPortConfig { private @Nullable Integer outerVlanId; private @Nullable Boolean poeDisabled; /** - * @return if `usage`==`lan` + * @return Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * */ private @Nullable String portNetwork; @@ -164,43 +164,44 @@ public final class GatewayPortConfig { * */ private String usage; - /** - * @return if WAN interface is on a VLAN - * - */ - private @Nullable Integer vlanId; + private @Nullable String vlanId; /** * @return Property key is the VPN name * */ private @Nullable Map vpnPaths; /** - * @return when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @return Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * */ private @Nullable String wanArpPolicer; /** - * @return optional, if spoke should reach this port by a different IP + * @return Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * */ private @Nullable String wanExtIp; /** - * @return Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * @return Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * */ private @Nullable Map wanExtraRoutes; /** - * @return if `usage`==`wan` + * @return Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + */ + private @Nullable List wanNetworks; + /** + * @return Only if `usage`==`wan` * */ private @Nullable GatewayPortConfigWanProbeOverride wanProbeOverride; /** - * @return optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * @return Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip * */ private @Nullable GatewayPortConfigWanSourceNat wanSourceNat; /** - * @return if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * @return Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * */ private @Nullable String wanType; @@ -221,9 +222,7 @@ public Optional aeIdx() { return Optional.ofNullable(this.aeIdx); } /** - * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * */ public Optional aeLacpForceUp() { @@ -239,6 +238,10 @@ public Optional aggregated() { public Optional critical() { return Optional.ofNullable(this.critical); } + /** + * @return Interface Description. Can be a variable (i.e. "{{myvar}}") + * + */ public Optional description() { return Optional.ofNullable(this.description); } @@ -260,16 +263,14 @@ public Optional dslType() { return Optional.ofNullable(this.dslType); } /** - * @return if `wan_type`==`dsl` - * 16 bit int + * @return if `wan_type`==`dsl`, 16 bit int * */ public Optional dslVci() { return Optional.ofNullable(this.dslVci); } /** - * @return if `wan_type`==`dsl` - * 8 bit int + * @return if `wan_type`==`dsl`, 8 bit int * */ public Optional dslVpi() { @@ -331,7 +332,7 @@ public Optional name() { return Optional.ofNullable(this.name); } /** - * @return if `usage`==`lan` + * @return if `usage`==`lan`, name of the `junipermist.org.Network` resource * */ public List networks() { @@ -348,7 +349,7 @@ public Optional poeDisabled() { return Optional.ofNullable(this.poeDisabled); } /** - * @return if `usage`==`lan` + * @return Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * */ public Optional portNetwork() { @@ -416,11 +417,7 @@ public Optional trafficShaping() { public String usage() { return this.usage; } - /** - * @return if WAN interface is on a VLAN - * - */ - public Optional vlanId() { + public Optional vlanId() { return Optional.ofNullable(this.vlanId); } /** @@ -431,42 +428,49 @@ public Map vpnPaths() { return this.vpnPaths == null ? Map.of() : this.vpnPaths; } /** - * @return when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @return Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * */ public Optional wanArpPolicer() { return Optional.ofNullable(this.wanArpPolicer); } /** - * @return optional, if spoke should reach this port by a different IP + * @return Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * */ public Optional wanExtIp() { return Optional.ofNullable(this.wanExtIp); } /** - * @return Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * @return Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * */ public Map wanExtraRoutes() { return this.wanExtraRoutes == null ? Map.of() : this.wanExtraRoutes; } /** - * @return if `usage`==`wan` + * @return Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + */ + public List wanNetworks() { + return this.wanNetworks == null ? List.of() : this.wanNetworks; + } + /** + * @return Only if `usage`==`wan` * */ public Optional wanProbeOverride() { return Optional.ofNullable(this.wanProbeOverride); } /** - * @return optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * @return Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip * */ public Optional wanSourceNat() { return Optional.ofNullable(this.wanSourceNat); } /** - * @return if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * @return Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * */ public Optional wanType() { @@ -516,11 +520,12 @@ public static final class Builder { private @Nullable String svrPortRange; private @Nullable GatewayPortConfigTrafficShaping trafficShaping; private String usage; - private @Nullable Integer vlanId; + private @Nullable String vlanId; private @Nullable Map vpnPaths; private @Nullable String wanArpPolicer; private @Nullable String wanExtIp; private @Nullable Map wanExtraRoutes; + private @Nullable List wanNetworks; private @Nullable GatewayPortConfigWanProbeOverride wanProbeOverride; private @Nullable GatewayPortConfigWanSourceNat wanSourceNat; private @Nullable String wanType; @@ -566,6 +571,7 @@ public Builder(GatewayPortConfig defaults) { this.wanArpPolicer = defaults.wanArpPolicer; this.wanExtIp = defaults.wanExtIp; this.wanExtraRoutes = defaults.wanExtraRoutes; + this.wanNetworks = defaults.wanNetworks; this.wanProbeOverride = defaults.wanProbeOverride; this.wanSourceNat = defaults.wanSourceNat; this.wanType = defaults.wanType; @@ -784,7 +790,7 @@ public Builder usage(String usage) { return this; } @CustomType.Setter - public Builder vlanId(@Nullable Integer vlanId) { + public Builder vlanId(@Nullable String vlanId) { this.vlanId = vlanId; return this; @@ -814,6 +820,15 @@ public Builder wanExtraRoutes(@Nullable Map wanNetworks) { + + this.wanNetworks = wanNetworks; + return this; + } + public Builder wanNetworks(String... wanNetworks) { + return wanNetworks(List.of(wanNetworks)); + } + @CustomType.Setter public Builder wanProbeOverride(@Nullable GatewayPortConfigWanProbeOverride wanProbeOverride) { this.wanProbeOverride = wanProbeOverride; @@ -872,6 +887,7 @@ public GatewayPortConfig build() { _resultValue.wanArpPolicer = wanArpPolicer; _resultValue.wanExtIp = wanExtIp; _resultValue.wanExtraRoutes = wanExtraRoutes; + _resultValue.wanNetworks = wanNetworks; _resultValue.wanProbeOverride = wanProbeOverride; _resultValue.wanSourceNat = wanSourceNat; _resultValue.wanType = wanType; diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfigIpConfig.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfigIpConfig.java index b1f3022e..50726821 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfigIpConfig.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfigIpConfig.java @@ -23,13 +23,17 @@ public final class GatewayPortConfigIpConfig { */ private @Nullable List dnsSuffixes; /** - * @return except for out-of_band interface (vme/em0/fxp0) + * @return except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * */ private @Nullable String gateway; + /** + * @return Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + */ private @Nullable String ip; /** - * @return used only if `subnet` is not specified in `networks` + * @return used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * */ private @Nullable String netmask; @@ -75,17 +79,21 @@ public List dnsSuffixes() { return this.dnsSuffixes == null ? List.of() : this.dnsSuffixes; } /** - * @return except for out-of_band interface (vme/em0/fxp0) + * @return except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * */ public Optional gateway() { return Optional.ofNullable(this.gateway); } + /** + * @return Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + */ public Optional ip() { return Optional.ofNullable(this.ip); } /** - * @return used only if `subnet` is not specified in `networks` + * @return used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * */ public Optional netmask() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfigTrafficShaping.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfigTrafficShaping.java index a6709eac..8bc56254 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfigTrafficShaping.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfigTrafficShaping.java @@ -14,17 +14,20 @@ @CustomType public final class GatewayPortConfigTrafficShaping { /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ private @Nullable List classPercentages; private @Nullable Boolean enabled; + /** + * @return Interface Transmit Cap in kbps + * + */ + private @Nullable Integer maxTxKbps; private GatewayPortConfigTrafficShaping() {} /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ public List classPercentages() { @@ -33,6 +36,13 @@ public List classPercentages() { public Optional enabled() { return Optional.ofNullable(this.enabled); } + /** + * @return Interface Transmit Cap in kbps + * + */ + public Optional maxTxKbps() { + return Optional.ofNullable(this.maxTxKbps); + } public static Builder builder() { return new Builder(); @@ -45,11 +55,13 @@ public static Builder builder(GatewayPortConfigTrafficShaping defaults) { public static final class Builder { private @Nullable List classPercentages; private @Nullable Boolean enabled; + private @Nullable Integer maxTxKbps; public Builder() {} public Builder(GatewayPortConfigTrafficShaping defaults) { Objects.requireNonNull(defaults); this.classPercentages = defaults.classPercentages; this.enabled = defaults.enabled; + this.maxTxKbps = defaults.maxTxKbps; } @CustomType.Setter @@ -67,10 +79,17 @@ public Builder enabled(@Nullable Boolean enabled) { this.enabled = enabled; return this; } + @CustomType.Setter + public Builder maxTxKbps(@Nullable Integer maxTxKbps) { + + this.maxTxKbps = maxTxKbps; + return this; + } public GatewayPortConfigTrafficShaping build() { final var _resultValue = new GatewayPortConfigTrafficShaping(); _resultValue.classPercentages = classPercentages; _resultValue.enabled = enabled; + _resultValue.maxTxKbps = maxTxKbps; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfigVpnPathsTrafficShaping.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfigVpnPathsTrafficShaping.java index ef72ecf0..1e1d0723 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfigVpnPathsTrafficShaping.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayPortConfigVpnPathsTrafficShaping.java @@ -14,17 +14,20 @@ @CustomType public final class GatewayPortConfigVpnPathsTrafficShaping { /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ private @Nullable List classPercentages; private @Nullable Boolean enabled; + /** + * @return Interface Transmit Cap in kbps + * + */ + private @Nullable Integer maxTxKbps; private GatewayPortConfigVpnPathsTrafficShaping() {} /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ public List classPercentages() { @@ -33,6 +36,13 @@ public List classPercentages() { public Optional enabled() { return Optional.ofNullable(this.enabled); } + /** + * @return Interface Transmit Cap in kbps + * + */ + public Optional maxTxKbps() { + return Optional.ofNullable(this.maxTxKbps); + } public static Builder builder() { return new Builder(); @@ -45,11 +55,13 @@ public static Builder builder(GatewayPortConfigVpnPathsTrafficShaping defaults) public static final class Builder { private @Nullable List classPercentages; private @Nullable Boolean enabled; + private @Nullable Integer maxTxKbps; public Builder() {} public Builder(GatewayPortConfigVpnPathsTrafficShaping defaults) { Objects.requireNonNull(defaults); this.classPercentages = defaults.classPercentages; this.enabled = defaults.enabled; + this.maxTxKbps = defaults.maxTxKbps; } @CustomType.Setter @@ -67,10 +79,17 @@ public Builder enabled(@Nullable Boolean enabled) { this.enabled = enabled; return this; } + @CustomType.Setter + public Builder maxTxKbps(@Nullable Integer maxTxKbps) { + + this.maxTxKbps = maxTxKbps; + return this; + } public GatewayPortConfigVpnPathsTrafficShaping build() { final var _resultValue = new GatewayPortConfigVpnPathsTrafficShaping(); _resultValue.classPercentages = classPercentages; _resultValue.enabled = enabled; + _resultValue.maxTxKbps = maxTxKbps; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayRoutingPoliciesTermAction.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayRoutingPoliciesTermAction.java index b0702099..e555196f 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayRoutingPoliciesTermAction.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayRoutingPoliciesTermAction.java @@ -20,6 +20,11 @@ public final class GatewayRoutingPoliciesTermAction { * */ private @Nullable List addTargetVrfs; + /** + * @return route aggregation + * + */ + private @Nullable List aggregates; /** * @return when used as export policy, optional * @@ -61,6 +66,13 @@ public List addCommunities() { public List addTargetVrfs() { return this.addTargetVrfs == null ? List.of() : this.addTargetVrfs; } + /** + * @return route aggregation + * + */ + public List aggregates() { + return this.aggregates == null ? List.of() : this.aggregates; + } /** * @return when used as export policy, optional * @@ -112,6 +124,7 @@ public static final class Builder { private @Nullable Boolean accept; private @Nullable List addCommunities; private @Nullable List addTargetVrfs; + private @Nullable List aggregates; private @Nullable List communities; private @Nullable List excludeAsPaths; private @Nullable List excludeCommunities; @@ -124,6 +137,7 @@ public Builder(GatewayRoutingPoliciesTermAction defaults) { this.accept = defaults.accept; this.addCommunities = defaults.addCommunities; this.addTargetVrfs = defaults.addTargetVrfs; + this.aggregates = defaults.aggregates; this.communities = defaults.communities; this.excludeAsPaths = defaults.excludeAsPaths; this.excludeCommunities = defaults.excludeCommunities; @@ -157,6 +171,15 @@ public Builder addTargetVrfs(String... addTargetVrfs) { return addTargetVrfs(List.of(addTargetVrfs)); } @CustomType.Setter + public Builder aggregates(@Nullable List aggregates) { + + this.aggregates = aggregates; + return this; + } + public Builder aggregates(String... aggregates) { + return aggregates(List.of(aggregates)); + } + @CustomType.Setter public Builder communities(@Nullable List communities) { this.communities = communities; @@ -212,6 +235,7 @@ public GatewayRoutingPoliciesTermAction build() { _resultValue.accept = accept; _resultValue.addCommunities = addCommunities; _resultValue.addTargetVrfs = addTargetVrfs; + _resultValue.aggregates = aggregates; _resultValue.communities = communities; _resultValue.excludeAsPaths = excludeAsPaths; _resultValue.excludeCommunities = excludeCommunities; diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayRoutingPoliciesTermMatching.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayRoutingPoliciesTermMatching.java index ca979f54..c996a74b 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayRoutingPoliciesTermMatching.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayRoutingPoliciesTermMatching.java @@ -39,8 +39,7 @@ public final class GatewayRoutingPoliciesTermMatching { private @Nullable List vpnNeighborMacs; private @Nullable GatewayRoutingPoliciesTermMatchingVpnPathSla vpnPathSla; /** - * @return overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @return overlay-facing criteria (used for bgp_config where via=vpn). ordered- * */ private @Nullable List vpnPaths; @@ -87,8 +86,7 @@ public Optional vpnPathSla() { return Optional.ofNullable(this.vpnPathSla); } /** - * @return overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @return overlay-facing criteria (used for bgp_config where via=vpn). ordered- * */ public List vpnPaths() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayRoutingPoliciesTermMatchingRouteExists.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayRoutingPoliciesTermMatchingRouteExists.java index 792b61e6..a1718e02 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayRoutingPoliciesTermMatchingRouteExists.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayRoutingPoliciesTermMatchingRouteExists.java @@ -13,8 +13,7 @@ public final class GatewayRoutingPoliciesTermMatchingRouteExists { private @Nullable String route; /** - * @return name of the vrf instance - * it can also be the name of the VPN or wan if they + * @return name of the vrf instance, it can also be the name of the VPN or wan if they * */ private @Nullable String vrfName; @@ -24,8 +23,7 @@ public Optional route() { return Optional.ofNullable(this.route); } /** - * @return name of the vrf instance - * it can also be the name of the VPN or wan if they + * @return name of the vrf instance, it can also be the name of the VPN or wan if they * */ public Optional vrfName() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayServicePolicy.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayServicePolicy.java index 389acfe6..bebd3ccd 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayServicePolicy.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayServicePolicy.java @@ -39,8 +39,7 @@ public final class GatewayServicePolicy { */ private @Nullable String name; /** - * @return by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @return by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * */ private @Nullable String pathPreference; @@ -96,8 +95,7 @@ public Optional name() { return Optional.ofNullable(this.name); } /** - * @return by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @return by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * */ public Optional pathPreference() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigs.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigs.java index 3c9b6199..89048abc 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigs.java @@ -21,75 +21,77 @@ public final class GatewayTunnelConfigs { private @Nullable GatewayTunnelConfigsAutoProvision autoProvision; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ private @Nullable Integer ikeLifetime; /** - * @return Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @return Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * */ private @Nullable String ikeMode; /** - * @return if `provider`== `custom-ipsec` + * @return if `provider`==`custom-ipsec` * */ private @Nullable List ikeProposals; /** - * @return if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ private @Nullable Integer ipsecLifetime; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ private @Nullable List ipsecProposals; /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ private @Nullable String localId; /** - * @return enum: `active-active`, `active-standby` + * @return Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * */ private @Nullable String mode; /** - * @return networks reachable via this tunnel + * @return if `provider`==`custom-ipsec`, networks reachable via this tunnel * */ private @Nullable List networks; + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ private @Nullable GatewayTunnelConfigsPrimary primary; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ private @Nullable GatewayTunnelConfigsProbe probe; /** - * @return Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * @return Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * */ private @Nullable String protocol; /** - * @return enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @return Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * */ private @Nullable String provider; /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ private @Nullable String psk; + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ private @Nullable GatewayTunnelConfigsSecondary secondary; /** - * @return Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @return Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * */ private @Nullable String version; @@ -99,103 +101,105 @@ public Optional autoProvision() { return Optional.ofNullable(this.autoProvision); } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ public Optional ikeLifetime() { return Optional.ofNullable(this.ikeLifetime); } /** - * @return Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @return Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * */ public Optional ikeMode() { return Optional.ofNullable(this.ikeMode); } /** - * @return if `provider`== `custom-ipsec` + * @return if `provider`==`custom-ipsec` * */ public List ikeProposals() { return this.ikeProposals == null ? List.of() : this.ikeProposals; } /** - * @return if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ public Optional ipsecLifetime() { return Optional.ofNullable(this.ipsecLifetime); } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ public List ipsecProposals() { return this.ipsecProposals == null ? List.of() : this.ipsecProposals; } /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional localId() { return Optional.ofNullable(this.localId); } /** - * @return enum: `active-active`, `active-standby` + * @return Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * */ public Optional mode() { return Optional.ofNullable(this.mode); } /** - * @return networks reachable via this tunnel + * @return if `provider`==`custom-ipsec`, networks reachable via this tunnel * */ public List networks() { return this.networks == null ? List.of() : this.networks; } + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ public Optional primary() { return Optional.ofNullable(this.primary); } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ public Optional probe() { return Optional.ofNullable(this.probe); } /** - * @return Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * @return Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * */ public Optional protocol() { return Optional.ofNullable(this.protocol); } /** - * @return enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @return Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * */ public Optional provider() { return Optional.ofNullable(this.provider); } /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional psk() { return Optional.ofNullable(this.psk); } + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ public Optional secondary() { return Optional.ofNullable(this.secondary); } /** - * @return Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @return Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * */ public Optional version() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsAutoProvision.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsAutoProvision.java index af262363..01d2d22f 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsAutoProvision.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsAutoProvision.java @@ -4,10 +4,12 @@ package com.pulumi.junipermist.device.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import com.pulumi.junipermist.device.outputs.GatewayTunnelConfigsAutoProvisionLatlng; import com.pulumi.junipermist.device.outputs.GatewayTunnelConfigsAutoProvisionPrimary; import com.pulumi.junipermist.device.outputs.GatewayTunnelConfigsAutoProvisionSecondary; import java.lang.Boolean; +import java.lang.String; import java.util.Objects; import java.util.Optional; import javax.annotation.Nullable; @@ -15,20 +17,52 @@ @CustomType public final class GatewayTunnelConfigsAutoProvision { private @Nullable Boolean enable; + /** + * @return API override for POP selection + * + */ private @Nullable GatewayTunnelConfigsAutoProvisionLatlng latlng; private @Nullable GatewayTunnelConfigsAutoProvisionPrimary primary; + /** + * @return enum: `jse-ipsec`, `zscaler-ipsec` + * + */ + private String provider; + /** + * @return API override for POP selection + * + */ + private @Nullable String region; private @Nullable GatewayTunnelConfigsAutoProvisionSecondary secondary; private GatewayTunnelConfigsAutoProvision() {} public Optional enable() { return Optional.ofNullable(this.enable); } + /** + * @return API override for POP selection + * + */ public Optional latlng() { return Optional.ofNullable(this.latlng); } public Optional primary() { return Optional.ofNullable(this.primary); } + /** + * @return enum: `jse-ipsec`, `zscaler-ipsec` + * + */ + public String provider() { + return this.provider; + } + /** + * @return API override for POP selection + * + */ + public Optional region() { + return Optional.ofNullable(this.region); + } public Optional secondary() { return Optional.ofNullable(this.secondary); } @@ -45,6 +79,8 @@ public static final class Builder { private @Nullable Boolean enable; private @Nullable GatewayTunnelConfigsAutoProvisionLatlng latlng; private @Nullable GatewayTunnelConfigsAutoProvisionPrimary primary; + private String provider; + private @Nullable String region; private @Nullable GatewayTunnelConfigsAutoProvisionSecondary secondary; public Builder() {} public Builder(GatewayTunnelConfigsAutoProvision defaults) { @@ -52,6 +88,8 @@ public Builder(GatewayTunnelConfigsAutoProvision defaults) { this.enable = defaults.enable; this.latlng = defaults.latlng; this.primary = defaults.primary; + this.provider = defaults.provider; + this.region = defaults.region; this.secondary = defaults.secondary; } @@ -74,6 +112,20 @@ public Builder primary(@Nullable GatewayTunnelConfigsAutoProvisionPrimary primar return this; } @CustomType.Setter + public Builder provider(String provider) { + if (provider == null) { + throw new MissingRequiredPropertyException("GatewayTunnelConfigsAutoProvision", "provider"); + } + this.provider = provider; + return this; + } + @CustomType.Setter + public Builder region(@Nullable String region) { + + this.region = region; + return this; + } + @CustomType.Setter public Builder secondary(@Nullable GatewayTunnelConfigsAutoProvisionSecondary secondary) { this.secondary = secondary; @@ -84,6 +136,8 @@ public GatewayTunnelConfigsAutoProvision build() { _resultValue.enable = enable; _resultValue.latlng = latlng; _resultValue.primary = primary; + _resultValue.provider = provider; + _resultValue.region = region; _resultValue.secondary = secondary; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsAutoProvisionPrimary.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsAutoProvisionPrimary.java index 879caa54..a62c475c 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsAutoProvisionPrimary.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsAutoProvisionPrimary.java @@ -7,12 +7,11 @@ import java.lang.String; import java.util.List; import java.util.Objects; -import java.util.Optional; import javax.annotation.Nullable; @CustomType public final class GatewayTunnelConfigsAutoProvisionPrimary { - private @Nullable String numHosts; + private @Nullable List probeIps; /** * @return optional, only needed if `vars_only`==`false` * @@ -20,8 +19,8 @@ public final class GatewayTunnelConfigsAutoProvisionPrimary { private @Nullable List wanNames; private GatewayTunnelConfigsAutoProvisionPrimary() {} - public Optional numHosts() { - return Optional.ofNullable(this.numHosts); + public List probeIps() { + return this.probeIps == null ? List.of() : this.probeIps; } /** * @return optional, only needed if `vars_only`==`false` @@ -40,21 +39,24 @@ public static Builder builder(GatewayTunnelConfigsAutoProvisionPrimary defaults) } @CustomType.Builder public static final class Builder { - private @Nullable String numHosts; + private @Nullable List probeIps; private @Nullable List wanNames; public Builder() {} public Builder(GatewayTunnelConfigsAutoProvisionPrimary defaults) { Objects.requireNonNull(defaults); - this.numHosts = defaults.numHosts; + this.probeIps = defaults.probeIps; this.wanNames = defaults.wanNames; } @CustomType.Setter - public Builder numHosts(@Nullable String numHosts) { + public Builder probeIps(@Nullable List probeIps) { - this.numHosts = numHosts; + this.probeIps = probeIps; return this; } + public Builder probeIps(String... probeIps) { + return probeIps(List.of(probeIps)); + } @CustomType.Setter public Builder wanNames(@Nullable List wanNames) { @@ -66,7 +68,7 @@ public Builder wanNames(String... wanNames) { } public GatewayTunnelConfigsAutoProvisionPrimary build() { final var _resultValue = new GatewayTunnelConfigsAutoProvisionPrimary(); - _resultValue.numHosts = numHosts; + _resultValue.probeIps = probeIps; _resultValue.wanNames = wanNames; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsAutoProvisionSecondary.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsAutoProvisionSecondary.java index 37aefb3f..6ee72b67 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsAutoProvisionSecondary.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsAutoProvisionSecondary.java @@ -7,12 +7,11 @@ import java.lang.String; import java.util.List; import java.util.Objects; -import java.util.Optional; import javax.annotation.Nullable; @CustomType public final class GatewayTunnelConfigsAutoProvisionSecondary { - private @Nullable String numHosts; + private @Nullable List probeIps; /** * @return optional, only needed if `vars_only`==`false` * @@ -20,8 +19,8 @@ public final class GatewayTunnelConfigsAutoProvisionSecondary { private @Nullable List wanNames; private GatewayTunnelConfigsAutoProvisionSecondary() {} - public Optional numHosts() { - return Optional.ofNullable(this.numHosts); + public List probeIps() { + return this.probeIps == null ? List.of() : this.probeIps; } /** * @return optional, only needed if `vars_only`==`false` @@ -40,21 +39,24 @@ public static Builder builder(GatewayTunnelConfigsAutoProvisionSecondary default } @CustomType.Builder public static final class Builder { - private @Nullable String numHosts; + private @Nullable List probeIps; private @Nullable List wanNames; public Builder() {} public Builder(GatewayTunnelConfigsAutoProvisionSecondary defaults) { Objects.requireNonNull(defaults); - this.numHosts = defaults.numHosts; + this.probeIps = defaults.probeIps; this.wanNames = defaults.wanNames; } @CustomType.Setter - public Builder numHosts(@Nullable String numHosts) { + public Builder probeIps(@Nullable List probeIps) { - this.numHosts = numHosts; + this.probeIps = probeIps; return this; } + public Builder probeIps(String... probeIps) { + return probeIps(List.of(probeIps)); + } @CustomType.Setter public Builder wanNames(@Nullable List wanNames) { @@ -66,7 +68,7 @@ public Builder wanNames(String... wanNames) { } public GatewayTunnelConfigsAutoProvisionSecondary build() { final var _resultValue = new GatewayTunnelConfigsAutoProvisionSecondary(); - _resultValue.numHosts = numHosts; + _resultValue.probeIps = probeIps; _resultValue.wanNames = wanNames; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsIpsecProposal.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsIpsecProposal.java index 6691031c..c23359a1 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsIpsecProposal.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsIpsecProposal.java @@ -17,7 +17,7 @@ public final class GatewayTunnelConfigsIpsecProposal { */ private @Nullable String authAlgo; /** - * @return Only if `provider`== `custom-ipsec`. enum: + * @return Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -46,7 +46,7 @@ public Optional authAlgo() { return Optional.ofNullable(this.authAlgo); } /** - * @return Only if `provider`== `custom-ipsec`. enum: + * @return Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsPrimary.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsPrimary.java index b2291ec6..1409961b 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsPrimary.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsPrimary.java @@ -4,6 +4,7 @@ package com.pulumi.junipermist.device.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.List; import java.util.Objects; @@ -11,30 +12,26 @@ @CustomType public final class GatewayTunnelConfigsPrimary { - private @Nullable List hosts; + private List hosts; /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ private @Nullable List internalIps; private @Nullable List probeIps; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ private @Nullable List remoteIds; - private @Nullable List wanNames; + private List wanNames; private GatewayTunnelConfigsPrimary() {} public List hosts() { - return this.hosts == null ? List.of() : this.hosts; + return this.hosts; } /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ public List internalIps() { @@ -44,14 +41,14 @@ public List probeIps() { return this.probeIps == null ? List.of() : this.probeIps; } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public List remoteIds() { return this.remoteIds == null ? List.of() : this.remoteIds; } public List wanNames() { - return this.wanNames == null ? List.of() : this.wanNames; + return this.wanNames; } public static Builder builder() { @@ -63,11 +60,11 @@ public static Builder builder(GatewayTunnelConfigsPrimary defaults) { } @CustomType.Builder public static final class Builder { - private @Nullable List hosts; + private List hosts; private @Nullable List internalIps; private @Nullable List probeIps; private @Nullable List remoteIds; - private @Nullable List wanNames; + private List wanNames; public Builder() {} public Builder(GatewayTunnelConfigsPrimary defaults) { Objects.requireNonNull(defaults); @@ -79,8 +76,10 @@ public Builder(GatewayTunnelConfigsPrimary defaults) { } @CustomType.Setter - public Builder hosts(@Nullable List hosts) { - + public Builder hosts(List hosts) { + if (hosts == null) { + throw new MissingRequiredPropertyException("GatewayTunnelConfigsPrimary", "hosts"); + } this.hosts = hosts; return this; } @@ -115,8 +114,10 @@ public Builder remoteIds(String... remoteIds) { return remoteIds(List.of(remoteIds)); } @CustomType.Setter - public Builder wanNames(@Nullable List wanNames) { - + public Builder wanNames(List wanNames) { + if (wanNames == null) { + throw new MissingRequiredPropertyException("GatewayTunnelConfigsPrimary", "wanNames"); + } this.wanNames = wanNames; return this; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsSecondary.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsSecondary.java index 05e70f2d..238e846a 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsSecondary.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelConfigsSecondary.java @@ -4,6 +4,7 @@ package com.pulumi.junipermist.device.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.List; import java.util.Objects; @@ -11,30 +12,26 @@ @CustomType public final class GatewayTunnelConfigsSecondary { - private @Nullable List hosts; + private List hosts; /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ private @Nullable List internalIps; private @Nullable List probeIps; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ private @Nullable List remoteIds; - private @Nullable List wanNames; + private List wanNames; private GatewayTunnelConfigsSecondary() {} public List hosts() { - return this.hosts == null ? List.of() : this.hosts; + return this.hosts; } /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ public List internalIps() { @@ -44,14 +41,14 @@ public List probeIps() { return this.probeIps == null ? List.of() : this.probeIps; } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public List remoteIds() { return this.remoteIds == null ? List.of() : this.remoteIds; } public List wanNames() { - return this.wanNames == null ? List.of() : this.wanNames; + return this.wanNames; } public static Builder builder() { @@ -63,11 +60,11 @@ public static Builder builder(GatewayTunnelConfigsSecondary defaults) { } @CustomType.Builder public static final class Builder { - private @Nullable List hosts; + private List hosts; private @Nullable List internalIps; private @Nullable List probeIps; private @Nullable List remoteIds; - private @Nullable List wanNames; + private List wanNames; public Builder() {} public Builder(GatewayTunnelConfigsSecondary defaults) { Objects.requireNonNull(defaults); @@ -79,8 +76,10 @@ public Builder(GatewayTunnelConfigsSecondary defaults) { } @CustomType.Setter - public Builder hosts(@Nullable List hosts) { - + public Builder hosts(List hosts) { + if (hosts == null) { + throw new MissingRequiredPropertyException("GatewayTunnelConfigsSecondary", "hosts"); + } this.hosts = hosts; return this; } @@ -115,8 +114,10 @@ public Builder remoteIds(String... remoteIds) { return remoteIds(List.of(remoteIds)); } @CustomType.Setter - public Builder wanNames(@Nullable List wanNames) { - + public Builder wanNames(List wanNames) { + if (wanNames == null) { + throw new MissingRequiredPropertyException("GatewayTunnelConfigsSecondary", "wanNames"); + } this.wanNames = wanNames; return this; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelProviderOptionsJse.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelProviderOptionsJse.java index 7d4ffe2f..057d8eed 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelProviderOptionsJse.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelProviderOptionsJse.java @@ -12,16 +12,24 @@ @CustomType public final class GatewayTunnelProviderOptionsJse { - private @Nullable String name; private @Nullable Integer numUsers; + /** + * @return JSE Organization name + * + */ + private @Nullable String orgName; private GatewayTunnelProviderOptionsJse() {} - public Optional name() { - return Optional.ofNullable(this.name); - } public Optional numUsers() { return Optional.ofNullable(this.numUsers); } + /** + * @return JSE Organization name + * + */ + public Optional orgName() { + return Optional.ofNullable(this.orgName); + } public static Builder builder() { return new Builder(); @@ -32,31 +40,31 @@ public static Builder builder(GatewayTunnelProviderOptionsJse defaults) { } @CustomType.Builder public static final class Builder { - private @Nullable String name; private @Nullable Integer numUsers; + private @Nullable String orgName; public Builder() {} public Builder(GatewayTunnelProviderOptionsJse defaults) { Objects.requireNonNull(defaults); - this.name = defaults.name; this.numUsers = defaults.numUsers; + this.orgName = defaults.orgName; } @CustomType.Setter - public Builder name(@Nullable String name) { + public Builder numUsers(@Nullable Integer numUsers) { - this.name = name; + this.numUsers = numUsers; return this; } @CustomType.Setter - public Builder numUsers(@Nullable Integer numUsers) { + public Builder orgName(@Nullable String orgName) { - this.numUsers = numUsers; + this.orgName = orgName; return this; } public GatewayTunnelProviderOptionsJse build() { final var _resultValue = new GatewayTunnelProviderOptionsJse(); - _resultValue.name = name; _resultValue.numUsers = numUsers; + _resultValue.orgName = orgName; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelProviderOptionsZscaler.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelProviderOptionsZscaler.java index 7b03b1b3..30697920 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelProviderOptionsZscaler.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelProviderOptionsZscaler.java @@ -6,8 +6,8 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.junipermist.device.outputs.GatewayTunnelProviderOptionsZscalerSubLocation; import java.lang.Boolean; +import java.lang.Double; import java.lang.Integer; -import java.lang.String; import java.util.List; import java.util.Objects; import java.util.Optional; @@ -15,115 +15,179 @@ @CustomType public final class GatewayTunnelProviderOptionsZscaler { - private @Nullable Boolean aupAcceptanceRequired; + private @Nullable Boolean aupBlockInternetUntilAccepted; /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - private @Nullable Integer aupExpire; + private @Nullable Boolean aupEnabled; /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - private @Nullable Boolean aupSslProxy; + private @Nullable Boolean aupForceSslInspection; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - private @Nullable Integer downloadMbps; + private @Nullable Integer aupTimeoutInDays; /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Enable this option to enforce user authentication * */ - private @Nullable Boolean enableAup; + private @Nullable Boolean authRequired; /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - private @Nullable Boolean enableCaution; - private @Nullable Boolean enforceAuthentication; - private @Nullable String name; + private @Nullable Boolean cautionEnabled; /** - * @return if `use_xff`==`true` + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + private @Nullable Double dnBandwidth; + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + private @Nullable Integer idleTimeInMinutes; + /** + * @return if `true`, enable the firewall control option + * + */ + private @Nullable Boolean ofwEnabled; + /** + * @return `sub-locations` can be used for specific uses cases to define different configuration based on the user network * */ private @Nullable List subLocations; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + */ + private @Nullable Boolean surrogateIp; + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + private @Nullable Boolean surrogateIpEnforcedForKnownBrowsers; + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + private @Nullable Integer surrogateRefreshTimeInMinutes; + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - private @Nullable Integer uploadMbps; + private @Nullable Double upBandwidth; /** * @return location uses proxy chaining to forward traffic * */ - private @Nullable Boolean useXff; + private @Nullable Boolean xffForwardEnabled; private GatewayTunnelProviderOptionsZscaler() {} - public Optional aupAcceptanceRequired() { - return Optional.ofNullable(this.aupAcceptanceRequired); + public Optional aupBlockInternetUntilAccepted() { + return Optional.ofNullable(this.aupBlockInternetUntilAccepted); } /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - public Optional aupExpire() { - return Optional.ofNullable(this.aupExpire); + public Optional aupEnabled() { + return Optional.ofNullable(this.aupEnabled); } /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - public Optional aupSslProxy() { - return Optional.ofNullable(this.aupSslProxy); + public Optional aupForceSslInspection() { + return Optional.ofNullable(this.aupForceSslInspection); + } + /** + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again + * + */ + public Optional aupTimeoutInDays() { + return Optional.ofNullable(this.aupTimeoutInDays); } /** - * @return the download bandwidth cap of the link, in Mbps + * @return Enable this option to enforce user authentication * */ - public Optional downloadMbps() { - return Optional.ofNullable(this.downloadMbps); + public Optional authRequired() { + return Optional.ofNullable(this.authRequired); } /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - public Optional enableAup() { - return Optional.ofNullable(this.enableAup); + public Optional cautionEnabled() { + return Optional.ofNullable(this.cautionEnabled); } /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - public Optional enableCaution() { - return Optional.ofNullable(this.enableCaution); + public Optional dnBandwidth() { + return Optional.ofNullable(this.dnBandwidth); } - public Optional enforceAuthentication() { - return Optional.ofNullable(this.enforceAuthentication); + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + public Optional idleTimeInMinutes() { + return Optional.ofNullable(this.idleTimeInMinutes); } - public Optional name() { - return Optional.ofNullable(this.name); + /** + * @return if `true`, enable the firewall control option + * + */ + public Optional ofwEnabled() { + return Optional.ofNullable(this.ofwEnabled); } /** - * @return if `use_xff`==`true` + * @return `sub-locations` can be used for specific uses cases to define different configuration based on the user network * */ public List subLocations() { return this.subLocations == null ? List.of() : this.subLocations; } /** - * @return the download bandwidth cap of the link, in Mbps + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies * */ - public Optional uploadMbps() { - return Optional.ofNullable(this.uploadMbps); + public Optional surrogateIp() { + return Optional.ofNullable(this.surrogateIp); + } + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + public Optional surrogateIpEnforcedForKnownBrowsers() { + return Optional.ofNullable(this.surrogateIpEnforcedForKnownBrowsers); + } + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + public Optional surrogateRefreshTimeInMinutes() { + return Optional.ofNullable(this.surrogateRefreshTimeInMinutes); + } + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional upBandwidth() { + return Optional.ofNullable(this.upBandwidth); } /** * @return location uses proxy chaining to forward traffic * */ - public Optional useXff() { - return Optional.ofNullable(this.useXff); + public Optional xffForwardEnabled() { + return Optional.ofNullable(this.xffForwardEnabled); } public static Builder builder() { @@ -135,79 +199,93 @@ public static Builder builder(GatewayTunnelProviderOptionsZscaler defaults) { } @CustomType.Builder public static final class Builder { - private @Nullable Boolean aupAcceptanceRequired; - private @Nullable Integer aupExpire; - private @Nullable Boolean aupSslProxy; - private @Nullable Integer downloadMbps; - private @Nullable Boolean enableAup; - private @Nullable Boolean enableCaution; - private @Nullable Boolean enforceAuthentication; - private @Nullable String name; + private @Nullable Boolean aupBlockInternetUntilAccepted; + private @Nullable Boolean aupEnabled; + private @Nullable Boolean aupForceSslInspection; + private @Nullable Integer aupTimeoutInDays; + private @Nullable Boolean authRequired; + private @Nullable Boolean cautionEnabled; + private @Nullable Double dnBandwidth; + private @Nullable Integer idleTimeInMinutes; + private @Nullable Boolean ofwEnabled; private @Nullable List subLocations; - private @Nullable Integer uploadMbps; - private @Nullable Boolean useXff; + private @Nullable Boolean surrogateIp; + private @Nullable Boolean surrogateIpEnforcedForKnownBrowsers; + private @Nullable Integer surrogateRefreshTimeInMinutes; + private @Nullable Double upBandwidth; + private @Nullable Boolean xffForwardEnabled; public Builder() {} public Builder(GatewayTunnelProviderOptionsZscaler defaults) { Objects.requireNonNull(defaults); - this.aupAcceptanceRequired = defaults.aupAcceptanceRequired; - this.aupExpire = defaults.aupExpire; - this.aupSslProxy = defaults.aupSslProxy; - this.downloadMbps = defaults.downloadMbps; - this.enableAup = defaults.enableAup; - this.enableCaution = defaults.enableCaution; - this.enforceAuthentication = defaults.enforceAuthentication; - this.name = defaults.name; + this.aupBlockInternetUntilAccepted = defaults.aupBlockInternetUntilAccepted; + this.aupEnabled = defaults.aupEnabled; + this.aupForceSslInspection = defaults.aupForceSslInspection; + this.aupTimeoutInDays = defaults.aupTimeoutInDays; + this.authRequired = defaults.authRequired; + this.cautionEnabled = defaults.cautionEnabled; + this.dnBandwidth = defaults.dnBandwidth; + this.idleTimeInMinutes = defaults.idleTimeInMinutes; + this.ofwEnabled = defaults.ofwEnabled; this.subLocations = defaults.subLocations; - this.uploadMbps = defaults.uploadMbps; - this.useXff = defaults.useXff; + this.surrogateIp = defaults.surrogateIp; + this.surrogateIpEnforcedForKnownBrowsers = defaults.surrogateIpEnforcedForKnownBrowsers; + this.surrogateRefreshTimeInMinutes = defaults.surrogateRefreshTimeInMinutes; + this.upBandwidth = defaults.upBandwidth; + this.xffForwardEnabled = defaults.xffForwardEnabled; } @CustomType.Setter - public Builder aupAcceptanceRequired(@Nullable Boolean aupAcceptanceRequired) { + public Builder aupBlockInternetUntilAccepted(@Nullable Boolean aupBlockInternetUntilAccepted) { + + this.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + return this; + } + @CustomType.Setter + public Builder aupEnabled(@Nullable Boolean aupEnabled) { - this.aupAcceptanceRequired = aupAcceptanceRequired; + this.aupEnabled = aupEnabled; return this; } @CustomType.Setter - public Builder aupExpire(@Nullable Integer aupExpire) { + public Builder aupForceSslInspection(@Nullable Boolean aupForceSslInspection) { - this.aupExpire = aupExpire; + this.aupForceSslInspection = aupForceSslInspection; return this; } @CustomType.Setter - public Builder aupSslProxy(@Nullable Boolean aupSslProxy) { + public Builder aupTimeoutInDays(@Nullable Integer aupTimeoutInDays) { - this.aupSslProxy = aupSslProxy; + this.aupTimeoutInDays = aupTimeoutInDays; return this; } @CustomType.Setter - public Builder downloadMbps(@Nullable Integer downloadMbps) { + public Builder authRequired(@Nullable Boolean authRequired) { - this.downloadMbps = downloadMbps; + this.authRequired = authRequired; return this; } @CustomType.Setter - public Builder enableAup(@Nullable Boolean enableAup) { + public Builder cautionEnabled(@Nullable Boolean cautionEnabled) { - this.enableAup = enableAup; + this.cautionEnabled = cautionEnabled; return this; } @CustomType.Setter - public Builder enableCaution(@Nullable Boolean enableCaution) { + public Builder dnBandwidth(@Nullable Double dnBandwidth) { - this.enableCaution = enableCaution; + this.dnBandwidth = dnBandwidth; return this; } @CustomType.Setter - public Builder enforceAuthentication(@Nullable Boolean enforceAuthentication) { + public Builder idleTimeInMinutes(@Nullable Integer idleTimeInMinutes) { - this.enforceAuthentication = enforceAuthentication; + this.idleTimeInMinutes = idleTimeInMinutes; return this; } @CustomType.Setter - public Builder name(@Nullable String name) { + public Builder ofwEnabled(@Nullable Boolean ofwEnabled) { - this.name = name; + this.ofwEnabled = ofwEnabled; return this; } @CustomType.Setter @@ -220,30 +298,52 @@ public Builder subLocations(GatewayTunnelProviderOptionsZscalerSubLocation... su return subLocations(List.of(subLocations)); } @CustomType.Setter - public Builder uploadMbps(@Nullable Integer uploadMbps) { + public Builder surrogateIp(@Nullable Boolean surrogateIp) { + + this.surrogateIp = surrogateIp; + return this; + } + @CustomType.Setter + public Builder surrogateIpEnforcedForKnownBrowsers(@Nullable Boolean surrogateIpEnforcedForKnownBrowsers) { + + this.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + return this; + } + @CustomType.Setter + public Builder surrogateRefreshTimeInMinutes(@Nullable Integer surrogateRefreshTimeInMinutes) { + + this.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + return this; + } + @CustomType.Setter + public Builder upBandwidth(@Nullable Double upBandwidth) { - this.uploadMbps = uploadMbps; + this.upBandwidth = upBandwidth; return this; } @CustomType.Setter - public Builder useXff(@Nullable Boolean useXff) { + public Builder xffForwardEnabled(@Nullable Boolean xffForwardEnabled) { - this.useXff = useXff; + this.xffForwardEnabled = xffForwardEnabled; return this; } public GatewayTunnelProviderOptionsZscaler build() { final var _resultValue = new GatewayTunnelProviderOptionsZscaler(); - _resultValue.aupAcceptanceRequired = aupAcceptanceRequired; - _resultValue.aupExpire = aupExpire; - _resultValue.aupSslProxy = aupSslProxy; - _resultValue.downloadMbps = downloadMbps; - _resultValue.enableAup = enableAup; - _resultValue.enableCaution = enableCaution; - _resultValue.enforceAuthentication = enforceAuthentication; - _resultValue.name = name; + _resultValue.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + _resultValue.aupEnabled = aupEnabled; + _resultValue.aupForceSslInspection = aupForceSslInspection; + _resultValue.aupTimeoutInDays = aupTimeoutInDays; + _resultValue.authRequired = authRequired; + _resultValue.cautionEnabled = cautionEnabled; + _resultValue.dnBandwidth = dnBandwidth; + _resultValue.idleTimeInMinutes = idleTimeInMinutes; + _resultValue.ofwEnabled = ofwEnabled; _resultValue.subLocations = subLocations; - _resultValue.uploadMbps = uploadMbps; - _resultValue.useXff = useXff; + _resultValue.surrogateIp = surrogateIp; + _resultValue.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + _resultValue.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + _resultValue.upBandwidth = upBandwidth; + _resultValue.xffForwardEnabled = xffForwardEnabled; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelProviderOptionsZscalerSubLocation.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelProviderOptionsZscalerSubLocation.java index 91100501..9030f036 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelProviderOptionsZscalerSubLocation.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/GatewayTunnelProviderOptionsZscalerSubLocation.java @@ -5,100 +5,176 @@ import com.pulumi.core.annotations.CustomType; import java.lang.Boolean; +import java.lang.Double; import java.lang.Integer; import java.lang.String; -import java.util.List; import java.util.Objects; import java.util.Optional; import javax.annotation.Nullable; @CustomType public final class GatewayTunnelProviderOptionsZscalerSubLocation { - private @Nullable Boolean aupAcceptanceRequired; + private @Nullable Boolean aupBlockInternetUntilAccepted; /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - private @Nullable Integer aupExpire; + private @Nullable Boolean aupEnabled; /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - private @Nullable Boolean aupSslProxy; + private @Nullable Boolean aupForceSslInspection; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - private @Nullable Integer downloadMbps; + private @Nullable Integer aupTimeoutInDays; /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Enable this option to authenticate users * */ - private @Nullable Boolean enableAup; + private @Nullable Boolean authRequired; /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - private @Nullable Boolean enableCaution; - private @Nullable Boolean enforceAuthentication; - private @Nullable List subnets; + private @Nullable Boolean cautionEnabled; /** - * @return the download bandwidth cap of the link, in Mbps + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - private @Nullable Integer uploadMbps; + private @Nullable Double dnBandwidth; + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + private @Nullable Integer idleTimeInMinutes; + /** + * @return Network name + * + */ + private @Nullable String name; + /** + * @return if `true`, enable the firewall control option + * + */ + private @Nullable Boolean ofwEnabled; + /** + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + */ + private @Nullable Boolean surrogateIp; + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + private @Nullable Boolean surrogateIpEnforcedForKnownBrowsers; + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + private @Nullable Integer surrogateRefreshTimeInMinutes; + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + private @Nullable Double upBandwidth; private GatewayTunnelProviderOptionsZscalerSubLocation() {} - public Optional aupAcceptanceRequired() { - return Optional.ofNullable(this.aupAcceptanceRequired); + public Optional aupBlockInternetUntilAccepted() { + return Optional.ofNullable(this.aupBlockInternetUntilAccepted); } /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - public Optional aupExpire() { - return Optional.ofNullable(this.aupExpire); + public Optional aupEnabled() { + return Optional.ofNullable(this.aupEnabled); } /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - public Optional aupSslProxy() { - return Optional.ofNullable(this.aupSslProxy); + public Optional aupForceSslInspection() { + return Optional.ofNullable(this.aupForceSslInspection); + } + /** + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again + * + */ + public Optional aupTimeoutInDays() { + return Optional.ofNullable(this.aupTimeoutInDays); + } + /** + * @return Enable this option to authenticate users + * + */ + public Optional authRequired() { + return Optional.ofNullable(this.authRequired); + } + /** + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + * + */ + public Optional cautionEnabled() { + return Optional.ofNullable(this.cautionEnabled); } /** - * @return the download bandwidth cap of the link, in Mbps + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - public Optional downloadMbps() { - return Optional.ofNullable(this.downloadMbps); + public Optional dnBandwidth() { + return Optional.ofNullable(this.dnBandwidth); } /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation * */ - public Optional enableAup() { - return Optional.ofNullable(this.enableAup); + public Optional idleTimeInMinutes() { + return Optional.ofNullable(this.idleTimeInMinutes); } /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Network name * */ - public Optional enableCaution() { - return Optional.ofNullable(this.enableCaution); + public Optional name() { + return Optional.ofNullable(this.name); } - public Optional enforceAuthentication() { - return Optional.ofNullable(this.enforceAuthentication); + /** + * @return if `true`, enable the firewall control option + * + */ + public Optional ofwEnabled() { + return Optional.ofNullable(this.ofwEnabled); } - public List subnets() { - return this.subnets == null ? List.of() : this.subnets; + /** + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + */ + public Optional surrogateIp() { + return Optional.ofNullable(this.surrogateIp); } /** - * @return the download bandwidth cap of the link, in Mbps + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers * */ - public Optional uploadMbps() { - return Optional.ofNullable(this.uploadMbps); + public Optional surrogateIpEnforcedForKnownBrowsers() { + return Optional.ofNullable(this.surrogateIpEnforcedForKnownBrowsers); + } + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + public Optional surrogateRefreshTimeInMinutes() { + return Optional.ofNullable(this.surrogateRefreshTimeInMinutes); + } + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional upBandwidth() { + return Optional.ofNullable(this.upBandwidth); } public static Builder builder() { @@ -110,97 +186,139 @@ public static Builder builder(GatewayTunnelProviderOptionsZscalerSubLocation def } @CustomType.Builder public static final class Builder { - private @Nullable Boolean aupAcceptanceRequired; - private @Nullable Integer aupExpire; - private @Nullable Boolean aupSslProxy; - private @Nullable Integer downloadMbps; - private @Nullable Boolean enableAup; - private @Nullable Boolean enableCaution; - private @Nullable Boolean enforceAuthentication; - private @Nullable List subnets; - private @Nullable Integer uploadMbps; + private @Nullable Boolean aupBlockInternetUntilAccepted; + private @Nullable Boolean aupEnabled; + private @Nullable Boolean aupForceSslInspection; + private @Nullable Integer aupTimeoutInDays; + private @Nullable Boolean authRequired; + private @Nullable Boolean cautionEnabled; + private @Nullable Double dnBandwidth; + private @Nullable Integer idleTimeInMinutes; + private @Nullable String name; + private @Nullable Boolean ofwEnabled; + private @Nullable Boolean surrogateIp; + private @Nullable Boolean surrogateIpEnforcedForKnownBrowsers; + private @Nullable Integer surrogateRefreshTimeInMinutes; + private @Nullable Double upBandwidth; public Builder() {} public Builder(GatewayTunnelProviderOptionsZscalerSubLocation defaults) { Objects.requireNonNull(defaults); - this.aupAcceptanceRequired = defaults.aupAcceptanceRequired; - this.aupExpire = defaults.aupExpire; - this.aupSslProxy = defaults.aupSslProxy; - this.downloadMbps = defaults.downloadMbps; - this.enableAup = defaults.enableAup; - this.enableCaution = defaults.enableCaution; - this.enforceAuthentication = defaults.enforceAuthentication; - this.subnets = defaults.subnets; - this.uploadMbps = defaults.uploadMbps; + this.aupBlockInternetUntilAccepted = defaults.aupBlockInternetUntilAccepted; + this.aupEnabled = defaults.aupEnabled; + this.aupForceSslInspection = defaults.aupForceSslInspection; + this.aupTimeoutInDays = defaults.aupTimeoutInDays; + this.authRequired = defaults.authRequired; + this.cautionEnabled = defaults.cautionEnabled; + this.dnBandwidth = defaults.dnBandwidth; + this.idleTimeInMinutes = defaults.idleTimeInMinutes; + this.name = defaults.name; + this.ofwEnabled = defaults.ofwEnabled; + this.surrogateIp = defaults.surrogateIp; + this.surrogateIpEnforcedForKnownBrowsers = defaults.surrogateIpEnforcedForKnownBrowsers; + this.surrogateRefreshTimeInMinutes = defaults.surrogateRefreshTimeInMinutes; + this.upBandwidth = defaults.upBandwidth; } @CustomType.Setter - public Builder aupAcceptanceRequired(@Nullable Boolean aupAcceptanceRequired) { + public Builder aupBlockInternetUntilAccepted(@Nullable Boolean aupBlockInternetUntilAccepted) { - this.aupAcceptanceRequired = aupAcceptanceRequired; + this.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; return this; } @CustomType.Setter - public Builder aupExpire(@Nullable Integer aupExpire) { + public Builder aupEnabled(@Nullable Boolean aupEnabled) { - this.aupExpire = aupExpire; + this.aupEnabled = aupEnabled; return this; } @CustomType.Setter - public Builder aupSslProxy(@Nullable Boolean aupSslProxy) { + public Builder aupForceSslInspection(@Nullable Boolean aupForceSslInspection) { - this.aupSslProxy = aupSslProxy; + this.aupForceSslInspection = aupForceSslInspection; return this; } @CustomType.Setter - public Builder downloadMbps(@Nullable Integer downloadMbps) { + public Builder aupTimeoutInDays(@Nullable Integer aupTimeoutInDays) { - this.downloadMbps = downloadMbps; + this.aupTimeoutInDays = aupTimeoutInDays; return this; } @CustomType.Setter - public Builder enableAup(@Nullable Boolean enableAup) { + public Builder authRequired(@Nullable Boolean authRequired) { - this.enableAup = enableAup; + this.authRequired = authRequired; return this; } @CustomType.Setter - public Builder enableCaution(@Nullable Boolean enableCaution) { + public Builder cautionEnabled(@Nullable Boolean cautionEnabled) { - this.enableCaution = enableCaution; + this.cautionEnabled = cautionEnabled; return this; } @CustomType.Setter - public Builder enforceAuthentication(@Nullable Boolean enforceAuthentication) { + public Builder dnBandwidth(@Nullable Double dnBandwidth) { - this.enforceAuthentication = enforceAuthentication; + this.dnBandwidth = dnBandwidth; return this; } @CustomType.Setter - public Builder subnets(@Nullable List subnets) { + public Builder idleTimeInMinutes(@Nullable Integer idleTimeInMinutes) { - this.subnets = subnets; + this.idleTimeInMinutes = idleTimeInMinutes; return this; } - public Builder subnets(String... subnets) { - return subnets(List.of(subnets)); + @CustomType.Setter + public Builder name(@Nullable String name) { + + this.name = name; + return this; + } + @CustomType.Setter + public Builder ofwEnabled(@Nullable Boolean ofwEnabled) { + + this.ofwEnabled = ofwEnabled; + return this; + } + @CustomType.Setter + public Builder surrogateIp(@Nullable Boolean surrogateIp) { + + this.surrogateIp = surrogateIp; + return this; + } + @CustomType.Setter + public Builder surrogateIpEnforcedForKnownBrowsers(@Nullable Boolean surrogateIpEnforcedForKnownBrowsers) { + + this.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + return this; + } + @CustomType.Setter + public Builder surrogateRefreshTimeInMinutes(@Nullable Integer surrogateRefreshTimeInMinutes) { + + this.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + return this; } @CustomType.Setter - public Builder uploadMbps(@Nullable Integer uploadMbps) { + public Builder upBandwidth(@Nullable Double upBandwidth) { - this.uploadMbps = uploadMbps; + this.upBandwidth = upBandwidth; return this; } public GatewayTunnelProviderOptionsZscalerSubLocation build() { final var _resultValue = new GatewayTunnelProviderOptionsZscalerSubLocation(); - _resultValue.aupAcceptanceRequired = aupAcceptanceRequired; - _resultValue.aupExpire = aupExpire; - _resultValue.aupSslProxy = aupSslProxy; - _resultValue.downloadMbps = downloadMbps; - _resultValue.enableAup = enableAup; - _resultValue.enableCaution = enableCaution; - _resultValue.enforceAuthentication = enforceAuthentication; - _resultValue.subnets = subnets; - _resultValue.uploadMbps = uploadMbps; + _resultValue.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + _resultValue.aupEnabled = aupEnabled; + _resultValue.aupForceSslInspection = aupForceSslInspection; + _resultValue.aupTimeoutInDays = aupTimeoutInDays; + _resultValue.authRequired = authRequired; + _resultValue.cautionEnabled = cautionEnabled; + _resultValue.dnBandwidth = dnBandwidth; + _resultValue.idleTimeInMinutes = idleTimeInMinutes; + _resultValue.name = name; + _resultValue.ofwEnabled = ofwEnabled; + _resultValue.surrogateIp = surrogateIp; + _resultValue.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + _resultValue.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + _resultValue.upBandwidth = upBandwidth; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchAclPolicy.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchAclPolicy.java index c89a5153..b2f7e752 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchAclPolicy.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchAclPolicy.java @@ -14,23 +14,26 @@ @CustomType public final class SwitchAclPolicy { /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ private @Nullable List actions; private @Nullable String name; /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ private @Nullable List srcTags; private SwitchAclPolicy() {} /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ public List actions() { @@ -40,8 +43,9 @@ public Optional name() { return Optional.ofNullable(this.name); } /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ public List srcTags() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchAclTags.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchAclTags.java index 7f6007e1..8c0bf084 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchAclTags.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchAclTags.java @@ -17,9 +17,9 @@ public final class SwitchAclTags { /** * @return required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * */ private @Nullable Integer gbpTag; @@ -49,8 +49,7 @@ public final class SwitchAclTags { */ private @Nullable String radiusGroup; /** - * @return if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @return if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * */ private @Nullable List specs; @@ -80,9 +79,9 @@ public final class SwitchAclTags { private SwitchAclTags() {} /** * @return required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * */ public Optional gbpTag() { @@ -120,8 +119,7 @@ public Optional radiusGroup() { return Optional.ofNullable(this.radiusGroup); } /** - * @return if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @return if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * */ public List specs() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchAclTagsSpec.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchAclTagsSpec.java index be9d48a8..772e0fd6 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchAclTagsSpec.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchAclTagsSpec.java @@ -17,7 +17,7 @@ public final class SwitchAclTagsSpec { */ private @Nullable String portRange; /** - * @return `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @return `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * */ private @Nullable String protocol; @@ -31,7 +31,7 @@ public Optional portRange() { return Optional.ofNullable(this.portRange); } /** - * @return `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @return `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * */ public Optional protocol() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchEvpnConfig.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchEvpnConfig.java deleted file mode 100644 index 6a239f61..00000000 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchEvpnConfig.java +++ /dev/null @@ -1,71 +0,0 @@ -// *** WARNING: this file was generated by pulumi-java-gen. *** -// *** Do not edit by hand unless you're certain you know what you are doing! *** - -package com.pulumi.junipermist.device.outputs; - -import com.pulumi.core.annotations.CustomType; -import java.lang.Boolean; -import java.lang.String; -import java.util.Objects; -import java.util.Optional; -import javax.annotation.Nullable; - -@CustomType -public final class SwitchEvpnConfig { - private @Nullable Boolean enabled; - /** - * @return enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - * - */ - private @Nullable String role; - - private SwitchEvpnConfig() {} - public Optional enabled() { - return Optional.ofNullable(this.enabled); - } - /** - * @return enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - * - */ - public Optional role() { - return Optional.ofNullable(this.role); - } - - public static Builder builder() { - return new Builder(); - } - - public static Builder builder(SwitchEvpnConfig defaults) { - return new Builder(defaults); - } - @CustomType.Builder - public static final class Builder { - private @Nullable Boolean enabled; - private @Nullable String role; - public Builder() {} - public Builder(SwitchEvpnConfig defaults) { - Objects.requireNonNull(defaults); - this.enabled = defaults.enabled; - this.role = defaults.role; - } - - @CustomType.Setter - public Builder enabled(@Nullable Boolean enabled) { - - this.enabled = enabled; - return this; - } - @CustomType.Setter - public Builder role(@Nullable String role) { - - this.role = role; - return this; - } - public SwitchEvpnConfig build() { - final var _resultValue = new SwitchEvpnConfig(); - _resultValue.enabled = enabled; - _resultValue.role = role; - return _resultValue; - } - } -} diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchLocalPortConfig.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchLocalPortConfig.java index da9b04e1..6809b181 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchLocalPortConfig.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchLocalPortConfig.java @@ -22,9 +22,7 @@ public final class SwitchLocalPortConfig { */ private @Nullable Boolean allNetworks; /** - * @return 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 allow_dhcpd is a tri_state. - * 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. + * @return 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 allow_dhcpd is a tri_state. 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. * */ private @Nullable Boolean allowDhcpd; @@ -72,8 +70,7 @@ public final class SwitchLocalPortConfig { */ private @Nullable String guestNetwork; /** - * @return inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @return inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ private @Nullable Boolean interSwitchLink; @@ -112,6 +109,11 @@ public final class SwitchLocalPortConfig { * */ private @Nullable List networks; + /** + * @return Additional note for the port config override + * + */ + private @Nullable String note; /** * @return Only if `mode`==`access` and `port_auth`!=`dot1x` whether the port should retain dynamically learned MAC addresses * @@ -189,9 +191,7 @@ public Optional allNetworks() { return Optional.ofNullable(this.allNetworks); } /** - * @return 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 allow_dhcpd is a tri_state. - * 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. + * @return 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 allow_dhcpd is a tri_state. 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. * */ public Optional allowDhcpd() { @@ -263,8 +263,7 @@ public Optional guestNetwork() { return Optional.ofNullable(this.guestNetwork); } /** - * @return inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @return inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ public Optional interSwitchLink() { @@ -319,6 +318,13 @@ public Optional mtu() { public List networks() { return this.networks == null ? List.of() : this.networks; } + /** + * @return Additional note for the port config override + * + */ + public Optional note() { + return Optional.ofNullable(this.note); + } /** * @return Only if `mode`==`access` and `port_auth`!=`dot1x` whether the port should retain dynamically learned MAC addresses * @@ -447,6 +453,7 @@ public static final class Builder { private @Nullable String mode; private @Nullable Integer mtu; private @Nullable List networks; + private @Nullable String note; private @Nullable Boolean persistMac; private @Nullable Boolean poeDisabled; private @Nullable String portAuth; @@ -486,6 +493,7 @@ public Builder(SwitchLocalPortConfig defaults) { this.mode = defaults.mode; this.mtu = defaults.mtu; this.networks = defaults.networks; + this.note = defaults.note; this.persistMac = defaults.persistMac; this.poeDisabled = defaults.poeDisabled; this.portAuth = defaults.portAuth; @@ -636,6 +644,12 @@ public Builder networks(String... networks) { return networks(List.of(networks)); } @CustomType.Setter + public Builder note(@Nullable String note) { + + this.note = note; + return this; + } + @CustomType.Setter public Builder persistMac(@Nullable Boolean persistMac) { this.persistMac = persistMac; @@ -750,6 +764,7 @@ public SwitchLocalPortConfig build() { _resultValue.mode = mode; _resultValue.mtu = mtu; _resultValue.networks = networks; + _resultValue.note = note; _resultValue.persistMac = persistMac; _resultValue.poeDisabled = poeDisabled; _resultValue.portAuth = portAuth; diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchNetworks.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchNetworks.java index b6ee6a83..43883739 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchNetworks.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchNetworks.java @@ -24,8 +24,7 @@ public final class SwitchNetworks { */ private @Nullable String gateway6; /** - * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * */ private @Nullable Boolean isolation; @@ -58,8 +57,7 @@ public Optional gateway6() { return Optional.ofNullable(this.gateway6); } /** - * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * */ public Optional isolation() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchPortUsages.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchPortUsages.java index 19f8524b..dffe2448 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchPortUsages.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchPortUsages.java @@ -22,9 +22,7 @@ public final class SwitchPortUsages { */ private @Nullable Boolean allNetworks; /** - * @return 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 allow_dhcpd is a tri_state. - * 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. + * @return 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 allow_dhcpd is a tri_state. 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. * */ private @Nullable Boolean allowDhcpd; @@ -84,8 +82,7 @@ public final class SwitchPortUsages { */ private @Nullable String guestNetwork; /** - * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ private @Nullable Boolean interSwitchLink; @@ -175,8 +172,7 @@ public final class SwitchPortUsages { */ private @Nullable String speed; /** - * @return Switch storm control - * Only if `mode`!=`dynamic` + * @return Switch storm control. Only if `mode`!=`dynamic` * */ private @Nullable SwitchPortUsagesStormControl stormControl; @@ -207,9 +203,7 @@ public Optional allNetworks() { return Optional.ofNullable(this.allNetworks); } /** - * @return 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 allow_dhcpd is a tri_state. - * 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. + * @return 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 allow_dhcpd is a tri_state. 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. * */ public Optional allowDhcpd() { @@ -293,8 +287,7 @@ public Optional guestNetwork() { return Optional.ofNullable(this.guestNetwork); } /** - * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ public Optional interSwitchLink() { @@ -420,8 +413,7 @@ public Optional speed() { return Optional.ofNullable(this.speed); } /** - * @return Switch storm control - * Only if `mode`!=`dynamic` + * @return Switch storm control. Only if `mode`!=`dynamic` * */ public Optional stormControl() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchRadiusConfig.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchRadiusConfig.java index 8210a494..b530d100 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchRadiusConfig.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchRadiusConfig.java @@ -33,8 +33,7 @@ public final class SwitchRadiusConfig { */ private @Nullable Integer authServersTimeout; /** - * @return use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @return use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * */ private @Nullable String network; @@ -73,8 +72,7 @@ public Optional authServersTimeout() { return Optional.ofNullable(this.authServersTimeout); } /** - * @return use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @return use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * */ public Optional network() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchSnmpConfigV3ConfigUsmUser.java b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchSnmpConfigV3ConfigUsmUser.java index 85859e5a..0e44cae7 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchSnmpConfigV3ConfigUsmUser.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/device/outputs/SwitchSnmpConfigV3ConfigUsmUser.java @@ -12,8 +12,7 @@ @CustomType public final class SwitchSnmpConfigV3ConfigUsmUser { /** - * @return Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @return Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * */ private @Nullable String authenticationPassword; @@ -23,8 +22,7 @@ public final class SwitchSnmpConfigV3ConfigUsmUser { */ private @Nullable String authenticationType; /** - * @return Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @return Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * */ private @Nullable String encryptionPassword; @@ -37,8 +35,7 @@ public final class SwitchSnmpConfigV3ConfigUsmUser { private SwitchSnmpConfigV3ConfigUsmUser() {} /** - * @return Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @return Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * */ public Optional authenticationPassword() { @@ -52,8 +49,7 @@ public Optional authenticationType() { return Optional.ofNullable(this.authenticationType); } /** - * @return Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @return Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * */ public Optional encryptionPassword() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/DeviceprofileGateway.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/DeviceprofileGateway.java index 91f566fa..4989a799 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/DeviceprofileGateway.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/DeviceprofileGateway.java @@ -158,14 +158,14 @@ @ResourceType(type="junipermist:org/deviceprofileGateway:DeviceprofileGateway") public class DeviceprofileGateway extends com.pulumi.resources.CustomResource { /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ @Export(name="additionalConfigCmds", refs={List.class,String.class}, tree="[0,1]") private Output> additionalConfigCmds; /** - * @return additional CLI commands to append to the generated Junos config **Note**: no check is done + * @return additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ public Output>> additionalConfigCmds() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/DeviceprofileGatewayArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/DeviceprofileGatewayArgs.java index 46a14530..dfb8c479 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/DeviceprofileGatewayArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/DeviceprofileGatewayArgs.java @@ -36,14 +36,14 @@ public final class DeviceprofileGatewayArgs extends com.pulumi.resources.Resourc public static final DeviceprofileGatewayArgs Empty = new DeviceprofileGatewayArgs(); /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ @Import(name="additionalConfigCmds") private @Nullable Output> additionalConfigCmds; /** - * @return additional CLI commands to append to the generated Junos config **Note**: no check is done + * @return additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ public Optional>> additionalConfigCmds() { @@ -379,7 +379,7 @@ public Builder(DeviceprofileGatewayArgs defaults) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -390,7 +390,7 @@ public Builder additionalConfigCmds(@Nullable Output> additionalCon } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -400,7 +400,7 @@ public Builder additionalConfigCmds(List additionalConfigCmds) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/Gatewaytemplate.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/Gatewaytemplate.java index 38dc137c..1139a241 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/Gatewaytemplate.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/Gatewaytemplate.java @@ -157,14 +157,14 @@ @ResourceType(type="junipermist:org/gatewaytemplate:Gatewaytemplate") public class Gatewaytemplate extends com.pulumi.resources.CustomResource { /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ @Export(name="additionalConfigCmds", refs={List.class,String.class}, tree="[0,1]") private Output> additionalConfigCmds; /** - * @return additional CLI commands to append to the generated Junos config **Note**: no check is done + * @return additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ public Output>> additionalConfigCmds() { @@ -339,14 +339,16 @@ public Output>> pathPreferen return Codegen.optional(this.pathPreferences); } /** - * Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + * Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + * "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). * */ @Export(name="portConfig", refs={Map.class,String.class,GatewaytemplatePortConfig.class}, tree="[0,1,2]") private Output> portConfig; /** - * @return Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + * @return Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + * "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). * */ public Output>> portConfig() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/GatewaytemplateArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/GatewaytemplateArgs.java index 93df2383..c7f26398 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/GatewaytemplateArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/GatewaytemplateArgs.java @@ -36,14 +36,14 @@ public final class GatewaytemplateArgs extends com.pulumi.resources.ResourceArgs public static final GatewaytemplateArgs Empty = new GatewaytemplateArgs(); /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ @Import(name="additionalConfigCmds") private @Nullable Output> additionalConfigCmds; /** - * @return additional CLI commands to append to the generated Junos config **Note**: no check is done + * @return additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ public Optional>> additionalConfigCmds() { @@ -235,14 +235,16 @@ public Optional>> pathPref } /** - * Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + * Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + * "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). * */ @Import(name="portConfig") private @Nullable Output> portConfig; /** - * @return Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + * @return Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + * "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). * */ public Optional>> portConfig() { @@ -395,7 +397,7 @@ public Builder(GatewaytemplateArgs defaults) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -406,7 +408,7 @@ public Builder additionalConfigCmds(@Nullable Output> additionalCon } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -416,7 +418,7 @@ public Builder additionalConfigCmds(List additionalConfigCmds) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -712,7 +714,8 @@ public Builder pathPreferences(Map pa } /** - * @param portConfig Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + * @param portConfig Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + * "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). * * @return builder * @@ -723,7 +726,8 @@ public Builder portConfig(@Nullable Output> oauthCcClientSecret() { public Output> oauthDiscoveryUrl() { return Codegen.optional(this.oauthDiscoveryUrl); } + /** + * enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + * + */ + @Export(name="oauthPingIdentityRegion", refs={String.class}, tree="[0]") + private Output oauthPingIdentityRegion; + + /** + * @return enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + * + */ + public Output oauthPingIdentityRegion() { + return this.oauthPingIdentityRegion; + } /** * if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials * @@ -443,6 +457,34 @@ public Output oauthType() { public Output orgId() { return this.orgId; } + /** + * if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + * + */ + @Export(name="scimEnabled", refs={Boolean.class}, tree="[0]") + private Output scimEnabled; + + /** + * @return if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + * + */ + public Output scimEnabled() { + return this.scimEnabled; + } + /** + * if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + * + */ + @Export(name="scimSecretToken", refs={String.class}, tree="[0]") + private Output scimSecretToken; + + /** + * @return if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + * + */ + public Output scimSecretToken() { + return this.scimSecretToken; + } /** * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/NacidpArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/NacidpArgs.java index ebbd0afd..03f8794d 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/NacidpArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/NacidpArgs.java @@ -303,6 +303,21 @@ public Optional> oauthDiscoveryUrl() { return Optional.ofNullable(this.oauthDiscoveryUrl); } + /** + * enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + * + */ + @Import(name="oauthPingIdentityRegion") + private @Nullable Output oauthPingIdentityRegion; + + /** + * @return enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + * + */ + public Optional> oauthPingIdentityRegion() { + return Optional.ofNullable(this.oauthPingIdentityRegion); + } + /** * if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials * @@ -370,6 +385,36 @@ public Output orgId() { return this.orgId; } + /** + * if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + * + */ + @Import(name="scimEnabled") + private @Nullable Output scimEnabled; + + /** + * @return if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + * + */ + public Optional> scimEnabled() { + return Optional.ofNullable(this.scimEnabled); + } + + /** + * if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + * + */ + @Import(name="scimSecretToken") + private @Nullable Output scimSecretToken; + + /** + * @return if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + * + */ + public Optional> scimSecretToken() { + return Optional.ofNullable(this.scimSecretToken); + } + private NacidpArgs() {} private NacidpArgs(NacidpArgs $) { @@ -392,11 +437,14 @@ private NacidpArgs(NacidpArgs $) { this.oauthCcClientId = $.oauthCcClientId; this.oauthCcClientSecret = $.oauthCcClientSecret; this.oauthDiscoveryUrl = $.oauthDiscoveryUrl; + this.oauthPingIdentityRegion = $.oauthPingIdentityRegion; this.oauthRopcClientId = $.oauthRopcClientId; this.oauthRopcClientSecret = $.oauthRopcClientSecret; this.oauthTenantId = $.oauthTenantId; this.oauthType = $.oauthType; this.orgId = $.orgId; + this.scimEnabled = $.scimEnabled; + this.scimSecretToken = $.scimSecretToken; } public static Builder builder() { @@ -836,6 +884,27 @@ public Builder oauthDiscoveryUrl(String oauthDiscoveryUrl) { return oauthDiscoveryUrl(Output.of(oauthDiscoveryUrl)); } + /** + * @param oauthPingIdentityRegion enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + * + * @return builder + * + */ + public Builder oauthPingIdentityRegion(@Nullable Output oauthPingIdentityRegion) { + $.oauthPingIdentityRegion = oauthPingIdentityRegion; + return this; + } + + /** + * @param oauthPingIdentityRegion enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + * + * @return builder + * + */ + public Builder oauthPingIdentityRegion(String oauthPingIdentityRegion) { + return oauthPingIdentityRegion(Output.of(oauthPingIdentityRegion)); + } + /** * @param oauthRopcClientId if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials * @@ -929,6 +998,48 @@ public Builder orgId(String orgId) { return orgId(Output.of(orgId)); } + /** + * @param scimEnabled if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + * + * @return builder + * + */ + public Builder scimEnabled(@Nullable Output scimEnabled) { + $.scimEnabled = scimEnabled; + return this; + } + + /** + * @param scimEnabled if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + * + * @return builder + * + */ + public Builder scimEnabled(Boolean scimEnabled) { + return scimEnabled(Output.of(scimEnabled)); + } + + /** + * @param scimSecretToken if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + * + * @return builder + * + */ + public Builder scimSecretToken(@Nullable Output scimSecretToken) { + $.scimSecretToken = scimSecretToken; + return this; + } + + /** + * @param scimSecretToken if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + * + * @return builder + * + */ + public Builder scimSecretToken(String scimSecretToken) { + return scimSecretToken(Output.of(scimSecretToken)); + } + public NacidpArgs build() { if ($.idpType == null) { throw new MissingRequiredPropertyException("NacidpArgs", "idpType"); diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/Network.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/Network.java index 267f9cc2..03f953ea 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/Network.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/Network.java @@ -12,6 +12,7 @@ import com.pulumi.junipermist.org.inputs.NetworkState; import com.pulumi.junipermist.org.outputs.NetworkInternalAccess; import com.pulumi.junipermist.org.outputs.NetworkInternetAccess; +import com.pulumi.junipermist.org.outputs.NetworkMulticast; import com.pulumi.junipermist.org.outputs.NetworkTenants; import com.pulumi.junipermist.org.outputs.NetworkVpnAccess; import java.lang.Boolean; @@ -136,6 +137,20 @@ public Output> internetAccess() { public Output> isolation() { return Codegen.optional(this.isolation); } + /** + * whether to enable multicast support (only PIM-sparse mode is supported) + * + */ + @Export(name="multicast", refs={NetworkMulticast.class}, tree="[0]") + private Output multicast; + + /** + * @return whether to enable multicast support (only PIM-sparse mode is supported) + * + */ + public Output> multicast() { + return Codegen.optional(this.multicast); + } @Export(name="name", refs={String.class}, tree="[0]") private Output name; @@ -174,9 +189,17 @@ public Output subnet() { public Output> subnet6() { return Codegen.optional(this.subnet6); } + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ @Export(name="tenants", refs={Map.class,String.class,NetworkTenants.class}, tree="[0,1,2]") private Output> tenants; + /** + * @return Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ public Output>> tenants() { return Codegen.optional(this.tenants); } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/NetworkArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/NetworkArgs.java index 35453e1b..57a511be 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/NetworkArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/NetworkArgs.java @@ -8,6 +8,7 @@ import com.pulumi.exceptions.MissingRequiredPropertyException; import com.pulumi.junipermist.org.inputs.NetworkInternalAccessArgs; import com.pulumi.junipermist.org.inputs.NetworkInternetAccessArgs; +import com.pulumi.junipermist.org.inputs.NetworkMulticastArgs; import com.pulumi.junipermist.org.inputs.NetworkTenantsArgs; import com.pulumi.junipermist.org.inputs.NetworkVpnAccessArgs; import java.lang.Boolean; @@ -89,6 +90,21 @@ public Optional> isolation() { return Optional.ofNullable(this.isolation); } + /** + * whether to enable multicast support (only PIM-sparse mode is supported) + * + */ + @Import(name="multicast") + private @Nullable Output multicast; + + /** + * @return whether to enable multicast support (only PIM-sparse mode is supported) + * + */ + public Optional> multicast() { + return Optional.ofNullable(this.multicast); + } + @Import(name="name") private @Nullable Output name; @@ -132,9 +148,17 @@ public Optional> subnet6() { return Optional.ofNullable(this.subnet6); } + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="tenants") private @Nullable Output> tenants; + /** + * @return Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ public Optional>> tenants() { return Optional.ofNullable(this.tenants); } @@ -170,6 +194,7 @@ private NetworkArgs(NetworkArgs $) { this.internalAccess = $.internalAccess; this.internetAccess = $.internetAccess; this.isolation = $.isolation; + this.multicast = $.multicast; this.name = $.name; this.orgId = $.orgId; this.routedForNetworks = $.routedForNetworks; @@ -288,6 +313,27 @@ public Builder isolation(Boolean isolation) { return isolation(Output.of(isolation)); } + /** + * @param multicast whether to enable multicast support (only PIM-sparse mode is supported) + * + * @return builder + * + */ + public Builder multicast(@Nullable Output multicast) { + $.multicast = multicast; + return this; + } + + /** + * @param multicast whether to enable multicast support (only PIM-sparse mode is supported) + * + * @return builder + * + */ + public Builder multicast(NetworkMulticastArgs multicast) { + return multicast(Output.of(multicast)); + } + public Builder name(@Nullable Output name) { $.name = name; return this; @@ -355,11 +401,23 @@ public Builder subnet6(String subnet6) { return subnet6(Output.of(subnet6)); } + /** + * @param tenants Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder tenants(@Nullable Output> tenants) { $.tenants = tenants; return this; } + /** + * @param tenants Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder tenants(Map tenants) { return tenants(Output.of(tenants)); } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/Networktemplate.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/Networktemplate.java index 1fc125ca..8b5f5257 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/Networktemplate.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/Networktemplate.java @@ -281,7 +281,7 @@ public Output>> ospfAreas() { return Codegen.optional(this.ospfAreas); } /** - * Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -290,7 +290,7 @@ public Output>> ospfAreas() { private Output> portMirroring; /** - * @return Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/NetworktemplateArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/NetworktemplateArgs.java index 5edd248f..0f11df2e 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/NetworktemplateArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/NetworktemplateArgs.java @@ -207,7 +207,7 @@ public Optional>> ospfAreas() { } /** - * Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -216,7 +216,7 @@ public Optional>> ospfAreas() { private @Nullable Output> portMirroring; /** - * @return Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -662,7 +662,7 @@ public Builder ospfAreas(Map ospfAreas) { } /** - * @param portMirroring Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @param portMirroring Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -675,7 +675,7 @@ public Builder portMirroring(@Nullable Output orgId() { return this.orgId; } /** - * custom role attribute parsing scheme\n\nSupported Role Parsing - * Schemes\n<table><tr><th>Name</th><th>Scheme</th></tr><tr><td>cn</td><td><ul><li>The expected role attribute format in - * SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected - * (or the entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - * is “cn”</li></ul></td></tr></table> + * custom role attribute parsing scheme. Supported Role Parsing Schemes + * <table><tr><th>Name</th><th>Scheme</th></tr><tr><td>`cn`</td><td><ul><li>The expected role attribute format in SAML + * Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected (or the + * entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + * “cn”</li></ul></td></tr></table> * */ @Export(name="roleAttrExtraction", refs={String.class}, tree="[0]") private Output roleAttrExtraction; /** - * @return custom role attribute parsing scheme\n\nSupported Role Parsing - * Schemes\n<table><tr><th>Name</th><th>Scheme</th></tr><tr><td>cn</td><td><ul><li>The expected role attribute format in - * SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected - * (or the entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - * is “cn”</li></ul></td></tr></table> + * @return custom role attribute parsing scheme. Supported Role Parsing Schemes + * <table><tr><th>Name</th><th>Scheme</th></tr><tr><td>`cn`</td><td><ul><li>The expected role attribute format in SAML + * Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected (or the + * entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + * “cn”</li></ul></td></tr></table> * */ public Output> roleAttrExtraction() { @@ -268,36 +268,6 @@ public Output> roleAttrExtraction() { public Output roleAttrFrom() { return this.roleAttrFrom; } - /** - * if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - * - */ - @Export(name="scimEnabled", refs={Boolean.class}, tree="[0]") - private Output scimEnabled; - - /** - * @return if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - * - */ - public Output scimEnabled() { - return this.scimEnabled; - } - /** - * if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - * Authorization header of SCIM provisioning requests by the IDP - * - */ - @Export(name="scimSecretToken", refs={String.class}, tree="[0]") - private Output scimSecretToken; - - /** - * @return if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - * Authorization header of SCIM provisioning requests by the IDP - * - */ - public Output> scimSecretToken() { - return Codegen.optional(this.scimSecretToken); - } /** * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/SsoArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/SsoArgs.java index 2d68e9cb..0cbb6835 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/SsoArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/SsoArgs.java @@ -164,22 +164,22 @@ public Output orgId() { } /** - * custom role attribute parsing scheme\n\nSupported Role Parsing - * Schemes\n<table><tr><th>Name</th><th>Scheme</th></tr><tr><td>cn</td><td><ul><li>The expected role attribute format in - * SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected - * (or the entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - * is “cn”</li></ul></td></tr></table> + * custom role attribute parsing scheme. Supported Role Parsing Schemes + * <table><tr><th>Name</th><th>Scheme</th></tr><tr><td>`cn`</td><td><ul><li>The expected role attribute format in SAML + * Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected (or the + * entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + * “cn”</li></ul></td></tr></table> * */ @Import(name="roleAttrExtraction") private @Nullable Output roleAttrExtraction; /** - * @return custom role attribute parsing scheme\n\nSupported Role Parsing - * Schemes\n<table><tr><th>Name</th><th>Scheme</th></tr><tr><td>cn</td><td><ul><li>The expected role attribute format in - * SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected - * (or the entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - * is “cn”</li></ul></td></tr></table> + * @return custom role attribute parsing scheme. Supported Role Parsing Schemes + * <table><tr><th>Name</th><th>Scheme</th></tr><tr><td>`cn`</td><td><ul><li>The expected role attribute format in SAML + * Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected (or the + * entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + * “cn”</li></ul></td></tr></table> * */ public Optional> roleAttrExtraction() { @@ -201,38 +201,6 @@ public Optional> roleAttrFrom() { return Optional.ofNullable(this.roleAttrFrom); } - /** - * if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - * - */ - @Import(name="scimEnabled") - private @Nullable Output scimEnabled; - - /** - * @return if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - * - */ - public Optional> scimEnabled() { - return Optional.ofNullable(this.scimEnabled); - } - - /** - * if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - * Authorization header of SCIM provisioning requests by the IDP - * - */ - @Import(name="scimSecretToken") - private @Nullable Output scimSecretToken; - - /** - * @return if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - * Authorization header of SCIM provisioning requests by the IDP - * - */ - public Optional> scimSecretToken() { - return Optional.ofNullable(this.scimSecretToken); - } - private SsoArgs() {} private SsoArgs(SsoArgs $) { @@ -248,8 +216,6 @@ private SsoArgs(SsoArgs $) { this.orgId = $.orgId; this.roleAttrExtraction = $.roleAttrExtraction; this.roleAttrFrom = $.roleAttrFrom; - this.scimEnabled = $.scimEnabled; - this.scimSecretToken = $.scimSecretToken; } public static Builder builder() { @@ -473,11 +439,11 @@ public Builder orgId(String orgId) { } /** - * @param roleAttrExtraction custom role attribute parsing scheme\n\nSupported Role Parsing - * Schemes\n<table><tr><th>Name</th><th>Scheme</th></tr><tr><td>cn</td><td><ul><li>The expected role attribute format in - * SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected - * (or the entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - * is “cn”</li></ul></td></tr></table> + * @param roleAttrExtraction custom role attribute parsing scheme. Supported Role Parsing Schemes + * <table><tr><th>Name</th><th>Scheme</th></tr><tr><td>`cn`</td><td><ul><li>The expected role attribute format in SAML + * Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected (or the + * entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + * “cn”</li></ul></td></tr></table> * * @return builder * @@ -488,11 +454,11 @@ public Builder roleAttrExtraction(@Nullable Output roleAttrExtraction) { } /** - * @param roleAttrExtraction custom role attribute parsing scheme\n\nSupported Role Parsing - * Schemes\n<table><tr><th>Name</th><th>Scheme</th></tr><tr><td>cn</td><td><ul><li>The expected role attribute format in - * SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected - * (or the entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - * is “cn”</li></ul></td></tr></table> + * @param roleAttrExtraction custom role attribute parsing scheme. Supported Role Parsing Schemes + * <table><tr><th>Name</th><th>Scheme</th></tr><tr><td>`cn`</td><td><ul><li>The expected role attribute format in SAML + * Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected (or the + * entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + * “cn”</li></ul></td></tr></table> * * @return builder * @@ -522,50 +488,6 @@ public Builder roleAttrFrom(String roleAttrFrom) { return roleAttrFrom(Output.of(roleAttrFrom)); } - /** - * @param scimEnabled if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - * - * @return builder - * - */ - public Builder scimEnabled(@Nullable Output scimEnabled) { - $.scimEnabled = scimEnabled; - return this; - } - - /** - * @param scimEnabled if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - * - * @return builder - * - */ - public Builder scimEnabled(Boolean scimEnabled) { - return scimEnabled(Output.of(scimEnabled)); - } - - /** - * @param scimSecretToken if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - * Authorization header of SCIM provisioning requests by the IDP - * - * @return builder - * - */ - public Builder scimSecretToken(@Nullable Output scimSecretToken) { - $.scimSecretToken = scimSecretToken; - return this; - } - - /** - * @param scimSecretToken if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - * Authorization header of SCIM provisioning requests by the IDP - * - * @return builder - * - */ - public Builder scimSecretToken(String scimSecretToken) { - return scimSecretToken(Output.of(scimSecretToken)); - } - public SsoArgs build() { if ($.idpCert == null) { throw new MissingRequiredPropertyException("SsoArgs", "idpCert"); diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayBgpConfigArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayBgpConfigArgs.java index 65ad1881..e53ed89f 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayBgpConfigArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayBgpConfigArgs.java @@ -99,16 +99,14 @@ public Optional> exportPolicy() { } /** - * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * */ @Import(name="extendedV4Nexthop") private @Nullable Output extendedV4Nexthop; /** - * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * */ public Optional> extendedV4Nexthop() { @@ -436,8 +434,7 @@ public Builder exportPolicy(String exportPolicy) { } /** - * @param extendedV4Nexthop by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * @param extendedV4Nexthop by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * * @return builder * @@ -448,8 +445,7 @@ public Builder extendedV4Nexthop(@Nullable Output extendedV4Nexthop) { } /** - * @param extendedV4Nexthop by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * @param extendedV4Nexthop by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkArgs.java index 61cd7eb8..89bcf525 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkArgs.java @@ -141,9 +141,17 @@ public Optional> subnet6() { return Optional.ofNullable(this.subnet6); } + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="tenants") private @Nullable Output> tenants; + /** + * @return Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ public Optional>> tenants() { return Optional.ofNullable(this.tenants); } @@ -376,11 +384,23 @@ public Builder subnet6(String subnet6) { return subnet6(Output.of(subnet6)); } + /** + * @param tenants Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder tenants(@Nullable Output> tenants) { $.tenants = tenants; return this; } + /** + * @param tenants Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder tenants(Map tenants) { return tenants(Output.of(tenants)); } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkInternetAccessArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkInternetAccessArgs.java index b2038a92..7b659f56 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkInternetAccessArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkInternetAccessArgs.java @@ -27,14 +27,14 @@ public Optional> createSimpleServicePolicy() { } /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ @Import(name="destinationNat") private @Nullable Output> destinationNat; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Optional>> destinationNat() { @@ -64,14 +64,14 @@ public Optional> restricted() { } /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ @Import(name="staticNat") private @Nullable Output> staticNat; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Optional>> staticNat() { @@ -116,7 +116,7 @@ public Builder createSimpleServicePolicy(Boolean createSimpleServicePolicy) { } /** - * @param destinationNat Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @param destinationNat Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * * @return builder * @@ -127,7 +127,7 @@ public Builder destinationNat(@Nullable Output internalIp; + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional> internalIp() { return Optional.ofNullable(this.internalIp); } @@ -30,19 +37,43 @@ public Optional> name() { return Optional.ofNullable(this.name); } + /** + * The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="port") - private @Nullable Output port; + private @Nullable Output port; - public Optional> port() { + /** + * @return The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ + public Optional> port() { return Optional.ofNullable(this.port); } + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + @Import(name="wanName") + private @Nullable Output wanName; + + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + public Optional> wanName() { + return Optional.ofNullable(this.wanName); + } + private DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs() {} private DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs(DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs $) { this.internalIp = $.internalIp; this.name = $.name; this.port = $.port; + this.wanName = $.wanName; } public static Builder builder() { @@ -63,11 +94,23 @@ public Builder(DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs defau $ = new DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs(Objects.requireNonNull(defaults)); } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(@Nullable Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } @@ -81,15 +124,48 @@ public Builder name(String name) { return name(Output.of(name)); } - public Builder port(@Nullable Output port) { + /** + * @param port The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder port(@Nullable Output port) { $.port = port; return this; } - public Builder port(Integer port) { + /** + * @param port The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder port(String port) { return port(Output.of(port)); } + /** + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + * @return builder + * + */ + public Builder wanName(@Nullable Output wanName) { + $.wanName = wanName; + return this; + } + + /** + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + * @return builder + * + */ + public Builder wanName(String wanName) { + return wanName(Output.of(wanName)); + } + public DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkInternetAccessStaticNatArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkInternetAccessStaticNatArgs.java index da9e2567..af0ce033 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkInternetAccessStaticNatArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkInternetAccessStaticNatArgs.java @@ -5,6 +5,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -15,29 +16,37 @@ public final class DeviceprofileGatewayNetworkInternetAccessStaticNatArgs extend public static final DeviceprofileGatewayNetworkInternetAccessStaticNatArgs Empty = new DeviceprofileGatewayNetworkInternetAccessStaticNatArgs(); - @Import(name="internalIp") - private @Nullable Output internalIp; + /** + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + @Import(name="internalIp", required=true) + private Output internalIp; - public Optional> internalIp() { - return Optional.ofNullable(this.internalIp); + /** + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + public Output internalIp() { + return this.internalIp; } - @Import(name="name") - private @Nullable Output name; + @Import(name="name", required=true) + private Output name; - public Optional> name() { - return Optional.ofNullable(this.name); + public Output name() { + return this.name; } /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ @Import(name="wanName") private @Nullable Output wanName; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ public Optional> wanName() { @@ -70,16 +79,28 @@ public Builder(DeviceprofileGatewayNetworkInternetAccessStaticNatArgs defaults) $ = new DeviceprofileGatewayNetworkInternetAccessStaticNatArgs(Objects.requireNonNull(defaults)); } - public Builder internalIp(@Nullable Output internalIp) { + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder internalIp(Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } - public Builder name(@Nullable Output name) { + public Builder name(Output name) { $.name = name; return this; } @@ -89,7 +110,7 @@ public Builder name(String name) { } /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * * @return builder * @@ -100,7 +121,7 @@ public Builder wanName(@Nullable Output wanName) { } /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * * @return builder * @@ -110,6 +131,12 @@ public Builder wanName(String wanName) { } public DeviceprofileGatewayNetworkInternetAccessStaticNatArgs build() { + if ($.internalIp == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayNetworkInternetAccessStaticNatArgs", "internalIp"); + } + if ($.name == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayNetworkInternetAccessStaticNatArgs", "name"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkVpnAccessArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkVpnAccessArgs.java index 35f14b0c..2cb5bba5 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkVpnAccessArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkVpnAccessArgs.java @@ -52,14 +52,14 @@ public Optional> allowPing() { } /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ @Import(name="destinationNat") private @Nullable Output> destinationNat; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Optional>> destinationNat() { @@ -112,16 +112,14 @@ public Optional> noReadvertiseToLanOspf() { } /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes * */ @Import(name="noReadvertiseToOverlay") private @Nullable Output noReadvertiseToOverlay; /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ public Optional> noReadvertiseToOverlay() { @@ -129,16 +127,14 @@ public Optional> noReadvertiseToOverlay() { } /** - * by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * */ @Import(name="otherVrfs") private @Nullable Output> otherVrfs; /** - * @return by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @return by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * */ public Optional>> otherVrfs() { @@ -176,14 +172,14 @@ public Optional> sourc } /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ @Import(name="staticNat") private @Nullable Output> staticNat; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Optional>> staticNat() { @@ -191,16 +187,14 @@ public Optional summarizedSubnet; /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ public Optional> summarizedSubnet() { @@ -317,7 +311,7 @@ public Builder allowPing(Boolean allowPing) { } /** - * @param destinationNat Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @param destinationNat Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * * @return builder * @@ -328,7 +322,7 @@ public Builder destinationNat(@Nullable Output noReadvertiseToO } /** - * @param noReadvertiseToOverlay toward overlay - * how HUB should deal with routes it received from Spokes + * @param noReadvertiseToOverlay toward overlay, how HUB should deal with routes it received from Spokes * * @return builder * @@ -424,8 +416,7 @@ public Builder noReadvertiseToOverlay(Boolean noReadvertiseToOverlay) { } /** - * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * * @return builder * @@ -436,8 +427,7 @@ public Builder otherVrfs(@Nullable Output> otherVrfs) { } /** - * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * * @return builder * @@ -447,8 +437,7 @@ public Builder otherVrfs(List otherVrfs) { } /** - * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * * @return builder * @@ -500,7 +489,7 @@ public Builder sourceNat(DeviceprofileGatewayNetworkVpnAccessSourceNatArgs sourc } /** - * @param staticNat Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @param staticNat Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * * @return builder * @@ -511,7 +500,7 @@ public Builder staticNat(@Nullable Output summarizedSubnet) { } /** - * @param summarizedSubnet toward overlay - * how HUB should deal with routes it received from Spokes + * @param summarizedSubnet toward overlay, how HUB should deal with routes it received from Spokes * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs.java index 64658451..02de6fd9 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs.java @@ -5,7 +5,6 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; -import java.lang.Integer; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -16,9 +15,17 @@ public final class DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs extend public static final DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs Empty = new DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs(); + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="internalIp") private @Nullable Output internalIp; + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional> internalIp() { return Optional.ofNullable(this.internalIp); } @@ -31,9 +38,9 @@ public Optional> name() { } @Import(name="port") - private @Nullable Output port; + private @Nullable Output port; - public Optional> port() { + public Optional> port() { return Optional.ofNullable(this.port); } @@ -63,11 +70,23 @@ public Builder(DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs defaults) $ = new DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs(Objects.requireNonNull(defaults)); } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(@Nullable Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } @@ -81,12 +100,12 @@ public Builder name(String name) { return name(Output.of(name)); } - public Builder port(@Nullable Output port) { + public Builder port(@Nullable Output port) { $.port = port; return this; } - public Builder port(Integer port) { + public Builder port(String port) { return port(Output.of(port)); } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkVpnAccessStaticNatArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkVpnAccessStaticNatArgs.java index 528280e3..b8a61225 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkVpnAccessStaticNatArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayNetworkVpnAccessStaticNatArgs.java @@ -5,43 +5,35 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; -import java.util.Optional; -import javax.annotation.Nullable; public final class DeviceprofileGatewayNetworkVpnAccessStaticNatArgs extends com.pulumi.resources.ResourceArgs { public static final DeviceprofileGatewayNetworkVpnAccessStaticNatArgs Empty = new DeviceprofileGatewayNetworkVpnAccessStaticNatArgs(); - @Import(name="internalIp") - private @Nullable Output internalIp; - - public Optional> internalIp() { - return Optional.ofNullable(this.internalIp); - } - - @Import(name="name") - private @Nullable Output name; - - public Optional> name() { - return Optional.ofNullable(this.name); - } - /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - @Import(name="wanName") - private @Nullable Output wanName; + @Import(name="internalIp", required=true) + private Output internalIp; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - public Optional> wanName() { - return Optional.ofNullable(this.wanName); + public Output internalIp() { + return this.internalIp; + } + + @Import(name="name", required=true) + private Output name; + + public Output name() { + return this.name; } private DeviceprofileGatewayNetworkVpnAccessStaticNatArgs() {} @@ -49,7 +41,6 @@ private DeviceprofileGatewayNetworkVpnAccessStaticNatArgs() {} private DeviceprofileGatewayNetworkVpnAccessStaticNatArgs(DeviceprofileGatewayNetworkVpnAccessStaticNatArgs $) { this.internalIp = $.internalIp; this.name = $.name; - this.wanName = $.wanName; } public static Builder builder() { @@ -70,16 +61,28 @@ public Builder(DeviceprofileGatewayNetworkVpnAccessStaticNatArgs defaults) { $ = new DeviceprofileGatewayNetworkVpnAccessStaticNatArgs(Objects.requireNonNull(defaults)); } - public Builder internalIp(@Nullable Output internalIp) { + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder internalIp(Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } - public Builder name(@Nullable Output name) { + public Builder name(Output name) { $.name = name; return this; } @@ -88,28 +91,13 @@ public Builder name(String name) { return name(Output.of(name)); } - /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity - * - * @return builder - * - */ - public Builder wanName(@Nullable Output wanName) { - $.wanName = wanName; - return this; - } - - /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity - * - * @return builder - * - */ - public Builder wanName(String wanName) { - return wanName(Output.of(wanName)); - } - public DeviceprofileGatewayNetworkVpnAccessStaticNatArgs build() { + if ($.internalIp == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayNetworkVpnAccessStaticNatArgs", "internalIp"); + } + if ($.name == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayNetworkVpnAccessStaticNatArgs", "name"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigArgs.java index 6f565504..08024e3d 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigArgs.java @@ -57,18 +57,14 @@ public Optional> aeIdx() { } /** - * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * */ @Import(name="aeLacpForceUp") private @Nullable Output aeLacpForceUp; /** - * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * */ public Optional> aeLacpForceUp() { @@ -97,9 +93,17 @@ public Optional> critical() { return Optional.ofNullable(this.critical); } + /** + * Interface Description. Can be a variable (i.e. "{{myvar}}") + * + */ @Import(name="description") private @Nullable Output description; + /** + * @return Interface Description. Can be a variable (i.e. "{{myvar}}") + * + */ public Optional> description() { return Optional.ofNullable(this.description); } @@ -142,16 +146,14 @@ public Optional> dslType() { } /** - * if `wan_type`==`dsl` - * 16 bit int + * if `wan_type`==`dsl`, 16 bit int * */ @Import(name="dslVci") private @Nullable Output dslVci; /** - * @return if `wan_type`==`dsl` - * 16 bit int + * @return if `wan_type`==`dsl`, 16 bit int * */ public Optional> dslVci() { @@ -159,16 +161,14 @@ public Optional> dslVci() { } /** - * if `wan_type`==`dsl` - * 8 bit int + * if `wan_type`==`dsl`, 8 bit int * */ @Import(name="dslVpi") private @Nullable Output dslVpi; /** - * @return if `wan_type`==`dsl` - * 8 bit int + * @return if `wan_type`==`dsl`, 8 bit int * */ public Optional> dslVpi() { @@ -295,14 +295,14 @@ public Optional> name() { } /** - * if `usage`==`lan` + * if `usage`==`lan`, name of the `junipermist.org.Network` resource * */ @Import(name="networks") private @Nullable Output> networks; /** - * @return if `usage`==`lan` + * @return if `usage`==`lan`, name of the `junipermist.org.Network` resource * */ public Optional>> networks() { @@ -332,14 +332,14 @@ public Optional> poeDisabled() { } /** - * if `usage`==`lan` + * Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * */ @Import(name="portNetwork") private @Nullable Output portNetwork; /** - * @return if `usage`==`lan` + * @return Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * */ public Optional> portNetwork() { @@ -480,18 +480,10 @@ public Output usage() { return this.usage; } - /** - * if WAN interface is on a VLAN - * - */ @Import(name="vlanId") - private @Nullable Output vlanId; + private @Nullable Output vlanId; - /** - * @return if WAN interface is on a VLAN - * - */ - public Optional> vlanId() { + public Optional> vlanId() { return Optional.ofNullable(this.vlanId); } @@ -511,14 +503,14 @@ public Optional>> } /** - * when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * */ @Import(name="wanArpPolicer") private @Nullable Output wanArpPolicer; /** - * @return when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @return Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * */ public Optional> wanArpPolicer() { @@ -526,14 +518,14 @@ public Optional> wanArpPolicer() { } /** - * optional, if spoke should reach this port by a different IP + * Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * */ @Import(name="wanExtIp") private @Nullable Output wanExtIp; /** - * @return optional, if spoke should reach this port by a different IP + * @return Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * */ public Optional> wanExtIp() { @@ -541,14 +533,14 @@ public Optional> wanExtIp() { } /** - * Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * */ @Import(name="wanExtraRoutes") private @Nullable Output> wanExtraRoutes; /** - * @return Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * @return Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * */ public Optional>> wanExtraRoutes() { @@ -556,14 +548,29 @@ public Optional> wanNetworks; + + /** + * @return Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + */ + public Optional>> wanNetworks() { + return Optional.ofNullable(this.wanNetworks); + } + + /** + * Only if `usage`==`wan` * */ @Import(name="wanProbeOverride") private @Nullable Output wanProbeOverride; /** - * @return if `usage`==`wan` + * @return Only if `usage`==`wan` * */ public Optional> wanProbeOverride() { @@ -571,14 +578,14 @@ public Optional> wanP } /** - * optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip * */ @Import(name="wanSourceNat") private @Nullable Output wanSourceNat; /** - * @return optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * @return Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip * */ public Optional> wanSourceNat() { @@ -586,14 +593,14 @@ public Optional> wanSourc } /** - * if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * */ @Import(name="wanType") private @Nullable Output wanType; /** - * @return if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * @return Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * */ public Optional> wanType() { @@ -642,6 +649,7 @@ private DeviceprofileGatewayPortConfigArgs(DeviceprofileGatewayPortConfigArgs $) this.wanArpPolicer = $.wanArpPolicer; this.wanExtIp = $.wanExtIp; this.wanExtraRoutes = $.wanExtraRoutes; + this.wanNetworks = $.wanNetworks; this.wanProbeOverride = $.wanProbeOverride; this.wanSourceNat = $.wanSourceNat; this.wanType = $.wanType; @@ -708,9 +716,7 @@ public Builder aeIdx(String aeIdx) { } /** - * @param aeLacpForceUp For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @param aeLacpForceUp For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * * @return builder * @@ -721,9 +727,7 @@ public Builder aeLacpForceUp(@Nullable Output aeLacpForceUp) { } /** - * @param aeLacpForceUp For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @param aeLacpForceUp For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * * @return builder * @@ -762,11 +766,23 @@ public Builder critical(Boolean critical) { return critical(Output.of(critical)); } + /** + * @param description Interface Description. Can be a variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder description(@Nullable Output description) { $.description = description; return this; } + /** + * @param description Interface Description. Can be a variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder description(String description) { return description(Output.of(description)); } @@ -823,8 +839,7 @@ public Builder dslType(String dslType) { } /** - * @param dslVci if `wan_type`==`dsl` - * 16 bit int + * @param dslVci if `wan_type`==`dsl`, 16 bit int * * @return builder * @@ -835,8 +850,7 @@ public Builder dslVci(@Nullable Output dslVci) { } /** - * @param dslVci if `wan_type`==`dsl` - * 16 bit int + * @param dslVci if `wan_type`==`dsl`, 16 bit int * * @return builder * @@ -846,8 +860,7 @@ public Builder dslVci(Integer dslVci) { } /** - * @param dslVpi if `wan_type`==`dsl` - * 8 bit int + * @param dslVpi if `wan_type`==`dsl`, 8 bit int * * @return builder * @@ -858,8 +871,7 @@ public Builder dslVpi(@Nullable Output dslVpi) { } /** - * @param dslVpi if `wan_type`==`dsl` - * 8 bit int + * @param dslVpi if `wan_type`==`dsl`, 8 bit int * * @return builder * @@ -1034,7 +1046,7 @@ public Builder name(String name) { } /** - * @param networks if `usage`==`lan` + * @param networks if `usage`==`lan`, name of the `junipermist.org.Network` resource * * @return builder * @@ -1045,7 +1057,7 @@ public Builder networks(@Nullable Output> networks) { } /** - * @param networks if `usage`==`lan` + * @param networks if `usage`==`lan`, name of the `junipermist.org.Network` resource * * @return builder * @@ -1055,7 +1067,7 @@ public Builder networks(List networks) { } /** - * @param networks if `usage`==`lan` + * @param networks if `usage`==`lan`, name of the `junipermist.org.Network` resource * * @return builder * @@ -1095,7 +1107,7 @@ public Builder poeDisabled(Boolean poeDisabled) { } /** - * @param portNetwork if `usage`==`lan` + * @param portNetwork Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * * @return builder * @@ -1106,7 +1118,7 @@ public Builder portNetwork(@Nullable Output portNetwork) { } /** - * @param portNetwork if `usage`==`lan` + * @param portNetwork Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * * @return builder * @@ -1311,24 +1323,12 @@ public Builder usage(String usage) { return usage(Output.of(usage)); } - /** - * @param vlanId if WAN interface is on a VLAN - * - * @return builder - * - */ - public Builder vlanId(@Nullable Output vlanId) { + public Builder vlanId(@Nullable Output vlanId) { $.vlanId = vlanId; return this; } - /** - * @param vlanId if WAN interface is on a VLAN - * - * @return builder - * - */ - public Builder vlanId(Integer vlanId) { + public Builder vlanId(String vlanId) { return vlanId(Output.of(vlanId)); } @@ -1354,7 +1354,7 @@ public Builder vpnPaths(Map v } /** - * @param wanArpPolicer when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @param wanArpPolicer Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * * @return builder * @@ -1365,7 +1365,7 @@ public Builder wanArpPolicer(@Nullable Output wanArpPolicer) { } /** - * @param wanArpPolicer when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @param wanArpPolicer Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * * @return builder * @@ -1375,7 +1375,7 @@ public Builder wanArpPolicer(String wanArpPolicer) { } /** - * @param wanExtIp optional, if spoke should reach this port by a different IP + * @param wanExtIp Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * * @return builder * @@ -1386,7 +1386,7 @@ public Builder wanExtIp(@Nullable Output wanExtIp) { } /** - * @param wanExtIp optional, if spoke should reach this port by a different IP + * @param wanExtIp Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * * @return builder * @@ -1396,7 +1396,7 @@ public Builder wanExtIp(String wanExtIp) { } /** - * @param wanExtraRoutes Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * @param wanExtraRoutes Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * * @return builder * @@ -1407,7 +1407,7 @@ public Builder wanExtraRoutes(@Nullable Output> wanNetworks) { + $.wanNetworks = wanNetworks; + return this; + } + + /** + * @param wanNetworks Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + * @return builder + * + */ + public Builder wanNetworks(List wanNetworks) { + return wanNetworks(Output.of(wanNetworks)); + } + + /** + * @param wanNetworks Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + * @return builder + * + */ + public Builder wanNetworks(String... wanNetworks) { + return wanNetworks(List.of(wanNetworks)); + } + + /** + * @param wanProbeOverride Only if `usage`==`wan` * * @return builder * @@ -1428,7 +1459,7 @@ public Builder wanProbeOverride(@Nullable Output wanType) { } /** - * @param wanType if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * @param wanType Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigIpConfigArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigIpConfigArgs.java index 0bede505..a96bebfd 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigIpConfigArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigIpConfigArgs.java @@ -47,36 +47,44 @@ public Optional>> dnsSuffixes() { } /** - * except for out-of_band interface (vme/em0/fxp0) + * except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * */ @Import(name="gateway") private @Nullable Output gateway; /** - * @return except for out-of_band interface (vme/em0/fxp0) + * @return except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * */ public Optional> gateway() { return Optional.ofNullable(this.gateway); } + /** + * Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="ip") private @Nullable Output ip; + /** + * @return Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + */ public Optional> ip() { return Optional.ofNullable(this.ip); } /** - * used only if `subnet` is not specified in `networks` + * used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * */ @Import(name="netmask") private @Nullable Output netmask; /** - * @return used only if `subnet` is not specified in `networks` + * @return used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * */ public Optional> netmask() { @@ -254,7 +262,7 @@ public Builder dnsSuffixes(String... dnsSuffixes) { } /** - * @param gateway except for out-of_band interface (vme/em0/fxp0) + * @param gateway except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * * @return builder * @@ -265,7 +273,7 @@ public Builder gateway(@Nullable Output gateway) { } /** - * @param gateway except for out-of_band interface (vme/em0/fxp0) + * @param gateway except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * * @return builder * @@ -274,17 +282,29 @@ public Builder gateway(String gateway) { return gateway(Output.of(gateway)); } + /** + * @param ip Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder ip(@Nullable Output ip) { $.ip = ip; return this; } + /** + * @param ip Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder ip(String ip) { return ip(Output.of(ip)); } /** - * @param netmask used only if `subnet` is not specified in `networks` + * @param netmask used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * * @return builder * @@ -295,7 +315,7 @@ public Builder netmask(@Nullable Output netmask) { } /** - * @param netmask used only if `subnet` is not specified in `networks` + * @param netmask used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigTrafficShapingArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigTrafficShapingArgs.java index 07e332fc..441ef721 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigTrafficShapingArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigTrafficShapingArgs.java @@ -18,16 +18,14 @@ public final class DeviceprofileGatewayPortConfigTrafficShapingArgs extends com. public static final DeviceprofileGatewayPortConfigTrafficShapingArgs Empty = new DeviceprofileGatewayPortConfigTrafficShapingArgs(); /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ @Import(name="classPercentages") private @Nullable Output> classPercentages; /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ public Optional>> classPercentages() { @@ -41,11 +39,27 @@ public Optional> enabled() { return Optional.ofNullable(this.enabled); } + /** + * Interface Transmit Cap in kbps + * + */ + @Import(name="maxTxKbps") + private @Nullable Output maxTxKbps; + + /** + * @return Interface Transmit Cap in kbps + * + */ + public Optional> maxTxKbps() { + return Optional.ofNullable(this.maxTxKbps); + } + private DeviceprofileGatewayPortConfigTrafficShapingArgs() {} private DeviceprofileGatewayPortConfigTrafficShapingArgs(DeviceprofileGatewayPortConfigTrafficShapingArgs $) { this.classPercentages = $.classPercentages; this.enabled = $.enabled; + this.maxTxKbps = $.maxTxKbps; } public static Builder builder() { @@ -67,8 +81,7 @@ public Builder(DeviceprofileGatewayPortConfigTrafficShapingArgs defaults) { } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -79,8 +92,7 @@ public Builder classPercentages(@Nullable Output> classPercentages } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -90,8 +102,7 @@ public Builder classPercentages(List classPercentages) { } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -109,6 +120,27 @@ public Builder enabled(Boolean enabled) { return enabled(Output.of(enabled)); } + /** + * @param maxTxKbps Interface Transmit Cap in kbps + * + * @return builder + * + */ + public Builder maxTxKbps(@Nullable Output maxTxKbps) { + $.maxTxKbps = maxTxKbps; + return this; + } + + /** + * @param maxTxKbps Interface Transmit Cap in kbps + * + * @return builder + * + */ + public Builder maxTxKbps(Integer maxTxKbps) { + return maxTxKbps(Output.of(maxTxKbps)); + } + public DeviceprofileGatewayPortConfigTrafficShapingArgs build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs.java index d3c5f3bc..4d315576 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs.java @@ -18,16 +18,14 @@ public final class DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs exte public static final DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs Empty = new DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs(); /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ @Import(name="classPercentages") private @Nullable Output> classPercentages; /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ public Optional>> classPercentages() { @@ -41,11 +39,27 @@ public Optional> enabled() { return Optional.ofNullable(this.enabled); } + /** + * Interface Transmit Cap in kbps + * + */ + @Import(name="maxTxKbps") + private @Nullable Output maxTxKbps; + + /** + * @return Interface Transmit Cap in kbps + * + */ + public Optional> maxTxKbps() { + return Optional.ofNullable(this.maxTxKbps); + } + private DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs() {} private DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs(DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs $) { this.classPercentages = $.classPercentages; this.enabled = $.enabled; + this.maxTxKbps = $.maxTxKbps; } public static Builder builder() { @@ -67,8 +81,7 @@ public Builder(DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs defaults } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -79,8 +92,7 @@ public Builder classPercentages(@Nullable Output> classPercentages } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -90,8 +102,7 @@ public Builder classPercentages(List classPercentages) { } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -109,6 +120,27 @@ public Builder enabled(Boolean enabled) { return enabled(Output.of(enabled)); } + /** + * @param maxTxKbps Interface Transmit Cap in kbps + * + * @return builder + * + */ + public Builder maxTxKbps(@Nullable Output maxTxKbps) { + $.maxTxKbps = maxTxKbps; + return this; + } + + /** + * @param maxTxKbps Interface Transmit Cap in kbps + * + * @return builder + * + */ + public Builder maxTxKbps(Integer maxTxKbps) { + return maxTxKbps(Output.of(maxTxKbps)); + } + public DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayRoutingPoliciesTermActionArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayRoutingPoliciesTermActionArgs.java index b3e10a40..84c7875d 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayRoutingPoliciesTermActionArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayRoutingPoliciesTermActionArgs.java @@ -46,6 +46,21 @@ public Optional>> addTargetVrfs() { return Optional.ofNullable(this.addTargetVrfs); } + /** + * route aggregation + * + */ + @Import(name="aggregates") + private @Nullable Output> aggregates; + + /** + * @return route aggregation + * + */ + public Optional>> aggregates() { + return Optional.ofNullable(this.aggregates); + } + /** * when used as export policy, optional * @@ -134,6 +149,7 @@ private DeviceprofileGatewayRoutingPoliciesTermActionArgs(DeviceprofileGatewayRo this.accept = $.accept; this.addCommunities = $.addCommunities; this.addTargetVrfs = $.addTargetVrfs; + this.aggregates = $.aggregates; this.communities = $.communities; this.excludeAsPaths = $.excludeAsPaths; this.excludeCommunities = $.excludeCommunities; @@ -213,6 +229,37 @@ public Builder addTargetVrfs(String... addTargetVrfs) { return addTargetVrfs(List.of(addTargetVrfs)); } + /** + * @param aggregates route aggregation + * + * @return builder + * + */ + public Builder aggregates(@Nullable Output> aggregates) { + $.aggregates = aggregates; + return this; + } + + /** + * @param aggregates route aggregation + * + * @return builder + * + */ + public Builder aggregates(List aggregates) { + return aggregates(Output.of(aggregates)); + } + + /** + * @param aggregates route aggregation + * + * @return builder + * + */ + public Builder aggregates(String... aggregates) { + return aggregates(List.of(aggregates)); + } + /** * @param communities when used as export policy, optional * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingArgs.java index 1d542155..1a99077d 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingArgs.java @@ -107,16 +107,14 @@ public Optional> vpnPaths; /** - * @return overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @return overlay-facing criteria (used for bgp_config where via=vpn). ordered- * */ public Optional>> vpnPaths() { @@ -324,8 +322,7 @@ public Builder vpnPathSla(DeviceprofileGatewayRoutingPoliciesTermMatchingVpnPath } /** - * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn). ordered- * * @return builder * @@ -336,8 +333,7 @@ public Builder vpnPaths(@Nullable Output> vpnPaths) { } /** - * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn). ordered- * * @return builder * @@ -347,8 +343,7 @@ public Builder vpnPaths(List vpnPaths) { } /** - * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn). ordered- * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsArgs.java index 80a44adb..95390d29 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsArgs.java @@ -23,16 +23,14 @@ public Optional> route() { } /** - * name of the vrf instance - * it can also be the name of the VPN or wan if they + * name of the vrf instance, it can also be the name of the VPN or wan if they * */ @Import(name="vrfName") private @Nullable Output vrfName; /** - * @return name of the vrf instance - * it can also be the name of the VPN or wan if they + * @return name of the vrf instance, it can also be the name of the VPN or wan if they * */ public Optional> vrfName() { @@ -74,8 +72,7 @@ public Builder route(String route) { } /** - * @param vrfName name of the vrf instance - * it can also be the name of the VPN or wan if they + * @param vrfName name of the vrf instance, it can also be the name of the VPN or wan if they * * @return builder * @@ -86,8 +83,7 @@ public Builder vrfName(@Nullable Output vrfName) { } /** - * @param vrfName name of the vrf instance - * it can also be the name of the VPN or wan if they + * @param vrfName name of the vrf instance, it can also be the name of the VPN or wan if they * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayServicePolicyArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayServicePolicyArgs.java index a93803ee..10bc556a 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayServicePolicyArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayServicePolicyArgs.java @@ -95,16 +95,14 @@ public Optional> name() { } /** - * by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * */ @Import(name="pathPreference") private @Nullable Output pathPreference; /** - * @return by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @return by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * */ public Optional> pathPreference() { @@ -296,8 +294,7 @@ public Builder name(String name) { } /** - * @param pathPreference by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @param pathPreference by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * * @return builder * @@ -308,8 +305,7 @@ public Builder pathPreference(@Nullable Output pathPreference) { } /** - * @param pathPreference by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @param pathPreference by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayState.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayState.java index c833962c..8253936c 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayState.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayState.java @@ -35,14 +35,14 @@ public final class DeviceprofileGatewayState extends com.pulumi.resources.Resour public static final DeviceprofileGatewayState Empty = new DeviceprofileGatewayState(); /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ @Import(name="additionalConfigCmds") private @Nullable Output> additionalConfigCmds; /** - * @return additional CLI commands to append to the generated Junos config **Note**: no check is done + * @return additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ public Optional>> additionalConfigCmds() { @@ -394,7 +394,7 @@ public Builder(DeviceprofileGatewayState defaults) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -405,7 +405,7 @@ public Builder additionalConfigCmds(@Nullable Output> additionalCon } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -415,7 +415,7 @@ public Builder additionalConfigCmds(List additionalConfigCmds) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsArgs.java index 3eb92159..91f4587b 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsArgs.java @@ -31,14 +31,14 @@ public Optional> auto } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ @Import(name="ikeLifetime") private @Nullable Output ikeLifetime; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ public Optional> ikeLifetime() { @@ -46,14 +46,14 @@ public Optional> ikeLifetime() { } /** - * Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * */ @Import(name="ikeMode") private @Nullable Output ikeMode; /** - * @return Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @return Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * */ public Optional> ikeMode() { @@ -61,14 +61,14 @@ public Optional> ikeMode() { } /** - * if `provider`== `custom-ipsec` + * if `provider`==`custom-ipsec` * */ @Import(name="ikeProposals") private @Nullable Output> ikeProposals; /** - * @return if `provider`== `custom-ipsec` + * @return if `provider`==`custom-ipsec` * */ public Optional>> ikeProposals() { @@ -76,14 +76,14 @@ public Optional>> } /** - * if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ @Import(name="ipsecLifetime") private @Nullable Output ipsecLifetime; /** - * @return if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ public Optional> ipsecLifetime() { @@ -91,14 +91,14 @@ public Optional> ipsecLifetime() { } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` * */ @Import(name="ipsecProposals") private @Nullable Output> ipsecProposals; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ public Optional>> ipsecProposals() { @@ -106,20 +106,14 @@ public Optional> } /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ @Import(name="localId") private @Nullable Output localId; /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional> localId() { @@ -127,14 +121,14 @@ public Optional> localId() { } /** - * enum: `active-active`, `active-standby` + * Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * */ @Import(name="mode") private @Nullable Output mode; /** - * @return enum: `active-active`, `active-standby` + * @return Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * */ public Optional> mode() { @@ -142,36 +136,44 @@ public Optional> mode() { } /** - * networks reachable via this tunnel + * if `provider`==`custom-ipsec`, networks reachable via this tunnel * */ @Import(name="networks") private @Nullable Output> networks; /** - * @return networks reachable via this tunnel + * @return if `provider`==`custom-ipsec`, networks reachable via this tunnel * */ public Optional>> networks() { return Optional.ofNullable(this.networks); } + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ @Import(name="primary") private @Nullable Output primary; + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ public Optional> primary() { return Optional.ofNullable(this.primary); } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` * */ @Import(name="probe") private @Nullable Output probe; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ public Optional> probe() { @@ -179,14 +181,14 @@ public Optional> probe() { } /** - * Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * */ @Import(name="protocol") private @Nullable Output protocol; /** - * @return Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * @return Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * */ public Optional> protocol() { @@ -194,14 +196,14 @@ public Optional> protocol() { } /** - * enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * */ @Import(name="provider") private @Nullable Output provider; /** - * @return enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @return Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * */ public Optional> provider() { @@ -209,42 +211,44 @@ public Optional> provider() { } /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ @Import(name="psk") private @Nullable Output psk; /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional> psk() { return Optional.ofNullable(this.psk); } + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ @Import(name="secondary") private @Nullable Output secondary; + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ public Optional> secondary() { return Optional.ofNullable(this.secondary); } /** - * Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * */ @Import(name="version") private @Nullable Output version; /** - * @return Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @return Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * */ public Optional> version() { @@ -300,7 +304,7 @@ public Builder autoProvision(DeviceprofileGatewayTunnelConfigsAutoProvisionArgs } /** - * @param ikeLifetime Only if `provider`== `custom-ipsec` + * @param ikeLifetime Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * * @return builder * @@ -311,7 +315,7 @@ public Builder ikeLifetime(@Nullable Output ikeLifetime) { } /** - * @param ikeLifetime Only if `provider`== `custom-ipsec` + * @param ikeLifetime Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * * @return builder * @@ -321,7 +325,7 @@ public Builder ikeLifetime(Integer ikeLifetime) { } /** - * @param ikeMode Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @param ikeMode Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * * @return builder * @@ -332,7 +336,7 @@ public Builder ikeMode(@Nullable Output ikeMode) { } /** - * @param ikeMode Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @param ikeMode Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * * @return builder * @@ -342,7 +346,7 @@ public Builder ikeMode(String ikeMode) { } /** - * @param ikeProposals if `provider`== `custom-ipsec` + * @param ikeProposals if `provider`==`custom-ipsec` * * @return builder * @@ -353,7 +357,7 @@ public Builder ikeProposals(@Nullable Output ipsecLifetime) { } /** - * @param ipsecLifetime if `provider`== `custom-ipsec` + * @param ipsecLifetime Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * * @return builder * @@ -394,7 +398,7 @@ public Builder ipsecLifetime(Integer ipsecLifetime) { } /** - * @param ipsecProposals Only if `provider`== `custom-ipsec` + * @param ipsecProposals Only if `provider`==`custom-ipsec` * * @return builder * @@ -405,7 +409,7 @@ public Builder ipsecProposals(@Nullable Output localId) { } /** - * @param localId Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @param localId Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -452,7 +450,7 @@ public Builder localId(String localId) { } /** - * @param mode enum: `active-active`, `active-standby` + * @param mode Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * * @return builder * @@ -463,7 +461,7 @@ public Builder mode(@Nullable Output mode) { } /** - * @param mode enum: `active-active`, `active-standby` + * @param mode Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * * @return builder * @@ -473,7 +471,7 @@ public Builder mode(String mode) { } /** - * @param networks networks reachable via this tunnel + * @param networks if `provider`==`custom-ipsec`, networks reachable via this tunnel * * @return builder * @@ -484,7 +482,7 @@ public Builder networks(@Nullable Output> networks) { } /** - * @param networks networks reachable via this tunnel + * @param networks if `provider`==`custom-ipsec`, networks reachable via this tunnel * * @return builder * @@ -494,7 +492,7 @@ public Builder networks(List networks) { } /** - * @param networks networks reachable via this tunnel + * @param networks if `provider`==`custom-ipsec`, networks reachable via this tunnel * * @return builder * @@ -503,17 +501,29 @@ public Builder networks(String... networks) { return networks(List.of(networks)); } + /** + * @param primary Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + * @return builder + * + */ public Builder primary(@Nullable Output primary) { $.primary = primary; return this; } + /** + * @param primary Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + * @return builder + * + */ public Builder primary(DeviceprofileGatewayTunnelConfigsPrimaryArgs primary) { return primary(Output.of(primary)); } /** - * @param probe Only if `provider`== `custom-ipsec` + * @param probe Only if `provider`==`custom-ipsec` * * @return builder * @@ -524,7 +534,7 @@ public Builder probe(@Nullable Output protocol) { } /** - * @param protocol Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * @param protocol Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * * @return builder * @@ -555,7 +565,7 @@ public Builder protocol(String protocol) { } /** - * @param provider enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @param provider Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * * @return builder * @@ -566,7 +576,7 @@ public Builder provider(@Nullable Output provider) { } /** - * @param provider enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @param provider Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * * @return builder * @@ -576,10 +586,7 @@ public Builder provider(String provider) { } /** - * @param psk Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @param psk Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -590,10 +597,7 @@ public Builder psk(@Nullable Output psk) { } /** - * @param psk Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @param psk Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -602,17 +606,29 @@ public Builder psk(String psk) { return psk(Output.of(psk)); } + /** + * @param secondary Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + * @return builder + * + */ public Builder secondary(@Nullable Output secondary) { $.secondary = secondary; return this; } + /** + * @param secondary Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + * @return builder + * + */ public Builder secondary(DeviceprofileGatewayTunnelConfigsSecondaryArgs secondary) { return secondary(Output.of(secondary)); } /** - * @param version Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @param version Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * * @return builder * @@ -623,7 +639,7 @@ public Builder version(@Nullable Output version) { } /** - * @param version Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @param version Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionArgs.java index c10629b2..14fd7c0f 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionArgs.java @@ -5,10 +5,12 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import com.pulumi.junipermist.org.inputs.DeviceprofileGatewayTunnelConfigsAutoProvisionLatlngArgs; import com.pulumi.junipermist.org.inputs.DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs; import com.pulumi.junipermist.org.inputs.DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs; import java.lang.Boolean; +import java.lang.String; import java.util.Objects; import java.util.Optional; import javax.annotation.Nullable; @@ -25,9 +27,17 @@ public Optional> enable() { return Optional.ofNullable(this.enable); } + /** + * API override for POP selection + * + */ @Import(name="latlng") private @Nullable Output latlng; + /** + * @return API override for POP selection + * + */ public Optional> latlng() { return Optional.ofNullable(this.latlng); } @@ -39,6 +49,36 @@ public Optional provider; + + /** + * @return enum: `jse-ipsec`, `zscaler-ipsec` + * + */ + public Output provider() { + return this.provider; + } + + /** + * API override for POP selection + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return API override for POP selection + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + @Import(name="secondary") private @Nullable Output secondary; @@ -52,6 +92,8 @@ private DeviceprofileGatewayTunnelConfigsAutoProvisionArgs(DeviceprofileGatewayT this.enable = $.enable; this.latlng = $.latlng; this.primary = $.primary; + this.provider = $.provider; + this.region = $.region; this.secondary = $.secondary; } @@ -82,11 +124,23 @@ public Builder enable(Boolean enable) { return enable(Output.of(enable)); } + /** + * @param latlng API override for POP selection + * + * @return builder + * + */ public Builder latlng(@Nullable Output latlng) { $.latlng = latlng; return this; } + /** + * @param latlng API override for POP selection + * + * @return builder + * + */ public Builder latlng(DeviceprofileGatewayTunnelConfigsAutoProvisionLatlngArgs latlng) { return latlng(Output.of(latlng)); } @@ -100,6 +154,48 @@ public Builder primary(DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs return primary(Output.of(primary)); } + /** + * @param provider enum: `jse-ipsec`, `zscaler-ipsec` + * + * @return builder + * + */ + public Builder provider(Output provider) { + $.provider = provider; + return this; + } + + /** + * @param provider enum: `jse-ipsec`, `zscaler-ipsec` + * + * @return builder + * + */ + public Builder provider(String provider) { + return provider(Output.of(provider)); + } + + /** + * @param region API override for POP selection + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region API override for POP selection + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + public Builder secondary(@Nullable Output secondary) { $.secondary = secondary; return this; @@ -110,6 +206,9 @@ public Builder secondary(DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary } public DeviceprofileGatewayTunnelConfigsAutoProvisionArgs build() { + if ($.provider == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayTunnelConfigsAutoProvisionArgs", "provider"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs.java index 51c27f9c..dbfc0888 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs.java @@ -16,11 +16,11 @@ public final class DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs ext public static final DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs Empty = new DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs(); - @Import(name="numHosts") - private @Nullable Output numHosts; + @Import(name="probeIps") + private @Nullable Output> probeIps; - public Optional> numHosts() { - return Optional.ofNullable(this.numHosts); + public Optional>> probeIps() { + return Optional.ofNullable(this.probeIps); } /** @@ -41,7 +41,7 @@ public Optional>> wanNames() { private DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs() {} private DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs(DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs $) { - this.numHosts = $.numHosts; + this.probeIps = $.probeIps; this.wanNames = $.wanNames; } @@ -63,13 +63,17 @@ public Builder(DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs default $ = new DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs(Objects.requireNonNull(defaults)); } - public Builder numHosts(@Nullable Output numHosts) { - $.numHosts = numHosts; + public Builder probeIps(@Nullable Output> probeIps) { + $.probeIps = probeIps; return this; } - public Builder numHosts(String numHosts) { - return numHosts(Output.of(numHosts)); + public Builder probeIps(List probeIps) { + return probeIps(Output.of(probeIps)); + } + + public Builder probeIps(String... probeIps) { + return probeIps(List.of(probeIps)); } /** diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs.java index 21537955..b2344fb1 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs.java @@ -16,11 +16,11 @@ public final class DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs e public static final DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs Empty = new DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs(); - @Import(name="numHosts") - private @Nullable Output numHosts; + @Import(name="probeIps") + private @Nullable Output> probeIps; - public Optional> numHosts() { - return Optional.ofNullable(this.numHosts); + public Optional>> probeIps() { + return Optional.ofNullable(this.probeIps); } /** @@ -41,7 +41,7 @@ public Optional>> wanNames() { private DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs() {} private DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs(DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs $) { - this.numHosts = $.numHosts; + this.probeIps = $.probeIps; this.wanNames = $.wanNames; } @@ -63,13 +63,17 @@ public Builder(DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs defau $ = new DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs(Objects.requireNonNull(defaults)); } - public Builder numHosts(@Nullable Output numHosts) { - $.numHosts = numHosts; + public Builder probeIps(@Nullable Output> probeIps) { + $.probeIps = probeIps; return this; } - public Builder numHosts(String numHosts) { - return numHosts(Output.of(numHosts)); + public Builder probeIps(List probeIps) { + return probeIps(Output.of(probeIps)); + } + + public Builder probeIps(String... probeIps) { + return probeIps(List.of(probeIps)); } /** diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsIpsecProposalArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsIpsecProposalArgs.java index 41b5647a..ec33df97 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsIpsecProposalArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsIpsecProposalArgs.java @@ -31,7 +31,7 @@ public Optional> authAlgo() { } /** - * Only if `provider`== `custom-ipsec`. enum: + * Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -48,7 +48,7 @@ public Optional> authAlgo() { private @Nullable Output dhGroup; /** - * @return Only if `provider`== `custom-ipsec`. enum: + * @return Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -128,7 +128,7 @@ public Builder authAlgo(String authAlgo) { } /** - * @param dhGroup Only if `provider`== `custom-ipsec`. enum: + * @param dhGroup Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -149,7 +149,7 @@ public Builder dhGroup(@Nullable Output dhGroup) { } /** - * @param dhGroup Only if `provider`== `custom-ipsec`. enum: + * @param dhGroup Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsPrimaryArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsPrimaryArgs.java index 636dd6b2..59fae88a 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsPrimaryArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsPrimaryArgs.java @@ -5,6 +5,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.List; import java.util.Objects; @@ -16,26 +17,22 @@ public final class DeviceprofileGatewayTunnelConfigsPrimaryArgs extends com.pulu public static final DeviceprofileGatewayTunnelConfigsPrimaryArgs Empty = new DeviceprofileGatewayTunnelConfigsPrimaryArgs(); - @Import(name="hosts") - private @Nullable Output> hosts; + @Import(name="hosts", required=true) + private Output> hosts; - public Optional>> hosts() { - return Optional.ofNullable(this.hosts); + public Output> hosts() { + return this.hosts; } /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ @Import(name="internalIps") private @Nullable Output> internalIps; /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ public Optional>> internalIps() { @@ -50,25 +47,25 @@ public Optional>> probeIps() { } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ @Import(name="remoteIds") private @Nullable Output> remoteIds; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional>> remoteIds() { return Optional.ofNullable(this.remoteIds); } - @Import(name="wanNames") - private @Nullable Output> wanNames; + @Import(name="wanNames", required=true) + private Output> wanNames; - public Optional>> wanNames() { - return Optional.ofNullable(this.wanNames); + public Output> wanNames() { + return this.wanNames; } private DeviceprofileGatewayTunnelConfigsPrimaryArgs() {} @@ -99,7 +96,7 @@ public Builder(DeviceprofileGatewayTunnelConfigsPrimaryArgs defaults) { $ = new DeviceprofileGatewayTunnelConfigsPrimaryArgs(Objects.requireNonNull(defaults)); } - public Builder hosts(@Nullable Output> hosts) { + public Builder hosts(Output> hosts) { $.hosts = hosts; return this; } @@ -113,9 +110,7 @@ public Builder hosts(String... hosts) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -126,9 +121,7 @@ public Builder internalIps(@Nullable Output> internalIps) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -138,9 +131,7 @@ public Builder internalIps(List internalIps) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -163,7 +154,7 @@ public Builder probeIps(String... probeIps) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -174,7 +165,7 @@ public Builder remoteIds(@Nullable Output> remoteIds) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -184,7 +175,7 @@ public Builder remoteIds(List remoteIds) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -193,7 +184,7 @@ public Builder remoteIds(String... remoteIds) { return remoteIds(List.of(remoteIds)); } - public Builder wanNames(@Nullable Output> wanNames) { + public Builder wanNames(Output> wanNames) { $.wanNames = wanNames; return this; } @@ -207,6 +198,12 @@ public Builder wanNames(String... wanNames) { } public DeviceprofileGatewayTunnelConfigsPrimaryArgs build() { + if ($.hosts == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayTunnelConfigsPrimaryArgs", "hosts"); + } + if ($.wanNames == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayTunnelConfigsPrimaryArgs", "wanNames"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsSecondaryArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsSecondaryArgs.java index ee64d6d7..ba6ae9b4 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsSecondaryArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelConfigsSecondaryArgs.java @@ -5,6 +5,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.List; import java.util.Objects; @@ -16,26 +17,22 @@ public final class DeviceprofileGatewayTunnelConfigsSecondaryArgs extends com.pu public static final DeviceprofileGatewayTunnelConfigsSecondaryArgs Empty = new DeviceprofileGatewayTunnelConfigsSecondaryArgs(); - @Import(name="hosts") - private @Nullable Output> hosts; + @Import(name="hosts", required=true) + private Output> hosts; - public Optional>> hosts() { - return Optional.ofNullable(this.hosts); + public Output> hosts() { + return this.hosts; } /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ @Import(name="internalIps") private @Nullable Output> internalIps; /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ public Optional>> internalIps() { @@ -50,25 +47,25 @@ public Optional>> probeIps() { } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ @Import(name="remoteIds") private @Nullable Output> remoteIds; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional>> remoteIds() { return Optional.ofNullable(this.remoteIds); } - @Import(name="wanNames") - private @Nullable Output> wanNames; + @Import(name="wanNames", required=true) + private Output> wanNames; - public Optional>> wanNames() { - return Optional.ofNullable(this.wanNames); + public Output> wanNames() { + return this.wanNames; } private DeviceprofileGatewayTunnelConfigsSecondaryArgs() {} @@ -99,7 +96,7 @@ public Builder(DeviceprofileGatewayTunnelConfigsSecondaryArgs defaults) { $ = new DeviceprofileGatewayTunnelConfigsSecondaryArgs(Objects.requireNonNull(defaults)); } - public Builder hosts(@Nullable Output> hosts) { + public Builder hosts(Output> hosts) { $.hosts = hosts; return this; } @@ -113,9 +110,7 @@ public Builder hosts(String... hosts) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -126,9 +121,7 @@ public Builder internalIps(@Nullable Output> internalIps) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -138,9 +131,7 @@ public Builder internalIps(List internalIps) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -163,7 +154,7 @@ public Builder probeIps(String... probeIps) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -174,7 +165,7 @@ public Builder remoteIds(@Nullable Output> remoteIds) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -184,7 +175,7 @@ public Builder remoteIds(List remoteIds) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -193,7 +184,7 @@ public Builder remoteIds(String... remoteIds) { return remoteIds(List.of(remoteIds)); } - public Builder wanNames(@Nullable Output> wanNames) { + public Builder wanNames(Output> wanNames) { $.wanNames = wanNames; return this; } @@ -207,6 +198,12 @@ public Builder wanNames(String... wanNames) { } public DeviceprofileGatewayTunnelConfigsSecondaryArgs build() { + if ($.hosts == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayTunnelConfigsSecondaryArgs", "hosts"); + } + if ($.wanNames == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayTunnelConfigsSecondaryArgs", "wanNames"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelProviderOptionsJseArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelProviderOptionsJseArgs.java index eb22ab04..5673410a 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelProviderOptionsJseArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelProviderOptionsJseArgs.java @@ -16,13 +16,6 @@ public final class DeviceprofileGatewayTunnelProviderOptionsJseArgs extends com. public static final DeviceprofileGatewayTunnelProviderOptionsJseArgs Empty = new DeviceprofileGatewayTunnelProviderOptionsJseArgs(); - @Import(name="name") - private @Nullable Output name; - - public Optional> name() { - return Optional.ofNullable(this.name); - } - @Import(name="numUsers") private @Nullable Output numUsers; @@ -30,11 +23,26 @@ public Optional> numUsers() { return Optional.ofNullable(this.numUsers); } + /** + * JSE Organization name + * + */ + @Import(name="orgName") + private @Nullable Output orgName; + + /** + * @return JSE Organization name + * + */ + public Optional> orgName() { + return Optional.ofNullable(this.orgName); + } + private DeviceprofileGatewayTunnelProviderOptionsJseArgs() {} private DeviceprofileGatewayTunnelProviderOptionsJseArgs(DeviceprofileGatewayTunnelProviderOptionsJseArgs $) { - this.name = $.name; this.numUsers = $.numUsers; + this.orgName = $.orgName; } public static Builder builder() { @@ -55,22 +63,34 @@ public Builder(DeviceprofileGatewayTunnelProviderOptionsJseArgs defaults) { $ = new DeviceprofileGatewayTunnelProviderOptionsJseArgs(Objects.requireNonNull(defaults)); } - public Builder name(@Nullable Output name) { - $.name = name; + public Builder numUsers(@Nullable Output numUsers) { + $.numUsers = numUsers; return this; } - public Builder name(String name) { - return name(Output.of(name)); + public Builder numUsers(Integer numUsers) { + return numUsers(Output.of(numUsers)); } - public Builder numUsers(@Nullable Output numUsers) { - $.numUsers = numUsers; + /** + * @param orgName JSE Organization name + * + * @return builder + * + */ + public Builder orgName(@Nullable Output orgName) { + $.orgName = orgName; return this; } - public Builder numUsers(Integer numUsers) { - return numUsers(Output.of(numUsers)); + /** + * @param orgName JSE Organization name + * + * @return builder + * + */ + public Builder orgName(String orgName) { + return orgName(Output.of(orgName)); } public DeviceprofileGatewayTunnelProviderOptionsJseArgs build() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerArgs.java index afe4ff8d..8bd1ae5f 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerArgs.java @@ -7,8 +7,8 @@ import com.pulumi.core.annotations.Import; import com.pulumi.junipermist.org.inputs.DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs; import java.lang.Boolean; +import java.lang.Double; import java.lang.Integer; -import java.lang.String; import java.util.List; import java.util.Objects; import java.util.Optional; @@ -19,111 +19,142 @@ public final class DeviceprofileGatewayTunnelProviderOptionsZscalerArgs extends public static final DeviceprofileGatewayTunnelProviderOptionsZscalerArgs Empty = new DeviceprofileGatewayTunnelProviderOptionsZscalerArgs(); - @Import(name="aupAcceptanceRequired") - private @Nullable Output aupAcceptanceRequired; + @Import(name="aupBlockInternetUntilAccepted") + private @Nullable Output aupBlockInternetUntilAccepted; - public Optional> aupAcceptanceRequired() { - return Optional.ofNullable(this.aupAcceptanceRequired); + public Optional> aupBlockInternetUntilAccepted() { + return Optional.ofNullable(this.aupBlockInternetUntilAccepted); } /** - * days before AUP is requested again + * Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - @Import(name="aupExpire") - private @Nullable Output aupExpire; + @Import(name="aupEnabled") + private @Nullable Output aupEnabled; /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - public Optional> aupExpire() { - return Optional.ofNullable(this.aupExpire); + public Optional> aupEnabled() { + return Optional.ofNullable(this.aupEnabled); } /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - @Import(name="aupSslProxy") - private @Nullable Output aupSslProxy; + @Import(name="aupForceSslInspection") + private @Nullable Output aupForceSslInspection; /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - public Optional> aupSslProxy() { - return Optional.ofNullable(this.aupSslProxy); + public Optional> aupForceSslInspection() { + return Optional.ofNullable(this.aupForceSslInspection); } /** - * the download bandwidth cap of the link, in Mbps + * Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - @Import(name="downloadMbps") - private @Nullable Output downloadMbps; + @Import(name="aupTimeoutInDays") + private @Nullable Output aupTimeoutInDays; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - public Optional> downloadMbps() { - return Optional.ofNullable(this.downloadMbps); + public Optional> aupTimeoutInDays() { + return Optional.ofNullable(this.aupTimeoutInDays); } /** - * if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to enforce user authentication * */ - @Import(name="enableAup") - private @Nullable Output enableAup; + @Import(name="authRequired") + private @Nullable Output authRequired; /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Enable this option to enforce user authentication * */ - public Optional> enableAup() { - return Optional.ofNullable(this.enableAup); + public Optional> authRequired() { + return Optional.ofNullable(this.authRequired); } /** - * when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - @Import(name="enableCaution") - private @Nullable Output enableCaution; + @Import(name="cautionEnabled") + private @Nullable Output cautionEnabled; /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - public Optional> enableCaution() { - return Optional.ofNullable(this.enableCaution); + public Optional> cautionEnabled() { + return Optional.ofNullable(this.cautionEnabled); } - @Import(name="enforceAuthentication") - private @Nullable Output enforceAuthentication; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + @Import(name="dnBandwidth") + private @Nullable Output dnBandwidth; + + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional> dnBandwidth() { + return Optional.ofNullable(this.dnBandwidth); + } - public Optional> enforceAuthentication() { - return Optional.ofNullable(this.enforceAuthentication); + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + @Import(name="idleTimeInMinutes") + private @Nullable Output idleTimeInMinutes; + + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + public Optional> idleTimeInMinutes() { + return Optional.ofNullable(this.idleTimeInMinutes); } - @Import(name="name") - private @Nullable Output name; + /** + * if `true`, enable the firewall control option + * + */ + @Import(name="ofwEnabled") + private @Nullable Output ofwEnabled; - public Optional> name() { - return Optional.ofNullable(this.name); + /** + * @return if `true`, enable the firewall control option + * + */ + public Optional> ofwEnabled() { + return Optional.ofNullable(this.ofwEnabled); } /** - * if `use_xff`==`true` + * `sub-locations` can be used for specific uses cases to define different configuration based on the user network * */ @Import(name="subLocations") private @Nullable Output> subLocations; /** - * @return if `use_xff`==`true` + * @return `sub-locations` can be used for specific uses cases to define different configuration based on the user network * */ public Optional>> subLocations() { @@ -131,49 +162,98 @@ public Optional surrogateIp; + + /** + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + */ + public Optional> surrogateIp() { + return Optional.ofNullable(this.surrogateIp); + } + + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + @Import(name="surrogateIpEnforcedForKnownBrowsers") + private @Nullable Output surrogateIpEnforcedForKnownBrowsers; + + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + public Optional> surrogateIpEnforcedForKnownBrowsers() { + return Optional.ofNullable(this.surrogateIpEnforcedForKnownBrowsers); + } + + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + @Import(name="surrogateRefreshTimeInMinutes") + private @Nullable Output surrogateRefreshTimeInMinutes; + + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + public Optional> surrogateRefreshTimeInMinutes() { + return Optional.ofNullable(this.surrogateRefreshTimeInMinutes); + } + + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - @Import(name="uploadMbps") - private @Nullable Output uploadMbps; + @Import(name="upBandwidth") + private @Nullable Output upBandwidth; /** - * @return the download bandwidth cap of the link, in Mbps + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - public Optional> uploadMbps() { - return Optional.ofNullable(this.uploadMbps); + public Optional> upBandwidth() { + return Optional.ofNullable(this.upBandwidth); } /** * location uses proxy chaining to forward traffic * */ - @Import(name="useXff") - private @Nullable Output useXff; + @Import(name="xffForwardEnabled") + private @Nullable Output xffForwardEnabled; /** * @return location uses proxy chaining to forward traffic * */ - public Optional> useXff() { - return Optional.ofNullable(this.useXff); + public Optional> xffForwardEnabled() { + return Optional.ofNullable(this.xffForwardEnabled); } private DeviceprofileGatewayTunnelProviderOptionsZscalerArgs() {} private DeviceprofileGatewayTunnelProviderOptionsZscalerArgs(DeviceprofileGatewayTunnelProviderOptionsZscalerArgs $) { - this.aupAcceptanceRequired = $.aupAcceptanceRequired; - this.aupExpire = $.aupExpire; - this.aupSslProxy = $.aupSslProxy; - this.downloadMbps = $.downloadMbps; - this.enableAup = $.enableAup; - this.enableCaution = $.enableCaution; - this.enforceAuthentication = $.enforceAuthentication; - this.name = $.name; + this.aupBlockInternetUntilAccepted = $.aupBlockInternetUntilAccepted; + this.aupEnabled = $.aupEnabled; + this.aupForceSslInspection = $.aupForceSslInspection; + this.aupTimeoutInDays = $.aupTimeoutInDays; + this.authRequired = $.authRequired; + this.cautionEnabled = $.cautionEnabled; + this.dnBandwidth = $.dnBandwidth; + this.idleTimeInMinutes = $.idleTimeInMinutes; + this.ofwEnabled = $.ofwEnabled; this.subLocations = $.subLocations; - this.uploadMbps = $.uploadMbps; - this.useXff = $.useXff; + this.surrogateIp = $.surrogateIp; + this.surrogateIpEnforcedForKnownBrowsers = $.surrogateIpEnforcedForKnownBrowsers; + this.surrogateRefreshTimeInMinutes = $.surrogateRefreshTimeInMinutes; + this.upBandwidth = $.upBandwidth; + this.xffForwardEnabled = $.xffForwardEnabled; } public static Builder builder() { @@ -194,140 +274,185 @@ public Builder(DeviceprofileGatewayTunnelProviderOptionsZscalerArgs defaults) { $ = new DeviceprofileGatewayTunnelProviderOptionsZscalerArgs(Objects.requireNonNull(defaults)); } - public Builder aupAcceptanceRequired(@Nullable Output aupAcceptanceRequired) { - $.aupAcceptanceRequired = aupAcceptanceRequired; + public Builder aupBlockInternetUntilAccepted(@Nullable Output aupBlockInternetUntilAccepted) { + $.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; return this; } - public Builder aupAcceptanceRequired(Boolean aupAcceptanceRequired) { - return aupAcceptanceRequired(Output.of(aupAcceptanceRequired)); + public Builder aupBlockInternetUntilAccepted(Boolean aupBlockInternetUntilAccepted) { + return aupBlockInternetUntilAccepted(Output.of(aupBlockInternetUntilAccepted)); } /** - * @param aupExpire days before AUP is requested again + * @param aupEnabled Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * * @return builder * */ - public Builder aupExpire(@Nullable Output aupExpire) { - $.aupExpire = aupExpire; + public Builder aupEnabled(@Nullable Output aupEnabled) { + $.aupEnabled = aupEnabled; return this; } /** - * @param aupExpire days before AUP is requested again + * @param aupEnabled Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * * @return builder * */ - public Builder aupExpire(Integer aupExpire) { - return aupExpire(Output.of(aupExpire)); + public Builder aupEnabled(Boolean aupEnabled) { + return aupEnabled(Output.of(aupEnabled)); } /** - * @param aupSslProxy proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * @param aupForceSslInspection proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * * @return builder * */ - public Builder aupSslProxy(@Nullable Output aupSslProxy) { - $.aupSslProxy = aupSslProxy; + public Builder aupForceSslInspection(@Nullable Output aupForceSslInspection) { + $.aupForceSslInspection = aupForceSslInspection; return this; } /** - * @param aupSslProxy proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * @param aupForceSslInspection proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * * @return builder * */ - public Builder aupSslProxy(Boolean aupSslProxy) { - return aupSslProxy(Output.of(aupSslProxy)); + public Builder aupForceSslInspection(Boolean aupForceSslInspection) { + return aupForceSslInspection(Output.of(aupForceSslInspection)); } /** - * @param downloadMbps the download bandwidth cap of the link, in Mbps + * @param aupTimeoutInDays Required if `aup_enabled`==`true`. Days before AUP is requested again * * @return builder * */ - public Builder downloadMbps(@Nullable Output downloadMbps) { - $.downloadMbps = downloadMbps; + public Builder aupTimeoutInDays(@Nullable Output aupTimeoutInDays) { + $.aupTimeoutInDays = aupTimeoutInDays; return this; } /** - * @param downloadMbps the download bandwidth cap of the link, in Mbps + * @param aupTimeoutInDays Required if `aup_enabled`==`true`. Days before AUP is requested again * * @return builder * */ - public Builder downloadMbps(Integer downloadMbps) { - return downloadMbps(Output.of(downloadMbps)); + public Builder aupTimeoutInDays(Integer aupTimeoutInDays) { + return aupTimeoutInDays(Output.of(aupTimeoutInDays)); } /** - * @param enableAup if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @param authRequired Enable this option to enforce user authentication * * @return builder * */ - public Builder enableAup(@Nullable Output enableAup) { - $.enableAup = enableAup; + public Builder authRequired(@Nullable Output authRequired) { + $.authRequired = authRequired; return this; } /** - * @param enableAup if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @param authRequired Enable this option to enforce user authentication * * @return builder * */ - public Builder enableAup(Boolean enableAup) { - return enableAup(Output.of(enableAup)); + public Builder authRequired(Boolean authRequired) { + return authRequired(Output.of(authRequired)); } /** - * @param enableCaution when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @param cautionEnabled Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * * @return builder * */ - public Builder enableCaution(@Nullable Output enableCaution) { - $.enableCaution = enableCaution; + public Builder cautionEnabled(@Nullable Output cautionEnabled) { + $.cautionEnabled = cautionEnabled; return this; } /** - * @param enableCaution when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @param cautionEnabled Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * * @return builder * */ - public Builder enableCaution(Boolean enableCaution) { - return enableCaution(Output.of(enableCaution)); + public Builder cautionEnabled(Boolean cautionEnabled) { + return cautionEnabled(Output.of(cautionEnabled)); } - public Builder enforceAuthentication(@Nullable Output enforceAuthentication) { - $.enforceAuthentication = enforceAuthentication; + /** + * @param dnBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set + * + * @return builder + * + */ + public Builder dnBandwidth(@Nullable Output dnBandwidth) { + $.dnBandwidth = dnBandwidth; + return this; + } + + /** + * @param dnBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set + * + * @return builder + * + */ + public Builder dnBandwidth(Double dnBandwidth) { + return dnBandwidth(Output.of(dnBandwidth)); + } + + /** + * @param idleTimeInMinutes Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + * @return builder + * + */ + public Builder idleTimeInMinutes(@Nullable Output idleTimeInMinutes) { + $.idleTimeInMinutes = idleTimeInMinutes; return this; } - public Builder enforceAuthentication(Boolean enforceAuthentication) { - return enforceAuthentication(Output.of(enforceAuthentication)); + /** + * @param idleTimeInMinutes Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + * @return builder + * + */ + public Builder idleTimeInMinutes(Integer idleTimeInMinutes) { + return idleTimeInMinutes(Output.of(idleTimeInMinutes)); } - public Builder name(@Nullable Output name) { - $.name = name; + /** + * @param ofwEnabled if `true`, enable the firewall control option + * + * @return builder + * + */ + public Builder ofwEnabled(@Nullable Output ofwEnabled) { + $.ofwEnabled = ofwEnabled; return this; } - public Builder name(String name) { - return name(Output.of(name)); + /** + * @param ofwEnabled if `true`, enable the firewall control option + * + * @return builder + * + */ + public Builder ofwEnabled(Boolean ofwEnabled) { + return ofwEnabled(Output.of(ofwEnabled)); } /** - * @param subLocations if `use_xff`==`true` + * @param subLocations `sub-locations` can be used for specific uses cases to define different configuration based on the user network * * @return builder * @@ -338,7 +463,7 @@ public Builder subLocations(@Nullable Output surrogateIp) { + $.surrogateIp = surrogateIp; + return this; + } + + /** + * @param surrogateIp Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + * @return builder + * + */ + public Builder surrogateIp(Boolean surrogateIp) { + return surrogateIp(Output.of(surrogateIp)); + } + + /** + * @param surrogateIpEnforcedForKnownBrowsers Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + * @return builder + * + */ + public Builder surrogateIpEnforcedForKnownBrowsers(@Nullable Output surrogateIpEnforcedForKnownBrowsers) { + $.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + return this; + } + + /** + * @param surrogateIpEnforcedForKnownBrowsers Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + * @return builder + * + */ + public Builder surrogateIpEnforcedForKnownBrowsers(Boolean surrogateIpEnforcedForKnownBrowsers) { + return surrogateIpEnforcedForKnownBrowsers(Output.of(surrogateIpEnforcedForKnownBrowsers)); + } + + /** + * @param surrogateRefreshTimeInMinutes Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + * @return builder + * + */ + public Builder surrogateRefreshTimeInMinutes(@Nullable Output surrogateRefreshTimeInMinutes) { + $.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + return this; + } + + /** + * @param surrogateRefreshTimeInMinutes Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + * @return builder + * + */ + public Builder surrogateRefreshTimeInMinutes(Integer surrogateRefreshTimeInMinutes) { + return surrogateRefreshTimeInMinutes(Output.of(surrogateRefreshTimeInMinutes)); + } + + /** + * @param upBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder uploadMbps(@Nullable Output uploadMbps) { - $.uploadMbps = uploadMbps; + public Builder upBandwidth(@Nullable Output upBandwidth) { + $.upBandwidth = upBandwidth; return this; } /** - * @param uploadMbps the download bandwidth cap of the link, in Mbps + * @param upBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder uploadMbps(Integer uploadMbps) { - return uploadMbps(Output.of(uploadMbps)); + public Builder upBandwidth(Double upBandwidth) { + return upBandwidth(Output.of(upBandwidth)); } /** - * @param useXff location uses proxy chaining to forward traffic + * @param xffForwardEnabled location uses proxy chaining to forward traffic * * @return builder * */ - public Builder useXff(@Nullable Output useXff) { - $.useXff = useXff; + public Builder xffForwardEnabled(@Nullable Output xffForwardEnabled) { + $.xffForwardEnabled = xffForwardEnabled; return this; } /** - * @param useXff location uses proxy chaining to forward traffic + * @param xffForwardEnabled location uses proxy chaining to forward traffic * * @return builder * */ - public Builder useXff(Boolean useXff) { - return useXff(Output.of(useXff)); + public Builder xffForwardEnabled(Boolean xffForwardEnabled) { + return xffForwardEnabled(Output.of(xffForwardEnabled)); } public DeviceprofileGatewayTunnelProviderOptionsZscalerArgs build() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs.java index 04ec9b4d..51b7f155 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs.java @@ -6,9 +6,9 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; import java.lang.Boolean; +import java.lang.Double; import java.lang.Integer; import java.lang.String; -import java.util.List; import java.util.Objects; import java.util.Optional; import javax.annotation.Nullable; @@ -18,129 +18,225 @@ public final class DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationAr public static final DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs Empty = new DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs(); - @Import(name="aupAcceptanceRequired") - private @Nullable Output aupAcceptanceRequired; + @Import(name="aupBlockInternetUntilAccepted") + private @Nullable Output aupBlockInternetUntilAccepted; - public Optional> aupAcceptanceRequired() { - return Optional.ofNullable(this.aupAcceptanceRequired); + public Optional> aupBlockInternetUntilAccepted() { + return Optional.ofNullable(this.aupBlockInternetUntilAccepted); } /** - * days before AUP is requested again + * Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - @Import(name="aupExpire") - private @Nullable Output aupExpire; + @Import(name="aupEnabled") + private @Nullable Output aupEnabled; /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - public Optional> aupExpire() { - return Optional.ofNullable(this.aupExpire); + public Optional> aupEnabled() { + return Optional.ofNullable(this.aupEnabled); } /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - @Import(name="aupSslProxy") - private @Nullable Output aupSslProxy; + @Import(name="aupForceSslInspection") + private @Nullable Output aupForceSslInspection; /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - public Optional> aupSslProxy() { - return Optional.ofNullable(this.aupSslProxy); + public Optional> aupForceSslInspection() { + return Optional.ofNullable(this.aupForceSslInspection); } /** - * the download bandwidth cap of the link, in Mbps + * Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - @Import(name="downloadMbps") - private @Nullable Output downloadMbps; + @Import(name="aupTimeoutInDays") + private @Nullable Output aupTimeoutInDays; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - public Optional> downloadMbps() { - return Optional.ofNullable(this.downloadMbps); + public Optional> aupTimeoutInDays() { + return Optional.ofNullable(this.aupTimeoutInDays); } /** - * if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to authenticate users * */ - @Import(name="enableAup") - private @Nullable Output enableAup; + @Import(name="authRequired") + private @Nullable Output authRequired; /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Enable this option to authenticate users * */ - public Optional> enableAup() { - return Optional.ofNullable(this.enableAup); + public Optional> authRequired() { + return Optional.ofNullable(this.authRequired); } /** - * when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - @Import(name="enableCaution") - private @Nullable Output enableCaution; + @Import(name="cautionEnabled") + private @Nullable Output cautionEnabled; /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - public Optional> enableCaution() { - return Optional.ofNullable(this.enableCaution); + public Optional> cautionEnabled() { + return Optional.ofNullable(this.cautionEnabled); } - @Import(name="enforceAuthentication") - private @Nullable Output enforceAuthentication; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + @Import(name="dnBandwidth") + private @Nullable Output dnBandwidth; + + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional> dnBandwidth() { + return Optional.ofNullable(this.dnBandwidth); + } + + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + @Import(name="idleTimeInMinutes") + private @Nullable Output idleTimeInMinutes; + + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + public Optional> idleTimeInMinutes() { + return Optional.ofNullable(this.idleTimeInMinutes); + } + + /** + * Network name + * + */ + @Import(name="name") + private @Nullable Output name; - public Optional> enforceAuthentication() { - return Optional.ofNullable(this.enforceAuthentication); + /** + * @return Network name + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); } - @Import(name="subnets") - private @Nullable Output> subnets; + /** + * if `true`, enable the firewall control option + * + */ + @Import(name="ofwEnabled") + private @Nullable Output ofwEnabled; - public Optional>> subnets() { - return Optional.ofNullable(this.subnets); + /** + * @return if `true`, enable the firewall control option + * + */ + public Optional> ofwEnabled() { + return Optional.ofNullable(this.ofwEnabled); } /** - * the download bandwidth cap of the link, in Mbps + * Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies * */ - @Import(name="uploadMbps") - private @Nullable Output uploadMbps; + @Import(name="surrogateIp") + private @Nullable Output surrogateIp; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies * */ - public Optional> uploadMbps() { - return Optional.ofNullable(this.uploadMbps); + public Optional> surrogateIp() { + return Optional.ofNullable(this.surrogateIp); + } + + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + @Import(name="surrogateIpEnforcedForKnownBrowsers") + private @Nullable Output surrogateIpEnforcedForKnownBrowsers; + + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + public Optional> surrogateIpEnforcedForKnownBrowsers() { + return Optional.ofNullable(this.surrogateIpEnforcedForKnownBrowsers); + } + + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + @Import(name="surrogateRefreshTimeInMinutes") + private @Nullable Output surrogateRefreshTimeInMinutes; + + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + public Optional> surrogateRefreshTimeInMinutes() { + return Optional.ofNullable(this.surrogateRefreshTimeInMinutes); + } + + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + @Import(name="upBandwidth") + private @Nullable Output upBandwidth; + + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional> upBandwidth() { + return Optional.ofNullable(this.upBandwidth); } private DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs() {} private DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs(DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs $) { - this.aupAcceptanceRequired = $.aupAcceptanceRequired; - this.aupExpire = $.aupExpire; - this.aupSslProxy = $.aupSslProxy; - this.downloadMbps = $.downloadMbps; - this.enableAup = $.enableAup; - this.enableCaution = $.enableCaution; - this.enforceAuthentication = $.enforceAuthentication; - this.subnets = $.subnets; - this.uploadMbps = $.uploadMbps; + this.aupBlockInternetUntilAccepted = $.aupBlockInternetUntilAccepted; + this.aupEnabled = $.aupEnabled; + this.aupForceSslInspection = $.aupForceSslInspection; + this.aupTimeoutInDays = $.aupTimeoutInDays; + this.authRequired = $.authRequired; + this.cautionEnabled = $.cautionEnabled; + this.dnBandwidth = $.dnBandwidth; + this.idleTimeInMinutes = $.idleTimeInMinutes; + this.name = $.name; + this.ofwEnabled = $.ofwEnabled; + this.surrogateIp = $.surrogateIp; + this.surrogateIpEnforcedForKnownBrowsers = $.surrogateIpEnforcedForKnownBrowsers; + this.surrogateRefreshTimeInMinutes = $.surrogateRefreshTimeInMinutes; + this.upBandwidth = $.upBandwidth; } public static Builder builder() { @@ -161,161 +257,286 @@ public Builder(DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs d $ = new DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs(Objects.requireNonNull(defaults)); } - public Builder aupAcceptanceRequired(@Nullable Output aupAcceptanceRequired) { - $.aupAcceptanceRequired = aupAcceptanceRequired; + public Builder aupBlockInternetUntilAccepted(@Nullable Output aupBlockInternetUntilAccepted) { + $.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + return this; + } + + public Builder aupBlockInternetUntilAccepted(Boolean aupBlockInternetUntilAccepted) { + return aupBlockInternetUntilAccepted(Output.of(aupBlockInternetUntilAccepted)); + } + + /** + * @param aupEnabled Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + * + * @return builder + * + */ + public Builder aupEnabled(@Nullable Output aupEnabled) { + $.aupEnabled = aupEnabled; + return this; + } + + /** + * @param aupEnabled Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + * + * @return builder + * + */ + public Builder aupEnabled(Boolean aupEnabled) { + return aupEnabled(Output.of(aupEnabled)); + } + + /** + * @param aupForceSslInspection proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * + * @return builder + * + */ + public Builder aupForceSslInspection(@Nullable Output aupForceSslInspection) { + $.aupForceSslInspection = aupForceSslInspection; return this; } - public Builder aupAcceptanceRequired(Boolean aupAcceptanceRequired) { - return aupAcceptanceRequired(Output.of(aupAcceptanceRequired)); + /** + * @param aupForceSslInspection proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * + * @return builder + * + */ + public Builder aupForceSslInspection(Boolean aupForceSslInspection) { + return aupForceSslInspection(Output.of(aupForceSslInspection)); } /** - * @param aupExpire days before AUP is requested again + * @param aupTimeoutInDays Required if `aup_enabled`==`true`. Days before AUP is requested again * * @return builder * */ - public Builder aupExpire(@Nullable Output aupExpire) { - $.aupExpire = aupExpire; + public Builder aupTimeoutInDays(@Nullable Output aupTimeoutInDays) { + $.aupTimeoutInDays = aupTimeoutInDays; return this; } /** - * @param aupExpire days before AUP is requested again + * @param aupTimeoutInDays Required if `aup_enabled`==`true`. Days before AUP is requested again * * @return builder * */ - public Builder aupExpire(Integer aupExpire) { - return aupExpire(Output.of(aupExpire)); + public Builder aupTimeoutInDays(Integer aupTimeoutInDays) { + return aupTimeoutInDays(Output.of(aupTimeoutInDays)); } /** - * @param aupSslProxy proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * @param authRequired Enable this option to authenticate users * * @return builder * */ - public Builder aupSslProxy(@Nullable Output aupSslProxy) { - $.aupSslProxy = aupSslProxy; + public Builder authRequired(@Nullable Output authRequired) { + $.authRequired = authRequired; return this; } /** - * @param aupSslProxy proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * @param authRequired Enable this option to authenticate users * * @return builder * */ - public Builder aupSslProxy(Boolean aupSslProxy) { - return aupSslProxy(Output.of(aupSslProxy)); + public Builder authRequired(Boolean authRequired) { + return authRequired(Output.of(authRequired)); } /** - * @param downloadMbps the download bandwidth cap of the link, in Mbps + * @param cautionEnabled Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * * @return builder * */ - public Builder downloadMbps(@Nullable Output downloadMbps) { - $.downloadMbps = downloadMbps; + public Builder cautionEnabled(@Nullable Output cautionEnabled) { + $.cautionEnabled = cautionEnabled; return this; } /** - * @param downloadMbps the download bandwidth cap of the link, in Mbps + * @param cautionEnabled Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * * @return builder * */ - public Builder downloadMbps(Integer downloadMbps) { - return downloadMbps(Output.of(downloadMbps)); + public Builder cautionEnabled(Boolean cautionEnabled) { + return cautionEnabled(Output.of(cautionEnabled)); } /** - * @param enableAup if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @param dnBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder enableAup(@Nullable Output enableAup) { - $.enableAup = enableAup; + public Builder dnBandwidth(@Nullable Output dnBandwidth) { + $.dnBandwidth = dnBandwidth; return this; } /** - * @param enableAup if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @param dnBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder enableAup(Boolean enableAup) { - return enableAup(Output.of(enableAup)); + public Builder dnBandwidth(Double dnBandwidth) { + return dnBandwidth(Output.of(dnBandwidth)); } /** - * @param enableCaution when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @param idleTimeInMinutes Required if `surrogate_IP`==`true`, idle Time to Disassociation * * @return builder * */ - public Builder enableCaution(@Nullable Output enableCaution) { - $.enableCaution = enableCaution; + public Builder idleTimeInMinutes(@Nullable Output idleTimeInMinutes) { + $.idleTimeInMinutes = idleTimeInMinutes; return this; } /** - * @param enableCaution when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @param idleTimeInMinutes Required if `surrogate_IP`==`true`, idle Time to Disassociation * * @return builder * */ - public Builder enableCaution(Boolean enableCaution) { - return enableCaution(Output.of(enableCaution)); + public Builder idleTimeInMinutes(Integer idleTimeInMinutes) { + return idleTimeInMinutes(Output.of(idleTimeInMinutes)); } - public Builder enforceAuthentication(@Nullable Output enforceAuthentication) { - $.enforceAuthentication = enforceAuthentication; + /** + * @param name Network name + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; return this; } - public Builder enforceAuthentication(Boolean enforceAuthentication) { - return enforceAuthentication(Output.of(enforceAuthentication)); + /** + * @param name Network name + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); } - public Builder subnets(@Nullable Output> subnets) { - $.subnets = subnets; + /** + * @param ofwEnabled if `true`, enable the firewall control option + * + * @return builder + * + */ + public Builder ofwEnabled(@Nullable Output ofwEnabled) { + $.ofwEnabled = ofwEnabled; return this; } - public Builder subnets(List subnets) { - return subnets(Output.of(subnets)); + /** + * @param ofwEnabled if `true`, enable the firewall control option + * + * @return builder + * + */ + public Builder ofwEnabled(Boolean ofwEnabled) { + return ofwEnabled(Output.of(ofwEnabled)); } - public Builder subnets(String... subnets) { - return subnets(List.of(subnets)); + /** + * @param surrogateIp Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + * @return builder + * + */ + public Builder surrogateIp(@Nullable Output surrogateIp) { + $.surrogateIp = surrogateIp; + return this; + } + + /** + * @param surrogateIp Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + * @return builder + * + */ + public Builder surrogateIp(Boolean surrogateIp) { + return surrogateIp(Output.of(surrogateIp)); + } + + /** + * @param surrogateIpEnforcedForKnownBrowsers Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + * @return builder + * + */ + public Builder surrogateIpEnforcedForKnownBrowsers(@Nullable Output surrogateIpEnforcedForKnownBrowsers) { + $.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + return this; + } + + /** + * @param surrogateIpEnforcedForKnownBrowsers Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + * @return builder + * + */ + public Builder surrogateIpEnforcedForKnownBrowsers(Boolean surrogateIpEnforcedForKnownBrowsers) { + return surrogateIpEnforcedForKnownBrowsers(Output.of(surrogateIpEnforcedForKnownBrowsers)); + } + + /** + * @param surrogateRefreshTimeInMinutes Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + * @return builder + * + */ + public Builder surrogateRefreshTimeInMinutes(@Nullable Output surrogateRefreshTimeInMinutes) { + $.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + return this; + } + + /** + * @param surrogateRefreshTimeInMinutes Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + * @return builder + * + */ + public Builder surrogateRefreshTimeInMinutes(Integer surrogateRefreshTimeInMinutes) { + return surrogateRefreshTimeInMinutes(Output.of(surrogateRefreshTimeInMinutes)); } /** - * @param uploadMbps the download bandwidth cap of the link, in Mbps + * @param upBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder uploadMbps(@Nullable Output uploadMbps) { - $.uploadMbps = uploadMbps; + public Builder upBandwidth(@Nullable Output upBandwidth) { + $.upBandwidth = upBandwidth; return this; } /** - * @param uploadMbps the download bandwidth cap of the link, in Mbps + * @param upBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder uploadMbps(Integer uploadMbps) { - return uploadMbps(Output.of(uploadMbps)); + public Builder upBandwidth(Double upBandwidth) { + return upBandwidth(Output.of(upBandwidth)); } public DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs build() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateBgpConfigArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateBgpConfigArgs.java index c6df43e6..92d69aad 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateBgpConfigArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateBgpConfigArgs.java @@ -99,16 +99,14 @@ public Optional> exportPolicy() { } /** - * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * */ @Import(name="extendedV4Nexthop") private @Nullable Output extendedV4Nexthop; /** - * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * */ public Optional> extendedV4Nexthop() { @@ -436,8 +434,7 @@ public Builder exportPolicy(String exportPolicy) { } /** - * @param extendedV4Nexthop by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * @param extendedV4Nexthop by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * * @return builder * @@ -448,8 +445,7 @@ public Builder extendedV4Nexthop(@Nullable Output extendedV4Nexthop) { } /** - * @param extendedV4Nexthop by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * @param extendedV4Nexthop by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkArgs.java index 81fa2c57..44b72a08 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkArgs.java @@ -141,9 +141,17 @@ public Optional> subnet6() { return Optional.ofNullable(this.subnet6); } + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="tenants") private @Nullable Output> tenants; + /** + * @return Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ public Optional>> tenants() { return Optional.ofNullable(this.tenants); } @@ -376,11 +384,23 @@ public Builder subnet6(String subnet6) { return subnet6(Output.of(subnet6)); } + /** + * @param tenants Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder tenants(@Nullable Output> tenants) { $.tenants = tenants; return this; } + /** + * @param tenants Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder tenants(Map tenants) { return tenants(Output.of(tenants)); } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkInternetAccessArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkInternetAccessArgs.java index 54b44e97..29230796 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkInternetAccessArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkInternetAccessArgs.java @@ -27,14 +27,14 @@ public Optional> createSimpleServicePolicy() { } /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ @Import(name="destinationNat") private @Nullable Output> destinationNat; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Optional>> destinationNat() { @@ -64,14 +64,14 @@ public Optional> restricted() { } /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ @Import(name="staticNat") private @Nullable Output> staticNat; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Optional>> staticNat() { @@ -116,7 +116,7 @@ public Builder createSimpleServicePolicy(Boolean createSimpleServicePolicy) { } /** - * @param destinationNat Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @param destinationNat Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * * @return builder * @@ -127,7 +127,7 @@ public Builder destinationNat(@Nullable Output internalIp; + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional> internalIp() { return Optional.ofNullable(this.internalIp); } @@ -30,19 +37,43 @@ public Optional> name() { return Optional.ofNullable(this.name); } + /** + * The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="port") - private @Nullable Output port; + private @Nullable Output port; - public Optional> port() { + /** + * @return The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ + public Optional> port() { return Optional.ofNullable(this.port); } + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + @Import(name="wanName") + private @Nullable Output wanName; + + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + public Optional> wanName() { + return Optional.ofNullable(this.wanName); + } + private GatewaytemplateNetworkInternetAccessDestinationNatArgs() {} private GatewaytemplateNetworkInternetAccessDestinationNatArgs(GatewaytemplateNetworkInternetAccessDestinationNatArgs $) { this.internalIp = $.internalIp; this.name = $.name; this.port = $.port; + this.wanName = $.wanName; } public static Builder builder() { @@ -63,11 +94,23 @@ public Builder(GatewaytemplateNetworkInternetAccessDestinationNatArgs defaults) $ = new GatewaytemplateNetworkInternetAccessDestinationNatArgs(Objects.requireNonNull(defaults)); } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(@Nullable Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } @@ -81,15 +124,48 @@ public Builder name(String name) { return name(Output.of(name)); } - public Builder port(@Nullable Output port) { + /** + * @param port The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder port(@Nullable Output port) { $.port = port; return this; } - public Builder port(Integer port) { + /** + * @param port The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder port(String port) { return port(Output.of(port)); } + /** + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + * @return builder + * + */ + public Builder wanName(@Nullable Output wanName) { + $.wanName = wanName; + return this; + } + + /** + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + * @return builder + * + */ + public Builder wanName(String wanName) { + return wanName(Output.of(wanName)); + } + public GatewaytemplateNetworkInternetAccessDestinationNatArgs build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkInternetAccessStaticNatArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkInternetAccessStaticNatArgs.java index f85cbb99..e69960fa 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkInternetAccessStaticNatArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkInternetAccessStaticNatArgs.java @@ -5,6 +5,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -15,29 +16,37 @@ public final class GatewaytemplateNetworkInternetAccessStaticNatArgs extends com public static final GatewaytemplateNetworkInternetAccessStaticNatArgs Empty = new GatewaytemplateNetworkInternetAccessStaticNatArgs(); - @Import(name="internalIp") - private @Nullable Output internalIp; + /** + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + @Import(name="internalIp", required=true) + private Output internalIp; - public Optional> internalIp() { - return Optional.ofNullable(this.internalIp); + /** + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + public Output internalIp() { + return this.internalIp; } - @Import(name="name") - private @Nullable Output name; + @Import(name="name", required=true) + private Output name; - public Optional> name() { - return Optional.ofNullable(this.name); + public Output name() { + return this.name; } /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ @Import(name="wanName") private @Nullable Output wanName; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ public Optional> wanName() { @@ -70,16 +79,28 @@ public Builder(GatewaytemplateNetworkInternetAccessStaticNatArgs defaults) { $ = new GatewaytemplateNetworkInternetAccessStaticNatArgs(Objects.requireNonNull(defaults)); } - public Builder internalIp(@Nullable Output internalIp) { + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder internalIp(Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } - public Builder name(@Nullable Output name) { + public Builder name(Output name) { $.name = name; return this; } @@ -89,7 +110,7 @@ public Builder name(String name) { } /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * * @return builder * @@ -100,7 +121,7 @@ public Builder wanName(@Nullable Output wanName) { } /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * * @return builder * @@ -110,6 +131,12 @@ public Builder wanName(String wanName) { } public GatewaytemplateNetworkInternetAccessStaticNatArgs build() { + if ($.internalIp == null) { + throw new MissingRequiredPropertyException("GatewaytemplateNetworkInternetAccessStaticNatArgs", "internalIp"); + } + if ($.name == null) { + throw new MissingRequiredPropertyException("GatewaytemplateNetworkInternetAccessStaticNatArgs", "name"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkVpnAccessArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkVpnAccessArgs.java index 4feffb96..d8a1469a 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkVpnAccessArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkVpnAccessArgs.java @@ -52,14 +52,14 @@ public Optional> allowPing() { } /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ @Import(name="destinationNat") private @Nullable Output> destinationNat; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Optional>> destinationNat() { @@ -112,16 +112,14 @@ public Optional> noReadvertiseToLanOspf() { } /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes * */ @Import(name="noReadvertiseToOverlay") private @Nullable Output noReadvertiseToOverlay; /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ public Optional> noReadvertiseToOverlay() { @@ -129,16 +127,14 @@ public Optional> noReadvertiseToOverlay() { } /** - * by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * */ @Import(name="otherVrfs") private @Nullable Output> otherVrfs; /** - * @return by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @return by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * */ public Optional>> otherVrfs() { @@ -176,14 +172,14 @@ public Optional> sourceNat( } /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ @Import(name="staticNat") private @Nullable Output> staticNat; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Optional>> staticNat() { @@ -191,16 +187,14 @@ public Optional> } /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes * */ @Import(name="summarizedSubnet") private @Nullable Output summarizedSubnet; /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ public Optional> summarizedSubnet() { @@ -317,7 +311,7 @@ public Builder allowPing(Boolean allowPing) { } /** - * @param destinationNat Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @param destinationNat Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * * @return builder * @@ -328,7 +322,7 @@ public Builder destinationNat(@Nullable Output noReadvertiseToO } /** - * @param noReadvertiseToOverlay toward overlay - * how HUB should deal with routes it received from Spokes + * @param noReadvertiseToOverlay toward overlay, how HUB should deal with routes it received from Spokes * * @return builder * @@ -424,8 +416,7 @@ public Builder noReadvertiseToOverlay(Boolean noReadvertiseToOverlay) { } /** - * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * * @return builder * @@ -436,8 +427,7 @@ public Builder otherVrfs(@Nullable Output> otherVrfs) { } /** - * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * * @return builder * @@ -447,8 +437,7 @@ public Builder otherVrfs(List otherVrfs) { } /** - * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @param otherVrfs by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * * @return builder * @@ -500,7 +489,7 @@ public Builder sourceNat(GatewaytemplateNetworkVpnAccessSourceNatArgs sourceNat) } /** - * @param staticNat Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @param staticNat Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * * @return builder * @@ -511,7 +500,7 @@ public Builder staticNat(@Nullable Output summarizedSubnet) { } /** - * @param summarizedSubnet toward overlay - * how HUB should deal with routes it received from Spokes + * @param summarizedSubnet toward overlay, how HUB should deal with routes it received from Spokes * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkVpnAccessDestinationNatArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkVpnAccessDestinationNatArgs.java index c9a3121b..96849767 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkVpnAccessDestinationNatArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkVpnAccessDestinationNatArgs.java @@ -5,7 +5,6 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; -import java.lang.Integer; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -16,9 +15,17 @@ public final class GatewaytemplateNetworkVpnAccessDestinationNatArgs extends com public static final GatewaytemplateNetworkVpnAccessDestinationNatArgs Empty = new GatewaytemplateNetworkVpnAccessDestinationNatArgs(); + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="internalIp") private @Nullable Output internalIp; + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional> internalIp() { return Optional.ofNullable(this.internalIp); } @@ -31,9 +38,9 @@ public Optional> name() { } @Import(name="port") - private @Nullable Output port; + private @Nullable Output port; - public Optional> port() { + public Optional> port() { return Optional.ofNullable(this.port); } @@ -63,11 +70,23 @@ public Builder(GatewaytemplateNetworkVpnAccessDestinationNatArgs defaults) { $ = new GatewaytemplateNetworkVpnAccessDestinationNatArgs(Objects.requireNonNull(defaults)); } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(@Nullable Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } @@ -81,12 +100,12 @@ public Builder name(String name) { return name(Output.of(name)); } - public Builder port(@Nullable Output port) { + public Builder port(@Nullable Output port) { $.port = port; return this; } - public Builder port(Integer port) { + public Builder port(String port) { return port(Output.of(port)); } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkVpnAccessStaticNatArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkVpnAccessStaticNatArgs.java index 02254e46..3428aae1 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkVpnAccessStaticNatArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateNetworkVpnAccessStaticNatArgs.java @@ -5,43 +5,35 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; -import java.util.Optional; -import javax.annotation.Nullable; public final class GatewaytemplateNetworkVpnAccessStaticNatArgs extends com.pulumi.resources.ResourceArgs { public static final GatewaytemplateNetworkVpnAccessStaticNatArgs Empty = new GatewaytemplateNetworkVpnAccessStaticNatArgs(); - @Import(name="internalIp") - private @Nullable Output internalIp; - - public Optional> internalIp() { - return Optional.ofNullable(this.internalIp); - } - - @Import(name="name") - private @Nullable Output name; - - public Optional> name() { - return Optional.ofNullable(this.name); - } - /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - @Import(name="wanName") - private @Nullable Output wanName; + @Import(name="internalIp", required=true) + private Output internalIp; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - public Optional> wanName() { - return Optional.ofNullable(this.wanName); + public Output internalIp() { + return this.internalIp; + } + + @Import(name="name", required=true) + private Output name; + + public Output name() { + return this.name; } private GatewaytemplateNetworkVpnAccessStaticNatArgs() {} @@ -49,7 +41,6 @@ private GatewaytemplateNetworkVpnAccessStaticNatArgs() {} private GatewaytemplateNetworkVpnAccessStaticNatArgs(GatewaytemplateNetworkVpnAccessStaticNatArgs $) { this.internalIp = $.internalIp; this.name = $.name; - this.wanName = $.wanName; } public static Builder builder() { @@ -70,16 +61,28 @@ public Builder(GatewaytemplateNetworkVpnAccessStaticNatArgs defaults) { $ = new GatewaytemplateNetworkVpnAccessStaticNatArgs(Objects.requireNonNull(defaults)); } - public Builder internalIp(@Nullable Output internalIp) { + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder internalIp(Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } - public Builder name(@Nullable Output name) { + public Builder name(Output name) { $.name = name; return this; } @@ -88,28 +91,13 @@ public Builder name(String name) { return name(Output.of(name)); } - /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity - * - * @return builder - * - */ - public Builder wanName(@Nullable Output wanName) { - $.wanName = wanName; - return this; - } - - /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity - * - * @return builder - * - */ - public Builder wanName(String wanName) { - return wanName(Output.of(wanName)); - } - public GatewaytemplateNetworkVpnAccessStaticNatArgs build() { + if ($.internalIp == null) { + throw new MissingRequiredPropertyException("GatewaytemplateNetworkVpnAccessStaticNatArgs", "internalIp"); + } + if ($.name == null) { + throw new MissingRequiredPropertyException("GatewaytemplateNetworkVpnAccessStaticNatArgs", "name"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigArgs.java index 041e34b9..2bd6d5b6 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigArgs.java @@ -57,18 +57,14 @@ public Optional> aeIdx() { } /** - * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * */ @Import(name="aeLacpForceUp") private @Nullable Output aeLacpForceUp; /** - * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * */ public Optional> aeLacpForceUp() { @@ -97,9 +93,17 @@ public Optional> critical() { return Optional.ofNullable(this.critical); } + /** + * Interface Description. Can be a variable (i.e. "{{myvar}}") + * + */ @Import(name="description") private @Nullable Output description; + /** + * @return Interface Description. Can be a variable (i.e. "{{myvar}}") + * + */ public Optional> description() { return Optional.ofNullable(this.description); } @@ -142,16 +146,14 @@ public Optional> dslType() { } /** - * if `wan_type`==`dsl` - * 16 bit int + * if `wan_type`==`dsl`, 16 bit int * */ @Import(name="dslVci") private @Nullable Output dslVci; /** - * @return if `wan_type`==`dsl` - * 16 bit int + * @return if `wan_type`==`dsl`, 16 bit int * */ public Optional> dslVci() { @@ -159,16 +161,14 @@ public Optional> dslVci() { } /** - * if `wan_type`==`dsl` - * 8 bit int + * if `wan_type`==`dsl`, 8 bit int * */ @Import(name="dslVpi") private @Nullable Output dslVpi; /** - * @return if `wan_type`==`dsl` - * 8 bit int + * @return if `wan_type`==`dsl`, 8 bit int * */ public Optional> dslVpi() { @@ -295,14 +295,14 @@ public Optional> name() { } /** - * if `usage`==`lan` + * if `usage`==`lan`, name of the `junipermist.org.Network` resource * */ @Import(name="networks") private @Nullable Output> networks; /** - * @return if `usage`==`lan` + * @return if `usage`==`lan`, name of the `junipermist.org.Network` resource * */ public Optional>> networks() { @@ -332,14 +332,14 @@ public Optional> poeDisabled() { } /** - * if `usage`==`lan` + * Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * */ @Import(name="portNetwork") private @Nullable Output portNetwork; /** - * @return if `usage`==`lan` + * @return Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * */ public Optional> portNetwork() { @@ -480,18 +480,10 @@ public Output usage() { return this.usage; } - /** - * if WAN interface is on a VLAN - * - */ @Import(name="vlanId") - private @Nullable Output vlanId; + private @Nullable Output vlanId; - /** - * @return if WAN interface is on a VLAN - * - */ - public Optional> vlanId() { + public Optional> vlanId() { return Optional.ofNullable(this.vlanId); } @@ -511,14 +503,14 @@ public Optional>> vpnPa } /** - * when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * */ @Import(name="wanArpPolicer") private @Nullable Output wanArpPolicer; /** - * @return when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @return Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * */ public Optional> wanArpPolicer() { @@ -526,14 +518,14 @@ public Optional> wanArpPolicer() { } /** - * optional, if spoke should reach this port by a different IP + * Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * */ @Import(name="wanExtIp") private @Nullable Output wanExtIp; /** - * @return optional, if spoke should reach this port by a different IP + * @return Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * */ public Optional> wanExtIp() { @@ -541,14 +533,14 @@ public Optional> wanExtIp() { } /** - * Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * */ @Import(name="wanExtraRoutes") private @Nullable Output> wanExtraRoutes; /** - * @return Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * @return Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * */ public Optional>> wanExtraRoutes() { @@ -556,14 +548,29 @@ public Optional>> } /** - * if `usage`==`wan` + * Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + */ + @Import(name="wanNetworks") + private @Nullable Output> wanNetworks; + + /** + * @return Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + */ + public Optional>> wanNetworks() { + return Optional.ofNullable(this.wanNetworks); + } + + /** + * Only if `usage`==`wan` * */ @Import(name="wanProbeOverride") private @Nullable Output wanProbeOverride; /** - * @return if `usage`==`wan` + * @return Only if `usage`==`wan` * */ public Optional> wanProbeOverride() { @@ -571,14 +578,14 @@ public Optional> wanProbeO } /** - * optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip * */ @Import(name="wanSourceNat") private @Nullable Output wanSourceNat; /** - * @return optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * @return Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip * */ public Optional> wanSourceNat() { @@ -586,14 +593,14 @@ public Optional> wanSourceNat( } /** - * if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * */ @Import(name="wanType") private @Nullable Output wanType; /** - * @return if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * @return Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * */ public Optional> wanType() { @@ -642,6 +649,7 @@ private GatewaytemplatePortConfigArgs(GatewaytemplatePortConfigArgs $) { this.wanArpPolicer = $.wanArpPolicer; this.wanExtIp = $.wanExtIp; this.wanExtraRoutes = $.wanExtraRoutes; + this.wanNetworks = $.wanNetworks; this.wanProbeOverride = $.wanProbeOverride; this.wanSourceNat = $.wanSourceNat; this.wanType = $.wanType; @@ -708,9 +716,7 @@ public Builder aeIdx(String aeIdx) { } /** - * @param aeLacpForceUp For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @param aeLacpForceUp For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * * @return builder * @@ -721,9 +727,7 @@ public Builder aeLacpForceUp(@Nullable Output aeLacpForceUp) { } /** - * @param aeLacpForceUp For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @param aeLacpForceUp For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * * @return builder * @@ -762,11 +766,23 @@ public Builder critical(Boolean critical) { return critical(Output.of(critical)); } + /** + * @param description Interface Description. Can be a variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder description(@Nullable Output description) { $.description = description; return this; } + /** + * @param description Interface Description. Can be a variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder description(String description) { return description(Output.of(description)); } @@ -823,8 +839,7 @@ public Builder dslType(String dslType) { } /** - * @param dslVci if `wan_type`==`dsl` - * 16 bit int + * @param dslVci if `wan_type`==`dsl`, 16 bit int * * @return builder * @@ -835,8 +850,7 @@ public Builder dslVci(@Nullable Output dslVci) { } /** - * @param dslVci if `wan_type`==`dsl` - * 16 bit int + * @param dslVci if `wan_type`==`dsl`, 16 bit int * * @return builder * @@ -846,8 +860,7 @@ public Builder dslVci(Integer dslVci) { } /** - * @param dslVpi if `wan_type`==`dsl` - * 8 bit int + * @param dslVpi if `wan_type`==`dsl`, 8 bit int * * @return builder * @@ -858,8 +871,7 @@ public Builder dslVpi(@Nullable Output dslVpi) { } /** - * @param dslVpi if `wan_type`==`dsl` - * 8 bit int + * @param dslVpi if `wan_type`==`dsl`, 8 bit int * * @return builder * @@ -1034,7 +1046,7 @@ public Builder name(String name) { } /** - * @param networks if `usage`==`lan` + * @param networks if `usage`==`lan`, name of the `junipermist.org.Network` resource * * @return builder * @@ -1045,7 +1057,7 @@ public Builder networks(@Nullable Output> networks) { } /** - * @param networks if `usage`==`lan` + * @param networks if `usage`==`lan`, name of the `junipermist.org.Network` resource * * @return builder * @@ -1055,7 +1067,7 @@ public Builder networks(List networks) { } /** - * @param networks if `usage`==`lan` + * @param networks if `usage`==`lan`, name of the `junipermist.org.Network` resource * * @return builder * @@ -1095,7 +1107,7 @@ public Builder poeDisabled(Boolean poeDisabled) { } /** - * @param portNetwork if `usage`==`lan` + * @param portNetwork Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * * @return builder * @@ -1106,7 +1118,7 @@ public Builder portNetwork(@Nullable Output portNetwork) { } /** - * @param portNetwork if `usage`==`lan` + * @param portNetwork Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * * @return builder * @@ -1311,24 +1323,12 @@ public Builder usage(String usage) { return usage(Output.of(usage)); } - /** - * @param vlanId if WAN interface is on a VLAN - * - * @return builder - * - */ - public Builder vlanId(@Nullable Output vlanId) { + public Builder vlanId(@Nullable Output vlanId) { $.vlanId = vlanId; return this; } - /** - * @param vlanId if WAN interface is on a VLAN - * - * @return builder - * - */ - public Builder vlanId(Integer vlanId) { + public Builder vlanId(String vlanId) { return vlanId(Output.of(vlanId)); } @@ -1354,7 +1354,7 @@ public Builder vpnPaths(Map vpnPat } /** - * @param wanArpPolicer when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @param wanArpPolicer Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * * @return builder * @@ -1365,7 +1365,7 @@ public Builder wanArpPolicer(@Nullable Output wanArpPolicer) { } /** - * @param wanArpPolicer when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @param wanArpPolicer Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * * @return builder * @@ -1375,7 +1375,7 @@ public Builder wanArpPolicer(String wanArpPolicer) { } /** - * @param wanExtIp optional, if spoke should reach this port by a different IP + * @param wanExtIp Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * * @return builder * @@ -1386,7 +1386,7 @@ public Builder wanExtIp(@Nullable Output wanExtIp) { } /** - * @param wanExtIp optional, if spoke should reach this port by a different IP + * @param wanExtIp Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * * @return builder * @@ -1396,7 +1396,7 @@ public Builder wanExtIp(String wanExtIp) { } /** - * @param wanExtraRoutes Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * @param wanExtraRoutes Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * * @return builder * @@ -1407,7 +1407,7 @@ public Builder wanExtraRoutes(@Nullable Output> wanNetworks) { + $.wanNetworks = wanNetworks; + return this; + } + + /** + * @param wanNetworks Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + * @return builder + * + */ + public Builder wanNetworks(List wanNetworks) { + return wanNetworks(Output.of(wanNetworks)); + } + + /** + * @param wanNetworks Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + * @return builder + * + */ + public Builder wanNetworks(String... wanNetworks) { + return wanNetworks(List.of(wanNetworks)); + } + + /** + * @param wanProbeOverride Only if `usage`==`wan` * * @return builder * @@ -1428,7 +1459,7 @@ public Builder wanProbeOverride(@Nullable Output wanType) { } /** - * @param wanType if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * @param wanType Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigIpConfigArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigIpConfigArgs.java index 2d2372a1..6cff3749 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigIpConfigArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigIpConfigArgs.java @@ -47,36 +47,44 @@ public Optional>> dnsSuffixes() { } /** - * except for out-of_band interface (vme/em0/fxp0) + * except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * */ @Import(name="gateway") private @Nullable Output gateway; /** - * @return except for out-of_band interface (vme/em0/fxp0) + * @return except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * */ public Optional> gateway() { return Optional.ofNullable(this.gateway); } + /** + * Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="ip") private @Nullable Output ip; + /** + * @return Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + */ public Optional> ip() { return Optional.ofNullable(this.ip); } /** - * used only if `subnet` is not specified in `networks` + * used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * */ @Import(name="netmask") private @Nullable Output netmask; /** - * @return used only if `subnet` is not specified in `networks` + * @return used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * */ public Optional> netmask() { @@ -254,7 +262,7 @@ public Builder dnsSuffixes(String... dnsSuffixes) { } /** - * @param gateway except for out-of_band interface (vme/em0/fxp0) + * @param gateway except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * * @return builder * @@ -265,7 +273,7 @@ public Builder gateway(@Nullable Output gateway) { } /** - * @param gateway except for out-of_band interface (vme/em0/fxp0) + * @param gateway except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * * @return builder * @@ -274,17 +282,29 @@ public Builder gateway(String gateway) { return gateway(Output.of(gateway)); } + /** + * @param ip Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder ip(@Nullable Output ip) { $.ip = ip; return this; } + /** + * @param ip Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder ip(String ip) { return ip(Output.of(ip)); } /** - * @param netmask used only if `subnet` is not specified in `networks` + * @param netmask used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * * @return builder * @@ -295,7 +315,7 @@ public Builder netmask(@Nullable Output netmask) { } /** - * @param netmask used only if `subnet` is not specified in `networks` + * @param netmask used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigTrafficShapingArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigTrafficShapingArgs.java index b4d2a4eb..7449f540 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigTrafficShapingArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigTrafficShapingArgs.java @@ -18,16 +18,14 @@ public final class GatewaytemplatePortConfigTrafficShapingArgs extends com.pulum public static final GatewaytemplatePortConfigTrafficShapingArgs Empty = new GatewaytemplatePortConfigTrafficShapingArgs(); /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ @Import(name="classPercentages") private @Nullable Output> classPercentages; /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ public Optional>> classPercentages() { @@ -41,11 +39,27 @@ public Optional> enabled() { return Optional.ofNullable(this.enabled); } + /** + * Interface Transmit Cap in kbps + * + */ + @Import(name="maxTxKbps") + private @Nullable Output maxTxKbps; + + /** + * @return Interface Transmit Cap in kbps + * + */ + public Optional> maxTxKbps() { + return Optional.ofNullable(this.maxTxKbps); + } + private GatewaytemplatePortConfigTrafficShapingArgs() {} private GatewaytemplatePortConfigTrafficShapingArgs(GatewaytemplatePortConfigTrafficShapingArgs $) { this.classPercentages = $.classPercentages; this.enabled = $.enabled; + this.maxTxKbps = $.maxTxKbps; } public static Builder builder() { @@ -67,8 +81,7 @@ public Builder(GatewaytemplatePortConfigTrafficShapingArgs defaults) { } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -79,8 +92,7 @@ public Builder classPercentages(@Nullable Output> classPercentages } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -90,8 +102,7 @@ public Builder classPercentages(List classPercentages) { } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -109,6 +120,27 @@ public Builder enabled(Boolean enabled) { return enabled(Output.of(enabled)); } + /** + * @param maxTxKbps Interface Transmit Cap in kbps + * + * @return builder + * + */ + public Builder maxTxKbps(@Nullable Output maxTxKbps) { + $.maxTxKbps = maxTxKbps; + return this; + } + + /** + * @param maxTxKbps Interface Transmit Cap in kbps + * + * @return builder + * + */ + public Builder maxTxKbps(Integer maxTxKbps) { + return maxTxKbps(Output.of(maxTxKbps)); + } + public GatewaytemplatePortConfigTrafficShapingArgs build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigVpnPathsTrafficShapingArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigVpnPathsTrafficShapingArgs.java index 4dac87cb..895be6f5 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigVpnPathsTrafficShapingArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplatePortConfigVpnPathsTrafficShapingArgs.java @@ -18,16 +18,14 @@ public final class GatewaytemplatePortConfigVpnPathsTrafficShapingArgs extends c public static final GatewaytemplatePortConfigVpnPathsTrafficShapingArgs Empty = new GatewaytemplatePortConfigVpnPathsTrafficShapingArgs(); /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ @Import(name="classPercentages") private @Nullable Output> classPercentages; /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ public Optional>> classPercentages() { @@ -41,11 +39,27 @@ public Optional> enabled() { return Optional.ofNullable(this.enabled); } + /** + * Interface Transmit Cap in kbps + * + */ + @Import(name="maxTxKbps") + private @Nullable Output maxTxKbps; + + /** + * @return Interface Transmit Cap in kbps + * + */ + public Optional> maxTxKbps() { + return Optional.ofNullable(this.maxTxKbps); + } + private GatewaytemplatePortConfigVpnPathsTrafficShapingArgs() {} private GatewaytemplatePortConfigVpnPathsTrafficShapingArgs(GatewaytemplatePortConfigVpnPathsTrafficShapingArgs $) { this.classPercentages = $.classPercentages; this.enabled = $.enabled; + this.maxTxKbps = $.maxTxKbps; } public static Builder builder() { @@ -67,8 +81,7 @@ public Builder(GatewaytemplatePortConfigVpnPathsTrafficShapingArgs defaults) { } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -79,8 +92,7 @@ public Builder classPercentages(@Nullable Output> classPercentages } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -90,8 +102,7 @@ public Builder classPercentages(List classPercentages) { } /** - * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @param classPercentages percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * * @return builder * @@ -109,6 +120,27 @@ public Builder enabled(Boolean enabled) { return enabled(Output.of(enabled)); } + /** + * @param maxTxKbps Interface Transmit Cap in kbps + * + * @return builder + * + */ + public Builder maxTxKbps(@Nullable Output maxTxKbps) { + $.maxTxKbps = maxTxKbps; + return this; + } + + /** + * @param maxTxKbps Interface Transmit Cap in kbps + * + * @return builder + * + */ + public Builder maxTxKbps(Integer maxTxKbps) { + return maxTxKbps(Output.of(maxTxKbps)); + } + public GatewaytemplatePortConfigVpnPathsTrafficShapingArgs build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateRoutingPoliciesTermActionArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateRoutingPoliciesTermActionArgs.java index 1a5ffd49..259e131b 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateRoutingPoliciesTermActionArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateRoutingPoliciesTermActionArgs.java @@ -46,6 +46,21 @@ public Optional>> addTargetVrfs() { return Optional.ofNullable(this.addTargetVrfs); } + /** + * route aggregation + * + */ + @Import(name="aggregates") + private @Nullable Output> aggregates; + + /** + * @return route aggregation + * + */ + public Optional>> aggregates() { + return Optional.ofNullable(this.aggregates); + } + /** * when used as export policy, optional * @@ -134,6 +149,7 @@ private GatewaytemplateRoutingPoliciesTermActionArgs(GatewaytemplateRoutingPolic this.accept = $.accept; this.addCommunities = $.addCommunities; this.addTargetVrfs = $.addTargetVrfs; + this.aggregates = $.aggregates; this.communities = $.communities; this.excludeAsPaths = $.excludeAsPaths; this.excludeCommunities = $.excludeCommunities; @@ -213,6 +229,37 @@ public Builder addTargetVrfs(String... addTargetVrfs) { return addTargetVrfs(List.of(addTargetVrfs)); } + /** + * @param aggregates route aggregation + * + * @return builder + * + */ + public Builder aggregates(@Nullable Output> aggregates) { + $.aggregates = aggregates; + return this; + } + + /** + * @param aggregates route aggregation + * + * @return builder + * + */ + public Builder aggregates(List aggregates) { + return aggregates(Output.of(aggregates)); + } + + /** + * @param aggregates route aggregation + * + * @return builder + * + */ + public Builder aggregates(String... aggregates) { + return aggregates(List.of(aggregates)); + } + /** * @param communities when used as export policy, optional * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateRoutingPoliciesTermMatchingArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateRoutingPoliciesTermMatchingArgs.java index 671959e0..1cbbd51c 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateRoutingPoliciesTermMatchingArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateRoutingPoliciesTermMatchingArgs.java @@ -107,16 +107,14 @@ public Optional } /** - * overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * overlay-facing criteria (used for bgp_config where via=vpn). ordered- * */ @Import(name="vpnPaths") private @Nullable Output> vpnPaths; /** - * @return overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @return overlay-facing criteria (used for bgp_config where via=vpn). ordered- * */ public Optional>> vpnPaths() { @@ -324,8 +322,7 @@ public Builder vpnPathSla(GatewaytemplateRoutingPoliciesTermMatchingVpnPathSlaAr } /** - * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn). ordered- * * @return builder * @@ -336,8 +333,7 @@ public Builder vpnPaths(@Nullable Output> vpnPaths) { } /** - * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn). ordered- * * @return builder * @@ -347,8 +343,7 @@ public Builder vpnPaths(List vpnPaths) { } /** - * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @param vpnPaths overlay-facing criteria (used for bgp_config where via=vpn). ordered- * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExistsArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExistsArgs.java index ba0a43d1..6b08eeb5 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExistsArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExistsArgs.java @@ -23,16 +23,14 @@ public Optional> route() { } /** - * name of the vrf instance - * it can also be the name of the VPN or wan if they + * name of the vrf instance, it can also be the name of the VPN or wan if they * */ @Import(name="vrfName") private @Nullable Output vrfName; /** - * @return name of the vrf instance - * it can also be the name of the VPN or wan if they + * @return name of the vrf instance, it can also be the name of the VPN or wan if they * */ public Optional> vrfName() { @@ -74,8 +72,7 @@ public Builder route(String route) { } /** - * @param vrfName name of the vrf instance - * it can also be the name of the VPN or wan if they + * @param vrfName name of the vrf instance, it can also be the name of the VPN or wan if they * * @return builder * @@ -86,8 +83,7 @@ public Builder vrfName(@Nullable Output vrfName) { } /** - * @param vrfName name of the vrf instance - * it can also be the name of the VPN or wan if they + * @param vrfName name of the vrf instance, it can also be the name of the VPN or wan if they * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateServicePolicyArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateServicePolicyArgs.java index 81237951..cc2ff346 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateServicePolicyArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateServicePolicyArgs.java @@ -95,16 +95,14 @@ public Optional> name() { } /** - * by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * */ @Import(name="pathPreference") private @Nullable Output pathPreference; /** - * @return by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @return by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * */ public Optional> pathPreference() { @@ -296,8 +294,7 @@ public Builder name(String name) { } /** - * @param pathPreference by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @param pathPreference by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * * @return builder * @@ -308,8 +305,7 @@ public Builder pathPreference(@Nullable Output pathPreference) { } /** - * @param pathPreference by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @param pathPreference by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateState.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateState.java index ad8eea3d..f0dfd606 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateState.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateState.java @@ -35,14 +35,14 @@ public final class GatewaytemplateState extends com.pulumi.resources.ResourceArg public static final GatewaytemplateState Empty = new GatewaytemplateState(); /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ @Import(name="additionalConfigCmds") private @Nullable Output> additionalConfigCmds; /** - * @return additional CLI commands to append to the generated Junos config **Note**: no check is done + * @return additional CLI commands to append to the generated Junos config. **Note**: no check is done * */ public Optional>> additionalConfigCmds() { @@ -234,14 +234,16 @@ public Optional>> pathPref } /** - * Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + * Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + * "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). * */ @Import(name="portConfig") private @Nullable Output> portConfig; /** - * @return Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + * @return Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + * "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). * */ public Optional>> portConfig() { @@ -394,7 +396,7 @@ public Builder(GatewaytemplateState defaults) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -405,7 +407,7 @@ public Builder additionalConfigCmds(@Nullable Output> additionalCon } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -415,7 +417,7 @@ public Builder additionalConfigCmds(List additionalConfigCmds) { } /** - * @param additionalConfigCmds additional CLI commands to append to the generated Junos config **Note**: no check is done + * @param additionalConfigCmds additional CLI commands to append to the generated Junos config. **Note**: no check is done * * @return builder * @@ -711,7 +713,8 @@ public Builder pathPreferences(Map pa } /** - * @param portConfig Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + * @param portConfig Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + * "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). * * @return builder * @@ -722,7 +725,8 @@ public Builder portConfig(@Nullable Output> autoProvi } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ @Import(name="ikeLifetime") private @Nullable Output ikeLifetime; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ public Optional> ikeLifetime() { @@ -46,14 +46,14 @@ public Optional> ikeLifetime() { } /** - * Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * */ @Import(name="ikeMode") private @Nullable Output ikeMode; /** - * @return Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @return Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * */ public Optional> ikeMode() { @@ -61,14 +61,14 @@ public Optional> ikeMode() { } /** - * if `provider`== `custom-ipsec` + * if `provider`==`custom-ipsec` * */ @Import(name="ikeProposals") private @Nullable Output> ikeProposals; /** - * @return if `provider`== `custom-ipsec` + * @return if `provider`==`custom-ipsec` * */ public Optional>> ikeProposals() { @@ -76,14 +76,14 @@ public Optional>> ikePr } /** - * if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ @Import(name="ipsecLifetime") private @Nullable Output ipsecLifetime; /** - * @return if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ public Optional> ipsecLifetime() { @@ -91,14 +91,14 @@ public Optional> ipsecLifetime() { } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` * */ @Import(name="ipsecProposals") private @Nullable Output> ipsecProposals; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ public Optional>> ipsecProposals() { @@ -106,20 +106,14 @@ public Optional>> ips } /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ @Import(name="localId") private @Nullable Output localId; /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional> localId() { @@ -127,14 +121,14 @@ public Optional> localId() { } /** - * enum: `active-active`, `active-standby` + * Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * */ @Import(name="mode") private @Nullable Output mode; /** - * @return enum: `active-active`, `active-standby` + * @return Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * */ public Optional> mode() { @@ -142,36 +136,44 @@ public Optional> mode() { } /** - * networks reachable via this tunnel + * if `provider`==`custom-ipsec`, networks reachable via this tunnel * */ @Import(name="networks") private @Nullable Output> networks; /** - * @return networks reachable via this tunnel + * @return if `provider`==`custom-ipsec`, networks reachable via this tunnel * */ public Optional>> networks() { return Optional.ofNullable(this.networks); } + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ @Import(name="primary") private @Nullable Output primary; + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ public Optional> primary() { return Optional.ofNullable(this.primary); } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` * */ @Import(name="probe") private @Nullable Output probe; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ public Optional> probe() { @@ -179,14 +181,14 @@ public Optional> probe() { } /** - * Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * */ @Import(name="protocol") private @Nullable Output protocol; /** - * @return Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * @return Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * */ public Optional> protocol() { @@ -194,14 +196,14 @@ public Optional> protocol() { } /** - * enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * */ @Import(name="provider") private @Nullable Output provider; /** - * @return enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @return Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * */ public Optional> provider() { @@ -209,42 +211,44 @@ public Optional> provider() { } /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ @Import(name="psk") private @Nullable Output psk; /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional> psk() { return Optional.ofNullable(this.psk); } + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ @Import(name="secondary") private @Nullable Output secondary; + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ public Optional> secondary() { return Optional.ofNullable(this.secondary); } /** - * Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * */ @Import(name="version") private @Nullable Output version; /** - * @return Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @return Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * */ public Optional> version() { @@ -300,7 +304,7 @@ public Builder autoProvision(GatewaytemplateTunnelConfigsAutoProvisionArgs autoP } /** - * @param ikeLifetime Only if `provider`== `custom-ipsec` + * @param ikeLifetime Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * * @return builder * @@ -311,7 +315,7 @@ public Builder ikeLifetime(@Nullable Output ikeLifetime) { } /** - * @param ikeLifetime Only if `provider`== `custom-ipsec` + * @param ikeLifetime Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * * @return builder * @@ -321,7 +325,7 @@ public Builder ikeLifetime(Integer ikeLifetime) { } /** - * @param ikeMode Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @param ikeMode Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * * @return builder * @@ -332,7 +336,7 @@ public Builder ikeMode(@Nullable Output ikeMode) { } /** - * @param ikeMode Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @param ikeMode Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * * @return builder * @@ -342,7 +346,7 @@ public Builder ikeMode(String ikeMode) { } /** - * @param ikeProposals if `provider`== `custom-ipsec` + * @param ikeProposals if `provider`==`custom-ipsec` * * @return builder * @@ -353,7 +357,7 @@ public Builder ikeProposals(@Nullable Output ik } /** - * @param ikeProposals if `provider`== `custom-ipsec` + * @param ikeProposals if `provider`==`custom-ipsec` * * @return builder * @@ -373,7 +377,7 @@ public Builder ikeProposals(GatewaytemplateTunnelConfigsIkeProposalArgs... ikePr } /** - * @param ipsecLifetime if `provider`== `custom-ipsec` + * @param ipsecLifetime Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * * @return builder * @@ -384,7 +388,7 @@ public Builder ipsecLifetime(@Nullable Output ipsecLifetime) { } /** - * @param ipsecLifetime if `provider`== `custom-ipsec` + * @param ipsecLifetime Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * * @return builder * @@ -394,7 +398,7 @@ public Builder ipsecLifetime(Integer ipsecLifetime) { } /** - * @param ipsecProposals Only if `provider`== `custom-ipsec` + * @param ipsecProposals Only if `provider`==`custom-ipsec` * * @return builder * @@ -405,7 +409,7 @@ public Builder ipsecProposals(@Nullable Output localId) { } /** - * @param localId Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @param localId Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -452,7 +450,7 @@ public Builder localId(String localId) { } /** - * @param mode enum: `active-active`, `active-standby` + * @param mode Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * * @return builder * @@ -463,7 +461,7 @@ public Builder mode(@Nullable Output mode) { } /** - * @param mode enum: `active-active`, `active-standby` + * @param mode Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * * @return builder * @@ -473,7 +471,7 @@ public Builder mode(String mode) { } /** - * @param networks networks reachable via this tunnel + * @param networks if `provider`==`custom-ipsec`, networks reachable via this tunnel * * @return builder * @@ -484,7 +482,7 @@ public Builder networks(@Nullable Output> networks) { } /** - * @param networks networks reachable via this tunnel + * @param networks if `provider`==`custom-ipsec`, networks reachable via this tunnel * * @return builder * @@ -494,7 +492,7 @@ public Builder networks(List networks) { } /** - * @param networks networks reachable via this tunnel + * @param networks if `provider`==`custom-ipsec`, networks reachable via this tunnel * * @return builder * @@ -503,17 +501,29 @@ public Builder networks(String... networks) { return networks(List.of(networks)); } + /** + * @param primary Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + * @return builder + * + */ public Builder primary(@Nullable Output primary) { $.primary = primary; return this; } + /** + * @param primary Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + * @return builder + * + */ public Builder primary(GatewaytemplateTunnelConfigsPrimaryArgs primary) { return primary(Output.of(primary)); } /** - * @param probe Only if `provider`== `custom-ipsec` + * @param probe Only if `provider`==`custom-ipsec` * * @return builder * @@ -524,7 +534,7 @@ public Builder probe(@Nullable Output pro } /** - * @param probe Only if `provider`== `custom-ipsec` + * @param probe Only if `provider`==`custom-ipsec` * * @return builder * @@ -534,7 +544,7 @@ public Builder probe(GatewaytemplateTunnelConfigsProbeArgs probe) { } /** - * @param protocol Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * @param protocol Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * * @return builder * @@ -545,7 +555,7 @@ public Builder protocol(@Nullable Output protocol) { } /** - * @param protocol Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * @param protocol Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * * @return builder * @@ -555,7 +565,7 @@ public Builder protocol(String protocol) { } /** - * @param provider enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @param provider Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * * @return builder * @@ -566,7 +576,7 @@ public Builder provider(@Nullable Output provider) { } /** - * @param provider enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @param provider Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * * @return builder * @@ -576,10 +586,7 @@ public Builder provider(String provider) { } /** - * @param psk Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @param psk Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -590,10 +597,7 @@ public Builder psk(@Nullable Output psk) { } /** - * @param psk Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @param psk Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -602,17 +606,29 @@ public Builder psk(String psk) { return psk(Output.of(psk)); } + /** + * @param secondary Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + * @return builder + * + */ public Builder secondary(@Nullable Output secondary) { $.secondary = secondary; return this; } + /** + * @param secondary Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + * @return builder + * + */ public Builder secondary(GatewaytemplateTunnelConfigsSecondaryArgs secondary) { return secondary(Output.of(secondary)); } /** - * @param version Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @param version Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * * @return builder * @@ -623,7 +639,7 @@ public Builder version(@Nullable Output version) { } /** - * @param version Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @param version Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsAutoProvisionArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsAutoProvisionArgs.java index 8372fd45..d2070def 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsAutoProvisionArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsAutoProvisionArgs.java @@ -5,10 +5,12 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import com.pulumi.junipermist.org.inputs.GatewaytemplateTunnelConfigsAutoProvisionLatlngArgs; import com.pulumi.junipermist.org.inputs.GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs; import com.pulumi.junipermist.org.inputs.GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs; import java.lang.Boolean; +import java.lang.String; import java.util.Objects; import java.util.Optional; import javax.annotation.Nullable; @@ -25,9 +27,17 @@ public Optional> enable() { return Optional.ofNullable(this.enable); } + /** + * API override for POP selection + * + */ @Import(name="latlng") private @Nullable Output latlng; + /** + * @return API override for POP selection + * + */ public Optional> latlng() { return Optional.ofNullable(this.latlng); } @@ -39,6 +49,36 @@ public Optional> pr return Optional.ofNullable(this.primary); } + /** + * enum: `jse-ipsec`, `zscaler-ipsec` + * + */ + @Import(name="provider", required=true) + private Output provider; + + /** + * @return enum: `jse-ipsec`, `zscaler-ipsec` + * + */ + public Output provider() { + return this.provider; + } + + /** + * API override for POP selection + * + */ + @Import(name="region") + private @Nullable Output region; + + /** + * @return API override for POP selection + * + */ + public Optional> region() { + return Optional.ofNullable(this.region); + } + @Import(name="secondary") private @Nullable Output secondary; @@ -52,6 +92,8 @@ private GatewaytemplateTunnelConfigsAutoProvisionArgs(GatewaytemplateTunnelConfi this.enable = $.enable; this.latlng = $.latlng; this.primary = $.primary; + this.provider = $.provider; + this.region = $.region; this.secondary = $.secondary; } @@ -82,11 +124,23 @@ public Builder enable(Boolean enable) { return enable(Output.of(enable)); } + /** + * @param latlng API override for POP selection + * + * @return builder + * + */ public Builder latlng(@Nullable Output latlng) { $.latlng = latlng; return this; } + /** + * @param latlng API override for POP selection + * + * @return builder + * + */ public Builder latlng(GatewaytemplateTunnelConfigsAutoProvisionLatlngArgs latlng) { return latlng(Output.of(latlng)); } @@ -100,6 +154,48 @@ public Builder primary(GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs prim return primary(Output.of(primary)); } + /** + * @param provider enum: `jse-ipsec`, `zscaler-ipsec` + * + * @return builder + * + */ + public Builder provider(Output provider) { + $.provider = provider; + return this; + } + + /** + * @param provider enum: `jse-ipsec`, `zscaler-ipsec` + * + * @return builder + * + */ + public Builder provider(String provider) { + return provider(Output.of(provider)); + } + + /** + * @param region API override for POP selection + * + * @return builder + * + */ + public Builder region(@Nullable Output region) { + $.region = region; + return this; + } + + /** + * @param region API override for POP selection + * + * @return builder + * + */ + public Builder region(String region) { + return region(Output.of(region)); + } + public Builder secondary(@Nullable Output secondary) { $.secondary = secondary; return this; @@ -110,6 +206,9 @@ public Builder secondary(GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs } public GatewaytemplateTunnelConfigsAutoProvisionArgs build() { + if ($.provider == null) { + throw new MissingRequiredPropertyException("GatewaytemplateTunnelConfigsAutoProvisionArgs", "provider"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs.java index a6b451fe..9f89986c 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs.java @@ -16,11 +16,11 @@ public final class GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs extends public static final GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs Empty = new GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs(); - @Import(name="numHosts") - private @Nullable Output numHosts; + @Import(name="probeIps") + private @Nullable Output> probeIps; - public Optional> numHosts() { - return Optional.ofNullable(this.numHosts); + public Optional>> probeIps() { + return Optional.ofNullable(this.probeIps); } /** @@ -41,7 +41,7 @@ public Optional>> wanNames() { private GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs() {} private GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs(GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs $) { - this.numHosts = $.numHosts; + this.probeIps = $.probeIps; this.wanNames = $.wanNames; } @@ -63,13 +63,17 @@ public Builder(GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs defaults) { $ = new GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs(Objects.requireNonNull(defaults)); } - public Builder numHosts(@Nullable Output numHosts) { - $.numHosts = numHosts; + public Builder probeIps(@Nullable Output> probeIps) { + $.probeIps = probeIps; return this; } - public Builder numHosts(String numHosts) { - return numHosts(Output.of(numHosts)); + public Builder probeIps(List probeIps) { + return probeIps(Output.of(probeIps)); + } + + public Builder probeIps(String... probeIps) { + return probeIps(List.of(probeIps)); } /** diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs.java index 4155187c..00a3e8e0 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs.java @@ -16,11 +16,11 @@ public final class GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs extend public static final GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs Empty = new GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs(); - @Import(name="numHosts") - private @Nullable Output numHosts; + @Import(name="probeIps") + private @Nullable Output> probeIps; - public Optional> numHosts() { - return Optional.ofNullable(this.numHosts); + public Optional>> probeIps() { + return Optional.ofNullable(this.probeIps); } /** @@ -41,7 +41,7 @@ public Optional>> wanNames() { private GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs() {} private GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs(GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs $) { - this.numHosts = $.numHosts; + this.probeIps = $.probeIps; this.wanNames = $.wanNames; } @@ -63,13 +63,17 @@ public Builder(GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs defaults) $ = new GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs(Objects.requireNonNull(defaults)); } - public Builder numHosts(@Nullable Output numHosts) { - $.numHosts = numHosts; + public Builder probeIps(@Nullable Output> probeIps) { + $.probeIps = probeIps; return this; } - public Builder numHosts(String numHosts) { - return numHosts(Output.of(numHosts)); + public Builder probeIps(List probeIps) { + return probeIps(Output.of(probeIps)); + } + + public Builder probeIps(String... probeIps) { + return probeIps(List.of(probeIps)); } /** diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsIpsecProposalArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsIpsecProposalArgs.java index 2da048ec..3dd78bb8 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsIpsecProposalArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsIpsecProposalArgs.java @@ -31,7 +31,7 @@ public Optional> authAlgo() { } /** - * Only if `provider`== `custom-ipsec`. enum: + * Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -48,7 +48,7 @@ public Optional> authAlgo() { private @Nullable Output dhGroup; /** - * @return Only if `provider`== `custom-ipsec`. enum: + * @return Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -128,7 +128,7 @@ public Builder authAlgo(String authAlgo) { } /** - * @param dhGroup Only if `provider`== `custom-ipsec`. enum: + * @param dhGroup Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -149,7 +149,7 @@ public Builder dhGroup(@Nullable Output dhGroup) { } /** - * @param dhGroup Only if `provider`== `custom-ipsec`. enum: + * @param dhGroup Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsPrimaryArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsPrimaryArgs.java index 5bc67553..f46ed65c 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsPrimaryArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsPrimaryArgs.java @@ -5,6 +5,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.List; import java.util.Objects; @@ -16,26 +17,22 @@ public final class GatewaytemplateTunnelConfigsPrimaryArgs extends com.pulumi.re public static final GatewaytemplateTunnelConfigsPrimaryArgs Empty = new GatewaytemplateTunnelConfigsPrimaryArgs(); - @Import(name="hosts") - private @Nullable Output> hosts; + @Import(name="hosts", required=true) + private Output> hosts; - public Optional>> hosts() { - return Optional.ofNullable(this.hosts); + public Output> hosts() { + return this.hosts; } /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ @Import(name="internalIps") private @Nullable Output> internalIps; /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ public Optional>> internalIps() { @@ -50,25 +47,25 @@ public Optional>> probeIps() { } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ @Import(name="remoteIds") private @Nullable Output> remoteIds; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional>> remoteIds() { return Optional.ofNullable(this.remoteIds); } - @Import(name="wanNames") - private @Nullable Output> wanNames; + @Import(name="wanNames", required=true) + private Output> wanNames; - public Optional>> wanNames() { - return Optional.ofNullable(this.wanNames); + public Output> wanNames() { + return this.wanNames; } private GatewaytemplateTunnelConfigsPrimaryArgs() {} @@ -99,7 +96,7 @@ public Builder(GatewaytemplateTunnelConfigsPrimaryArgs defaults) { $ = new GatewaytemplateTunnelConfigsPrimaryArgs(Objects.requireNonNull(defaults)); } - public Builder hosts(@Nullable Output> hosts) { + public Builder hosts(Output> hosts) { $.hosts = hosts; return this; } @@ -113,9 +110,7 @@ public Builder hosts(String... hosts) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -126,9 +121,7 @@ public Builder internalIps(@Nullable Output> internalIps) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -138,9 +131,7 @@ public Builder internalIps(List internalIps) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -163,7 +154,7 @@ public Builder probeIps(String... probeIps) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -174,7 +165,7 @@ public Builder remoteIds(@Nullable Output> remoteIds) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -184,7 +175,7 @@ public Builder remoteIds(List remoteIds) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -193,7 +184,7 @@ public Builder remoteIds(String... remoteIds) { return remoteIds(List.of(remoteIds)); } - public Builder wanNames(@Nullable Output> wanNames) { + public Builder wanNames(Output> wanNames) { $.wanNames = wanNames; return this; } @@ -207,6 +198,12 @@ public Builder wanNames(String... wanNames) { } public GatewaytemplateTunnelConfigsPrimaryArgs build() { + if ($.hosts == null) { + throw new MissingRequiredPropertyException("GatewaytemplateTunnelConfigsPrimaryArgs", "hosts"); + } + if ($.wanNames == null) { + throw new MissingRequiredPropertyException("GatewaytemplateTunnelConfigsPrimaryArgs", "wanNames"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsSecondaryArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsSecondaryArgs.java index cabdbb78..8c304021 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsSecondaryArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelConfigsSecondaryArgs.java @@ -5,6 +5,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.List; import java.util.Objects; @@ -16,26 +17,22 @@ public final class GatewaytemplateTunnelConfigsSecondaryArgs extends com.pulumi. public static final GatewaytemplateTunnelConfigsSecondaryArgs Empty = new GatewaytemplateTunnelConfigsSecondaryArgs(); - @Import(name="hosts") - private @Nullable Output> hosts; + @Import(name="hosts", required=true) + private Output> hosts; - public Optional>> hosts() { - return Optional.ofNullable(this.hosts); + public Output> hosts() { + return this.hosts; } /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ @Import(name="internalIps") private @Nullable Output> internalIps; /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ public Optional>> internalIps() { @@ -50,25 +47,25 @@ public Optional>> probeIps() { } /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ @Import(name="remoteIds") private @Nullable Output> remoteIds; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional>> remoteIds() { return Optional.ofNullable(this.remoteIds); } - @Import(name="wanNames") - private @Nullable Output> wanNames; + @Import(name="wanNames", required=true) + private Output> wanNames; - public Optional>> wanNames() { - return Optional.ofNullable(this.wanNames); + public Output> wanNames() { + return this.wanNames; } private GatewaytemplateTunnelConfigsSecondaryArgs() {} @@ -99,7 +96,7 @@ public Builder(GatewaytemplateTunnelConfigsSecondaryArgs defaults) { $ = new GatewaytemplateTunnelConfigsSecondaryArgs(Objects.requireNonNull(defaults)); } - public Builder hosts(@Nullable Output> hosts) { + public Builder hosts(Output> hosts) { $.hosts = hosts; return this; } @@ -113,9 +110,7 @@ public Builder hosts(String... hosts) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -126,9 +121,7 @@ public Builder internalIps(@Nullable Output> internalIps) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -138,9 +131,7 @@ public Builder internalIps(List internalIps) { } /** - * @param internalIps Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @param internalIps Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * * @return builder * @@ -163,7 +154,7 @@ public Builder probeIps(String... probeIps) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -174,7 +165,7 @@ public Builder remoteIds(@Nullable Output> remoteIds) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -184,7 +175,7 @@ public Builder remoteIds(List remoteIds) { } /** - * @param remoteIds Only if `provider`== `custom-ipsec` + * @param remoteIds Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * * @return builder * @@ -193,7 +184,7 @@ public Builder remoteIds(String... remoteIds) { return remoteIds(List.of(remoteIds)); } - public Builder wanNames(@Nullable Output> wanNames) { + public Builder wanNames(Output> wanNames) { $.wanNames = wanNames; return this; } @@ -207,6 +198,12 @@ public Builder wanNames(String... wanNames) { } public GatewaytemplateTunnelConfigsSecondaryArgs build() { + if ($.hosts == null) { + throw new MissingRequiredPropertyException("GatewaytemplateTunnelConfigsSecondaryArgs", "hosts"); + } + if ($.wanNames == null) { + throw new MissingRequiredPropertyException("GatewaytemplateTunnelConfigsSecondaryArgs", "wanNames"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelProviderOptionsJseArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelProviderOptionsJseArgs.java index d00eef11..c24753c4 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelProviderOptionsJseArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelProviderOptionsJseArgs.java @@ -16,13 +16,6 @@ public final class GatewaytemplateTunnelProviderOptionsJseArgs extends com.pulum public static final GatewaytemplateTunnelProviderOptionsJseArgs Empty = new GatewaytemplateTunnelProviderOptionsJseArgs(); - @Import(name="name") - private @Nullable Output name; - - public Optional> name() { - return Optional.ofNullable(this.name); - } - @Import(name="numUsers") private @Nullable Output numUsers; @@ -30,11 +23,26 @@ public Optional> numUsers() { return Optional.ofNullable(this.numUsers); } + /** + * JSE Organization name + * + */ + @Import(name="orgName") + private @Nullable Output orgName; + + /** + * @return JSE Organization name + * + */ + public Optional> orgName() { + return Optional.ofNullable(this.orgName); + } + private GatewaytemplateTunnelProviderOptionsJseArgs() {} private GatewaytemplateTunnelProviderOptionsJseArgs(GatewaytemplateTunnelProviderOptionsJseArgs $) { - this.name = $.name; this.numUsers = $.numUsers; + this.orgName = $.orgName; } public static Builder builder() { @@ -55,22 +63,34 @@ public Builder(GatewaytemplateTunnelProviderOptionsJseArgs defaults) { $ = new GatewaytemplateTunnelProviderOptionsJseArgs(Objects.requireNonNull(defaults)); } - public Builder name(@Nullable Output name) { - $.name = name; + public Builder numUsers(@Nullable Output numUsers) { + $.numUsers = numUsers; return this; } - public Builder name(String name) { - return name(Output.of(name)); + public Builder numUsers(Integer numUsers) { + return numUsers(Output.of(numUsers)); } - public Builder numUsers(@Nullable Output numUsers) { - $.numUsers = numUsers; + /** + * @param orgName JSE Organization name + * + * @return builder + * + */ + public Builder orgName(@Nullable Output orgName) { + $.orgName = orgName; return this; } - public Builder numUsers(Integer numUsers) { - return numUsers(Output.of(numUsers)); + /** + * @param orgName JSE Organization name + * + * @return builder + * + */ + public Builder orgName(String orgName) { + return orgName(Output.of(orgName)); } public GatewaytemplateTunnelProviderOptionsJseArgs build() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelProviderOptionsZscalerArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelProviderOptionsZscalerArgs.java index 12fd663b..1add7270 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelProviderOptionsZscalerArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelProviderOptionsZscalerArgs.java @@ -7,8 +7,8 @@ import com.pulumi.core.annotations.Import; import com.pulumi.junipermist.org.inputs.GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs; import java.lang.Boolean; +import java.lang.Double; import java.lang.Integer; -import java.lang.String; import java.util.List; import java.util.Objects; import java.util.Optional; @@ -19,111 +19,142 @@ public final class GatewaytemplateTunnelProviderOptionsZscalerArgs extends com.p public static final GatewaytemplateTunnelProviderOptionsZscalerArgs Empty = new GatewaytemplateTunnelProviderOptionsZscalerArgs(); - @Import(name="aupAcceptanceRequired") - private @Nullable Output aupAcceptanceRequired; + @Import(name="aupBlockInternetUntilAccepted") + private @Nullable Output aupBlockInternetUntilAccepted; - public Optional> aupAcceptanceRequired() { - return Optional.ofNullable(this.aupAcceptanceRequired); + public Optional> aupBlockInternetUntilAccepted() { + return Optional.ofNullable(this.aupBlockInternetUntilAccepted); } /** - * days before AUP is requested again + * Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - @Import(name="aupExpire") - private @Nullable Output aupExpire; + @Import(name="aupEnabled") + private @Nullable Output aupEnabled; /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - public Optional> aupExpire() { - return Optional.ofNullable(this.aupExpire); + public Optional> aupEnabled() { + return Optional.ofNullable(this.aupEnabled); } /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - @Import(name="aupSslProxy") - private @Nullable Output aupSslProxy; + @Import(name="aupForceSslInspection") + private @Nullable Output aupForceSslInspection; /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - public Optional> aupSslProxy() { - return Optional.ofNullable(this.aupSslProxy); + public Optional> aupForceSslInspection() { + return Optional.ofNullable(this.aupForceSslInspection); } /** - * the download bandwidth cap of the link, in Mbps + * Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - @Import(name="downloadMbps") - private @Nullable Output downloadMbps; + @Import(name="aupTimeoutInDays") + private @Nullable Output aupTimeoutInDays; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - public Optional> downloadMbps() { - return Optional.ofNullable(this.downloadMbps); + public Optional> aupTimeoutInDays() { + return Optional.ofNullable(this.aupTimeoutInDays); } /** - * if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to enforce user authentication * */ - @Import(name="enableAup") - private @Nullable Output enableAup; + @Import(name="authRequired") + private @Nullable Output authRequired; /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Enable this option to enforce user authentication * */ - public Optional> enableAup() { - return Optional.ofNullable(this.enableAup); + public Optional> authRequired() { + return Optional.ofNullable(this.authRequired); } /** - * when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - @Import(name="enableCaution") - private @Nullable Output enableCaution; + @Import(name="cautionEnabled") + private @Nullable Output cautionEnabled; /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - public Optional> enableCaution() { - return Optional.ofNullable(this.enableCaution); + public Optional> cautionEnabled() { + return Optional.ofNullable(this.cautionEnabled); } - @Import(name="enforceAuthentication") - private @Nullable Output enforceAuthentication; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + @Import(name="dnBandwidth") + private @Nullable Output dnBandwidth; + + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional> dnBandwidth() { + return Optional.ofNullable(this.dnBandwidth); + } - public Optional> enforceAuthentication() { - return Optional.ofNullable(this.enforceAuthentication); + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + @Import(name="idleTimeInMinutes") + private @Nullable Output idleTimeInMinutes; + + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + public Optional> idleTimeInMinutes() { + return Optional.ofNullable(this.idleTimeInMinutes); } - @Import(name="name") - private @Nullable Output name; + /** + * if `true`, enable the firewall control option + * + */ + @Import(name="ofwEnabled") + private @Nullable Output ofwEnabled; - public Optional> name() { - return Optional.ofNullable(this.name); + /** + * @return if `true`, enable the firewall control option + * + */ + public Optional> ofwEnabled() { + return Optional.ofNullable(this.ofwEnabled); } /** - * if `use_xff`==`true` + * `sub-locations` can be used for specific uses cases to define different configuration based on the user network * */ @Import(name="subLocations") private @Nullable Output> subLocations; /** - * @return if `use_xff`==`true` + * @return `sub-locations` can be used for specific uses cases to define different configuration based on the user network * */ public Optional>> subLocations() { @@ -131,49 +162,98 @@ public Optional surrogateIp; + + /** + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + */ + public Optional> surrogateIp() { + return Optional.ofNullable(this.surrogateIp); + } + + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + @Import(name="surrogateIpEnforcedForKnownBrowsers") + private @Nullable Output surrogateIpEnforcedForKnownBrowsers; + + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + public Optional> surrogateIpEnforcedForKnownBrowsers() { + return Optional.ofNullable(this.surrogateIpEnforcedForKnownBrowsers); + } + + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + @Import(name="surrogateRefreshTimeInMinutes") + private @Nullable Output surrogateRefreshTimeInMinutes; + + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + public Optional> surrogateRefreshTimeInMinutes() { + return Optional.ofNullable(this.surrogateRefreshTimeInMinutes); + } + + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - @Import(name="uploadMbps") - private @Nullable Output uploadMbps; + @Import(name="upBandwidth") + private @Nullable Output upBandwidth; /** - * @return the download bandwidth cap of the link, in Mbps + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - public Optional> uploadMbps() { - return Optional.ofNullable(this.uploadMbps); + public Optional> upBandwidth() { + return Optional.ofNullable(this.upBandwidth); } /** * location uses proxy chaining to forward traffic * */ - @Import(name="useXff") - private @Nullable Output useXff; + @Import(name="xffForwardEnabled") + private @Nullable Output xffForwardEnabled; /** * @return location uses proxy chaining to forward traffic * */ - public Optional> useXff() { - return Optional.ofNullable(this.useXff); + public Optional> xffForwardEnabled() { + return Optional.ofNullable(this.xffForwardEnabled); } private GatewaytemplateTunnelProviderOptionsZscalerArgs() {} private GatewaytemplateTunnelProviderOptionsZscalerArgs(GatewaytemplateTunnelProviderOptionsZscalerArgs $) { - this.aupAcceptanceRequired = $.aupAcceptanceRequired; - this.aupExpire = $.aupExpire; - this.aupSslProxy = $.aupSslProxy; - this.downloadMbps = $.downloadMbps; - this.enableAup = $.enableAup; - this.enableCaution = $.enableCaution; - this.enforceAuthentication = $.enforceAuthentication; - this.name = $.name; + this.aupBlockInternetUntilAccepted = $.aupBlockInternetUntilAccepted; + this.aupEnabled = $.aupEnabled; + this.aupForceSslInspection = $.aupForceSslInspection; + this.aupTimeoutInDays = $.aupTimeoutInDays; + this.authRequired = $.authRequired; + this.cautionEnabled = $.cautionEnabled; + this.dnBandwidth = $.dnBandwidth; + this.idleTimeInMinutes = $.idleTimeInMinutes; + this.ofwEnabled = $.ofwEnabled; this.subLocations = $.subLocations; - this.uploadMbps = $.uploadMbps; - this.useXff = $.useXff; + this.surrogateIp = $.surrogateIp; + this.surrogateIpEnforcedForKnownBrowsers = $.surrogateIpEnforcedForKnownBrowsers; + this.surrogateRefreshTimeInMinutes = $.surrogateRefreshTimeInMinutes; + this.upBandwidth = $.upBandwidth; + this.xffForwardEnabled = $.xffForwardEnabled; } public static Builder builder() { @@ -194,140 +274,185 @@ public Builder(GatewaytemplateTunnelProviderOptionsZscalerArgs defaults) { $ = new GatewaytemplateTunnelProviderOptionsZscalerArgs(Objects.requireNonNull(defaults)); } - public Builder aupAcceptanceRequired(@Nullable Output aupAcceptanceRequired) { - $.aupAcceptanceRequired = aupAcceptanceRequired; + public Builder aupBlockInternetUntilAccepted(@Nullable Output aupBlockInternetUntilAccepted) { + $.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; return this; } - public Builder aupAcceptanceRequired(Boolean aupAcceptanceRequired) { - return aupAcceptanceRequired(Output.of(aupAcceptanceRequired)); + public Builder aupBlockInternetUntilAccepted(Boolean aupBlockInternetUntilAccepted) { + return aupBlockInternetUntilAccepted(Output.of(aupBlockInternetUntilAccepted)); } /** - * @param aupExpire days before AUP is requested again + * @param aupEnabled Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * * @return builder * */ - public Builder aupExpire(@Nullable Output aupExpire) { - $.aupExpire = aupExpire; + public Builder aupEnabled(@Nullable Output aupEnabled) { + $.aupEnabled = aupEnabled; return this; } /** - * @param aupExpire days before AUP is requested again + * @param aupEnabled Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * * @return builder * */ - public Builder aupExpire(Integer aupExpire) { - return aupExpire(Output.of(aupExpire)); + public Builder aupEnabled(Boolean aupEnabled) { + return aupEnabled(Output.of(aupEnabled)); } /** - * @param aupSslProxy proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * @param aupForceSslInspection proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * * @return builder * */ - public Builder aupSslProxy(@Nullable Output aupSslProxy) { - $.aupSslProxy = aupSslProxy; + public Builder aupForceSslInspection(@Nullable Output aupForceSslInspection) { + $.aupForceSslInspection = aupForceSslInspection; return this; } /** - * @param aupSslProxy proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * @param aupForceSslInspection proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * * @return builder * */ - public Builder aupSslProxy(Boolean aupSslProxy) { - return aupSslProxy(Output.of(aupSslProxy)); + public Builder aupForceSslInspection(Boolean aupForceSslInspection) { + return aupForceSslInspection(Output.of(aupForceSslInspection)); } /** - * @param downloadMbps the download bandwidth cap of the link, in Mbps + * @param aupTimeoutInDays Required if `aup_enabled`==`true`. Days before AUP is requested again * * @return builder * */ - public Builder downloadMbps(@Nullable Output downloadMbps) { - $.downloadMbps = downloadMbps; + public Builder aupTimeoutInDays(@Nullable Output aupTimeoutInDays) { + $.aupTimeoutInDays = aupTimeoutInDays; return this; } /** - * @param downloadMbps the download bandwidth cap of the link, in Mbps + * @param aupTimeoutInDays Required if `aup_enabled`==`true`. Days before AUP is requested again * * @return builder * */ - public Builder downloadMbps(Integer downloadMbps) { - return downloadMbps(Output.of(downloadMbps)); + public Builder aupTimeoutInDays(Integer aupTimeoutInDays) { + return aupTimeoutInDays(Output.of(aupTimeoutInDays)); } /** - * @param enableAup if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @param authRequired Enable this option to enforce user authentication * * @return builder * */ - public Builder enableAup(@Nullable Output enableAup) { - $.enableAup = enableAup; + public Builder authRequired(@Nullable Output authRequired) { + $.authRequired = authRequired; return this; } /** - * @param enableAup if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @param authRequired Enable this option to enforce user authentication * * @return builder * */ - public Builder enableAup(Boolean enableAup) { - return enableAup(Output.of(enableAup)); + public Builder authRequired(Boolean authRequired) { + return authRequired(Output.of(authRequired)); } /** - * @param enableCaution when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @param cautionEnabled Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * * @return builder * */ - public Builder enableCaution(@Nullable Output enableCaution) { - $.enableCaution = enableCaution; + public Builder cautionEnabled(@Nullable Output cautionEnabled) { + $.cautionEnabled = cautionEnabled; return this; } /** - * @param enableCaution when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @param cautionEnabled Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * * @return builder * */ - public Builder enableCaution(Boolean enableCaution) { - return enableCaution(Output.of(enableCaution)); + public Builder cautionEnabled(Boolean cautionEnabled) { + return cautionEnabled(Output.of(cautionEnabled)); } - public Builder enforceAuthentication(@Nullable Output enforceAuthentication) { - $.enforceAuthentication = enforceAuthentication; + /** + * @param dnBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set + * + * @return builder + * + */ + public Builder dnBandwidth(@Nullable Output dnBandwidth) { + $.dnBandwidth = dnBandwidth; + return this; + } + + /** + * @param dnBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set + * + * @return builder + * + */ + public Builder dnBandwidth(Double dnBandwidth) { + return dnBandwidth(Output.of(dnBandwidth)); + } + + /** + * @param idleTimeInMinutes Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + * @return builder + * + */ + public Builder idleTimeInMinutes(@Nullable Output idleTimeInMinutes) { + $.idleTimeInMinutes = idleTimeInMinutes; return this; } - public Builder enforceAuthentication(Boolean enforceAuthentication) { - return enforceAuthentication(Output.of(enforceAuthentication)); + /** + * @param idleTimeInMinutes Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + * @return builder + * + */ + public Builder idleTimeInMinutes(Integer idleTimeInMinutes) { + return idleTimeInMinutes(Output.of(idleTimeInMinutes)); } - public Builder name(@Nullable Output name) { - $.name = name; + /** + * @param ofwEnabled if `true`, enable the firewall control option + * + * @return builder + * + */ + public Builder ofwEnabled(@Nullable Output ofwEnabled) { + $.ofwEnabled = ofwEnabled; return this; } - public Builder name(String name) { - return name(Output.of(name)); + /** + * @param ofwEnabled if `true`, enable the firewall control option + * + * @return builder + * + */ + public Builder ofwEnabled(Boolean ofwEnabled) { + return ofwEnabled(Output.of(ofwEnabled)); } /** - * @param subLocations if `use_xff`==`true` + * @param subLocations `sub-locations` can be used for specific uses cases to define different configuration based on the user network * * @return builder * @@ -338,7 +463,7 @@ public Builder subLocations(@Nullable Output surrogateIp) { + $.surrogateIp = surrogateIp; + return this; + } + + /** + * @param surrogateIp Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + * @return builder + * + */ + public Builder surrogateIp(Boolean surrogateIp) { + return surrogateIp(Output.of(surrogateIp)); + } + + /** + * @param surrogateIpEnforcedForKnownBrowsers Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + * @return builder + * + */ + public Builder surrogateIpEnforcedForKnownBrowsers(@Nullable Output surrogateIpEnforcedForKnownBrowsers) { + $.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + return this; + } + + /** + * @param surrogateIpEnforcedForKnownBrowsers Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + * @return builder + * + */ + public Builder surrogateIpEnforcedForKnownBrowsers(Boolean surrogateIpEnforcedForKnownBrowsers) { + return surrogateIpEnforcedForKnownBrowsers(Output.of(surrogateIpEnforcedForKnownBrowsers)); + } + + /** + * @param surrogateRefreshTimeInMinutes Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + * @return builder + * + */ + public Builder surrogateRefreshTimeInMinutes(@Nullable Output surrogateRefreshTimeInMinutes) { + $.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + return this; + } + + /** + * @param surrogateRefreshTimeInMinutes Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + * @return builder + * + */ + public Builder surrogateRefreshTimeInMinutes(Integer surrogateRefreshTimeInMinutes) { + return surrogateRefreshTimeInMinutes(Output.of(surrogateRefreshTimeInMinutes)); + } + + /** + * @param upBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder uploadMbps(@Nullable Output uploadMbps) { - $.uploadMbps = uploadMbps; + public Builder upBandwidth(@Nullable Output upBandwidth) { + $.upBandwidth = upBandwidth; return this; } /** - * @param uploadMbps the download bandwidth cap of the link, in Mbps + * @param upBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder uploadMbps(Integer uploadMbps) { - return uploadMbps(Output.of(uploadMbps)); + public Builder upBandwidth(Double upBandwidth) { + return upBandwidth(Output.of(upBandwidth)); } /** - * @param useXff location uses proxy chaining to forward traffic + * @param xffForwardEnabled location uses proxy chaining to forward traffic * * @return builder * */ - public Builder useXff(@Nullable Output useXff) { - $.useXff = useXff; + public Builder xffForwardEnabled(@Nullable Output xffForwardEnabled) { + $.xffForwardEnabled = xffForwardEnabled; return this; } /** - * @param useXff location uses proxy chaining to forward traffic + * @param xffForwardEnabled location uses proxy chaining to forward traffic * * @return builder * */ - public Builder useXff(Boolean useXff) { - return useXff(Output.of(useXff)); + public Builder xffForwardEnabled(Boolean xffForwardEnabled) { + return xffForwardEnabled(Output.of(xffForwardEnabled)); } public GatewaytemplateTunnelProviderOptionsZscalerArgs build() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs.java index b9a9b2c2..6c377e35 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs.java @@ -6,9 +6,9 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; import java.lang.Boolean; +import java.lang.Double; import java.lang.Integer; import java.lang.String; -import java.util.List; import java.util.Objects; import java.util.Optional; import javax.annotation.Nullable; @@ -18,129 +18,225 @@ public final class GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs ex public static final GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs Empty = new GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs(); - @Import(name="aupAcceptanceRequired") - private @Nullable Output aupAcceptanceRequired; + @Import(name="aupBlockInternetUntilAccepted") + private @Nullable Output aupBlockInternetUntilAccepted; - public Optional> aupAcceptanceRequired() { - return Optional.ofNullable(this.aupAcceptanceRequired); + public Optional> aupBlockInternetUntilAccepted() { + return Optional.ofNullable(this.aupBlockInternetUntilAccepted); } /** - * days before AUP is requested again + * Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - @Import(name="aupExpire") - private @Nullable Output aupExpire; + @Import(name="aupEnabled") + private @Nullable Output aupEnabled; /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - public Optional> aupExpire() { - return Optional.ofNullable(this.aupExpire); + public Optional> aupEnabled() { + return Optional.ofNullable(this.aupEnabled); } /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - @Import(name="aupSslProxy") - private @Nullable Output aupSslProxy; + @Import(name="aupForceSslInspection") + private @Nullable Output aupForceSslInspection; /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - public Optional> aupSslProxy() { - return Optional.ofNullable(this.aupSslProxy); + public Optional> aupForceSslInspection() { + return Optional.ofNullable(this.aupForceSslInspection); } /** - * the download bandwidth cap of the link, in Mbps + * Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - @Import(name="downloadMbps") - private @Nullable Output downloadMbps; + @Import(name="aupTimeoutInDays") + private @Nullable Output aupTimeoutInDays; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - public Optional> downloadMbps() { - return Optional.ofNullable(this.downloadMbps); + public Optional> aupTimeoutInDays() { + return Optional.ofNullable(this.aupTimeoutInDays); } /** - * if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to authenticate users * */ - @Import(name="enableAup") - private @Nullable Output enableAup; + @Import(name="authRequired") + private @Nullable Output authRequired; /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Enable this option to authenticate users * */ - public Optional> enableAup() { - return Optional.ofNullable(this.enableAup); + public Optional> authRequired() { + return Optional.ofNullable(this.authRequired); } /** - * when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - @Import(name="enableCaution") - private @Nullable Output enableCaution; + @Import(name="cautionEnabled") + private @Nullable Output cautionEnabled; /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - public Optional> enableCaution() { - return Optional.ofNullable(this.enableCaution); + public Optional> cautionEnabled() { + return Optional.ofNullable(this.cautionEnabled); } - @Import(name="enforceAuthentication") - private @Nullable Output enforceAuthentication; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + @Import(name="dnBandwidth") + private @Nullable Output dnBandwidth; + + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional> dnBandwidth() { + return Optional.ofNullable(this.dnBandwidth); + } + + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + @Import(name="idleTimeInMinutes") + private @Nullable Output idleTimeInMinutes; + + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + public Optional> idleTimeInMinutes() { + return Optional.ofNullable(this.idleTimeInMinutes); + } + + /** + * Network name + * + */ + @Import(name="name") + private @Nullable Output name; - public Optional> enforceAuthentication() { - return Optional.ofNullable(this.enforceAuthentication); + /** + * @return Network name + * + */ + public Optional> name() { + return Optional.ofNullable(this.name); } - @Import(name="subnets") - private @Nullable Output> subnets; + /** + * if `true`, enable the firewall control option + * + */ + @Import(name="ofwEnabled") + private @Nullable Output ofwEnabled; - public Optional>> subnets() { - return Optional.ofNullable(this.subnets); + /** + * @return if `true`, enable the firewall control option + * + */ + public Optional> ofwEnabled() { + return Optional.ofNullable(this.ofwEnabled); } /** - * the download bandwidth cap of the link, in Mbps + * Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies * */ - @Import(name="uploadMbps") - private @Nullable Output uploadMbps; + @Import(name="surrogateIp") + private @Nullable Output surrogateIp; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies * */ - public Optional> uploadMbps() { - return Optional.ofNullable(this.uploadMbps); + public Optional> surrogateIp() { + return Optional.ofNullable(this.surrogateIp); + } + + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + @Import(name="surrogateIpEnforcedForKnownBrowsers") + private @Nullable Output surrogateIpEnforcedForKnownBrowsers; + + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + public Optional> surrogateIpEnforcedForKnownBrowsers() { + return Optional.ofNullable(this.surrogateIpEnforcedForKnownBrowsers); + } + + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + @Import(name="surrogateRefreshTimeInMinutes") + private @Nullable Output surrogateRefreshTimeInMinutes; + + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + public Optional> surrogateRefreshTimeInMinutes() { + return Optional.ofNullable(this.surrogateRefreshTimeInMinutes); + } + + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + @Import(name="upBandwidth") + private @Nullable Output upBandwidth; + + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional> upBandwidth() { + return Optional.ofNullable(this.upBandwidth); } private GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs() {} private GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs(GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs $) { - this.aupAcceptanceRequired = $.aupAcceptanceRequired; - this.aupExpire = $.aupExpire; - this.aupSslProxy = $.aupSslProxy; - this.downloadMbps = $.downloadMbps; - this.enableAup = $.enableAup; - this.enableCaution = $.enableCaution; - this.enforceAuthentication = $.enforceAuthentication; - this.subnets = $.subnets; - this.uploadMbps = $.uploadMbps; + this.aupBlockInternetUntilAccepted = $.aupBlockInternetUntilAccepted; + this.aupEnabled = $.aupEnabled; + this.aupForceSslInspection = $.aupForceSslInspection; + this.aupTimeoutInDays = $.aupTimeoutInDays; + this.authRequired = $.authRequired; + this.cautionEnabled = $.cautionEnabled; + this.dnBandwidth = $.dnBandwidth; + this.idleTimeInMinutes = $.idleTimeInMinutes; + this.name = $.name; + this.ofwEnabled = $.ofwEnabled; + this.surrogateIp = $.surrogateIp; + this.surrogateIpEnforcedForKnownBrowsers = $.surrogateIpEnforcedForKnownBrowsers; + this.surrogateRefreshTimeInMinutes = $.surrogateRefreshTimeInMinutes; + this.upBandwidth = $.upBandwidth; } public static Builder builder() { @@ -161,161 +257,286 @@ public Builder(GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs defaul $ = new GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs(Objects.requireNonNull(defaults)); } - public Builder aupAcceptanceRequired(@Nullable Output aupAcceptanceRequired) { - $.aupAcceptanceRequired = aupAcceptanceRequired; + public Builder aupBlockInternetUntilAccepted(@Nullable Output aupBlockInternetUntilAccepted) { + $.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + return this; + } + + public Builder aupBlockInternetUntilAccepted(Boolean aupBlockInternetUntilAccepted) { + return aupBlockInternetUntilAccepted(Output.of(aupBlockInternetUntilAccepted)); + } + + /** + * @param aupEnabled Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + * + * @return builder + * + */ + public Builder aupEnabled(@Nullable Output aupEnabled) { + $.aupEnabled = aupEnabled; + return this; + } + + /** + * @param aupEnabled Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + * + * @return builder + * + */ + public Builder aupEnabled(Boolean aupEnabled) { + return aupEnabled(Output.of(aupEnabled)); + } + + /** + * @param aupForceSslInspection proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * + * @return builder + * + */ + public Builder aupForceSslInspection(@Nullable Output aupForceSslInspection) { + $.aupForceSslInspection = aupForceSslInspection; return this; } - public Builder aupAcceptanceRequired(Boolean aupAcceptanceRequired) { - return aupAcceptanceRequired(Output.of(aupAcceptanceRequired)); + /** + * @param aupForceSslInspection proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * + * @return builder + * + */ + public Builder aupForceSslInspection(Boolean aupForceSslInspection) { + return aupForceSslInspection(Output.of(aupForceSslInspection)); } /** - * @param aupExpire days before AUP is requested again + * @param aupTimeoutInDays Required if `aup_enabled`==`true`. Days before AUP is requested again * * @return builder * */ - public Builder aupExpire(@Nullable Output aupExpire) { - $.aupExpire = aupExpire; + public Builder aupTimeoutInDays(@Nullable Output aupTimeoutInDays) { + $.aupTimeoutInDays = aupTimeoutInDays; return this; } /** - * @param aupExpire days before AUP is requested again + * @param aupTimeoutInDays Required if `aup_enabled`==`true`. Days before AUP is requested again * * @return builder * */ - public Builder aupExpire(Integer aupExpire) { - return aupExpire(Output.of(aupExpire)); + public Builder aupTimeoutInDays(Integer aupTimeoutInDays) { + return aupTimeoutInDays(Output.of(aupTimeoutInDays)); } /** - * @param aupSslProxy proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * @param authRequired Enable this option to authenticate users * * @return builder * */ - public Builder aupSslProxy(@Nullable Output aupSslProxy) { - $.aupSslProxy = aupSslProxy; + public Builder authRequired(@Nullable Output authRequired) { + $.authRequired = authRequired; return this; } /** - * @param aupSslProxy proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + * @param authRequired Enable this option to authenticate users * * @return builder * */ - public Builder aupSslProxy(Boolean aupSslProxy) { - return aupSslProxy(Output.of(aupSslProxy)); + public Builder authRequired(Boolean authRequired) { + return authRequired(Output.of(authRequired)); } /** - * @param downloadMbps the download bandwidth cap of the link, in Mbps + * @param cautionEnabled Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * * @return builder * */ - public Builder downloadMbps(@Nullable Output downloadMbps) { - $.downloadMbps = downloadMbps; + public Builder cautionEnabled(@Nullable Output cautionEnabled) { + $.cautionEnabled = cautionEnabled; return this; } /** - * @param downloadMbps the download bandwidth cap of the link, in Mbps + * @param cautionEnabled Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * * @return builder * */ - public Builder downloadMbps(Integer downloadMbps) { - return downloadMbps(Output.of(downloadMbps)); + public Builder cautionEnabled(Boolean cautionEnabled) { + return cautionEnabled(Output.of(cautionEnabled)); } /** - * @param enableAup if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @param dnBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder enableAup(@Nullable Output enableAup) { - $.enableAup = enableAup; + public Builder dnBandwidth(@Nullable Output dnBandwidth) { + $.dnBandwidth = dnBandwidth; return this; } /** - * @param enableAup if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @param dnBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder enableAup(Boolean enableAup) { - return enableAup(Output.of(enableAup)); + public Builder dnBandwidth(Double dnBandwidth) { + return dnBandwidth(Output.of(dnBandwidth)); } /** - * @param enableCaution when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @param idleTimeInMinutes Required if `surrogate_IP`==`true`, idle Time to Disassociation * * @return builder * */ - public Builder enableCaution(@Nullable Output enableCaution) { - $.enableCaution = enableCaution; + public Builder idleTimeInMinutes(@Nullable Output idleTimeInMinutes) { + $.idleTimeInMinutes = idleTimeInMinutes; return this; } /** - * @param enableCaution when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @param idleTimeInMinutes Required if `surrogate_IP`==`true`, idle Time to Disassociation * * @return builder * */ - public Builder enableCaution(Boolean enableCaution) { - return enableCaution(Output.of(enableCaution)); + public Builder idleTimeInMinutes(Integer idleTimeInMinutes) { + return idleTimeInMinutes(Output.of(idleTimeInMinutes)); } - public Builder enforceAuthentication(@Nullable Output enforceAuthentication) { - $.enforceAuthentication = enforceAuthentication; + /** + * @param name Network name + * + * @return builder + * + */ + public Builder name(@Nullable Output name) { + $.name = name; return this; } - public Builder enforceAuthentication(Boolean enforceAuthentication) { - return enforceAuthentication(Output.of(enforceAuthentication)); + /** + * @param name Network name + * + * @return builder + * + */ + public Builder name(String name) { + return name(Output.of(name)); } - public Builder subnets(@Nullable Output> subnets) { - $.subnets = subnets; + /** + * @param ofwEnabled if `true`, enable the firewall control option + * + * @return builder + * + */ + public Builder ofwEnabled(@Nullable Output ofwEnabled) { + $.ofwEnabled = ofwEnabled; return this; } - public Builder subnets(List subnets) { - return subnets(Output.of(subnets)); + /** + * @param ofwEnabled if `true`, enable the firewall control option + * + * @return builder + * + */ + public Builder ofwEnabled(Boolean ofwEnabled) { + return ofwEnabled(Output.of(ofwEnabled)); } - public Builder subnets(String... subnets) { - return subnets(List.of(subnets)); + /** + * @param surrogateIp Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + * @return builder + * + */ + public Builder surrogateIp(@Nullable Output surrogateIp) { + $.surrogateIp = surrogateIp; + return this; + } + + /** + * @param surrogateIp Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + * @return builder + * + */ + public Builder surrogateIp(Boolean surrogateIp) { + return surrogateIp(Output.of(surrogateIp)); + } + + /** + * @param surrogateIpEnforcedForKnownBrowsers Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + * @return builder + * + */ + public Builder surrogateIpEnforcedForKnownBrowsers(@Nullable Output surrogateIpEnforcedForKnownBrowsers) { + $.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + return this; + } + + /** + * @param surrogateIpEnforcedForKnownBrowsers Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + * @return builder + * + */ + public Builder surrogateIpEnforcedForKnownBrowsers(Boolean surrogateIpEnforcedForKnownBrowsers) { + return surrogateIpEnforcedForKnownBrowsers(Output.of(surrogateIpEnforcedForKnownBrowsers)); + } + + /** + * @param surrogateRefreshTimeInMinutes Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + * @return builder + * + */ + public Builder surrogateRefreshTimeInMinutes(@Nullable Output surrogateRefreshTimeInMinutes) { + $.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + return this; + } + + /** + * @param surrogateRefreshTimeInMinutes Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + * @return builder + * + */ + public Builder surrogateRefreshTimeInMinutes(Integer surrogateRefreshTimeInMinutes) { + return surrogateRefreshTimeInMinutes(Output.of(surrogateRefreshTimeInMinutes)); } /** - * @param uploadMbps the download bandwidth cap of the link, in Mbps + * @param upBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder uploadMbps(@Nullable Output uploadMbps) { - $.uploadMbps = uploadMbps; + public Builder upBandwidth(@Nullable Output upBandwidth) { + $.upBandwidth = upBandwidth; return this; } /** - * @param uploadMbps the download bandwidth cap of the link, in Mbps + * @param upBandwidth the download bandwidth cap of the link, in Mbps. Disabled if not set * * @return builder * */ - public Builder uploadMbps(Integer uploadMbps) { - return uploadMbps(Output.of(uploadMbps)); + public Builder upBandwidth(Double upBandwidth) { + return upBandwidth(Output.of(upBandwidth)); } public GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs build() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NacidpState.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NacidpState.java index 17b45b89..37f902aa 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NacidpState.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NacidpState.java @@ -302,6 +302,21 @@ public Optional> oauthDiscoveryUrl() { return Optional.ofNullable(this.oauthDiscoveryUrl); } + /** + * enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + * + */ + @Import(name="oauthPingIdentityRegion") + private @Nullable Output oauthPingIdentityRegion; + + /** + * @return enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + * + */ + public Optional> oauthPingIdentityRegion() { + return Optional.ofNullable(this.oauthPingIdentityRegion); + } + /** * if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials * @@ -369,6 +384,36 @@ public Optional> orgId() { return Optional.ofNullable(this.orgId); } + /** + * if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + * + */ + @Import(name="scimEnabled") + private @Nullable Output scimEnabled; + + /** + * @return if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + * + */ + public Optional> scimEnabled() { + return Optional.ofNullable(this.scimEnabled); + } + + /** + * if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + * + */ + @Import(name="scimSecretToken") + private @Nullable Output scimSecretToken; + + /** + * @return if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + * + */ + public Optional> scimSecretToken() { + return Optional.ofNullable(this.scimSecretToken); + } + private NacidpState() {} private NacidpState(NacidpState $) { @@ -391,11 +436,14 @@ private NacidpState(NacidpState $) { this.oauthCcClientId = $.oauthCcClientId; this.oauthCcClientSecret = $.oauthCcClientSecret; this.oauthDiscoveryUrl = $.oauthDiscoveryUrl; + this.oauthPingIdentityRegion = $.oauthPingIdentityRegion; this.oauthRopcClientId = $.oauthRopcClientId; this.oauthRopcClientSecret = $.oauthRopcClientSecret; this.oauthTenantId = $.oauthTenantId; this.oauthType = $.oauthType; this.orgId = $.orgId; + this.scimEnabled = $.scimEnabled; + this.scimSecretToken = $.scimSecretToken; } public static Builder builder() { @@ -835,6 +883,27 @@ public Builder oauthDiscoveryUrl(String oauthDiscoveryUrl) { return oauthDiscoveryUrl(Output.of(oauthDiscoveryUrl)); } + /** + * @param oauthPingIdentityRegion enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + * + * @return builder + * + */ + public Builder oauthPingIdentityRegion(@Nullable Output oauthPingIdentityRegion) { + $.oauthPingIdentityRegion = oauthPingIdentityRegion; + return this; + } + + /** + * @param oauthPingIdentityRegion enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + * + * @return builder + * + */ + public Builder oauthPingIdentityRegion(String oauthPingIdentityRegion) { + return oauthPingIdentityRegion(Output.of(oauthPingIdentityRegion)); + } + /** * @param oauthRopcClientId if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials * @@ -928,6 +997,48 @@ public Builder orgId(String orgId) { return orgId(Output.of(orgId)); } + /** + * @param scimEnabled if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + * + * @return builder + * + */ + public Builder scimEnabled(@Nullable Output scimEnabled) { + $.scimEnabled = scimEnabled; + return this; + } + + /** + * @param scimEnabled if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + * + * @return builder + * + */ + public Builder scimEnabled(Boolean scimEnabled) { + return scimEnabled(Output.of(scimEnabled)); + } + + /** + * @param scimSecretToken if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + * + * @return builder + * + */ + public Builder scimSecretToken(@Nullable Output scimSecretToken) { + $.scimSecretToken = scimSecretToken; + return this; + } + + /** + * @param scimSecretToken if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + * + * @return builder + * + */ + public Builder scimSecretToken(String scimSecretToken) { + return scimSecretToken(Output.of(scimSecretToken)); + } + public NacidpState build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkInternetAccessArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkInternetAccessArgs.java index 4ba25df4..19c21c44 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkInternetAccessArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkInternetAccessArgs.java @@ -27,14 +27,14 @@ public Optional> createSimpleServicePolicy() { } /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ @Import(name="destinationNat") private @Nullable Output> destinationNat; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Optional>> destinationNat() { @@ -64,14 +64,14 @@ public Optional> restricted() { } /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ @Import(name="staticNat") private @Nullable Output> staticNat; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Optional>> staticNat() { @@ -116,7 +116,7 @@ public Builder createSimpleServicePolicy(Boolean createSimpleServicePolicy) { } /** - * @param destinationNat Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @param destinationNat Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * * @return builder * @@ -127,7 +127,7 @@ public Builder destinationNat(@Nullable Output internalIp; + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional> internalIp() { return Optional.ofNullable(this.internalIp); } @@ -30,19 +37,43 @@ public Optional> name() { return Optional.ofNullable(this.name); } + /** + * The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="port") - private @Nullable Output port; + private @Nullable Output port; - public Optional> port() { + /** + * @return The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ + public Optional> port() { return Optional.ofNullable(this.port); } + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + @Import(name="wanName") + private @Nullable Output wanName; + + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + public Optional> wanName() { + return Optional.ofNullable(this.wanName); + } + private NetworkInternetAccessDestinationNatArgs() {} private NetworkInternetAccessDestinationNatArgs(NetworkInternetAccessDestinationNatArgs $) { this.internalIp = $.internalIp; this.name = $.name; this.port = $.port; + this.wanName = $.wanName; } public static Builder builder() { @@ -63,11 +94,23 @@ public Builder(NetworkInternetAccessDestinationNatArgs defaults) { $ = new NetworkInternetAccessDestinationNatArgs(Objects.requireNonNull(defaults)); } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(@Nullable Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } @@ -81,15 +124,48 @@ public Builder name(String name) { return name(Output.of(name)); } - public Builder port(@Nullable Output port) { + /** + * @param port The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder port(@Nullable Output port) { $.port = port; return this; } - public Builder port(Integer port) { + /** + * @param port The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder port(String port) { return port(Output.of(port)); } + /** + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + * @return builder + * + */ + public Builder wanName(@Nullable Output wanName) { + $.wanName = wanName; + return this; + } + + /** + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + * @return builder + * + */ + public Builder wanName(String wanName) { + return wanName(Output.of(wanName)); + } + public NetworkInternetAccessDestinationNatArgs build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkInternetAccessStaticNatArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkInternetAccessStaticNatArgs.java index 7476bc74..8554ae70 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkInternetAccessStaticNatArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkInternetAccessStaticNatArgs.java @@ -5,6 +5,7 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -15,29 +16,37 @@ public final class NetworkInternetAccessStaticNatArgs extends com.pulumi.resourc public static final NetworkInternetAccessStaticNatArgs Empty = new NetworkInternetAccessStaticNatArgs(); - @Import(name="internalIp") - private @Nullable Output internalIp; + /** + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + @Import(name="internalIp", required=true) + private Output internalIp; - public Optional> internalIp() { - return Optional.ofNullable(this.internalIp); + /** + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + public Output internalIp() { + return this.internalIp; } - @Import(name="name") - private @Nullable Output name; + @Import(name="name", required=true) + private Output name; - public Optional> name() { - return Optional.ofNullable(this.name); + public Output name() { + return this.name; } /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ @Import(name="wanName") private @Nullable Output wanName; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ public Optional> wanName() { @@ -70,16 +79,28 @@ public Builder(NetworkInternetAccessStaticNatArgs defaults) { $ = new NetworkInternetAccessStaticNatArgs(Objects.requireNonNull(defaults)); } - public Builder internalIp(@Nullable Output internalIp) { + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder internalIp(Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } - public Builder name(@Nullable Output name) { + public Builder name(Output name) { $.name = name; return this; } @@ -89,7 +110,7 @@ public Builder name(String name) { } /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * * @return builder * @@ -100,7 +121,7 @@ public Builder wanName(@Nullable Output wanName) { } /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity + * @param wanName SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * * @return builder * @@ -110,6 +131,12 @@ public Builder wanName(String wanName) { } public NetworkInternetAccessStaticNatArgs build() { + if ($.internalIp == null) { + throw new MissingRequiredPropertyException("NetworkInternetAccessStaticNatArgs", "internalIp"); + } + if ($.name == null) { + throw new MissingRequiredPropertyException("NetworkInternetAccessStaticNatArgs", "name"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkMulticastArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkMulticastArgs.java new file mode 100644 index 00000000..296d1043 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkMulticastArgs.java @@ -0,0 +1,140 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.junipermist.org.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import com.pulumi.junipermist.org.inputs.NetworkMulticastGroupsArgs; +import java.lang.Boolean; +import java.lang.String; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class NetworkMulticastArgs extends com.pulumi.resources.ResourceArgs { + + public static final NetworkMulticastArgs Empty = new NetworkMulticastArgs(); + + /** + * if the network will only be the soruce of the multicast traffic, IGMP can be disabled + * + */ + @Import(name="disableIgmp") + private @Nullable Output disableIgmp; + + /** + * @return if the network will only be the soruce of the multicast traffic, IGMP can be disabled + * + */ + public Optional> disableIgmp() { + return Optional.ofNullable(this.disableIgmp); + } + + @Import(name="enabled") + private @Nullable Output enabled; + + public Optional> enabled() { + return Optional.ofNullable(this.enabled); + } + + /** + * Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + * + */ + @Import(name="groups") + private @Nullable Output> groups; + + /** + * @return Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + * + */ + public Optional>> groups() { + return Optional.ofNullable(this.groups); + } + + private NetworkMulticastArgs() {} + + private NetworkMulticastArgs(NetworkMulticastArgs $) { + this.disableIgmp = $.disableIgmp; + this.enabled = $.enabled; + this.groups = $.groups; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(NetworkMulticastArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private NetworkMulticastArgs $; + + public Builder() { + $ = new NetworkMulticastArgs(); + } + + public Builder(NetworkMulticastArgs defaults) { + $ = new NetworkMulticastArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param disableIgmp if the network will only be the soruce of the multicast traffic, IGMP can be disabled + * + * @return builder + * + */ + public Builder disableIgmp(@Nullable Output disableIgmp) { + $.disableIgmp = disableIgmp; + return this; + } + + /** + * @param disableIgmp if the network will only be the soruce of the multicast traffic, IGMP can be disabled + * + * @return builder + * + */ + public Builder disableIgmp(Boolean disableIgmp) { + return disableIgmp(Output.of(disableIgmp)); + } + + public Builder enabled(@Nullable Output enabled) { + $.enabled = enabled; + return this; + } + + public Builder enabled(Boolean enabled) { + return enabled(Output.of(enabled)); + } + + /** + * @param groups Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + * + * @return builder + * + */ + public Builder groups(@Nullable Output> groups) { + $.groups = groups; + return this; + } + + /** + * @param groups Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + * + * @return builder + * + */ + public Builder groups(Map groups) { + return groups(Output.of(groups)); + } + + public NetworkMulticastArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkMulticastGroupsArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkMulticastGroupsArgs.java new file mode 100644 index 00000000..55fc15ce --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkMulticastGroupsArgs.java @@ -0,0 +1,83 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.junipermist.org.inputs; + +import com.pulumi.core.Output; +import com.pulumi.core.annotations.Import; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + + +public final class NetworkMulticastGroupsArgs extends com.pulumi.resources.ResourceArgs { + + public static final NetworkMulticastGroupsArgs Empty = new NetworkMulticastGroupsArgs(); + + /** + * RP (rendezvous point) IP Address + * + */ + @Import(name="rpIp") + private @Nullable Output rpIp; + + /** + * @return RP (rendezvous point) IP Address + * + */ + public Optional> rpIp() { + return Optional.ofNullable(this.rpIp); + } + + private NetworkMulticastGroupsArgs() {} + + private NetworkMulticastGroupsArgs(NetworkMulticastGroupsArgs $) { + this.rpIp = $.rpIp; + } + + public static Builder builder() { + return new Builder(); + } + public static Builder builder(NetworkMulticastGroupsArgs defaults) { + return new Builder(defaults); + } + + public static final class Builder { + private NetworkMulticastGroupsArgs $; + + public Builder() { + $ = new NetworkMulticastGroupsArgs(); + } + + public Builder(NetworkMulticastGroupsArgs defaults) { + $ = new NetworkMulticastGroupsArgs(Objects.requireNonNull(defaults)); + } + + /** + * @param rpIp RP (rendezvous point) IP Address + * + * @return builder + * + */ + public Builder rpIp(@Nullable Output rpIp) { + $.rpIp = rpIp; + return this; + } + + /** + * @param rpIp RP (rendezvous point) IP Address + * + * @return builder + * + */ + public Builder rpIp(String rpIp) { + return rpIp(Output.of(rpIp)); + } + + public NetworkMulticastGroupsArgs build() { + return $; + } + } + +} diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkState.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkState.java index 76995702..92f5274e 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkState.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkState.java @@ -7,6 +7,7 @@ import com.pulumi.core.annotations.Import; import com.pulumi.junipermist.org.inputs.NetworkInternalAccessArgs; import com.pulumi.junipermist.org.inputs.NetworkInternetAccessArgs; +import com.pulumi.junipermist.org.inputs.NetworkMulticastArgs; import com.pulumi.junipermist.org.inputs.NetworkTenantsArgs; import com.pulumi.junipermist.org.inputs.NetworkVpnAccessArgs; import java.lang.Boolean; @@ -88,6 +89,21 @@ public Optional> isolation() { return Optional.ofNullable(this.isolation); } + /** + * whether to enable multicast support (only PIM-sparse mode is supported) + * + */ + @Import(name="multicast") + private @Nullable Output multicast; + + /** + * @return whether to enable multicast support (only PIM-sparse mode is supported) + * + */ + public Optional> multicast() { + return Optional.ofNullable(this.multicast); + } + @Import(name="name") private @Nullable Output name; @@ -131,9 +147,17 @@ public Optional> subnet6() { return Optional.ofNullable(this.subnet6); } + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ @Import(name="tenants") private @Nullable Output> tenants; + /** + * @return Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ public Optional>> tenants() { return Optional.ofNullable(this.tenants); } @@ -169,6 +193,7 @@ private NetworkState(NetworkState $) { this.internalAccess = $.internalAccess; this.internetAccess = $.internetAccess; this.isolation = $.isolation; + this.multicast = $.multicast; this.name = $.name; this.orgId = $.orgId; this.routedForNetworks = $.routedForNetworks; @@ -287,6 +312,27 @@ public Builder isolation(Boolean isolation) { return isolation(Output.of(isolation)); } + /** + * @param multicast whether to enable multicast support (only PIM-sparse mode is supported) + * + * @return builder + * + */ + public Builder multicast(@Nullable Output multicast) { + $.multicast = multicast; + return this; + } + + /** + * @param multicast whether to enable multicast support (only PIM-sparse mode is supported) + * + * @return builder + * + */ + public Builder multicast(NetworkMulticastArgs multicast) { + return multicast(Output.of(multicast)); + } + public Builder name(@Nullable Output name) { $.name = name; return this; @@ -354,11 +400,23 @@ public Builder subnet6(String subnet6) { return subnet6(Output.of(subnet6)); } + /** + * @param tenants Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder tenants(@Nullable Output> tenants) { $.tenants = tenants; return this; } + /** + * @param tenants Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder tenants(Map tenants) { return tenants(Output.of(tenants)); } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkVpnAccessArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkVpnAccessArgs.java index d5f28419..1beb07c8 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkVpnAccessArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkVpnAccessArgs.java @@ -52,14 +52,14 @@ public Optional> allowPing() { } /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ @Import(name="destinationNat") private @Nullable Output> destinationNat; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Optional>> destinationNat() { @@ -176,14 +176,14 @@ public Optional> sourceNat() { } /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ @Import(name="staticNat") private @Nullable Output> staticNat; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Optional>> staticNat() { @@ -317,7 +317,7 @@ public Builder allowPing(Boolean allowPing) { } /** - * @param destinationNat Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @param destinationNat Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * * @return builder * @@ -328,7 +328,7 @@ public Builder destinationNat(@Nullable Output internalIp; + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional> internalIp() { return Optional.ofNullable(this.internalIp); } @@ -31,9 +38,9 @@ public Optional> name() { } @Import(name="port") - private @Nullable Output port; + private @Nullable Output port; - public Optional> port() { + public Optional> port() { return Optional.ofNullable(this.port); } @@ -63,11 +70,23 @@ public Builder(NetworkVpnAccessDestinationNatArgs defaults) { $ = new NetworkVpnAccessDestinationNatArgs(Objects.requireNonNull(defaults)); } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(@Nullable Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } @@ -81,12 +100,12 @@ public Builder name(String name) { return name(Output.of(name)); } - public Builder port(@Nullable Output port) { + public Builder port(@Nullable Output port) { $.port = port; return this; } - public Builder port(Integer port) { + public Builder port(String port) { return port(Output.of(port)); } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkVpnAccessStaticNatArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkVpnAccessStaticNatArgs.java index 28cee3e2..06802019 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkVpnAccessStaticNatArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworkVpnAccessStaticNatArgs.java @@ -5,43 +5,35 @@ import com.pulumi.core.Output; import com.pulumi.core.annotations.Import; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; -import java.util.Optional; -import javax.annotation.Nullable; public final class NetworkVpnAccessStaticNatArgs extends com.pulumi.resources.ResourceArgs { public static final NetworkVpnAccessStaticNatArgs Empty = new NetworkVpnAccessStaticNatArgs(); - @Import(name="internalIp") - private @Nullable Output internalIp; - - public Optional> internalIp() { - return Optional.ofNullable(this.internalIp); - } - - @Import(name="name") - private @Nullable Output name; - - public Optional> name() { - return Optional.ofNullable(this.name); - } - /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - @Import(name="wanName") - private @Nullable Output wanName; + @Import(name="internalIp", required=true) + private Output internalIp; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - public Optional> wanName() { - return Optional.ofNullable(this.wanName); + public Output internalIp() { + return this.internalIp; + } + + @Import(name="name", required=true) + private Output name; + + public Output name() { + return this.name; } private NetworkVpnAccessStaticNatArgs() {} @@ -49,7 +41,6 @@ private NetworkVpnAccessStaticNatArgs() {} private NetworkVpnAccessStaticNatArgs(NetworkVpnAccessStaticNatArgs $) { this.internalIp = $.internalIp; this.name = $.name; - this.wanName = $.wanName; } public static Builder builder() { @@ -70,16 +61,28 @@ public Builder(NetworkVpnAccessStaticNatArgs defaults) { $ = new NetworkVpnAccessStaticNatArgs(Objects.requireNonNull(defaults)); } - public Builder internalIp(@Nullable Output internalIp) { + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ + public Builder internalIp(Output internalIp) { $.internalIp = internalIp; return this; } + /** + * @param internalIp The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + * @return builder + * + */ public Builder internalIp(String internalIp) { return internalIp(Output.of(internalIp)); } - public Builder name(@Nullable Output name) { + public Builder name(Output name) { $.name = name; return this; } @@ -88,28 +91,13 @@ public Builder name(String name) { return name(Output.of(name)); } - /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity - * - * @return builder - * - */ - public Builder wanName(@Nullable Output wanName) { - $.wanName = wanName; - return this; - } - - /** - * @param wanName If not set, we configure the nat policies against all WAN ports for simplicity - * - * @return builder - * - */ - public Builder wanName(String wanName) { - return wanName(Output.of(wanName)); - } - public NetworkVpnAccessStaticNatArgs build() { + if ($.internalIp == null) { + throw new MissingRequiredPropertyException("NetworkVpnAccessStaticNatArgs", "internalIp"); + } + if ($.name == null) { + throw new MissingRequiredPropertyException("NetworkVpnAccessStaticNatArgs", "name"); + } return $; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateAclPolicyArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateAclPolicyArgs.java index 7d3fb123..8c170679 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateAclPolicyArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateAclPolicyArgs.java @@ -18,16 +18,18 @@ public final class NetworktemplateAclPolicyArgs extends com.pulumi.resources.Res public static final NetworktemplateAclPolicyArgs Empty = new NetworktemplateAclPolicyArgs(); /** - * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ @Import(name="actions") private @Nullable Output> actions; /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ public Optional>> actions() { @@ -42,16 +44,18 @@ public Optional> name() { } /** - * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ @Import(name="srcTags") private @Nullable Output> srcTags; /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ public Optional>> srcTags() { @@ -85,8 +89,9 @@ public Builder(NetworktemplateAclPolicyArgs defaults) { } /** - * @param actions - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param actions ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -97,8 +102,9 @@ public Builder actions(@Nullable Output } /** - * @param actions - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param actions ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -108,8 +114,9 @@ public Builder actions(List actions) { } /** - * @param actions - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param actions ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -128,8 +135,9 @@ public Builder name(String name) { } /** - * @param srcTags - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param srcTags ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -140,8 +148,9 @@ public Builder srcTags(@Nullable Output> srcTags) { } /** - * @param srcTags - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param srcTags ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -151,8 +160,9 @@ public Builder srcTags(List srcTags) { } /** - * @param srcTags - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param srcTags ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateAclTagsArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateAclTagsArgs.java index b34a9a73..5c27bd9c 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateAclTagsArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateAclTagsArgs.java @@ -21,9 +21,9 @@ public final class NetworktemplateAclTagsArgs extends com.pulumi.resources.Resou /** * required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * */ @Import(name="gbpTag") @@ -31,9 +31,9 @@ public final class NetworktemplateAclTagsArgs extends com.pulumi.resources.Resou /** * @return required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * */ public Optional> gbpTag() { @@ -106,16 +106,14 @@ public Optional> radiusGroup() { } /** - * if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * */ @Import(name="specs") private @Nullable Output> specs; /** - * @return if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @return if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * */ public Optional>> specs() { @@ -208,9 +206,9 @@ public Builder(NetworktemplateAclTagsArgs defaults) { /** * @param gbpTag required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * * @return builder * @@ -222,9 +220,9 @@ public Builder gbpTag(@Nullable Output gbpTag) { /** * @param gbpTag required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * * @return builder * @@ -329,8 +327,7 @@ public Builder radiusGroup(String radiusGroup) { } /** - * @param specs if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @param specs if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * * @return builder * @@ -341,8 +338,7 @@ public Builder specs(@Nullable Output> spec } /** - * @param specs if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @param specs if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * * @return builder * @@ -352,8 +348,7 @@ public Builder specs(List specs) { } /** - * @param specs if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @param specs if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateAclTagsSpecArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateAclTagsSpecArgs.java index b15dd885..cdb22bcb 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateAclTagsSpecArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateAclTagsSpecArgs.java @@ -31,14 +31,14 @@ public Optional> portRange() { } /** - * `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * */ @Import(name="protocol") private @Nullable Output protocol; /** - * @return `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @return `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * */ public Optional> protocol() { @@ -92,7 +92,7 @@ public Builder portRange(String portRange) { } /** - * @param protocol `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @param protocol `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * * @return builder * @@ -103,7 +103,7 @@ public Builder protocol(@Nullable Output protocol) { } /** - * @param protocol `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @param protocol `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateNetworksArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateNetworksArgs.java index dbed1dab..d15d88cc 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateNetworksArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateNetworksArgs.java @@ -48,16 +48,14 @@ public Optional> gateway6() { } /** - * whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * */ @Import(name="isolation") private @Nullable Output isolation; /** - * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * */ public Optional> isolation() { @@ -181,8 +179,7 @@ public Builder gateway6(String gateway6) { } /** - * @param isolation whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @param isolation whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * * @return builder * @@ -193,8 +190,7 @@ public Builder isolation(@Nullable Output isolation) { } /** - * @param isolation whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @param isolation whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplatePortUsagesArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplatePortUsagesArgs.java index 838ec1f3..c281d408 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplatePortUsagesArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplatePortUsagesArgs.java @@ -36,18 +36,14 @@ public Optional> allNetworks() { } /** - * 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 allow_dhcpd is a tri_state. - * 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. + * 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 allow_dhcpd is a tri_state. 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. * */ @Import(name="allowDhcpd") private @Nullable Output allowDhcpd; /** - * @return 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 allow_dhcpd is a tri_state. - * 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. + * @return 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 allow_dhcpd is a tri_state. 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. * */ public Optional> allowDhcpd() { @@ -220,16 +216,14 @@ public Optional> guestNetwork() { } /** - * Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ @Import(name="interSwitchLink") private @Nullable Output interSwitchLink; /** - * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ public Optional> interSwitchLink() { @@ -492,16 +486,14 @@ public Optional> speed() { } /** - * Switch storm control - * Only if `mode`!=`dynamic` + * Switch storm control. Only if `mode`!=`dynamic` * */ @Import(name="stormControl") private @Nullable Output stormControl; /** - * @return Switch storm control - * Only if `mode`!=`dynamic` + * @return Switch storm control. Only if `mode`!=`dynamic` * */ public Optional> stormControl() { @@ -665,9 +657,7 @@ public Builder allNetworks(Boolean allNetworks) { } /** - * @param allowDhcpd 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 allow_dhcpd is a tri_state. - * 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. + * @param allowDhcpd 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 allow_dhcpd is a tri_state. 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. * * @return builder * @@ -678,9 +668,7 @@ public Builder allowDhcpd(@Nullable Output allowDhcpd) { } /** - * @param allowDhcpd 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 allow_dhcpd is a tri_state. - * 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. + * @param allowDhcpd 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 allow_dhcpd is a tri_state. 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. * * @return builder * @@ -931,8 +919,7 @@ public Builder guestNetwork(String guestNetwork) { } /** - * @param interSwitchLink Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @param interSwitchLink Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * * @return builder * @@ -943,8 +930,7 @@ public Builder interSwitchLink(@Nullable Output interSwitchLink) { } /** - * @param interSwitchLink Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @param interSwitchLink Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * * @return builder * @@ -1331,8 +1317,7 @@ public Builder speed(String speed) { } /** - * @param stormControl Switch storm control - * Only if `mode`!=`dynamic` + * @param stormControl Switch storm control. Only if `mode`!=`dynamic` * * @return builder * @@ -1343,8 +1328,7 @@ public Builder stormControl(@Nullable Output> authServersTimeout() { } /** - * use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * */ @Import(name="network") private @Nullable Output network; /** - * @return use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @return use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * */ public Optional> network() { @@ -230,8 +228,7 @@ public Builder authServersTimeout(Integer authServersTimeout) { } /** - * @param network use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @param network use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * * @return builder * @@ -242,8 +239,7 @@ public Builder network(@Nullable Output network) { } /** - * @param network use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @param network use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.java index 0f93d331..9a1460b2 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.java @@ -16,16 +16,14 @@ public final class NetworktemplateSnmpConfigV3ConfigUsmUserArgs extends com.pulu public static final NetworktemplateSnmpConfigV3ConfigUsmUserArgs Empty = new NetworktemplateSnmpConfigV3ConfigUsmUserArgs(); /** - * Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * */ @Import(name="authenticationPassword") private @Nullable Output authenticationPassword; /** - * @return Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @return Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * */ public Optional> authenticationPassword() { @@ -48,16 +46,14 @@ public Optional> authenticationType() { } /** - * Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * */ @Import(name="encryptionPassword") private @Nullable Output encryptionPassword; /** - * @return Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @return Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * */ public Optional> encryptionPassword() { @@ -115,8 +111,7 @@ public Builder(NetworktemplateSnmpConfigV3ConfigUsmUserArgs defaults) { } /** - * @param authenticationPassword Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @param authenticationPassword Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * * @return builder * @@ -127,8 +122,7 @@ public Builder authenticationPassword(@Nullable Output authenticationPas } /** - * @param authenticationPassword Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @param authenticationPassword Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * * @return builder * @@ -159,8 +153,7 @@ public Builder authenticationType(String authenticationType) { } /** - * @param encryptionPassword Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @param encryptionPassword Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * * @return builder * @@ -171,8 +164,7 @@ public Builder encryptionPassword(@Nullable Output encryptionPassword) { } /** - * @param encryptionPassword Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @param encryptionPassword Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateState.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateState.java index 8e9bcb70..f1830ac4 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateState.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/NetworktemplateState.java @@ -206,7 +206,7 @@ public Optional>> ospfAreas() { } /** - * Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -215,7 +215,7 @@ public Optional>> ospfAreas() { private @Nullable Output> portMirroring; /** - * @return Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -661,7 +661,7 @@ public Builder ospfAreas(Map ospfAreas) { } /** - * @param portMirroring Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @param portMirroring Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -674,7 +674,7 @@ public Builder portMirroring(@Nullable Output> portMirroring; /** - * @return Property key is the port mirroring instance name - * port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed * */ public Optional>> portMirroring() { @@ -501,8 +499,7 @@ public Builder portConfig(Map> orgId() { } /** - * custom role attribute parsing scheme\n\nSupported Role Parsing - * Schemes\n<table><tr><th>Name</th><th>Scheme</th></tr><tr><td>cn</td><td><ul><li>The expected role attribute format in - * SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected - * (or the entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - * is “cn”</li></ul></td></tr></table> + * custom role attribute parsing scheme. Supported Role Parsing Schemes + * <table><tr><th>Name</th><th>Scheme</th></tr><tr><td>`cn`</td><td><ul><li>The expected role attribute format in SAML + * Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected (or the + * entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + * “cn”</li></ul></td></tr></table> * */ @Import(name="roleAttrExtraction") private @Nullable Output roleAttrExtraction; /** - * @return custom role attribute parsing scheme\n\nSupported Role Parsing - * Schemes\n<table><tr><th>Name</th><th>Scheme</th></tr><tr><td>cn</td><td><ul><li>The expected role attribute format in - * SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected - * (or the entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - * is “cn”</li></ul></td></tr></table> + * @return custom role attribute parsing scheme. Supported Role Parsing Schemes + * <table><tr><th>Name</th><th>Scheme</th></tr><tr><td>`cn`</td><td><ul><li>The expected role attribute format in SAML + * Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected (or the + * entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + * “cn”</li></ul></td></tr></table> * */ public Optional> roleAttrExtraction() { @@ -219,38 +219,6 @@ public Optional> roleAttrFrom() { return Optional.ofNullable(this.roleAttrFrom); } - /** - * if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - * - */ - @Import(name="scimEnabled") - private @Nullable Output scimEnabled; - - /** - * @return if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - * - */ - public Optional> scimEnabled() { - return Optional.ofNullable(this.scimEnabled); - } - - /** - * if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - * Authorization header of SCIM provisioning requests by the IDP - * - */ - @Import(name="scimSecretToken") - private @Nullable Output scimSecretToken; - - /** - * @return if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - * Authorization header of SCIM provisioning requests by the IDP - * - */ - public Optional> scimSecretToken() { - return Optional.ofNullable(this.scimSecretToken); - } - private SsoState() {} private SsoState(SsoState $) { @@ -267,8 +235,6 @@ private SsoState(SsoState $) { this.orgId = $.orgId; this.roleAttrExtraction = $.roleAttrExtraction; this.roleAttrFrom = $.roleAttrFrom; - this.scimEnabled = $.scimEnabled; - this.scimSecretToken = $.scimSecretToken; } public static Builder builder() { @@ -517,11 +483,11 @@ public Builder orgId(String orgId) { } /** - * @param roleAttrExtraction custom role attribute parsing scheme\n\nSupported Role Parsing - * Schemes\n<table><tr><th>Name</th><th>Scheme</th></tr><tr><td>cn</td><td><ul><li>The expected role attribute format in - * SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected - * (or the entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - * is “cn”</li></ul></td></tr></table> + * @param roleAttrExtraction custom role attribute parsing scheme. Supported Role Parsing Schemes + * <table><tr><th>Name</th><th>Scheme</th></tr><tr><td>`cn`</td><td><ul><li>The expected role attribute format in SAML + * Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected (or the + * entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + * “cn”</li></ul></td></tr></table> * * @return builder * @@ -532,11 +498,11 @@ public Builder roleAttrExtraction(@Nullable Output roleAttrExtraction) { } /** - * @param roleAttrExtraction custom role attribute parsing scheme\n\nSupported Role Parsing - * Schemes\n<table><tr><th>Name</th><th>Scheme</th></tr><tr><td>cn</td><td><ul><li>The expected role attribute format in - * SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected - * (or the entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - * is “cn”</li></ul></td></tr></table> + * @param roleAttrExtraction custom role attribute parsing scheme. Supported Role Parsing Schemes + * <table><tr><th>Name</th><th>Scheme</th></tr><tr><td>`cn`</td><td><ul><li>The expected role attribute format in SAML + * Assertion is “CN=cn,OU=ou1,OU=ou2,…”</li><li>CN (the key) is case insensitive and exactly 1 CN is expected (or the + * entire entry will be ignored)</li><li>E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + * “cn”</li></ul></td></tr></table> * * @return builder * @@ -566,50 +532,6 @@ public Builder roleAttrFrom(String roleAttrFrom) { return roleAttrFrom(Output.of(roleAttrFrom)); } - /** - * @param scimEnabled if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - * - * @return builder - * - */ - public Builder scimEnabled(@Nullable Output scimEnabled) { - $.scimEnabled = scimEnabled; - return this; - } - - /** - * @param scimEnabled if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - * - * @return builder - * - */ - public Builder scimEnabled(Boolean scimEnabled) { - return scimEnabled(Output.of(scimEnabled)); - } - - /** - * @param scimSecretToken if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - * Authorization header of SCIM provisioning requests by the IDP - * - * @return builder - * - */ - public Builder scimSecretToken(@Nullable Output scimSecretToken) { - $.scimSecretToken = scimSecretToken; - return this; - } - - /** - * @param scimSecretToken if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - * Authorization header of SCIM provisioning requests by the IDP - * - * @return builder - * - */ - public Builder scimSecretToken(String scimSecretToken) { - return scimSecretToken(Output.of(scimSecretToken)); - } - public SsoState build() { return $; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanAppLimitArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanAppLimitArgs.java index 99427ac8..9830e533 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanAppLimitArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanAppLimitArgs.java @@ -43,16 +43,14 @@ public Optional> enabled() { } /** - * Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` * */ @Import(name="wxtagIds") private @Nullable Output> wxtagIds; /** - * @return Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * @return Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` * */ public Optional>> wxtagIds() { @@ -118,8 +116,7 @@ public Builder enabled(Boolean enabled) { } /** - * @param wxtagIds Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * @param wxtagIds Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` * * @return builder * @@ -130,8 +127,7 @@ public Builder wxtagIds(@Nullable Output> wxtagIds) { } /** - * @param wxtagIds Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * @param wxtagIds Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanDnsServerRewriteArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanDnsServerRewriteArgs.java index cca3edc0..a28a11c5 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanDnsServerRewriteArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanDnsServerRewriteArgs.java @@ -25,16 +25,14 @@ public Optional> enabled() { } /** - * map between radius_group and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server * */ @Import(name="radiusGroups") private @Nullable Output> radiusGroups; /** - * @return map between radius_group and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * @return map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server * */ public Optional>> radiusGroups() { @@ -76,8 +74,7 @@ public Builder enabled(Boolean enabled) { } /** - * @param radiusGroups map between radius_group and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * @param radiusGroups map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server * * @return builder * @@ -88,8 +85,7 @@ public Builder radiusGroups(@Nullable Output> radiusGroups) { } /** - * @param radiusGroups map between radius_group and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * @param radiusGroups map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanDynamicPskArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanDynamicPskArgs.java index a9915e25..073854f3 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanDynamicPskArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanDynamicPskArgs.java @@ -46,16 +46,14 @@ public Optional> enabled() { } /** - * when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto * */ @Import(name="forceLookup") private @Nullable Output forceLookup; /** - * @return when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * @return when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto * */ public Optional> forceLookup() { @@ -145,8 +143,7 @@ public Builder enabled(Boolean enabled) { } /** - * @param forceLookup when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * @param forceLookup when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto * * @return builder * @@ -157,8 +154,7 @@ public Builder forceLookup(@Nullable Output forceLookup) { } /** - * @param forceLookup when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * @param forceLookup when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanRadsecArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanRadsecArgs.java index b8da93db..d0da99e3 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanRadsecArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/inputs/WlanRadsecArgs.java @@ -41,16 +41,14 @@ public Optional> idleTimeout() { } /** - * To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids * */ @Import(name="mxclusterIds") private @Nullable Output> mxclusterIds; /** - * @return To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * @return To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids * */ public Optional>> mxclusterIds() { @@ -58,16 +56,14 @@ public Optional>> mxclusterIds() { } /** - * default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` * */ @Import(name="proxyHosts") private @Nullable Output> proxyHosts; /** - * @return default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * @return default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` * */ public Optional>> proxyHosts() { @@ -194,8 +190,7 @@ public Builder idleTimeout(Integer idleTimeout) { } /** - * @param mxclusterIds To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * @param mxclusterIds To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids * * @return builder * @@ -206,8 +201,7 @@ public Builder mxclusterIds(@Nullable Output> mxclusterIds) { } /** - * @param mxclusterIds To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * @param mxclusterIds To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids * * @return builder * @@ -217,8 +211,7 @@ public Builder mxclusterIds(List mxclusterIds) { } /** - * @param mxclusterIds To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * @param mxclusterIds To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids * * @return builder * @@ -228,8 +221,7 @@ public Builder mxclusterIds(String... mxclusterIds) { } /** - * @param proxyHosts default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * @param proxyHosts default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` * * @return builder * @@ -240,8 +232,7 @@ public Builder proxyHosts(@Nullable Output> proxyHosts) { } /** - * @param proxyHosts default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * @param proxyHosts default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` * * @return builder * @@ -251,8 +242,7 @@ public Builder proxyHosts(List proxyHosts) { } /** - * @param proxyHosts default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * @param proxyHosts default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayBgpConfig.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayBgpConfig.java index a04c350e..4dc4bb3b 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayBgpConfig.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayBgpConfig.java @@ -41,8 +41,7 @@ public final class DeviceprofileGatewayBgpConfig { */ private @Nullable String exportPolicy; /** - * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * */ private @Nullable Boolean extendedV4Nexthop; @@ -135,8 +134,7 @@ public Optional exportPolicy() { return Optional.ofNullable(this.exportPolicy); } /** - * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * */ public Optional extendedV4Nexthop() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetwork.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetwork.java index bf5adb10..cfb56aea 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetwork.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetwork.java @@ -51,6 +51,10 @@ public final class DeviceprofileGatewayNetwork { private @Nullable List routedForNetworks; private String subnet; private @Nullable String subnet6; + /** + * @return Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ private @Nullable Map tenants; private @Nullable String vlanId; /** @@ -113,6 +117,10 @@ public String subnet() { public Optional subnet6() { return Optional.ofNullable(this.subnet6); } + /** + * @return Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ public Map tenants() { return this.tenants == null ? Map.of() : this.tenants; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkInternetAccess.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkInternetAccess.java index be7d6e3e..617c7331 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkInternetAccess.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkInternetAccess.java @@ -17,7 +17,7 @@ public final class DeviceprofileGatewayNetworkInternetAccess { private @Nullable Boolean createSimpleServicePolicy; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ private @Nullable Map destinationNat; @@ -28,7 +28,7 @@ public final class DeviceprofileGatewayNetworkInternetAccess { */ private @Nullable Boolean restricted; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ private @Nullable Map staticNat; @@ -38,7 +38,7 @@ public Optional createSimpleServicePolicy() { return Optional.ofNullable(this.createSimpleServicePolicy); } /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Map destinationNat() { @@ -55,7 +55,7 @@ public Optional restricted() { return Optional.ofNullable(this.restricted); } /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Map staticNat() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkInternetAccessDestinationNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkInternetAccessDestinationNat.java index d72d49b5..fd6b6cff 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkInternetAccessDestinationNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkInternetAccessDestinationNat.java @@ -4,7 +4,6 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; -import java.lang.Integer; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -12,20 +11,48 @@ @CustomType public final class DeviceprofileGatewayNetworkInternetAccessDestinationNat { + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + /** + * @return The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ + private @Nullable String port; + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + private @Nullable String wanName; private DeviceprofileGatewayNetworkInternetAccessDestinationNat() {} + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional internalIp() { return Optional.ofNullable(this.internalIp); } public Optional name() { return Optional.ofNullable(this.name); } - public Optional port() { + /** + * @return The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ + public Optional port() { return Optional.ofNullable(this.port); } + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + public Optional wanName() { + return Optional.ofNullable(this.wanName); + } public static Builder builder() { return new Builder(); @@ -38,13 +65,15 @@ public static Builder builder(DeviceprofileGatewayNetworkInternetAccessDestinati public static final class Builder { private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + private @Nullable String port; + private @Nullable String wanName; public Builder() {} public Builder(DeviceprofileGatewayNetworkInternetAccessDestinationNat defaults) { Objects.requireNonNull(defaults); this.internalIp = defaults.internalIp; this.name = defaults.name; this.port = defaults.port; + this.wanName = defaults.wanName; } @CustomType.Setter @@ -60,16 +89,23 @@ public Builder name(@Nullable String name) { return this; } @CustomType.Setter - public Builder port(@Nullable Integer port) { + public Builder port(@Nullable String port) { this.port = port; return this; } + @CustomType.Setter + public Builder wanName(@Nullable String wanName) { + + this.wanName = wanName; + return this; + } public DeviceprofileGatewayNetworkInternetAccessDestinationNat build() { final var _resultValue = new DeviceprofileGatewayNetworkInternetAccessDestinationNat(); _resultValue.internalIp = internalIp; _resultValue.name = name; _resultValue.port = port; + _resultValue.wanName = wanName; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkInternetAccessStaticNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkInternetAccessStaticNat.java index f1ad285c..009fb3c0 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkInternetAccessStaticNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkInternetAccessStaticNat.java @@ -4,6 +4,7 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -11,23 +12,31 @@ @CustomType public final class DeviceprofileGatewayNetworkInternetAccessStaticNat { - private @Nullable String internalIp; - private @Nullable String name; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + private String internalIp; + private String name; + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ private @Nullable String wanName; private DeviceprofileGatewayNetworkInternetAccessStaticNat() {} - public Optional internalIp() { - return Optional.ofNullable(this.internalIp); + /** + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + public String internalIp() { + return this.internalIp; } - public Optional name() { - return Optional.ofNullable(this.name); + public String name() { + return this.name; } /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ public Optional wanName() { @@ -43,8 +52,8 @@ public static Builder builder(DeviceprofileGatewayNetworkInternetAccessStaticNat } @CustomType.Builder public static final class Builder { - private @Nullable String internalIp; - private @Nullable String name; + private String internalIp; + private String name; private @Nullable String wanName; public Builder() {} public Builder(DeviceprofileGatewayNetworkInternetAccessStaticNat defaults) { @@ -55,14 +64,18 @@ public Builder(DeviceprofileGatewayNetworkInternetAccessStaticNat defaults) { } @CustomType.Setter - public Builder internalIp(@Nullable String internalIp) { - + public Builder internalIp(String internalIp) { + if (internalIp == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayNetworkInternetAccessStaticNat", "internalIp"); + } this.internalIp = internalIp; return this; } @CustomType.Setter - public Builder name(@Nullable String name) { - + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayNetworkInternetAccessStaticNat", "name"); + } this.name = name; return this; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkVpnAccess.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkVpnAccess.java index da9728ec..6b814cda 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkVpnAccess.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkVpnAccess.java @@ -28,7 +28,7 @@ public final class DeviceprofileGatewayNetworkVpnAccess { */ private @Nullable Boolean allowPing; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ private @Nullable Map destinationNat; @@ -48,14 +48,12 @@ public final class DeviceprofileGatewayNetworkVpnAccess { */ private @Nullable Boolean noReadvertiseToLanOspf; /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ private @Nullable Boolean noReadvertiseToOverlay; /** - * @return by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @return by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * */ private @Nullable List otherVrfs; @@ -70,13 +68,12 @@ public final class DeviceprofileGatewayNetworkVpnAccess { */ private @Nullable DeviceprofileGatewayNetworkVpnAccessSourceNat sourceNat; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ private @Nullable Map staticNat; /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ private @Nullable String summarizedSubnet; @@ -107,7 +104,7 @@ public Optional allowPing() { return Optional.ofNullable(this.allowPing); } /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Map destinationNat() { @@ -135,16 +132,14 @@ public Optional noReadvertiseToLanOspf() { return Optional.ofNullable(this.noReadvertiseToLanOspf); } /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ public Optional noReadvertiseToOverlay() { return Optional.ofNullable(this.noReadvertiseToOverlay); } /** - * @return by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @return by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * */ public List otherVrfs() { @@ -165,15 +160,14 @@ public Optional sourceNat() { return Optional.ofNullable(this.sourceNat); } /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Map staticNat() { return this.staticNat == null ? Map.of() : this.staticNat; } /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ public Optional summarizedSubnet() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkVpnAccessDestinationNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkVpnAccessDestinationNat.java index b26f54ad..10aa2b68 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkVpnAccessDestinationNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkVpnAccessDestinationNat.java @@ -4,7 +4,6 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; -import java.lang.Integer; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -12,18 +11,26 @@ @CustomType public final class DeviceprofileGatewayNetworkVpnAccessDestinationNat { + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + private @Nullable String port; private DeviceprofileGatewayNetworkVpnAccessDestinationNat() {} + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional internalIp() { return Optional.ofNullable(this.internalIp); } public Optional name() { return Optional.ofNullable(this.name); } - public Optional port() { + public Optional port() { return Optional.ofNullable(this.port); } @@ -38,7 +45,7 @@ public static Builder builder(DeviceprofileGatewayNetworkVpnAccessDestinationNat public static final class Builder { private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + private @Nullable String port; public Builder() {} public Builder(DeviceprofileGatewayNetworkVpnAccessDestinationNat defaults) { Objects.requireNonNull(defaults); @@ -60,7 +67,7 @@ public Builder name(@Nullable String name) { return this; } @CustomType.Setter - public Builder port(@Nullable Integer port) { + public Builder port(@Nullable String port) { this.port = port; return this; diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkVpnAccessStaticNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkVpnAccessStaticNat.java index 781c4641..5dac39ff 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkVpnAccessStaticNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayNetworkVpnAccessStaticNat.java @@ -4,34 +4,29 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; -import java.util.Optional; -import javax.annotation.Nullable; @CustomType public final class DeviceprofileGatewayNetworkVpnAccessStaticNat { - private @Nullable String internalIp; - private @Nullable String name; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - private @Nullable String wanName; + private String internalIp; + private String name; private DeviceprofileGatewayNetworkVpnAccessStaticNat() {} - public Optional internalIp() { - return Optional.ofNullable(this.internalIp); - } - public Optional name() { - return Optional.ofNullable(this.name); - } /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - public Optional wanName() { - return Optional.ofNullable(this.wanName); + public String internalIp() { + return this.internalIp; + } + public String name() { + return this.name; } public static Builder builder() { @@ -43,40 +38,35 @@ public static Builder builder(DeviceprofileGatewayNetworkVpnAccessStaticNat defa } @CustomType.Builder public static final class Builder { - private @Nullable String internalIp; - private @Nullable String name; - private @Nullable String wanName; + private String internalIp; + private String name; public Builder() {} public Builder(DeviceprofileGatewayNetworkVpnAccessStaticNat defaults) { Objects.requireNonNull(defaults); this.internalIp = defaults.internalIp; this.name = defaults.name; - this.wanName = defaults.wanName; } @CustomType.Setter - public Builder internalIp(@Nullable String internalIp) { - + public Builder internalIp(String internalIp) { + if (internalIp == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayNetworkVpnAccessStaticNat", "internalIp"); + } this.internalIp = internalIp; return this; } @CustomType.Setter - public Builder name(@Nullable String name) { - + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayNetworkVpnAccessStaticNat", "name"); + } this.name = name; return this; } - @CustomType.Setter - public Builder wanName(@Nullable String wanName) { - - this.wanName = wanName; - return this; - } public DeviceprofileGatewayNetworkVpnAccessStaticNat build() { final var _resultValue = new DeviceprofileGatewayNetworkVpnAccessStaticNat(); _resultValue.internalIp = internalIp; _resultValue.name = name; - _resultValue.wanName = wanName; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfig.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfig.java index 12bb54e7..ffbdc91f 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfig.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfig.java @@ -33,9 +33,7 @@ public final class DeviceprofileGatewayPortConfig { */ private @Nullable String aeIdx; /** - * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * */ private @Nullable Boolean aeLacpForceUp; @@ -45,6 +43,10 @@ public final class DeviceprofileGatewayPortConfig { * */ private @Nullable Boolean critical; + /** + * @return Interface Description. Can be a variable (i.e. "{{myvar}}") + * + */ private @Nullable String description; private @Nullable Boolean disableAutoneg; /** @@ -58,14 +60,12 @@ public final class DeviceprofileGatewayPortConfig { */ private @Nullable String dslType; /** - * @return if `wan_type`==`dsl` - * 16 bit int + * @return if `wan_type`==`dsl`, 16 bit int * */ private @Nullable Integer dslVci; /** - * @return if `wan_type`==`dsl` - * 8 bit int + * @return if `wan_type`==`dsl`, 8 bit int * */ private @Nullable Integer dslVpi; @@ -107,7 +107,7 @@ public final class DeviceprofileGatewayPortConfig { */ private @Nullable String name; /** - * @return if `usage`==`lan` + * @return if `usage`==`lan`, name of the `junipermist.org.Network` resource * */ private @Nullable List networks; @@ -118,7 +118,7 @@ public final class DeviceprofileGatewayPortConfig { private @Nullable Integer outerVlanId; private @Nullable Boolean poeDisabled; /** - * @return if `usage`==`lan` + * @return Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * */ private @Nullable String portNetwork; @@ -164,43 +164,44 @@ public final class DeviceprofileGatewayPortConfig { * */ private String usage; - /** - * @return if WAN interface is on a VLAN - * - */ - private @Nullable Integer vlanId; + private @Nullable String vlanId; /** * @return Property key is the VPN name * */ private @Nullable Map vpnPaths; /** - * @return when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @return Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * */ private @Nullable String wanArpPolicer; /** - * @return optional, if spoke should reach this port by a different IP + * @return Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * */ private @Nullable String wanExtIp; /** - * @return Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * @return Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * */ private @Nullable Map wanExtraRoutes; /** - * @return if `usage`==`wan` + * @return Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + */ + private @Nullable List wanNetworks; + /** + * @return Only if `usage`==`wan` * */ private @Nullable DeviceprofileGatewayPortConfigWanProbeOverride wanProbeOverride; /** - * @return optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * @return Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip * */ private @Nullable DeviceprofileGatewayPortConfigWanSourceNat wanSourceNat; /** - * @return if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * @return Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * */ private @Nullable String wanType; @@ -221,9 +222,7 @@ public Optional aeIdx() { return Optional.ofNullable(this.aeIdx); } /** - * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * */ public Optional aeLacpForceUp() { @@ -239,6 +238,10 @@ public Optional aggregated() { public Optional critical() { return Optional.ofNullable(this.critical); } + /** + * @return Interface Description. Can be a variable (i.e. "{{myvar}}") + * + */ public Optional description() { return Optional.ofNullable(this.description); } @@ -260,16 +263,14 @@ public Optional dslType() { return Optional.ofNullable(this.dslType); } /** - * @return if `wan_type`==`dsl` - * 16 bit int + * @return if `wan_type`==`dsl`, 16 bit int * */ public Optional dslVci() { return Optional.ofNullable(this.dslVci); } /** - * @return if `wan_type`==`dsl` - * 8 bit int + * @return if `wan_type`==`dsl`, 8 bit int * */ public Optional dslVpi() { @@ -331,7 +332,7 @@ public Optional name() { return Optional.ofNullable(this.name); } /** - * @return if `usage`==`lan` + * @return if `usage`==`lan`, name of the `junipermist.org.Network` resource * */ public List networks() { @@ -348,7 +349,7 @@ public Optional poeDisabled() { return Optional.ofNullable(this.poeDisabled); } /** - * @return if `usage`==`lan` + * @return Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * */ public Optional portNetwork() { @@ -416,11 +417,7 @@ public Optional trafficShaping() { public String usage() { return this.usage; } - /** - * @return if WAN interface is on a VLAN - * - */ - public Optional vlanId() { + public Optional vlanId() { return Optional.ofNullable(this.vlanId); } /** @@ -431,42 +428,49 @@ public Map vpnPaths() { return this.vpnPaths == null ? Map.of() : this.vpnPaths; } /** - * @return when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @return Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * */ public Optional wanArpPolicer() { return Optional.ofNullable(this.wanArpPolicer); } /** - * @return optional, if spoke should reach this port by a different IP + * @return Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * */ public Optional wanExtIp() { return Optional.ofNullable(this.wanExtIp); } /** - * @return Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * @return Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * */ public Map wanExtraRoutes() { return this.wanExtraRoutes == null ? Map.of() : this.wanExtraRoutes; } /** - * @return if `usage`==`wan` + * @return Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + */ + public List wanNetworks() { + return this.wanNetworks == null ? List.of() : this.wanNetworks; + } + /** + * @return Only if `usage`==`wan` * */ public Optional wanProbeOverride() { return Optional.ofNullable(this.wanProbeOverride); } /** - * @return optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * @return Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip * */ public Optional wanSourceNat() { return Optional.ofNullable(this.wanSourceNat); } /** - * @return if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * @return Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * */ public Optional wanType() { @@ -516,11 +520,12 @@ public static final class Builder { private @Nullable String svrPortRange; private @Nullable DeviceprofileGatewayPortConfigTrafficShaping trafficShaping; private String usage; - private @Nullable Integer vlanId; + private @Nullable String vlanId; private @Nullable Map vpnPaths; private @Nullable String wanArpPolicer; private @Nullable String wanExtIp; private @Nullable Map wanExtraRoutes; + private @Nullable List wanNetworks; private @Nullable DeviceprofileGatewayPortConfigWanProbeOverride wanProbeOverride; private @Nullable DeviceprofileGatewayPortConfigWanSourceNat wanSourceNat; private @Nullable String wanType; @@ -566,6 +571,7 @@ public Builder(DeviceprofileGatewayPortConfig defaults) { this.wanArpPolicer = defaults.wanArpPolicer; this.wanExtIp = defaults.wanExtIp; this.wanExtraRoutes = defaults.wanExtraRoutes; + this.wanNetworks = defaults.wanNetworks; this.wanProbeOverride = defaults.wanProbeOverride; this.wanSourceNat = defaults.wanSourceNat; this.wanType = defaults.wanType; @@ -784,7 +790,7 @@ public Builder usage(String usage) { return this; } @CustomType.Setter - public Builder vlanId(@Nullable Integer vlanId) { + public Builder vlanId(@Nullable String vlanId) { this.vlanId = vlanId; return this; @@ -814,6 +820,15 @@ public Builder wanExtraRoutes(@Nullable Map wanNetworks) { + + this.wanNetworks = wanNetworks; + return this; + } + public Builder wanNetworks(String... wanNetworks) { + return wanNetworks(List.of(wanNetworks)); + } + @CustomType.Setter public Builder wanProbeOverride(@Nullable DeviceprofileGatewayPortConfigWanProbeOverride wanProbeOverride) { this.wanProbeOverride = wanProbeOverride; @@ -872,6 +887,7 @@ public DeviceprofileGatewayPortConfig build() { _resultValue.wanArpPolicer = wanArpPolicer; _resultValue.wanExtIp = wanExtIp; _resultValue.wanExtraRoutes = wanExtraRoutes; + _resultValue.wanNetworks = wanNetworks; _resultValue.wanProbeOverride = wanProbeOverride; _resultValue.wanSourceNat = wanSourceNat; _resultValue.wanType = wanType; diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfigIpConfig.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfigIpConfig.java index 715b6c98..fbb2431b 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfigIpConfig.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfigIpConfig.java @@ -23,13 +23,17 @@ public final class DeviceprofileGatewayPortConfigIpConfig { */ private @Nullable List dnsSuffixes; /** - * @return except for out-of_band interface (vme/em0/fxp0) + * @return except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * */ private @Nullable String gateway; + /** + * @return Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + */ private @Nullable String ip; /** - * @return used only if `subnet` is not specified in `networks` + * @return used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * */ private @Nullable String netmask; @@ -75,17 +79,21 @@ public List dnsSuffixes() { return this.dnsSuffixes == null ? List.of() : this.dnsSuffixes; } /** - * @return except for out-of_band interface (vme/em0/fxp0) + * @return except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * */ public Optional gateway() { return Optional.ofNullable(this.gateway); } + /** + * @return Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + */ public Optional ip() { return Optional.ofNullable(this.ip); } /** - * @return used only if `subnet` is not specified in `networks` + * @return used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * */ public Optional netmask() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfigTrafficShaping.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfigTrafficShaping.java index a3fd5f6d..2abc0337 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfigTrafficShaping.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfigTrafficShaping.java @@ -14,17 +14,20 @@ @CustomType public final class DeviceprofileGatewayPortConfigTrafficShaping { /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ private @Nullable List classPercentages; private @Nullable Boolean enabled; + /** + * @return Interface Transmit Cap in kbps + * + */ + private @Nullable Integer maxTxKbps; private DeviceprofileGatewayPortConfigTrafficShaping() {} /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ public List classPercentages() { @@ -33,6 +36,13 @@ public List classPercentages() { public Optional enabled() { return Optional.ofNullable(this.enabled); } + /** + * @return Interface Transmit Cap in kbps + * + */ + public Optional maxTxKbps() { + return Optional.ofNullable(this.maxTxKbps); + } public static Builder builder() { return new Builder(); @@ -45,11 +55,13 @@ public static Builder builder(DeviceprofileGatewayPortConfigTrafficShaping defau public static final class Builder { private @Nullable List classPercentages; private @Nullable Boolean enabled; + private @Nullable Integer maxTxKbps; public Builder() {} public Builder(DeviceprofileGatewayPortConfigTrafficShaping defaults) { Objects.requireNonNull(defaults); this.classPercentages = defaults.classPercentages; this.enabled = defaults.enabled; + this.maxTxKbps = defaults.maxTxKbps; } @CustomType.Setter @@ -67,10 +79,17 @@ public Builder enabled(@Nullable Boolean enabled) { this.enabled = enabled; return this; } + @CustomType.Setter + public Builder maxTxKbps(@Nullable Integer maxTxKbps) { + + this.maxTxKbps = maxTxKbps; + return this; + } public DeviceprofileGatewayPortConfigTrafficShaping build() { final var _resultValue = new DeviceprofileGatewayPortConfigTrafficShaping(); _resultValue.classPercentages = classPercentages; _resultValue.enabled = enabled; + _resultValue.maxTxKbps = maxTxKbps; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShaping.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShaping.java index c57206a1..339f7a7e 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShaping.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayPortConfigVpnPathsTrafficShaping.java @@ -14,17 +14,20 @@ @CustomType public final class DeviceprofileGatewayPortConfigVpnPathsTrafficShaping { /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ private @Nullable List classPercentages; private @Nullable Boolean enabled; + /** + * @return Interface Transmit Cap in kbps + * + */ + private @Nullable Integer maxTxKbps; private DeviceprofileGatewayPortConfigVpnPathsTrafficShaping() {} /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ public List classPercentages() { @@ -33,6 +36,13 @@ public List classPercentages() { public Optional enabled() { return Optional.ofNullable(this.enabled); } + /** + * @return Interface Transmit Cap in kbps + * + */ + public Optional maxTxKbps() { + return Optional.ofNullable(this.maxTxKbps); + } public static Builder builder() { return new Builder(); @@ -45,11 +55,13 @@ public static Builder builder(DeviceprofileGatewayPortConfigVpnPathsTrafficShapi public static final class Builder { private @Nullable List classPercentages; private @Nullable Boolean enabled; + private @Nullable Integer maxTxKbps; public Builder() {} public Builder(DeviceprofileGatewayPortConfigVpnPathsTrafficShaping defaults) { Objects.requireNonNull(defaults); this.classPercentages = defaults.classPercentages; this.enabled = defaults.enabled; + this.maxTxKbps = defaults.maxTxKbps; } @CustomType.Setter @@ -67,10 +79,17 @@ public Builder enabled(@Nullable Boolean enabled) { this.enabled = enabled; return this; } + @CustomType.Setter + public Builder maxTxKbps(@Nullable Integer maxTxKbps) { + + this.maxTxKbps = maxTxKbps; + return this; + } public DeviceprofileGatewayPortConfigVpnPathsTrafficShaping build() { final var _resultValue = new DeviceprofileGatewayPortConfigVpnPathsTrafficShaping(); _resultValue.classPercentages = classPercentages; _resultValue.enabled = enabled; + _resultValue.maxTxKbps = maxTxKbps; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayRoutingPoliciesTermAction.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayRoutingPoliciesTermAction.java index 44beb94a..963437a5 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayRoutingPoliciesTermAction.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayRoutingPoliciesTermAction.java @@ -20,6 +20,11 @@ public final class DeviceprofileGatewayRoutingPoliciesTermAction { * */ private @Nullable List addTargetVrfs; + /** + * @return route aggregation + * + */ + private @Nullable List aggregates; /** * @return when used as export policy, optional * @@ -61,6 +66,13 @@ public List addCommunities() { public List addTargetVrfs() { return this.addTargetVrfs == null ? List.of() : this.addTargetVrfs; } + /** + * @return route aggregation + * + */ + public List aggregates() { + return this.aggregates == null ? List.of() : this.aggregates; + } /** * @return when used as export policy, optional * @@ -112,6 +124,7 @@ public static final class Builder { private @Nullable Boolean accept; private @Nullable List addCommunities; private @Nullable List addTargetVrfs; + private @Nullable List aggregates; private @Nullable List communities; private @Nullable List excludeAsPaths; private @Nullable List excludeCommunities; @@ -124,6 +137,7 @@ public Builder(DeviceprofileGatewayRoutingPoliciesTermAction defaults) { this.accept = defaults.accept; this.addCommunities = defaults.addCommunities; this.addTargetVrfs = defaults.addTargetVrfs; + this.aggregates = defaults.aggregates; this.communities = defaults.communities; this.excludeAsPaths = defaults.excludeAsPaths; this.excludeCommunities = defaults.excludeCommunities; @@ -157,6 +171,15 @@ public Builder addTargetVrfs(String... addTargetVrfs) { return addTargetVrfs(List.of(addTargetVrfs)); } @CustomType.Setter + public Builder aggregates(@Nullable List aggregates) { + + this.aggregates = aggregates; + return this; + } + public Builder aggregates(String... aggregates) { + return aggregates(List.of(aggregates)); + } + @CustomType.Setter public Builder communities(@Nullable List communities) { this.communities = communities; @@ -212,6 +235,7 @@ public DeviceprofileGatewayRoutingPoliciesTermAction build() { _resultValue.accept = accept; _resultValue.addCommunities = addCommunities; _resultValue.addTargetVrfs = addTargetVrfs; + _resultValue.aggregates = aggregates; _resultValue.communities = communities; _resultValue.excludeAsPaths = excludeAsPaths; _resultValue.excludeCommunities = excludeCommunities; diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayRoutingPoliciesTermMatching.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayRoutingPoliciesTermMatching.java index cebb0571..682671f4 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayRoutingPoliciesTermMatching.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayRoutingPoliciesTermMatching.java @@ -39,8 +39,7 @@ public final class DeviceprofileGatewayRoutingPoliciesTermMatching { private @Nullable List vpnNeighborMacs; private @Nullable DeviceprofileGatewayRoutingPoliciesTermMatchingVpnPathSla vpnPathSla; /** - * @return overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @return overlay-facing criteria (used for bgp_config where via=vpn). ordered- * */ private @Nullable List vpnPaths; @@ -87,8 +86,7 @@ public Optional vpnPa return Optional.ofNullable(this.vpnPathSla); } /** - * @return overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @return overlay-facing criteria (used for bgp_config where via=vpn). ordered- * */ public List vpnPaths() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists.java index b078f534..ad1b4aaf 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists.java @@ -13,8 +13,7 @@ public final class DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists { private @Nullable String route; /** - * @return name of the vrf instance - * it can also be the name of the VPN or wan if they + * @return name of the vrf instance, it can also be the name of the VPN or wan if they * */ private @Nullable String vrfName; @@ -24,8 +23,7 @@ public Optional route() { return Optional.ofNullable(this.route); } /** - * @return name of the vrf instance - * it can also be the name of the VPN or wan if they + * @return name of the vrf instance, it can also be the name of the VPN or wan if they * */ public Optional vrfName() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayServicePolicy.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayServicePolicy.java index 2dd737fd..9e1b84c7 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayServicePolicy.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayServicePolicy.java @@ -39,8 +39,7 @@ public final class DeviceprofileGatewayServicePolicy { */ private @Nullable String name; /** - * @return by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @return by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * */ private @Nullable String pathPreference; @@ -96,8 +95,7 @@ public Optional name() { return Optional.ofNullable(this.name); } /** - * @return by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @return by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * */ public Optional pathPreference() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigs.java index f3896754..acb13784 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigs.java @@ -21,75 +21,77 @@ public final class DeviceprofileGatewayTunnelConfigs { private @Nullable DeviceprofileGatewayTunnelConfigsAutoProvision autoProvision; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ private @Nullable Integer ikeLifetime; /** - * @return Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @return Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * */ private @Nullable String ikeMode; /** - * @return if `provider`== `custom-ipsec` + * @return if `provider`==`custom-ipsec` * */ private @Nullable List ikeProposals; /** - * @return if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ private @Nullable Integer ipsecLifetime; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ private @Nullable List ipsecProposals; /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ private @Nullable String localId; /** - * @return enum: `active-active`, `active-standby` + * @return Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * */ private @Nullable String mode; /** - * @return networks reachable via this tunnel + * @return if `provider`==`custom-ipsec`, networks reachable via this tunnel * */ private @Nullable List networks; + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ private @Nullable DeviceprofileGatewayTunnelConfigsPrimary primary; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ private @Nullable DeviceprofileGatewayTunnelConfigsProbe probe; /** - * @return Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * @return Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * */ private @Nullable String protocol; /** - * @return enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @return Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * */ private @Nullable String provider; /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ private @Nullable String psk; + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ private @Nullable DeviceprofileGatewayTunnelConfigsSecondary secondary; /** - * @return Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @return Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * */ private @Nullable String version; @@ -99,103 +101,105 @@ public Optional autoProvision() return Optional.ofNullable(this.autoProvision); } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ public Optional ikeLifetime() { return Optional.ofNullable(this.ikeLifetime); } /** - * @return Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @return Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * */ public Optional ikeMode() { return Optional.ofNullable(this.ikeMode); } /** - * @return if `provider`== `custom-ipsec` + * @return if `provider`==`custom-ipsec` * */ public List ikeProposals() { return this.ikeProposals == null ? List.of() : this.ikeProposals; } /** - * @return if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ public Optional ipsecLifetime() { return Optional.ofNullable(this.ipsecLifetime); } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ public List ipsecProposals() { return this.ipsecProposals == null ? List.of() : this.ipsecProposals; } /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional localId() { return Optional.ofNullable(this.localId); } /** - * @return enum: `active-active`, `active-standby` + * @return Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * */ public Optional mode() { return Optional.ofNullable(this.mode); } /** - * @return networks reachable via this tunnel + * @return if `provider`==`custom-ipsec`, networks reachable via this tunnel * */ public List networks() { return this.networks == null ? List.of() : this.networks; } + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ public Optional primary() { return Optional.ofNullable(this.primary); } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ public Optional probe() { return Optional.ofNullable(this.probe); } /** - * @return Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * @return Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * */ public Optional protocol() { return Optional.ofNullable(this.protocol); } /** - * @return enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @return Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * */ public Optional provider() { return Optional.ofNullable(this.provider); } /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional psk() { return Optional.ofNullable(this.psk); } + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ public Optional secondary() { return Optional.ofNullable(this.secondary); } /** - * @return Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @return Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * */ public Optional version() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsAutoProvision.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsAutoProvision.java index 6876c30c..05ca7c09 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsAutoProvision.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsAutoProvision.java @@ -4,10 +4,12 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import com.pulumi.junipermist.org.outputs.DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng; import com.pulumi.junipermist.org.outputs.DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary; import com.pulumi.junipermist.org.outputs.DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary; import java.lang.Boolean; +import java.lang.String; import java.util.Objects; import java.util.Optional; import javax.annotation.Nullable; @@ -15,20 +17,52 @@ @CustomType public final class DeviceprofileGatewayTunnelConfigsAutoProvision { private @Nullable Boolean enable; + /** + * @return API override for POP selection + * + */ private @Nullable DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng latlng; private @Nullable DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary primary; + /** + * @return enum: `jse-ipsec`, `zscaler-ipsec` + * + */ + private String provider; + /** + * @return API override for POP selection + * + */ + private @Nullable String region; private @Nullable DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary secondary; private DeviceprofileGatewayTunnelConfigsAutoProvision() {} public Optional enable() { return Optional.ofNullable(this.enable); } + /** + * @return API override for POP selection + * + */ public Optional latlng() { return Optional.ofNullable(this.latlng); } public Optional primary() { return Optional.ofNullable(this.primary); } + /** + * @return enum: `jse-ipsec`, `zscaler-ipsec` + * + */ + public String provider() { + return this.provider; + } + /** + * @return API override for POP selection + * + */ + public Optional region() { + return Optional.ofNullable(this.region); + } public Optional secondary() { return Optional.ofNullable(this.secondary); } @@ -45,6 +79,8 @@ public static final class Builder { private @Nullable Boolean enable; private @Nullable DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng latlng; private @Nullable DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary primary; + private String provider; + private @Nullable String region; private @Nullable DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary secondary; public Builder() {} public Builder(DeviceprofileGatewayTunnelConfigsAutoProvision defaults) { @@ -52,6 +88,8 @@ public Builder(DeviceprofileGatewayTunnelConfigsAutoProvision defaults) { this.enable = defaults.enable; this.latlng = defaults.latlng; this.primary = defaults.primary; + this.provider = defaults.provider; + this.region = defaults.region; this.secondary = defaults.secondary; } @@ -74,6 +112,20 @@ public Builder primary(@Nullable DeviceprofileGatewayTunnelConfigsAutoProvisionP return this; } @CustomType.Setter + public Builder provider(String provider) { + if (provider == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayTunnelConfigsAutoProvision", "provider"); + } + this.provider = provider; + return this; + } + @CustomType.Setter + public Builder region(@Nullable String region) { + + this.region = region; + return this; + } + @CustomType.Setter public Builder secondary(@Nullable DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary secondary) { this.secondary = secondary; @@ -84,6 +136,8 @@ public DeviceprofileGatewayTunnelConfigsAutoProvision build() { _resultValue.enable = enable; _resultValue.latlng = latlng; _resultValue.primary = primary; + _resultValue.provider = provider; + _resultValue.region = region; _resultValue.secondary = secondary; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary.java index fe65e0b7..3e8f1599 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary.java @@ -7,12 +7,11 @@ import java.lang.String; import java.util.List; import java.util.Objects; -import java.util.Optional; import javax.annotation.Nullable; @CustomType public final class DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary { - private @Nullable String numHosts; + private @Nullable List probeIps; /** * @return optional, only needed if `vars_only`==`false` * @@ -20,8 +19,8 @@ public final class DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary { private @Nullable List wanNames; private DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary() {} - public Optional numHosts() { - return Optional.ofNullable(this.numHosts); + public List probeIps() { + return this.probeIps == null ? List.of() : this.probeIps; } /** * @return optional, only needed if `vars_only`==`false` @@ -40,21 +39,24 @@ public static Builder builder(DeviceprofileGatewayTunnelConfigsAutoProvisionPrim } @CustomType.Builder public static final class Builder { - private @Nullable String numHosts; + private @Nullable List probeIps; private @Nullable List wanNames; public Builder() {} public Builder(DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary defaults) { Objects.requireNonNull(defaults); - this.numHosts = defaults.numHosts; + this.probeIps = defaults.probeIps; this.wanNames = defaults.wanNames; } @CustomType.Setter - public Builder numHosts(@Nullable String numHosts) { + public Builder probeIps(@Nullable List probeIps) { - this.numHosts = numHosts; + this.probeIps = probeIps; return this; } + public Builder probeIps(String... probeIps) { + return probeIps(List.of(probeIps)); + } @CustomType.Setter public Builder wanNames(@Nullable List wanNames) { @@ -66,7 +68,7 @@ public Builder wanNames(String... wanNames) { } public DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary build() { final var _resultValue = new DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary(); - _resultValue.numHosts = numHosts; + _resultValue.probeIps = probeIps; _resultValue.wanNames = wanNames; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary.java index e26e5806..ef95822a 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary.java @@ -7,12 +7,11 @@ import java.lang.String; import java.util.List; import java.util.Objects; -import java.util.Optional; import javax.annotation.Nullable; @CustomType public final class DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary { - private @Nullable String numHosts; + private @Nullable List probeIps; /** * @return optional, only needed if `vars_only`==`false` * @@ -20,8 +19,8 @@ public final class DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary { private @Nullable List wanNames; private DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary() {} - public Optional numHosts() { - return Optional.ofNullable(this.numHosts); + public List probeIps() { + return this.probeIps == null ? List.of() : this.probeIps; } /** * @return optional, only needed if `vars_only`==`false` @@ -40,21 +39,24 @@ public static Builder builder(DeviceprofileGatewayTunnelConfigsAutoProvisionSeco } @CustomType.Builder public static final class Builder { - private @Nullable String numHosts; + private @Nullable List probeIps; private @Nullable List wanNames; public Builder() {} public Builder(DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary defaults) { Objects.requireNonNull(defaults); - this.numHosts = defaults.numHosts; + this.probeIps = defaults.probeIps; this.wanNames = defaults.wanNames; } @CustomType.Setter - public Builder numHosts(@Nullable String numHosts) { + public Builder probeIps(@Nullable List probeIps) { - this.numHosts = numHosts; + this.probeIps = probeIps; return this; } + public Builder probeIps(String... probeIps) { + return probeIps(List.of(probeIps)); + } @CustomType.Setter public Builder wanNames(@Nullable List wanNames) { @@ -66,7 +68,7 @@ public Builder wanNames(String... wanNames) { } public DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary build() { final var _resultValue = new DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary(); - _resultValue.numHosts = numHosts; + _resultValue.probeIps = probeIps; _resultValue.wanNames = wanNames; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsIpsecProposal.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsIpsecProposal.java index 2c1a4b0a..e40c6c55 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsIpsecProposal.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsIpsecProposal.java @@ -17,7 +17,7 @@ public final class DeviceprofileGatewayTunnelConfigsIpsecProposal { */ private @Nullable String authAlgo; /** - * @return Only if `provider`== `custom-ipsec`. enum: + * @return Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -46,7 +46,7 @@ public Optional authAlgo() { return Optional.ofNullable(this.authAlgo); } /** - * @return Only if `provider`== `custom-ipsec`. enum: + * @return Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsPrimary.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsPrimary.java index 63b8c544..2630dde1 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsPrimary.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsPrimary.java @@ -4,6 +4,7 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.List; import java.util.Objects; @@ -11,30 +12,26 @@ @CustomType public final class DeviceprofileGatewayTunnelConfigsPrimary { - private @Nullable List hosts; + private List hosts; /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ private @Nullable List internalIps; private @Nullable List probeIps; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ private @Nullable List remoteIds; - private @Nullable List wanNames; + private List wanNames; private DeviceprofileGatewayTunnelConfigsPrimary() {} public List hosts() { - return this.hosts == null ? List.of() : this.hosts; + return this.hosts; } /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ public List internalIps() { @@ -44,14 +41,14 @@ public List probeIps() { return this.probeIps == null ? List.of() : this.probeIps; } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public List remoteIds() { return this.remoteIds == null ? List.of() : this.remoteIds; } public List wanNames() { - return this.wanNames == null ? List.of() : this.wanNames; + return this.wanNames; } public static Builder builder() { @@ -63,11 +60,11 @@ public static Builder builder(DeviceprofileGatewayTunnelConfigsPrimary defaults) } @CustomType.Builder public static final class Builder { - private @Nullable List hosts; + private List hosts; private @Nullable List internalIps; private @Nullable List probeIps; private @Nullable List remoteIds; - private @Nullable List wanNames; + private List wanNames; public Builder() {} public Builder(DeviceprofileGatewayTunnelConfigsPrimary defaults) { Objects.requireNonNull(defaults); @@ -79,8 +76,10 @@ public Builder(DeviceprofileGatewayTunnelConfigsPrimary defaults) { } @CustomType.Setter - public Builder hosts(@Nullable List hosts) { - + public Builder hosts(List hosts) { + if (hosts == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayTunnelConfigsPrimary", "hosts"); + } this.hosts = hosts; return this; } @@ -115,8 +114,10 @@ public Builder remoteIds(String... remoteIds) { return remoteIds(List.of(remoteIds)); } @CustomType.Setter - public Builder wanNames(@Nullable List wanNames) { - + public Builder wanNames(List wanNames) { + if (wanNames == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayTunnelConfigsPrimary", "wanNames"); + } this.wanNames = wanNames; return this; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsSecondary.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsSecondary.java index b48adb9e..d4ee7cd5 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsSecondary.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelConfigsSecondary.java @@ -4,6 +4,7 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.List; import java.util.Objects; @@ -11,30 +12,26 @@ @CustomType public final class DeviceprofileGatewayTunnelConfigsSecondary { - private @Nullable List hosts; + private List hosts; /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ private @Nullable List internalIps; private @Nullable List probeIps; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ private @Nullable List remoteIds; - private @Nullable List wanNames; + private List wanNames; private DeviceprofileGatewayTunnelConfigsSecondary() {} public List hosts() { - return this.hosts == null ? List.of() : this.hosts; + return this.hosts; } /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ public List internalIps() { @@ -44,14 +41,14 @@ public List probeIps() { return this.probeIps == null ? List.of() : this.probeIps; } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public List remoteIds() { return this.remoteIds == null ? List.of() : this.remoteIds; } public List wanNames() { - return this.wanNames == null ? List.of() : this.wanNames; + return this.wanNames; } public static Builder builder() { @@ -63,11 +60,11 @@ public static Builder builder(DeviceprofileGatewayTunnelConfigsSecondary default } @CustomType.Builder public static final class Builder { - private @Nullable List hosts; + private List hosts; private @Nullable List internalIps; private @Nullable List probeIps; private @Nullable List remoteIds; - private @Nullable List wanNames; + private List wanNames; public Builder() {} public Builder(DeviceprofileGatewayTunnelConfigsSecondary defaults) { Objects.requireNonNull(defaults); @@ -79,8 +76,10 @@ public Builder(DeviceprofileGatewayTunnelConfigsSecondary defaults) { } @CustomType.Setter - public Builder hosts(@Nullable List hosts) { - + public Builder hosts(List hosts) { + if (hosts == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayTunnelConfigsSecondary", "hosts"); + } this.hosts = hosts; return this; } @@ -115,8 +114,10 @@ public Builder remoteIds(String... remoteIds) { return remoteIds(List.of(remoteIds)); } @CustomType.Setter - public Builder wanNames(@Nullable List wanNames) { - + public Builder wanNames(List wanNames) { + if (wanNames == null) { + throw new MissingRequiredPropertyException("DeviceprofileGatewayTunnelConfigsSecondary", "wanNames"); + } this.wanNames = wanNames; return this; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelProviderOptionsJse.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelProviderOptionsJse.java index 510e1373..78e54bb7 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelProviderOptionsJse.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelProviderOptionsJse.java @@ -12,16 +12,24 @@ @CustomType public final class DeviceprofileGatewayTunnelProviderOptionsJse { - private @Nullable String name; private @Nullable Integer numUsers; + /** + * @return JSE Organization name + * + */ + private @Nullable String orgName; private DeviceprofileGatewayTunnelProviderOptionsJse() {} - public Optional name() { - return Optional.ofNullable(this.name); - } public Optional numUsers() { return Optional.ofNullable(this.numUsers); } + /** + * @return JSE Organization name + * + */ + public Optional orgName() { + return Optional.ofNullable(this.orgName); + } public static Builder builder() { return new Builder(); @@ -32,31 +40,31 @@ public static Builder builder(DeviceprofileGatewayTunnelProviderOptionsJse defau } @CustomType.Builder public static final class Builder { - private @Nullable String name; private @Nullable Integer numUsers; + private @Nullable String orgName; public Builder() {} public Builder(DeviceprofileGatewayTunnelProviderOptionsJse defaults) { Objects.requireNonNull(defaults); - this.name = defaults.name; this.numUsers = defaults.numUsers; + this.orgName = defaults.orgName; } @CustomType.Setter - public Builder name(@Nullable String name) { + public Builder numUsers(@Nullable Integer numUsers) { - this.name = name; + this.numUsers = numUsers; return this; } @CustomType.Setter - public Builder numUsers(@Nullable Integer numUsers) { + public Builder orgName(@Nullable String orgName) { - this.numUsers = numUsers; + this.orgName = orgName; return this; } public DeviceprofileGatewayTunnelProviderOptionsJse build() { final var _resultValue = new DeviceprofileGatewayTunnelProviderOptionsJse(); - _resultValue.name = name; _resultValue.numUsers = numUsers; + _resultValue.orgName = orgName; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelProviderOptionsZscaler.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelProviderOptionsZscaler.java index ef1a3ce3..f87c0d25 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelProviderOptionsZscaler.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelProviderOptionsZscaler.java @@ -6,8 +6,8 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.junipermist.org.outputs.DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation; import java.lang.Boolean; +import java.lang.Double; import java.lang.Integer; -import java.lang.String; import java.util.List; import java.util.Objects; import java.util.Optional; @@ -15,115 +15,179 @@ @CustomType public final class DeviceprofileGatewayTunnelProviderOptionsZscaler { - private @Nullable Boolean aupAcceptanceRequired; + private @Nullable Boolean aupBlockInternetUntilAccepted; /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - private @Nullable Integer aupExpire; + private @Nullable Boolean aupEnabled; /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - private @Nullable Boolean aupSslProxy; + private @Nullable Boolean aupForceSslInspection; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - private @Nullable Integer downloadMbps; + private @Nullable Integer aupTimeoutInDays; /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Enable this option to enforce user authentication * */ - private @Nullable Boolean enableAup; + private @Nullable Boolean authRequired; /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - private @Nullable Boolean enableCaution; - private @Nullable Boolean enforceAuthentication; - private @Nullable String name; + private @Nullable Boolean cautionEnabled; /** - * @return if `use_xff`==`true` + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + private @Nullable Double dnBandwidth; + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + private @Nullable Integer idleTimeInMinutes; + /** + * @return if `true`, enable the firewall control option + * + */ + private @Nullable Boolean ofwEnabled; + /** + * @return `sub-locations` can be used for specific uses cases to define different configuration based on the user network * */ private @Nullable List subLocations; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + */ + private @Nullable Boolean surrogateIp; + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + private @Nullable Boolean surrogateIpEnforcedForKnownBrowsers; + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + private @Nullable Integer surrogateRefreshTimeInMinutes; + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - private @Nullable Integer uploadMbps; + private @Nullable Double upBandwidth; /** * @return location uses proxy chaining to forward traffic * */ - private @Nullable Boolean useXff; + private @Nullable Boolean xffForwardEnabled; private DeviceprofileGatewayTunnelProviderOptionsZscaler() {} - public Optional aupAcceptanceRequired() { - return Optional.ofNullable(this.aupAcceptanceRequired); + public Optional aupBlockInternetUntilAccepted() { + return Optional.ofNullable(this.aupBlockInternetUntilAccepted); } /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - public Optional aupExpire() { - return Optional.ofNullable(this.aupExpire); + public Optional aupEnabled() { + return Optional.ofNullable(this.aupEnabled); } /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - public Optional aupSslProxy() { - return Optional.ofNullable(this.aupSslProxy); + public Optional aupForceSslInspection() { + return Optional.ofNullable(this.aupForceSslInspection); + } + /** + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again + * + */ + public Optional aupTimeoutInDays() { + return Optional.ofNullable(this.aupTimeoutInDays); } /** - * @return the download bandwidth cap of the link, in Mbps + * @return Enable this option to enforce user authentication * */ - public Optional downloadMbps() { - return Optional.ofNullable(this.downloadMbps); + public Optional authRequired() { + return Optional.ofNullable(this.authRequired); } /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - public Optional enableAup() { - return Optional.ofNullable(this.enableAup); + public Optional cautionEnabled() { + return Optional.ofNullable(this.cautionEnabled); } /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - public Optional enableCaution() { - return Optional.ofNullable(this.enableCaution); + public Optional dnBandwidth() { + return Optional.ofNullable(this.dnBandwidth); } - public Optional enforceAuthentication() { - return Optional.ofNullable(this.enforceAuthentication); + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + public Optional idleTimeInMinutes() { + return Optional.ofNullable(this.idleTimeInMinutes); } - public Optional name() { - return Optional.ofNullable(this.name); + /** + * @return if `true`, enable the firewall control option + * + */ + public Optional ofwEnabled() { + return Optional.ofNullable(this.ofwEnabled); } /** - * @return if `use_xff`==`true` + * @return `sub-locations` can be used for specific uses cases to define different configuration based on the user network * */ public List subLocations() { return this.subLocations == null ? List.of() : this.subLocations; } /** - * @return the download bandwidth cap of the link, in Mbps + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies * */ - public Optional uploadMbps() { - return Optional.ofNullable(this.uploadMbps); + public Optional surrogateIp() { + return Optional.ofNullable(this.surrogateIp); + } + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + public Optional surrogateIpEnforcedForKnownBrowsers() { + return Optional.ofNullable(this.surrogateIpEnforcedForKnownBrowsers); + } + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + public Optional surrogateRefreshTimeInMinutes() { + return Optional.ofNullable(this.surrogateRefreshTimeInMinutes); + } + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional upBandwidth() { + return Optional.ofNullable(this.upBandwidth); } /** * @return location uses proxy chaining to forward traffic * */ - public Optional useXff() { - return Optional.ofNullable(this.useXff); + public Optional xffForwardEnabled() { + return Optional.ofNullable(this.xffForwardEnabled); } public static Builder builder() { @@ -135,79 +199,93 @@ public static Builder builder(DeviceprofileGatewayTunnelProviderOptionsZscaler d } @CustomType.Builder public static final class Builder { - private @Nullable Boolean aupAcceptanceRequired; - private @Nullable Integer aupExpire; - private @Nullable Boolean aupSslProxy; - private @Nullable Integer downloadMbps; - private @Nullable Boolean enableAup; - private @Nullable Boolean enableCaution; - private @Nullable Boolean enforceAuthentication; - private @Nullable String name; + private @Nullable Boolean aupBlockInternetUntilAccepted; + private @Nullable Boolean aupEnabled; + private @Nullable Boolean aupForceSslInspection; + private @Nullable Integer aupTimeoutInDays; + private @Nullable Boolean authRequired; + private @Nullable Boolean cautionEnabled; + private @Nullable Double dnBandwidth; + private @Nullable Integer idleTimeInMinutes; + private @Nullable Boolean ofwEnabled; private @Nullable List subLocations; - private @Nullable Integer uploadMbps; - private @Nullable Boolean useXff; + private @Nullable Boolean surrogateIp; + private @Nullable Boolean surrogateIpEnforcedForKnownBrowsers; + private @Nullable Integer surrogateRefreshTimeInMinutes; + private @Nullable Double upBandwidth; + private @Nullable Boolean xffForwardEnabled; public Builder() {} public Builder(DeviceprofileGatewayTunnelProviderOptionsZscaler defaults) { Objects.requireNonNull(defaults); - this.aupAcceptanceRequired = defaults.aupAcceptanceRequired; - this.aupExpire = defaults.aupExpire; - this.aupSslProxy = defaults.aupSslProxy; - this.downloadMbps = defaults.downloadMbps; - this.enableAup = defaults.enableAup; - this.enableCaution = defaults.enableCaution; - this.enforceAuthentication = defaults.enforceAuthentication; - this.name = defaults.name; + this.aupBlockInternetUntilAccepted = defaults.aupBlockInternetUntilAccepted; + this.aupEnabled = defaults.aupEnabled; + this.aupForceSslInspection = defaults.aupForceSslInspection; + this.aupTimeoutInDays = defaults.aupTimeoutInDays; + this.authRequired = defaults.authRequired; + this.cautionEnabled = defaults.cautionEnabled; + this.dnBandwidth = defaults.dnBandwidth; + this.idleTimeInMinutes = defaults.idleTimeInMinutes; + this.ofwEnabled = defaults.ofwEnabled; this.subLocations = defaults.subLocations; - this.uploadMbps = defaults.uploadMbps; - this.useXff = defaults.useXff; + this.surrogateIp = defaults.surrogateIp; + this.surrogateIpEnforcedForKnownBrowsers = defaults.surrogateIpEnforcedForKnownBrowsers; + this.surrogateRefreshTimeInMinutes = defaults.surrogateRefreshTimeInMinutes; + this.upBandwidth = defaults.upBandwidth; + this.xffForwardEnabled = defaults.xffForwardEnabled; } @CustomType.Setter - public Builder aupAcceptanceRequired(@Nullable Boolean aupAcceptanceRequired) { + public Builder aupBlockInternetUntilAccepted(@Nullable Boolean aupBlockInternetUntilAccepted) { + + this.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + return this; + } + @CustomType.Setter + public Builder aupEnabled(@Nullable Boolean aupEnabled) { - this.aupAcceptanceRequired = aupAcceptanceRequired; + this.aupEnabled = aupEnabled; return this; } @CustomType.Setter - public Builder aupExpire(@Nullable Integer aupExpire) { + public Builder aupForceSslInspection(@Nullable Boolean aupForceSslInspection) { - this.aupExpire = aupExpire; + this.aupForceSslInspection = aupForceSslInspection; return this; } @CustomType.Setter - public Builder aupSslProxy(@Nullable Boolean aupSslProxy) { + public Builder aupTimeoutInDays(@Nullable Integer aupTimeoutInDays) { - this.aupSslProxy = aupSslProxy; + this.aupTimeoutInDays = aupTimeoutInDays; return this; } @CustomType.Setter - public Builder downloadMbps(@Nullable Integer downloadMbps) { + public Builder authRequired(@Nullable Boolean authRequired) { - this.downloadMbps = downloadMbps; + this.authRequired = authRequired; return this; } @CustomType.Setter - public Builder enableAup(@Nullable Boolean enableAup) { + public Builder cautionEnabled(@Nullable Boolean cautionEnabled) { - this.enableAup = enableAup; + this.cautionEnabled = cautionEnabled; return this; } @CustomType.Setter - public Builder enableCaution(@Nullable Boolean enableCaution) { + public Builder dnBandwidth(@Nullable Double dnBandwidth) { - this.enableCaution = enableCaution; + this.dnBandwidth = dnBandwidth; return this; } @CustomType.Setter - public Builder enforceAuthentication(@Nullable Boolean enforceAuthentication) { + public Builder idleTimeInMinutes(@Nullable Integer idleTimeInMinutes) { - this.enforceAuthentication = enforceAuthentication; + this.idleTimeInMinutes = idleTimeInMinutes; return this; } @CustomType.Setter - public Builder name(@Nullable String name) { + public Builder ofwEnabled(@Nullable Boolean ofwEnabled) { - this.name = name; + this.ofwEnabled = ofwEnabled; return this; } @CustomType.Setter @@ -220,30 +298,52 @@ public Builder subLocations(DeviceprofileGatewayTunnelProviderOptionsZscalerSubL return subLocations(List.of(subLocations)); } @CustomType.Setter - public Builder uploadMbps(@Nullable Integer uploadMbps) { + public Builder surrogateIp(@Nullable Boolean surrogateIp) { + + this.surrogateIp = surrogateIp; + return this; + } + @CustomType.Setter + public Builder surrogateIpEnforcedForKnownBrowsers(@Nullable Boolean surrogateIpEnforcedForKnownBrowsers) { + + this.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + return this; + } + @CustomType.Setter + public Builder surrogateRefreshTimeInMinutes(@Nullable Integer surrogateRefreshTimeInMinutes) { + + this.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + return this; + } + @CustomType.Setter + public Builder upBandwidth(@Nullable Double upBandwidth) { - this.uploadMbps = uploadMbps; + this.upBandwidth = upBandwidth; return this; } @CustomType.Setter - public Builder useXff(@Nullable Boolean useXff) { + public Builder xffForwardEnabled(@Nullable Boolean xffForwardEnabled) { - this.useXff = useXff; + this.xffForwardEnabled = xffForwardEnabled; return this; } public DeviceprofileGatewayTunnelProviderOptionsZscaler build() { final var _resultValue = new DeviceprofileGatewayTunnelProviderOptionsZscaler(); - _resultValue.aupAcceptanceRequired = aupAcceptanceRequired; - _resultValue.aupExpire = aupExpire; - _resultValue.aupSslProxy = aupSslProxy; - _resultValue.downloadMbps = downloadMbps; - _resultValue.enableAup = enableAup; - _resultValue.enableCaution = enableCaution; - _resultValue.enforceAuthentication = enforceAuthentication; - _resultValue.name = name; + _resultValue.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + _resultValue.aupEnabled = aupEnabled; + _resultValue.aupForceSslInspection = aupForceSslInspection; + _resultValue.aupTimeoutInDays = aupTimeoutInDays; + _resultValue.authRequired = authRequired; + _resultValue.cautionEnabled = cautionEnabled; + _resultValue.dnBandwidth = dnBandwidth; + _resultValue.idleTimeInMinutes = idleTimeInMinutes; + _resultValue.ofwEnabled = ofwEnabled; _resultValue.subLocations = subLocations; - _resultValue.uploadMbps = uploadMbps; - _resultValue.useXff = useXff; + _resultValue.surrogateIp = surrogateIp; + _resultValue.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + _resultValue.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + _resultValue.upBandwidth = upBandwidth; + _resultValue.xffForwardEnabled = xffForwardEnabled; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation.java index 8ae107d9..f83ca5bc 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation.java @@ -5,100 +5,176 @@ import com.pulumi.core.annotations.CustomType; import java.lang.Boolean; +import java.lang.Double; import java.lang.Integer; import java.lang.String; -import java.util.List; import java.util.Objects; import java.util.Optional; import javax.annotation.Nullable; @CustomType public final class DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation { - private @Nullable Boolean aupAcceptanceRequired; + private @Nullable Boolean aupBlockInternetUntilAccepted; /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - private @Nullable Integer aupExpire; + private @Nullable Boolean aupEnabled; /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - private @Nullable Boolean aupSslProxy; + private @Nullable Boolean aupForceSslInspection; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - private @Nullable Integer downloadMbps; + private @Nullable Integer aupTimeoutInDays; /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Enable this option to authenticate users * */ - private @Nullable Boolean enableAup; + private @Nullable Boolean authRequired; /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - private @Nullable Boolean enableCaution; - private @Nullable Boolean enforceAuthentication; - private @Nullable List subnets; + private @Nullable Boolean cautionEnabled; /** - * @return the download bandwidth cap of the link, in Mbps + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - private @Nullable Integer uploadMbps; + private @Nullable Double dnBandwidth; + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + private @Nullable Integer idleTimeInMinutes; + /** + * @return Network name + * + */ + private @Nullable String name; + /** + * @return if `true`, enable the firewall control option + * + */ + private @Nullable Boolean ofwEnabled; + /** + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + */ + private @Nullable Boolean surrogateIp; + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + private @Nullable Boolean surrogateIpEnforcedForKnownBrowsers; + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + private @Nullable Integer surrogateRefreshTimeInMinutes; + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + private @Nullable Double upBandwidth; private DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation() {} - public Optional aupAcceptanceRequired() { - return Optional.ofNullable(this.aupAcceptanceRequired); + public Optional aupBlockInternetUntilAccepted() { + return Optional.ofNullable(this.aupBlockInternetUntilAccepted); } /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - public Optional aupExpire() { - return Optional.ofNullable(this.aupExpire); + public Optional aupEnabled() { + return Optional.ofNullable(this.aupEnabled); } /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - public Optional aupSslProxy() { - return Optional.ofNullable(this.aupSslProxy); + public Optional aupForceSslInspection() { + return Optional.ofNullable(this.aupForceSslInspection); + } + /** + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again + * + */ + public Optional aupTimeoutInDays() { + return Optional.ofNullable(this.aupTimeoutInDays); + } + /** + * @return Enable this option to authenticate users + * + */ + public Optional authRequired() { + return Optional.ofNullable(this.authRequired); + } + /** + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + * + */ + public Optional cautionEnabled() { + return Optional.ofNullable(this.cautionEnabled); } /** - * @return the download bandwidth cap of the link, in Mbps + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - public Optional downloadMbps() { - return Optional.ofNullable(this.downloadMbps); + public Optional dnBandwidth() { + return Optional.ofNullable(this.dnBandwidth); } /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation * */ - public Optional enableAup() { - return Optional.ofNullable(this.enableAup); + public Optional idleTimeInMinutes() { + return Optional.ofNullable(this.idleTimeInMinutes); } /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Network name * */ - public Optional enableCaution() { - return Optional.ofNullable(this.enableCaution); + public Optional name() { + return Optional.ofNullable(this.name); } - public Optional enforceAuthentication() { - return Optional.ofNullable(this.enforceAuthentication); + /** + * @return if `true`, enable the firewall control option + * + */ + public Optional ofwEnabled() { + return Optional.ofNullable(this.ofwEnabled); } - public List subnets() { - return this.subnets == null ? List.of() : this.subnets; + /** + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + */ + public Optional surrogateIp() { + return Optional.ofNullable(this.surrogateIp); } /** - * @return the download bandwidth cap of the link, in Mbps + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers * */ - public Optional uploadMbps() { - return Optional.ofNullable(this.uploadMbps); + public Optional surrogateIpEnforcedForKnownBrowsers() { + return Optional.ofNullable(this.surrogateIpEnforcedForKnownBrowsers); + } + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + public Optional surrogateRefreshTimeInMinutes() { + return Optional.ofNullable(this.surrogateRefreshTimeInMinutes); + } + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional upBandwidth() { + return Optional.ofNullable(this.upBandwidth); } public static Builder builder() { @@ -110,97 +186,139 @@ public static Builder builder(DeviceprofileGatewayTunnelProviderOptionsZscalerSu } @CustomType.Builder public static final class Builder { - private @Nullable Boolean aupAcceptanceRequired; - private @Nullable Integer aupExpire; - private @Nullable Boolean aupSslProxy; - private @Nullable Integer downloadMbps; - private @Nullable Boolean enableAup; - private @Nullable Boolean enableCaution; - private @Nullable Boolean enforceAuthentication; - private @Nullable List subnets; - private @Nullable Integer uploadMbps; + private @Nullable Boolean aupBlockInternetUntilAccepted; + private @Nullable Boolean aupEnabled; + private @Nullable Boolean aupForceSslInspection; + private @Nullable Integer aupTimeoutInDays; + private @Nullable Boolean authRequired; + private @Nullable Boolean cautionEnabled; + private @Nullable Double dnBandwidth; + private @Nullable Integer idleTimeInMinutes; + private @Nullable String name; + private @Nullable Boolean ofwEnabled; + private @Nullable Boolean surrogateIp; + private @Nullable Boolean surrogateIpEnforcedForKnownBrowsers; + private @Nullable Integer surrogateRefreshTimeInMinutes; + private @Nullable Double upBandwidth; public Builder() {} public Builder(DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation defaults) { Objects.requireNonNull(defaults); - this.aupAcceptanceRequired = defaults.aupAcceptanceRequired; - this.aupExpire = defaults.aupExpire; - this.aupSslProxy = defaults.aupSslProxy; - this.downloadMbps = defaults.downloadMbps; - this.enableAup = defaults.enableAup; - this.enableCaution = defaults.enableCaution; - this.enforceAuthentication = defaults.enforceAuthentication; - this.subnets = defaults.subnets; - this.uploadMbps = defaults.uploadMbps; + this.aupBlockInternetUntilAccepted = defaults.aupBlockInternetUntilAccepted; + this.aupEnabled = defaults.aupEnabled; + this.aupForceSslInspection = defaults.aupForceSslInspection; + this.aupTimeoutInDays = defaults.aupTimeoutInDays; + this.authRequired = defaults.authRequired; + this.cautionEnabled = defaults.cautionEnabled; + this.dnBandwidth = defaults.dnBandwidth; + this.idleTimeInMinutes = defaults.idleTimeInMinutes; + this.name = defaults.name; + this.ofwEnabled = defaults.ofwEnabled; + this.surrogateIp = defaults.surrogateIp; + this.surrogateIpEnforcedForKnownBrowsers = defaults.surrogateIpEnforcedForKnownBrowsers; + this.surrogateRefreshTimeInMinutes = defaults.surrogateRefreshTimeInMinutes; + this.upBandwidth = defaults.upBandwidth; } @CustomType.Setter - public Builder aupAcceptanceRequired(@Nullable Boolean aupAcceptanceRequired) { + public Builder aupBlockInternetUntilAccepted(@Nullable Boolean aupBlockInternetUntilAccepted) { - this.aupAcceptanceRequired = aupAcceptanceRequired; + this.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; return this; } @CustomType.Setter - public Builder aupExpire(@Nullable Integer aupExpire) { + public Builder aupEnabled(@Nullable Boolean aupEnabled) { - this.aupExpire = aupExpire; + this.aupEnabled = aupEnabled; return this; } @CustomType.Setter - public Builder aupSslProxy(@Nullable Boolean aupSslProxy) { + public Builder aupForceSslInspection(@Nullable Boolean aupForceSslInspection) { - this.aupSslProxy = aupSslProxy; + this.aupForceSslInspection = aupForceSslInspection; return this; } @CustomType.Setter - public Builder downloadMbps(@Nullable Integer downloadMbps) { + public Builder aupTimeoutInDays(@Nullable Integer aupTimeoutInDays) { - this.downloadMbps = downloadMbps; + this.aupTimeoutInDays = aupTimeoutInDays; return this; } @CustomType.Setter - public Builder enableAup(@Nullable Boolean enableAup) { + public Builder authRequired(@Nullable Boolean authRequired) { - this.enableAup = enableAup; + this.authRequired = authRequired; return this; } @CustomType.Setter - public Builder enableCaution(@Nullable Boolean enableCaution) { + public Builder cautionEnabled(@Nullable Boolean cautionEnabled) { - this.enableCaution = enableCaution; + this.cautionEnabled = cautionEnabled; return this; } @CustomType.Setter - public Builder enforceAuthentication(@Nullable Boolean enforceAuthentication) { + public Builder dnBandwidth(@Nullable Double dnBandwidth) { - this.enforceAuthentication = enforceAuthentication; + this.dnBandwidth = dnBandwidth; return this; } @CustomType.Setter - public Builder subnets(@Nullable List subnets) { + public Builder idleTimeInMinutes(@Nullable Integer idleTimeInMinutes) { - this.subnets = subnets; + this.idleTimeInMinutes = idleTimeInMinutes; return this; } - public Builder subnets(String... subnets) { - return subnets(List.of(subnets)); + @CustomType.Setter + public Builder name(@Nullable String name) { + + this.name = name; + return this; + } + @CustomType.Setter + public Builder ofwEnabled(@Nullable Boolean ofwEnabled) { + + this.ofwEnabled = ofwEnabled; + return this; + } + @CustomType.Setter + public Builder surrogateIp(@Nullable Boolean surrogateIp) { + + this.surrogateIp = surrogateIp; + return this; + } + @CustomType.Setter + public Builder surrogateIpEnforcedForKnownBrowsers(@Nullable Boolean surrogateIpEnforcedForKnownBrowsers) { + + this.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + return this; + } + @CustomType.Setter + public Builder surrogateRefreshTimeInMinutes(@Nullable Integer surrogateRefreshTimeInMinutes) { + + this.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + return this; } @CustomType.Setter - public Builder uploadMbps(@Nullable Integer uploadMbps) { + public Builder upBandwidth(@Nullable Double upBandwidth) { - this.uploadMbps = uploadMbps; + this.upBandwidth = upBandwidth; return this; } public DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation build() { final var _resultValue = new DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation(); - _resultValue.aupAcceptanceRequired = aupAcceptanceRequired; - _resultValue.aupExpire = aupExpire; - _resultValue.aupSslProxy = aupSslProxy; - _resultValue.downloadMbps = downloadMbps; - _resultValue.enableAup = enableAup; - _resultValue.enableCaution = enableCaution; - _resultValue.enforceAuthentication = enforceAuthentication; - _resultValue.subnets = subnets; - _resultValue.uploadMbps = uploadMbps; + _resultValue.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + _resultValue.aupEnabled = aupEnabled; + _resultValue.aupForceSslInspection = aupForceSslInspection; + _resultValue.aupTimeoutInDays = aupTimeoutInDays; + _resultValue.authRequired = authRequired; + _resultValue.cautionEnabled = cautionEnabled; + _resultValue.dnBandwidth = dnBandwidth; + _resultValue.idleTimeInMinutes = idleTimeInMinutes; + _resultValue.name = name; + _resultValue.ofwEnabled = ofwEnabled; + _resultValue.surrogateIp = surrogateIp; + _resultValue.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + _resultValue.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + _resultValue.upBandwidth = upBandwidth; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateBgpConfig.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateBgpConfig.java index 927f7dd7..07442ece 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateBgpConfig.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateBgpConfig.java @@ -41,8 +41,7 @@ public final class GatewaytemplateBgpConfig { */ private @Nullable String exportPolicy; /** - * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * */ private @Nullable Boolean extendedV4Nexthop; @@ -135,8 +134,7 @@ public Optional exportPolicy() { return Optional.ofNullable(this.exportPolicy); } /** - * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * @return by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this * */ public Optional extendedV4Nexthop() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetwork.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetwork.java index c9813c80..8b7f931d 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetwork.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetwork.java @@ -51,6 +51,10 @@ public final class GatewaytemplateNetwork { private @Nullable List routedForNetworks; private String subnet; private @Nullable String subnet6; + /** + * @return Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ private @Nullable Map tenants; private @Nullable String vlanId; /** @@ -113,6 +117,10 @@ public String subnet() { public Optional subnet6() { return Optional.ofNullable(this.subnet6); } + /** + * @return Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + * + */ public Map tenants() { return this.tenants == null ? Map.of() : this.tenants; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkInternetAccess.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkInternetAccess.java index 493187b3..096ce7be 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkInternetAccess.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkInternetAccess.java @@ -17,7 +17,7 @@ public final class GatewaytemplateNetworkInternetAccess { private @Nullable Boolean createSimpleServicePolicy; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ private @Nullable Map destinationNat; @@ -28,7 +28,7 @@ public final class GatewaytemplateNetworkInternetAccess { */ private @Nullable Boolean restricted; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ private @Nullable Map staticNat; @@ -38,7 +38,7 @@ public Optional createSimpleServicePolicy() { return Optional.ofNullable(this.createSimpleServicePolicy); } /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Map destinationNat() { @@ -55,7 +55,7 @@ public Optional restricted() { return Optional.ofNullable(this.restricted); } /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Map staticNat() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkInternetAccessDestinationNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkInternetAccessDestinationNat.java index 199e5b06..89e205eb 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkInternetAccessDestinationNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkInternetAccessDestinationNat.java @@ -4,7 +4,6 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; -import java.lang.Integer; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -12,20 +11,48 @@ @CustomType public final class GatewaytemplateNetworkInternetAccessDestinationNat { + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + /** + * @return The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ + private @Nullable String port; + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + private @Nullable String wanName; private GatewaytemplateNetworkInternetAccessDestinationNat() {} + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional internalIp() { return Optional.ofNullable(this.internalIp); } public Optional name() { return Optional.ofNullable(this.name); } - public Optional port() { + /** + * @return The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ + public Optional port() { return Optional.ofNullable(this.port); } + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + public Optional wanName() { + return Optional.ofNullable(this.wanName); + } public static Builder builder() { return new Builder(); @@ -38,13 +65,15 @@ public static Builder builder(GatewaytemplateNetworkInternetAccessDestinationNat public static final class Builder { private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + private @Nullable String port; + private @Nullable String wanName; public Builder() {} public Builder(GatewaytemplateNetworkInternetAccessDestinationNat defaults) { Objects.requireNonNull(defaults); this.internalIp = defaults.internalIp; this.name = defaults.name; this.port = defaults.port; + this.wanName = defaults.wanName; } @CustomType.Setter @@ -60,16 +89,23 @@ public Builder name(@Nullable String name) { return this; } @CustomType.Setter - public Builder port(@Nullable Integer port) { + public Builder port(@Nullable String port) { this.port = port; return this; } + @CustomType.Setter + public Builder wanName(@Nullable String wanName) { + + this.wanName = wanName; + return this; + } public GatewaytemplateNetworkInternetAccessDestinationNat build() { final var _resultValue = new GatewaytemplateNetworkInternetAccessDestinationNat(); _resultValue.internalIp = internalIp; _resultValue.name = name; _resultValue.port = port; + _resultValue.wanName = wanName; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkInternetAccessStaticNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkInternetAccessStaticNat.java index 563c2cbd..3c756f61 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkInternetAccessStaticNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkInternetAccessStaticNat.java @@ -4,6 +4,7 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -11,23 +12,31 @@ @CustomType public final class GatewaytemplateNetworkInternetAccessStaticNat { - private @Nullable String internalIp; - private @Nullable String name; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + private String internalIp; + private String name; + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ private @Nullable String wanName; private GatewaytemplateNetworkInternetAccessStaticNat() {} - public Optional internalIp() { - return Optional.ofNullable(this.internalIp); + /** + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + public String internalIp() { + return this.internalIp; } - public Optional name() { - return Optional.ofNullable(this.name); + public String name() { + return this.name; } /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ public Optional wanName() { @@ -43,8 +52,8 @@ public static Builder builder(GatewaytemplateNetworkInternetAccessStaticNat defa } @CustomType.Builder public static final class Builder { - private @Nullable String internalIp; - private @Nullable String name; + private String internalIp; + private String name; private @Nullable String wanName; public Builder() {} public Builder(GatewaytemplateNetworkInternetAccessStaticNat defaults) { @@ -55,14 +64,18 @@ public Builder(GatewaytemplateNetworkInternetAccessStaticNat defaults) { } @CustomType.Setter - public Builder internalIp(@Nullable String internalIp) { - + public Builder internalIp(String internalIp) { + if (internalIp == null) { + throw new MissingRequiredPropertyException("GatewaytemplateNetworkInternetAccessStaticNat", "internalIp"); + } this.internalIp = internalIp; return this; } @CustomType.Setter - public Builder name(@Nullable String name) { - + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GatewaytemplateNetworkInternetAccessStaticNat", "name"); + } this.name = name; return this; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkVpnAccess.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkVpnAccess.java index 577e21a8..5a8cb74f 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkVpnAccess.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkVpnAccess.java @@ -28,7 +28,7 @@ public final class GatewaytemplateNetworkVpnAccess { */ private @Nullable Boolean allowPing; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ private @Nullable Map destinationNat; @@ -48,14 +48,12 @@ public final class GatewaytemplateNetworkVpnAccess { */ private @Nullable Boolean noReadvertiseToLanOspf; /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ private @Nullable Boolean noReadvertiseToOverlay; /** - * @return by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @return by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * */ private @Nullable List otherVrfs; @@ -70,13 +68,12 @@ public final class GatewaytemplateNetworkVpnAccess { */ private @Nullable GatewaytemplateNetworkVpnAccessSourceNat sourceNat; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ private @Nullable Map staticNat; /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ private @Nullable String summarizedSubnet; @@ -107,7 +104,7 @@ public Optional allowPing() { return Optional.ofNullable(this.allowPing); } /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Map destinationNat() { @@ -135,16 +132,14 @@ public Optional noReadvertiseToLanOspf() { return Optional.ofNullable(this.noReadvertiseToLanOspf); } /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ public Optional noReadvertiseToOverlay() { return Optional.ofNullable(this.noReadvertiseToOverlay); } /** - * @return by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * @return by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs * */ public List otherVrfs() { @@ -165,15 +160,14 @@ public Optional sourceNat() { return Optional.ofNullable(this.sourceNat); } /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Map staticNat() { return this.staticNat == null ? Map.of() : this.staticNat; } /** - * @return toward overlay - * how HUB should deal with routes it received from Spokes + * @return toward overlay, how HUB should deal with routes it received from Spokes * */ public Optional summarizedSubnet() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkVpnAccessDestinationNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkVpnAccessDestinationNat.java index f384bfbf..2cc9bfd9 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkVpnAccessDestinationNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkVpnAccessDestinationNat.java @@ -4,7 +4,6 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; -import java.lang.Integer; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -12,18 +11,26 @@ @CustomType public final class GatewaytemplateNetworkVpnAccessDestinationNat { + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + private @Nullable String port; private GatewaytemplateNetworkVpnAccessDestinationNat() {} + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional internalIp() { return Optional.ofNullable(this.internalIp); } public Optional name() { return Optional.ofNullable(this.name); } - public Optional port() { + public Optional port() { return Optional.ofNullable(this.port); } @@ -38,7 +45,7 @@ public static Builder builder(GatewaytemplateNetworkVpnAccessDestinationNat defa public static final class Builder { private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + private @Nullable String port; public Builder() {} public Builder(GatewaytemplateNetworkVpnAccessDestinationNat defaults) { Objects.requireNonNull(defaults); @@ -60,7 +67,7 @@ public Builder name(@Nullable String name) { return this; } @CustomType.Setter - public Builder port(@Nullable Integer port) { + public Builder port(@Nullable String port) { this.port = port; return this; diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkVpnAccessStaticNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkVpnAccessStaticNat.java index 02ab9059..84b08ac1 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkVpnAccessStaticNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateNetworkVpnAccessStaticNat.java @@ -4,34 +4,29 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; -import java.util.Optional; -import javax.annotation.Nullable; @CustomType public final class GatewaytemplateNetworkVpnAccessStaticNat { - private @Nullable String internalIp; - private @Nullable String name; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - private @Nullable String wanName; + private String internalIp; + private String name; private GatewaytemplateNetworkVpnAccessStaticNat() {} - public Optional internalIp() { - return Optional.ofNullable(this.internalIp); - } - public Optional name() { - return Optional.ofNullable(this.name); - } /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - public Optional wanName() { - return Optional.ofNullable(this.wanName); + public String internalIp() { + return this.internalIp; + } + public String name() { + return this.name; } public static Builder builder() { @@ -43,40 +38,35 @@ public static Builder builder(GatewaytemplateNetworkVpnAccessStaticNat defaults) } @CustomType.Builder public static final class Builder { - private @Nullable String internalIp; - private @Nullable String name; - private @Nullable String wanName; + private String internalIp; + private String name; public Builder() {} public Builder(GatewaytemplateNetworkVpnAccessStaticNat defaults) { Objects.requireNonNull(defaults); this.internalIp = defaults.internalIp; this.name = defaults.name; - this.wanName = defaults.wanName; } @CustomType.Setter - public Builder internalIp(@Nullable String internalIp) { - + public Builder internalIp(String internalIp) { + if (internalIp == null) { + throw new MissingRequiredPropertyException("GatewaytemplateNetworkVpnAccessStaticNat", "internalIp"); + } this.internalIp = internalIp; return this; } @CustomType.Setter - public Builder name(@Nullable String name) { - + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("GatewaytemplateNetworkVpnAccessStaticNat", "name"); + } this.name = name; return this; } - @CustomType.Setter - public Builder wanName(@Nullable String wanName) { - - this.wanName = wanName; - return this; - } public GatewaytemplateNetworkVpnAccessStaticNat build() { final var _resultValue = new GatewaytemplateNetworkVpnAccessStaticNat(); _resultValue.internalIp = internalIp; _resultValue.name = name; - _resultValue.wanName = wanName; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfig.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfig.java index 63b555a1..65013910 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfig.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfig.java @@ -33,9 +33,7 @@ public final class GatewaytemplatePortConfig { */ private @Nullable String aeIdx; /** - * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * */ private @Nullable Boolean aeLacpForceUp; @@ -45,6 +43,10 @@ public final class GatewaytemplatePortConfig { * */ private @Nullable Boolean critical; + /** + * @return Interface Description. Can be a variable (i.e. "{{myvar}}") + * + */ private @Nullable String description; private @Nullable Boolean disableAutoneg; /** @@ -58,14 +60,12 @@ public final class GatewaytemplatePortConfig { */ private @Nullable String dslType; /** - * @return if `wan_type`==`dsl` - * 16 bit int + * @return if `wan_type`==`dsl`, 16 bit int * */ private @Nullable Integer dslVci; /** - * @return if `wan_type`==`dsl` - * 8 bit int + * @return if `wan_type`==`dsl`, 8 bit int * */ private @Nullable Integer dslVpi; @@ -107,7 +107,7 @@ public final class GatewaytemplatePortConfig { */ private @Nullable String name; /** - * @return if `usage`==`lan` + * @return if `usage`==`lan`, name of the `junipermist.org.Network` resource * */ private @Nullable List networks; @@ -118,7 +118,7 @@ public final class GatewaytemplatePortConfig { private @Nullable Integer outerVlanId; private @Nullable Boolean poeDisabled; /** - * @return if `usage`==`lan` + * @return Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * */ private @Nullable String portNetwork; @@ -164,43 +164,44 @@ public final class GatewaytemplatePortConfig { * */ private String usage; - /** - * @return if WAN interface is on a VLAN - * - */ - private @Nullable Integer vlanId; + private @Nullable String vlanId; /** * @return Property key is the VPN name * */ private @Nullable Map vpnPaths; /** - * @return when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @return Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * */ private @Nullable String wanArpPolicer; /** - * @return optional, if spoke should reach this port by a different IP + * @return Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * */ private @Nullable String wanExtIp; /** - * @return Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * @return Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * */ private @Nullable Map wanExtraRoutes; /** - * @return if `usage`==`wan` + * @return Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + */ + private @Nullable List wanNetworks; + /** + * @return Only if `usage`==`wan` * */ private @Nullable GatewaytemplatePortConfigWanProbeOverride wanProbeOverride; /** - * @return optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * @return Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip * */ private @Nullable GatewaytemplatePortConfigWanSourceNat wanSourceNat; /** - * @return if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * @return Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * */ private @Nullable String wanType; @@ -221,9 +222,7 @@ public Optional aeIdx() { return Optional.ofNullable(this.aeIdx); } /** - * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * @return For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only * */ public Optional aeLacpForceUp() { @@ -239,6 +238,10 @@ public Optional aggregated() { public Optional critical() { return Optional.ofNullable(this.critical); } + /** + * @return Interface Description. Can be a variable (i.e. "{{myvar}}") + * + */ public Optional description() { return Optional.ofNullable(this.description); } @@ -260,16 +263,14 @@ public Optional dslType() { return Optional.ofNullable(this.dslType); } /** - * @return if `wan_type`==`dsl` - * 16 bit int + * @return if `wan_type`==`dsl`, 16 bit int * */ public Optional dslVci() { return Optional.ofNullable(this.dslVci); } /** - * @return if `wan_type`==`dsl` - * 8 bit int + * @return if `wan_type`==`dsl`, 8 bit int * */ public Optional dslVpi() { @@ -331,7 +332,7 @@ public Optional name() { return Optional.ofNullable(this.name); } /** - * @return if `usage`==`lan` + * @return if `usage`==`lan`, name of the `junipermist.org.Network` resource * */ public List networks() { @@ -348,7 +349,7 @@ public Optional poeDisabled() { return Optional.ofNullable(this.poeDisabled); } /** - * @return if `usage`==`lan` + * @return Only for SRX and if `usage`==`lan`, the Untagged VLAN Network * */ public Optional portNetwork() { @@ -416,11 +417,7 @@ public Optional trafficShaping() { public String usage() { return this.usage; } - /** - * @return if WAN interface is on a VLAN - * - */ - public Optional vlanId() { + public Optional vlanId() { return Optional.ofNullable(this.vlanId); } /** @@ -431,42 +428,49 @@ public Map vpnPaths() { return this.vpnPaths == null ? Map.of() : this.vpnPaths; } /** - * @return when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + * @return Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` * */ public Optional wanArpPolicer() { return Optional.ofNullable(this.wanArpPolicer); } /** - * @return optional, if spoke should reach this port by a different IP + * @return Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP * */ public Optional wanExtIp() { return Optional.ofNullable(this.wanExtIp); } /** - * @return Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * @return Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") * */ public Map wanExtraRoutes() { return this.wanExtraRoutes == null ? Map.of() : this.wanExtraRoutes; } /** - * @return if `usage`==`wan` + * @return Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + * + */ + public List wanNetworks() { + return this.wanNetworks == null ? List.of() : this.wanNetworks; + } + /** + * @return Only if `usage`==`wan` * */ public Optional wanProbeOverride() { return Optional.ofNullable(this.wanProbeOverride); } /** - * @return optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * @return Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip * */ public Optional wanSourceNat() { return Optional.ofNullable(this.wanSourceNat); } /** - * @return if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * @return Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` * */ public Optional wanType() { @@ -516,11 +520,12 @@ public static final class Builder { private @Nullable String svrPortRange; private @Nullable GatewaytemplatePortConfigTrafficShaping trafficShaping; private String usage; - private @Nullable Integer vlanId; + private @Nullable String vlanId; private @Nullable Map vpnPaths; private @Nullable String wanArpPolicer; private @Nullable String wanExtIp; private @Nullable Map wanExtraRoutes; + private @Nullable List wanNetworks; private @Nullable GatewaytemplatePortConfigWanProbeOverride wanProbeOverride; private @Nullable GatewaytemplatePortConfigWanSourceNat wanSourceNat; private @Nullable String wanType; @@ -566,6 +571,7 @@ public Builder(GatewaytemplatePortConfig defaults) { this.wanArpPolicer = defaults.wanArpPolicer; this.wanExtIp = defaults.wanExtIp; this.wanExtraRoutes = defaults.wanExtraRoutes; + this.wanNetworks = defaults.wanNetworks; this.wanProbeOverride = defaults.wanProbeOverride; this.wanSourceNat = defaults.wanSourceNat; this.wanType = defaults.wanType; @@ -784,7 +790,7 @@ public Builder usage(String usage) { return this; } @CustomType.Setter - public Builder vlanId(@Nullable Integer vlanId) { + public Builder vlanId(@Nullable String vlanId) { this.vlanId = vlanId; return this; @@ -814,6 +820,15 @@ public Builder wanExtraRoutes(@Nullable Map wanNetworks) { + + this.wanNetworks = wanNetworks; + return this; + } + public Builder wanNetworks(String... wanNetworks) { + return wanNetworks(List.of(wanNetworks)); + } + @CustomType.Setter public Builder wanProbeOverride(@Nullable GatewaytemplatePortConfigWanProbeOverride wanProbeOverride) { this.wanProbeOverride = wanProbeOverride; @@ -872,6 +887,7 @@ public GatewaytemplatePortConfig build() { _resultValue.wanArpPolicer = wanArpPolicer; _resultValue.wanExtIp = wanExtIp; _resultValue.wanExtraRoutes = wanExtraRoutes; + _resultValue.wanNetworks = wanNetworks; _resultValue.wanProbeOverride = wanProbeOverride; _resultValue.wanSourceNat = wanSourceNat; _resultValue.wanType = wanType; diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfigIpConfig.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfigIpConfig.java index 8e85c3a5..4032c9f4 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfigIpConfig.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfigIpConfig.java @@ -23,13 +23,17 @@ public final class GatewaytemplatePortConfigIpConfig { */ private @Nullable List dnsSuffixes; /** - * @return except for out-of_band interface (vme/em0/fxp0) + * @return except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * */ private @Nullable String gateway; + /** + * @return Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + */ private @Nullable String ip; /** - * @return used only if `subnet` is not specified in `networks` + * @return used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * */ private @Nullable String netmask; @@ -75,17 +79,21 @@ public List dnsSuffixes() { return this.dnsSuffixes == null ? List.of() : this.dnsSuffixes; } /** - * @return except for out-of_band interface (vme/em0/fxp0) + * @return except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") * */ public Optional gateway() { return Optional.ofNullable(this.gateway); } + /** + * @return Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + * + */ public Optional ip() { return Optional.ofNullable(this.ip); } /** - * @return used only if `subnet` is not specified in `networks` + * @return used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") * */ public Optional netmask() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfigTrafficShaping.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfigTrafficShaping.java index 45370218..52923ca0 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfigTrafficShaping.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfigTrafficShaping.java @@ -14,17 +14,20 @@ @CustomType public final class GatewaytemplatePortConfigTrafficShaping { /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ private @Nullable List classPercentages; private @Nullable Boolean enabled; + /** + * @return Interface Transmit Cap in kbps + * + */ + private @Nullable Integer maxTxKbps; private GatewaytemplatePortConfigTrafficShaping() {} /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ public List classPercentages() { @@ -33,6 +36,13 @@ public List classPercentages() { public Optional enabled() { return Optional.ofNullable(this.enabled); } + /** + * @return Interface Transmit Cap in kbps + * + */ + public Optional maxTxKbps() { + return Optional.ofNullable(this.maxTxKbps); + } public static Builder builder() { return new Builder(); @@ -45,11 +55,13 @@ public static Builder builder(GatewaytemplatePortConfigTrafficShaping defaults) public static final class Builder { private @Nullable List classPercentages; private @Nullable Boolean enabled; + private @Nullable Integer maxTxKbps; public Builder() {} public Builder(GatewaytemplatePortConfigTrafficShaping defaults) { Objects.requireNonNull(defaults); this.classPercentages = defaults.classPercentages; this.enabled = defaults.enabled; + this.maxTxKbps = defaults.maxTxKbps; } @CustomType.Setter @@ -67,10 +79,17 @@ public Builder enabled(@Nullable Boolean enabled) { this.enabled = enabled; return this; } + @CustomType.Setter + public Builder maxTxKbps(@Nullable Integer maxTxKbps) { + + this.maxTxKbps = maxTxKbps; + return this; + } public GatewaytemplatePortConfigTrafficShaping build() { final var _resultValue = new GatewaytemplatePortConfigTrafficShaping(); _resultValue.classPercentages = classPercentages; _resultValue.enabled = enabled; + _resultValue.maxTxKbps = maxTxKbps; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfigVpnPathsTrafficShaping.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfigVpnPathsTrafficShaping.java index e57bd930..5ad2bdc2 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfigVpnPathsTrafficShaping.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplatePortConfigVpnPathsTrafficShaping.java @@ -14,17 +14,20 @@ @CustomType public final class GatewaytemplatePortConfigVpnPathsTrafficShaping { /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ private @Nullable List classPercentages; private @Nullable Boolean enabled; + /** + * @return Interface Transmit Cap in kbps + * + */ + private @Nullable Integer maxTxKbps; private GatewaytemplatePortConfigVpnPathsTrafficShaping() {} /** - * @return percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * @return percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 * */ public List classPercentages() { @@ -33,6 +36,13 @@ public List classPercentages() { public Optional enabled() { return Optional.ofNullable(this.enabled); } + /** + * @return Interface Transmit Cap in kbps + * + */ + public Optional maxTxKbps() { + return Optional.ofNullable(this.maxTxKbps); + } public static Builder builder() { return new Builder(); @@ -45,11 +55,13 @@ public static Builder builder(GatewaytemplatePortConfigVpnPathsTrafficShaping de public static final class Builder { private @Nullable List classPercentages; private @Nullable Boolean enabled; + private @Nullable Integer maxTxKbps; public Builder() {} public Builder(GatewaytemplatePortConfigVpnPathsTrafficShaping defaults) { Objects.requireNonNull(defaults); this.classPercentages = defaults.classPercentages; this.enabled = defaults.enabled; + this.maxTxKbps = defaults.maxTxKbps; } @CustomType.Setter @@ -67,10 +79,17 @@ public Builder enabled(@Nullable Boolean enabled) { this.enabled = enabled; return this; } + @CustomType.Setter + public Builder maxTxKbps(@Nullable Integer maxTxKbps) { + + this.maxTxKbps = maxTxKbps; + return this; + } public GatewaytemplatePortConfigVpnPathsTrafficShaping build() { final var _resultValue = new GatewaytemplatePortConfigVpnPathsTrafficShaping(); _resultValue.classPercentages = classPercentages; _resultValue.enabled = enabled; + _resultValue.maxTxKbps = maxTxKbps; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateRoutingPoliciesTermAction.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateRoutingPoliciesTermAction.java index acaef6a3..04b8bc37 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateRoutingPoliciesTermAction.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateRoutingPoliciesTermAction.java @@ -20,6 +20,11 @@ public final class GatewaytemplateRoutingPoliciesTermAction { * */ private @Nullable List addTargetVrfs; + /** + * @return route aggregation + * + */ + private @Nullable List aggregates; /** * @return when used as export policy, optional * @@ -61,6 +66,13 @@ public List addCommunities() { public List addTargetVrfs() { return this.addTargetVrfs == null ? List.of() : this.addTargetVrfs; } + /** + * @return route aggregation + * + */ + public List aggregates() { + return this.aggregates == null ? List.of() : this.aggregates; + } /** * @return when used as export policy, optional * @@ -112,6 +124,7 @@ public static final class Builder { private @Nullable Boolean accept; private @Nullable List addCommunities; private @Nullable List addTargetVrfs; + private @Nullable List aggregates; private @Nullable List communities; private @Nullable List excludeAsPaths; private @Nullable List excludeCommunities; @@ -124,6 +137,7 @@ public Builder(GatewaytemplateRoutingPoliciesTermAction defaults) { this.accept = defaults.accept; this.addCommunities = defaults.addCommunities; this.addTargetVrfs = defaults.addTargetVrfs; + this.aggregates = defaults.aggregates; this.communities = defaults.communities; this.excludeAsPaths = defaults.excludeAsPaths; this.excludeCommunities = defaults.excludeCommunities; @@ -157,6 +171,15 @@ public Builder addTargetVrfs(String... addTargetVrfs) { return addTargetVrfs(List.of(addTargetVrfs)); } @CustomType.Setter + public Builder aggregates(@Nullable List aggregates) { + + this.aggregates = aggregates; + return this; + } + public Builder aggregates(String... aggregates) { + return aggregates(List.of(aggregates)); + } + @CustomType.Setter public Builder communities(@Nullable List communities) { this.communities = communities; @@ -212,6 +235,7 @@ public GatewaytemplateRoutingPoliciesTermAction build() { _resultValue.accept = accept; _resultValue.addCommunities = addCommunities; _resultValue.addTargetVrfs = addTargetVrfs; + _resultValue.aggregates = aggregates; _resultValue.communities = communities; _resultValue.excludeAsPaths = excludeAsPaths; _resultValue.excludeCommunities = excludeCommunities; diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateRoutingPoliciesTermMatching.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateRoutingPoliciesTermMatching.java index 8c0b401b..1969b665 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateRoutingPoliciesTermMatching.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateRoutingPoliciesTermMatching.java @@ -39,8 +39,7 @@ public final class GatewaytemplateRoutingPoliciesTermMatching { private @Nullable List vpnNeighborMacs; private @Nullable GatewaytemplateRoutingPoliciesTermMatchingVpnPathSla vpnPathSla; /** - * @return overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @return overlay-facing criteria (used for bgp_config where via=vpn). ordered- * */ private @Nullable List vpnPaths; @@ -87,8 +86,7 @@ public Optional vpnPathSla return Optional.ofNullable(this.vpnPathSla); } /** - * @return overlay-facing criteria (used for bgp_config where via=vpn) - * ordered- + * @return overlay-facing criteria (used for bgp_config where via=vpn). ordered- * */ public List vpnPaths() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExists.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExists.java index 684961dd..92eb11f6 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExists.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateRoutingPoliciesTermMatchingRouteExists.java @@ -13,8 +13,7 @@ public final class GatewaytemplateRoutingPoliciesTermMatchingRouteExists { private @Nullable String route; /** - * @return name of the vrf instance - * it can also be the name of the VPN or wan if they + * @return name of the vrf instance, it can also be the name of the VPN or wan if they * */ private @Nullable String vrfName; @@ -24,8 +23,7 @@ public Optional route() { return Optional.ofNullable(this.route); } /** - * @return name of the vrf instance - * it can also be the name of the VPN or wan if they + * @return name of the vrf instance, it can also be the name of the VPN or wan if they * */ public Optional vrfName() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateServicePolicy.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateServicePolicy.java index fc361e93..902d1c02 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateServicePolicy.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateServicePolicy.java @@ -39,8 +39,7 @@ public final class GatewaytemplateServicePolicy { */ private @Nullable String name; /** - * @return by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @return by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * */ private @Nullable String pathPreference; @@ -96,8 +95,7 @@ public Optional name() { return Optional.ofNullable(this.name); } /** - * @return by default, we derive all paths available and use them - * optionally, you can customize by using `path_preference` + * @return by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` * */ public Optional pathPreference() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigs.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigs.java index ab68f7a0..bbe9e094 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigs.java @@ -21,75 +21,77 @@ public final class GatewaytemplateTunnelConfigs { private @Nullable GatewaytemplateTunnelConfigsAutoProvision autoProvision; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ private @Nullable Integer ikeLifetime; /** - * @return Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @return Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * */ private @Nullable String ikeMode; /** - * @return if `provider`== `custom-ipsec` + * @return if `provider`==`custom-ipsec` * */ private @Nullable List ikeProposals; /** - * @return if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ private @Nullable Integer ipsecLifetime; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ private @Nullable List ipsecProposals; /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ private @Nullable String localId; /** - * @return enum: `active-active`, `active-standby` + * @return Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * */ private @Nullable String mode; /** - * @return networks reachable via this tunnel + * @return if `provider`==`custom-ipsec`, networks reachable via this tunnel * */ private @Nullable List networks; + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ private @Nullable GatewaytemplateTunnelConfigsPrimary primary; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ private @Nullable GatewaytemplateTunnelConfigsProbe probe; /** - * @return Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * @return Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * */ private @Nullable String protocol; /** - * @return enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @return Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * */ private @Nullable String provider; /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ private @Nullable String psk; + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ private @Nullable GatewaytemplateTunnelConfigsSecondary secondary; /** - * @return Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @return Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * */ private @Nullable String version; @@ -99,103 +101,105 @@ public Optional autoProvision() { return Optional.ofNullable(this.autoProvision); } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ public Optional ikeLifetime() { return Optional.ofNullable(this.ikeLifetime); } /** - * @return Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * @return Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` * */ public Optional ikeMode() { return Optional.ofNullable(this.ikeMode); } /** - * @return if `provider`== `custom-ipsec` + * @return if `provider`==`custom-ipsec` * */ public List ikeProposals() { return this.ikeProposals == null ? List.of() : this.ikeProposals; } /** - * @return if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 * */ public Optional ipsecLifetime() { return Optional.ofNullable(this.ipsecLifetime); } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ public List ipsecProposals() { return this.ipsecProposals == null ? List.of() : this.ipsecProposals; } /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional localId() { return Optional.ofNullable(this.localId); } /** - * @return enum: `active-active`, `active-standby` + * @return Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` * */ public Optional mode() { return Optional.ofNullable(this.mode); } /** - * @return networks reachable via this tunnel + * @return if `provider`==`custom-ipsec`, networks reachable via this tunnel * */ public List networks() { return this.networks == null ? List.of() : this.networks; } + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ public Optional primary() { return Optional.ofNullable(this.primary); } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`custom-ipsec` * */ public Optional probe() { return Optional.ofNullable(this.probe); } /** - * @return Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * @return Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` * */ public Optional protocol() { return Optional.ofNullable(this.protocol); } /** - * @return enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * @return Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` * */ public Optional provider() { return Optional.ofNullable(this.provider); } /** - * @return Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * @return Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public Optional psk() { return Optional.ofNullable(this.psk); } + /** + * @return Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + * + */ public Optional secondary() { return Optional.ofNullable(this.secondary); } /** - * @return Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * @return Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` * */ public Optional version() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsAutoProvision.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsAutoProvision.java index 85512008..047bfdae 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsAutoProvision.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsAutoProvision.java @@ -4,10 +4,12 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import com.pulumi.junipermist.org.outputs.GatewaytemplateTunnelConfigsAutoProvisionLatlng; import com.pulumi.junipermist.org.outputs.GatewaytemplateTunnelConfigsAutoProvisionPrimary; import com.pulumi.junipermist.org.outputs.GatewaytemplateTunnelConfigsAutoProvisionSecondary; import java.lang.Boolean; +import java.lang.String; import java.util.Objects; import java.util.Optional; import javax.annotation.Nullable; @@ -15,20 +17,52 @@ @CustomType public final class GatewaytemplateTunnelConfigsAutoProvision { private @Nullable Boolean enable; + /** + * @return API override for POP selection + * + */ private @Nullable GatewaytemplateTunnelConfigsAutoProvisionLatlng latlng; private @Nullable GatewaytemplateTunnelConfigsAutoProvisionPrimary primary; + /** + * @return enum: `jse-ipsec`, `zscaler-ipsec` + * + */ + private String provider; + /** + * @return API override for POP selection + * + */ + private @Nullable String region; private @Nullable GatewaytemplateTunnelConfigsAutoProvisionSecondary secondary; private GatewaytemplateTunnelConfigsAutoProvision() {} public Optional enable() { return Optional.ofNullable(this.enable); } + /** + * @return API override for POP selection + * + */ public Optional latlng() { return Optional.ofNullable(this.latlng); } public Optional primary() { return Optional.ofNullable(this.primary); } + /** + * @return enum: `jse-ipsec`, `zscaler-ipsec` + * + */ + public String provider() { + return this.provider; + } + /** + * @return API override for POP selection + * + */ + public Optional region() { + return Optional.ofNullable(this.region); + } public Optional secondary() { return Optional.ofNullable(this.secondary); } @@ -45,6 +79,8 @@ public static final class Builder { private @Nullable Boolean enable; private @Nullable GatewaytemplateTunnelConfigsAutoProvisionLatlng latlng; private @Nullable GatewaytemplateTunnelConfigsAutoProvisionPrimary primary; + private String provider; + private @Nullable String region; private @Nullable GatewaytemplateTunnelConfigsAutoProvisionSecondary secondary; public Builder() {} public Builder(GatewaytemplateTunnelConfigsAutoProvision defaults) { @@ -52,6 +88,8 @@ public Builder(GatewaytemplateTunnelConfigsAutoProvision defaults) { this.enable = defaults.enable; this.latlng = defaults.latlng; this.primary = defaults.primary; + this.provider = defaults.provider; + this.region = defaults.region; this.secondary = defaults.secondary; } @@ -74,6 +112,20 @@ public Builder primary(@Nullable GatewaytemplateTunnelConfigsAutoProvisionPrimar return this; } @CustomType.Setter + public Builder provider(String provider) { + if (provider == null) { + throw new MissingRequiredPropertyException("GatewaytemplateTunnelConfigsAutoProvision", "provider"); + } + this.provider = provider; + return this; + } + @CustomType.Setter + public Builder region(@Nullable String region) { + + this.region = region; + return this; + } + @CustomType.Setter public Builder secondary(@Nullable GatewaytemplateTunnelConfigsAutoProvisionSecondary secondary) { this.secondary = secondary; @@ -84,6 +136,8 @@ public GatewaytemplateTunnelConfigsAutoProvision build() { _resultValue.enable = enable; _resultValue.latlng = latlng; _resultValue.primary = primary; + _resultValue.provider = provider; + _resultValue.region = region; _resultValue.secondary = secondary; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsAutoProvisionPrimary.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsAutoProvisionPrimary.java index 0e8f97e5..3c8dde08 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsAutoProvisionPrimary.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsAutoProvisionPrimary.java @@ -7,12 +7,11 @@ import java.lang.String; import java.util.List; import java.util.Objects; -import java.util.Optional; import javax.annotation.Nullable; @CustomType public final class GatewaytemplateTunnelConfigsAutoProvisionPrimary { - private @Nullable String numHosts; + private @Nullable List probeIps; /** * @return optional, only needed if `vars_only`==`false` * @@ -20,8 +19,8 @@ public final class GatewaytemplateTunnelConfigsAutoProvisionPrimary { private @Nullable List wanNames; private GatewaytemplateTunnelConfigsAutoProvisionPrimary() {} - public Optional numHosts() { - return Optional.ofNullable(this.numHosts); + public List probeIps() { + return this.probeIps == null ? List.of() : this.probeIps; } /** * @return optional, only needed if `vars_only`==`false` @@ -40,21 +39,24 @@ public static Builder builder(GatewaytemplateTunnelConfigsAutoProvisionPrimary d } @CustomType.Builder public static final class Builder { - private @Nullable String numHosts; + private @Nullable List probeIps; private @Nullable List wanNames; public Builder() {} public Builder(GatewaytemplateTunnelConfigsAutoProvisionPrimary defaults) { Objects.requireNonNull(defaults); - this.numHosts = defaults.numHosts; + this.probeIps = defaults.probeIps; this.wanNames = defaults.wanNames; } @CustomType.Setter - public Builder numHosts(@Nullable String numHosts) { + public Builder probeIps(@Nullable List probeIps) { - this.numHosts = numHosts; + this.probeIps = probeIps; return this; } + public Builder probeIps(String... probeIps) { + return probeIps(List.of(probeIps)); + } @CustomType.Setter public Builder wanNames(@Nullable List wanNames) { @@ -66,7 +68,7 @@ public Builder wanNames(String... wanNames) { } public GatewaytemplateTunnelConfigsAutoProvisionPrimary build() { final var _resultValue = new GatewaytemplateTunnelConfigsAutoProvisionPrimary(); - _resultValue.numHosts = numHosts; + _resultValue.probeIps = probeIps; _resultValue.wanNames = wanNames; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsAutoProvisionSecondary.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsAutoProvisionSecondary.java index a5d2f4b5..2862b476 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsAutoProvisionSecondary.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsAutoProvisionSecondary.java @@ -7,12 +7,11 @@ import java.lang.String; import java.util.List; import java.util.Objects; -import java.util.Optional; import javax.annotation.Nullable; @CustomType public final class GatewaytemplateTunnelConfigsAutoProvisionSecondary { - private @Nullable String numHosts; + private @Nullable List probeIps; /** * @return optional, only needed if `vars_only`==`false` * @@ -20,8 +19,8 @@ public final class GatewaytemplateTunnelConfigsAutoProvisionSecondary { private @Nullable List wanNames; private GatewaytemplateTunnelConfigsAutoProvisionSecondary() {} - public Optional numHosts() { - return Optional.ofNullable(this.numHosts); + public List probeIps() { + return this.probeIps == null ? List.of() : this.probeIps; } /** * @return optional, only needed if `vars_only`==`false` @@ -40,21 +39,24 @@ public static Builder builder(GatewaytemplateTunnelConfigsAutoProvisionSecondary } @CustomType.Builder public static final class Builder { - private @Nullable String numHosts; + private @Nullable List probeIps; private @Nullable List wanNames; public Builder() {} public Builder(GatewaytemplateTunnelConfigsAutoProvisionSecondary defaults) { Objects.requireNonNull(defaults); - this.numHosts = defaults.numHosts; + this.probeIps = defaults.probeIps; this.wanNames = defaults.wanNames; } @CustomType.Setter - public Builder numHosts(@Nullable String numHosts) { + public Builder probeIps(@Nullable List probeIps) { - this.numHosts = numHosts; + this.probeIps = probeIps; return this; } + public Builder probeIps(String... probeIps) { + return probeIps(List.of(probeIps)); + } @CustomType.Setter public Builder wanNames(@Nullable List wanNames) { @@ -66,7 +68,7 @@ public Builder wanNames(String... wanNames) { } public GatewaytemplateTunnelConfigsAutoProvisionSecondary build() { final var _resultValue = new GatewaytemplateTunnelConfigsAutoProvisionSecondary(); - _resultValue.numHosts = numHosts; + _resultValue.probeIps = probeIps; _resultValue.wanNames = wanNames; return _resultValue; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsIpsecProposal.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsIpsecProposal.java index 90aaf977..026d7b74 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsIpsecProposal.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsIpsecProposal.java @@ -17,7 +17,7 @@ public final class GatewaytemplateTunnelConfigsIpsecProposal { */ private @Nullable String authAlgo; /** - * @return Only if `provider`== `custom-ipsec`. enum: + * @return Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -46,7 +46,7 @@ public Optional authAlgo() { return Optional.ofNullable(this.authAlgo); } /** - * @return Only if `provider`== `custom-ipsec`. enum: + * @return Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsPrimary.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsPrimary.java index 3ba5fe1e..4a94e999 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsPrimary.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsPrimary.java @@ -4,6 +4,7 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.List; import java.util.Objects; @@ -11,30 +12,26 @@ @CustomType public final class GatewaytemplateTunnelConfigsPrimary { - private @Nullable List hosts; + private List hosts; /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ private @Nullable List internalIps; private @Nullable List probeIps; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ private @Nullable List remoteIds; - private @Nullable List wanNames; + private List wanNames; private GatewaytemplateTunnelConfigsPrimary() {} public List hosts() { - return this.hosts == null ? List.of() : this.hosts; + return this.hosts; } /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ public List internalIps() { @@ -44,14 +41,14 @@ public List probeIps() { return this.probeIps == null ? List.of() : this.probeIps; } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public List remoteIds() { return this.remoteIds == null ? List.of() : this.remoteIds; } public List wanNames() { - return this.wanNames == null ? List.of() : this.wanNames; + return this.wanNames; } public static Builder builder() { @@ -63,11 +60,11 @@ public static Builder builder(GatewaytemplateTunnelConfigsPrimary defaults) { } @CustomType.Builder public static final class Builder { - private @Nullable List hosts; + private List hosts; private @Nullable List internalIps; private @Nullable List probeIps; private @Nullable List remoteIds; - private @Nullable List wanNames; + private List wanNames; public Builder() {} public Builder(GatewaytemplateTunnelConfigsPrimary defaults) { Objects.requireNonNull(defaults); @@ -79,8 +76,10 @@ public Builder(GatewaytemplateTunnelConfigsPrimary defaults) { } @CustomType.Setter - public Builder hosts(@Nullable List hosts) { - + public Builder hosts(List hosts) { + if (hosts == null) { + throw new MissingRequiredPropertyException("GatewaytemplateTunnelConfigsPrimary", "hosts"); + } this.hosts = hosts; return this; } @@ -115,8 +114,10 @@ public Builder remoteIds(String... remoteIds) { return remoteIds(List.of(remoteIds)); } @CustomType.Setter - public Builder wanNames(@Nullable List wanNames) { - + public Builder wanNames(List wanNames) { + if (wanNames == null) { + throw new MissingRequiredPropertyException("GatewaytemplateTunnelConfigsPrimary", "wanNames"); + } this.wanNames = wanNames; return this; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsSecondary.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsSecondary.java index 7459f9cb..aa86d4d1 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsSecondary.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelConfigsSecondary.java @@ -4,6 +4,7 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.List; import java.util.Objects; @@ -11,30 +12,26 @@ @CustomType public final class GatewaytemplateTunnelConfigsSecondary { - private @Nullable List hosts; + private List hosts; /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ private @Nullable List internalIps; private @Nullable List probeIps; /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ private @Nullable List remoteIds; - private @Nullable List wanNames; + private List wanNames; private GatewaytemplateTunnelConfigsSecondary() {} public List hosts() { - return this.hosts == null ? List.of() : this.hosts; + return this.hosts; } /** - * @return Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * @return Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` * */ public List internalIps() { @@ -44,14 +41,14 @@ public List probeIps() { return this.probeIps == null ? List.of() : this.probeIps; } /** - * @return Only if `provider`== `custom-ipsec` + * @return Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` * */ public List remoteIds() { return this.remoteIds == null ? List.of() : this.remoteIds; } public List wanNames() { - return this.wanNames == null ? List.of() : this.wanNames; + return this.wanNames; } public static Builder builder() { @@ -63,11 +60,11 @@ public static Builder builder(GatewaytemplateTunnelConfigsSecondary defaults) { } @CustomType.Builder public static final class Builder { - private @Nullable List hosts; + private List hosts; private @Nullable List internalIps; private @Nullable List probeIps; private @Nullable List remoteIds; - private @Nullable List wanNames; + private List wanNames; public Builder() {} public Builder(GatewaytemplateTunnelConfigsSecondary defaults) { Objects.requireNonNull(defaults); @@ -79,8 +76,10 @@ public Builder(GatewaytemplateTunnelConfigsSecondary defaults) { } @CustomType.Setter - public Builder hosts(@Nullable List hosts) { - + public Builder hosts(List hosts) { + if (hosts == null) { + throw new MissingRequiredPropertyException("GatewaytemplateTunnelConfigsSecondary", "hosts"); + } this.hosts = hosts; return this; } @@ -115,8 +114,10 @@ public Builder remoteIds(String... remoteIds) { return remoteIds(List.of(remoteIds)); } @CustomType.Setter - public Builder wanNames(@Nullable List wanNames) { - + public Builder wanNames(List wanNames) { + if (wanNames == null) { + throw new MissingRequiredPropertyException("GatewaytemplateTunnelConfigsSecondary", "wanNames"); + } this.wanNames = wanNames; return this; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelProviderOptionsJse.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelProviderOptionsJse.java index 609067a9..2dd3eb0f 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelProviderOptionsJse.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelProviderOptionsJse.java @@ -12,16 +12,24 @@ @CustomType public final class GatewaytemplateTunnelProviderOptionsJse { - private @Nullable String name; private @Nullable Integer numUsers; + /** + * @return JSE Organization name + * + */ + private @Nullable String orgName; private GatewaytemplateTunnelProviderOptionsJse() {} - public Optional name() { - return Optional.ofNullable(this.name); - } public Optional numUsers() { return Optional.ofNullable(this.numUsers); } + /** + * @return JSE Organization name + * + */ + public Optional orgName() { + return Optional.ofNullable(this.orgName); + } public static Builder builder() { return new Builder(); @@ -32,31 +40,31 @@ public static Builder builder(GatewaytemplateTunnelProviderOptionsJse defaults) } @CustomType.Builder public static final class Builder { - private @Nullable String name; private @Nullable Integer numUsers; + private @Nullable String orgName; public Builder() {} public Builder(GatewaytemplateTunnelProviderOptionsJse defaults) { Objects.requireNonNull(defaults); - this.name = defaults.name; this.numUsers = defaults.numUsers; + this.orgName = defaults.orgName; } @CustomType.Setter - public Builder name(@Nullable String name) { + public Builder numUsers(@Nullable Integer numUsers) { - this.name = name; + this.numUsers = numUsers; return this; } @CustomType.Setter - public Builder numUsers(@Nullable Integer numUsers) { + public Builder orgName(@Nullable String orgName) { - this.numUsers = numUsers; + this.orgName = orgName; return this; } public GatewaytemplateTunnelProviderOptionsJse build() { final var _resultValue = new GatewaytemplateTunnelProviderOptionsJse(); - _resultValue.name = name; _resultValue.numUsers = numUsers; + _resultValue.orgName = orgName; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelProviderOptionsZscaler.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelProviderOptionsZscaler.java index d066ae8a..730a1593 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelProviderOptionsZscaler.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelProviderOptionsZscaler.java @@ -6,8 +6,8 @@ import com.pulumi.core.annotations.CustomType; import com.pulumi.junipermist.org.outputs.GatewaytemplateTunnelProviderOptionsZscalerSubLocation; import java.lang.Boolean; +import java.lang.Double; import java.lang.Integer; -import java.lang.String; import java.util.List; import java.util.Objects; import java.util.Optional; @@ -15,115 +15,179 @@ @CustomType public final class GatewaytemplateTunnelProviderOptionsZscaler { - private @Nullable Boolean aupAcceptanceRequired; + private @Nullable Boolean aupBlockInternetUntilAccepted; /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - private @Nullable Integer aupExpire; + private @Nullable Boolean aupEnabled; /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - private @Nullable Boolean aupSslProxy; + private @Nullable Boolean aupForceSslInspection; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - private @Nullable Integer downloadMbps; + private @Nullable Integer aupTimeoutInDays; /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Enable this option to enforce user authentication * */ - private @Nullable Boolean enableAup; + private @Nullable Boolean authRequired; /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - private @Nullable Boolean enableCaution; - private @Nullable Boolean enforceAuthentication; - private @Nullable String name; + private @Nullable Boolean cautionEnabled; /** - * @return if `use_xff`==`true` + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + private @Nullable Double dnBandwidth; + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + private @Nullable Integer idleTimeInMinutes; + /** + * @return if `true`, enable the firewall control option + * + */ + private @Nullable Boolean ofwEnabled; + /** + * @return `sub-locations` can be used for specific uses cases to define different configuration based on the user network * */ private @Nullable List subLocations; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + */ + private @Nullable Boolean surrogateIp; + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + private @Nullable Boolean surrogateIpEnforcedForKnownBrowsers; + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + private @Nullable Integer surrogateRefreshTimeInMinutes; + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - private @Nullable Integer uploadMbps; + private @Nullable Double upBandwidth; /** * @return location uses proxy chaining to forward traffic * */ - private @Nullable Boolean useXff; + private @Nullable Boolean xffForwardEnabled; private GatewaytemplateTunnelProviderOptionsZscaler() {} - public Optional aupAcceptanceRequired() { - return Optional.ofNullable(this.aupAcceptanceRequired); + public Optional aupBlockInternetUntilAccepted() { + return Optional.ofNullable(this.aupBlockInternetUntilAccepted); } /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - public Optional aupExpire() { - return Optional.ofNullable(this.aupExpire); + public Optional aupEnabled() { + return Optional.ofNullable(this.aupEnabled); } /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - public Optional aupSslProxy() { - return Optional.ofNullable(this.aupSslProxy); + public Optional aupForceSslInspection() { + return Optional.ofNullable(this.aupForceSslInspection); + } + /** + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again + * + */ + public Optional aupTimeoutInDays() { + return Optional.ofNullable(this.aupTimeoutInDays); } /** - * @return the download bandwidth cap of the link, in Mbps + * @return Enable this option to enforce user authentication * */ - public Optional downloadMbps() { - return Optional.ofNullable(this.downloadMbps); + public Optional authRequired() { + return Optional.ofNullable(this.authRequired); } /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - public Optional enableAup() { - return Optional.ofNullable(this.enableAup); + public Optional cautionEnabled() { + return Optional.ofNullable(this.cautionEnabled); } /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - public Optional enableCaution() { - return Optional.ofNullable(this.enableCaution); + public Optional dnBandwidth() { + return Optional.ofNullable(this.dnBandwidth); } - public Optional enforceAuthentication() { - return Optional.ofNullable(this.enforceAuthentication); + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + public Optional idleTimeInMinutes() { + return Optional.ofNullable(this.idleTimeInMinutes); } - public Optional name() { - return Optional.ofNullable(this.name); + /** + * @return if `true`, enable the firewall control option + * + */ + public Optional ofwEnabled() { + return Optional.ofNullable(this.ofwEnabled); } /** - * @return if `use_xff`==`true` + * @return `sub-locations` can be used for specific uses cases to define different configuration based on the user network * */ public List subLocations() { return this.subLocations == null ? List.of() : this.subLocations; } /** - * @return the download bandwidth cap of the link, in Mbps + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies * */ - public Optional uploadMbps() { - return Optional.ofNullable(this.uploadMbps); + public Optional surrogateIp() { + return Optional.ofNullable(this.surrogateIp); + } + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + public Optional surrogateIpEnforcedForKnownBrowsers() { + return Optional.ofNullable(this.surrogateIpEnforcedForKnownBrowsers); + } + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + public Optional surrogateRefreshTimeInMinutes() { + return Optional.ofNullable(this.surrogateRefreshTimeInMinutes); + } + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional upBandwidth() { + return Optional.ofNullable(this.upBandwidth); } /** * @return location uses proxy chaining to forward traffic * */ - public Optional useXff() { - return Optional.ofNullable(this.useXff); + public Optional xffForwardEnabled() { + return Optional.ofNullable(this.xffForwardEnabled); } public static Builder builder() { @@ -135,79 +199,93 @@ public static Builder builder(GatewaytemplateTunnelProviderOptionsZscaler defaul } @CustomType.Builder public static final class Builder { - private @Nullable Boolean aupAcceptanceRequired; - private @Nullable Integer aupExpire; - private @Nullable Boolean aupSslProxy; - private @Nullable Integer downloadMbps; - private @Nullable Boolean enableAup; - private @Nullable Boolean enableCaution; - private @Nullable Boolean enforceAuthentication; - private @Nullable String name; + private @Nullable Boolean aupBlockInternetUntilAccepted; + private @Nullable Boolean aupEnabled; + private @Nullable Boolean aupForceSslInspection; + private @Nullable Integer aupTimeoutInDays; + private @Nullable Boolean authRequired; + private @Nullable Boolean cautionEnabled; + private @Nullable Double dnBandwidth; + private @Nullable Integer idleTimeInMinutes; + private @Nullable Boolean ofwEnabled; private @Nullable List subLocations; - private @Nullable Integer uploadMbps; - private @Nullable Boolean useXff; + private @Nullable Boolean surrogateIp; + private @Nullable Boolean surrogateIpEnforcedForKnownBrowsers; + private @Nullable Integer surrogateRefreshTimeInMinutes; + private @Nullable Double upBandwidth; + private @Nullable Boolean xffForwardEnabled; public Builder() {} public Builder(GatewaytemplateTunnelProviderOptionsZscaler defaults) { Objects.requireNonNull(defaults); - this.aupAcceptanceRequired = defaults.aupAcceptanceRequired; - this.aupExpire = defaults.aupExpire; - this.aupSslProxy = defaults.aupSslProxy; - this.downloadMbps = defaults.downloadMbps; - this.enableAup = defaults.enableAup; - this.enableCaution = defaults.enableCaution; - this.enforceAuthentication = defaults.enforceAuthentication; - this.name = defaults.name; + this.aupBlockInternetUntilAccepted = defaults.aupBlockInternetUntilAccepted; + this.aupEnabled = defaults.aupEnabled; + this.aupForceSslInspection = defaults.aupForceSslInspection; + this.aupTimeoutInDays = defaults.aupTimeoutInDays; + this.authRequired = defaults.authRequired; + this.cautionEnabled = defaults.cautionEnabled; + this.dnBandwidth = defaults.dnBandwidth; + this.idleTimeInMinutes = defaults.idleTimeInMinutes; + this.ofwEnabled = defaults.ofwEnabled; this.subLocations = defaults.subLocations; - this.uploadMbps = defaults.uploadMbps; - this.useXff = defaults.useXff; + this.surrogateIp = defaults.surrogateIp; + this.surrogateIpEnforcedForKnownBrowsers = defaults.surrogateIpEnforcedForKnownBrowsers; + this.surrogateRefreshTimeInMinutes = defaults.surrogateRefreshTimeInMinutes; + this.upBandwidth = defaults.upBandwidth; + this.xffForwardEnabled = defaults.xffForwardEnabled; } @CustomType.Setter - public Builder aupAcceptanceRequired(@Nullable Boolean aupAcceptanceRequired) { + public Builder aupBlockInternetUntilAccepted(@Nullable Boolean aupBlockInternetUntilAccepted) { + + this.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + return this; + } + @CustomType.Setter + public Builder aupEnabled(@Nullable Boolean aupEnabled) { - this.aupAcceptanceRequired = aupAcceptanceRequired; + this.aupEnabled = aupEnabled; return this; } @CustomType.Setter - public Builder aupExpire(@Nullable Integer aupExpire) { + public Builder aupForceSslInspection(@Nullable Boolean aupForceSslInspection) { - this.aupExpire = aupExpire; + this.aupForceSslInspection = aupForceSslInspection; return this; } @CustomType.Setter - public Builder aupSslProxy(@Nullable Boolean aupSslProxy) { + public Builder aupTimeoutInDays(@Nullable Integer aupTimeoutInDays) { - this.aupSslProxy = aupSslProxy; + this.aupTimeoutInDays = aupTimeoutInDays; return this; } @CustomType.Setter - public Builder downloadMbps(@Nullable Integer downloadMbps) { + public Builder authRequired(@Nullable Boolean authRequired) { - this.downloadMbps = downloadMbps; + this.authRequired = authRequired; return this; } @CustomType.Setter - public Builder enableAup(@Nullable Boolean enableAup) { + public Builder cautionEnabled(@Nullable Boolean cautionEnabled) { - this.enableAup = enableAup; + this.cautionEnabled = cautionEnabled; return this; } @CustomType.Setter - public Builder enableCaution(@Nullable Boolean enableCaution) { + public Builder dnBandwidth(@Nullable Double dnBandwidth) { - this.enableCaution = enableCaution; + this.dnBandwidth = dnBandwidth; return this; } @CustomType.Setter - public Builder enforceAuthentication(@Nullable Boolean enforceAuthentication) { + public Builder idleTimeInMinutes(@Nullable Integer idleTimeInMinutes) { - this.enforceAuthentication = enforceAuthentication; + this.idleTimeInMinutes = idleTimeInMinutes; return this; } @CustomType.Setter - public Builder name(@Nullable String name) { + public Builder ofwEnabled(@Nullable Boolean ofwEnabled) { - this.name = name; + this.ofwEnabled = ofwEnabled; return this; } @CustomType.Setter @@ -220,30 +298,52 @@ public Builder subLocations(GatewaytemplateTunnelProviderOptionsZscalerSubLocati return subLocations(List.of(subLocations)); } @CustomType.Setter - public Builder uploadMbps(@Nullable Integer uploadMbps) { + public Builder surrogateIp(@Nullable Boolean surrogateIp) { + + this.surrogateIp = surrogateIp; + return this; + } + @CustomType.Setter + public Builder surrogateIpEnforcedForKnownBrowsers(@Nullable Boolean surrogateIpEnforcedForKnownBrowsers) { + + this.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + return this; + } + @CustomType.Setter + public Builder surrogateRefreshTimeInMinutes(@Nullable Integer surrogateRefreshTimeInMinutes) { + + this.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + return this; + } + @CustomType.Setter + public Builder upBandwidth(@Nullable Double upBandwidth) { - this.uploadMbps = uploadMbps; + this.upBandwidth = upBandwidth; return this; } @CustomType.Setter - public Builder useXff(@Nullable Boolean useXff) { + public Builder xffForwardEnabled(@Nullable Boolean xffForwardEnabled) { - this.useXff = useXff; + this.xffForwardEnabled = xffForwardEnabled; return this; } public GatewaytemplateTunnelProviderOptionsZscaler build() { final var _resultValue = new GatewaytemplateTunnelProviderOptionsZscaler(); - _resultValue.aupAcceptanceRequired = aupAcceptanceRequired; - _resultValue.aupExpire = aupExpire; - _resultValue.aupSslProxy = aupSslProxy; - _resultValue.downloadMbps = downloadMbps; - _resultValue.enableAup = enableAup; - _resultValue.enableCaution = enableCaution; - _resultValue.enforceAuthentication = enforceAuthentication; - _resultValue.name = name; + _resultValue.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + _resultValue.aupEnabled = aupEnabled; + _resultValue.aupForceSslInspection = aupForceSslInspection; + _resultValue.aupTimeoutInDays = aupTimeoutInDays; + _resultValue.authRequired = authRequired; + _resultValue.cautionEnabled = cautionEnabled; + _resultValue.dnBandwidth = dnBandwidth; + _resultValue.idleTimeInMinutes = idleTimeInMinutes; + _resultValue.ofwEnabled = ofwEnabled; _resultValue.subLocations = subLocations; - _resultValue.uploadMbps = uploadMbps; - _resultValue.useXff = useXff; + _resultValue.surrogateIp = surrogateIp; + _resultValue.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + _resultValue.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + _resultValue.upBandwidth = upBandwidth; + _resultValue.xffForwardEnabled = xffForwardEnabled; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocation.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocation.java index 1f3a9156..80aa4a41 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocation.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/GatewaytemplateTunnelProviderOptionsZscalerSubLocation.java @@ -5,100 +5,176 @@ import com.pulumi.core.annotations.CustomType; import java.lang.Boolean; +import java.lang.Double; import java.lang.Integer; import java.lang.String; -import java.util.List; import java.util.Objects; import java.util.Optional; import javax.annotation.Nullable; @CustomType public final class GatewaytemplateTunnelProviderOptionsZscalerSubLocation { - private @Nullable Boolean aupAcceptanceRequired; + private @Nullable Boolean aupBlockInternetUntilAccepted; /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - private @Nullable Integer aupExpire; + private @Nullable Boolean aupEnabled; /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - private @Nullable Boolean aupSslProxy; + private @Nullable Boolean aupForceSslInspection; /** - * @return the download bandwidth cap of the link, in Mbps + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again * */ - private @Nullable Integer downloadMbps; + private @Nullable Integer aupTimeoutInDays; /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Enable this option to authenticate users * */ - private @Nullable Boolean enableAup; + private @Nullable Boolean authRequired; /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users * */ - private @Nullable Boolean enableCaution; - private @Nullable Boolean enforceAuthentication; - private @Nullable List subnets; + private @Nullable Boolean cautionEnabled; /** - * @return the download bandwidth cap of the link, in Mbps + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - private @Nullable Integer uploadMbps; + private @Nullable Double dnBandwidth; + /** + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation + * + */ + private @Nullable Integer idleTimeInMinutes; + /** + * @return Network name + * + */ + private @Nullable String name; + /** + * @return if `true`, enable the firewall control option + * + */ + private @Nullable Boolean ofwEnabled; + /** + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + */ + private @Nullable Boolean surrogateIp; + /** + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + * + */ + private @Nullable Boolean surrogateIpEnforcedForKnownBrowsers; + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + private @Nullable Integer surrogateRefreshTimeInMinutes; + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + private @Nullable Double upBandwidth; private GatewaytemplateTunnelProviderOptionsZscalerSubLocation() {} - public Optional aupAcceptanceRequired() { - return Optional.ofNullable(this.aupAcceptanceRequired); + public Optional aupBlockInternetUntilAccepted() { + return Optional.ofNullable(this.aupBlockInternetUntilAccepted); } /** - * @return days before AUP is requested again + * @return Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) * */ - public Optional aupExpire() { - return Optional.ofNullable(this.aupExpire); + public Optional aupEnabled() { + return Optional.ofNullable(this.aupEnabled); } /** * @return proxy HTTPs traffic, requiring Zscaler cert to be installed in browser * */ - public Optional aupSslProxy() { - return Optional.ofNullable(this.aupSslProxy); + public Optional aupForceSslInspection() { + return Optional.ofNullable(this.aupForceSslInspection); + } + /** + * @return Required if `aup_enabled`==`true`. Days before AUP is requested again + * + */ + public Optional aupTimeoutInDays() { + return Optional.ofNullable(this.aupTimeoutInDays); + } + /** + * @return Enable this option to authenticate users + * + */ + public Optional authRequired() { + return Optional.ofNullable(this.authRequired); + } + /** + * @return Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + * + */ + public Optional cautionEnabled() { + return Optional.ofNullable(this.cautionEnabled); } /** - * @return the download bandwidth cap of the link, in Mbps + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set * */ - public Optional downloadMbps() { - return Optional.ofNullable(this.downloadMbps); + public Optional dnBandwidth() { + return Optional.ofNullable(this.dnBandwidth); } /** - * @return if `use_xff`==`true`, display Acceptable Use Policy (AUP) + * @return Required if `surrogate_IP`==`true`, idle Time to Disassociation * */ - public Optional enableAup() { - return Optional.ofNullable(this.enableAup); + public Optional idleTimeInMinutes() { + return Optional.ofNullable(this.idleTimeInMinutes); } /** - * @return when `enforce_authentication`==`false`, display caution notification for non-authenticated users + * @return Network name * */ - public Optional enableCaution() { - return Optional.ofNullable(this.enableCaution); + public Optional name() { + return Optional.ofNullable(this.name); } - public Optional enforceAuthentication() { - return Optional.ofNullable(this.enforceAuthentication); + /** + * @return if `true`, enable the firewall control option + * + */ + public Optional ofwEnabled() { + return Optional.ofNullable(this.ofwEnabled); } - public List subnets() { - return this.subnets == null ? List.of() : this.subnets; + /** + * @return Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + * + */ + public Optional surrogateIp() { + return Optional.ofNullable(this.surrogateIp); } /** - * @return the download bandwidth cap of the link, in Mbps + * @return Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers * */ - public Optional uploadMbps() { - return Optional.ofNullable(this.uploadMbps); + public Optional surrogateIpEnforcedForKnownBrowsers() { + return Optional.ofNullable(this.surrogateIpEnforcedForKnownBrowsers); + } + /** + * @return Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + * + */ + public Optional surrogateRefreshTimeInMinutes() { + return Optional.ofNullable(this.surrogateRefreshTimeInMinutes); + } + /** + * @return the download bandwidth cap of the link, in Mbps. Disabled if not set + * + */ + public Optional upBandwidth() { + return Optional.ofNullable(this.upBandwidth); } public static Builder builder() { @@ -110,97 +186,139 @@ public static Builder builder(GatewaytemplateTunnelProviderOptionsZscalerSubLoca } @CustomType.Builder public static final class Builder { - private @Nullable Boolean aupAcceptanceRequired; - private @Nullable Integer aupExpire; - private @Nullable Boolean aupSslProxy; - private @Nullable Integer downloadMbps; - private @Nullable Boolean enableAup; - private @Nullable Boolean enableCaution; - private @Nullable Boolean enforceAuthentication; - private @Nullable List subnets; - private @Nullable Integer uploadMbps; + private @Nullable Boolean aupBlockInternetUntilAccepted; + private @Nullable Boolean aupEnabled; + private @Nullable Boolean aupForceSslInspection; + private @Nullable Integer aupTimeoutInDays; + private @Nullable Boolean authRequired; + private @Nullable Boolean cautionEnabled; + private @Nullable Double dnBandwidth; + private @Nullable Integer idleTimeInMinutes; + private @Nullable String name; + private @Nullable Boolean ofwEnabled; + private @Nullable Boolean surrogateIp; + private @Nullable Boolean surrogateIpEnforcedForKnownBrowsers; + private @Nullable Integer surrogateRefreshTimeInMinutes; + private @Nullable Double upBandwidth; public Builder() {} public Builder(GatewaytemplateTunnelProviderOptionsZscalerSubLocation defaults) { Objects.requireNonNull(defaults); - this.aupAcceptanceRequired = defaults.aupAcceptanceRequired; - this.aupExpire = defaults.aupExpire; - this.aupSslProxy = defaults.aupSslProxy; - this.downloadMbps = defaults.downloadMbps; - this.enableAup = defaults.enableAup; - this.enableCaution = defaults.enableCaution; - this.enforceAuthentication = defaults.enforceAuthentication; - this.subnets = defaults.subnets; - this.uploadMbps = defaults.uploadMbps; + this.aupBlockInternetUntilAccepted = defaults.aupBlockInternetUntilAccepted; + this.aupEnabled = defaults.aupEnabled; + this.aupForceSslInspection = defaults.aupForceSslInspection; + this.aupTimeoutInDays = defaults.aupTimeoutInDays; + this.authRequired = defaults.authRequired; + this.cautionEnabled = defaults.cautionEnabled; + this.dnBandwidth = defaults.dnBandwidth; + this.idleTimeInMinutes = defaults.idleTimeInMinutes; + this.name = defaults.name; + this.ofwEnabled = defaults.ofwEnabled; + this.surrogateIp = defaults.surrogateIp; + this.surrogateIpEnforcedForKnownBrowsers = defaults.surrogateIpEnforcedForKnownBrowsers; + this.surrogateRefreshTimeInMinutes = defaults.surrogateRefreshTimeInMinutes; + this.upBandwidth = defaults.upBandwidth; } @CustomType.Setter - public Builder aupAcceptanceRequired(@Nullable Boolean aupAcceptanceRequired) { + public Builder aupBlockInternetUntilAccepted(@Nullable Boolean aupBlockInternetUntilAccepted) { - this.aupAcceptanceRequired = aupAcceptanceRequired; + this.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; return this; } @CustomType.Setter - public Builder aupExpire(@Nullable Integer aupExpire) { + public Builder aupEnabled(@Nullable Boolean aupEnabled) { - this.aupExpire = aupExpire; + this.aupEnabled = aupEnabled; return this; } @CustomType.Setter - public Builder aupSslProxy(@Nullable Boolean aupSslProxy) { + public Builder aupForceSslInspection(@Nullable Boolean aupForceSslInspection) { - this.aupSslProxy = aupSslProxy; + this.aupForceSslInspection = aupForceSslInspection; return this; } @CustomType.Setter - public Builder downloadMbps(@Nullable Integer downloadMbps) { + public Builder aupTimeoutInDays(@Nullable Integer aupTimeoutInDays) { - this.downloadMbps = downloadMbps; + this.aupTimeoutInDays = aupTimeoutInDays; return this; } @CustomType.Setter - public Builder enableAup(@Nullable Boolean enableAup) { + public Builder authRequired(@Nullable Boolean authRequired) { - this.enableAup = enableAup; + this.authRequired = authRequired; return this; } @CustomType.Setter - public Builder enableCaution(@Nullable Boolean enableCaution) { + public Builder cautionEnabled(@Nullable Boolean cautionEnabled) { - this.enableCaution = enableCaution; + this.cautionEnabled = cautionEnabled; return this; } @CustomType.Setter - public Builder enforceAuthentication(@Nullable Boolean enforceAuthentication) { + public Builder dnBandwidth(@Nullable Double dnBandwidth) { - this.enforceAuthentication = enforceAuthentication; + this.dnBandwidth = dnBandwidth; return this; } @CustomType.Setter - public Builder subnets(@Nullable List subnets) { + public Builder idleTimeInMinutes(@Nullable Integer idleTimeInMinutes) { - this.subnets = subnets; + this.idleTimeInMinutes = idleTimeInMinutes; return this; } - public Builder subnets(String... subnets) { - return subnets(List.of(subnets)); + @CustomType.Setter + public Builder name(@Nullable String name) { + + this.name = name; + return this; + } + @CustomType.Setter + public Builder ofwEnabled(@Nullable Boolean ofwEnabled) { + + this.ofwEnabled = ofwEnabled; + return this; + } + @CustomType.Setter + public Builder surrogateIp(@Nullable Boolean surrogateIp) { + + this.surrogateIp = surrogateIp; + return this; + } + @CustomType.Setter + public Builder surrogateIpEnforcedForKnownBrowsers(@Nullable Boolean surrogateIpEnforcedForKnownBrowsers) { + + this.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + return this; + } + @CustomType.Setter + public Builder surrogateRefreshTimeInMinutes(@Nullable Integer surrogateRefreshTimeInMinutes) { + + this.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + return this; } @CustomType.Setter - public Builder uploadMbps(@Nullable Integer uploadMbps) { + public Builder upBandwidth(@Nullable Double upBandwidth) { - this.uploadMbps = uploadMbps; + this.upBandwidth = upBandwidth; return this; } public GatewaytemplateTunnelProviderOptionsZscalerSubLocation build() { final var _resultValue = new GatewaytemplateTunnelProviderOptionsZscalerSubLocation(); - _resultValue.aupAcceptanceRequired = aupAcceptanceRequired; - _resultValue.aupExpire = aupExpire; - _resultValue.aupSslProxy = aupSslProxy; - _resultValue.downloadMbps = downloadMbps; - _resultValue.enableAup = enableAup; - _resultValue.enableCaution = enableCaution; - _resultValue.enforceAuthentication = enforceAuthentication; - _resultValue.subnets = subnets; - _resultValue.uploadMbps = uploadMbps; + _resultValue.aupBlockInternetUntilAccepted = aupBlockInternetUntilAccepted; + _resultValue.aupEnabled = aupEnabled; + _resultValue.aupForceSslInspection = aupForceSslInspection; + _resultValue.aupTimeoutInDays = aupTimeoutInDays; + _resultValue.authRequired = authRequired; + _resultValue.cautionEnabled = cautionEnabled; + _resultValue.dnBandwidth = dnBandwidth; + _resultValue.idleTimeInMinutes = idleTimeInMinutes; + _resultValue.name = name; + _resultValue.ofwEnabled = ofwEnabled; + _resultValue.surrogateIp = surrogateIp; + _resultValue.surrogateIpEnforcedForKnownBrowsers = surrogateIpEnforcedForKnownBrowsers; + _resultValue.surrogateRefreshTimeInMinutes = surrogateRefreshTimeInMinutes; + _resultValue.upBandwidth = upBandwidth; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkInternetAccess.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkInternetAccess.java index 0bebcd24..aa1444da 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkInternetAccess.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkInternetAccess.java @@ -17,7 +17,7 @@ public final class NetworkInternetAccess { private @Nullable Boolean createSimpleServicePolicy; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ private @Nullable Map destinationNat; @@ -28,7 +28,7 @@ public final class NetworkInternetAccess { */ private @Nullable Boolean restricted; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ private @Nullable Map staticNat; @@ -38,7 +38,7 @@ public Optional createSimpleServicePolicy() { return Optional.ofNullable(this.createSimpleServicePolicy); } /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Map destinationNat() { @@ -55,7 +55,7 @@ public Optional restricted() { return Optional.ofNullable(this.restricted); } /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Map staticNat() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkInternetAccessDestinationNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkInternetAccessDestinationNat.java index f56339e6..1e6dc5ba 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkInternetAccessDestinationNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkInternetAccessDestinationNat.java @@ -4,7 +4,6 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; -import java.lang.Integer; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -12,20 +11,48 @@ @CustomType public final class NetworkInternetAccessDestinationNat { + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + /** + * @return The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ + private @Nullable String port; + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + private @Nullable String wanName; private NetworkInternetAccessDestinationNat() {} + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional internalIp() { return Optional.ofNullable(this.internalIp); } public Optional name() { return Optional.ofNullable(this.name); } - public Optional port() { + /** + * @return The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + * + */ + public Optional port() { return Optional.ofNullable(this.port); } + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + * + */ + public Optional wanName() { + return Optional.ofNullable(this.wanName); + } public static Builder builder() { return new Builder(); @@ -38,13 +65,15 @@ public static Builder builder(NetworkInternetAccessDestinationNat defaults) { public static final class Builder { private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + private @Nullable String port; + private @Nullable String wanName; public Builder() {} public Builder(NetworkInternetAccessDestinationNat defaults) { Objects.requireNonNull(defaults); this.internalIp = defaults.internalIp; this.name = defaults.name; this.port = defaults.port; + this.wanName = defaults.wanName; } @CustomType.Setter @@ -60,16 +89,23 @@ public Builder name(@Nullable String name) { return this; } @CustomType.Setter - public Builder port(@Nullable Integer port) { + public Builder port(@Nullable String port) { this.port = port; return this; } + @CustomType.Setter + public Builder wanName(@Nullable String wanName) { + + this.wanName = wanName; + return this; + } public NetworkInternetAccessDestinationNat build() { final var _resultValue = new NetworkInternetAccessDestinationNat(); _resultValue.internalIp = internalIp; _resultValue.name = name; _resultValue.port = port; + _resultValue.wanName = wanName; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkInternetAccessStaticNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkInternetAccessStaticNat.java index 3d69d09e..d1bc6c33 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkInternetAccessStaticNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkInternetAccessStaticNat.java @@ -4,6 +4,7 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -11,23 +12,31 @@ @CustomType public final class NetworkInternetAccessStaticNat { - private @Nullable String internalIp; - private @Nullable String name; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + private String internalIp; + private String name; + /** + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ private @Nullable String wanName; private NetworkInternetAccessStaticNat() {} - public Optional internalIp() { - return Optional.ofNullable(this.internalIp); + /** + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + * + */ + public String internalIp() { + return this.internalIp; } - public Optional name() { - return Optional.ofNullable(this.name); + public String name() { + return this.name; } /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") * */ public Optional wanName() { @@ -43,8 +52,8 @@ public static Builder builder(NetworkInternetAccessStaticNat defaults) { } @CustomType.Builder public static final class Builder { - private @Nullable String internalIp; - private @Nullable String name; + private String internalIp; + private String name; private @Nullable String wanName; public Builder() {} public Builder(NetworkInternetAccessStaticNat defaults) { @@ -55,14 +64,18 @@ public Builder(NetworkInternetAccessStaticNat defaults) { } @CustomType.Setter - public Builder internalIp(@Nullable String internalIp) { - + public Builder internalIp(String internalIp) { + if (internalIp == null) { + throw new MissingRequiredPropertyException("NetworkInternetAccessStaticNat", "internalIp"); + } this.internalIp = internalIp; return this; } @CustomType.Setter - public Builder name(@Nullable String name) { - + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("NetworkInternetAccessStaticNat", "name"); + } this.name = name; return this; } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkMulticast.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkMulticast.java new file mode 100644 index 00000000..c2efb28e --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkMulticast.java @@ -0,0 +1,94 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.junipermist.org.outputs; + +import com.pulumi.core.annotations.CustomType; +import com.pulumi.junipermist.org.outputs.NetworkMulticastGroups; +import java.lang.Boolean; +import java.lang.String; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class NetworkMulticast { + /** + * @return if the network will only be the soruce of the multicast traffic, IGMP can be disabled + * + */ + private @Nullable Boolean disableIgmp; + private @Nullable Boolean enabled; + /** + * @return Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + * + */ + private @Nullable Map groups; + + private NetworkMulticast() {} + /** + * @return if the network will only be the soruce of the multicast traffic, IGMP can be disabled + * + */ + public Optional disableIgmp() { + return Optional.ofNullable(this.disableIgmp); + } + public Optional enabled() { + return Optional.ofNullable(this.enabled); + } + /** + * @return Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + * + */ + public Map groups() { + return this.groups == null ? Map.of() : this.groups; + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(NetworkMulticast defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable Boolean disableIgmp; + private @Nullable Boolean enabled; + private @Nullable Map groups; + public Builder() {} + public Builder(NetworkMulticast defaults) { + Objects.requireNonNull(defaults); + this.disableIgmp = defaults.disableIgmp; + this.enabled = defaults.enabled; + this.groups = defaults.groups; + } + + @CustomType.Setter + public Builder disableIgmp(@Nullable Boolean disableIgmp) { + + this.disableIgmp = disableIgmp; + return this; + } + @CustomType.Setter + public Builder enabled(@Nullable Boolean enabled) { + + this.enabled = enabled; + return this; + } + @CustomType.Setter + public Builder groups(@Nullable Map groups) { + + this.groups = groups; + return this; + } + public NetworkMulticast build() { + final var _resultValue = new NetworkMulticast(); + _resultValue.disableIgmp = disableIgmp; + _resultValue.enabled = enabled; + _resultValue.groups = groups; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkMulticastGroups.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkMulticastGroups.java new file mode 100644 index 00000000..66e40340 --- /dev/null +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkMulticastGroups.java @@ -0,0 +1,57 @@ +// *** WARNING: this file was generated by pulumi-java-gen. *** +// *** Do not edit by hand unless you're certain you know what you are doing! *** + +package com.pulumi.junipermist.org.outputs; + +import com.pulumi.core.annotations.CustomType; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; +import javax.annotation.Nullable; + +@CustomType +public final class NetworkMulticastGroups { + /** + * @return RP (rendezvous point) IP Address + * + */ + private @Nullable String rpIp; + + private NetworkMulticastGroups() {} + /** + * @return RP (rendezvous point) IP Address + * + */ + public Optional rpIp() { + return Optional.ofNullable(this.rpIp); + } + + public static Builder builder() { + return new Builder(); + } + + public static Builder builder(NetworkMulticastGroups defaults) { + return new Builder(defaults); + } + @CustomType.Builder + public static final class Builder { + private @Nullable String rpIp; + public Builder() {} + public Builder(NetworkMulticastGroups defaults) { + Objects.requireNonNull(defaults); + this.rpIp = defaults.rpIp; + } + + @CustomType.Setter + public Builder rpIp(@Nullable String rpIp) { + + this.rpIp = rpIp; + return this; + } + public NetworkMulticastGroups build() { + final var _resultValue = new NetworkMulticastGroups(); + _resultValue.rpIp = rpIp; + return _resultValue; + } + } +} diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkVpnAccess.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkVpnAccess.java index 1e93c320..b8039ef3 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkVpnAccess.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkVpnAccess.java @@ -28,7 +28,7 @@ public final class NetworkVpnAccess { */ private @Nullable Boolean allowPing; /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ private @Nullable Map destinationNat; @@ -70,7 +70,7 @@ public final class NetworkVpnAccess { */ private @Nullable NetworkVpnAccessSourceNat sourceNat; /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ private @Nullable Map staticNat; @@ -107,7 +107,7 @@ public Optional allowPing() { return Optional.ofNullable(this.allowPing); } /** - * @return Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * @return Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined * */ public Map destinationNat() { @@ -165,7 +165,7 @@ public Optional sourceNat() { return Optional.ofNullable(this.sourceNat); } /** - * @return Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * @return Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") * */ public Map staticNat() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkVpnAccessDestinationNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkVpnAccessDestinationNat.java index 227168b8..9530dcfc 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkVpnAccessDestinationNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkVpnAccessDestinationNat.java @@ -4,7 +4,6 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; -import java.lang.Integer; import java.lang.String; import java.util.Objects; import java.util.Optional; @@ -12,18 +11,26 @@ @CustomType public final class NetworkVpnAccessDestinationNat { + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + private @Nullable String port; private NetworkVpnAccessDestinationNat() {} + /** + * @return The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + * + */ public Optional internalIp() { return Optional.ofNullable(this.internalIp); } public Optional name() { return Optional.ofNullable(this.name); } - public Optional port() { + public Optional port() { return Optional.ofNullable(this.port); } @@ -38,7 +45,7 @@ public static Builder builder(NetworkVpnAccessDestinationNat defaults) { public static final class Builder { private @Nullable String internalIp; private @Nullable String name; - private @Nullable Integer port; + private @Nullable String port; public Builder() {} public Builder(NetworkVpnAccessDestinationNat defaults) { Objects.requireNonNull(defaults); @@ -60,7 +67,7 @@ public Builder name(@Nullable String name) { return this; } @CustomType.Setter - public Builder port(@Nullable Integer port) { + public Builder port(@Nullable String port) { this.port = port; return this; diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkVpnAccessStaticNat.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkVpnAccessStaticNat.java index e0db4f43..a5ead8b8 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkVpnAccessStaticNat.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworkVpnAccessStaticNat.java @@ -4,34 +4,29 @@ package com.pulumi.junipermist.org.outputs; import com.pulumi.core.annotations.CustomType; +import com.pulumi.exceptions.MissingRequiredPropertyException; import java.lang.String; import java.util.Objects; -import java.util.Optional; -import javax.annotation.Nullable; @CustomType public final class NetworkVpnAccessStaticNat { - private @Nullable String internalIp; - private @Nullable String name; /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - private @Nullable String wanName; + private String internalIp; + private String name; private NetworkVpnAccessStaticNat() {} - public Optional internalIp() { - return Optional.ofNullable(this.internalIp); - } - public Optional name() { - return Optional.ofNullable(this.name); - } /** - * @return If not set, we configure the nat policies against all WAN ports for simplicity + * @return The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") * */ - public Optional wanName() { - return Optional.ofNullable(this.wanName); + public String internalIp() { + return this.internalIp; + } + public String name() { + return this.name; } public static Builder builder() { @@ -43,40 +38,35 @@ public static Builder builder(NetworkVpnAccessStaticNat defaults) { } @CustomType.Builder public static final class Builder { - private @Nullable String internalIp; - private @Nullable String name; - private @Nullable String wanName; + private String internalIp; + private String name; public Builder() {} public Builder(NetworkVpnAccessStaticNat defaults) { Objects.requireNonNull(defaults); this.internalIp = defaults.internalIp; this.name = defaults.name; - this.wanName = defaults.wanName; } @CustomType.Setter - public Builder internalIp(@Nullable String internalIp) { - + public Builder internalIp(String internalIp) { + if (internalIp == null) { + throw new MissingRequiredPropertyException("NetworkVpnAccessStaticNat", "internalIp"); + } this.internalIp = internalIp; return this; } @CustomType.Setter - public Builder name(@Nullable String name) { - + public Builder name(String name) { + if (name == null) { + throw new MissingRequiredPropertyException("NetworkVpnAccessStaticNat", "name"); + } this.name = name; return this; } - @CustomType.Setter - public Builder wanName(@Nullable String wanName) { - - this.wanName = wanName; - return this; - } public NetworkVpnAccessStaticNat build() { final var _resultValue = new NetworkVpnAccessStaticNat(); _resultValue.internalIp = internalIp; _resultValue.name = name; - _resultValue.wanName = wanName; return _resultValue; } } diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateAclPolicy.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateAclPolicy.java index 09ca1009..00a5b825 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateAclPolicy.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateAclPolicy.java @@ -14,23 +14,26 @@ @CustomType public final class NetworktemplateAclPolicy { /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ private @Nullable List actions; private @Nullable String name; /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ private @Nullable List srcTags; private NetworktemplateAclPolicy() {} /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ public List actions() { @@ -40,8 +43,9 @@ public Optional name() { return Optional.ofNullable(this.name); } /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ public List srcTags() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateAclTags.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateAclTags.java index 719d19fc..1dccae63 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateAclTags.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateAclTags.java @@ -17,9 +17,9 @@ public final class NetworktemplateAclTags { /** * @return required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * */ private @Nullable Integer gbpTag; @@ -49,8 +49,7 @@ public final class NetworktemplateAclTags { */ private @Nullable String radiusGroup; /** - * @return if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @return if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * */ private @Nullable List specs; @@ -80,9 +79,9 @@ public final class NetworktemplateAclTags { private NetworktemplateAclTags() {} /** * @return required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * */ public Optional gbpTag() { @@ -120,8 +119,7 @@ public Optional radiusGroup() { return Optional.ofNullable(this.radiusGroup); } /** - * @return if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @return if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * */ public List specs() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateAclTagsSpec.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateAclTagsSpec.java index 49fbe3e7..bea53349 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateAclTagsSpec.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateAclTagsSpec.java @@ -17,7 +17,7 @@ public final class NetworktemplateAclTagsSpec { */ private @Nullable String portRange; /** - * @return `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @return `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * */ private @Nullable String protocol; @@ -31,7 +31,7 @@ public Optional portRange() { return Optional.ofNullable(this.portRange); } /** - * @return `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @return `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * */ public Optional protocol() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateNetworks.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateNetworks.java index df017a15..fe544254 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateNetworks.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateNetworks.java @@ -24,8 +24,7 @@ public final class NetworktemplateNetworks { */ private @Nullable String gateway6; /** - * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * */ private @Nullable Boolean isolation; @@ -58,8 +57,7 @@ public Optional gateway6() { return Optional.ofNullable(this.gateway6); } /** - * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * */ public Optional isolation() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplatePortUsages.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplatePortUsages.java index be340066..04d8f99a 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplatePortUsages.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplatePortUsages.java @@ -22,9 +22,7 @@ public final class NetworktemplatePortUsages { */ private @Nullable Boolean allNetworks; /** - * @return 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 allow_dhcpd is a tri_state. - * 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. + * @return 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 allow_dhcpd is a tri_state. 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. * */ private @Nullable Boolean allowDhcpd; @@ -84,8 +82,7 @@ public final class NetworktemplatePortUsages { */ private @Nullable String guestNetwork; /** - * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ private @Nullable Boolean interSwitchLink; @@ -175,8 +172,7 @@ public final class NetworktemplatePortUsages { */ private @Nullable String speed; /** - * @return Switch storm control - * Only if `mode`!=`dynamic` + * @return Switch storm control. Only if `mode`!=`dynamic` * */ private @Nullable NetworktemplatePortUsagesStormControl stormControl; @@ -212,9 +208,7 @@ public Optional allNetworks() { return Optional.ofNullable(this.allNetworks); } /** - * @return 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 allow_dhcpd is a tri_state. - * 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. + * @return 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 allow_dhcpd is a tri_state. 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. * */ public Optional allowDhcpd() { @@ -298,8 +292,7 @@ public Optional guestNetwork() { return Optional.ofNullable(this.guestNetwork); } /** - * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ public Optional interSwitchLink() { @@ -425,8 +418,7 @@ public Optional speed() { return Optional.ofNullable(this.speed); } /** - * @return Switch storm control - * Only if `mode`!=`dynamic` + * @return Switch storm control. Only if `mode`!=`dynamic` * */ public Optional stormControl() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateRadiusConfig.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateRadiusConfig.java index b0f66fca..c70c66bb 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateRadiusConfig.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateRadiusConfig.java @@ -33,8 +33,7 @@ public final class NetworktemplateRadiusConfig { */ private @Nullable Integer authServersTimeout; /** - * @return use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @return use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * */ private @Nullable String network; @@ -73,8 +72,7 @@ public Optional authServersTimeout() { return Optional.ofNullable(this.authServersTimeout); } /** - * @return use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @return use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * */ public Optional network() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.java index 0633ba64..4bb51bbe 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.java @@ -12,8 +12,7 @@ @CustomType public final class NetworktemplateSnmpConfigV3ConfigUsmUser { /** - * @return Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @return Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * */ private @Nullable String authenticationPassword; @@ -23,8 +22,7 @@ public final class NetworktemplateSnmpConfigV3ConfigUsmUser { */ private @Nullable String authenticationType; /** - * @return Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @return Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * */ private @Nullable String encryptionPassword; @@ -37,8 +35,7 @@ public final class NetworktemplateSnmpConfigV3ConfigUsmUser { private NetworktemplateSnmpConfigV3ConfigUsmUser() {} /** - * @return Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @return Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * */ public Optional authenticationPassword() { @@ -52,8 +49,7 @@ public Optional authenticationType() { return Optional.ofNullable(this.authenticationType); } /** - * @return Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @return Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * */ public Optional encryptionPassword() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateSwitchMatchingRule.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateSwitchMatchingRule.java index 0a55042b..d1e6a027 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateSwitchMatchingRule.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/NetworktemplateSwitchMatchingRule.java @@ -80,8 +80,7 @@ public final class NetworktemplateSwitchMatchingRule { */ private @Nullable Map portConfig; /** - * @return Property key is the port mirroring instance name - * port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed * */ private @Nullable Map portMirroring; @@ -171,8 +170,7 @@ public Map portConfig() { return this.portConfig == null ? Map.of() : this.portConfig; } /** - * @return Property key is the port mirroring instance name - * port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed * */ public Map portMirroring() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanAppLimit.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanAppLimit.java index 7990b6c9..ca4b8b35 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanAppLimit.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanAppLimit.java @@ -22,8 +22,7 @@ public final class WlanAppLimit { private @Nullable Map apps; private @Nullable Boolean enabled; /** - * @return Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * @return Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` * */ private @Nullable Map wxtagIds; @@ -41,8 +40,7 @@ public Optional enabled() { return Optional.ofNullable(this.enabled); } /** - * @return Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * @return Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` * */ public Map wxtagIds() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanDnsServerRewrite.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanDnsServerRewrite.java index 9a5205f6..b6235f4e 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanDnsServerRewrite.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanDnsServerRewrite.java @@ -15,8 +15,7 @@ public final class WlanDnsServerRewrite { private @Nullable Boolean enabled; /** - * @return map between radius_group and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * @return map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server * */ private @Nullable Map radiusGroups; @@ -26,8 +25,7 @@ public Optional enabled() { return Optional.ofNullable(this.enabled); } /** - * @return map between radius_group and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * @return map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server * */ public Map radiusGroups() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanDynamicPsk.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanDynamicPsk.java index 81c80d0b..f1d69443 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanDynamicPsk.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanDynamicPsk.java @@ -20,8 +20,7 @@ public final class WlanDynamicPsk { private @Nullable String defaultVlanId; private @Nullable Boolean enabled; /** - * @return when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * @return when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto * */ private @Nullable Boolean forceLookup; @@ -46,8 +45,7 @@ public Optional enabled() { return Optional.ofNullable(this.enabled); } /** - * @return when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * @return when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto * */ public Optional forceLookup() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanRadsec.java b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanRadsec.java index 3b14f57f..7a90c9bb 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanRadsec.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/org/outputs/WlanRadsec.java @@ -19,14 +19,12 @@ public final class WlanRadsec { private @Nullable Boolean enabled; private @Nullable Integer idleTimeout; /** - * @return To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * @return To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids * */ private @Nullable List mxclusterIds; /** - * @return default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * @return default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` * */ private @Nullable List proxyHosts; @@ -62,16 +60,14 @@ public Optional idleTimeout() { return Optional.ofNullable(this.idleTimeout); } /** - * @return To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * @return To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids * */ public List mxclusterIds() { return this.mxclusterIds == null ? List.of() : this.mxclusterIds; } /** - * @return default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * @return default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` * */ public List proxyHosts() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/Networktemplate.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/Networktemplate.java index 10439d38..1f75e92c 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/Networktemplate.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/Networktemplate.java @@ -286,7 +286,7 @@ public Output>> ospfAreas() { return Codegen.optional(this.ospfAreas); } /** - * Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -295,7 +295,7 @@ public Output>> ospfAreas() { private Output> portMirroring; /** - * @return Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/NetworktemplateArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/NetworktemplateArgs.java index 56e6ff8b..4e734367 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/NetworktemplateArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/NetworktemplateArgs.java @@ -208,7 +208,7 @@ public Optional>> ospfAreas() { } /** - * Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -217,7 +217,7 @@ public Optional>> ospfAreas() { private @Nullable Output> portMirroring; /** - * @return Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -691,7 +691,7 @@ public Builder ospfAreas(Map ospfAreas) { } /** - * @param portMirroring Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @param portMirroring Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -704,7 +704,7 @@ public Builder portMirroring(@Nullable Output> actions; /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ public Optional>> actions() { @@ -42,16 +44,18 @@ public Optional> name() { } /** - * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ @Import(name="srcTags") private @Nullable Output> srcTags; /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ public Optional>> srcTags() { @@ -85,8 +89,9 @@ public Builder(NetworktemplateAclPolicyArgs defaults) { } /** - * @param actions - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param actions ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -97,8 +102,9 @@ public Builder actions(@Nullable Output } /** - * @param actions - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param actions ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -108,8 +114,9 @@ public Builder actions(List actions) { } /** - * @param actions - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param actions ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -128,8 +135,9 @@ public Builder name(String name) { } /** - * @param srcTags - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param srcTags ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -140,8 +148,9 @@ public Builder srcTags(@Nullable Output> srcTags) { } /** - * @param srcTags - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param srcTags ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * @@ -151,8 +160,9 @@ public Builder srcTags(List srcTags) { } /** - * @param srcTags - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @param srcTags ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateAclTagsArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateAclTagsArgs.java index 0a89fb35..c07ad3c1 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateAclTagsArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateAclTagsArgs.java @@ -21,9 +21,9 @@ public final class NetworktemplateAclTagsArgs extends com.pulumi.resources.Resou /** * required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * */ @Import(name="gbpTag") @@ -31,9 +31,9 @@ public final class NetworktemplateAclTagsArgs extends com.pulumi.resources.Resou /** * @return required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * */ public Optional> gbpTag() { @@ -106,16 +106,14 @@ public Optional> radiusGroup() { } /** - * if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * */ @Import(name="specs") private @Nullable Output> specs; /** - * @return if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @return if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * */ public Optional>> specs() { @@ -208,9 +206,9 @@ public Builder(NetworktemplateAclTagsArgs defaults) { /** * @param gbpTag required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * * @return builder * @@ -222,9 +220,9 @@ public Builder gbpTag(@Nullable Output gbpTag) { /** * @param gbpTag required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * * @return builder * @@ -329,8 +327,7 @@ public Builder radiusGroup(String radiusGroup) { } /** - * @param specs if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @param specs if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * * @return builder * @@ -341,8 +338,7 @@ public Builder specs(@Nullable Output> spec } /** - * @param specs if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @param specs if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * * @return builder * @@ -352,8 +348,7 @@ public Builder specs(List specs) { } /** - * @param specs if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @param specs if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateAclTagsSpecArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateAclTagsSpecArgs.java index 3ec5be3d..e135cc58 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateAclTagsSpecArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateAclTagsSpecArgs.java @@ -31,14 +31,14 @@ public Optional> portRange() { } /** - * `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * */ @Import(name="protocol") private @Nullable Output protocol; /** - * @return `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @return `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * */ public Optional> protocol() { @@ -92,7 +92,7 @@ public Builder portRange(String portRange) { } /** - * @param protocol `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @param protocol `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * * @return builder * @@ -103,7 +103,7 @@ public Builder protocol(@Nullable Output protocol) { } /** - * @param protocol `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @param protocol `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateNetworksArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateNetworksArgs.java index ce353eed..0cc77c85 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateNetworksArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateNetworksArgs.java @@ -48,16 +48,14 @@ public Optional> gateway6() { } /** - * whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * */ @Import(name="isolation") private @Nullable Output isolation; /** - * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * */ public Optional> isolation() { @@ -181,8 +179,7 @@ public Builder gateway6(String gateway6) { } /** - * @param isolation whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @param isolation whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * * @return builder * @@ -193,8 +190,7 @@ public Builder isolation(@Nullable Output isolation) { } /** - * @param isolation whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @param isolation whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplatePortUsagesArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplatePortUsagesArgs.java index a0ecc8ac..9f01eacb 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplatePortUsagesArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplatePortUsagesArgs.java @@ -36,18 +36,14 @@ public Optional> allNetworks() { } /** - * 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 allow_dhcpd is a tri_state. - * 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. + * 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 allow_dhcpd is a tri_state. 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. * */ @Import(name="allowDhcpd") private @Nullable Output allowDhcpd; /** - * @return 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 allow_dhcpd is a tri_state. - * 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. + * @return 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 allow_dhcpd is a tri_state. 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. * */ public Optional> allowDhcpd() { @@ -220,16 +216,14 @@ public Optional> guestNetwork() { } /** - * Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ @Import(name="interSwitchLink") private @Nullable Output interSwitchLink; /** - * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ public Optional> interSwitchLink() { @@ -492,16 +486,14 @@ public Optional> speed() { } /** - * Switch storm control - * Only if `mode`!=`dynamic` + * Switch storm control. Only if `mode`!=`dynamic` * */ @Import(name="stormControl") private @Nullable Output stormControl; /** - * @return Switch storm control - * Only if `mode`!=`dynamic` + * @return Switch storm control. Only if `mode`!=`dynamic` * */ public Optional> stormControl() { @@ -665,9 +657,7 @@ public Builder allNetworks(Boolean allNetworks) { } /** - * @param allowDhcpd 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 allow_dhcpd is a tri_state. - * 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. + * @param allowDhcpd 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 allow_dhcpd is a tri_state. 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. * * @return builder * @@ -678,9 +668,7 @@ public Builder allowDhcpd(@Nullable Output allowDhcpd) { } /** - * @param allowDhcpd 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 allow_dhcpd is a tri_state. - * 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. + * @param allowDhcpd 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 allow_dhcpd is a tri_state. 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. * * @return builder * @@ -931,8 +919,7 @@ public Builder guestNetwork(String guestNetwork) { } /** - * @param interSwitchLink Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @param interSwitchLink Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * * @return builder * @@ -943,8 +930,7 @@ public Builder interSwitchLink(@Nullable Output interSwitchLink) { } /** - * @param interSwitchLink Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @param interSwitchLink Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * * @return builder * @@ -1331,8 +1317,7 @@ public Builder speed(String speed) { } /** - * @param stormControl Switch storm control - * Only if `mode`!=`dynamic` + * @param stormControl Switch storm control. Only if `mode`!=`dynamic` * * @return builder * @@ -1343,8 +1328,7 @@ public Builder stormControl(@Nullable Output> authServersTimeout() { } /** - * use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * */ @Import(name="network") private @Nullable Output network; /** - * @return use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @return use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * */ public Optional> network() { @@ -230,8 +228,7 @@ public Builder authServersTimeout(Integer authServersTimeout) { } /** - * @param network use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @param network use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * * @return builder * @@ -242,8 +239,7 @@ public Builder network(@Nullable Output network) { } /** - * @param network use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @param network use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.java index 1166668b..7f0503e1 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateSnmpConfigV3ConfigUsmUserArgs.java @@ -16,16 +16,14 @@ public final class NetworktemplateSnmpConfigV3ConfigUsmUserArgs extends com.pulu public static final NetworktemplateSnmpConfigV3ConfigUsmUserArgs Empty = new NetworktemplateSnmpConfigV3ConfigUsmUserArgs(); /** - * Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * */ @Import(name="authenticationPassword") private @Nullable Output authenticationPassword; /** - * @return Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @return Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * */ public Optional> authenticationPassword() { @@ -48,16 +46,14 @@ public Optional> authenticationType() { } /** - * Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * */ @Import(name="encryptionPassword") private @Nullable Output encryptionPassword; /** - * @return Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @return Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * */ public Optional> encryptionPassword() { @@ -115,8 +111,7 @@ public Builder(NetworktemplateSnmpConfigV3ConfigUsmUserArgs defaults) { } /** - * @param authenticationPassword Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @param authenticationPassword Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * * @return builder * @@ -127,8 +122,7 @@ public Builder authenticationPassword(@Nullable Output authenticationPas } /** - * @param authenticationPassword Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @param authenticationPassword Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * * @return builder * @@ -159,8 +153,7 @@ public Builder authenticationType(String authenticationType) { } /** - * @param encryptionPassword Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @param encryptionPassword Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * * @return builder * @@ -171,8 +164,7 @@ public Builder encryptionPassword(@Nullable Output encryptionPassword) { } /** - * @param encryptionPassword Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @param encryptionPassword Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateState.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateState.java index 0f7cebca..e8f6c434 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateState.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/NetworktemplateState.java @@ -207,7 +207,7 @@ public Optional>> ospfAreas() { } /** - * Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -216,7 +216,7 @@ public Optional>> ospfAreas() { private @Nullable Output> portMirroring; /** - * @return Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -690,7 +690,7 @@ public Builder ospfAreas(Map ospfAreas) { } /** - * @param portMirroring Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + * @param portMirroring Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed * @@ -703,7 +703,7 @@ public Builder portMirroring(@Nullable Output> portMirroring; /** - * @return Property key is the port mirroring instance name - * port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed * */ public Optional>> portMirroring() { @@ -501,8 +499,7 @@ public Builder portConfig(Map> enabled() { } /** - * Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` * */ @Import(name="wxtagIds") private @Nullable Output> wxtagIds; /** - * @return Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * @return Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` * */ public Optional>> wxtagIds() { @@ -118,8 +116,7 @@ public Builder enabled(Boolean enabled) { } /** - * @param wxtagIds Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * @param wxtagIds Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` * * @return builder * @@ -130,8 +127,7 @@ public Builder wxtagIds(@Nullable Output> wxtagIds) { } /** - * @param wxtagIds Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * @param wxtagIds Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/WlanDnsServerRewriteArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/WlanDnsServerRewriteArgs.java index 855429ce..21d6d2ed 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/WlanDnsServerRewriteArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/WlanDnsServerRewriteArgs.java @@ -25,16 +25,14 @@ public Optional> enabled() { } /** - * map between radius_group and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server * */ @Import(name="radiusGroups") private @Nullable Output> radiusGroups; /** - * @return map between radius_group and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * @return map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server * */ public Optional>> radiusGroups() { @@ -76,8 +74,7 @@ public Builder enabled(Boolean enabled) { } /** - * @param radiusGroups map between radius_group and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * @param radiusGroups map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server * * @return builder * @@ -88,8 +85,7 @@ public Builder radiusGroups(@Nullable Output> radiusGroups) { } /** - * @param radiusGroups map between radius_group and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * @param radiusGroups map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/WlanDynamicPskArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/WlanDynamicPskArgs.java index 9a7a6718..ad180da7 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/WlanDynamicPskArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/WlanDynamicPskArgs.java @@ -46,16 +46,14 @@ public Optional> enabled() { } /** - * when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto * */ @Import(name="forceLookup") private @Nullable Output forceLookup; /** - * @return when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * @return when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto * */ public Optional> forceLookup() { @@ -145,8 +143,7 @@ public Builder enabled(Boolean enabled) { } /** - * @param forceLookup when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * @param forceLookup when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto * * @return builder * @@ -157,8 +154,7 @@ public Builder forceLookup(@Nullable Output forceLookup) { } /** - * @param forceLookup when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * @param forceLookup when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/WlanRadsecArgs.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/WlanRadsecArgs.java index 45147353..940eb590 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/WlanRadsecArgs.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/inputs/WlanRadsecArgs.java @@ -41,16 +41,14 @@ public Optional> idleTimeout() { } /** - * To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids * */ @Import(name="mxclusterIds") private @Nullable Output> mxclusterIds; /** - * @return To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * @return To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids * */ public Optional>> mxclusterIds() { @@ -58,16 +56,14 @@ public Optional>> mxclusterIds() { } /** - * default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` * */ @Import(name="proxyHosts") private @Nullable Output> proxyHosts; /** - * @return default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * @return default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` * */ public Optional>> proxyHosts() { @@ -194,8 +190,7 @@ public Builder idleTimeout(Integer idleTimeout) { } /** - * @param mxclusterIds To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * @param mxclusterIds To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids * * @return builder * @@ -206,8 +201,7 @@ public Builder mxclusterIds(@Nullable Output> mxclusterIds) { } /** - * @param mxclusterIds To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * @param mxclusterIds To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids * * @return builder * @@ -217,8 +211,7 @@ public Builder mxclusterIds(List mxclusterIds) { } /** - * @param mxclusterIds To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * @param mxclusterIds To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids * * @return builder * @@ -228,8 +221,7 @@ public Builder mxclusterIds(String... mxclusterIds) { } /** - * @param proxyHosts default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * @param proxyHosts default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` * * @return builder * @@ -240,8 +232,7 @@ public Builder proxyHosts(@Nullable Output> proxyHosts) { } /** - * @param proxyHosts default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * @param proxyHosts default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` * * @return builder * @@ -251,8 +242,7 @@ public Builder proxyHosts(List proxyHosts) { } /** - * @param proxyHosts default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * @param proxyHosts default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` * * @return builder * diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateAclPolicy.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateAclPolicy.java index cf7158e8..9a834407 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateAclPolicy.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateAclPolicy.java @@ -14,23 +14,26 @@ @CustomType public final class NetworktemplateAclPolicy { /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ private @Nullable List actions; private @Nullable String name; /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ private @Nullable List srcTags; private NetworktemplateAclPolicy() {} /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Actions: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ public List actions() { @@ -40,8 +43,9 @@ public Optional name() { return Optional.ofNullable(this.name); } /** - * @return - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * @return ACL Policy Source Tags: + * - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to * */ public List srcTags() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateAclTags.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateAclTags.java index 24ab5faf..a1a39738 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateAclTags.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateAclTags.java @@ -17,9 +17,9 @@ public final class NetworktemplateAclTags { /** * @return required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * */ private @Nullable Integer gbpTag; @@ -49,8 +49,7 @@ public final class NetworktemplateAclTags { */ private @Nullable String radiusGroup; /** - * @return if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @return if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * */ private @Nullable List specs; @@ -80,9 +79,9 @@ public final class NetworktemplateAclTags { private NetworktemplateAclTags() {} /** * @return required if - * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - * - `type`==`gbp_resource` - * - `type`==`static_gbp` (applying gbp tag against matching conditions) + * - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + * - `type`==`gbp_resource` + * - `type`==`static_gbp` (applying gbp tag against matching conditions) * */ public Optional gbpTag() { @@ -120,8 +119,7 @@ public Optional radiusGroup() { return Optional.ofNullable(this.radiusGroup); } /** - * @return if `type`==`resource` or `type`==`gbp_resource` - * empty means unrestricted, i.e. any + * @return if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any * */ public List specs() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateAclTagsSpec.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateAclTagsSpec.java index 535aaaa9..3be560e1 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateAclTagsSpec.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateAclTagsSpec.java @@ -17,7 +17,7 @@ public final class NetworktemplateAclTagsSpec { */ private @Nullable String portRange; /** - * @return `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @return `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * */ private @Nullable String protocol; @@ -31,7 +31,7 @@ public Optional portRange() { return Optional.ofNullable(this.portRange); } /** - * @return `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + * @return `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 * */ public Optional protocol() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateNetworks.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateNetworks.java index b0d2d4d9..2784d42a 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateNetworks.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateNetworks.java @@ -24,8 +24,7 @@ public final class NetworktemplateNetworks { */ private @Nullable String gateway6; /** - * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * */ private @Nullable Boolean isolation; @@ -58,8 +57,7 @@ public Optional gateway6() { return Optional.ofNullable(this.gateway6); } /** - * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - * NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + * @return whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set * */ public Optional isolation() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplatePortUsages.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplatePortUsages.java index 6e834e25..312f6db5 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplatePortUsages.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplatePortUsages.java @@ -22,9 +22,7 @@ public final class NetworktemplatePortUsages { */ private @Nullable Boolean allNetworks; /** - * @return 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 allow_dhcpd is a tri_state. - * 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. + * @return 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 allow_dhcpd is a tri_state. 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. * */ private @Nullable Boolean allowDhcpd; @@ -84,8 +82,7 @@ public final class NetworktemplatePortUsages { */ private @Nullable String guestNetwork; /** - * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ private @Nullable Boolean interSwitchLink; @@ -175,8 +172,7 @@ public final class NetworktemplatePortUsages { */ private @Nullable String speed; /** - * @return Switch storm control - * Only if `mode`!=`dynamic` + * @return Switch storm control. Only if `mode`!=`dynamic` * */ private @Nullable NetworktemplatePortUsagesStormControl stormControl; @@ -212,9 +208,7 @@ public Optional allNetworks() { return Optional.ofNullable(this.allNetworks); } /** - * @return 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 allow_dhcpd is a tri_state. - * 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. + * @return 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 allow_dhcpd is a tri_state. 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. * */ public Optional allowDhcpd() { @@ -298,8 +292,7 @@ public Optional guestNetwork() { return Optional.ofNullable(this.guestNetwork); } /** - * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - * NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + * @return Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together * */ public Optional interSwitchLink() { @@ -425,8 +418,7 @@ public Optional speed() { return Optional.ofNullable(this.speed); } /** - * @return Switch storm control - * Only if `mode`!=`dynamic` + * @return Switch storm control. Only if `mode`!=`dynamic` * */ public Optional stormControl() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateRadiusConfig.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateRadiusConfig.java index 6604af95..3d238c89 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateRadiusConfig.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateRadiusConfig.java @@ -33,8 +33,7 @@ public final class NetworktemplateRadiusConfig { */ private @Nullable Integer authServersTimeout; /** - * @return use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @return use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * */ private @Nullable String network; @@ -73,8 +72,7 @@ public Optional authServersTimeout() { return Optional.ofNullable(this.authServersTimeout); } /** - * @return use `network`or `source_ip` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * @return use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip * */ public Optional network() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.java index d6775020..5a1bdee3 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateSnmpConfigV3ConfigUsmUser.java @@ -12,8 +12,7 @@ @CustomType public final class NetworktemplateSnmpConfigV3ConfigUsmUser { /** - * @return Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @return Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * */ private @Nullable String authenticationPassword; @@ -23,8 +22,7 @@ public final class NetworktemplateSnmpConfigV3ConfigUsmUser { */ private @Nullable String authenticationType; /** - * @return Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @return Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * */ private @Nullable String encryptionPassword; @@ -37,8 +35,7 @@ public final class NetworktemplateSnmpConfigV3ConfigUsmUser { private NetworktemplateSnmpConfigV3ConfigUsmUser() {} /** - * @return Not required if `authentication_type`==`authentication_none` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * @return Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. * */ public Optional authenticationPassword() { @@ -52,8 +49,7 @@ public Optional authenticationType() { return Optional.ofNullable(this.authenticationType); } /** - * @return Not required if `encryption_type`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * @return Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters * */ public Optional encryptionPassword() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateSwitchMatchingRule.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateSwitchMatchingRule.java index 395fbe3e..53c952ab 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateSwitchMatchingRule.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/NetworktemplateSwitchMatchingRule.java @@ -80,8 +80,7 @@ public final class NetworktemplateSwitchMatchingRule { */ private @Nullable Map portConfig; /** - * @return Property key is the port mirroring instance name - * port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed * */ private @Nullable Map portMirroring; @@ -171,8 +170,7 @@ public Map portConfig() { return this.portConfig == null ? Map.of() : this.portConfig; } /** - * @return Property key is the port mirroring instance name - * port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + * @return Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed * */ public Map portMirroring() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanAppLimit.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanAppLimit.java index 4e88c6ba..4e0f1a2e 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanAppLimit.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanAppLimit.java @@ -22,8 +22,7 @@ public final class WlanAppLimit { private @Nullable Map apps; private @Nullable Boolean enabled; /** - * @return Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * @return Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` * */ private @Nullable Map wxtagIds; @@ -41,8 +40,7 @@ public Optional enabled() { return Optional.ofNullable(this.enabled); } /** - * @return Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * @return Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` * */ public Map wxtagIds() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanDnsServerRewrite.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanDnsServerRewrite.java index 5a0a3bb0..77385aee 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanDnsServerRewrite.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanDnsServerRewrite.java @@ -15,8 +15,7 @@ public final class WlanDnsServerRewrite { private @Nullable Boolean enabled; /** - * @return map between radius_group and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * @return map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server * */ private @Nullable Map radiusGroups; @@ -26,8 +25,7 @@ public Optional enabled() { return Optional.ofNullable(this.enabled); } /** - * @return map between radius_group and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * @return map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server * */ public Map radiusGroups() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanDynamicPsk.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanDynamicPsk.java index ffd16bf7..93e0f4a1 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanDynamicPsk.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanDynamicPsk.java @@ -20,8 +20,7 @@ public final class WlanDynamicPsk { private @Nullable String defaultVlanId; private @Nullable Boolean enabled; /** - * @return when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * @return when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto * */ private @Nullable Boolean forceLookup; @@ -46,8 +45,7 @@ public Optional enabled() { return Optional.ofNullable(this.enabled); } /** - * @return when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * @return when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto * */ public Optional forceLookup() { diff --git a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanRadsec.java b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanRadsec.java index ffdb3093..0fe4e8f5 100644 --- a/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanRadsec.java +++ b/sdk/java/src/main/java/com/pulumi/junipermist/site/outputs/WlanRadsec.java @@ -19,14 +19,12 @@ public final class WlanRadsec { private @Nullable Boolean enabled; private @Nullable Integer idleTimeout; /** - * @return To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * @return To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids * */ private @Nullable List mxclusterIds; /** - * @return default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * @return default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` * */ private @Nullable List proxyHosts; @@ -62,16 +60,14 @@ public Optional idleTimeout() { return Optional.ofNullable(this.idleTimeout); } /** - * @return To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * @return To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids * */ public List mxclusterIds() { return this.mxclusterIds == null ? List.of() : this.mxclusterIds; } /** - * @return default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * @return default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` * */ public List proxyHosts() { diff --git a/sdk/nodejs/config/vars.ts b/sdk/nodejs/config/vars.ts index 85ca91e7..db6b8afd 100644 --- a/sdk/nodejs/config/vars.ts +++ b/sdk/nodejs/config/vars.ts @@ -7,6 +7,17 @@ import * as utilities from "../utilities"; declare var exports: any; const __config = new pulumi.Config("junipermist"); +/** + * Flag to enable debugging API calls. Default is false. + */ +export declare const apiDebug: boolean | undefined; +Object.defineProperty(exports, "apiDebug", { + get() { + return __config.getObject("apiDebug"); + }, + enumerable: true, +}); + /** * Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 * results in infinite timeout. diff --git a/sdk/nodejs/device/gateway.ts b/sdk/nodejs/device/gateway.ts index 6c9958c3..e2ea753e 100644 --- a/sdk/nodejs/device/gateway.ts +++ b/sdk/nodejs/device/gateway.ts @@ -76,7 +76,7 @@ export class Gateway extends pulumi.CustomResource { } /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done */ public readonly additionalConfigCmds!: pulumi.Output; public readonly bgpConfig!: pulumi.Output<{[key: string]: outputs.device.GatewayBgpConfig} | undefined>; @@ -294,7 +294,7 @@ export class Gateway extends pulumi.CustomResource { */ export interface GatewayState { /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done */ additionalConfigCmds?: pulumi.Input[]>; bgpConfig?: pulumi.Input<{[key: string]: pulumi.Input}>; @@ -406,7 +406,7 @@ export interface GatewayState { */ export interface GatewayArgs { /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done */ additionalConfigCmds?: pulumi.Input[]>; bgpConfig?: pulumi.Input<{[key: string]: pulumi.Input}>; diff --git a/sdk/nodejs/device/switch.ts b/sdk/nodejs/device/switch.ts index 5c6c17d8..927ff760 100644 --- a/sdk/nodejs/device/switch.ts +++ b/sdk/nodejs/device/switch.ts @@ -56,7 +56,7 @@ export class Switch extends pulumi.CustomResource { */ public readonly aclTags!: pulumi.Output<{[key: string]: outputs.device.SwitchAclTags} | undefined>; /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done */ public readonly additionalConfigCmds!: pulumi.Output; public readonly deviceId!: pulumi.Output; @@ -74,10 +74,6 @@ export class Switch extends pulumi.CustomResource { * Global dns settings. To keep compatibility, dns settings in `ipConfig` and `oobIpConfig` will overwrite this setting */ public readonly dnsSuffixes!: pulumi.Output; - /** - * EVPN Junos settings - */ - public /*out*/ readonly evpnConfig!: pulumi.Output; public readonly extraRoutes!: pulumi.Output<{[key: string]: outputs.device.SwitchExtraRoutes} | undefined>; /** * Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64") @@ -126,8 +122,8 @@ export class Switch extends pulumi.CustomResource { */ public readonly ntpServers!: pulumi.Output; /** - * - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - * set separately (if desired): key parameter = `re1` + * Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + * re1 mgmt IP has to be set separately (if desired): key parameter = `re1` */ public readonly oobIpConfig!: pulumi.Output; public /*out*/ readonly orgId!: pulumi.Output; @@ -144,7 +140,7 @@ export class Switch extends pulumi.CustomResource { */ public readonly portConfig!: pulumi.Output<{[key: string]: outputs.device.SwitchPortConfig} | undefined>; /** - * Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed */ @@ -230,7 +226,6 @@ export class Switch extends pulumi.CustomResource { resourceInputs["disableAutoConfig"] = state ? state.disableAutoConfig : undefined; resourceInputs["dnsServers"] = state ? state.dnsServers : undefined; resourceInputs["dnsSuffixes"] = state ? state.dnsSuffixes : undefined; - resourceInputs["evpnConfig"] = state ? state.evpnConfig : undefined; resourceInputs["extraRoutes"] = state ? state.extraRoutes : undefined; resourceInputs["extraRoutes6"] = state ? state.extraRoutes6 : undefined; resourceInputs["image1Url"] = state ? state.image1Url : undefined; @@ -322,7 +317,6 @@ export class Switch extends pulumi.CustomResource { resourceInputs["vrrpConfig"] = args ? args.vrrpConfig : undefined; resourceInputs["x"] = args ? args.x : undefined; resourceInputs["y"] = args ? args.y : undefined; - resourceInputs["evpnConfig"] = undefined /*out*/; resourceInputs["image1Url"] = undefined /*out*/; resourceInputs["image2Url"] = undefined /*out*/; resourceInputs["image3Url"] = undefined /*out*/; @@ -347,7 +341,7 @@ export interface SwitchState { */ aclTags?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done */ additionalConfigCmds?: pulumi.Input[]>; deviceId?: pulumi.Input; @@ -365,10 +359,6 @@ export interface SwitchState { * Global dns settings. To keep compatibility, dns settings in `ipConfig` and `oobIpConfig` will overwrite this setting */ dnsSuffixes?: pulumi.Input[]>; - /** - * EVPN Junos settings - */ - evpnConfig?: pulumi.Input; extraRoutes?: pulumi.Input<{[key: string]: pulumi.Input}>; /** * Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64") @@ -417,8 +407,8 @@ export interface SwitchState { */ ntpServers?: pulumi.Input[]>; /** - * - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - * set separately (if desired): key parameter = `re1` + * Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + * re1 mgmt IP has to be set separately (if desired): key parameter = `re1` */ oobIpConfig?: pulumi.Input; orgId?: pulumi.Input; @@ -435,7 +425,7 @@ export interface SwitchState { */ portConfig?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed */ @@ -510,7 +500,7 @@ export interface SwitchArgs { */ aclTags?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done */ additionalConfigCmds?: pulumi.Input[]>; deviceId: pulumi.Input; @@ -565,8 +555,8 @@ export interface SwitchArgs { */ ntpServers?: pulumi.Input[]>; /** - * - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - * set separately (if desired): key parameter = `re1` + * Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + * re1 mgmt IP has to be set separately (if desired): key parameter = `re1` */ oobIpConfig?: pulumi.Input; /** @@ -582,7 +572,7 @@ export interface SwitchArgs { */ portConfig?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed */ diff --git a/sdk/nodejs/org/deviceprofileGateway.ts b/sdk/nodejs/org/deviceprofileGateway.ts index 25886598..d40655cd 100644 --- a/sdk/nodejs/org/deviceprofileGateway.ts +++ b/sdk/nodejs/org/deviceprofileGateway.ts @@ -51,7 +51,7 @@ export class DeviceprofileGateway extends pulumi.CustomResource { } /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done */ public readonly additionalConfigCmds!: pulumi.Output; public readonly bgpConfig!: pulumi.Output<{[key: string]: outputs.org.DeviceprofileGatewayBgpConfig} | undefined>; @@ -206,7 +206,7 @@ export class DeviceprofileGateway extends pulumi.CustomResource { */ export interface DeviceprofileGatewayState { /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done */ additionalConfigCmds?: pulumi.Input[]>; bgpConfig?: pulumi.Input<{[key: string]: pulumi.Input}>; @@ -286,7 +286,7 @@ export interface DeviceprofileGatewayState { */ export interface DeviceprofileGatewayArgs { /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done */ additionalConfigCmds?: pulumi.Input[]>; bgpConfig?: pulumi.Input<{[key: string]: pulumi.Input}>; diff --git a/sdk/nodejs/org/gatewaytemplate.ts b/sdk/nodejs/org/gatewaytemplate.ts index 47767c56..b7ac0566 100644 --- a/sdk/nodejs/org/gatewaytemplate.ts +++ b/sdk/nodejs/org/gatewaytemplate.ts @@ -49,7 +49,7 @@ export class Gatewaytemplate extends pulumi.CustomResource { } /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done */ public readonly additionalConfigCmds!: pulumi.Output; public readonly bgpConfig!: pulumi.Output<{[key: string]: outputs.org.GatewaytemplateBgpConfig} | undefined>; @@ -96,7 +96,8 @@ export class Gatewaytemplate extends pulumi.CustomResource { */ public readonly pathPreferences!: pulumi.Output<{[key: string]: outputs.org.GatewaytemplatePathPreferences} | undefined>; /** - * Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + * Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + * "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). */ public readonly portConfig!: pulumi.Output<{[key: string]: outputs.org.GatewaytemplatePortConfig} | undefined>; /** @@ -204,7 +205,7 @@ export class Gatewaytemplate extends pulumi.CustomResource { */ export interface GatewaytemplateState { /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done */ additionalConfigCmds?: pulumi.Input[]>; bgpConfig?: pulumi.Input<{[key: string]: pulumi.Input}>; @@ -251,7 +252,8 @@ export interface GatewaytemplateState { */ pathPreferences?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + * Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + * "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). */ portConfig?: pulumi.Input<{[key: string]: pulumi.Input}>; /** @@ -284,7 +286,7 @@ export interface GatewaytemplateState { */ export interface GatewaytemplateArgs { /** - * additional CLI commands to append to the generated Junos config **Note**: no check is done + * additional CLI commands to append to the generated Junos config. **Note**: no check is done */ additionalConfigCmds?: pulumi.Input[]>; bgpConfig?: pulumi.Input<{[key: string]: pulumi.Input}>; @@ -331,7 +333,8 @@ export interface GatewaytemplateArgs { */ pathPreferences?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + * Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + * "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). */ portConfig?: pulumi.Input<{[key: string]: pulumi.Input}>; /** diff --git a/sdk/nodejs/org/nacidp.ts b/sdk/nodejs/org/nacidp.ts index 11bc61f3..2ac9444d 100644 --- a/sdk/nodejs/org/nacidp.ts +++ b/sdk/nodejs/org/nacidp.ts @@ -178,6 +178,10 @@ export class Nacidp extends pulumi.CustomResource { * if `idpType`==`oauth` */ public readonly oauthDiscoveryUrl!: pulumi.Output; + /** + * enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + */ + public readonly oauthPingIdentityRegion!: pulumi.Output; /** * if `idpType`==`oauth`, ropc = Resource Owner Password Credentials */ @@ -195,6 +199,14 @@ export class Nacidp extends pulumi.CustomResource { */ public readonly oauthType!: pulumi.Output; public readonly orgId!: pulumi.Output; + /** + * if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + */ + public readonly scimEnabled!: pulumi.Output; + /** + * if `idpType`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scimEnabled`==`true`, empty string when `scimEnabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + */ + public readonly scimSecretToken!: pulumi.Output; /** * Create a Nacidp resource with the given unique name, arguments, and options. @@ -228,11 +240,14 @@ export class Nacidp extends pulumi.CustomResource { resourceInputs["oauthCcClientId"] = state ? state.oauthCcClientId : undefined; resourceInputs["oauthCcClientSecret"] = state ? state.oauthCcClientSecret : undefined; resourceInputs["oauthDiscoveryUrl"] = state ? state.oauthDiscoveryUrl : undefined; + resourceInputs["oauthPingIdentityRegion"] = state ? state.oauthPingIdentityRegion : undefined; resourceInputs["oauthRopcClientId"] = state ? state.oauthRopcClientId : undefined; resourceInputs["oauthRopcClientSecret"] = state ? state.oauthRopcClientSecret : undefined; resourceInputs["oauthTenantId"] = state ? state.oauthTenantId : undefined; resourceInputs["oauthType"] = state ? state.oauthType : undefined; resourceInputs["orgId"] = state ? state.orgId : undefined; + resourceInputs["scimEnabled"] = state ? state.scimEnabled : undefined; + resourceInputs["scimSecretToken"] = state ? state.scimSecretToken : undefined; } else { const args = argsOrState as NacidpArgs | undefined; if ((!args || args.idpType === undefined) && !opts.urn) { @@ -260,11 +275,14 @@ export class Nacidp extends pulumi.CustomResource { resourceInputs["oauthCcClientId"] = args ? args.oauthCcClientId : undefined; resourceInputs["oauthCcClientSecret"] = args ? args.oauthCcClientSecret : undefined; resourceInputs["oauthDiscoveryUrl"] = args ? args.oauthDiscoveryUrl : undefined; + resourceInputs["oauthPingIdentityRegion"] = args ? args.oauthPingIdentityRegion : undefined; resourceInputs["oauthRopcClientId"] = args ? args.oauthRopcClientId : undefined; resourceInputs["oauthRopcClientSecret"] = args ? args.oauthRopcClientSecret : undefined; resourceInputs["oauthTenantId"] = args ? args.oauthTenantId : undefined; resourceInputs["oauthType"] = args ? args.oauthType : undefined; resourceInputs["orgId"] = args ? args.orgId : undefined; + resourceInputs["scimEnabled"] = args ? args.scimEnabled : undefined; + resourceInputs["scimSecretToken"] = args ? args.scimSecretToken : undefined; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); super(Nacidp.__pulumiType, name, resourceInputs, opts); @@ -351,6 +369,10 @@ export interface NacidpState { * if `idpType`==`oauth` */ oauthDiscoveryUrl?: pulumi.Input; + /** + * enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + */ + oauthPingIdentityRegion?: pulumi.Input; /** * if `idpType`==`oauth`, ropc = Resource Owner Password Credentials */ @@ -368,6 +390,14 @@ export interface NacidpState { */ oauthType?: pulumi.Input; orgId?: pulumi.Input; + /** + * if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + */ + scimEnabled?: pulumi.Input; + /** + * if `idpType`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scimEnabled`==`true`, empty string when `scimEnabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + */ + scimSecretToken?: pulumi.Input; } /** @@ -450,6 +480,10 @@ export interface NacidpArgs { * if `idpType`==`oauth` */ oauthDiscoveryUrl?: pulumi.Input; + /** + * enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + */ + oauthPingIdentityRegion?: pulumi.Input; /** * if `idpType`==`oauth`, ropc = Resource Owner Password Credentials */ @@ -467,4 +501,12 @@ export interface NacidpArgs { */ oauthType?: pulumi.Input; orgId: pulumi.Input; + /** + * if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + */ + scimEnabled?: pulumi.Input; + /** + * if `idpType`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scimEnabled`==`true`, empty string when `scimEnabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + */ + scimSecretToken?: pulumi.Input; } diff --git a/sdk/nodejs/org/network.ts b/sdk/nodejs/org/network.ts index 796892f2..7b8a81ff 100644 --- a/sdk/nodejs/org/network.ts +++ b/sdk/nodejs/org/network.ts @@ -77,6 +77,10 @@ export class Network extends pulumi.CustomResource { * whether to allow clients in the network to talk to each other */ public readonly isolation!: pulumi.Output; + /** + * whether to enable multicast support (only PIM-sparse mode is supported) + */ + public readonly multicast!: pulumi.Output; public readonly name!: pulumi.Output; public readonly orgId!: pulumi.Output; /** @@ -85,6 +89,9 @@ export class Network extends pulumi.CustomResource { public readonly routedForNetworks!: pulumi.Output; public readonly subnet!: pulumi.Output; public readonly subnet6!: pulumi.Output; + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + */ public readonly tenants!: pulumi.Output<{[key: string]: outputs.org.NetworkTenants} | undefined>; public readonly vlanId!: pulumi.Output; /** @@ -111,6 +118,7 @@ export class Network extends pulumi.CustomResource { resourceInputs["internalAccess"] = state ? state.internalAccess : undefined; resourceInputs["internetAccess"] = state ? state.internetAccess : undefined; resourceInputs["isolation"] = state ? state.isolation : undefined; + resourceInputs["multicast"] = state ? state.multicast : undefined; resourceInputs["name"] = state ? state.name : undefined; resourceInputs["orgId"] = state ? state.orgId : undefined; resourceInputs["routedForNetworks"] = state ? state.routedForNetworks : undefined; @@ -133,6 +141,7 @@ export class Network extends pulumi.CustomResource { resourceInputs["internalAccess"] = args ? args.internalAccess : undefined; resourceInputs["internetAccess"] = args ? args.internetAccess : undefined; resourceInputs["isolation"] = args ? args.isolation : undefined; + resourceInputs["multicast"] = args ? args.multicast : undefined; resourceInputs["name"] = args ? args.name : undefined; resourceInputs["orgId"] = args ? args.orgId : undefined; resourceInputs["routedForNetworks"] = args ? args.routedForNetworks : undefined; @@ -166,6 +175,10 @@ export interface NetworkState { * whether to allow clients in the network to talk to each other */ isolation?: pulumi.Input; + /** + * whether to enable multicast support (only PIM-sparse mode is supported) + */ + multicast?: pulumi.Input; name?: pulumi.Input; orgId?: pulumi.Input; /** @@ -174,6 +187,9 @@ export interface NetworkState { routedForNetworks?: pulumi.Input[]>; subnet?: pulumi.Input; subnet6?: pulumi.Input; + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + */ tenants?: pulumi.Input<{[key: string]: pulumi.Input}>; vlanId?: pulumi.Input; /** @@ -201,6 +217,10 @@ export interface NetworkArgs { * whether to allow clients in the network to talk to each other */ isolation?: pulumi.Input; + /** + * whether to enable multicast support (only PIM-sparse mode is supported) + */ + multicast?: pulumi.Input; name?: pulumi.Input; orgId: pulumi.Input; /** @@ -209,6 +229,9 @@ export interface NetworkArgs { routedForNetworks?: pulumi.Input[]>; subnet: pulumi.Input; subnet6?: pulumi.Input; + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + */ tenants?: pulumi.Input<{[key: string]: pulumi.Input}>; vlanId?: pulumi.Input; /** diff --git a/sdk/nodejs/org/networktemplate.ts b/sdk/nodejs/org/networktemplate.ts index 90ef4601..858bfc16 100644 --- a/sdk/nodejs/org/networktemplate.ts +++ b/sdk/nodejs/org/networktemplate.ts @@ -90,7 +90,7 @@ export class Networktemplate extends pulumi.CustomResource { */ public readonly ospfAreas!: pulumi.Output<{[key: string]: outputs.org.NetworktemplateOspfAreas} | undefined>; /** - * Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed */ @@ -241,7 +241,7 @@ export interface NetworktemplateState { */ ospfAreas?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed */ @@ -321,7 +321,7 @@ export interface NetworktemplateArgs { */ ospfAreas?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed */ diff --git a/sdk/nodejs/org/sso.ts b/sdk/nodejs/org/sso.ts index d0ce7c1b..6f742fe9 100644 --- a/sdk/nodejs/org/sso.ts +++ b/sdk/nodejs/org/sso.ts @@ -114,26 +114,17 @@ export class Sso extends pulumi.CustomResource { public readonly nameidFormat!: pulumi.Output; public readonly orgId!: pulumi.Output; /** - * custom role attribute parsing scheme\n\nSupported Role Parsing - * Schemes\n
NameScheme
cn
  • The expected role attribute format in - * SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - * (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - * is “cn”
+ * custom role attribute parsing scheme. Supported Role Parsing Schemes + *
NameScheme
`cn`
  • The expected role attribute format in SAML + * Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + * entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + * “cn”
*/ public readonly roleAttrExtraction!: pulumi.Output; /** * name of the attribute in SAML Assertion to extract role from. Default: `Role` */ public readonly roleAttrFrom!: pulumi.Output; - /** - * if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - */ - public readonly scimEnabled!: pulumi.Output; - /** - * if `idpType`==`oauth`, scimSecretToken (generated by caller, crypto-random) is used as the Bearer token in the - * Authorization header of SCIM provisioning requests by the IDP - */ - public readonly scimSecretToken!: pulumi.Output; /** * Create a Sso resource with the given unique name, arguments, and options. @@ -161,8 +152,6 @@ export class Sso extends pulumi.CustomResource { resourceInputs["orgId"] = state ? state.orgId : undefined; resourceInputs["roleAttrExtraction"] = state ? state.roleAttrExtraction : undefined; resourceInputs["roleAttrFrom"] = state ? state.roleAttrFrom : undefined; - resourceInputs["scimEnabled"] = state ? state.scimEnabled : undefined; - resourceInputs["scimSecretToken"] = state ? state.scimSecretToken : undefined; } else { const args = argsOrState as SsoArgs | undefined; if ((!args || args.idpCert === undefined) && !opts.urn) { @@ -192,8 +181,6 @@ export class Sso extends pulumi.CustomResource { resourceInputs["orgId"] = args ? args.orgId : undefined; resourceInputs["roleAttrExtraction"] = args ? args.roleAttrExtraction : undefined; resourceInputs["roleAttrFrom"] = args ? args.roleAttrFrom : undefined; - resourceInputs["scimEnabled"] = args ? args.scimEnabled : undefined; - resourceInputs["scimSecretToken"] = args ? args.scimSecretToken : undefined; resourceInputs["domain"] = undefined /*out*/; } opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts); @@ -251,26 +238,17 @@ export interface SsoState { nameidFormat?: pulumi.Input; orgId?: pulumi.Input; /** - * custom role attribute parsing scheme\n\nSupported Role Parsing - * Schemes\n
NameScheme
cn
  • The expected role attribute format in - * SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - * (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - * is “cn”
+ * custom role attribute parsing scheme. Supported Role Parsing Schemes + *
NameScheme
`cn`
  • The expected role attribute format in SAML + * Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + * entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + * “cn”
*/ roleAttrExtraction?: pulumi.Input; /** * name of the attribute in SAML Assertion to extract role from. Default: `Role` */ roleAttrFrom?: pulumi.Input; - /** - * if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - */ - scimEnabled?: pulumi.Input; - /** - * if `idpType`==`oauth`, scimSecretToken (generated by caller, crypto-random) is used as the Bearer token in the - * Authorization header of SCIM provisioning requests by the IDP - */ - scimSecretToken?: pulumi.Input; } /** @@ -317,24 +295,15 @@ export interface SsoArgs { nameidFormat?: pulumi.Input; orgId: pulumi.Input; /** - * custom role attribute parsing scheme\n\nSupported Role Parsing - * Schemes\n
NameScheme
cn
  • The expected role attribute format in - * SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - * (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - * is “cn”
+ * custom role attribute parsing scheme. Supported Role Parsing Schemes + *
NameScheme
`cn`
  • The expected role attribute format in SAML + * Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + * entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + * “cn”
*/ roleAttrExtraction?: pulumi.Input; /** * name of the attribute in SAML Assertion to extract role from. Default: `Role` */ roleAttrFrom?: pulumi.Input; - /** - * if `idpType`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - */ - scimEnabled?: pulumi.Input; - /** - * if `idpType`==`oauth`, scimSecretToken (generated by caller, crypto-random) is used as the Bearer token in the - * Authorization header of SCIM provisioning requests by the IDP - */ - scimSecretToken?: pulumi.Input; } diff --git a/sdk/nodejs/provider.ts b/sdk/nodejs/provider.ts index d1888391..a1ee088b 100644 --- a/sdk/nodejs/provider.ts +++ b/sdk/nodejs/provider.ts @@ -59,6 +59,7 @@ export class Provider extends pulumi.ProviderResource { let resourceInputs: pulumi.Inputs = {}; opts = opts || {}; { + resourceInputs["apiDebug"] = pulumi.output(args ? args.apiDebug : undefined).apply(JSON.stringify); resourceInputs["apiTimeout"] = pulumi.output(args ? args.apiTimeout : undefined).apply(JSON.stringify); resourceInputs["apitoken"] = args?.apitoken ? pulumi.secret(args.apitoken) : undefined; resourceInputs["host"] = args ? args.host : undefined; @@ -77,6 +78,10 @@ export class Provider extends pulumi.ProviderResource { * The set of arguments for constructing a Provider resource. */ export interface ProviderArgs { + /** + * Flag to enable debugging API calls. Default is false. + */ + apiDebug?: pulumi.Input; /** * Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 * results in infinite timeout. diff --git a/sdk/nodejs/site/networktemplate.ts b/sdk/nodejs/site/networktemplate.ts index 99bd9dbc..b2df3c9b 100644 --- a/sdk/nodejs/site/networktemplate.ts +++ b/sdk/nodejs/site/networktemplate.ts @@ -96,7 +96,7 @@ export class Networktemplate extends pulumi.CustomResource { */ public readonly ospfAreas!: pulumi.Output<{[key: string]: outputs.site.NetworktemplateOspfAreas} | undefined>; /** - * Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed */ @@ -253,7 +253,7 @@ export interface NetworktemplateState { */ ospfAreas?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed */ @@ -339,7 +339,7 @@ export interface NetworktemplateArgs { */ ospfAreas?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * Property key is the port mirroring instance name portMirroring can be added under device/site settings. It takes + * Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes * interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A * maximum 4 port mirrorings is allowed */ diff --git a/sdk/nodejs/types/input.ts b/sdk/nodejs/types/input.ts index 24f70c5d..d4624da7 100644 --- a/sdk/nodejs/types/input.ts +++ b/sdk/nodejs/types/input.ts @@ -541,8 +541,7 @@ export namespace device { */ exportPolicy?: pulumi.Input; /** - * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this */ extendedV4Nexthop?: pulumi.Input; /** @@ -792,6 +791,9 @@ export namespace device { routedForNetworks?: pulumi.Input[]>; subnet: pulumi.Input; subnet6?: pulumi.Input; + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + */ tenants?: pulumi.Input<{[key: string]: pulumi.Input}>; vlanId?: pulumi.Input; /** @@ -807,7 +809,7 @@ export namespace device { export interface GatewayNetworkInternetAccess { createSimpleServicePolicy?: pulumi.Input; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ destinationNat?: pulumi.Input<{[key: string]: pulumi.Input}>; enabled?: pulumi.Input; @@ -816,22 +818,35 @@ export namespace device { */ restricted?: pulumi.Input; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat?: pulumi.Input<{[key: string]: pulumi.Input}>; } export interface GatewayNetworkInternetAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: pulumi.Input; name?: pulumi.Input; - port?: pulumi.Input; + /** + * The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + */ + port?: pulumi.Input; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + */ + wanName?: pulumi.Input; } export interface GatewayNetworkInternetAccessStaticNat { - internalIp?: pulumi.Input; - name?: pulumi.Input; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + */ + internalIp: pulumi.Input; + name: pulumi.Input; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") */ wanName?: pulumi.Input; } @@ -869,7 +884,7 @@ export namespace device { */ allowPing?: pulumi.Input; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ destinationNat?: pulumi.Input<{[key: string]: pulumi.Input}>; /** @@ -885,13 +900,11 @@ export namespace device { */ noReadvertiseToLanOspf?: pulumi.Input; /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes */ noReadvertiseToOverlay?: pulumi.Input; /** - * by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs */ otherVrfs?: pulumi.Input[]>; /** @@ -903,12 +916,11 @@ export namespace device { */ sourceNat?: pulumi.Input; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes */ summarizedSubnet?: pulumi.Input; /** @@ -922,9 +934,12 @@ export namespace device { } export interface GatewayNetworkVpnAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: pulumi.Input; name?: pulumi.Input; - port?: pulumi.Input; + port?: pulumi.Input; } export interface GatewayNetworkVpnAccessSourceNat { @@ -932,12 +947,11 @@ export namespace device { } export interface GatewayNetworkVpnAccessStaticNat { - internalIp?: pulumi.Input; - name?: pulumi.Input; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") */ - wanName?: pulumi.Input; + internalIp: pulumi.Input; + name: pulumi.Input; } export interface GatewayOobIpConfig { @@ -1053,9 +1067,7 @@ export namespace device { */ aeIdx?: pulumi.Input; /** - * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only */ aeLacpForceUp?: pulumi.Input; aggregated?: pulumi.Input; @@ -1063,6 +1075,9 @@ export namespace device { * if want to generate port up/down alarm, set it to true */ critical?: pulumi.Input; + /** + * Interface Description. Can be a variable (i.e. "{{myvar}}") + */ description?: pulumi.Input; disableAutoneg?: pulumi.Input; /** @@ -1074,13 +1089,11 @@ export namespace device { */ dslType?: pulumi.Input; /** - * if `wanType`==`dsl` - * 16 bit int + * if `wanType`==`dsl`, 16 bit int */ dslVci?: pulumi.Input; /** - * if `wanType`==`dsl` - * 8 bit int + * if `wanType`==`dsl`, 8 bit int */ dslVpi?: pulumi.Input; /** @@ -1114,7 +1127,7 @@ export namespace device { */ name?: pulumi.Input; /** - * if `usage`==`lan` + * if `usage`==`lan`, name of the `junipermist.org.Network` resource */ networks?: pulumi.Input[]>; /** @@ -1123,7 +1136,7 @@ export namespace device { outerVlanId?: pulumi.Input; poeDisabled?: pulumi.Input; /** - * if `usage`==`lan` + * Only for SRX and if `usage`==`lan`, the Untagged VLAN Network */ portNetwork?: pulumi.Input; /** @@ -1160,36 +1173,37 @@ export namespace device { * port usage name. enum: `haControl`, `haData`, `lan`, `wan` */ usage: pulumi.Input; - /** - * if WAN interface is on a VLAN - */ - vlanId?: pulumi.Input; + vlanId?: pulumi.Input; /** * Property key is the VPN name */ vpnPaths?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * when `wanType`==`broadband`. enum: `default`, `max`, `recommended` + * Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` */ wanArpPolicer?: pulumi.Input; /** - * optional, if spoke should reach this port by a different IP + * Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP */ wanExtIp?: pulumi.Input; /** - * Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") */ wanExtraRoutes?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * if `usage`==`wan` + * Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + */ + wanNetworks?: pulumi.Input[]>; + /** + * Only if `usage`==`wan` */ wanProbeOverride?: pulumi.Input; /** - * optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip */ wanSourceNat?: pulumi.Input; /** - * if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` */ wanType?: pulumi.Input; } @@ -1204,12 +1218,15 @@ export namespace device { */ dnsSuffixes?: pulumi.Input[]>; /** - * except for out-of_band interface (vme/em0/fxp0) + * except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") */ gateway?: pulumi.Input; + /** + * Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + */ ip?: pulumi.Input; /** - * used only if `subnet` is not specified in `networks` + * used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") */ netmask?: pulumi.Input; /** @@ -1236,11 +1253,14 @@ export namespace device { export interface GatewayPortConfigTrafficShaping { /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 */ classPercentages?: pulumi.Input[]>; enabled?: pulumi.Input; + /** + * Interface Transmit Cap in kbps + */ + maxTxKbps?: pulumi.Input; } export interface GatewayPortConfigVpnPaths { @@ -1269,11 +1289,14 @@ export namespace device { export interface GatewayPortConfigVpnPathsTrafficShaping { /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 */ classPercentages?: pulumi.Input[]>; enabled?: pulumi.Input; + /** + * Interface Transmit Cap in kbps + */ + maxTxKbps?: pulumi.Input; } export interface GatewayPortConfigWanExtraRoutes { @@ -1336,6 +1359,10 @@ export namespace device { * for SSR, hub decides how VRF routes are leaked on spoke */ addTargetVrfs?: pulumi.Input[]>; + /** + * route aggregation + */ + aggregates?: pulumi.Input[]>; /** * when used as export policy, optional */ @@ -1381,8 +1408,7 @@ export namespace device { vpnNeighborMacs?: pulumi.Input[]>; vpnPathSla?: pulumi.Input; /** - * overlay-facing criteria (used for bgpConfig where via=vpn) - * ordered- + * overlay-facing criteria (used for bgpConfig where via=vpn). ordered- */ vpnPaths?: pulumi.Input[]>; } @@ -1390,8 +1416,7 @@ export namespace device { export interface GatewayRoutingPoliciesTermMatchingRouteExists { route?: pulumi.Input; /** - * name of the vrf instance - * it can also be the name of the VPN or wan if they + * name of the vrf instance, it can also be the name of the VPN or wan if they */ vrfName?: pulumi.Input; } @@ -1422,8 +1447,7 @@ export namespace device { */ name?: pulumi.Input; /** - * by default, we derive all paths available and use them - * optionally, you can customize by using `pathPreference` + * by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` */ pathPreference?: pulumi.Input; /** @@ -1470,71 +1494,82 @@ export namespace device { export interface GatewayTunnelConfigs { autoProvision?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 */ ikeLifetime?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` */ ikeMode?: pulumi.Input; /** - * if `provider`== `custom-ipsec` + * if `provider`==`custom-ipsec` */ ikeProposals?: pulumi.Input[]>; /** - * if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 */ ipsecLifetime?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` */ ipsecProposals?: pulumi.Input[]>; /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ localId?: pulumi.Input; /** - * enum: `active-active`, `active-standby` + * Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` */ mode?: pulumi.Input; /** - * networks reachable via this tunnel + * if `provider`==`custom-ipsec`, networks reachable via this tunnel */ networks?: pulumi.Input[]>; + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + */ primary?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` */ probe?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` */ protocol?: pulumi.Input; /** - * enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` */ provider?: pulumi.Input; /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ psk?: pulumi.Input; + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + */ secondary?: pulumi.Input; /** - * Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` */ version?: pulumi.Input; } export interface GatewayTunnelConfigsAutoProvision { enable?: pulumi.Input; + /** + * API override for POP selection + */ latlng?: pulumi.Input; primary?: pulumi.Input; + /** + * enum: `jse-ipsec`, `zscaler-ipsec` + */ + provider: pulumi.Input; + /** + * API override for POP selection + */ + region?: pulumi.Input; secondary?: pulumi.Input; } @@ -1544,7 +1579,7 @@ export namespace device { } export interface GatewayTunnelConfigsAutoProvisionPrimary { - numHosts?: pulumi.Input; + probeIps?: pulumi.Input[]>; /** * optional, only needed if `varsOnly`==`false` */ @@ -1552,7 +1587,7 @@ export namespace device { } export interface GatewayTunnelConfigsAutoProvisionSecondary { - numHosts?: pulumi.Input; + probeIps?: pulumi.Input[]>; /** * optional, only needed if `varsOnly`==`false` */ @@ -1590,7 +1625,7 @@ export namespace device { */ authAlgo?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec`. enum: + * Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -1610,19 +1645,17 @@ export namespace device { } export interface GatewayTunnelConfigsPrimary { - hosts?: pulumi.Input[]>; + hosts: pulumi.Input[]>; /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` */ internalIps?: pulumi.Input[]>; probeIps?: pulumi.Input[]>; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ remoteIds?: pulumi.Input[]>; - wanNames?: pulumi.Input[]>; + wanNames: pulumi.Input[]>; } export interface GatewayTunnelConfigsProbe { @@ -1645,19 +1678,17 @@ export namespace device { } export interface GatewayTunnelConfigsSecondary { - hosts?: pulumi.Input[]>; + hosts: pulumi.Input[]>; /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` */ internalIps?: pulumi.Input[]>; probeIps?: pulumi.Input[]>; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ remoteIds?: pulumi.Input[]>; - wanNames?: pulumi.Input[]>; + wanNames: pulumi.Input[]>; } export interface GatewayTunnelProviderOptions { @@ -1672,76 +1703,127 @@ export namespace device { } export interface GatewayTunnelProviderOptionsJse { - name?: pulumi.Input; numUsers?: pulumi.Input; + /** + * JSE Organization name + */ + orgName?: pulumi.Input; } export interface GatewayTunnelProviderOptionsZscaler { - aupAcceptanceRequired?: pulumi.Input; + aupBlockInternetUntilAccepted?: pulumi.Input; /** - * days before AUP is requested again + * Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) */ - aupExpire?: pulumi.Input; + aupEnabled?: pulumi.Input; /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser */ - aupSslProxy?: pulumi.Input; + aupForceSslInspection?: pulumi.Input; /** - * the download bandwidth cap of the link, in Mbps + * Required if `aupEnabled`==`true`. Days before AUP is requested again */ - downloadMbps?: pulumi.Input; + aupTimeoutInDays?: pulumi.Input; /** - * if `useXff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to enforce user authentication */ - enableAup?: pulumi.Input; + authRequired?: pulumi.Input; /** - * when `enforceAuthentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users */ - enableCaution?: pulumi.Input; - enforceAuthentication?: pulumi.Input; - name?: pulumi.Input; + cautionEnabled?: pulumi.Input; /** - * if `useXff`==`true` + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + dnBandwidth?: pulumi.Input; + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + */ + idleTimeInMinutes?: pulumi.Input; + /** + * if `true`, enable the firewall control option + */ + ofwEnabled?: pulumi.Input; + /** + * `sub-locations` can be used for specific uses cases to define different configuration based on the user network */ subLocations?: pulumi.Input[]>; /** - * the download bandwidth cap of the link, in Mbps + * Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + */ + surrogateIp?: pulumi.Input; + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers */ - uploadMbps?: pulumi.Input; + surrogateIpEnforcedForKnownBrowsers?: pulumi.Input; + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + */ + surrogateRefreshTimeInMinutes?: pulumi.Input; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + upBandwidth?: pulumi.Input; /** * location uses proxy chaining to forward traffic */ - useXff?: pulumi.Input; + xffForwardEnabled?: pulumi.Input; } export interface GatewayTunnelProviderOptionsZscalerSubLocation { - aupAcceptanceRequired?: pulumi.Input; + aupBlockInternetUntilAccepted?: pulumi.Input; /** - * days before AUP is requested again + * Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) */ - aupExpire?: pulumi.Input; + aupEnabled?: pulumi.Input; /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser */ - aupSslProxy?: pulumi.Input; + aupForceSslInspection?: pulumi.Input; /** - * the download bandwidth cap of the link, in Mbps + * Required if `aupEnabled`==`true`. Days before AUP is requested again */ - downloadMbps?: pulumi.Input; + aupTimeoutInDays?: pulumi.Input; /** - * if `useXff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to authenticate users */ - enableAup?: pulumi.Input; + authRequired?: pulumi.Input; /** - * when `enforceAuthentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users */ - enableCaution?: pulumi.Input; - enforceAuthentication?: pulumi.Input; - subnets?: pulumi.Input[]>; + cautionEnabled?: pulumi.Input; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + dnBandwidth?: pulumi.Input; + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + */ + idleTimeInMinutes?: pulumi.Input; + /** + * Network name + */ + name?: pulumi.Input; + /** + * if `true`, enable the firewall control option + */ + ofwEnabled?: pulumi.Input; + /** + * Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + */ + surrogateIp?: pulumi.Input; /** - * the download bandwidth cap of the link, in Mbps + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers */ - uploadMbps?: pulumi.Input; + surrogateIpEnforcedForKnownBrowsers?: pulumi.Input; + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + */ + surrogateRefreshTimeInMinutes?: pulumi.Input; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + upBandwidth?: pulumi.Input; } export interface GatewayVrfConfig { @@ -1757,14 +1839,16 @@ export namespace device { export interface SwitchAclPolicy { /** - * - for GBP-based policy, all srcTags and dstTags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Actions: + * - for GBP-based policy, all srcTags and dstTags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to */ actions?: pulumi.Input[]>; name?: pulumi.Input; /** - * - for GBP-based policy, all srcTags and dstTags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Source Tags: + * - for GBP-based policy, all srcTags and dstTags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to */ srcTags?: pulumi.Input[]>; } @@ -1780,9 +1864,9 @@ export namespace device { export interface SwitchAclTags { /** * required if - * - `type`==`dynamicGbp` (gbp_tag received from RADIUS) - * - `type`==`gbpResource` - * - `type`==`staticGbp` (applying gbp tag against matching conditions) + * - `type`==`dynamicGbp` (gbp_tag received from RADIUS) + * - `type`==`gbpResource` + * - `type`==`staticGbp` (applying gbp tag against matching conditions) */ gbpTag?: pulumi.Input; /** @@ -1808,8 +1892,7 @@ export namespace device { */ radiusGroup?: pulumi.Input; /** - * if `type`==`resource` or `type`==`gbpResource` - * empty means unrestricted, i.e. any + * if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any */ specs?: pulumi.Input[]>; /** @@ -1840,7 +1923,7 @@ export namespace device { */ portRange?: pulumi.Input; /** - * `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 + * `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 */ protocol?: pulumi.Input; } @@ -1964,14 +2047,6 @@ export namespace device { value?: pulumi.Input; } - export interface SwitchEvpnConfig { - enabled?: pulumi.Input; - /** - * enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - */ - role?: pulumi.Input; - } - export interface SwitchExtraRoutes { /** * this takes precedence @@ -2040,9 +2115,7 @@ export namespace device { */ allNetworks?: pulumi.Input; /** - * 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. - * 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. + * 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. 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. */ allowDhcpd?: pulumi.Input; allowMultipleSupplicants?: pulumi.Input; @@ -2081,8 +2154,7 @@ export namespace device { */ guestNetwork?: pulumi.Input; /** - * inter_switch_link is used together with "isolation" under networks - * NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + * inter_switch_link is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together */ interSwitchLink?: pulumi.Input; /** @@ -2113,6 +2185,10 @@ export namespace device { * Only if `mode`==`trunk`, the list of network/vlans */ networks?: pulumi.Input[]>; + /** + * Additional note for the port config override + */ + note?: pulumi.Input; /** * Only if `mode`==`access` and `portAuth`!=`dot1x` whether the port should retain dynamically learned MAC addresses */ @@ -2207,8 +2283,7 @@ export namespace device { */ gateway6?: pulumi.Input; /** - * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) - * NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set + * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set */ isolation?: pulumi.Input; isolationVlanId?: pulumi.Input; @@ -2401,9 +2476,7 @@ export namespace device { */ allNetworks?: pulumi.Input; /** - * 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. - * 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. + * 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. 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. */ allowDhcpd?: pulumi.Input; /** @@ -2451,8 +2524,7 @@ export namespace device { */ guestNetwork?: pulumi.Input; /** - * Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks - * NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + * Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together */ interSwitchLink?: pulumi.Input; /** @@ -2524,8 +2596,7 @@ export namespace device { */ speed?: pulumi.Input; /** - * Switch storm control - * Only if `mode`!=`dynamic` + * Switch storm control. Only if `mode`!=`dynamic` */ stormControl?: pulumi.Input; /** @@ -2605,8 +2676,7 @@ export namespace device { */ authServersTimeout?: pulumi.Input; /** - * use `network`or `sourceIp` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip */ network?: pulumi.Input; /** @@ -2911,8 +2981,7 @@ export namespace device { export interface SwitchSnmpConfigV3ConfigUsmUser { /** - * Not required if `authenticationType`==`authenticationNone` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. */ authenticationPassword?: pulumi.Input; /** @@ -2920,8 +2989,7 @@ export namespace device { */ authenticationType?: pulumi.Input; /** - * Not required if `encryptionType`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters */ encryptionPassword?: pulumi.Input; /** @@ -3743,8 +3811,7 @@ export namespace org { */ exportPolicy?: pulumi.Input; /** - * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this */ extendedV4Nexthop?: pulumi.Input; /** @@ -3983,6 +4050,9 @@ export namespace org { routedForNetworks?: pulumi.Input[]>; subnet: pulumi.Input; subnet6?: pulumi.Input; + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + */ tenants?: pulumi.Input<{[key: string]: pulumi.Input}>; vlanId?: pulumi.Input; /** @@ -3998,7 +4068,7 @@ export namespace org { export interface DeviceprofileGatewayNetworkInternetAccess { createSimpleServicePolicy?: pulumi.Input; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ destinationNat?: pulumi.Input<{[key: string]: pulumi.Input}>; enabled?: pulumi.Input; @@ -4007,22 +4077,35 @@ export namespace org { */ restricted?: pulumi.Input; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat?: pulumi.Input<{[key: string]: pulumi.Input}>; } export interface DeviceprofileGatewayNetworkInternetAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: pulumi.Input; name?: pulumi.Input; - port?: pulumi.Input; + /** + * The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + */ + port?: pulumi.Input; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + */ + wanName?: pulumi.Input; } export interface DeviceprofileGatewayNetworkInternetAccessStaticNat { - internalIp?: pulumi.Input; - name?: pulumi.Input; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + */ + internalIp: pulumi.Input; + name: pulumi.Input; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") */ wanName?: pulumi.Input; } @@ -4060,7 +4143,7 @@ export namespace org { */ allowPing?: pulumi.Input; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ destinationNat?: pulumi.Input<{[key: string]: pulumi.Input}>; /** @@ -4076,13 +4159,11 @@ export namespace org { */ noReadvertiseToLanOspf?: pulumi.Input; /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes */ noReadvertiseToOverlay?: pulumi.Input; /** - * by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs */ otherVrfs?: pulumi.Input[]>; /** @@ -4094,12 +4175,11 @@ export namespace org { */ sourceNat?: pulumi.Input; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes */ summarizedSubnet?: pulumi.Input; /** @@ -4113,9 +4193,12 @@ export namespace org { } export interface DeviceprofileGatewayNetworkVpnAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: pulumi.Input; name?: pulumi.Input; - port?: pulumi.Input; + port?: pulumi.Input; } export interface DeviceprofileGatewayNetworkVpnAccessSourceNat { @@ -4123,12 +4206,11 @@ export namespace org { } export interface DeviceprofileGatewayNetworkVpnAccessStaticNat { - internalIp?: pulumi.Input; - name?: pulumi.Input; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") */ - wanName?: pulumi.Input; + internalIp: pulumi.Input; + name: pulumi.Input; } export interface DeviceprofileGatewayOobIpConfig { @@ -4244,9 +4326,7 @@ export namespace org { */ aeIdx?: pulumi.Input; /** - * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only */ aeLacpForceUp?: pulumi.Input; aggregated?: pulumi.Input; @@ -4254,6 +4334,9 @@ export namespace org { * if want to generate port up/down alarm, set it to true */ critical?: pulumi.Input; + /** + * Interface Description. Can be a variable (i.e. "{{myvar}}") + */ description?: pulumi.Input; disableAutoneg?: pulumi.Input; /** @@ -4265,13 +4348,11 @@ export namespace org { */ dslType?: pulumi.Input; /** - * if `wanType`==`dsl` - * 16 bit int + * if `wanType`==`dsl`, 16 bit int */ dslVci?: pulumi.Input; /** - * if `wanType`==`dsl` - * 8 bit int + * if `wanType`==`dsl`, 8 bit int */ dslVpi?: pulumi.Input; /** @@ -4305,7 +4386,7 @@ export namespace org { */ name?: pulumi.Input; /** - * if `usage`==`lan` + * if `usage`==`lan`, name of the `junipermist.org.Network` resource */ networks?: pulumi.Input[]>; /** @@ -4314,7 +4395,7 @@ export namespace org { outerVlanId?: pulumi.Input; poeDisabled?: pulumi.Input; /** - * if `usage`==`lan` + * Only for SRX and if `usage`==`lan`, the Untagged VLAN Network */ portNetwork?: pulumi.Input; /** @@ -4351,36 +4432,37 @@ export namespace org { * port usage name. enum: `haControl`, `haData`, `lan`, `wan` */ usage: pulumi.Input; - /** - * if WAN interface is on a VLAN - */ - vlanId?: pulumi.Input; + vlanId?: pulumi.Input; /** * Property key is the VPN name */ vpnPaths?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * when `wanType`==`broadband`. enum: `default`, `max`, `recommended` + * Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` */ wanArpPolicer?: pulumi.Input; /** - * optional, if spoke should reach this port by a different IP + * Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP */ wanExtIp?: pulumi.Input; /** - * Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") */ wanExtraRoutes?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * if `usage`==`wan` + * Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + */ + wanNetworks?: pulumi.Input[]>; + /** + * Only if `usage`==`wan` */ wanProbeOverride?: pulumi.Input; /** - * optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip */ wanSourceNat?: pulumi.Input; /** - * if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` */ wanType?: pulumi.Input; } @@ -4395,12 +4477,15 @@ export namespace org { */ dnsSuffixes?: pulumi.Input[]>; /** - * except for out-of_band interface (vme/em0/fxp0) + * except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") */ gateway?: pulumi.Input; + /** + * Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + */ ip?: pulumi.Input; /** - * used only if `subnet` is not specified in `networks` + * used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") */ netmask?: pulumi.Input; /** @@ -4427,11 +4512,14 @@ export namespace org { export interface DeviceprofileGatewayPortConfigTrafficShaping { /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 */ classPercentages?: pulumi.Input[]>; enabled?: pulumi.Input; + /** + * Interface Transmit Cap in kbps + */ + maxTxKbps?: pulumi.Input; } export interface DeviceprofileGatewayPortConfigVpnPaths { @@ -4460,11 +4548,14 @@ export namespace org { export interface DeviceprofileGatewayPortConfigVpnPathsTrafficShaping { /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 */ classPercentages?: pulumi.Input[]>; enabled?: pulumi.Input; + /** + * Interface Transmit Cap in kbps + */ + maxTxKbps?: pulumi.Input; } export interface DeviceprofileGatewayPortConfigWanExtraRoutes { @@ -4515,6 +4606,10 @@ export namespace org { * for SSR, hub decides how VRF routes are leaked on spoke */ addTargetVrfs?: pulumi.Input[]>; + /** + * route aggregation + */ + aggregates?: pulumi.Input[]>; /** * when used as export policy, optional */ @@ -4560,8 +4655,7 @@ export namespace org { vpnNeighborMacs?: pulumi.Input[]>; vpnPathSla?: pulumi.Input; /** - * overlay-facing criteria (used for bgpConfig where via=vpn) - * ordered- + * overlay-facing criteria (used for bgpConfig where via=vpn). ordered- */ vpnPaths?: pulumi.Input[]>; } @@ -4569,8 +4663,7 @@ export namespace org { export interface DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists { route?: pulumi.Input; /** - * name of the vrf instance - * it can also be the name of the VPN or wan if they + * name of the vrf instance, it can also be the name of the VPN or wan if they */ vrfName?: pulumi.Input; } @@ -4601,8 +4694,7 @@ export namespace org { */ name?: pulumi.Input; /** - * by default, we derive all paths available and use them - * optionally, you can customize by using `pathPreference` + * by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` */ pathPreference?: pulumi.Input; /** @@ -4649,71 +4741,82 @@ export namespace org { export interface DeviceprofileGatewayTunnelConfigs { autoProvision?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 */ ikeLifetime?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` */ ikeMode?: pulumi.Input; /** - * if `provider`== `custom-ipsec` + * if `provider`==`custom-ipsec` */ ikeProposals?: pulumi.Input[]>; /** - * if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 */ ipsecLifetime?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` */ ipsecProposals?: pulumi.Input[]>; /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ localId?: pulumi.Input; /** - * enum: `active-active`, `active-standby` + * Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` */ mode?: pulumi.Input; /** - * networks reachable via this tunnel + * if `provider`==`custom-ipsec`, networks reachable via this tunnel */ networks?: pulumi.Input[]>; + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + */ primary?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` */ probe?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` */ protocol?: pulumi.Input; /** - * enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` */ provider?: pulumi.Input; /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ psk?: pulumi.Input; + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + */ secondary?: pulumi.Input; /** - * Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` */ version?: pulumi.Input; } export interface DeviceprofileGatewayTunnelConfigsAutoProvision { enable?: pulumi.Input; + /** + * API override for POP selection + */ latlng?: pulumi.Input; primary?: pulumi.Input; + /** + * enum: `jse-ipsec`, `zscaler-ipsec` + */ + provider: pulumi.Input; + /** + * API override for POP selection + */ + region?: pulumi.Input; secondary?: pulumi.Input; } @@ -4723,7 +4826,7 @@ export namespace org { } export interface DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary { - numHosts?: pulumi.Input; + probeIps?: pulumi.Input[]>; /** * optional, only needed if `varsOnly`==`false` */ @@ -4731,7 +4834,7 @@ export namespace org { } export interface DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary { - numHosts?: pulumi.Input; + probeIps?: pulumi.Input[]>; /** * optional, only needed if `varsOnly`==`false` */ @@ -4769,7 +4872,7 @@ export namespace org { */ authAlgo?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec`. enum: + * Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -4789,19 +4892,17 @@ export namespace org { } export interface DeviceprofileGatewayTunnelConfigsPrimary { - hosts?: pulumi.Input[]>; + hosts: pulumi.Input[]>; /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` */ internalIps?: pulumi.Input[]>; probeIps?: pulumi.Input[]>; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ remoteIds?: pulumi.Input[]>; - wanNames?: pulumi.Input[]>; + wanNames: pulumi.Input[]>; } export interface DeviceprofileGatewayTunnelConfigsProbe { @@ -4824,19 +4925,17 @@ export namespace org { } export interface DeviceprofileGatewayTunnelConfigsSecondary { - hosts?: pulumi.Input[]>; + hosts: pulumi.Input[]>; /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` */ internalIps?: pulumi.Input[]>; probeIps?: pulumi.Input[]>; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ remoteIds?: pulumi.Input[]>; - wanNames?: pulumi.Input[]>; + wanNames: pulumi.Input[]>; } export interface DeviceprofileGatewayTunnelProviderOptions { @@ -4851,76 +4950,127 @@ export namespace org { } export interface DeviceprofileGatewayTunnelProviderOptionsJse { - name?: pulumi.Input; numUsers?: pulumi.Input; + /** + * JSE Organization name + */ + orgName?: pulumi.Input; } export interface DeviceprofileGatewayTunnelProviderOptionsZscaler { - aupAcceptanceRequired?: pulumi.Input; + aupBlockInternetUntilAccepted?: pulumi.Input; /** - * days before AUP is requested again + * Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) */ - aupExpire?: pulumi.Input; + aupEnabled?: pulumi.Input; /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser */ - aupSslProxy?: pulumi.Input; + aupForceSslInspection?: pulumi.Input; /** - * the download bandwidth cap of the link, in Mbps + * Required if `aupEnabled`==`true`. Days before AUP is requested again */ - downloadMbps?: pulumi.Input; + aupTimeoutInDays?: pulumi.Input; /** - * if `useXff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to enforce user authentication */ - enableAup?: pulumi.Input; + authRequired?: pulumi.Input; /** - * when `enforceAuthentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users */ - enableCaution?: pulumi.Input; - enforceAuthentication?: pulumi.Input; - name?: pulumi.Input; + cautionEnabled?: pulumi.Input; /** - * if `useXff`==`true` + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + dnBandwidth?: pulumi.Input; + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + */ + idleTimeInMinutes?: pulumi.Input; + /** + * if `true`, enable the firewall control option + */ + ofwEnabled?: pulumi.Input; + /** + * `sub-locations` can be used for specific uses cases to define different configuration based on the user network */ subLocations?: pulumi.Input[]>; /** - * the download bandwidth cap of the link, in Mbps + * Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + */ + surrogateIp?: pulumi.Input; + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers */ - uploadMbps?: pulumi.Input; + surrogateIpEnforcedForKnownBrowsers?: pulumi.Input; + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + */ + surrogateRefreshTimeInMinutes?: pulumi.Input; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + upBandwidth?: pulumi.Input; /** * location uses proxy chaining to forward traffic */ - useXff?: pulumi.Input; + xffForwardEnabled?: pulumi.Input; } export interface DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation { - aupAcceptanceRequired?: pulumi.Input; + aupBlockInternetUntilAccepted?: pulumi.Input; /** - * days before AUP is requested again + * Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) */ - aupExpire?: pulumi.Input; + aupEnabled?: pulumi.Input; /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser */ - aupSslProxy?: pulumi.Input; + aupForceSslInspection?: pulumi.Input; /** - * the download bandwidth cap of the link, in Mbps + * Required if `aupEnabled`==`true`. Days before AUP is requested again */ - downloadMbps?: pulumi.Input; + aupTimeoutInDays?: pulumi.Input; /** - * if `useXff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to authenticate users */ - enableAup?: pulumi.Input; + authRequired?: pulumi.Input; /** - * when `enforceAuthentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users */ - enableCaution?: pulumi.Input; - enforceAuthentication?: pulumi.Input; - subnets?: pulumi.Input[]>; + cautionEnabled?: pulumi.Input; /** - * the download bandwidth cap of the link, in Mbps + * the download bandwidth cap of the link, in Mbps. Disabled if not set */ - uploadMbps?: pulumi.Input; + dnBandwidth?: pulumi.Input; + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + */ + idleTimeInMinutes?: pulumi.Input; + /** + * Network name + */ + name?: pulumi.Input; + /** + * if `true`, enable the firewall control option + */ + ofwEnabled?: pulumi.Input; + /** + * Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + */ + surrogateIp?: pulumi.Input; + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + */ + surrogateIpEnforcedForKnownBrowsers?: pulumi.Input; + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + */ + surrogateRefreshTimeInMinutes?: pulumi.Input; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + upBandwidth?: pulumi.Input; } export interface DeviceprofileGatewayVrfConfig { @@ -5046,8 +5196,7 @@ export namespace org { */ exportPolicy?: pulumi.Input; /** - * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this */ extendedV4Nexthop?: pulumi.Input; /** @@ -5286,6 +5435,9 @@ export namespace org { routedForNetworks?: pulumi.Input[]>; subnet: pulumi.Input; subnet6?: pulumi.Input; + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + */ tenants?: pulumi.Input<{[key: string]: pulumi.Input}>; vlanId?: pulumi.Input; /** @@ -5301,7 +5453,7 @@ export namespace org { export interface GatewaytemplateNetworkInternetAccess { createSimpleServicePolicy?: pulumi.Input; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ destinationNat?: pulumi.Input<{[key: string]: pulumi.Input}>; enabled?: pulumi.Input; @@ -5310,22 +5462,35 @@ export namespace org { */ restricted?: pulumi.Input; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat?: pulumi.Input<{[key: string]: pulumi.Input}>; } export interface GatewaytemplateNetworkInternetAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: pulumi.Input; name?: pulumi.Input; - port?: pulumi.Input; + /** + * The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + */ + port?: pulumi.Input; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + */ + wanName?: pulumi.Input; } export interface GatewaytemplateNetworkInternetAccessStaticNat { - internalIp?: pulumi.Input; - name?: pulumi.Input; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + */ + internalIp: pulumi.Input; + name: pulumi.Input; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") */ wanName?: pulumi.Input; } @@ -5363,7 +5528,7 @@ export namespace org { */ allowPing?: pulumi.Input; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ destinationNat?: pulumi.Input<{[key: string]: pulumi.Input}>; /** @@ -5379,13 +5544,11 @@ export namespace org { */ noReadvertiseToLanOspf?: pulumi.Input; /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes */ noReadvertiseToOverlay?: pulumi.Input; /** - * by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs */ otherVrfs?: pulumi.Input[]>; /** @@ -5397,12 +5560,11 @@ export namespace org { */ sourceNat?: pulumi.Input; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes */ summarizedSubnet?: pulumi.Input; /** @@ -5416,9 +5578,12 @@ export namespace org { } export interface GatewaytemplateNetworkVpnAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: pulumi.Input; name?: pulumi.Input; - port?: pulumi.Input; + port?: pulumi.Input; } export interface GatewaytemplateNetworkVpnAccessSourceNat { @@ -5426,12 +5591,11 @@ export namespace org { } export interface GatewaytemplateNetworkVpnAccessStaticNat { - internalIp?: pulumi.Input; - name?: pulumi.Input; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") */ - wanName?: pulumi.Input; + internalIp: pulumi.Input; + name: pulumi.Input; } export interface GatewaytemplateOobIpConfig { @@ -5547,9 +5711,7 @@ export namespace org { */ aeIdx?: pulumi.Input; /** - * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only */ aeLacpForceUp?: pulumi.Input; aggregated?: pulumi.Input; @@ -5557,6 +5719,9 @@ export namespace org { * if want to generate port up/down alarm, set it to true */ critical?: pulumi.Input; + /** + * Interface Description. Can be a variable (i.e. "{{myvar}}") + */ description?: pulumi.Input; disableAutoneg?: pulumi.Input; /** @@ -5568,13 +5733,11 @@ export namespace org { */ dslType?: pulumi.Input; /** - * if `wanType`==`dsl` - * 16 bit int + * if `wanType`==`dsl`, 16 bit int */ dslVci?: pulumi.Input; /** - * if `wanType`==`dsl` - * 8 bit int + * if `wanType`==`dsl`, 8 bit int */ dslVpi?: pulumi.Input; /** @@ -5608,7 +5771,7 @@ export namespace org { */ name?: pulumi.Input; /** - * if `usage`==`lan` + * if `usage`==`lan`, name of the `junipermist.org.Network` resource */ networks?: pulumi.Input[]>; /** @@ -5617,7 +5780,7 @@ export namespace org { outerVlanId?: pulumi.Input; poeDisabled?: pulumi.Input; /** - * if `usage`==`lan` + * Only for SRX and if `usage`==`lan`, the Untagged VLAN Network */ portNetwork?: pulumi.Input; /** @@ -5654,36 +5817,37 @@ export namespace org { * port usage name. enum: `haControl`, `haData`, `lan`, `wan` */ usage: pulumi.Input; - /** - * if WAN interface is on a VLAN - */ - vlanId?: pulumi.Input; + vlanId?: pulumi.Input; /** * Property key is the VPN name */ vpnPaths?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * when `wanType`==`broadband`. enum: `default`, `max`, `recommended` + * Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` */ wanArpPolicer?: pulumi.Input; /** - * optional, if spoke should reach this port by a different IP + * Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP */ wanExtIp?: pulumi.Input; /** - * Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") */ wanExtraRoutes?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * if `usage`==`wan` + * Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + */ + wanNetworks?: pulumi.Input[]>; + /** + * Only if `usage`==`wan` */ wanProbeOverride?: pulumi.Input; /** - * optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip */ wanSourceNat?: pulumi.Input; /** - * if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` */ wanType?: pulumi.Input; } @@ -5698,12 +5862,15 @@ export namespace org { */ dnsSuffixes?: pulumi.Input[]>; /** - * except for out-of_band interface (vme/em0/fxp0) + * except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") */ gateway?: pulumi.Input; + /** + * Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + */ ip?: pulumi.Input; /** - * used only if `subnet` is not specified in `networks` + * used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") */ netmask?: pulumi.Input; /** @@ -5730,11 +5897,14 @@ export namespace org { export interface GatewaytemplatePortConfigTrafficShaping { /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 */ classPercentages?: pulumi.Input[]>; enabled?: pulumi.Input; + /** + * Interface Transmit Cap in kbps + */ + maxTxKbps?: pulumi.Input; } export interface GatewaytemplatePortConfigVpnPaths { @@ -5763,11 +5933,14 @@ export namespace org { export interface GatewaytemplatePortConfigVpnPathsTrafficShaping { /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 */ classPercentages?: pulumi.Input[]>; enabled?: pulumi.Input; + /** + * Interface Transmit Cap in kbps + */ + maxTxKbps?: pulumi.Input; } export interface GatewaytemplatePortConfigWanExtraRoutes { @@ -5818,6 +5991,10 @@ export namespace org { * for SSR, hub decides how VRF routes are leaked on spoke */ addTargetVrfs?: pulumi.Input[]>; + /** + * route aggregation + */ + aggregates?: pulumi.Input[]>; /** * when used as export policy, optional */ @@ -5863,8 +6040,7 @@ export namespace org { vpnNeighborMacs?: pulumi.Input[]>; vpnPathSla?: pulumi.Input; /** - * overlay-facing criteria (used for bgpConfig where via=vpn) - * ordered- + * overlay-facing criteria (used for bgpConfig where via=vpn). ordered- */ vpnPaths?: pulumi.Input[]>; } @@ -5872,8 +6048,7 @@ export namespace org { export interface GatewaytemplateRoutingPoliciesTermMatchingRouteExists { route?: pulumi.Input; /** - * name of the vrf instance - * it can also be the name of the VPN or wan if they + * name of the vrf instance, it can also be the name of the VPN or wan if they */ vrfName?: pulumi.Input; } @@ -5904,8 +6079,7 @@ export namespace org { */ name?: pulumi.Input; /** - * by default, we derive all paths available and use them - * optionally, you can customize by using `pathPreference` + * by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` */ pathPreference?: pulumi.Input; /** @@ -5952,71 +6126,82 @@ export namespace org { export interface GatewaytemplateTunnelConfigs { autoProvision?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 */ ikeLifetime?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` */ ikeMode?: pulumi.Input; /** - * if `provider`== `custom-ipsec` + * if `provider`==`custom-ipsec` */ ikeProposals?: pulumi.Input[]>; /** - * if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 */ ipsecLifetime?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` */ ipsecProposals?: pulumi.Input[]>; /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ localId?: pulumi.Input; /** - * enum: `active-active`, `active-standby` + * Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` */ mode?: pulumi.Input; /** - * networks reachable via this tunnel + * if `provider`==`custom-ipsec`, networks reachable via this tunnel */ networks?: pulumi.Input[]>; + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + */ primary?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` */ probe?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` */ protocol?: pulumi.Input; /** - * enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` */ provider?: pulumi.Input; /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ psk?: pulumi.Input; + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + */ secondary?: pulumi.Input; /** - * Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` */ version?: pulumi.Input; } export interface GatewaytemplateTunnelConfigsAutoProvision { enable?: pulumi.Input; + /** + * API override for POP selection + */ latlng?: pulumi.Input; primary?: pulumi.Input; + /** + * enum: `jse-ipsec`, `zscaler-ipsec` + */ + provider: pulumi.Input; + /** + * API override for POP selection + */ + region?: pulumi.Input; secondary?: pulumi.Input; } @@ -6026,7 +6211,7 @@ export namespace org { } export interface GatewaytemplateTunnelConfigsAutoProvisionPrimary { - numHosts?: pulumi.Input; + probeIps?: pulumi.Input[]>; /** * optional, only needed if `varsOnly`==`false` */ @@ -6034,7 +6219,7 @@ export namespace org { } export interface GatewaytemplateTunnelConfigsAutoProvisionSecondary { - numHosts?: pulumi.Input; + probeIps?: pulumi.Input[]>; /** * optional, only needed if `varsOnly`==`false` */ @@ -6072,7 +6257,7 @@ export namespace org { */ authAlgo?: pulumi.Input; /** - * Only if `provider`== `custom-ipsec`. enum: + * Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -6092,19 +6277,17 @@ export namespace org { } export interface GatewaytemplateTunnelConfigsPrimary { - hosts?: pulumi.Input[]>; + hosts: pulumi.Input[]>; /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` */ internalIps?: pulumi.Input[]>; probeIps?: pulumi.Input[]>; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ remoteIds?: pulumi.Input[]>; - wanNames?: pulumi.Input[]>; + wanNames: pulumi.Input[]>; } export interface GatewaytemplateTunnelConfigsProbe { @@ -6127,19 +6310,17 @@ export namespace org { } export interface GatewaytemplateTunnelConfigsSecondary { - hosts?: pulumi.Input[]>; + hosts: pulumi.Input[]>; /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` */ internalIps?: pulumi.Input[]>; probeIps?: pulumi.Input[]>; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ remoteIds?: pulumi.Input[]>; - wanNames?: pulumi.Input[]>; + wanNames: pulumi.Input[]>; } export interface GatewaytemplateTunnelProviderOptions { @@ -6154,76 +6335,127 @@ export namespace org { } export interface GatewaytemplateTunnelProviderOptionsJse { - name?: pulumi.Input; numUsers?: pulumi.Input; + /** + * JSE Organization name + */ + orgName?: pulumi.Input; } export interface GatewaytemplateTunnelProviderOptionsZscaler { - aupAcceptanceRequired?: pulumi.Input; + aupBlockInternetUntilAccepted?: pulumi.Input; /** - * days before AUP is requested again + * Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) */ - aupExpire?: pulumi.Input; + aupEnabled?: pulumi.Input; /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser */ - aupSslProxy?: pulumi.Input; + aupForceSslInspection?: pulumi.Input; /** - * the download bandwidth cap of the link, in Mbps + * Required if `aupEnabled`==`true`. Days before AUP is requested again */ - downloadMbps?: pulumi.Input; + aupTimeoutInDays?: pulumi.Input; /** - * if `useXff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to enforce user authentication */ - enableAup?: pulumi.Input; + authRequired?: pulumi.Input; /** - * when `enforceAuthentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users */ - enableCaution?: pulumi.Input; - enforceAuthentication?: pulumi.Input; - name?: pulumi.Input; + cautionEnabled?: pulumi.Input; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + dnBandwidth?: pulumi.Input; + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + */ + idleTimeInMinutes?: pulumi.Input; /** - * if `useXff`==`true` + * if `true`, enable the firewall control option + */ + ofwEnabled?: pulumi.Input; + /** + * `sub-locations` can be used for specific uses cases to define different configuration based on the user network */ subLocations?: pulumi.Input[]>; /** - * the download bandwidth cap of the link, in Mbps + * Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies */ - uploadMbps?: pulumi.Input; + surrogateIp?: pulumi.Input; + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + */ + surrogateIpEnforcedForKnownBrowsers?: pulumi.Input; + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + */ + surrogateRefreshTimeInMinutes?: pulumi.Input; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + upBandwidth?: pulumi.Input; /** * location uses proxy chaining to forward traffic */ - useXff?: pulumi.Input; + xffForwardEnabled?: pulumi.Input; } export interface GatewaytemplateTunnelProviderOptionsZscalerSubLocation { - aupAcceptanceRequired?: pulumi.Input; + aupBlockInternetUntilAccepted?: pulumi.Input; /** - * days before AUP is requested again + * Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) */ - aupExpire?: pulumi.Input; + aupEnabled?: pulumi.Input; /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser */ - aupSslProxy?: pulumi.Input; + aupForceSslInspection?: pulumi.Input; /** - * the download bandwidth cap of the link, in Mbps + * Required if `aupEnabled`==`true`. Days before AUP is requested again */ - downloadMbps?: pulumi.Input; + aupTimeoutInDays?: pulumi.Input; /** - * if `useXff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to authenticate users */ - enableAup?: pulumi.Input; + authRequired?: pulumi.Input; /** - * when `enforceAuthentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users */ - enableCaution?: pulumi.Input; - enforceAuthentication?: pulumi.Input; - subnets?: pulumi.Input[]>; + cautionEnabled?: pulumi.Input; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + dnBandwidth?: pulumi.Input; + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + */ + idleTimeInMinutes?: pulumi.Input; + /** + * Network name + */ + name?: pulumi.Input; /** - * the download bandwidth cap of the link, in Mbps + * if `true`, enable the firewall control option */ - uploadMbps?: pulumi.Input; + ofwEnabled?: pulumi.Input; + /** + * Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + */ + surrogateIp?: pulumi.Input; + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + */ + surrogateIpEnforcedForKnownBrowsers?: pulumi.Input; + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + */ + surrogateRefreshTimeInMinutes?: pulumi.Input; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + upBandwidth?: pulumi.Input; } export interface GatewaytemplateVrfConfig { @@ -6400,7 +6632,7 @@ export namespace org { export interface NetworkInternetAccess { createSimpleServicePolicy?: pulumi.Input; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ destinationNat?: pulumi.Input<{[key: string]: pulumi.Input}>; enabled?: pulumi.Input; @@ -6409,26 +6641,58 @@ export namespace org { */ restricted?: pulumi.Input; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat?: pulumi.Input<{[key: string]: pulumi.Input}>; } export interface NetworkInternetAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: pulumi.Input; name?: pulumi.Input; - port?: pulumi.Input; + /** + * The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + */ + port?: pulumi.Input; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + */ + wanName?: pulumi.Input; } export interface NetworkInternetAccessStaticNat { - internalIp?: pulumi.Input; - name?: pulumi.Input; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + */ + internalIp: pulumi.Input; + name: pulumi.Input; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") */ wanName?: pulumi.Input; } + export interface NetworkMulticast { + /** + * if the network will only be the soruce of the multicast traffic, IGMP can be disabled + */ + disableIgmp?: pulumi.Input; + enabled?: pulumi.Input; + /** + * Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + */ + groups?: pulumi.Input<{[key: string]: pulumi.Input}>; + } + + export interface NetworkMulticastGroups { + /** + * RP (rendezvous point) IP Address + */ + rpIp?: pulumi.Input; + } + export interface NetworkTenants { addresses?: pulumi.Input[]>; } @@ -6443,7 +6707,7 @@ export namespace org { */ allowPing?: pulumi.Input; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ destinationNat?: pulumi.Input<{[key: string]: pulumi.Input}>; /** @@ -6477,7 +6741,7 @@ export namespace org { */ sourceNat?: pulumi.Input; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat?: pulumi.Input<{[key: string]: pulumi.Input}>; /** @@ -6496,9 +6760,12 @@ export namespace org { } export interface NetworkVpnAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: pulumi.Input; name?: pulumi.Input; - port?: pulumi.Input; + port?: pulumi.Input; } export interface NetworkVpnAccessSourceNat { @@ -6506,24 +6773,25 @@ export namespace org { } export interface NetworkVpnAccessStaticNat { - internalIp?: pulumi.Input; - name?: pulumi.Input; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") */ - wanName?: pulumi.Input; + internalIp: pulumi.Input; + name: pulumi.Input; } export interface NetworktemplateAclPolicy { /** - * - for GBP-based policy, all srcTags and dstTags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Actions: + * - for GBP-based policy, all srcTags and dstTags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to */ actions?: pulumi.Input[]>; name?: pulumi.Input; /** - * - for GBP-based policy, all srcTags and dstTags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Source Tags: + * - for GBP-based policy, all srcTags and dstTags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to */ srcTags?: pulumi.Input[]>; } @@ -6539,9 +6807,9 @@ export namespace org { export interface NetworktemplateAclTags { /** * required if - * - `type`==`dynamicGbp` (gbp_tag received from RADIUS) - * - `type`==`gbpResource` - * - `type`==`staticGbp` (applying gbp tag against matching conditions) + * - `type`==`dynamicGbp` (gbp_tag received from RADIUS) + * - `type`==`gbpResource` + * - `type`==`staticGbp` (applying gbp tag against matching conditions) */ gbpTag?: pulumi.Input; /** @@ -6567,8 +6835,7 @@ export namespace org { */ radiusGroup?: pulumi.Input; /** - * if `type`==`resource` or `type`==`gbpResource` - * empty means unrestricted, i.e. any + * if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any */ specs?: pulumi.Input[]>; /** @@ -6599,7 +6866,7 @@ export namespace org { */ portRange?: pulumi.Input; /** - * `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 + * `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 */ protocol?: pulumi.Input; } @@ -6676,8 +6943,7 @@ export namespace org { */ gateway6?: pulumi.Input; /** - * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) - * NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set + * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set */ isolation?: pulumi.Input; isolationVlanId?: pulumi.Input; @@ -6763,9 +7029,7 @@ export namespace org { */ allNetworks?: pulumi.Input; /** - * 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. - * 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. + * 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. 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. */ allowDhcpd?: pulumi.Input; /** @@ -6813,8 +7077,7 @@ export namespace org { */ guestNetwork?: pulumi.Input; /** - * Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks - * NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + * Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together */ interSwitchLink?: pulumi.Input; /** @@ -6886,8 +7149,7 @@ export namespace org { */ speed?: pulumi.Input; /** - * Switch storm control - * Only if `mode`!=`dynamic` + * Switch storm control. Only if `mode`!=`dynamic` */ stormControl?: pulumi.Input; /** @@ -6971,8 +7233,7 @@ export namespace org { */ authServersTimeout?: pulumi.Input; /** - * use `network`or `sourceIp` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip */ network?: pulumi.Input; /** @@ -7277,8 +7538,7 @@ export namespace org { export interface NetworktemplateSnmpConfigV3ConfigUsmUser { /** - * Not required if `authenticationType`==`authenticationNone` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. */ authenticationPassword?: pulumi.Input; /** @@ -7286,8 +7546,7 @@ export namespace org { */ authenticationType?: pulumi.Input; /** - * Not required if `encryptionType`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters */ encryptionPassword?: pulumi.Input; /** @@ -7418,8 +7677,7 @@ Please update your configurations. */ portConfig?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * Property key is the port mirroring instance name - * portMirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + * Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed */ portMirroring?: pulumi.Input<{[key: string]: pulumi.Input}>; } @@ -8396,8 +8654,7 @@ Please update your configurations. apps?: pulumi.Input<{[key: string]: pulumi.Input}>; enabled?: pulumi.Input; /** - * Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtagId` */ wxtagIds?: pulumi.Input<{[key: string]: pulumi.Input}>; } @@ -8566,8 +8823,7 @@ Please update your configurations. export interface WlanDnsServerRewrite { enabled?: pulumi.Input; /** - * map between radiusGroup and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * map between radiusGroup and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server */ radiusGroups?: pulumi.Input<{[key: string]: pulumi.Input}>; } @@ -8580,8 +8836,7 @@ Please update your configurations. defaultVlanId?: pulumi.Input; enabled?: pulumi.Input; /** - * when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto */ forceLookup?: pulumi.Input; /** @@ -9642,13 +9897,11 @@ Please update your configurations. enabled?: pulumi.Input; idleTimeout?: pulumi.Input; /** - * To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids */ mxclusterIds?: pulumi.Input[]>; /** - * default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `useSiteMxedge` */ proxyHosts?: pulumi.Input[]>; /** @@ -9859,14 +10112,16 @@ export namespace site { export interface NetworktemplateAclPolicy { /** - * - for GBP-based policy, all srcTags and dstTags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Actions: + * - for GBP-based policy, all srcTags and dstTags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to */ actions?: pulumi.Input[]>; name?: pulumi.Input; /** - * - for GBP-based policy, all srcTags and dstTags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Source Tags: + * - for GBP-based policy, all srcTags and dstTags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to */ srcTags?: pulumi.Input[]>; } @@ -9882,9 +10137,9 @@ export namespace site { export interface NetworktemplateAclTags { /** * required if - * - `type`==`dynamicGbp` (gbp_tag received from RADIUS) - * - `type`==`gbpResource` - * - `type`==`staticGbp` (applying gbp tag against matching conditions) + * - `type`==`dynamicGbp` (gbp_tag received from RADIUS) + * - `type`==`gbpResource` + * - `type`==`staticGbp` (applying gbp tag against matching conditions) */ gbpTag?: pulumi.Input; /** @@ -9910,8 +10165,7 @@ export namespace site { */ radiusGroup?: pulumi.Input; /** - * if `type`==`resource` or `type`==`gbpResource` - * empty means unrestricted, i.e. any + * if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any */ specs?: pulumi.Input[]>; /** @@ -9942,7 +10196,7 @@ export namespace site { */ portRange?: pulumi.Input; /** - * `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 + * `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 */ protocol?: pulumi.Input; } @@ -10019,8 +10273,7 @@ export namespace site { */ gateway6?: pulumi.Input; /** - * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) - * NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set + * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set */ isolation?: pulumi.Input; isolationVlanId?: pulumi.Input; @@ -10106,9 +10359,7 @@ export namespace site { */ allNetworks?: pulumi.Input; /** - * 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. - * 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. + * 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. 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. */ allowDhcpd?: pulumi.Input; /** @@ -10156,8 +10407,7 @@ export namespace site { */ guestNetwork?: pulumi.Input; /** - * Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks - * NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + * Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together */ interSwitchLink?: pulumi.Input; /** @@ -10229,8 +10479,7 @@ export namespace site { */ speed?: pulumi.Input; /** - * Switch storm control - * Only if `mode`!=`dynamic` + * Switch storm control. Only if `mode`!=`dynamic` */ stormControl?: pulumi.Input; /** @@ -10314,8 +10563,7 @@ export namespace site { */ authServersTimeout?: pulumi.Input; /** - * use `network`or `sourceIp` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip */ network?: pulumi.Input; /** @@ -10620,8 +10868,7 @@ export namespace site { export interface NetworktemplateSnmpConfigV3ConfigUsmUser { /** - * Not required if `authenticationType`==`authenticationNone` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. */ authenticationPassword?: pulumi.Input; /** @@ -10629,8 +10876,7 @@ export namespace site { */ authenticationType?: pulumi.Input; /** - * Not required if `encryptionType`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters */ encryptionPassword?: pulumi.Input; /** @@ -10761,8 +11007,7 @@ Please update your configurations. */ portConfig?: pulumi.Input<{[key: string]: pulumi.Input}>; /** - * Property key is the port mirroring instance name - * portMirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + * Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed */ portMirroring?: pulumi.Input<{[key: string]: pulumi.Input}>; } @@ -11632,8 +11877,7 @@ Please update your configurations. apps?: pulumi.Input<{[key: string]: pulumi.Input}>; enabled?: pulumi.Input; /** - * Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtagId` */ wxtagIds?: pulumi.Input<{[key: string]: pulumi.Input}>; } @@ -11802,8 +12046,7 @@ Please update your configurations. export interface WlanDnsServerRewrite { enabled?: pulumi.Input; /** - * map between radiusGroup and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * map between radiusGroup and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server */ radiusGroups?: pulumi.Input<{[key: string]: pulumi.Input}>; } @@ -11816,8 +12059,7 @@ Please update your configurations. defaultVlanId?: pulumi.Input; enabled?: pulumi.Input; /** - * when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto */ forceLookup?: pulumi.Input; /** @@ -12878,13 +13120,11 @@ Please update your configurations. enabled?: pulumi.Input; idleTimeout?: pulumi.Input; /** - * To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids */ mxclusterIds?: pulumi.Input[]>; /** - * default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `useSiteMxedge` */ proxyHosts?: pulumi.Input[]>; /** diff --git a/sdk/nodejs/types/output.ts b/sdk/nodejs/types/output.ts index b396e47e..7eb8a9e1 100644 --- a/sdk/nodejs/types/output.ts +++ b/sdk/nodejs/types/output.ts @@ -713,8 +713,7 @@ export namespace device { */ exportPolicy?: string; /** - * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this */ extendedV4Nexthop?: boolean; /** @@ -964,6 +963,9 @@ export namespace device { routedForNetworks?: string[]; subnet: string; subnet6?: string; + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + */ tenants?: {[key: string]: outputs.device.GatewayNetworkTenants}; vlanId?: string; /** @@ -979,7 +981,7 @@ export namespace device { export interface GatewayNetworkInternetAccess { createSimpleServicePolicy: boolean; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ destinationNat?: {[key: string]: outputs.device.GatewayNetworkInternetAccessDestinationNat}; enabled?: boolean; @@ -988,22 +990,35 @@ export namespace device { */ restricted: boolean; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat?: {[key: string]: outputs.device.GatewayNetworkInternetAccessStaticNat}; } export interface GatewayNetworkInternetAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: string; name?: string; - port?: number; + /** + * The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + */ + port?: string; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + */ + wanName?: string; } export interface GatewayNetworkInternetAccessStaticNat { - internalIp?: string; - name?: string; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + */ + internalIp: string; + name: string; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") */ wanName?: string; } @@ -1041,9 +1056,9 @@ export namespace device { */ allowPing?: boolean; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ - destinationNat: {[key: string]: outputs.device.GatewayNetworkVpnAccessDestinationNat}; + destinationNat?: {[key: string]: outputs.device.GatewayNetworkVpnAccessDestinationNat}; /** * if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub */ @@ -1057,13 +1072,11 @@ export namespace device { */ noReadvertiseToLanOspf: boolean; /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes */ noReadvertiseToOverlay?: boolean; /** - * by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs */ otherVrfs: string[]; /** @@ -1075,12 +1088,11 @@ export namespace device { */ sourceNat: outputs.device.GatewayNetworkVpnAccessSourceNat; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat: {[key: string]: outputs.device.GatewayNetworkVpnAccessStaticNat}; /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes */ summarizedSubnet?: string; /** @@ -1094,9 +1106,12 @@ export namespace device { } export interface GatewayNetworkVpnAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: string; name?: string; - port?: number; + port?: string; } export interface GatewayNetworkVpnAccessSourceNat { @@ -1104,12 +1119,11 @@ export namespace device { } export interface GatewayNetworkVpnAccessStaticNat { - internalIp?: string; - name?: string; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") */ - wanName?: string; + internalIp: string; + name: string; } export interface GatewayOobIpConfig { @@ -1136,7 +1150,7 @@ export namespace device { /** * if supported on the platform. If enabled, DNS will be using this routing-instance, too */ - useMgmtVrf: boolean; + useMgmtVrf?: boolean; /** * for host-out traffic (NTP/TACPLUS/RADIUS/SYSLOG/SNMP), if alternative source network/ip is desired */ @@ -1225,9 +1239,7 @@ export namespace device { */ aeIdx?: string; /** - * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only */ aeLacpForceUp: boolean; aggregated: boolean; @@ -1235,6 +1247,9 @@ export namespace device { * if want to generate port up/down alarm, set it to true */ critical: boolean; + /** + * Interface Description. Can be a variable (i.e. "{{myvar}}") + */ description?: string; disableAutoneg: boolean; /** @@ -1246,13 +1261,11 @@ export namespace device { */ dslType: string; /** - * if `wanType`==`dsl` - * 16 bit int + * if `wanType`==`dsl`, 16 bit int */ dslVci: number; /** - * if `wanType`==`dsl` - * 8 bit int + * if `wanType`==`dsl`, 8 bit int */ dslVpi: number; /** @@ -1286,7 +1299,7 @@ export namespace device { */ name?: string; /** - * if `usage`==`lan` + * if `usage`==`lan`, name of the `junipermist.org.Network` resource */ networks: string[]; /** @@ -1295,7 +1308,7 @@ export namespace device { outerVlanId?: number; poeDisabled: boolean; /** - * if `usage`==`lan` + * Only for SRX and if `usage`==`lan`, the Untagged VLAN Network */ portNetwork?: string; /** @@ -1332,36 +1345,37 @@ export namespace device { * port usage name. enum: `haControl`, `haData`, `lan`, `wan` */ usage: string; - /** - * if WAN interface is on a VLAN - */ - vlanId?: number; + vlanId?: string; /** * Property key is the VPN name */ vpnPaths?: {[key: string]: outputs.device.GatewayPortConfigVpnPaths}; /** - * when `wanType`==`broadband`. enum: `default`, `max`, `recommended` + * Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` */ wanArpPolicer: string; /** - * optional, if spoke should reach this port by a different IP + * Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP */ wanExtIp?: string; /** - * Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") */ wanExtraRoutes?: {[key: string]: outputs.device.GatewayPortConfigWanExtraRoutes}; /** - * if `usage`==`wan` + * Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + */ + wanNetworks: string[]; + /** + * Only if `usage`==`wan` */ wanProbeOverride?: outputs.device.GatewayPortConfigWanProbeOverride; /** - * optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip */ wanSourceNat?: outputs.device.GatewayPortConfigWanSourceNat; /** - * if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` */ wanType: string; } @@ -1376,12 +1390,15 @@ export namespace device { */ dnsSuffixes?: string[]; /** - * except for out-of_band interface (vme/em0/fxp0) + * except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") */ gateway?: string; + /** + * Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + */ ip?: string; /** - * used only if `subnet` is not specified in `networks` + * used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") */ netmask?: string; /** @@ -1408,11 +1425,14 @@ export namespace device { export interface GatewayPortConfigTrafficShaping { /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 */ classPercentages?: number[]; enabled: boolean; + /** + * Interface Transmit Cap in kbps + */ + maxTxKbps?: number; } export interface GatewayPortConfigVpnPaths { @@ -1441,11 +1461,14 @@ export namespace device { export interface GatewayPortConfigVpnPathsTrafficShaping { /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 */ classPercentages?: number[]; enabled: boolean; + /** + * Interface Transmit Cap in kbps + */ + maxTxKbps?: number; } export interface GatewayPortConfigWanExtraRoutes { @@ -1508,6 +1531,10 @@ export namespace device { * for SSR, hub decides how VRF routes are leaked on spoke */ addTargetVrfs?: string[]; + /** + * route aggregation + */ + aggregates?: string[]; /** * when used as export policy, optional */ @@ -1553,8 +1580,7 @@ export namespace device { vpnNeighborMacs?: string[]; vpnPathSla?: outputs.device.GatewayRoutingPoliciesTermMatchingVpnPathSla; /** - * overlay-facing criteria (used for bgpConfig where via=vpn) - * ordered- + * overlay-facing criteria (used for bgpConfig where via=vpn). ordered- */ vpnPaths?: string[]; } @@ -1562,8 +1588,7 @@ export namespace device { export interface GatewayRoutingPoliciesTermMatchingRouteExists { route?: string; /** - * name of the vrf instance - * it can also be the name of the VPN or wan if they + * name of the vrf instance, it can also be the name of the VPN or wan if they */ vrfName: string; } @@ -1594,8 +1619,7 @@ export namespace device { */ name?: string; /** - * by default, we derive all paths available and use them - * optionally, you can customize by using `pathPreference` + * by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` */ pathPreference?: string; /** @@ -1642,71 +1666,82 @@ export namespace device { export interface GatewayTunnelConfigs { autoProvision?: outputs.device.GatewayTunnelConfigsAutoProvision; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 */ ikeLifetime?: number; /** - * Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` */ ikeMode: string; /** - * if `provider`== `custom-ipsec` + * if `provider`==`custom-ipsec` */ ikeProposals?: outputs.device.GatewayTunnelConfigsIkeProposal[]; /** - * if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 */ ipsecLifetime?: number; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` */ ipsecProposals?: outputs.device.GatewayTunnelConfigsIpsecProposal[]; /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ localId?: string; /** - * enum: `active-active`, `active-standby` + * Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` */ mode: string; /** - * networks reachable via this tunnel + * if `provider`==`custom-ipsec`, networks reachable via this tunnel */ networks: string[]; + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + */ primary?: outputs.device.GatewayTunnelConfigsPrimary; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` */ probe?: outputs.device.GatewayTunnelConfigsProbe; /** - * Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` */ protocol?: string; /** - * enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` */ provider?: string; /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ psk?: string; + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + */ secondary?: outputs.device.GatewayTunnelConfigsSecondary; /** - * Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` */ version: string; } export interface GatewayTunnelConfigsAutoProvision { enable?: boolean; + /** + * API override for POP selection + */ latlng?: outputs.device.GatewayTunnelConfigsAutoProvisionLatlng; primary?: outputs.device.GatewayTunnelConfigsAutoProvisionPrimary; + /** + * enum: `jse-ipsec`, `zscaler-ipsec` + */ + provider: string; + /** + * API override for POP selection + */ + region?: string; secondary?: outputs.device.GatewayTunnelConfigsAutoProvisionSecondary; } @@ -1716,7 +1751,7 @@ export namespace device { } export interface GatewayTunnelConfigsAutoProvisionPrimary { - numHosts?: string; + probeIps?: string[]; /** * optional, only needed if `varsOnly`==`false` */ @@ -1724,7 +1759,7 @@ export namespace device { } export interface GatewayTunnelConfigsAutoProvisionSecondary { - numHosts?: string; + probeIps?: string[]; /** * optional, only needed if `varsOnly`==`false` */ @@ -1762,7 +1797,7 @@ export namespace device { */ authAlgo?: string; /** - * Only if `provider`== `custom-ipsec`. enum: + * Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -1782,19 +1817,17 @@ export namespace device { } export interface GatewayTunnelConfigsPrimary { - hosts?: string[]; + hosts: string[]; /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` */ internalIps?: string[]; probeIps?: string[]; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ remoteIds?: string[]; - wanNames?: string[]; + wanNames: string[]; } export interface GatewayTunnelConfigsProbe { @@ -1817,19 +1850,17 @@ export namespace device { } export interface GatewayTunnelConfigsSecondary { - hosts?: string[]; + hosts: string[]; /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` */ internalIps?: string[]; probeIps?: string[]; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ remoteIds?: string[]; - wanNames?: string[]; + wanNames: string[]; } export interface GatewayTunnelProviderOptions { @@ -1844,76 +1875,127 @@ export namespace device { } export interface GatewayTunnelProviderOptionsJse { - name?: string; numUsers?: number; + /** + * JSE Organization name + */ + orgName?: string; } export interface GatewayTunnelProviderOptionsZscaler { - aupAcceptanceRequired: boolean; + aupBlockInternetUntilAccepted?: boolean; /** - * days before AUP is requested again + * Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) */ - aupExpire: number; + aupEnabled?: boolean; /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser */ - aupSslProxy: boolean; + aupForceSslInspection?: boolean; /** - * the download bandwidth cap of the link, in Mbps + * Required if `aupEnabled`==`true`. Days before AUP is requested again */ - downloadMbps?: number; + aupTimeoutInDays?: number; /** - * if `useXff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to enforce user authentication */ - enableAup: boolean; + authRequired?: boolean; /** - * when `enforceAuthentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users */ - enableCaution: boolean; - enforceAuthentication: boolean; - name?: string; + cautionEnabled?: boolean; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + dnBandwidth?: number; + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + */ + idleTimeInMinutes?: number; + /** + * if `true`, enable the firewall control option + */ + ofwEnabled?: boolean; /** - * if `useXff`==`true` + * `sub-locations` can be used for specific uses cases to define different configuration based on the user network */ subLocations?: outputs.device.GatewayTunnelProviderOptionsZscalerSubLocation[]; /** - * the download bandwidth cap of the link, in Mbps + * Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies */ - uploadMbps?: number; + surrogateIp?: boolean; + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + */ + surrogateIpEnforcedForKnownBrowsers?: boolean; + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + */ + surrogateRefreshTimeInMinutes?: number; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + upBandwidth?: number; /** * location uses proxy chaining to forward traffic */ - useXff?: boolean; + xffForwardEnabled?: boolean; } export interface GatewayTunnelProviderOptionsZscalerSubLocation { - aupAcceptanceRequired: boolean; + aupBlockInternetUntilAccepted?: boolean; /** - * days before AUP is requested again + * Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) */ - aupExpire: number; + aupEnabled?: boolean; /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser */ - aupSslProxy: boolean; + aupForceSslInspection?: boolean; + /** + * Required if `aupEnabled`==`true`. Days before AUP is requested again + */ + aupTimeoutInDays?: number; + /** + * Enable this option to authenticate users + */ + authRequired?: boolean; /** - * the download bandwidth cap of the link, in Mbps + * Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users */ - downloadMbps?: number; + cautionEnabled?: boolean; /** - * if `useXff`==`true`, display Acceptable Use Policy (AUP) + * the download bandwidth cap of the link, in Mbps. Disabled if not set */ - enableAup?: boolean; + dnBandwidth?: number; /** - * when `enforceAuthentication`==`false`, display caution notification for non-authenticated users + * Required if `surrogate_IP`==`true`, idle Time to Disassociation */ - enableCaution: boolean; - enforceAuthentication: boolean; - subnets?: string[]; + idleTimeInMinutes?: number; /** - * the download bandwidth cap of the link, in Mbps + * Network name */ - uploadMbps?: number; + name?: string; + /** + * if `true`, enable the firewall control option + */ + ofwEnabled?: boolean; + /** + * Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + */ + surrogateIp?: boolean; + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + */ + surrogateIpEnforcedForKnownBrowsers?: boolean; + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + */ + surrogateRefreshTimeInMinutes?: number; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + upBandwidth?: number; } export interface GatewayVrfConfig { @@ -3436,14 +3518,16 @@ export namespace device { export interface SwitchAclPolicy { /** - * - for GBP-based policy, all srcTags and dstTags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Actions: + * - for GBP-based policy, all srcTags and dstTags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to */ actions?: outputs.device.SwitchAclPolicyAction[]; name?: string; /** - * - for GBP-based policy, all srcTags and dstTags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Source Tags: + * - for GBP-based policy, all srcTags and dstTags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to */ srcTags?: string[]; } @@ -3459,9 +3543,9 @@ export namespace device { export interface SwitchAclTags { /** * required if - * - `type`==`dynamicGbp` (gbp_tag received from RADIUS) - * - `type`==`gbpResource` - * - `type`==`staticGbp` (applying gbp tag against matching conditions) + * - `type`==`dynamicGbp` (gbp_tag received from RADIUS) + * - `type`==`gbpResource` + * - `type`==`staticGbp` (applying gbp tag against matching conditions) */ gbpTag?: number; /** @@ -3487,8 +3571,7 @@ export namespace device { */ radiusGroup?: string; /** - * if `type`==`resource` or `type`==`gbpResource` - * empty means unrestricted, i.e. any + * if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any */ specs?: outputs.device.SwitchAclTagsSpec[]; /** @@ -3519,7 +3602,7 @@ export namespace device { */ portRange: string; /** - * `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 + * `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 */ protocol: string; } @@ -3643,14 +3726,6 @@ export namespace device { value?: string; } - export interface SwitchEvpnConfig { - enabled: boolean; - /** - * enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - */ - role: string; - } - export interface SwitchExtraRoutes { /** * this takes precedence @@ -3719,9 +3794,7 @@ export namespace device { */ allNetworks: boolean; /** - * 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. - * 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. + * 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. 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. */ allowDhcpd?: boolean; allowMultipleSupplicants: boolean; @@ -3760,8 +3833,7 @@ export namespace device { */ guestNetwork?: string; /** - * inter_switch_link is used together with "isolation" under networks - * NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + * inter_switch_link is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together */ interSwitchLink: boolean; /** @@ -3792,6 +3864,10 @@ export namespace device { * Only if `mode`==`trunk`, the list of network/vlans */ networks?: string[]; + /** + * Additional note for the port config override + */ + note?: string; /** * Only if `mode`==`access` and `portAuth`!=`dot1x` whether the port should retain dynamically learned MAC addresses */ @@ -3886,8 +3962,7 @@ export namespace device { */ gateway6?: string; /** - * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) - * NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set + * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set */ isolation: boolean; isolationVlanId?: string; @@ -4080,9 +4155,7 @@ export namespace device { */ allNetworks: boolean; /** - * 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. - * 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. + * 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. 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. */ allowDhcpd?: boolean; /** @@ -4130,8 +4203,7 @@ export namespace device { */ guestNetwork?: string; /** - * Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks - * NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + * Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together */ interSwitchLink: boolean; /** @@ -4203,8 +4275,7 @@ export namespace device { */ speed: string; /** - * Switch storm control - * Only if `mode`!=`dynamic` + * Switch storm control. Only if `mode`!=`dynamic` */ stormControl?: outputs.device.SwitchPortUsagesStormControl; /** @@ -4284,8 +4355,7 @@ export namespace device { */ authServersTimeout: number; /** - * use `network`or `sourceIp` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip */ network?: string; /** @@ -4590,8 +4660,7 @@ export namespace device { export interface SwitchSnmpConfigV3ConfigUsmUser { /** - * Not required if `authenticationType`==`authenticationNone` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. */ authenticationPassword?: string; /** @@ -4599,8 +4668,7 @@ export namespace device { */ authenticationType?: string; /** - * Not required if `encryptionType`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters */ encryptionPassword?: string; /** @@ -5423,8 +5491,7 @@ export namespace org { */ exportPolicy?: string; /** - * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this */ extendedV4Nexthop?: boolean; /** @@ -5663,6 +5730,9 @@ export namespace org { routedForNetworks?: string[]; subnet: string; subnet6?: string; + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + */ tenants?: {[key: string]: outputs.org.DeviceprofileGatewayNetworkTenants}; vlanId?: string; /** @@ -5678,7 +5748,7 @@ export namespace org { export interface DeviceprofileGatewayNetworkInternetAccess { createSimpleServicePolicy: boolean; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ destinationNat?: {[key: string]: outputs.org.DeviceprofileGatewayNetworkInternetAccessDestinationNat}; enabled?: boolean; @@ -5687,22 +5757,35 @@ export namespace org { */ restricted: boolean; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat?: {[key: string]: outputs.org.DeviceprofileGatewayNetworkInternetAccessStaticNat}; } export interface DeviceprofileGatewayNetworkInternetAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: string; name?: string; - port?: number; + /** + * The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + */ + port?: string; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + */ + wanName?: string; } export interface DeviceprofileGatewayNetworkInternetAccessStaticNat { - internalIp?: string; - name?: string; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + */ + internalIp: string; + name: string; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") */ wanName?: string; } @@ -5740,9 +5823,9 @@ export namespace org { */ allowPing?: boolean; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ - destinationNat: {[key: string]: outputs.org.DeviceprofileGatewayNetworkVpnAccessDestinationNat}; + destinationNat?: {[key: string]: outputs.org.DeviceprofileGatewayNetworkVpnAccessDestinationNat}; /** * if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub */ @@ -5756,13 +5839,11 @@ export namespace org { */ noReadvertiseToLanOspf: boolean; /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes */ noReadvertiseToOverlay?: boolean; /** - * by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs */ otherVrfs: string[]; /** @@ -5774,12 +5855,11 @@ export namespace org { */ sourceNat: outputs.org.DeviceprofileGatewayNetworkVpnAccessSourceNat; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat: {[key: string]: outputs.org.DeviceprofileGatewayNetworkVpnAccessStaticNat}; /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes */ summarizedSubnet?: string; /** @@ -5793,9 +5873,12 @@ export namespace org { } export interface DeviceprofileGatewayNetworkVpnAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: string; name?: string; - port?: number; + port?: string; } export interface DeviceprofileGatewayNetworkVpnAccessSourceNat { @@ -5803,12 +5886,11 @@ export namespace org { } export interface DeviceprofileGatewayNetworkVpnAccessStaticNat { - internalIp?: string; - name?: string; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") */ - wanName?: string; + internalIp: string; + name: string; } export interface DeviceprofileGatewayOobIpConfig { @@ -5924,9 +6006,7 @@ export namespace org { */ aeIdx?: string; /** - * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only */ aeLacpForceUp: boolean; aggregated: boolean; @@ -5934,6 +6014,9 @@ export namespace org { * if want to generate port up/down alarm, set it to true */ critical: boolean; + /** + * Interface Description. Can be a variable (i.e. "{{myvar}}") + */ description?: string; disableAutoneg: boolean; /** @@ -5945,13 +6028,11 @@ export namespace org { */ dslType: string; /** - * if `wanType`==`dsl` - * 16 bit int + * if `wanType`==`dsl`, 16 bit int */ dslVci: number; /** - * if `wanType`==`dsl` - * 8 bit int + * if `wanType`==`dsl`, 8 bit int */ dslVpi: number; /** @@ -5985,7 +6066,7 @@ export namespace org { */ name?: string; /** - * if `usage`==`lan` + * if `usage`==`lan`, name of the `junipermist.org.Network` resource */ networks: string[]; /** @@ -5994,7 +6075,7 @@ export namespace org { outerVlanId?: number; poeDisabled: boolean; /** - * if `usage`==`lan` + * Only for SRX and if `usage`==`lan`, the Untagged VLAN Network */ portNetwork?: string; /** @@ -6031,36 +6112,37 @@ export namespace org { * port usage name. enum: `haControl`, `haData`, `lan`, `wan` */ usage: string; - /** - * if WAN interface is on a VLAN - */ - vlanId?: number; + vlanId?: string; /** * Property key is the VPN name */ vpnPaths?: {[key: string]: outputs.org.DeviceprofileGatewayPortConfigVpnPaths}; /** - * when `wanType`==`broadband`. enum: `default`, `max`, `recommended` + * Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` */ wanArpPolicer: string; /** - * optional, if spoke should reach this port by a different IP + * Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP */ wanExtIp?: string; /** - * Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") */ wanExtraRoutes?: {[key: string]: outputs.org.DeviceprofileGatewayPortConfigWanExtraRoutes}; /** - * if `usage`==`wan` + * Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + */ + wanNetworks: string[]; + /** + * Only if `usage`==`wan` */ wanProbeOverride?: outputs.org.DeviceprofileGatewayPortConfigWanProbeOverride; /** - * optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip */ wanSourceNat?: outputs.org.DeviceprofileGatewayPortConfigWanSourceNat; /** - * if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` */ wanType: string; } @@ -6075,12 +6157,15 @@ export namespace org { */ dnsSuffixes?: string[]; /** - * except for out-of_band interface (vme/em0/fxp0) + * except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") */ gateway?: string; + /** + * Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + */ ip?: string; /** - * used only if `subnet` is not specified in `networks` + * used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") */ netmask?: string; /** @@ -6107,11 +6192,14 @@ export namespace org { export interface DeviceprofileGatewayPortConfigTrafficShaping { /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 */ classPercentages?: number[]; enabled: boolean; + /** + * Interface Transmit Cap in kbps + */ + maxTxKbps?: number; } export interface DeviceprofileGatewayPortConfigVpnPaths { @@ -6140,11 +6228,14 @@ export namespace org { export interface DeviceprofileGatewayPortConfigVpnPathsTrafficShaping { /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 */ classPercentages?: number[]; enabled: boolean; + /** + * Interface Transmit Cap in kbps + */ + maxTxKbps?: number; } export interface DeviceprofileGatewayPortConfigWanExtraRoutes { @@ -6195,6 +6286,10 @@ export namespace org { * for SSR, hub decides how VRF routes are leaked on spoke */ addTargetVrfs?: string[]; + /** + * route aggregation + */ + aggregates?: string[]; /** * when used as export policy, optional */ @@ -6240,8 +6335,7 @@ export namespace org { vpnNeighborMacs?: string[]; vpnPathSla?: outputs.org.DeviceprofileGatewayRoutingPoliciesTermMatchingVpnPathSla; /** - * overlay-facing criteria (used for bgpConfig where via=vpn) - * ordered- + * overlay-facing criteria (used for bgpConfig where via=vpn). ordered- */ vpnPaths?: string[]; } @@ -6249,8 +6343,7 @@ export namespace org { export interface DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExists { route?: string; /** - * name of the vrf instance - * it can also be the name of the VPN or wan if they + * name of the vrf instance, it can also be the name of the VPN or wan if they */ vrfName: string; } @@ -6281,8 +6374,7 @@ export namespace org { */ name?: string; /** - * by default, we derive all paths available and use them - * optionally, you can customize by using `pathPreference` + * by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` */ pathPreference?: string; /** @@ -6329,71 +6421,82 @@ export namespace org { export interface DeviceprofileGatewayTunnelConfigs { autoProvision?: outputs.org.DeviceprofileGatewayTunnelConfigsAutoProvision; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 */ ikeLifetime?: number; /** - * Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` */ ikeMode: string; /** - * if `provider`== `custom-ipsec` + * if `provider`==`custom-ipsec` */ ikeProposals?: outputs.org.DeviceprofileGatewayTunnelConfigsIkeProposal[]; /** - * if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 */ ipsecLifetime?: number; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` */ ipsecProposals?: outputs.org.DeviceprofileGatewayTunnelConfigsIpsecProposal[]; /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ localId?: string; /** - * enum: `active-active`, `active-standby` + * Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` */ mode: string; /** - * networks reachable via this tunnel + * if `provider`==`custom-ipsec`, networks reachable via this tunnel */ networks: string[]; + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + */ primary?: outputs.org.DeviceprofileGatewayTunnelConfigsPrimary; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` */ probe?: outputs.org.DeviceprofileGatewayTunnelConfigsProbe; /** - * Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` */ protocol?: string; /** - * enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` */ provider?: string; /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ psk?: string; + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + */ secondary?: outputs.org.DeviceprofileGatewayTunnelConfigsSecondary; /** - * Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` */ version: string; } export interface DeviceprofileGatewayTunnelConfigsAutoProvision { enable?: boolean; + /** + * API override for POP selection + */ latlng?: outputs.org.DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng; primary?: outputs.org.DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary; + /** + * enum: `jse-ipsec`, `zscaler-ipsec` + */ + provider: string; + /** + * API override for POP selection + */ + region?: string; secondary?: outputs.org.DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary; } @@ -6403,7 +6506,7 @@ export namespace org { } export interface DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary { - numHosts?: string; + probeIps?: string[]; /** * optional, only needed if `varsOnly`==`false` */ @@ -6411,7 +6514,7 @@ export namespace org { } export interface DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary { - numHosts?: string; + probeIps?: string[]; /** * optional, only needed if `varsOnly`==`false` */ @@ -6449,7 +6552,7 @@ export namespace org { */ authAlgo?: string; /** - * Only if `provider`== `custom-ipsec`. enum: + * Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -6469,19 +6572,17 @@ export namespace org { } export interface DeviceprofileGatewayTunnelConfigsPrimary { - hosts?: string[]; + hosts: string[]; /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` */ internalIps?: string[]; probeIps?: string[]; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ remoteIds?: string[]; - wanNames?: string[]; + wanNames: string[]; } export interface DeviceprofileGatewayTunnelConfigsProbe { @@ -6504,19 +6605,17 @@ export namespace org { } export interface DeviceprofileGatewayTunnelConfigsSecondary { - hosts?: string[]; + hosts: string[]; /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` */ internalIps?: string[]; probeIps?: string[]; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ remoteIds?: string[]; - wanNames?: string[]; + wanNames: string[]; } export interface DeviceprofileGatewayTunnelProviderOptions { @@ -6531,76 +6630,127 @@ export namespace org { } export interface DeviceprofileGatewayTunnelProviderOptionsJse { - name?: string; numUsers?: number; + /** + * JSE Organization name + */ + orgName?: string; } export interface DeviceprofileGatewayTunnelProviderOptionsZscaler { - aupAcceptanceRequired: boolean; + aupBlockInternetUntilAccepted?: boolean; /** - * days before AUP is requested again + * Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) */ - aupExpire: number; + aupEnabled?: boolean; /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser */ - aupSslProxy: boolean; + aupForceSslInspection?: boolean; /** - * the download bandwidth cap of the link, in Mbps + * Required if `aupEnabled`==`true`. Days before AUP is requested again */ - downloadMbps?: number; + aupTimeoutInDays?: number; /** - * if `useXff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to enforce user authentication */ - enableAup: boolean; + authRequired?: boolean; /** - * when `enforceAuthentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users */ - enableCaution: boolean; - enforceAuthentication: boolean; - name?: string; + cautionEnabled?: boolean; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + dnBandwidth?: number; /** - * if `useXff`==`true` + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + */ + idleTimeInMinutes?: number; + /** + * if `true`, enable the firewall control option + */ + ofwEnabled?: boolean; + /** + * `sub-locations` can be used for specific uses cases to define different configuration based on the user network */ subLocations?: outputs.org.DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation[]; /** - * the download bandwidth cap of the link, in Mbps + * Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + */ + surrogateIp?: boolean; + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + */ + surrogateIpEnforcedForKnownBrowsers?: boolean; + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy */ - uploadMbps?: number; + surrogateRefreshTimeInMinutes?: number; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + upBandwidth?: number; /** * location uses proxy chaining to forward traffic */ - useXff?: boolean; + xffForwardEnabled?: boolean; } export interface DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation { - aupAcceptanceRequired: boolean; + aupBlockInternetUntilAccepted?: boolean; /** - * days before AUP is requested again + * Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) */ - aupExpire: number; + aupEnabled?: boolean; /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser */ - aupSslProxy: boolean; + aupForceSslInspection?: boolean; /** - * the download bandwidth cap of the link, in Mbps + * Required if `aupEnabled`==`true`. Days before AUP is requested again */ - downloadMbps?: number; + aupTimeoutInDays?: number; /** - * if `useXff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to authenticate users */ - enableAup?: boolean; + authRequired?: boolean; /** - * when `enforceAuthentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users */ - enableCaution: boolean; - enforceAuthentication: boolean; - subnets?: string[]; + cautionEnabled?: boolean; /** - * the download bandwidth cap of the link, in Mbps + * the download bandwidth cap of the link, in Mbps. Disabled if not set */ - uploadMbps?: number; + dnBandwidth?: number; + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + */ + idleTimeInMinutes?: number; + /** + * Network name + */ + name?: string; + /** + * if `true`, enable the firewall control option + */ + ofwEnabled?: boolean; + /** + * Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + */ + surrogateIp?: boolean; + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + */ + surrogateIpEnforcedForKnownBrowsers?: boolean; + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + */ + surrogateRefreshTimeInMinutes?: number; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + upBandwidth?: number; } export interface DeviceprofileGatewayVrfConfig { @@ -6726,8 +6876,7 @@ export namespace org { */ exportPolicy?: string; /** - * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - * for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + * by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this */ extendedV4Nexthop?: boolean; /** @@ -6966,6 +7115,9 @@ export namespace org { routedForNetworks?: string[]; subnet: string; subnet6?: string; + /** + * Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + */ tenants?: {[key: string]: outputs.org.GatewaytemplateNetworkTenants}; vlanId?: string; /** @@ -6981,7 +7133,7 @@ export namespace org { export interface GatewaytemplateNetworkInternetAccess { createSimpleServicePolicy: boolean; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ destinationNat?: {[key: string]: outputs.org.GatewaytemplateNetworkInternetAccessDestinationNat}; enabled?: boolean; @@ -6990,22 +7142,35 @@ export namespace org { */ restricted: boolean; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat?: {[key: string]: outputs.org.GatewaytemplateNetworkInternetAccessStaticNat}; } export interface GatewaytemplateNetworkInternetAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: string; name?: string; - port?: number; + /** + * The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + */ + port?: string; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + */ + wanName?: string; } export interface GatewaytemplateNetworkInternetAccessStaticNat { - internalIp?: string; - name?: string; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + */ + internalIp: string; + name: string; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") */ wanName?: string; } @@ -7043,9 +7208,9 @@ export namespace org { */ allowPing?: boolean; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ - destinationNat: {[key: string]: outputs.org.GatewaytemplateNetworkVpnAccessDestinationNat}; + destinationNat?: {[key: string]: outputs.org.GatewaytemplateNetworkVpnAccessDestinationNat}; /** * if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub */ @@ -7059,13 +7224,11 @@ export namespace org { */ noReadvertiseToLanOspf: boolean; /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes */ noReadvertiseToOverlay?: boolean; /** - * by default, the routes are only readvertised toward the same vrf on spoke - * to allow it to be leaked to other vrfs + * by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs */ otherVrfs: string[]; /** @@ -7077,12 +7240,11 @@ export namespace org { */ sourceNat: outputs.org.GatewaytemplateNetworkVpnAccessSourceNat; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat: {[key: string]: outputs.org.GatewaytemplateNetworkVpnAccessStaticNat}; /** - * toward overlay - * how HUB should deal with routes it received from Spokes + * toward overlay, how HUB should deal with routes it received from Spokes */ summarizedSubnet?: string; /** @@ -7096,9 +7258,12 @@ export namespace org { } export interface GatewaytemplateNetworkVpnAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: string; name?: string; - port?: number; + port?: string; } export interface GatewaytemplateNetworkVpnAccessSourceNat { @@ -7106,12 +7271,11 @@ export namespace org { } export interface GatewaytemplateNetworkVpnAccessStaticNat { - internalIp?: string; - name?: string; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") */ - wanName?: string; + internalIp: string; + name: string; } export interface GatewaytemplateOobIpConfig { @@ -7227,9 +7391,7 @@ export namespace org { */ aeIdx?: string; /** - * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\n - * Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\n - * Note: Turning this on will enable force-up on one of the interfaces in the bundle only + * For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only */ aeLacpForceUp: boolean; aggregated: boolean; @@ -7237,6 +7399,9 @@ export namespace org { * if want to generate port up/down alarm, set it to true */ critical: boolean; + /** + * Interface Description. Can be a variable (i.e. "{{myvar}}") + */ description?: string; disableAutoneg: boolean; /** @@ -7248,13 +7413,11 @@ export namespace org { */ dslType: string; /** - * if `wanType`==`dsl` - * 16 bit int + * if `wanType`==`dsl`, 16 bit int */ dslVci: number; /** - * if `wanType`==`dsl` - * 8 bit int + * if `wanType`==`dsl`, 8 bit int */ dslVpi: number; /** @@ -7288,7 +7451,7 @@ export namespace org { */ name?: string; /** - * if `usage`==`lan` + * if `usage`==`lan`, name of the `junipermist.org.Network` resource */ networks: string[]; /** @@ -7297,7 +7460,7 @@ export namespace org { outerVlanId?: number; poeDisabled: boolean; /** - * if `usage`==`lan` + * Only for SRX and if `usage`==`lan`, the Untagged VLAN Network */ portNetwork?: string; /** @@ -7307,7 +7470,7 @@ export namespace org { /** * if HA mode */ - redundant?: boolean; + redundant: boolean; /** * if HA mode */ @@ -7334,36 +7497,37 @@ export namespace org { * port usage name. enum: `haControl`, `haData`, `lan`, `wan` */ usage: string; - /** - * if WAN interface is on a VLAN - */ - vlanId?: number; + vlanId?: string; /** * Property key is the VPN name */ vpnPaths?: {[key: string]: outputs.org.GatewaytemplatePortConfigVpnPaths}; /** - * when `wanType`==`broadband`. enum: `default`, `max`, `recommended` + * Only when `wanType`==`broadband`. enum: `default`, `max`, `recommended` */ wanArpPolicer: string; /** - * optional, if spoke should reach this port by a different IP + * Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP */ wanExtIp?: string; /** - * Property Key is the destianation CIDR (e.g "100.100.100.0/24") + * Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") */ wanExtraRoutes?: {[key: string]: outputs.org.GatewaytemplatePortConfigWanExtraRoutes}; /** - * if `usage`==`wan` + * Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + */ + wanNetworks: string[]; + /** + * Only if `usage`==`wan` */ wanProbeOverride?: outputs.org.GatewaytemplatePortConfigWanProbeOverride; /** - * optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + * Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip */ wanSourceNat?: outputs.org.GatewaytemplatePortConfigWanSourceNat; /** - * if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + * Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` */ wanType: string; } @@ -7378,12 +7542,15 @@ export namespace org { */ dnsSuffixes?: string[]; /** - * except for out-of_band interface (vme/em0/fxp0) + * except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") */ gateway?: string; + /** + * Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + */ ip?: string; /** - * used only if `subnet` is not specified in `networks` + * used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") */ netmask?: string; /** @@ -7410,11 +7577,14 @@ export namespace org { export interface GatewaytemplatePortConfigTrafficShaping { /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 */ classPercentages?: number[]; enabled: boolean; + /** + * Interface Transmit Cap in kbps + */ + maxTxKbps?: number; } export interface GatewaytemplatePortConfigVpnPaths { @@ -7443,11 +7613,14 @@ export namespace org { export interface GatewaytemplatePortConfigVpnPathsTrafficShaping { /** - * percentages for differet class of traffic: high / medium / low / best-effort - * sum must be equal to 100 + * percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 */ classPercentages?: number[]; enabled: boolean; + /** + * Interface Transmit Cap in kbps + */ + maxTxKbps?: number; } export interface GatewaytemplatePortConfigWanExtraRoutes { @@ -7498,6 +7671,10 @@ export namespace org { * for SSR, hub decides how VRF routes are leaked on spoke */ addTargetVrfs?: string[]; + /** + * route aggregation + */ + aggregates?: string[]; /** * when used as export policy, optional */ @@ -7543,8 +7720,7 @@ export namespace org { vpnNeighborMacs?: string[]; vpnPathSla?: outputs.org.GatewaytemplateRoutingPoliciesTermMatchingVpnPathSla; /** - * overlay-facing criteria (used for bgpConfig where via=vpn) - * ordered- + * overlay-facing criteria (used for bgpConfig where via=vpn). ordered- */ vpnPaths?: string[]; } @@ -7552,8 +7728,7 @@ export namespace org { export interface GatewaytemplateRoutingPoliciesTermMatchingRouteExists { route?: string; /** - * name of the vrf instance - * it can also be the name of the VPN or wan if they + * name of the vrf instance, it can also be the name of the VPN or wan if they */ vrfName: string; } @@ -7584,8 +7759,7 @@ export namespace org { */ name?: string; /** - * by default, we derive all paths available and use them - * optionally, you can customize by using `pathPreference` + * by default, we derive all paths available and use them. Optionally, you can customize by using `pathPreference` */ pathPreference?: string; /** @@ -7632,71 +7806,82 @@ export namespace org { export interface GatewaytemplateTunnelConfigs { autoProvision?: outputs.org.GatewaytemplateTunnelConfigsAutoProvision; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 */ ikeLifetime?: number; /** - * Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + * Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` */ ikeMode: string; /** - * if `provider`== `custom-ipsec` + * if `provider`==`custom-ipsec` */ ikeProposals?: outputs.org.GatewaytemplateTunnelConfigsIkeProposal[]; /** - * if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 */ ipsecLifetime?: number; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` */ ipsecProposals?: outputs.org.GatewaytemplateTunnelConfigsIpsecProposal[]; /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ localId?: string; /** - * enum: `active-active`, `active-standby` + * Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` */ mode: string; /** - * networks reachable via this tunnel + * if `provider`==`custom-ipsec`, networks reachable via this tunnel */ networks: string[]; + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + */ primary?: outputs.org.GatewaytemplateTunnelConfigsPrimary; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`custom-ipsec` */ probe?: outputs.org.GatewaytemplateTunnelConfigsProbe; /** - * Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + * Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` */ protocol?: string; /** - * enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + * Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` */ provider?: string; /** - * Only if: - * * `provider`== `zscaler-ipsec` - * * `provider`==`jse-ipsec` - * * `provider`== `custom-ipsec` + * Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ psk?: string; + /** + * Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + */ secondary?: outputs.org.GatewaytemplateTunnelConfigsSecondary; /** - * Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + * Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` */ version: string; } export interface GatewaytemplateTunnelConfigsAutoProvision { enable?: boolean; + /** + * API override for POP selection + */ latlng?: outputs.org.GatewaytemplateTunnelConfigsAutoProvisionLatlng; primary?: outputs.org.GatewaytemplateTunnelConfigsAutoProvisionPrimary; + /** + * enum: `jse-ipsec`, `zscaler-ipsec` + */ + provider: string; + /** + * API override for POP selection + */ + region?: string; secondary?: outputs.org.GatewaytemplateTunnelConfigsAutoProvisionSecondary; } @@ -7706,7 +7891,7 @@ export namespace org { } export interface GatewaytemplateTunnelConfigsAutoProvisionPrimary { - numHosts?: string; + probeIps?: string[]; /** * optional, only needed if `varsOnly`==`false` */ @@ -7714,7 +7899,7 @@ export namespace org { } export interface GatewaytemplateTunnelConfigsAutoProvisionSecondary { - numHosts?: string; + probeIps?: string[]; /** * optional, only needed if `varsOnly`==`false` */ @@ -7752,7 +7937,7 @@ export namespace org { */ authAlgo?: string; /** - * Only if `provider`== `custom-ipsec`. enum: + * Only if `provider`==`custom-ipsec`. enum: * * 1 * * 2 (1024-bit) * * 5 @@ -7772,19 +7957,17 @@ export namespace org { } export interface GatewaytemplateTunnelConfigsPrimary { - hosts?: string[]; + hosts: string[]; /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` */ internalIps?: string[]; probeIps?: string[]; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ remoteIds?: string[]; - wanNames?: string[]; + wanNames: string[]; } export interface GatewaytemplateTunnelConfigsProbe { @@ -7807,19 +7990,17 @@ export namespace org { } export interface GatewaytemplateTunnelConfigsSecondary { - hosts?: string[]; + hosts: string[]; /** - * Only if: - * * `provider`== `zscaler-gre` - * * `provider`== `custom-gre` + * Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` */ internalIps?: string[]; probeIps?: string[]; /** - * Only if `provider`== `custom-ipsec` + * Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` */ remoteIds?: string[]; - wanNames?: string[]; + wanNames: string[]; } export interface GatewaytemplateTunnelProviderOptions { @@ -7834,76 +8015,127 @@ export namespace org { } export interface GatewaytemplateTunnelProviderOptionsJse { - name?: string; numUsers?: number; + /** + * JSE Organization name + */ + orgName?: string; } export interface GatewaytemplateTunnelProviderOptionsZscaler { - aupAcceptanceRequired?: boolean; + aupBlockInternetUntilAccepted?: boolean; /** - * days before AUP is requested again + * Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) */ - aupExpire?: number; + aupEnabled?: boolean; /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser */ - aupSslProxy?: boolean; + aupForceSslInspection?: boolean; /** - * the download bandwidth cap of the link, in Mbps + * Required if `aupEnabled`==`true`. Days before AUP is requested again */ - downloadMbps?: number; + aupTimeoutInDays?: number; /** - * if `useXff`==`true`, display Acceptable Use Policy (AUP) + * Enable this option to enforce user authentication */ - enableAup?: boolean; + authRequired?: boolean; /** - * when `enforceAuthentication`==`false`, display caution notification for non-authenticated users + * Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users */ - enableCaution?: boolean; - enforceAuthentication?: boolean; - name?: string; + cautionEnabled?: boolean; /** - * if `useXff`==`true` + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + dnBandwidth?: number; + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + */ + idleTimeInMinutes?: number; + /** + * if `true`, enable the firewall control option + */ + ofwEnabled?: boolean; + /** + * `sub-locations` can be used for specific uses cases to define different configuration based on the user network */ subLocations?: outputs.org.GatewaytemplateTunnelProviderOptionsZscalerSubLocation[]; /** - * the download bandwidth cap of the link, in Mbps + * Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + */ + surrogateIp?: boolean; + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers */ - uploadMbps?: number; + surrogateIpEnforcedForKnownBrowsers?: boolean; + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + */ + surrogateRefreshTimeInMinutes?: number; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + upBandwidth?: number; /** * location uses proxy chaining to forward traffic */ - useXff?: boolean; + xffForwardEnabled?: boolean; } export interface GatewaytemplateTunnelProviderOptionsZscalerSubLocation { - aupAcceptanceRequired: boolean; + aupBlockInternetUntilAccepted?: boolean; /** - * days before AUP is requested again + * Can only be `true` when `authRequired`==`false`, display Acceptable Use Policy (AUP) */ - aupExpire: number; + aupEnabled?: boolean; /** * proxy HTTPs traffic, requiring Zscaler cert to be installed in browser */ - aupSslProxy: boolean; + aupForceSslInspection?: boolean; + /** + * Required if `aupEnabled`==`true`. Days before AUP is requested again + */ + aupTimeoutInDays?: number; /** - * the download bandwidth cap of the link, in Mbps + * Enable this option to authenticate users */ - downloadMbps?: number; + authRequired?: boolean; /** - * if `useXff`==`true`, display Acceptable Use Policy (AUP) + * Can only be `true` when `authRequired`==`false`, display caution notification for non-authenticated users */ - enableAup?: boolean; + cautionEnabled?: boolean; /** - * when `enforceAuthentication`==`false`, display caution notification for non-authenticated users + * the download bandwidth cap of the link, in Mbps. Disabled if not set */ - enableCaution: boolean; - enforceAuthentication: boolean; - subnets?: string[]; + dnBandwidth?: number; + /** + * Required if `surrogate_IP`==`true`, idle Time to Disassociation + */ + idleTimeInMinutes?: number; + /** + * Network name + */ + name?: string; /** - * the download bandwidth cap of the link, in Mbps + * if `true`, enable the firewall control option */ - uploadMbps?: number; + ofwEnabled?: boolean; + /** + * Can only be `true` when `authRequired`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + */ + surrogateIp?: boolean; + /** + * Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + */ + surrogateIpEnforcedForKnownBrowsers?: boolean; + /** + * Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idleTimeInMinutes`, refresh Time for re-validation of Surrogacy + */ + surrogateRefreshTimeInMinutes?: number; + /** + * the download bandwidth cap of the link, in Mbps. Disabled if not set + */ + upBandwidth?: number; } export interface GatewaytemplateVrfConfig { @@ -8543,7 +8775,7 @@ export namespace org { export interface NetworkInternetAccess { createSimpleServicePolicy: boolean; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ destinationNat?: {[key: string]: outputs.org.NetworkInternetAccessDestinationNat}; enabled?: boolean; @@ -8552,26 +8784,58 @@ export namespace org { */ restricted: boolean; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat?: {[key: string]: outputs.org.NetworkInternetAccessStaticNat}; } export interface NetworkInternetAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: string; name?: string; - port?: number; + /** + * The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + */ + port?: string; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + */ + wanName?: string; } export interface NetworkInternetAccessStaticNat { - internalIp?: string; - name?: string; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + */ + internalIp: string; + name: string; + /** + * SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") */ wanName?: string; } + export interface NetworkMulticast { + /** + * if the network will only be the soruce of the multicast traffic, IGMP can be disabled + */ + disableIgmp: boolean; + enabled: boolean; + /** + * Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + */ + groups?: {[key: string]: outputs.org.NetworkMulticastGroups}; + } + + export interface NetworkMulticastGroups { + /** + * RP (rendezvous point) IP Address + */ + rpIp?: string; + } + export interface NetworkTenants { addresses?: string[]; } @@ -8586,9 +8850,9 @@ export namespace org { */ allowPing?: boolean; /** - * Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + * Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internalIp` or `port` must be defined */ - destinationNat: {[key: string]: outputs.org.NetworkVpnAccessDestinationNat}; + destinationNat?: {[key: string]: outputs.org.NetworkVpnAccessDestinationNat}; /** * if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub */ @@ -8620,7 +8884,7 @@ export namespace org { */ sourceNat: outputs.org.NetworkVpnAccessSourceNat; /** - * Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + * Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") */ staticNat: {[key: string]: outputs.org.NetworkVpnAccessStaticNat}; /** @@ -8639,9 +8903,12 @@ export namespace org { } export interface NetworkVpnAccessDestinationNat { + /** + * The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + */ internalIp?: string; name?: string; - port?: number; + port?: string; } export interface NetworkVpnAccessSourceNat { @@ -8649,24 +8916,25 @@ export namespace org { } export interface NetworkVpnAccessStaticNat { - internalIp?: string; - name?: string; /** - * If not set, we configure the nat policies against all WAN ports for simplicity + * The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") */ - wanName?: string; + internalIp: string; + name: string; } export interface NetworktemplateAclPolicy { /** - * - for GBP-based policy, all srcTags and dstTags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Actions: + * - for GBP-based policy, all srcTags and dstTags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to */ actions?: outputs.org.NetworktemplateAclPolicyAction[]; name?: string; /** - * - for GBP-based policy, all srcTags and dstTags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Source Tags: + * - for GBP-based policy, all srcTags and dstTags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to */ srcTags?: string[]; } @@ -8682,9 +8950,9 @@ export namespace org { export interface NetworktemplateAclTags { /** * required if - * - `type`==`dynamicGbp` (gbp_tag received from RADIUS) - * - `type`==`gbpResource` - * - `type`==`staticGbp` (applying gbp tag against matching conditions) + * - `type`==`dynamicGbp` (gbp_tag received from RADIUS) + * - `type`==`gbpResource` + * - `type`==`staticGbp` (applying gbp tag against matching conditions) */ gbpTag?: number; /** @@ -8710,8 +8978,7 @@ export namespace org { */ radiusGroup?: string; /** - * if `type`==`resource` or `type`==`gbpResource` - * empty means unrestricted, i.e. any + * if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any */ specs?: outputs.org.NetworktemplateAclTagsSpec[]; /** @@ -8742,7 +9009,7 @@ export namespace org { */ portRange: string; /** - * `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 + * `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 */ protocol: string; } @@ -8819,8 +9086,7 @@ export namespace org { */ gateway6?: string; /** - * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) - * NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set + * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set */ isolation: boolean; isolationVlanId?: string; @@ -8906,9 +9172,7 @@ export namespace org { */ allNetworks: boolean; /** - * 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. - * 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. + * 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. 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. */ allowDhcpd?: boolean; /** @@ -8956,8 +9220,7 @@ export namespace org { */ guestNetwork?: string; /** - * Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks - * NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + * Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together */ interSwitchLink: boolean; /** @@ -9029,8 +9292,7 @@ export namespace org { */ speed: string; /** - * Switch storm control - * Only if `mode`!=`dynamic` + * Switch storm control. Only if `mode`!=`dynamic` */ stormControl?: outputs.org.NetworktemplatePortUsagesStormControl; /** @@ -9114,8 +9376,7 @@ export namespace org { */ authServersTimeout: number; /** - * use `network`or `sourceIp` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip */ network?: string; /** @@ -9420,8 +9681,7 @@ export namespace org { export interface NetworktemplateSnmpConfigV3ConfigUsmUser { /** - * Not required if `authenticationType`==`authenticationNone` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. */ authenticationPassword?: string; /** @@ -9429,8 +9689,7 @@ export namespace org { */ authenticationType?: string; /** - * Not required if `encryptionType`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters */ encryptionPassword?: string; /** @@ -9561,8 +9820,7 @@ Please update your configurations. */ portConfig?: {[key: string]: outputs.org.NetworktemplateSwitchMatchingRulePortConfig}; /** - * Property key is the port mirroring instance name - * portMirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + * Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed */ portMirroring?: {[key: string]: outputs.org.NetworktemplateSwitchMatchingRulePortMirroring}; } @@ -10539,8 +10797,7 @@ Please update your configurations. apps?: {[key: string]: number}; enabled: boolean; /** - * Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtagId` */ wxtagIds: {[key: string]: number}; } @@ -10709,8 +10966,7 @@ Please update your configurations. export interface WlanDnsServerRewrite { enabled: boolean; /** - * map between radiusGroup and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * map between radiusGroup and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server */ radiusGroups?: {[key: string]: string}; } @@ -10723,8 +10979,7 @@ Please update your configurations. defaultVlanId?: string; enabled: boolean; /** - * when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto */ forceLookup: boolean; /** @@ -11785,13 +12040,11 @@ Please update your configurations. enabled?: boolean; idleTimeout?: number; /** - * To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids */ mxclusterIds: string[]; /** - * default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `useSiteMxedge` */ proxyHosts: string[]; /** @@ -12130,14 +12383,16 @@ export namespace site { export interface NetworktemplateAclPolicy { /** - * - for GBP-based policy, all srcTags and dstTags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Actions: + * - for GBP-based policy, all srcTags and dstTags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to */ actions?: outputs.site.NetworktemplateAclPolicyAction[]; name?: string; /** - * - for GBP-based policy, all srcTags and dstTags have to be gbp-based - * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + * ACL Policy Source Tags: + * - for GBP-based policy, all srcTags and dstTags have to be gbp-based + * - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to */ srcTags?: string[]; } @@ -12153,9 +12408,9 @@ export namespace site { export interface NetworktemplateAclTags { /** * required if - * - `type`==`dynamicGbp` (gbp_tag received from RADIUS) - * - `type`==`gbpResource` - * - `type`==`staticGbp` (applying gbp tag against matching conditions) + * - `type`==`dynamicGbp` (gbp_tag received from RADIUS) + * - `type`==`gbpResource` + * - `type`==`staticGbp` (applying gbp tag against matching conditions) */ gbpTag?: number; /** @@ -12181,8 +12436,7 @@ export namespace site { */ radiusGroup?: string; /** - * if `type`==`resource` or `type`==`gbpResource` - * empty means unrestricted, i.e. any + * if `type`==`resource` or `type`==`gbpResource`. Empty means unrestricted, i.e. any */ specs?: outputs.site.NetworktemplateAclTagsSpec[]; /** @@ -12213,7 +12467,7 @@ export namespace site { */ portRange: string; /** - * `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocolNumber` is between 1-254 + * `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocolNumber` is between 1-254, default is `any` `protocolNumber` is between 1-254 */ protocol: string; } @@ -12290,8 +12544,7 @@ export namespace site { */ gateway6?: string; /** - * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required) - * NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set + * whether to stop clients to talk to each other, default is false (when enabled, a unique isolationVlanId is required). NOTE: this features requires uplink device to also a be Juniper device and `interSwitchLink` to be set */ isolation: boolean; isolationVlanId?: string; @@ -12377,9 +12630,7 @@ export namespace site { */ allNetworks: boolean; /** - * 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. - * 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. + * 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. 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. */ allowDhcpd?: boolean; /** @@ -12427,8 +12678,7 @@ export namespace site { */ guestNetwork?: string; /** - * Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks - * NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together + * Only if `mode`!=`dynamic` interSwitchLink is used together with "isolation" under networks. NOTE: interSwitchLink works only between Juniper device. This has to be applied to both ports connected together */ interSwitchLink: boolean; /** @@ -12500,8 +12750,7 @@ export namespace site { */ speed: string; /** - * Switch storm control - * Only if `mode`!=`dynamic` + * Switch storm control. Only if `mode`!=`dynamic` */ stormControl?: outputs.site.NetworktemplatePortUsagesStormControl; /** @@ -12585,8 +12834,7 @@ export namespace site { */ authServersTimeout: number; /** - * use `network`or `sourceIp` - * which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + * use `network`or `sourceIp`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip */ network?: string; /** @@ -12891,8 +13139,7 @@ export namespace site { export interface NetworktemplateSnmpConfigV3ConfigUsmUser { /** - * Not required if `authenticationType`==`authenticationNone` - * include alphabetic, numeric, and special characters, but it cannot include control characters. + * Not required if `authenticationType`==`authenticationNone`. Include alphabetic, numeric, and special characters, but it cannot include control characters. */ authenticationPassword?: string; /** @@ -12900,8 +13147,7 @@ export namespace site { */ authenticationType?: string; /** - * Not required if `encryptionType`==`privacy-none` - * include alphabetic, numeric, and special characters, but it cannot include control characters + * Not required if `encryptionType`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters */ encryptionPassword?: string; /** @@ -13032,8 +13278,7 @@ Please update your configurations. */ portConfig?: {[key: string]: outputs.site.NetworktemplateSwitchMatchingRulePortConfig}; /** - * Property key is the port mirroring instance name - * portMirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + * Property key is the port mirroring instance name. `portMirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed */ portMirroring?: {[key: string]: outputs.site.NetworktemplateSwitchMatchingRulePortMirroring}; } @@ -13903,8 +14148,7 @@ Please update your configurations. apps?: {[key: string]: number}; enabled: boolean; /** - * Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps - * Property key is the wxtag id + * Map from wxtagId of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtagId` */ wxtagIds: {[key: string]: number}; } @@ -14073,8 +14317,7 @@ Please update your configurations. export interface WlanDnsServerRewrite { enabled: boolean; /** - * map between radiusGroup and the desired DNS server (IPv4 only) - * Property key is the RADIUS group, property value is the desired DNS Server + * map between radiusGroup and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server */ radiusGroups?: {[key: string]: string}; } @@ -14087,8 +14330,7 @@ Please update your configurations. defaultVlanId?: string; enabled: boolean; /** - * when 11r is enabled, we'll try to use the cached PMK, this can be disabled - * `false` means auto + * when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto */ forceLookup: boolean; /** @@ -15149,13 +15391,11 @@ Please update your configurations. enabled?: boolean; idleTimeout?: number; /** - * To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - * Org mxedge(s) identified by mxcluster_ids + * To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids */ mxclusterIds: string[]; /** - * default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - * when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + * default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `useSiteMxedge` */ proxyHosts: string[]; /** diff --git a/sdk/python/pulumi_juniper_mist/config/__init__.pyi b/sdk/python/pulumi_juniper_mist/config/__init__.pyi index 202bbb1d..d2c5340d 100644 --- a/sdk/python/pulumi_juniper_mist/config/__init__.pyi +++ b/sdk/python/pulumi_juniper_mist/config/__init__.pyi @@ -14,6 +14,11 @@ else: from typing_extensions import NotRequired, TypedDict, TypeAlias from .. import _utilities +apiDebug: Optional[bool] +""" +Flag to enable debugging API calls. Default is false. +""" + apiTimeout: Optional[float] """ Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 diff --git a/sdk/python/pulumi_juniper_mist/config/vars.py b/sdk/python/pulumi_juniper_mist/config/vars.py index b91641c4..0fd9a510 100644 --- a/sdk/python/pulumi_juniper_mist/config/vars.py +++ b/sdk/python/pulumi_juniper_mist/config/vars.py @@ -20,6 +20,13 @@ class _ExportableConfig(types.ModuleType): + @property + def api_debug(self) -> Optional[bool]: + """ + Flag to enable debugging API calls. Default is false. + """ + return __config__.get_bool('apiDebug') + @property def api_timeout(self) -> Optional[float]: """ diff --git a/sdk/python/pulumi_juniper_mist/device/_inputs.py b/sdk/python/pulumi_juniper_mist/device/_inputs.py index 908d1d7f..edcf3e91 100644 --- a/sdk/python/pulumi_juniper_mist/device/_inputs.py +++ b/sdk/python/pulumi_juniper_mist/device/_inputs.py @@ -201,8 +201,6 @@ 'SwitchDhcpdConfigConfigOptionsArgsDict', 'SwitchDhcpdConfigConfigVendorEncapsulatedArgs', 'SwitchDhcpdConfigConfigVendorEncapsulatedArgsDict', - 'SwitchEvpnConfigArgs', - 'SwitchEvpnConfigArgsDict', 'SwitchExtraRoutes6Args', 'SwitchExtraRoutes6ArgsDict', 'SwitchExtraRoutes6NextQualifiedArgs', @@ -3018,8 +3016,7 @@ class GatewayBgpConfigArgsDict(TypedDict): """ extended_v4_nexthop: NotRequired[pulumi.Input[bool]] """ - by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this """ graceful_restart_time: NotRequired[pulumi.Input[int]] """ @@ -3096,8 +3093,7 @@ def __init__(__self__, *, :param pulumi.Input[int] bfd_multiplier: when bfd_minimum_interval_is_configured alone :param pulumi.Input[bool] disable_bfd: BFD provides faster path failure detection and is enabled by default :param pulumi.Input[str] export_policy: default export policies if no per-neighbor policies defined - :param pulumi.Input[bool] extended_v4_nexthop: by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + :param pulumi.Input[bool] extended_v4_nexthop: by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this :param pulumi.Input[int] graceful_restart_time: `0` means disable :param pulumi.Input[str] import_policy: default import policies if no per-neighbor policies defined :param pulumi.Input[Mapping[str, pulumi.Input['GatewayBgpConfigNeighborsArgs']]] neighbors: if per-neighbor as is desired. Property key is the neighbor address @@ -3223,8 +3219,7 @@ def export_policy(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="extendedV4Nexthop") def extended_v4_nexthop(self) -> Optional[pulumi.Input[bool]]: """ - by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this """ return pulumi.get(self, "extended_v4_nexthop") @@ -4395,6 +4390,9 @@ class GatewayNetworkArgsDict(TypedDict): """ subnet6: NotRequired[pulumi.Input[str]] tenants: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkTenantsArgsDict']]]] + """ + Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + """ vlan_id: NotRequired[pulumi.Input[str]] vpn_access: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkVpnAccessArgsDict']]]] """ @@ -4426,6 +4424,7 @@ def __init__(__self__, *, :param pulumi.Input[bool] isolation: whether to allow clients in the network to talk to each other :param pulumi.Input['GatewayNetworkMulticastArgs'] multicast: whether to enable multicast support (only PIM-sparse mode is supported) :param pulumi.Input[Sequence[pulumi.Input[str]]] routed_for_networks: for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) + :param pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkTenantsArgs']]] tenants: Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") :param pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkVpnAccessArgs']]] vpn_access: Property key is the VPN name. Whether this network can be accessed from vpn """ pulumi.set(__self__, "name", name) @@ -4572,6 +4571,9 @@ def subnet6(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tenants(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkTenantsArgs']]]]: + """ + Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "tenants") @tenants.setter @@ -4628,7 +4630,7 @@ class GatewayNetworkInternetAccessArgsDict(TypedDict): create_simple_service_policy: NotRequired[pulumi.Input[bool]] destination_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkInternetAccessDestinationNatArgsDict']]]] """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ enabled: NotRequired[pulumi.Input[bool]] restricted: NotRequired[pulumi.Input[bool]] @@ -4637,7 +4639,7 @@ class GatewayNetworkInternetAccessArgsDict(TypedDict): """ static_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkInternetAccessStaticNatArgsDict']]]] """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ elif False: GatewayNetworkInternetAccessArgsDict: TypeAlias = Mapping[str, Any] @@ -4651,9 +4653,9 @@ def __init__(__self__, *, restricted: Optional[pulumi.Input[bool]] = None, static_nat: Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkInternetAccessStaticNatArgs']]]] = None): """ - :param pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkInternetAccessDestinationNatArgs']]] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkInternetAccessDestinationNatArgs']]] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param pulumi.Input[bool] restricted: by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies - :param pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkInternetAccessStaticNatArgs']]] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + :param pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkInternetAccessStaticNatArgs']]] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ if create_simple_service_policy is not None: pulumi.set(__self__, "create_simple_service_policy", create_simple_service_policy) @@ -4679,7 +4681,7 @@ def create_simple_service_policy(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkInternetAccessDestinationNatArgs']]]]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -4712,7 +4714,7 @@ def restricted(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkInternetAccessStaticNatArgs']]]]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -4724,8 +4726,18 @@ def static_nat(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Gat if not MYPY: class GatewayNetworkInternetAccessDestinationNatArgsDict(TypedDict): internal_ip: NotRequired[pulumi.Input[str]] + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ name: NotRequired[pulumi.Input[str]] - port: NotRequired[pulumi.Input[int]] + port: NotRequired[pulumi.Input[str]] + """ + The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + """ + wan_name: NotRequired[pulumi.Input[str]] + """ + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ elif False: GatewayNetworkInternetAccessDestinationNatArgsDict: TypeAlias = Mapping[str, Any] @@ -4734,17 +4746,28 @@ class GatewayNetworkInternetAccessDestinationNatArgs: def __init__(__self__, *, internal_ip: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - port: Optional[pulumi.Input[int]] = None): + port: Optional[pulumi.Input[str]] = None, + wan_name: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] port: The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: pulumi.set(__self__, "name", name) if port is not None: pulumi.set(__self__, "port", port) + if wan_name is not None: + pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[pulumi.Input[str]]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter @@ -4762,21 +4785,39 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - def port(self) -> Optional[pulumi.Input[int]]: + def port(self) -> Optional[pulumi.Input[str]]: + """ + The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "port") @port.setter - def port(self, value: Optional[pulumi.Input[int]]): + def port(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "port", value) + @property + @pulumi.getter(name="wanName") + def wan_name(self) -> Optional[pulumi.Input[str]]: + """ + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ + return pulumi.get(self, "wan_name") + + @wan_name.setter + def wan_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "wan_name", value) + if not MYPY: class GatewayNetworkInternetAccessStaticNatArgsDict(TypedDict): - internal_ip: NotRequired[pulumi.Input[str]] - name: NotRequired[pulumi.Input[str]] + internal_ip: pulumi.Input[str] + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ + name: pulumi.Input[str] wan_name: NotRequired[pulumi.Input[str]] """ - If not set, we configure the nat policies against all WAN ports for simplicity + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ elif False: GatewayNetworkInternetAccessStaticNatArgsDict: TypeAlias = Mapping[str, Any] @@ -4784,42 +4825,44 @@ class GatewayNetworkInternetAccessStaticNatArgsDict(TypedDict): @pulumi.input_type class GatewayNetworkInternetAccessStaticNatArgs: def __init__(__self__, *, - internal_ip: Optional[pulumi.Input[str]] = None, - name: Optional[pulumi.Input[str]] = None, + internal_ip: pulumi.Input[str], + name: pulumi.Input[str], wan_name: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param pulumi.Input[str] internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) if wan_name is not None: pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[pulumi.Input[str]]: + def internal_ip(self) -> pulumi.Input[str]: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter - def internal_ip(self, value: Optional[pulumi.Input[str]]): + def internal_ip(self, value: pulumi.Input[str]): pulumi.set(self, "internal_ip", value) @property @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: + def name(self) -> pulumi.Input[str]: return pulumi.get(self, "name") @name.setter - def name(self, value: Optional[pulumi.Input[str]]): + def name(self, value: pulumi.Input[str]): pulumi.set(self, "name", value) @property @pulumi.getter(name="wanName") def wan_name(self) -> Optional[pulumi.Input[str]]: """ - If not set, we configure the nat policies against all WAN ports for simplicity + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "wan_name") @@ -4960,7 +5003,7 @@ class GatewayNetworkVpnAccessArgsDict(TypedDict): """ destination_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkVpnAccessDestinationNatArgsDict']]]] """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ nat_pool: NotRequired[pulumi.Input[str]] """ @@ -4976,13 +5019,11 @@ class GatewayNetworkVpnAccessArgsDict(TypedDict): """ no_readvertise_to_overlay: NotRequired[pulumi.Input[bool]] """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ other_vrfs: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs """ routed: NotRequired[pulumi.Input[bool]] """ @@ -4994,12 +5035,11 @@ class GatewayNetworkVpnAccessArgsDict(TypedDict): """ static_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkVpnAccessStaticNatArgsDict']]]] """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ summarized_subnet: NotRequired[pulumi.Input[str]] """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ summarized_subnet_to_lan_bgp: NotRequired[pulumi.Input[str]] """ @@ -5032,19 +5072,16 @@ def __init__(__self__, *, """ :param pulumi.Input[str] advertised_subnet: if `routed`==`true`, whether to advertise an aggregated subnet toward HUB this is useful when there are multiple networks on SPOKE's side :param pulumi.Input[bool] allow_ping: whether to allow ping from vpn into this routed network - :param pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkVpnAccessDestinationNatArgs']]] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkVpnAccessDestinationNatArgs']]] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param pulumi.Input[str] nat_pool: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub :param pulumi.Input[bool] no_readvertise_to_lan_bgp: toward LAN-side BGP peers :param pulumi.Input[bool] no_readvertise_to_lan_ospf: toward LAN-side OSPF peers - :param pulumi.Input[bool] no_readvertise_to_overlay: toward overlay - how HUB should deal with routes it received from Spokes - :param pulumi.Input[Sequence[pulumi.Input[str]]] other_vrfs: by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + :param pulumi.Input[bool] no_readvertise_to_overlay: toward overlay, how HUB should deal with routes it received from Spokes + :param pulumi.Input[Sequence[pulumi.Input[str]]] other_vrfs: by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs :param pulumi.Input[bool] routed: whether this network is routable :param pulumi.Input['GatewayNetworkVpnAccessSourceNatArgs'] source_nat: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub - :param pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkVpnAccessStaticNatArgs']]] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") - :param pulumi.Input[str] summarized_subnet: toward overlay - how HUB should deal with routes it received from Spokes + :param pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkVpnAccessStaticNatArgs']]] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] summarized_subnet: toward overlay, how HUB should deal with routes it received from Spokes :param pulumi.Input[str] summarized_subnet_to_lan_bgp: toward LAN-side BGP peers :param pulumi.Input[str] summarized_subnet_to_lan_ospf: toward LAN-side OSPF peers """ @@ -5105,7 +5142,7 @@ def allow_ping(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkVpnAccessDestinationNatArgs']]]]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -5153,8 +5190,7 @@ def no_readvertise_to_lan_ospf(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="noReadvertiseToOverlay") def no_readvertise_to_overlay(self) -> Optional[pulumi.Input[bool]]: """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ return pulumi.get(self, "no_readvertise_to_overlay") @@ -5166,8 +5202,7 @@ def no_readvertise_to_overlay(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="otherVrfs") def other_vrfs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs """ return pulumi.get(self, "other_vrfs") @@ -5203,7 +5238,7 @@ def source_nat(self, value: Optional[pulumi.Input['GatewayNetworkVpnAccessSource @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewayNetworkVpnAccessStaticNatArgs']]]]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -5215,8 +5250,7 @@ def static_nat(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Gat @pulumi.getter(name="summarizedSubnet") def summarized_subnet(self) -> Optional[pulumi.Input[str]]: """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ return pulumi.get(self, "summarized_subnet") @@ -5252,8 +5286,11 @@ def summarized_subnet_to_lan_ospf(self, value: Optional[pulumi.Input[str]]): if not MYPY: class GatewayNetworkVpnAccessDestinationNatArgsDict(TypedDict): internal_ip: NotRequired[pulumi.Input[str]] + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ name: NotRequired[pulumi.Input[str]] - port: NotRequired[pulumi.Input[int]] + port: NotRequired[pulumi.Input[str]] elif False: GatewayNetworkVpnAccessDestinationNatArgsDict: TypeAlias = Mapping[str, Any] @@ -5262,7 +5299,10 @@ class GatewayNetworkVpnAccessDestinationNatArgs: def __init__(__self__, *, internal_ip: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - port: Optional[pulumi.Input[int]] = None): + port: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: @@ -5273,6 +5313,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[pulumi.Input[str]]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter @@ -5290,11 +5333,11 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - def port(self) -> Optional[pulumi.Input[int]]: + def port(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "port") @port.setter - def port(self, value: Optional[pulumi.Input[int]]): + def port(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "port", value) @@ -5323,61 +5366,46 @@ def external_ip(self, value: Optional[pulumi.Input[str]]): if not MYPY: class GatewayNetworkVpnAccessStaticNatArgsDict(TypedDict): - internal_ip: NotRequired[pulumi.Input[str]] - name: NotRequired[pulumi.Input[str]] - wan_name: NotRequired[pulumi.Input[str]] + internal_ip: pulumi.Input[str] """ - If not set, we configure the nat policies against all WAN ports for simplicity + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") """ + name: pulumi.Input[str] elif False: GatewayNetworkVpnAccessStaticNatArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type class GatewayNetworkVpnAccessStaticNatArgs: def __init__(__self__, *, - internal_ip: Optional[pulumi.Input[str]] = None, - name: Optional[pulumi.Input[str]] = None, - wan_name: Optional[pulumi.Input[str]] = None): + internal_ip: pulumi.Input[str], + name: pulumi.Input[str]): """ - :param pulumi.Input[str] wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param pulumi.Input[str] internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) - if wan_name is not None: - pulumi.set(__self__, "wan_name", wan_name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[pulumi.Input[str]]: + def internal_ip(self) -> pulumi.Input[str]: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter - def internal_ip(self, value: Optional[pulumi.Input[str]]): + def internal_ip(self, value: pulumi.Input[str]): pulumi.set(self, "internal_ip", value) @property @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: + def name(self) -> pulumi.Input[str]: return pulumi.get(self, "name") @name.setter - def name(self, value: Optional[pulumi.Input[str]]): + def name(self, value: pulumi.Input[str]): pulumi.set(self, "name", value) - @property - @pulumi.getter(name="wanName") - def wan_name(self) -> Optional[pulumi.Input[str]]: - """ - If not set, we configure the nat policies against all WAN ports for simplicity - """ - return pulumi.get(self, "wan_name") - - @wan_name.setter - def wan_name(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "wan_name", value) - if not MYPY: class GatewayOobIpConfigArgsDict(TypedDict): @@ -5934,9 +5962,7 @@ class GatewayPortConfigArgsDict(TypedDict): """ ae_lacp_force_up: NotRequired[pulumi.Input[bool]] """ - For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only """ aggregated: NotRequired[pulumi.Input[bool]] critical: NotRequired[pulumi.Input[bool]] @@ -5944,6 +5970,9 @@ class GatewayPortConfigArgsDict(TypedDict): if want to generate port up/down alarm, set it to true """ description: NotRequired[pulumi.Input[str]] + """ + Interface Description. Can be a variable (i.e. "{{myvar}}") + """ disable_autoneg: NotRequired[pulumi.Input[bool]] disabled: NotRequired[pulumi.Input[bool]] """ @@ -5955,13 +5984,11 @@ class GatewayPortConfigArgsDict(TypedDict): """ dsl_vci: NotRequired[pulumi.Input[int]] """ - if `wan_type`==`dsl` - 16 bit int + if `wan_type`==`dsl`, 16 bit int """ dsl_vpi: NotRequired[pulumi.Input[int]] """ - if `wan_type`==`dsl` - 8 bit int + if `wan_type`==`dsl`, 8 bit int """ duplex: NotRequired[pulumi.Input[str]] """ @@ -5995,7 +6022,7 @@ class GatewayPortConfigArgsDict(TypedDict): """ networks: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - if `usage`==`lan` + if `usage`==`lan`, name of the `org.Network` resource """ outer_vlan_id: NotRequired[pulumi.Input[int]] """ @@ -6004,7 +6031,7 @@ class GatewayPortConfigArgsDict(TypedDict): poe_disabled: NotRequired[pulumi.Input[bool]] port_network: NotRequired[pulumi.Input[str]] """ - if `usage`==`lan` + Only for SRX and if `usage`==`lan`, the Untagged VLAN Network """ preserve_dscp: NotRequired[pulumi.Input[bool]] """ @@ -6036,37 +6063,38 @@ class GatewayPortConfigArgsDict(TypedDict): for SSR only """ traffic_shaping: NotRequired[pulumi.Input['GatewayPortConfigTrafficShapingArgsDict']] - vlan_id: NotRequired[pulumi.Input[int]] - """ - if WAN interface is on a VLAN - """ + vlan_id: NotRequired[pulumi.Input[str]] vpn_paths: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewayPortConfigVpnPathsArgsDict']]]] """ Property key is the VPN name """ wan_arp_policer: NotRequired[pulumi.Input[str]] """ - when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` """ wan_ext_ip: NotRequired[pulumi.Input[str]] """ - optional, if spoke should reach this port by a different IP + Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP """ wan_extra_routes: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewayPortConfigWanExtraRoutesArgsDict']]]] """ - Property Key is the destianation CIDR (e.g "100.100.100.0/24") + Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") + """ + wan_networks: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + """ + Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined """ wan_probe_override: NotRequired[pulumi.Input['GatewayPortConfigWanProbeOverrideArgsDict']] """ - if `usage`==`wan` + Only if `usage`==`wan` """ wan_source_nat: NotRequired[pulumi.Input['GatewayPortConfigWanSourceNatArgsDict']] """ - optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip """ wan_type: NotRequired[pulumi.Input[str]] """ - if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ elif False: GatewayPortConfigArgsDict: TypeAlias = Mapping[str, Any] @@ -6108,11 +6136,12 @@ def __init__(__self__, *, ssr_no_virtual_mac: Optional[pulumi.Input[bool]] = None, svr_port_range: Optional[pulumi.Input[str]] = None, traffic_shaping: Optional[pulumi.Input['GatewayPortConfigTrafficShapingArgs']] = None, - vlan_id: Optional[pulumi.Input[int]] = None, + vlan_id: Optional[pulumi.Input[str]] = None, vpn_paths: Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewayPortConfigVpnPathsArgs']]]] = None, wan_arp_policer: Optional[pulumi.Input[str]] = None, wan_ext_ip: Optional[pulumi.Input[str]] = None, wan_extra_routes: Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewayPortConfigWanExtraRoutesArgs']]]] = None, + wan_networks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, wan_probe_override: Optional[pulumi.Input['GatewayPortConfigWanProbeOverrideArgs']] = None, wan_source_nat: Optional[pulumi.Input['GatewayPortConfigWanSourceNatArgs']] = None, wan_type: Optional[pulumi.Input[str]] = None): @@ -6120,16 +6149,13 @@ def __init__(__self__, *, :param pulumi.Input[str] usage: port usage name. enum: `ha_control`, `ha_data`, `lan`, `wan` :param pulumi.Input[bool] ae_disable_lacp: if `aggregated`==`true`. To disable LCP support for the AE interface :param pulumi.Input[str] ae_idx: if `aggregated`==`true`. Users could force to use the designated AE name (must be an integer between 0 and 127) - :param pulumi.Input[bool] ae_lacp_force_up: For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + :param pulumi.Input[bool] ae_lacp_force_up: For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only :param pulumi.Input[bool] critical: if want to generate port up/down alarm, set it to true + :param pulumi.Input[str] description: Interface Description. Can be a variable (i.e. "{{myvar}}") :param pulumi.Input[bool] disabled: port admin up (true) / down (false) :param pulumi.Input[str] dsl_type: if `wan_type`==`dsl`. enum: `adsl`, `vdsl` - :param pulumi.Input[int] dsl_vci: if `wan_type`==`dsl` - 16 bit int - :param pulumi.Input[int] dsl_vpi: if `wan_type`==`dsl` - 8 bit int + :param pulumi.Input[int] dsl_vci: if `wan_type`==`dsl`, 16 bit int + :param pulumi.Input[int] dsl_vpi: if `wan_type`==`dsl`, 8 bit int :param pulumi.Input[str] duplex: enum: `auto`, `full`, `half` :param pulumi.Input['GatewayPortConfigIpConfigArgs'] ip_config: Junos IP Config :param pulumi.Input[str] lte_apn: if `wan_type`==`lte` @@ -6137,9 +6163,9 @@ def __init__(__self__, *, :param pulumi.Input[str] lte_password: if `wan_type`==`lte` :param pulumi.Input[str] lte_username: if `wan_type`==`lte` :param pulumi.Input[str] name: name that we'll use to derive config - :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: if `usage`==`lan` + :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: if `usage`==`lan`, name of the `org.Network` resource :param pulumi.Input[int] outer_vlan_id: for Q-in-Q - :param pulumi.Input[str] port_network: if `usage`==`lan` + :param pulumi.Input[str] port_network: Only for SRX and if `usage`==`lan`, the Untagged VLAN Network :param pulumi.Input[bool] preserve_dscp: whether to preserve dscp when sending traffic over VPN (SSR-only) :param pulumi.Input[bool] redundant: if HA mode :param pulumi.Input[int] reth_idx: if HA mode @@ -6147,14 +6173,14 @@ def __init__(__self__, *, :param pulumi.Input[Sequence[pulumi.Input[str]]] reth_nodes: SSR only - supporting vlan-based redundancy (matching the size of `networks`) :param pulumi.Input[bool] ssr_no_virtual_mac: when SSR is running as VM, this is required on certain hosting platforms :param pulumi.Input[str] svr_port_range: for SSR only - :param pulumi.Input[int] vlan_id: if WAN interface is on a VLAN :param pulumi.Input[Mapping[str, pulumi.Input['GatewayPortConfigVpnPathsArgs']]] vpn_paths: Property key is the VPN name - :param pulumi.Input[str] wan_arp_policer: when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` - :param pulumi.Input[str] wan_ext_ip: optional, if spoke should reach this port by a different IP - :param pulumi.Input[Mapping[str, pulumi.Input['GatewayPortConfigWanExtraRoutesArgs']]] wan_extra_routes: Property Key is the destianation CIDR (e.g "100.100.100.0/24") - :param pulumi.Input['GatewayPortConfigWanProbeOverrideArgs'] wan_probe_override: if `usage`==`wan` - :param pulumi.Input['GatewayPortConfigWanSourceNatArgs'] wan_source_nat: optional, by default, source-NAT is performed on all WAN Ports using the interface-ip - :param pulumi.Input[str] wan_type: if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + :param pulumi.Input[str] wan_arp_policer: Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + :param pulumi.Input[str] wan_ext_ip: Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP + :param pulumi.Input[Mapping[str, pulumi.Input['GatewayPortConfigWanExtraRoutesArgs']]] wan_extra_routes: Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") + :param pulumi.Input[Sequence[pulumi.Input[str]]] wan_networks: Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + :param pulumi.Input['GatewayPortConfigWanProbeOverrideArgs'] wan_probe_override: Only if `usage`==`wan` + :param pulumi.Input['GatewayPortConfigWanSourceNatArgs'] wan_source_nat: Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip + :param pulumi.Input[str] wan_type: Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ pulumi.set(__self__, "usage", usage) if ae_disable_lacp is not None: @@ -6233,6 +6259,8 @@ def __init__(__self__, *, pulumi.set(__self__, "wan_ext_ip", wan_ext_ip) if wan_extra_routes is not None: pulumi.set(__self__, "wan_extra_routes", wan_extra_routes) + if wan_networks is not None: + pulumi.set(__self__, "wan_networks", wan_networks) if wan_probe_override is not None: pulumi.set(__self__, "wan_probe_override", wan_probe_override) if wan_source_nat is not None: @@ -6280,9 +6308,7 @@ def ae_idx(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="aeLacpForceUp") def ae_lacp_force_up(self) -> Optional[pulumi.Input[bool]]: """ - For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only """ return pulumi.get(self, "ae_lacp_force_up") @@ -6314,6 +6340,9 @@ def critical(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: + """ + Interface Description. Can be a variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "description") @description.setter @@ -6357,8 +6386,7 @@ def dsl_type(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="dslVci") def dsl_vci(self) -> Optional[pulumi.Input[int]]: """ - if `wan_type`==`dsl` - 16 bit int + if `wan_type`==`dsl`, 16 bit int """ return pulumi.get(self, "dsl_vci") @@ -6370,8 +6398,7 @@ def dsl_vci(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="dslVpi") def dsl_vpi(self) -> Optional[pulumi.Input[int]]: """ - if `wan_type`==`dsl` - 8 bit int + if `wan_type`==`dsl`, 8 bit int """ return pulumi.get(self, "dsl_vpi") @@ -6485,7 +6512,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - if `usage`==`lan` + if `usage`==`lan`, name of the `org.Network` resource """ return pulumi.get(self, "networks") @@ -6518,7 +6545,7 @@ def poe_disabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="portNetwork") def port_network(self) -> Optional[pulumi.Input[str]]: """ - if `usage`==`lan` + Only for SRX and if `usage`==`lan`, the Untagged VLAN Network """ return pulumi.get(self, "port_network") @@ -6630,14 +6657,11 @@ def traffic_shaping(self, value: Optional[pulumi.Input['GatewayPortConfigTraffic @property @pulumi.getter(name="vlanId") - def vlan_id(self) -> Optional[pulumi.Input[int]]: - """ - if WAN interface is on a VLAN - """ + def vlan_id(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "vlan_id") @vlan_id.setter - def vlan_id(self, value: Optional[pulumi.Input[int]]): + def vlan_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "vlan_id", value) @property @@ -6656,7 +6680,7 @@ def vpn_paths(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Gate @pulumi.getter(name="wanArpPolicer") def wan_arp_policer(self) -> Optional[pulumi.Input[str]]: """ - when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` """ return pulumi.get(self, "wan_arp_policer") @@ -6668,7 +6692,7 @@ def wan_arp_policer(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="wanExtIp") def wan_ext_ip(self) -> Optional[pulumi.Input[str]]: """ - optional, if spoke should reach this port by a different IP + Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP """ return pulumi.get(self, "wan_ext_ip") @@ -6680,7 +6704,7 @@ def wan_ext_ip(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="wanExtraRoutes") def wan_extra_routes(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewayPortConfigWanExtraRoutesArgs']]]]: """ - Property Key is the destianation CIDR (e.g "100.100.100.0/24") + Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") """ return pulumi.get(self, "wan_extra_routes") @@ -6688,11 +6712,23 @@ def wan_extra_routes(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['G def wan_extra_routes(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewayPortConfigWanExtraRoutesArgs']]]]): pulumi.set(self, "wan_extra_routes", value) + @property + @pulumi.getter(name="wanNetworks") + def wan_networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + """ + return pulumi.get(self, "wan_networks") + + @wan_networks.setter + def wan_networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "wan_networks", value) + @property @pulumi.getter(name="wanProbeOverride") def wan_probe_override(self) -> Optional[pulumi.Input['GatewayPortConfigWanProbeOverrideArgs']]: """ - if `usage`==`wan` + Only if `usage`==`wan` """ return pulumi.get(self, "wan_probe_override") @@ -6704,7 +6740,7 @@ def wan_probe_override(self, value: Optional[pulumi.Input['GatewayPortConfigWanP @pulumi.getter(name="wanSourceNat") def wan_source_nat(self) -> Optional[pulumi.Input['GatewayPortConfigWanSourceNatArgs']]: """ - optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip """ return pulumi.get(self, "wan_source_nat") @@ -6716,7 +6752,7 @@ def wan_source_nat(self, value: Optional[pulumi.Input['GatewayPortConfigWanSourc @pulumi.getter(name="wanType") def wan_type(self) -> Optional[pulumi.Input[str]]: """ - if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ return pulumi.get(self, "wan_type") @@ -6737,12 +6773,15 @@ class GatewayPortConfigIpConfigArgsDict(TypedDict): """ gateway: NotRequired[pulumi.Input[str]] """ - except for out-of_band interface (vme/em0/fxp0) + except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") """ ip: NotRequired[pulumi.Input[str]] + """ + Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + """ netmask: NotRequired[pulumi.Input[str]] """ - used only if `subnet` is not specified in `networks` + used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") """ network: NotRequired[pulumi.Input[str]] """ @@ -6783,8 +6822,9 @@ def __init__(__self__, *, """ :param pulumi.Input[Sequence[pulumi.Input[str]]] dns: except for out-of_band interface (vme/em0/fxp0) :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: except for out-of_band interface (vme/em0/fxp0) - :param pulumi.Input[str] gateway: except for out-of_band interface (vme/em0/fxp0) - :param pulumi.Input[str] netmask: used only if `subnet` is not specified in `networks` + :param pulumi.Input[str] gateway: except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] ip: Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] netmask: used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") :param pulumi.Input[str] network: optional, the network to be used for mgmt :param pulumi.Input[str] poser_password: if `type`==`pppoe` :param pulumi.Input[str] pppoe_auth: if `type`==`pppoe`. enum: `chap`, `none`, `pap` @@ -6840,7 +6880,7 @@ def dns_suffixes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]] @pulumi.getter def gateway(self) -> Optional[pulumi.Input[str]]: """ - except for out-of_band interface (vme/em0/fxp0) + except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "gateway") @@ -6851,6 +6891,9 @@ def gateway(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ip(self) -> Optional[pulumi.Input[str]]: + """ + Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "ip") @ip.setter @@ -6861,7 +6904,7 @@ def ip(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def netmask(self) -> Optional[pulumi.Input[str]]: """ - used only if `subnet` is not specified in `networks` + used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "netmask") @@ -6934,10 +6977,13 @@ def type(self, value: Optional[pulumi.Input[str]]): class GatewayPortConfigTrafficShapingArgsDict(TypedDict): class_percentages: NotRequired[pulumi.Input[Sequence[pulumi.Input[int]]]] """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ enabled: NotRequired[pulumi.Input[bool]] + max_tx_kbps: NotRequired[pulumi.Input[int]] + """ + Interface Transmit Cap in kbps + """ elif False: GatewayPortConfigTrafficShapingArgsDict: TypeAlias = Mapping[str, Any] @@ -6945,22 +6991,24 @@ class GatewayPortConfigTrafficShapingArgsDict(TypedDict): class GatewayPortConfigTrafficShapingArgs: def __init__(__self__, *, class_percentages: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None, - enabled: Optional[pulumi.Input[bool]] = None): + enabled: Optional[pulumi.Input[bool]] = None, + max_tx_kbps: Optional[pulumi.Input[int]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[int]]] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + :param pulumi.Input[Sequence[pulumi.Input[int]]] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 + :param pulumi.Input[int] max_tx_kbps: Interface Transmit Cap in kbps """ if class_percentages is not None: pulumi.set(__self__, "class_percentages", class_percentages) if enabled is not None: pulumi.set(__self__, "enabled", enabled) + if max_tx_kbps is not None: + pulumi.set(__self__, "max_tx_kbps", max_tx_kbps) @property @pulumi.getter(name="classPercentages") def class_percentages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]: """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ return pulumi.get(self, "class_percentages") @@ -6977,6 +7025,18 @@ def enabled(self) -> Optional[pulumi.Input[bool]]: def enabled(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "enabled", value) + @property + @pulumi.getter(name="maxTxKbps") + def max_tx_kbps(self) -> Optional[pulumi.Input[int]]: + """ + Interface Transmit Cap in kbps + """ + return pulumi.get(self, "max_tx_kbps") + + @max_tx_kbps.setter + def max_tx_kbps(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "max_tx_kbps", value) + if not MYPY: class GatewayPortConfigVpnPathsArgsDict(TypedDict): @@ -7107,10 +7167,13 @@ def traffic_shaping(self, value: Optional[pulumi.Input['GatewayPortConfigVpnPath class GatewayPortConfigVpnPathsTrafficShapingArgsDict(TypedDict): class_percentages: NotRequired[pulumi.Input[Sequence[pulumi.Input[int]]]] """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ enabled: NotRequired[pulumi.Input[bool]] + max_tx_kbps: NotRequired[pulumi.Input[int]] + """ + Interface Transmit Cap in kbps + """ elif False: GatewayPortConfigVpnPathsTrafficShapingArgsDict: TypeAlias = Mapping[str, Any] @@ -7118,22 +7181,24 @@ class GatewayPortConfigVpnPathsTrafficShapingArgsDict(TypedDict): class GatewayPortConfigVpnPathsTrafficShapingArgs: def __init__(__self__, *, class_percentages: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None, - enabled: Optional[pulumi.Input[bool]] = None): + enabled: Optional[pulumi.Input[bool]] = None, + max_tx_kbps: Optional[pulumi.Input[int]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[int]]] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + :param pulumi.Input[Sequence[pulumi.Input[int]]] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 + :param pulumi.Input[int] max_tx_kbps: Interface Transmit Cap in kbps """ if class_percentages is not None: pulumi.set(__self__, "class_percentages", class_percentages) if enabled is not None: pulumi.set(__self__, "enabled", enabled) + if max_tx_kbps is not None: + pulumi.set(__self__, "max_tx_kbps", max_tx_kbps) @property @pulumi.getter(name="classPercentages") def class_percentages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]: """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ return pulumi.get(self, "class_percentages") @@ -7150,6 +7215,18 @@ def enabled(self) -> Optional[pulumi.Input[bool]]: def enabled(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "enabled", value) + @property + @pulumi.getter(name="maxTxKbps") + def max_tx_kbps(self) -> Optional[pulumi.Input[int]]: + """ + Interface Transmit Cap in kbps + """ + return pulumi.get(self, "max_tx_kbps") + + @max_tx_kbps.setter + def max_tx_kbps(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "max_tx_kbps", value) + if not MYPY: class GatewayPortConfigWanExtraRoutesArgsDict(TypedDict): @@ -7461,6 +7538,10 @@ class GatewayRoutingPoliciesTermActionArgsDict(TypedDict): """ for SSR, hub decides how VRF routes are leaked on spoke """ + aggregates: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + """ + route aggregation + """ communities: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ when used as export policy, optional @@ -7491,6 +7572,7 @@ def __init__(__self__, *, accept: Optional[pulumi.Input[bool]] = None, add_communities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, add_target_vrfs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + aggregates: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, communities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, exclude_as_paths: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, exclude_communities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -7499,6 +7581,7 @@ def __init__(__self__, *, prepend_as_paths: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ :param pulumi.Input[Sequence[pulumi.Input[str]]] add_target_vrfs: for SSR, hub decides how VRF routes are leaked on spoke + :param pulumi.Input[Sequence[pulumi.Input[str]]] aggregates: route aggregation :param pulumi.Input[Sequence[pulumi.Input[str]]] communities: when used as export policy, optional :param pulumi.Input[Sequence[pulumi.Input[str]]] exclude_as_paths: when used as export policy, optional. To exclude certain AS :param pulumi.Input[Sequence[pulumi.Input[str]]] export_communitites: when used as export policy, optional @@ -7511,6 +7594,8 @@ def __init__(__self__, *, pulumi.set(__self__, "add_communities", add_communities) if add_target_vrfs is not None: pulumi.set(__self__, "add_target_vrfs", add_target_vrfs) + if aggregates is not None: + pulumi.set(__self__, "aggregates", aggregates) if communities is not None: pulumi.set(__self__, "communities", communities) if exclude_as_paths is not None: @@ -7554,6 +7639,18 @@ def add_target_vrfs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] def add_target_vrfs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "add_target_vrfs", value) + @property + @pulumi.getter + def aggregates(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + route aggregation + """ + return pulumi.get(self, "aggregates") + + @aggregates.setter + def aggregates(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "aggregates", value) + @property @pulumi.getter def communities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: @@ -7648,8 +7745,7 @@ class GatewayRoutingPoliciesTermMatchingArgsDict(TypedDict): vpn_path_sla: NotRequired[pulumi.Input['GatewayRoutingPoliciesTermMatchingVpnPathSlaArgsDict']] vpn_paths: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ elif False: GatewayRoutingPoliciesTermMatchingArgsDict: TypeAlias = Mapping[str, Any] @@ -7671,8 +7767,7 @@ def __init__(__self__, *, :param pulumi.Input[Sequence[pulumi.Input[str]]] prefixes: zero or more criteria/filter can be specified to match the term, all criteria have to be met :param pulumi.Input[Sequence[pulumi.Input[str]]] protocols: `direct`, `bgp`, `osp`, ... :param pulumi.Input[Sequence[pulumi.Input[str]]] vpn_neighbor_macs: overlay-facing criteria (used for bgp_config where via=vpn) - :param pulumi.Input[Sequence[pulumi.Input[str]]] vpn_paths: overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + :param pulumi.Input[Sequence[pulumi.Input[str]]] vpn_paths: overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ if as_paths is not None: pulumi.set(__self__, "as_paths", as_paths) @@ -7781,8 +7876,7 @@ def vpn_path_sla(self, value: Optional[pulumi.Input['GatewayRoutingPoliciesTermM @pulumi.getter(name="vpnPaths") def vpn_paths(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ return pulumi.get(self, "vpn_paths") @@ -7796,8 +7890,7 @@ class GatewayRoutingPoliciesTermMatchingRouteExistsArgsDict(TypedDict): route: NotRequired[pulumi.Input[str]] vrf_name: NotRequired[pulumi.Input[str]] """ - name of the vrf instance - it can also be the name of the VPN or wan if they + name of the vrf instance, it can also be the name of the VPN or wan if they """ elif False: GatewayRoutingPoliciesTermMatchingRouteExistsArgsDict: TypeAlias = Mapping[str, Any] @@ -7808,8 +7901,7 @@ def __init__(__self__, *, route: Optional[pulumi.Input[str]] = None, vrf_name: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] vrf_name: name of the vrf instance - it can also be the name of the VPN or wan if they + :param pulumi.Input[str] vrf_name: name of the vrf instance, it can also be the name of the VPN or wan if they """ if route is not None: pulumi.set(__self__, "route", route) @@ -7829,8 +7921,7 @@ def route(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="vrfName") def vrf_name(self) -> Optional[pulumi.Input[str]]: """ - name of the vrf instance - it can also be the name of the VPN or wan if they + name of the vrf instance, it can also be the name of the VPN or wan if they """ return pulumi.get(self, "vrf_name") @@ -7910,8 +8001,7 @@ class GatewayServicePolicyArgsDict(TypedDict): """ path_preference: NotRequired[pulumi.Input[str]] """ - by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` """ servicepolicy_id: NotRequired[pulumi.Input[str]] """ @@ -7946,8 +8036,7 @@ def __init__(__self__, *, :param pulumi.Input['GatewayServicePolicyAppqoeArgs'] appqoe: For SRX Only :param pulumi.Input[bool] local_routing: access within the same VRF :param pulumi.Input[str] name: Required when `servicepolicy_id` is not defined, optional otherwise (override the servicepolicy name) - :param pulumi.Input[str] path_preference: by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + :param pulumi.Input[str] path_preference: by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` :param pulumi.Input[str] servicepolicy_id: used to link servicepolicy defined at org level and overwrite some attributes :param pulumi.Input[Sequence[pulumi.Input[str]]] services: Required when `servicepolicy_id` is not defined. List of Applications / Desctinations :param pulumi.Input[Sequence[pulumi.Input[str]]] tenants: Required when `servicepolicy_id` is not defined. List of Networks / Users @@ -8043,8 +8132,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="pathPreference") def path_preference(self) -> Optional[pulumi.Input[str]]: """ - by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` """ return pulumi.get(self, "path_preference") @@ -8266,63 +8354,63 @@ class GatewayTunnelConfigsArgsDict(TypedDict): auto_provision: NotRequired[pulumi.Input['GatewayTunnelConfigsAutoProvisionArgsDict']] ike_lifetime: NotRequired[pulumi.Input[int]] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ ike_mode: NotRequired[pulumi.Input[str]] """ - Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` """ ike_proposals: NotRequired[pulumi.Input[Sequence[pulumi.Input['GatewayTunnelConfigsIkeProposalArgsDict']]]] """ - if `provider`== `custom-ipsec` + if `provider`==`custom-ipsec` """ ipsec_lifetime: NotRequired[pulumi.Input[int]] """ - if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ ipsec_proposals: NotRequired[pulumi.Input[Sequence[pulumi.Input['GatewayTunnelConfigsIpsecProposalArgsDict']]]] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ local_id: NotRequired[pulumi.Input[str]] """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ mode: NotRequired[pulumi.Input[str]] """ - enum: `active-active`, `active-standby` + Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` """ networks: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - networks reachable via this tunnel + if `provider`==`custom-ipsec`, networks reachable via this tunnel """ primary: NotRequired[pulumi.Input['GatewayTunnelConfigsPrimaryArgsDict']] + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ probe: NotRequired[pulumi.Input['GatewayTunnelConfigsProbeArgsDict']] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ protocol: NotRequired[pulumi.Input[str]] """ - Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` """ provider: NotRequired[pulumi.Input[str]] """ - enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` """ psk: NotRequired[pulumi.Input[str]] """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ secondary: NotRequired[pulumi.Input['GatewayTunnelConfigsSecondaryArgsDict']] + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ version: NotRequired[pulumi.Input[str]] """ - Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ elif False: GatewayTunnelConfigsArgsDict: TypeAlias = Mapping[str, Any] @@ -8347,25 +8435,21 @@ def __init__(__self__, *, secondary: Optional[pulumi.Input['GatewayTunnelConfigsSecondaryArgs']] = None, version: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[int] ike_lifetime: Only if `provider`== `custom-ipsec` - :param pulumi.Input[str] ike_mode: Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` - :param pulumi.Input[Sequence[pulumi.Input['GatewayTunnelConfigsIkeProposalArgs']]] ike_proposals: if `provider`== `custom-ipsec` - :param pulumi.Input[int] ipsec_lifetime: if `provider`== `custom-ipsec` - :param pulumi.Input[Sequence[pulumi.Input['GatewayTunnelConfigsIpsecProposalArgs']]] ipsec_proposals: Only if `provider`== `custom-ipsec` - :param pulumi.Input[str] local_id: Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` - :param pulumi.Input[str] mode: enum: `active-active`, `active-standby` - :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: networks reachable via this tunnel - :param pulumi.Input['GatewayTunnelConfigsProbeArgs'] probe: Only if `provider`== `custom-ipsec` - :param pulumi.Input[str] protocol: Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` - :param pulumi.Input[str] provider: enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` - :param pulumi.Input[str] psk: Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` - :param pulumi.Input[str] version: Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + :param pulumi.Input[int] ike_lifetime: Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 + :param pulumi.Input[str] ike_mode: Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` + :param pulumi.Input[Sequence[pulumi.Input['GatewayTunnelConfigsIkeProposalArgs']]] ike_proposals: if `provider`==`custom-ipsec` + :param pulumi.Input[int] ipsec_lifetime: Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 + :param pulumi.Input[Sequence[pulumi.Input['GatewayTunnelConfigsIpsecProposalArgs']]] ipsec_proposals: Only if `provider`==`custom-ipsec` + :param pulumi.Input[str] local_id: Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param pulumi.Input[str] mode: Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` + :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: if `provider`==`custom-ipsec`, networks reachable via this tunnel + :param pulumi.Input['GatewayTunnelConfigsPrimaryArgs'] primary: Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param pulumi.Input['GatewayTunnelConfigsProbeArgs'] probe: Only if `provider`==`custom-ipsec` + :param pulumi.Input[str] protocol: Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` + :param pulumi.Input[str] provider: Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + :param pulumi.Input[str] psk: Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param pulumi.Input['GatewayTunnelConfigsSecondaryArgs'] secondary: Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param pulumi.Input[str] version: Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ if auto_provision is not None: pulumi.set(__self__, "auto_provision", auto_provision) @@ -8413,7 +8497,7 @@ def auto_provision(self, value: Optional[pulumi.Input['GatewayTunnelConfigsAutoP @pulumi.getter(name="ikeLifetime") def ike_lifetime(self) -> Optional[pulumi.Input[int]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ return pulumi.get(self, "ike_lifetime") @@ -8425,7 +8509,7 @@ def ike_lifetime(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="ikeMode") def ike_mode(self) -> Optional[pulumi.Input[str]]: """ - Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` """ return pulumi.get(self, "ike_mode") @@ -8437,7 +8521,7 @@ def ike_mode(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="ikeProposals") def ike_proposals(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['GatewayTunnelConfigsIkeProposalArgs']]]]: """ - if `provider`== `custom-ipsec` + if `provider`==`custom-ipsec` """ return pulumi.get(self, "ike_proposals") @@ -8449,7 +8533,7 @@ def ike_proposals(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Gate @pulumi.getter(name="ipsecLifetime") def ipsec_lifetime(self) -> Optional[pulumi.Input[int]]: """ - if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ return pulumi.get(self, "ipsec_lifetime") @@ -8461,7 +8545,7 @@ def ipsec_lifetime(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="ipsecProposals") def ipsec_proposals(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['GatewayTunnelConfigsIpsecProposalArgs']]]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ return pulumi.get(self, "ipsec_proposals") @@ -8473,10 +8557,7 @@ def ipsec_proposals(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Ga @pulumi.getter(name="localId") def local_id(self) -> Optional[pulumi.Input[str]]: """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "local_id") @@ -8488,7 +8569,7 @@ def local_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def mode(self) -> Optional[pulumi.Input[str]]: """ - enum: `active-active`, `active-standby` + Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` """ return pulumi.get(self, "mode") @@ -8500,7 +8581,7 @@ def mode(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - networks reachable via this tunnel + if `provider`==`custom-ipsec`, networks reachable via this tunnel """ return pulumi.get(self, "networks") @@ -8511,6 +8592,9 @@ def networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def primary(self) -> Optional[pulumi.Input['GatewayTunnelConfigsPrimaryArgs']]: + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ return pulumi.get(self, "primary") @primary.setter @@ -8521,7 +8605,7 @@ def primary(self, value: Optional[pulumi.Input['GatewayTunnelConfigsPrimaryArgs' @pulumi.getter def probe(self) -> Optional[pulumi.Input['GatewayTunnelConfigsProbeArgs']]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ return pulumi.get(self, "probe") @@ -8533,7 +8617,7 @@ def probe(self, value: Optional[pulumi.Input['GatewayTunnelConfigsProbeArgs']]): @pulumi.getter def protocol(self) -> Optional[pulumi.Input[str]]: """ - Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` """ return pulumi.get(self, "protocol") @@ -8545,7 +8629,7 @@ def protocol(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def provider(self) -> Optional[pulumi.Input[str]]: """ - enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` """ return pulumi.get(self, "provider") @@ -8557,10 +8641,7 @@ def provider(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def psk(self) -> Optional[pulumi.Input[str]]: """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "psk") @@ -8571,6 +8652,9 @@ def psk(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def secondary(self) -> Optional[pulumi.Input['GatewayTunnelConfigsSecondaryArgs']]: + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ return pulumi.get(self, "secondary") @secondary.setter @@ -8581,7 +8665,7 @@ def secondary(self, value: Optional[pulumi.Input['GatewayTunnelConfigsSecondaryA @pulumi.getter def version(self) -> Optional[pulumi.Input[str]]: """ - Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ return pulumi.get(self, "version") @@ -8592,9 +8676,20 @@ def version(self, value: Optional[pulumi.Input[str]]): if not MYPY: class GatewayTunnelConfigsAutoProvisionArgsDict(TypedDict): + provider: pulumi.Input[str] + """ + enum: `jse-ipsec`, `zscaler-ipsec` + """ enable: NotRequired[pulumi.Input[bool]] latlng: NotRequired[pulumi.Input['GatewayTunnelConfigsAutoProvisionLatlngArgsDict']] + """ + API override for POP selection + """ primary: NotRequired[pulumi.Input['GatewayTunnelConfigsAutoProvisionPrimaryArgsDict']] + region: NotRequired[pulumi.Input[str]] + """ + API override for POP selection + """ secondary: NotRequired[pulumi.Input['GatewayTunnelConfigsAutoProvisionSecondaryArgsDict']] elif False: GatewayTunnelConfigsAutoProvisionArgsDict: TypeAlias = Mapping[str, Any] @@ -8602,19 +8697,41 @@ class GatewayTunnelConfigsAutoProvisionArgsDict(TypedDict): @pulumi.input_type class GatewayTunnelConfigsAutoProvisionArgs: def __init__(__self__, *, + provider: pulumi.Input[str], enable: Optional[pulumi.Input[bool]] = None, latlng: Optional[pulumi.Input['GatewayTunnelConfigsAutoProvisionLatlngArgs']] = None, primary: Optional[pulumi.Input['GatewayTunnelConfigsAutoProvisionPrimaryArgs']] = None, + region: Optional[pulumi.Input[str]] = None, secondary: Optional[pulumi.Input['GatewayTunnelConfigsAutoProvisionSecondaryArgs']] = None): + """ + :param pulumi.Input[str] provider: enum: `jse-ipsec`, `zscaler-ipsec` + :param pulumi.Input['GatewayTunnelConfigsAutoProvisionLatlngArgs'] latlng: API override for POP selection + :param pulumi.Input[str] region: API override for POP selection + """ + pulumi.set(__self__, "provider", provider) if enable is not None: pulumi.set(__self__, "enable", enable) if latlng is not None: pulumi.set(__self__, "latlng", latlng) if primary is not None: pulumi.set(__self__, "primary", primary) + if region is not None: + pulumi.set(__self__, "region", region) if secondary is not None: pulumi.set(__self__, "secondary", secondary) + @property + @pulumi.getter + def provider(self) -> pulumi.Input[str]: + """ + enum: `jse-ipsec`, `zscaler-ipsec` + """ + return pulumi.get(self, "provider") + + @provider.setter + def provider(self, value: pulumi.Input[str]): + pulumi.set(self, "provider", value) + @property @pulumi.getter def enable(self) -> Optional[pulumi.Input[bool]]: @@ -8627,6 +8744,9 @@ def enable(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def latlng(self) -> Optional[pulumi.Input['GatewayTunnelConfigsAutoProvisionLatlngArgs']]: + """ + API override for POP selection + """ return pulumi.get(self, "latlng") @latlng.setter @@ -8642,6 +8762,18 @@ def primary(self) -> Optional[pulumi.Input['GatewayTunnelConfigsAutoProvisionPri def primary(self, value: Optional[pulumi.Input['GatewayTunnelConfigsAutoProvisionPrimaryArgs']]): pulumi.set(self, "primary", value) + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + """ + API override for POP selection + """ + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + @property @pulumi.getter def secondary(self) -> Optional[pulumi.Input['GatewayTunnelConfigsAutoProvisionSecondaryArgs']]: @@ -8688,7 +8820,7 @@ def lng(self, value: pulumi.Input[float]): if not MYPY: class GatewayTunnelConfigsAutoProvisionPrimaryArgsDict(TypedDict): - num_hosts: NotRequired[pulumi.Input[str]] + probe_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] wan_names: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ optional, only needed if `vars_only`==`false` @@ -8699,24 +8831,24 @@ class GatewayTunnelConfigsAutoProvisionPrimaryArgsDict(TypedDict): @pulumi.input_type class GatewayTunnelConfigsAutoProvisionPrimaryArgs: def __init__(__self__, *, - num_hosts: Optional[pulumi.Input[str]] = None, + probe_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, wan_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ :param pulumi.Input[Sequence[pulumi.Input[str]]] wan_names: optional, only needed if `vars_only`==`false` """ - if num_hosts is not None: - pulumi.set(__self__, "num_hosts", num_hosts) + if probe_ips is not None: + pulumi.set(__self__, "probe_ips", probe_ips) if wan_names is not None: pulumi.set(__self__, "wan_names", wan_names) @property - @pulumi.getter(name="numHosts") - def num_hosts(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "num_hosts") + @pulumi.getter(name="probeIps") + def probe_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "probe_ips") - @num_hosts.setter - def num_hosts(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "num_hosts", value) + @probe_ips.setter + def probe_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "probe_ips", value) @property @pulumi.getter(name="wanNames") @@ -8733,7 +8865,7 @@ def wan_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): if not MYPY: class GatewayTunnelConfigsAutoProvisionSecondaryArgsDict(TypedDict): - num_hosts: NotRequired[pulumi.Input[str]] + probe_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] wan_names: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ optional, only needed if `vars_only`==`false` @@ -8744,24 +8876,24 @@ class GatewayTunnelConfigsAutoProvisionSecondaryArgsDict(TypedDict): @pulumi.input_type class GatewayTunnelConfigsAutoProvisionSecondaryArgs: def __init__(__self__, *, - num_hosts: Optional[pulumi.Input[str]] = None, + probe_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, wan_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ :param pulumi.Input[Sequence[pulumi.Input[str]]] wan_names: optional, only needed if `vars_only`==`false` """ - if num_hosts is not None: - pulumi.set(__self__, "num_hosts", num_hosts) + if probe_ips is not None: + pulumi.set(__self__, "probe_ips", probe_ips) if wan_names is not None: pulumi.set(__self__, "wan_names", wan_names) @property - @pulumi.getter(name="numHosts") - def num_hosts(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "num_hosts") + @pulumi.getter(name="probeIps") + def probe_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "probe_ips") - @num_hosts.setter - def num_hosts(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "num_hosts", value) + @probe_ips.setter + def probe_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "probe_ips", value) @property @pulumi.getter(name="wanNames") @@ -8886,7 +9018,7 @@ class GatewayTunnelConfigsIpsecProposalArgsDict(TypedDict): """ dh_group: NotRequired[pulumi.Input[str]] """ - Only if `provider`== `custom-ipsec`. enum: + Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -8913,7 +9045,7 @@ def __init__(__self__, *, enc_algo: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[str] auth_algo: enum: `md5`, `sha1`, `sha2` - :param pulumi.Input[str] dh_group: Only if `provider`== `custom-ipsec`. enum: + :param pulumi.Input[str] dh_group: Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -8949,7 +9081,7 @@ def auth_algo(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="dhGroup") def dh_group(self) -> Optional[pulumi.Input[str]]: """ - Only if `provider`== `custom-ipsec`. enum: + Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -8982,63 +9114,64 @@ def enc_algo(self, value: Optional[pulumi.Input[str]]): if not MYPY: class GatewayTunnelConfigsPrimaryArgsDict(TypedDict): - hosts: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + hosts: pulumi.Input[Sequence[pulumi.Input[str]]] + wan_names: pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ probe_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] remote_ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - wan_names: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] elif False: GatewayTunnelConfigsPrimaryArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type class GatewayTunnelConfigsPrimaryArgs: def __init__(__self__, *, - hosts: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + hosts: pulumi.Input[Sequence[pulumi.Input[str]]], + wan_names: pulumi.Input[Sequence[pulumi.Input[str]]], internal_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, probe_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - remote_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - wan_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + remote_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` - :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_ids: Only if `provider`== `custom-ipsec` + :param pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` + :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_ids: Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - if hosts is not None: - pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "wan_names", wan_names) if internal_ips is not None: pulumi.set(__self__, "internal_ips", internal_ips) if probe_ips is not None: pulumi.set(__self__, "probe_ips", probe_ips) if remote_ids is not None: pulumi.set(__self__, "remote_ids", remote_ids) - if wan_names is not None: - pulumi.set(__self__, "wan_names", wan_names) @property @pulumi.getter - def hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + def hosts(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: return pulumi.get(self, "hosts") @hosts.setter - def hosts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + def hosts(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): pulumi.set(self, "hosts", value) + @property + @pulumi.getter(name="wanNames") + def wan_names(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "wan_names") + + @wan_names.setter + def wan_names(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "wan_names", value) + @property @pulumi.getter(name="internalIps") def internal_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ return pulumi.get(self, "internal_ips") @@ -9059,7 +9192,7 @@ def probe_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @pulumi.getter(name="remoteIds") def remote_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "remote_ids") @@ -9067,15 +9200,6 @@ def remote_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: def remote_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "remote_ids", value) - @property - @pulumi.getter(name="wanNames") - def wan_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - return pulumi.get(self, "wan_names") - - @wan_names.setter - def wan_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): - pulumi.set(self, "wan_names", value) - if not MYPY: class GatewayTunnelConfigsProbeArgsDict(TypedDict): @@ -9171,63 +9295,64 @@ def type(self, value: Optional[pulumi.Input[str]]): if not MYPY: class GatewayTunnelConfigsSecondaryArgsDict(TypedDict): - hosts: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + hosts: pulumi.Input[Sequence[pulumi.Input[str]]] + wan_names: pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ probe_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] remote_ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - wan_names: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] elif False: GatewayTunnelConfigsSecondaryArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type class GatewayTunnelConfigsSecondaryArgs: def __init__(__self__, *, - hosts: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + hosts: pulumi.Input[Sequence[pulumi.Input[str]]], + wan_names: pulumi.Input[Sequence[pulumi.Input[str]]], internal_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, probe_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - remote_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - wan_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + remote_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` - :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_ids: Only if `provider`== `custom-ipsec` + :param pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` + :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_ids: Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - if hosts is not None: - pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "wan_names", wan_names) if internal_ips is not None: pulumi.set(__self__, "internal_ips", internal_ips) if probe_ips is not None: pulumi.set(__self__, "probe_ips", probe_ips) if remote_ids is not None: pulumi.set(__self__, "remote_ids", remote_ids) - if wan_names is not None: - pulumi.set(__self__, "wan_names", wan_names) @property @pulumi.getter - def hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + def hosts(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: return pulumi.get(self, "hosts") @hosts.setter - def hosts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + def hosts(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): pulumi.set(self, "hosts", value) + @property + @pulumi.getter(name="wanNames") + def wan_names(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "wan_names") + + @wan_names.setter + def wan_names(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "wan_names", value) + @property @pulumi.getter(name="internalIps") def internal_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ return pulumi.get(self, "internal_ips") @@ -9248,7 +9373,7 @@ def probe_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @pulumi.getter(name="remoteIds") def remote_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "remote_ids") @@ -9256,15 +9381,6 @@ def remote_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: def remote_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "remote_ids", value) - @property - @pulumi.getter(name="wanNames") - def wan_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - return pulumi.get(self, "wan_names") - - @wan_names.setter - def wan_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): - pulumi.set(self, "wan_names", value) - if not MYPY: class GatewayTunnelProviderOptionsArgsDict(TypedDict): @@ -9320,29 +9436,26 @@ def zscaler(self, value: Optional[pulumi.Input['GatewayTunnelProviderOptionsZsca if not MYPY: class GatewayTunnelProviderOptionsJseArgsDict(TypedDict): - name: NotRequired[pulumi.Input[str]] num_users: NotRequired[pulumi.Input[int]] + org_name: NotRequired[pulumi.Input[str]] + """ + JSE Organization name + """ elif False: GatewayTunnelProviderOptionsJseArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type class GatewayTunnelProviderOptionsJseArgs: def __init__(__self__, *, - name: Optional[pulumi.Input[str]] = None, - num_users: Optional[pulumi.Input[int]] = None): - if name is not None: - pulumi.set(__self__, "name", name) + num_users: Optional[pulumi.Input[int]] = None, + org_name: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] org_name: JSE Organization name + """ if num_users is not None: pulumi.set(__self__, "num_users", num_users) - - @property - @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "name") - - @name.setter - def name(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "name", value) + if org_name is not None: + pulumi.set(__self__, "org_name", org_name) @property @pulumi.getter(name="numUsers") @@ -9353,41 +9466,75 @@ def num_users(self) -> Optional[pulumi.Input[int]]: def num_users(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "num_users", value) + @property + @pulumi.getter(name="orgName") + def org_name(self) -> Optional[pulumi.Input[str]]: + """ + JSE Organization name + """ + return pulumi.get(self, "org_name") + + @org_name.setter + def org_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "org_name", value) + if not MYPY: class GatewayTunnelProviderOptionsZscalerArgsDict(TypedDict): - aup_acceptance_required: NotRequired[pulumi.Input[bool]] - aup_expire: NotRequired[pulumi.Input[int]] + aup_block_internet_until_accepted: NotRequired[pulumi.Input[bool]] + aup_enabled: NotRequired[pulumi.Input[bool]] """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - aup_ssl_proxy: NotRequired[pulumi.Input[bool]] + aup_force_ssl_inspection: NotRequired[pulumi.Input[bool]] """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - download_mbps: NotRequired[pulumi.Input[int]] + aup_timeout_in_days: NotRequired[pulumi.Input[int]] """ - the download bandwidth cap of the link, in Mbps + Required if `aup_enabled`==`true`. Days before AUP is requested again """ - enable_aup: NotRequired[pulumi.Input[bool]] + auth_required: NotRequired[pulumi.Input[bool]] """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Enable this option to enforce user authentication """ - enable_caution: NotRequired[pulumi.Input[bool]] + caution_enabled: NotRequired[pulumi.Input[bool]] """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + """ + dn_bandwidth: NotRequired[pulumi.Input[float]] + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + idle_time_in_minutes: NotRequired[pulumi.Input[int]] + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + ofw_enabled: NotRequired[pulumi.Input[bool]] + """ + if `true`, enable the firewall control option """ - enforce_authentication: NotRequired[pulumi.Input[bool]] - name: NotRequired[pulumi.Input[str]] sub_locations: NotRequired[pulumi.Input[Sequence[pulumi.Input['GatewayTunnelProviderOptionsZscalerSubLocationArgsDict']]]] """ - if `use_xff`==`true` + `sub-locations` can be used for specific uses cases to define different configuration based on the user network + """ + surrogate_ip: NotRequired[pulumi.Input[bool]] + """ + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies """ - upload_mbps: NotRequired[pulumi.Input[int]] + surrogate_ip_enforced_for_known_browsers: NotRequired[pulumi.Input[bool]] """ - the download bandwidth cap of the link, in Mbps + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers """ - use_xff: NotRequired[pulumi.Input[bool]] + surrogate_refresh_time_in_minutes: NotRequired[pulumi.Input[int]] + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + up_bandwidth: NotRequired[pulumi.Input[float]] + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + xff_forward_enabled: NotRequired[pulumi.Input[bool]] """ location uses proxy chaining to forward traffic """ @@ -9397,142 +9544,178 @@ class GatewayTunnelProviderOptionsZscalerArgsDict(TypedDict): @pulumi.input_type class GatewayTunnelProviderOptionsZscalerArgs: def __init__(__self__, *, - aup_acceptance_required: Optional[pulumi.Input[bool]] = None, - aup_expire: Optional[pulumi.Input[int]] = None, - aup_ssl_proxy: Optional[pulumi.Input[bool]] = None, - download_mbps: Optional[pulumi.Input[int]] = None, - enable_aup: Optional[pulumi.Input[bool]] = None, - enable_caution: Optional[pulumi.Input[bool]] = None, - enforce_authentication: Optional[pulumi.Input[bool]] = None, - name: Optional[pulumi.Input[str]] = None, + aup_block_internet_until_accepted: Optional[pulumi.Input[bool]] = None, + aup_enabled: Optional[pulumi.Input[bool]] = None, + aup_force_ssl_inspection: Optional[pulumi.Input[bool]] = None, + aup_timeout_in_days: Optional[pulumi.Input[int]] = None, + auth_required: Optional[pulumi.Input[bool]] = None, + caution_enabled: Optional[pulumi.Input[bool]] = None, + dn_bandwidth: Optional[pulumi.Input[float]] = None, + idle_time_in_minutes: Optional[pulumi.Input[int]] = None, + ofw_enabled: Optional[pulumi.Input[bool]] = None, sub_locations: Optional[pulumi.Input[Sequence[pulumi.Input['GatewayTunnelProviderOptionsZscalerSubLocationArgs']]]] = None, - upload_mbps: Optional[pulumi.Input[int]] = None, - use_xff: Optional[pulumi.Input[bool]] = None): - """ - :param pulumi.Input[int] aup_expire: days before AUP is requested again - :param pulumi.Input[bool] aup_ssl_proxy: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - :param pulumi.Input[int] download_mbps: the download bandwidth cap of the link, in Mbps - :param pulumi.Input[bool] enable_aup: if `use_xff`==`true`, display Acceptable Use Policy (AUP) - :param pulumi.Input[bool] enable_caution: when `enforce_authentication`==`false`, display caution notification for non-authenticated users - :param pulumi.Input[Sequence[pulumi.Input['GatewayTunnelProviderOptionsZscalerSubLocationArgs']]] sub_locations: if `use_xff`==`true` - :param pulumi.Input[int] upload_mbps: the download bandwidth cap of the link, in Mbps - :param pulumi.Input[bool] use_xff: location uses proxy chaining to forward traffic - """ - if aup_acceptance_required is not None: - pulumi.set(__self__, "aup_acceptance_required", aup_acceptance_required) - if aup_expire is not None: - pulumi.set(__self__, "aup_expire", aup_expire) - if aup_ssl_proxy is not None: - pulumi.set(__self__, "aup_ssl_proxy", aup_ssl_proxy) - if download_mbps is not None: - pulumi.set(__self__, "download_mbps", download_mbps) - if enable_aup is not None: - pulumi.set(__self__, "enable_aup", enable_aup) - if enable_caution is not None: - pulumi.set(__self__, "enable_caution", enable_caution) - if enforce_authentication is not None: - pulumi.set(__self__, "enforce_authentication", enforce_authentication) - if name is not None: - pulumi.set(__self__, "name", name) + surrogate_ip: Optional[pulumi.Input[bool]] = None, + surrogate_ip_enforced_for_known_browsers: Optional[pulumi.Input[bool]] = None, + surrogate_refresh_time_in_minutes: Optional[pulumi.Input[int]] = None, + up_bandwidth: Optional[pulumi.Input[float]] = None, + xff_forward_enabled: Optional[pulumi.Input[bool]] = None): + """ + :param pulumi.Input[bool] aup_enabled: Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + :param pulumi.Input[bool] aup_force_ssl_inspection: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + :param pulumi.Input[int] aup_timeout_in_days: Required if `aup_enabled`==`true`. Days before AUP is requested again + :param pulumi.Input[bool] auth_required: Enable this option to enforce user authentication + :param pulumi.Input[bool] caution_enabled: Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + :param pulumi.Input[float] dn_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param pulumi.Input[int] idle_time_in_minutes: Required if `surrogate_IP`==`true`, idle Time to Disassociation + :param pulumi.Input[bool] ofw_enabled: if `true`, enable the firewall control option + :param pulumi.Input[Sequence[pulumi.Input['GatewayTunnelProviderOptionsZscalerSubLocationArgs']]] sub_locations: `sub-locations` can be used for specific uses cases to define different configuration based on the user network + :param pulumi.Input[bool] surrogate_ip: Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + :param pulumi.Input[bool] surrogate_ip_enforced_for_known_browsers: Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + :param pulumi.Input[int] surrogate_refresh_time_in_minutes: Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + :param pulumi.Input[float] up_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param pulumi.Input[bool] xff_forward_enabled: location uses proxy chaining to forward traffic + """ + if aup_block_internet_until_accepted is not None: + pulumi.set(__self__, "aup_block_internet_until_accepted", aup_block_internet_until_accepted) + if aup_enabled is not None: + pulumi.set(__self__, "aup_enabled", aup_enabled) + if aup_force_ssl_inspection is not None: + pulumi.set(__self__, "aup_force_ssl_inspection", aup_force_ssl_inspection) + if aup_timeout_in_days is not None: + pulumi.set(__self__, "aup_timeout_in_days", aup_timeout_in_days) + if auth_required is not None: + pulumi.set(__self__, "auth_required", auth_required) + if caution_enabled is not None: + pulumi.set(__self__, "caution_enabled", caution_enabled) + if dn_bandwidth is not None: + pulumi.set(__self__, "dn_bandwidth", dn_bandwidth) + if idle_time_in_minutes is not None: + pulumi.set(__self__, "idle_time_in_minutes", idle_time_in_minutes) + if ofw_enabled is not None: + pulumi.set(__self__, "ofw_enabled", ofw_enabled) if sub_locations is not None: pulumi.set(__self__, "sub_locations", sub_locations) - if upload_mbps is not None: - pulumi.set(__self__, "upload_mbps", upload_mbps) - if use_xff is not None: - pulumi.set(__self__, "use_xff", use_xff) + if surrogate_ip is not None: + pulumi.set(__self__, "surrogate_ip", surrogate_ip) + if surrogate_ip_enforced_for_known_browsers is not None: + pulumi.set(__self__, "surrogate_ip_enforced_for_known_browsers", surrogate_ip_enforced_for_known_browsers) + if surrogate_refresh_time_in_minutes is not None: + pulumi.set(__self__, "surrogate_refresh_time_in_minutes", surrogate_refresh_time_in_minutes) + if up_bandwidth is not None: + pulumi.set(__self__, "up_bandwidth", up_bandwidth) + if xff_forward_enabled is not None: + pulumi.set(__self__, "xff_forward_enabled", xff_forward_enabled) @property - @pulumi.getter(name="aupAcceptanceRequired") - def aup_acceptance_required(self) -> Optional[pulumi.Input[bool]]: - return pulumi.get(self, "aup_acceptance_required") + @pulumi.getter(name="aupBlockInternetUntilAccepted") + def aup_block_internet_until_accepted(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "aup_block_internet_until_accepted") - @aup_acceptance_required.setter - def aup_acceptance_required(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "aup_acceptance_required", value) + @aup_block_internet_until_accepted.setter + def aup_block_internet_until_accepted(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_block_internet_until_accepted", value) @property - @pulumi.getter(name="aupExpire") - def aup_expire(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="aupEnabled") + def aup_enabled(self) -> Optional[pulumi.Input[bool]]: """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - return pulumi.get(self, "aup_expire") + return pulumi.get(self, "aup_enabled") - @aup_expire.setter - def aup_expire(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "aup_expire", value) + @aup_enabled.setter + def aup_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_enabled", value) @property - @pulumi.getter(name="aupSslProxy") - def aup_ssl_proxy(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="aupForceSslInspection") + def aup_force_ssl_inspection(self) -> Optional[pulumi.Input[bool]]: """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - return pulumi.get(self, "aup_ssl_proxy") + return pulumi.get(self, "aup_force_ssl_inspection") - @aup_ssl_proxy.setter - def aup_ssl_proxy(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "aup_ssl_proxy", value) + @aup_force_ssl_inspection.setter + def aup_force_ssl_inspection(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_force_ssl_inspection", value) @property - @pulumi.getter(name="downloadMbps") - def download_mbps(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="aupTimeoutInDays") + def aup_timeout_in_days(self) -> Optional[pulumi.Input[int]]: """ - the download bandwidth cap of the link, in Mbps + Required if `aup_enabled`==`true`. Days before AUP is requested again """ - return pulumi.get(self, "download_mbps") + return pulumi.get(self, "aup_timeout_in_days") - @download_mbps.setter - def download_mbps(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "download_mbps", value) + @aup_timeout_in_days.setter + def aup_timeout_in_days(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "aup_timeout_in_days", value) @property - @pulumi.getter(name="enableAup") - def enable_aup(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="authRequired") + def auth_required(self) -> Optional[pulumi.Input[bool]]: """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Enable this option to enforce user authentication """ - return pulumi.get(self, "enable_aup") + return pulumi.get(self, "auth_required") - @enable_aup.setter - def enable_aup(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enable_aup", value) + @auth_required.setter + def auth_required(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "auth_required", value) @property - @pulumi.getter(name="enableCaution") - def enable_caution(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="cautionEnabled") + def caution_enabled(self) -> Optional[pulumi.Input[bool]]: """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - return pulumi.get(self, "enable_caution") + return pulumi.get(self, "caution_enabled") - @enable_caution.setter - def enable_caution(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enable_caution", value) + @caution_enabled.setter + def caution_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "caution_enabled", value) @property - @pulumi.getter(name="enforceAuthentication") - def enforce_authentication(self) -> Optional[pulumi.Input[bool]]: - return pulumi.get(self, "enforce_authentication") + @pulumi.getter(name="dnBandwidth") + def dn_bandwidth(self) -> Optional[pulumi.Input[float]]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "dn_bandwidth") - @enforce_authentication.setter - def enforce_authentication(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enforce_authentication", value) + @dn_bandwidth.setter + def dn_bandwidth(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "dn_bandwidth", value) @property - @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "name") + @pulumi.getter(name="idleTimeInMinutes") + def idle_time_in_minutes(self) -> Optional[pulumi.Input[int]]: + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + return pulumi.get(self, "idle_time_in_minutes") - @name.setter - def name(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "name", value) + @idle_time_in_minutes.setter + def idle_time_in_minutes(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "idle_time_in_minutes", value) + + @property + @pulumi.getter(name="ofwEnabled") + def ofw_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + if `true`, enable the firewall control option + """ + return pulumi.get(self, "ofw_enabled") + + @ofw_enabled.setter + def ofw_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "ofw_enabled", value) @property @pulumi.getter(name="subLocations") def sub_locations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['GatewayTunnelProviderOptionsZscalerSubLocationArgs']]]]: """ - if `use_xff`==`true` + `sub-locations` can be used for specific uses cases to define different configuration based on the user network """ return pulumi.get(self, "sub_locations") @@ -9541,58 +9724,120 @@ def sub_locations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Gate pulumi.set(self, "sub_locations", value) @property - @pulumi.getter(name="uploadMbps") - def upload_mbps(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="surrogateIp") + def surrogate_ip(self) -> Optional[pulumi.Input[bool]]: """ - the download bandwidth cap of the link, in Mbps + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies """ - return pulumi.get(self, "upload_mbps") + return pulumi.get(self, "surrogate_ip") - @upload_mbps.setter - def upload_mbps(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "upload_mbps", value) + @surrogate_ip.setter + def surrogate_ip(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "surrogate_ip", value) @property - @pulumi.getter(name="useXff") - def use_xff(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="surrogateIpEnforcedForKnownBrowsers") + def surrogate_ip_enforced_for_known_browsers(self) -> Optional[pulumi.Input[bool]]: + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + """ + return pulumi.get(self, "surrogate_ip_enforced_for_known_browsers") + + @surrogate_ip_enforced_for_known_browsers.setter + def surrogate_ip_enforced_for_known_browsers(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "surrogate_ip_enforced_for_known_browsers", value) + + @property + @pulumi.getter(name="surrogateRefreshTimeInMinutes") + def surrogate_refresh_time_in_minutes(self) -> Optional[pulumi.Input[int]]: + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + return pulumi.get(self, "surrogate_refresh_time_in_minutes") + + @surrogate_refresh_time_in_minutes.setter + def surrogate_refresh_time_in_minutes(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "surrogate_refresh_time_in_minutes", value) + + @property + @pulumi.getter(name="upBandwidth") + def up_bandwidth(self) -> Optional[pulumi.Input[float]]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "up_bandwidth") + + @up_bandwidth.setter + def up_bandwidth(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "up_bandwidth", value) + + @property + @pulumi.getter(name="xffForwardEnabled") + def xff_forward_enabled(self) -> Optional[pulumi.Input[bool]]: """ location uses proxy chaining to forward traffic """ - return pulumi.get(self, "use_xff") + return pulumi.get(self, "xff_forward_enabled") - @use_xff.setter - def use_xff(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "use_xff", value) + @xff_forward_enabled.setter + def xff_forward_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "xff_forward_enabled", value) if not MYPY: class GatewayTunnelProviderOptionsZscalerSubLocationArgsDict(TypedDict): - aup_acceptance_required: NotRequired[pulumi.Input[bool]] - aup_expire: NotRequired[pulumi.Input[int]] + aup_block_internet_until_accepted: NotRequired[pulumi.Input[bool]] + aup_enabled: NotRequired[pulumi.Input[bool]] """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - aup_ssl_proxy: NotRequired[pulumi.Input[bool]] + aup_force_ssl_inspection: NotRequired[pulumi.Input[bool]] """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - download_mbps: NotRequired[pulumi.Input[int]] + aup_timeout_in_days: NotRequired[pulumi.Input[int]] """ - the download bandwidth cap of the link, in Mbps + Required if `aup_enabled`==`true`. Days before AUP is requested again """ - enable_aup: NotRequired[pulumi.Input[bool]] + auth_required: NotRequired[pulumi.Input[bool]] """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Enable this option to authenticate users """ - enable_caution: NotRequired[pulumi.Input[bool]] + caution_enabled: NotRequired[pulumi.Input[bool]] """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - enforce_authentication: NotRequired[pulumi.Input[bool]] - subnets: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] - upload_mbps: NotRequired[pulumi.Input[int]] + dn_bandwidth: NotRequired[pulumi.Input[float]] """ - the download bandwidth cap of the link, in Mbps + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + idle_time_in_minutes: NotRequired[pulumi.Input[int]] + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + name: NotRequired[pulumi.Input[str]] + """ + Network name + """ + ofw_enabled: NotRequired[pulumi.Input[bool]] + """ + if `true`, enable the firewall control option + """ + surrogate_ip: NotRequired[pulumi.Input[bool]] + """ + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + """ + surrogate_ip_enforced_for_known_browsers: NotRequired[pulumi.Input[bool]] + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + """ + surrogate_refresh_time_in_minutes: NotRequired[pulumi.Input[int]] + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + up_bandwidth: NotRequired[pulumi.Input[float]] + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set """ elif False: GatewayTunnelProviderOptionsZscalerSubLocationArgsDict: TypeAlias = Mapping[str, Any] @@ -9600,140 +9845,228 @@ class GatewayTunnelProviderOptionsZscalerSubLocationArgsDict(TypedDict): @pulumi.input_type class GatewayTunnelProviderOptionsZscalerSubLocationArgs: def __init__(__self__, *, - aup_acceptance_required: Optional[pulumi.Input[bool]] = None, - aup_expire: Optional[pulumi.Input[int]] = None, - aup_ssl_proxy: Optional[pulumi.Input[bool]] = None, - download_mbps: Optional[pulumi.Input[int]] = None, - enable_aup: Optional[pulumi.Input[bool]] = None, - enable_caution: Optional[pulumi.Input[bool]] = None, - enforce_authentication: Optional[pulumi.Input[bool]] = None, - subnets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - upload_mbps: Optional[pulumi.Input[int]] = None): - """ - :param pulumi.Input[int] aup_expire: days before AUP is requested again - :param pulumi.Input[bool] aup_ssl_proxy: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - :param pulumi.Input[int] download_mbps: the download bandwidth cap of the link, in Mbps - :param pulumi.Input[bool] enable_aup: if `use_xff`==`true`, display Acceptable Use Policy (AUP) - :param pulumi.Input[bool] enable_caution: when `enforce_authentication`==`false`, display caution notification for non-authenticated users - :param pulumi.Input[int] upload_mbps: the download bandwidth cap of the link, in Mbps - """ - if aup_acceptance_required is not None: - pulumi.set(__self__, "aup_acceptance_required", aup_acceptance_required) - if aup_expire is not None: - pulumi.set(__self__, "aup_expire", aup_expire) - if aup_ssl_proxy is not None: - pulumi.set(__self__, "aup_ssl_proxy", aup_ssl_proxy) - if download_mbps is not None: - pulumi.set(__self__, "download_mbps", download_mbps) - if enable_aup is not None: - pulumi.set(__self__, "enable_aup", enable_aup) - if enable_caution is not None: - pulumi.set(__self__, "enable_caution", enable_caution) - if enforce_authentication is not None: - pulumi.set(__self__, "enforce_authentication", enforce_authentication) - if subnets is not None: - pulumi.set(__self__, "subnets", subnets) - if upload_mbps is not None: - pulumi.set(__self__, "upload_mbps", upload_mbps) + aup_block_internet_until_accepted: Optional[pulumi.Input[bool]] = None, + aup_enabled: Optional[pulumi.Input[bool]] = None, + aup_force_ssl_inspection: Optional[pulumi.Input[bool]] = None, + aup_timeout_in_days: Optional[pulumi.Input[int]] = None, + auth_required: Optional[pulumi.Input[bool]] = None, + caution_enabled: Optional[pulumi.Input[bool]] = None, + dn_bandwidth: Optional[pulumi.Input[float]] = None, + idle_time_in_minutes: Optional[pulumi.Input[int]] = None, + name: Optional[pulumi.Input[str]] = None, + ofw_enabled: Optional[pulumi.Input[bool]] = None, + surrogate_ip: Optional[pulumi.Input[bool]] = None, + surrogate_ip_enforced_for_known_browsers: Optional[pulumi.Input[bool]] = None, + surrogate_refresh_time_in_minutes: Optional[pulumi.Input[int]] = None, + up_bandwidth: Optional[pulumi.Input[float]] = None): + """ + :param pulumi.Input[bool] aup_enabled: Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + :param pulumi.Input[bool] aup_force_ssl_inspection: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + :param pulumi.Input[int] aup_timeout_in_days: Required if `aup_enabled`==`true`. Days before AUP is requested again + :param pulumi.Input[bool] auth_required: Enable this option to authenticate users + :param pulumi.Input[bool] caution_enabled: Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + :param pulumi.Input[float] dn_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param pulumi.Input[int] idle_time_in_minutes: Required if `surrogate_IP`==`true`, idle Time to Disassociation + :param pulumi.Input[str] name: Network name + :param pulumi.Input[bool] ofw_enabled: if `true`, enable the firewall control option + :param pulumi.Input[bool] surrogate_ip: Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + :param pulumi.Input[bool] surrogate_ip_enforced_for_known_browsers: Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + :param pulumi.Input[int] surrogate_refresh_time_in_minutes: Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + :param pulumi.Input[float] up_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + if aup_block_internet_until_accepted is not None: + pulumi.set(__self__, "aup_block_internet_until_accepted", aup_block_internet_until_accepted) + if aup_enabled is not None: + pulumi.set(__self__, "aup_enabled", aup_enabled) + if aup_force_ssl_inspection is not None: + pulumi.set(__self__, "aup_force_ssl_inspection", aup_force_ssl_inspection) + if aup_timeout_in_days is not None: + pulumi.set(__self__, "aup_timeout_in_days", aup_timeout_in_days) + if auth_required is not None: + pulumi.set(__self__, "auth_required", auth_required) + if caution_enabled is not None: + pulumi.set(__self__, "caution_enabled", caution_enabled) + if dn_bandwidth is not None: + pulumi.set(__self__, "dn_bandwidth", dn_bandwidth) + if idle_time_in_minutes is not None: + pulumi.set(__self__, "idle_time_in_minutes", idle_time_in_minutes) + if name is not None: + pulumi.set(__self__, "name", name) + if ofw_enabled is not None: + pulumi.set(__self__, "ofw_enabled", ofw_enabled) + if surrogate_ip is not None: + pulumi.set(__self__, "surrogate_ip", surrogate_ip) + if surrogate_ip_enforced_for_known_browsers is not None: + pulumi.set(__self__, "surrogate_ip_enforced_for_known_browsers", surrogate_ip_enforced_for_known_browsers) + if surrogate_refresh_time_in_minutes is not None: + pulumi.set(__self__, "surrogate_refresh_time_in_minutes", surrogate_refresh_time_in_minutes) + if up_bandwidth is not None: + pulumi.set(__self__, "up_bandwidth", up_bandwidth) @property - @pulumi.getter(name="aupAcceptanceRequired") - def aup_acceptance_required(self) -> Optional[pulumi.Input[bool]]: - return pulumi.get(self, "aup_acceptance_required") + @pulumi.getter(name="aupBlockInternetUntilAccepted") + def aup_block_internet_until_accepted(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "aup_block_internet_until_accepted") - @aup_acceptance_required.setter - def aup_acceptance_required(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "aup_acceptance_required", value) + @aup_block_internet_until_accepted.setter + def aup_block_internet_until_accepted(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_block_internet_until_accepted", value) @property - @pulumi.getter(name="aupExpire") - def aup_expire(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="aupEnabled") + def aup_enabled(self) -> Optional[pulumi.Input[bool]]: """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - return pulumi.get(self, "aup_expire") + return pulumi.get(self, "aup_enabled") - @aup_expire.setter - def aup_expire(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "aup_expire", value) + @aup_enabled.setter + def aup_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_enabled", value) @property - @pulumi.getter(name="aupSslProxy") - def aup_ssl_proxy(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="aupForceSslInspection") + def aup_force_ssl_inspection(self) -> Optional[pulumi.Input[bool]]: """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - return pulumi.get(self, "aup_ssl_proxy") + return pulumi.get(self, "aup_force_ssl_inspection") + + @aup_force_ssl_inspection.setter + def aup_force_ssl_inspection(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_force_ssl_inspection", value) + + @property + @pulumi.getter(name="aupTimeoutInDays") + def aup_timeout_in_days(self) -> Optional[pulumi.Input[int]]: + """ + Required if `aup_enabled`==`true`. Days before AUP is requested again + """ + return pulumi.get(self, "aup_timeout_in_days") - @aup_ssl_proxy.setter - def aup_ssl_proxy(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "aup_ssl_proxy", value) + @aup_timeout_in_days.setter + def aup_timeout_in_days(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "aup_timeout_in_days", value) @property - @pulumi.getter(name="downloadMbps") - def download_mbps(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="authRequired") + def auth_required(self) -> Optional[pulumi.Input[bool]]: """ - the download bandwidth cap of the link, in Mbps + Enable this option to authenticate users """ - return pulumi.get(self, "download_mbps") + return pulumi.get(self, "auth_required") - @download_mbps.setter - def download_mbps(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "download_mbps", value) + @auth_required.setter + def auth_required(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "auth_required", value) @property - @pulumi.getter(name="enableAup") - def enable_aup(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="cautionEnabled") + def caution_enabled(self) -> Optional[pulumi.Input[bool]]: """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - return pulumi.get(self, "enable_aup") + return pulumi.get(self, "caution_enabled") - @enable_aup.setter - def enable_aup(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enable_aup", value) + @caution_enabled.setter + def caution_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "caution_enabled", value) @property - @pulumi.getter(name="enableCaution") - def enable_caution(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="dnBandwidth") + def dn_bandwidth(self) -> Optional[pulumi.Input[float]]: """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + the download bandwidth cap of the link, in Mbps. Disabled if not set """ - return pulumi.get(self, "enable_caution") + return pulumi.get(self, "dn_bandwidth") - @enable_caution.setter - def enable_caution(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enable_caution", value) + @dn_bandwidth.setter + def dn_bandwidth(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "dn_bandwidth", value) @property - @pulumi.getter(name="enforceAuthentication") - def enforce_authentication(self) -> Optional[pulumi.Input[bool]]: - return pulumi.get(self, "enforce_authentication") + @pulumi.getter(name="idleTimeInMinutes") + def idle_time_in_minutes(self) -> Optional[pulumi.Input[int]]: + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + return pulumi.get(self, "idle_time_in_minutes") - @enforce_authentication.setter - def enforce_authentication(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enforce_authentication", value) + @idle_time_in_minutes.setter + def idle_time_in_minutes(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "idle_time_in_minutes", value) @property @pulumi.getter - def subnets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - return pulumi.get(self, "subnets") + def name(self) -> Optional[pulumi.Input[str]]: + """ + Network name + """ + return pulumi.get(self, "name") - @subnets.setter - def subnets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): - pulumi.set(self, "subnets", value) + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) @property - @pulumi.getter(name="uploadMbps") - def upload_mbps(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="ofwEnabled") + def ofw_enabled(self) -> Optional[pulumi.Input[bool]]: """ - the download bandwidth cap of the link, in Mbps + if `true`, enable the firewall control option """ - return pulumi.get(self, "upload_mbps") + return pulumi.get(self, "ofw_enabled") + + @ofw_enabled.setter + def ofw_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "ofw_enabled", value) + + @property + @pulumi.getter(name="surrogateIp") + def surrogate_ip(self) -> Optional[pulumi.Input[bool]]: + """ + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + """ + return pulumi.get(self, "surrogate_ip") + + @surrogate_ip.setter + def surrogate_ip(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "surrogate_ip", value) - @upload_mbps.setter - def upload_mbps(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "upload_mbps", value) + @property + @pulumi.getter(name="surrogateIpEnforcedForKnownBrowsers") + def surrogate_ip_enforced_for_known_browsers(self) -> Optional[pulumi.Input[bool]]: + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + """ + return pulumi.get(self, "surrogate_ip_enforced_for_known_browsers") + + @surrogate_ip_enforced_for_known_browsers.setter + def surrogate_ip_enforced_for_known_browsers(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "surrogate_ip_enforced_for_known_browsers", value) + + @property + @pulumi.getter(name="surrogateRefreshTimeInMinutes") + def surrogate_refresh_time_in_minutes(self) -> Optional[pulumi.Input[int]]: + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + return pulumi.get(self, "surrogate_refresh_time_in_minutes") + + @surrogate_refresh_time_in_minutes.setter + def surrogate_refresh_time_in_minutes(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "surrogate_refresh_time_in_minutes", value) + + @property + @pulumi.getter(name="upBandwidth") + def up_bandwidth(self) -> Optional[pulumi.Input[float]]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "up_bandwidth") + + @up_bandwidth.setter + def up_bandwidth(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "up_bandwidth", value) if not MYPY: @@ -9795,14 +10128,16 @@ def networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): class SwitchAclPolicyArgsDict(TypedDict): actions: NotRequired[pulumi.Input[Sequence[pulumi.Input['SwitchAclPolicyActionArgsDict']]]] """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ name: NotRequired[pulumi.Input[str]] src_tags: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ elif False: SwitchAclPolicyArgsDict: TypeAlias = Mapping[str, Any] @@ -9814,10 +10149,12 @@ def __init__(__self__, *, name: Optional[pulumi.Input[str]] = None, src_tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input['SwitchAclPolicyActionArgs']]] actions: - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to - :param pulumi.Input[Sequence[pulumi.Input[str]]] src_tags: - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + :param pulumi.Input[Sequence[pulumi.Input['SwitchAclPolicyActionArgs']]] actions: ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + :param pulumi.Input[Sequence[pulumi.Input[str]]] src_tags: ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ if actions is not None: pulumi.set(__self__, "actions", actions) @@ -9830,8 +10167,9 @@ def __init__(__self__, *, @pulumi.getter def actions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SwitchAclPolicyActionArgs']]]]: """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ return pulumi.get(self, "actions") @@ -9852,8 +10190,9 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="srcTags") def src_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ return pulumi.get(self, "src_tags") @@ -9924,9 +10263,9 @@ class SwitchAclTagsArgsDict(TypedDict): gbp_tag: NotRequired[pulumi.Input[int]] """ required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) """ macs: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ @@ -9952,8 +10291,7 @@ class SwitchAclTagsArgsDict(TypedDict): """ specs: NotRequired[pulumi.Input[Sequence[pulumi.Input['SwitchAclTagsSpecArgsDict']]]] """ - if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any """ subnets: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ @@ -9987,9 +10325,9 @@ def __init__(__self__, *, * `static_gbp`: applying gbp tag against matching conditions * `subnet`' :param pulumi.Input[int] gbp_tag: required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) :param pulumi.Input[Sequence[pulumi.Input[str]]] macs: required if - `type`==`mac` - `type`==`static_gbp` if from matching mac @@ -10003,8 +10341,7 @@ def __init__(__self__, *, * `type`==`radius_group` * `type`==`static_gbp` if from matching radius_group - :param pulumi.Input[Sequence[pulumi.Input['SwitchAclTagsSpecArgs']]] specs: if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + :param pulumi.Input[Sequence[pulumi.Input['SwitchAclTagsSpecArgs']]] specs: if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any :param pulumi.Input[Sequence[pulumi.Input[str]]] subnets: if - `type`==`subnet` - `type`==`resource` (optional. default is `any`) @@ -10050,9 +10387,9 @@ def type(self, value: pulumi.Input[str]): def gbp_tag(self) -> Optional[pulumi.Input[int]]: """ required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) """ return pulumi.get(self, "gbp_tag") @@ -10110,8 +10447,7 @@ def radius_group(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def specs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['SwitchAclTagsSpecArgs']]]]: """ - if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any """ return pulumi.get(self, "specs") @@ -10143,7 +10479,7 @@ class SwitchAclTagsSpecArgsDict(TypedDict): """ protocol: NotRequired[pulumi.Input[str]] """ - `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ elif False: SwitchAclTagsSpecArgsDict: TypeAlias = Mapping[str, Any] @@ -10155,7 +10491,7 @@ def __init__(__self__, *, protocol: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[str] port_range: matched dst port, "0" means any - :param pulumi.Input[str] protocol: `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + :param pulumi.Input[str] protocol: `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ if port_range is not None: pulumi.set(__self__, "port_range", port_range) @@ -10178,7 +10514,7 @@ def port_range(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def protocol(self) -> Optional[pulumi.Input[str]]: """ - `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ return pulumi.get(self, "protocol") @@ -10803,51 +11139,6 @@ def value(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "value", value) -if not MYPY: - class SwitchEvpnConfigArgsDict(TypedDict): - enabled: NotRequired[pulumi.Input[bool]] - role: NotRequired[pulumi.Input[str]] - """ - enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - """ -elif False: - SwitchEvpnConfigArgsDict: TypeAlias = Mapping[str, Any] - -@pulumi.input_type -class SwitchEvpnConfigArgs: - def __init__(__self__, *, - enabled: Optional[pulumi.Input[bool]] = None, - role: Optional[pulumi.Input[str]] = None): - """ - :param pulumi.Input[str] role: enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - """ - if enabled is not None: - pulumi.set(__self__, "enabled", enabled) - if role is not None: - pulumi.set(__self__, "role", role) - - @property - @pulumi.getter - def enabled(self) -> Optional[pulumi.Input[bool]]: - return pulumi.get(self, "enabled") - - @enabled.setter - def enabled(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enabled", value) - - @property - @pulumi.getter - def role(self) -> Optional[pulumi.Input[str]]: - """ - enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - """ - return pulumi.get(self, "role") - - @role.setter - def role(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "role", value) - - if not MYPY: class SwitchExtraRoutes6ArgsDict(TypedDict): via: pulumi.Input[str] @@ -11269,9 +11560,7 @@ class SwitchLocalPortConfigArgsDict(TypedDict): """ allow_dhcpd: NotRequired[pulumi.Input[bool]] """ - 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 allow_dhcpd is a tri_state. - 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. + 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 allow_dhcpd is a tri_state. 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. """ allow_multiple_supplicants: NotRequired[pulumi.Input[bool]] bypass_auth_when_server_down: NotRequired[pulumi.Input[bool]] @@ -11310,8 +11599,7 @@ class SwitchLocalPortConfigArgsDict(TypedDict): """ inter_switch_link: NotRequired[pulumi.Input[bool]] """ - inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together """ mac_auth_only: NotRequired[pulumi.Input[bool]] """ @@ -11341,6 +11629,10 @@ class SwitchLocalPortConfigArgsDict(TypedDict): """ Only if `mode`==`trunk`, the list of network/vlans """ + note: NotRequired[pulumi.Input[str]] + """ + Additional note for the port config override + """ persist_mac: NotRequired[pulumi.Input[bool]] """ Only if `mode`==`access` and `port_auth`!=`dot1x` whether the port should retain dynamically learned MAC addresses @@ -11419,6 +11711,7 @@ def __init__(__self__, *, mode: Optional[pulumi.Input[str]] = None, mtu: Optional[pulumi.Input[int]] = None, networks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + note: Optional[pulumi.Input[str]] = None, persist_mac: Optional[pulumi.Input[bool]] = None, poe_disabled: Optional[pulumi.Input[bool]] = None, port_auth: Optional[pulumi.Input[str]] = None, @@ -11436,9 +11729,7 @@ def __init__(__self__, *, """ :param pulumi.Input[str] usage: port usage name. :param pulumi.Input[bool] all_networks: Only if `mode`==`trunk` whether to trunk all network/vlans - :param pulumi.Input[bool] allow_dhcpd: 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 allow_dhcpd is a tri_state. - 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. + :param pulumi.Input[bool] allow_dhcpd: 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 allow_dhcpd is a tri_state. 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. :param pulumi.Input[bool] bypass_auth_when_server_down: Only if `port_auth`==`dot1x` bypass auth for known clients if set to true when RADIUS server is down :param pulumi.Input[bool] bypass_auth_when_server_down_for_unkonwn_client: Only if `port_auth`=`dot1x` bypass auth for all (including unknown clients) if set to true when RADIUS server is down :param pulumi.Input[bool] disable_autoneg: Only if `mode`!=`dynamic` if speed and duplex are specified, whether to disable autonegotiation @@ -11447,8 +11738,7 @@ def __init__(__self__, *, :param pulumi.Input[Sequence[pulumi.Input[str]]] dynamic_vlan_networks: Only if `port_auth`==`dot1x`, if dynamic vlan is used, specify the possible networks/vlans RADIUS can return :param pulumi.Input[bool] enable_mac_auth: Only if `port_auth`==`dot1x` whether to enable MAC Auth :param pulumi.Input[str] guest_network: Only if `port_auth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) - :param pulumi.Input[bool] inter_switch_link: inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + :param pulumi.Input[bool] inter_switch_link: inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together :param pulumi.Input[bool] mac_auth_only: Only if `enable_mac_auth`==`true` :param pulumi.Input[bool] mac_auth_preferred: Only if `enable_mac_auth`==`true` + `mac_auth_only`==`false`, dot1x will be given priority then mac_auth. Enable this to prefer mac_auth over dot1x. :param pulumi.Input[str] mac_auth_protocol: Only if `enable_mac_auth` ==`true`. This type is ignored if mist_nac is enabled. enum: `eap-md5`, `eap-peap`, `pap` @@ -11456,6 +11746,7 @@ def __init__(__self__, *, :param pulumi.Input[str] mode: enum: `access`, `inet`, `trunk` :param pulumi.Input[int] mtu: media maximum transmission unit (MTU) is the largest data unit that can be forwarded without fragmentation. The default value is 1514. :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: Only if `mode`==`trunk`, the list of network/vlans + :param pulumi.Input[str] note: Additional note for the port config override :param pulumi.Input[bool] persist_mac: Only if `mode`==`access` and `port_auth`!=`dot1x` whether the port should retain dynamically learned MAC addresses :param pulumi.Input[bool] poe_disabled: whether PoE capabilities are disabled for a port :param pulumi.Input[str] port_auth: if dot1x is desired, set to dot1x. enum: `dot1x` @@ -11512,6 +11803,8 @@ def __init__(__self__, *, pulumi.set(__self__, "mtu", mtu) if networks is not None: pulumi.set(__self__, "networks", networks) + if note is not None: + pulumi.set(__self__, "note", note) if persist_mac is not None: pulumi.set(__self__, "persist_mac", persist_mac) if poe_disabled is not None: @@ -11569,9 +11862,7 @@ def all_networks(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="allowDhcpd") def allow_dhcpd(self) -> Optional[pulumi.Input[bool]]: """ - 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 allow_dhcpd is a tri_state. - 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. + 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 allow_dhcpd is a tri_state. 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. """ return pulumi.get(self, "allow_dhcpd") @@ -11706,8 +11997,7 @@ def guest_network(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="interSwitchLink") def inter_switch_link(self) -> Optional[pulumi.Input[bool]]: """ - inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together """ return pulumi.get(self, "inter_switch_link") @@ -11799,6 +12089,18 @@ def networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: def networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "networks", value) + @property + @pulumi.getter + def note(self) -> Optional[pulumi.Input[str]]: + """ + Additional note for the port config override + """ + return pulumi.get(self, "note") + + @note.setter + def note(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "note", value) + @property @pulumi.getter(name="persistMac") def persist_mac(self) -> Optional[pulumi.Input[bool]]: @@ -12123,8 +12425,7 @@ class SwitchNetworksArgsDict(TypedDict): """ isolation: NotRequired[pulumi.Input[bool]] """ - whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set """ isolation_vlan_id: NotRequired[pulumi.Input[str]] subnet: NotRequired[pulumi.Input[str]] @@ -12151,8 +12452,7 @@ def __init__(__self__, *, """ :param pulumi.Input[str] gateway: only required for EVPN-VXLAN networks, IPv4 Virtual Gateway :param pulumi.Input[str] gateway6: only required for EVPN-VXLAN networks, IPv6 Virtual Gateway - :param pulumi.Input[bool] isolation: whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + :param pulumi.Input[bool] isolation: whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set :param pulumi.Input[str] subnet: optional for pure switching, required when L3 / routing features are used :param pulumi.Input[str] subnet6: optional for pure switching, required when L3 / routing features are used """ @@ -12207,8 +12507,7 @@ def gateway6(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def isolation(self) -> Optional[pulumi.Input[bool]]: """ - whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set """ return pulumi.get(self, "isolation") @@ -13210,9 +13509,7 @@ class SwitchPortUsagesArgsDict(TypedDict): """ allow_dhcpd: NotRequired[pulumi.Input[bool]] """ - 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 allow_dhcpd is a tri_state. - 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. + 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 allow_dhcpd is a tri_state. 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. """ allow_multiple_supplicants: NotRequired[pulumi.Input[bool]] """ @@ -13260,8 +13557,7 @@ class SwitchPortUsagesArgsDict(TypedDict): """ inter_switch_link: NotRequired[pulumi.Input[bool]] """ - Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together """ mac_auth_only: NotRequired[pulumi.Input[bool]] """ @@ -13333,8 +13629,7 @@ class SwitchPortUsagesArgsDict(TypedDict): """ storm_control: NotRequired[pulumi.Input['SwitchPortUsagesStormControlArgsDict']] """ - Switch storm control - Only if `mode`!=`dynamic` + Switch storm control. Only if `mode`!=`dynamic` """ stp_edge: NotRequired[pulumi.Input[bool]] """ @@ -13395,9 +13690,7 @@ def __init__(__self__, *, voip_network: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[bool] all_networks: Only if `mode`==`trunk` whether to trunk all network/vlans - :param pulumi.Input[bool] allow_dhcpd: 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 allow_dhcpd is a tri_state. - 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. + :param pulumi.Input[bool] allow_dhcpd: 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 allow_dhcpd is a tri_state. 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. :param pulumi.Input[bool] allow_multiple_supplicants: Only if `mode`!=`dynamic` :param pulumi.Input[bool] bypass_auth_when_server_down: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` bypass auth for known clients if set to true when RADIUS server is down :param pulumi.Input[bool] bypass_auth_when_server_down_for_unkonwn_client: Only if `mode`!=`dynamic` and `port_auth`=`dot1x` bypass auth for all (including unknown clients) if set to true when RADIUS server is down @@ -13409,8 +13702,7 @@ def __init__(__self__, *, :param pulumi.Input[bool] enable_mac_auth: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` whether to enable MAC Auth :param pulumi.Input[bool] enable_qos: Only if `mode`!=`dynamic` :param pulumi.Input[str] guest_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) - :param pulumi.Input[bool] inter_switch_link: Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + :param pulumi.Input[bool] inter_switch_link: Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together :param pulumi.Input[bool] mac_auth_only: Only if `mode`!=`dynamic` and `enable_mac_auth`==`true` :param pulumi.Input[bool] mac_auth_preferred: Only if `mode`!=`dynamic` + `enable_mac_auth`==`true` + `mac_auth_only`==`false`, dot1x will be given priority then mac_auth. Enable this to prefer mac_auth over dot1x. :param pulumi.Input[str] mac_auth_protocol: Only if `mode`!=`dynamic` and `enable_mac_auth` ==`true`. This type is ignored if mist_nac is enabled. enum: `eap-md5`, `eap-peap`, `pap` @@ -13428,8 +13720,7 @@ def __init__(__self__, *, :param pulumi.Input[str] server_fail_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` sets server fail fallback vlan :param pulumi.Input[str] server_reject_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` when radius server reject / fails :param pulumi.Input[str] speed: Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto` - :param pulumi.Input['SwitchPortUsagesStormControlArgs'] storm_control: Switch storm control - Only if `mode`!=`dynamic` + :param pulumi.Input['SwitchPortUsagesStormControlArgs'] storm_control: Switch storm control. Only if `mode`!=`dynamic` :param pulumi.Input[bool] stp_edge: Only if `mode`!=`dynamic` when enabled, the port is not expected to receive BPDU frames :param pulumi.Input[bool] use_vstp: if this is connected to a vstp network :param pulumi.Input[str] voip_network: Only if `mode`!=`dynamic` network/vlan for voip traffic, must also set port_network. to authenticate device, set port_auth @@ -13525,9 +13816,7 @@ def all_networks(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="allowDhcpd") def allow_dhcpd(self) -> Optional[pulumi.Input[bool]]: """ - 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 allow_dhcpd is a tri_state. - 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. + 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 allow_dhcpd is a tri_state. 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. """ return pulumi.get(self, "allow_dhcpd") @@ -13671,8 +13960,7 @@ def guest_network(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="interSwitchLink") def inter_switch_link(self) -> Optional[pulumi.Input[bool]]: """ - Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together """ return pulumi.get(self, "inter_switch_link") @@ -13888,8 +14176,7 @@ def speed(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="stormControl") def storm_control(self) -> Optional[pulumi.Input['SwitchPortUsagesStormControlArgs']]: """ - Switch storm control - Only if `mode`!=`dynamic` + Switch storm control. Only if `mode`!=`dynamic` """ return pulumi.get(self, "storm_control") @@ -14192,8 +14479,7 @@ class SwitchRadiusConfigArgsDict(TypedDict): """ network: NotRequired[pulumi.Input[str]] """ - use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip """ source_ip: NotRequired[pulumi.Input[str]] """ @@ -14216,8 +14502,7 @@ def __init__(__self__, *, :param pulumi.Input[int] acct_interim_interval: how frequently should interim accounting be reported, 60-65535. default is 0 (use one specified in Access-Accept request from RADIUS Server). Very frequent messages can affect the performance of the radius server, 600 and up is recommended when enabled :param pulumi.Input[int] auth_servers_retries: radius auth session retries :param pulumi.Input[int] auth_servers_timeout: radius auth session timeout - :param pulumi.Input[str] network: use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + :param pulumi.Input[str] network: use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip :param pulumi.Input[str] source_ip: use `network`or `source_ip` """ if acct_interim_interval is not None: @@ -14293,8 +14578,7 @@ def auth_servers_timeout(self, value: Optional[pulumi.Input[int]]): @pulumi.getter def network(self) -> Optional[pulumi.Input[str]]: """ - use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip """ return pulumi.get(self, "network") @@ -16255,8 +16539,7 @@ def users(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['SwitchSnmpCo class SwitchSnmpConfigV3ConfigUsmUserArgsDict(TypedDict): authentication_password: NotRequired[pulumi.Input[str]] """ - Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. """ authentication_type: NotRequired[pulumi.Input[str]] """ @@ -16264,8 +16547,7 @@ class SwitchSnmpConfigV3ConfigUsmUserArgsDict(TypedDict): """ encryption_password: NotRequired[pulumi.Input[str]] """ - Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters """ encryption_type: NotRequired[pulumi.Input[str]] """ @@ -16284,11 +16566,9 @@ def __init__(__self__, *, encryption_type: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] authentication_password: Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + :param pulumi.Input[str] authentication_password: Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. :param pulumi.Input[str] authentication_type: sha224, sha256, sha384, sha512 are supported in 21.1 and newer release. enum: `authentication_md5`, `authentication_none`, `authentication_sha`, `authentication_sha224`, `authentication_sha256`, `authentication_sha384`, `authentication_sha512` - :param pulumi.Input[str] encryption_password: Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + :param pulumi.Input[str] encryption_password: Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters :param pulumi.Input[str] encryption_type: enum: `privacy-3des`, `privacy-aes128`, `privacy-des`, `privacy-none` """ if authentication_password is not None: @@ -16306,8 +16586,7 @@ def __init__(__self__, *, @pulumi.getter(name="authenticationPassword") def authentication_password(self) -> Optional[pulumi.Input[str]]: """ - Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. """ return pulumi.get(self, "authentication_password") @@ -16331,8 +16610,7 @@ def authentication_type(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="encryptionPassword") def encryption_password(self) -> Optional[pulumi.Input[str]]: """ - Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters """ return pulumi.get(self, "encryption_password") diff --git a/sdk/python/pulumi_juniper_mist/device/gateway.py b/sdk/python/pulumi_juniper_mist/device/gateway.py index 0e7372de..70b8650e 100644 --- a/sdk/python/pulumi_juniper_mist/device/gateway.py +++ b/sdk/python/pulumi_juniper_mist/device/gateway.py @@ -55,7 +55,7 @@ def __init__(__self__, *, y: Optional[pulumi.Input[float]] = None): """ The set of arguments for constructing a Gateway resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Mapping[str, pulumi.Input['GatewayExtraRoutesArgs']]] extra_routes: Property key is the destination CIDR (e.g. "10.0.0.0/8") @@ -159,7 +159,7 @@ def site_id(self, value: pulumi.Input[str]): @pulumi.getter(name="additionalConfigCmds") def additional_config_cmds(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - additional CLI commands to append to the generated Junos config **Note**: no check is done + additional CLI commands to append to the generated Junos config. **Note**: no check is done """ return pulumi.get(self, "additional_config_cmds") @@ -525,7 +525,7 @@ def __init__(__self__, *, y: Optional[pulumi.Input[float]] = None): """ Input properties used for looking up and filtering Gateway resources. - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Mapping[str, pulumi.Input['GatewayExtraRoutesArgs']]] extra_routes: Property key is the destination CIDR (e.g. "10.0.0.0/8") @@ -633,7 +633,7 @@ def __init__(__self__, *, @pulumi.getter(name="additionalConfigCmds") def additional_config_cmds(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - additional CLI commands to append to the generated Junos config **Note**: no check is done + additional CLI commands to append to the generated Junos config. **Note**: no check is done """ return pulumi.get(self, "additional_config_cmds") @@ -1136,7 +1136,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Mapping[str, pulumi.Input[Union['GatewayExtraRoutesArgs', 'GatewayExtraRoutesArgsDict']]]] extra_routes: Property key is the destination CIDR (e.g. "10.0.0.0/8") @@ -1358,7 +1358,7 @@ def get(resource_name: str, :param str resource_name: The unique name of the resulting resource. :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Mapping[str, pulumi.Input[Union['GatewayExtraRoutesArgs', 'GatewayExtraRoutesArgsDict']]]] extra_routes: Property key is the destination CIDR (e.g. "10.0.0.0/8") @@ -1431,7 +1431,7 @@ def get(resource_name: str, @pulumi.getter(name="additionalConfigCmds") def additional_config_cmds(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - additional CLI commands to append to the generated Junos config **Note**: no check is done + additional CLI commands to append to the generated Junos config. **Note**: no check is done """ return pulumi.get(self, "additional_config_cmds") diff --git a/sdk/python/pulumi_juniper_mist/device/outputs.py b/sdk/python/pulumi_juniper_mist/device/outputs.py index a9b17339..ee0c4619 100644 --- a/sdk/python/pulumi_juniper_mist/device/outputs.py +++ b/sdk/python/pulumi_juniper_mist/device/outputs.py @@ -109,7 +109,6 @@ 'SwitchDhcpdConfigConfigFixedBindings', 'SwitchDhcpdConfigConfigOptions', 'SwitchDhcpdConfigConfigVendorEncapsulated', - 'SwitchEvpnConfig', 'SwitchExtraRoutes6', 'SwitchExtraRoutes6NextQualified', 'SwitchExtraRoutes', @@ -2260,8 +2259,7 @@ def __init__(__self__, *, :param int bfd_multiplier: when bfd_minimum_interval_is_configured alone :param bool disable_bfd: BFD provides faster path failure detection and is enabled by default :param str export_policy: default export policies if no per-neighbor policies defined - :param bool extended_v4_nexthop: by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + :param bool extended_v4_nexthop: by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this :param int graceful_restart_time: `0` means disable :param str import_policy: default import policies if no per-neighbor policies defined :param Mapping[str, 'GatewayBgpConfigNeighborsArgs'] neighbors: if per-neighbor as is desired. Property key is the neighbor address @@ -2363,8 +2361,7 @@ def export_policy(self) -> Optional[str]: @pulumi.getter(name="extendedV4Nexthop") def extended_v4_nexthop(self) -> Optional[bool]: """ - by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this """ return pulumi.get(self, "extended_v4_nexthop") @@ -3216,6 +3213,7 @@ def __init__(__self__, *, :param bool isolation: whether to allow clients in the network to talk to each other :param 'GatewayNetworkMulticastArgs' multicast: whether to enable multicast support (only PIM-sparse mode is supported) :param Sequence[str] routed_for_networks: for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) + :param Mapping[str, 'GatewayNetworkTenantsArgs'] tenants: Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") :param Mapping[str, 'GatewayNetworkVpnAccessArgs'] vpn_access: Property key is the VPN name. Whether this network can be accessed from vpn """ pulumi.set(__self__, "name", name) @@ -3318,6 +3316,9 @@ def subnet6(self) -> Optional[str]: @property @pulumi.getter def tenants(self) -> Optional[Mapping[str, 'outputs.GatewayNetworkTenants']]: + """ + Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "tenants") @property @@ -3377,9 +3378,9 @@ def __init__(__self__, *, restricted: Optional[bool] = None, static_nat: Optional[Mapping[str, 'outputs.GatewayNetworkInternetAccessStaticNat']] = None): """ - :param Mapping[str, 'GatewayNetworkInternetAccessDestinationNatArgs'] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param Mapping[str, 'GatewayNetworkInternetAccessDestinationNatArgs'] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param bool restricted: by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies - :param Mapping[str, 'GatewayNetworkInternetAccessStaticNatArgs'] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + :param Mapping[str, 'GatewayNetworkInternetAccessStaticNatArgs'] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ if create_simple_service_policy is not None: pulumi.set(__self__, "create_simple_service_policy", create_simple_service_policy) @@ -3401,7 +3402,7 @@ def create_simple_service_policy(self) -> Optional[bool]: @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[Mapping[str, 'outputs.GatewayNetworkInternetAccessDestinationNat']]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -3422,7 +3423,7 @@ def restricted(self) -> Optional[bool]: @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[Mapping[str, 'outputs.GatewayNetworkInternetAccessStaticNat']]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -3434,6 +3435,8 @@ def __key_warning(key: str): suggest = None if key == "internalIp": suggest = "internal_ip" + elif key == "wanName": + suggest = "wan_name" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewayNetworkInternetAccessDestinationNat. Access the value via the '{suggest}' property getter instead.") @@ -3449,17 +3452,28 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, internal_ip: Optional[str] = None, name: Optional[str] = None, - port: Optional[int] = None): + port: Optional[str] = None, + wan_name: Optional[str] = None): + """ + :param str internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + :param str port: The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + :param str wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: pulumi.set(__self__, "name", name) if port is not None: pulumi.set(__self__, "port", port) + if wan_name is not None: + pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[str]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @@ -3469,9 +3483,20 @@ def name(self) -> Optional[str]: @property @pulumi.getter - def port(self) -> Optional[int]: + def port(self) -> Optional[str]: + """ + The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "port") + @property + @pulumi.getter(name="wanName") + def wan_name(self) -> Optional[str]: + """ + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ + return pulumi.get(self, "wan_name") + @pulumi.output_type class GatewayNetworkInternetAccessStaticNat(dict): @@ -3495,34 +3520,36 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - internal_ip: Optional[str] = None, - name: Optional[str] = None, + internal_ip: str, + name: str, wan_name: Optional[str] = None): """ - :param str wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param str internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + :param str wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) if wan_name is not None: pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[str]: + def internal_ip(self) -> str: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @pulumi.getter - def name(self) -> Optional[str]: + def name(self) -> str: return pulumi.get(self, "name") @property @pulumi.getter(name="wanName") def wan_name(self) -> Optional[str]: """ - If not set, we configure the nat policies against all WAN ports for simplicity + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "wan_name") @@ -3693,19 +3720,16 @@ def __init__(__self__, *, """ :param str advertised_subnet: if `routed`==`true`, whether to advertise an aggregated subnet toward HUB this is useful when there are multiple networks on SPOKE's side :param bool allow_ping: whether to allow ping from vpn into this routed network - :param Mapping[str, 'GatewayNetworkVpnAccessDestinationNatArgs'] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param Mapping[str, 'GatewayNetworkVpnAccessDestinationNatArgs'] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param str nat_pool: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub :param bool no_readvertise_to_lan_bgp: toward LAN-side BGP peers :param bool no_readvertise_to_lan_ospf: toward LAN-side OSPF peers - :param bool no_readvertise_to_overlay: toward overlay - how HUB should deal with routes it received from Spokes - :param Sequence[str] other_vrfs: by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + :param bool no_readvertise_to_overlay: toward overlay, how HUB should deal with routes it received from Spokes + :param Sequence[str] other_vrfs: by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs :param bool routed: whether this network is routable :param 'GatewayNetworkVpnAccessSourceNatArgs' source_nat: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub - :param Mapping[str, 'GatewayNetworkVpnAccessStaticNatArgs'] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") - :param str summarized_subnet: toward overlay - how HUB should deal with routes it received from Spokes + :param Mapping[str, 'GatewayNetworkVpnAccessStaticNatArgs'] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") + :param str summarized_subnet: toward overlay, how HUB should deal with routes it received from Spokes :param str summarized_subnet_to_lan_bgp: toward LAN-side BGP peers :param str summarized_subnet_to_lan_ospf: toward LAN-side OSPF peers """ @@ -3758,7 +3782,7 @@ def allow_ping(self) -> Optional[bool]: @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[Mapping[str, 'outputs.GatewayNetworkVpnAccessDestinationNat']]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -3790,8 +3814,7 @@ def no_readvertise_to_lan_ospf(self) -> Optional[bool]: @pulumi.getter(name="noReadvertiseToOverlay") def no_readvertise_to_overlay(self) -> Optional[bool]: """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ return pulumi.get(self, "no_readvertise_to_overlay") @@ -3799,8 +3822,7 @@ def no_readvertise_to_overlay(self) -> Optional[bool]: @pulumi.getter(name="otherVrfs") def other_vrfs(self) -> Optional[Sequence[str]]: """ - by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs """ return pulumi.get(self, "other_vrfs") @@ -3824,7 +3846,7 @@ def source_nat(self) -> Optional['outputs.GatewayNetworkVpnAccessSourceNat']: @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[Mapping[str, 'outputs.GatewayNetworkVpnAccessStaticNat']]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -3832,8 +3854,7 @@ def static_nat(self) -> Optional[Mapping[str, 'outputs.GatewayNetworkVpnAccessSt @pulumi.getter(name="summarizedSubnet") def summarized_subnet(self) -> Optional[str]: """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ return pulumi.get(self, "summarized_subnet") @@ -3876,7 +3897,10 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, internal_ip: Optional[str] = None, name: Optional[str] = None, - port: Optional[int] = None): + port: Optional[str] = None): + """ + :param str internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: @@ -3887,6 +3911,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[str]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @@ -3896,7 +3923,7 @@ def name(self) -> Optional[str]: @property @pulumi.getter - def port(self) -> Optional[int]: + def port(self) -> Optional[str]: return pulumi.get(self, "port") @@ -3937,8 +3964,6 @@ def __key_warning(key: str): suggest = None if key == "internalIp": suggest = "internal_ip" - elif key == "wanName": - suggest = "wan_name" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewayNetworkVpnAccessStaticNat. Access the value via the '{suggest}' property getter instead.") @@ -3952,37 +3977,27 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - internal_ip: Optional[str] = None, - name: Optional[str] = None, - wan_name: Optional[str] = None): + internal_ip: str, + name: str): """ - :param str wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param str internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) - if wan_name is not None: - pulumi.set(__self__, "wan_name", wan_name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[str]: + def internal_ip(self) -> str: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @pulumi.getter - def name(self) -> Optional[str]: + def name(self) -> str: return pulumi.get(self, "name") - @property - @pulumi.getter(name="wanName") - def wan_name(self) -> Optional[str]: - """ - If not set, we configure the nat policies against all WAN ports for simplicity - """ - return pulumi.get(self, "wan_name") - @pulumi.output_type class GatewayOobIpConfig(dict): @@ -4434,6 +4449,8 @@ def __key_warning(key: str): suggest = "wan_ext_ip" elif key == "wanExtraRoutes": suggest = "wan_extra_routes" + elif key == "wanNetworks": + suggest = "wan_networks" elif key == "wanProbeOverride": suggest = "wan_probe_override" elif key == "wanSourceNat": @@ -4487,11 +4504,12 @@ def __init__(__self__, *, ssr_no_virtual_mac: Optional[bool] = None, svr_port_range: Optional[str] = None, traffic_shaping: Optional['outputs.GatewayPortConfigTrafficShaping'] = None, - vlan_id: Optional[int] = None, + vlan_id: Optional[str] = None, vpn_paths: Optional[Mapping[str, 'outputs.GatewayPortConfigVpnPaths']] = None, wan_arp_policer: Optional[str] = None, wan_ext_ip: Optional[str] = None, wan_extra_routes: Optional[Mapping[str, 'outputs.GatewayPortConfigWanExtraRoutes']] = None, + wan_networks: Optional[Sequence[str]] = None, wan_probe_override: Optional['outputs.GatewayPortConfigWanProbeOverride'] = None, wan_source_nat: Optional['outputs.GatewayPortConfigWanSourceNat'] = None, wan_type: Optional[str] = None): @@ -4499,16 +4517,13 @@ def __init__(__self__, *, :param str usage: port usage name. enum: `ha_control`, `ha_data`, `lan`, `wan` :param bool ae_disable_lacp: if `aggregated`==`true`. To disable LCP support for the AE interface :param str ae_idx: if `aggregated`==`true`. Users could force to use the designated AE name (must be an integer between 0 and 127) - :param bool ae_lacp_force_up: For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + :param bool ae_lacp_force_up: For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only :param bool critical: if want to generate port up/down alarm, set it to true + :param str description: Interface Description. Can be a variable (i.e. "{{myvar}}") :param bool disabled: port admin up (true) / down (false) :param str dsl_type: if `wan_type`==`dsl`. enum: `adsl`, `vdsl` - :param int dsl_vci: if `wan_type`==`dsl` - 16 bit int - :param int dsl_vpi: if `wan_type`==`dsl` - 8 bit int + :param int dsl_vci: if `wan_type`==`dsl`, 16 bit int + :param int dsl_vpi: if `wan_type`==`dsl`, 8 bit int :param str duplex: enum: `auto`, `full`, `half` :param 'GatewayPortConfigIpConfigArgs' ip_config: Junos IP Config :param str lte_apn: if `wan_type`==`lte` @@ -4516,9 +4531,9 @@ def __init__(__self__, *, :param str lte_password: if `wan_type`==`lte` :param str lte_username: if `wan_type`==`lte` :param str name: name that we'll use to derive config - :param Sequence[str] networks: if `usage`==`lan` + :param Sequence[str] networks: if `usage`==`lan`, name of the `org.Network` resource :param int outer_vlan_id: for Q-in-Q - :param str port_network: if `usage`==`lan` + :param str port_network: Only for SRX and if `usage`==`lan`, the Untagged VLAN Network :param bool preserve_dscp: whether to preserve dscp when sending traffic over VPN (SSR-only) :param bool redundant: if HA mode :param int reth_idx: if HA mode @@ -4526,14 +4541,14 @@ def __init__(__self__, *, :param Sequence[str] reth_nodes: SSR only - supporting vlan-based redundancy (matching the size of `networks`) :param bool ssr_no_virtual_mac: when SSR is running as VM, this is required on certain hosting platforms :param str svr_port_range: for SSR only - :param int vlan_id: if WAN interface is on a VLAN :param Mapping[str, 'GatewayPortConfigVpnPathsArgs'] vpn_paths: Property key is the VPN name - :param str wan_arp_policer: when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` - :param str wan_ext_ip: optional, if spoke should reach this port by a different IP - :param Mapping[str, 'GatewayPortConfigWanExtraRoutesArgs'] wan_extra_routes: Property Key is the destianation CIDR (e.g "100.100.100.0/24") - :param 'GatewayPortConfigWanProbeOverrideArgs' wan_probe_override: if `usage`==`wan` - :param 'GatewayPortConfigWanSourceNatArgs' wan_source_nat: optional, by default, source-NAT is performed on all WAN Ports using the interface-ip - :param str wan_type: if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + :param str wan_arp_policer: Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + :param str wan_ext_ip: Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP + :param Mapping[str, 'GatewayPortConfigWanExtraRoutesArgs'] wan_extra_routes: Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") + :param Sequence[str] wan_networks: Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + :param 'GatewayPortConfigWanProbeOverrideArgs' wan_probe_override: Only if `usage`==`wan` + :param 'GatewayPortConfigWanSourceNatArgs' wan_source_nat: Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip + :param str wan_type: Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ pulumi.set(__self__, "usage", usage) if ae_disable_lacp is not None: @@ -4612,6 +4627,8 @@ def __init__(__self__, *, pulumi.set(__self__, "wan_ext_ip", wan_ext_ip) if wan_extra_routes is not None: pulumi.set(__self__, "wan_extra_routes", wan_extra_routes) + if wan_networks is not None: + pulumi.set(__self__, "wan_networks", wan_networks) if wan_probe_override is not None: pulumi.set(__self__, "wan_probe_override", wan_probe_override) if wan_source_nat is not None: @@ -4647,9 +4664,7 @@ def ae_idx(self) -> Optional[str]: @pulumi.getter(name="aeLacpForceUp") def ae_lacp_force_up(self) -> Optional[bool]: """ - For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only """ return pulumi.get(self, "ae_lacp_force_up") @@ -4669,6 +4684,9 @@ def critical(self) -> Optional[bool]: @property @pulumi.getter def description(self) -> Optional[str]: + """ + Interface Description. Can be a variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "description") @property @@ -4696,8 +4714,7 @@ def dsl_type(self) -> Optional[str]: @pulumi.getter(name="dslVci") def dsl_vci(self) -> Optional[int]: """ - if `wan_type`==`dsl` - 16 bit int + if `wan_type`==`dsl`, 16 bit int """ return pulumi.get(self, "dsl_vci") @@ -4705,8 +4722,7 @@ def dsl_vci(self) -> Optional[int]: @pulumi.getter(name="dslVpi") def dsl_vpi(self) -> Optional[int]: """ - if `wan_type`==`dsl` - 8 bit int + if `wan_type`==`dsl`, 8 bit int """ return pulumi.get(self, "dsl_vpi") @@ -4780,7 +4796,7 @@ def name(self) -> Optional[str]: @pulumi.getter def networks(self) -> Optional[Sequence[str]]: """ - if `usage`==`lan` + if `usage`==`lan`, name of the `org.Network` resource """ return pulumi.get(self, "networks") @@ -4801,7 +4817,7 @@ def poe_disabled(self) -> Optional[bool]: @pulumi.getter(name="portNetwork") def port_network(self) -> Optional[str]: """ - if `usage`==`lan` + Only for SRX and if `usage`==`lan`, the Untagged VLAN Network """ return pulumi.get(self, "port_network") @@ -4873,10 +4889,7 @@ def traffic_shaping(self) -> Optional['outputs.GatewayPortConfigTrafficShaping'] @property @pulumi.getter(name="vlanId") - def vlan_id(self) -> Optional[int]: - """ - if WAN interface is on a VLAN - """ + def vlan_id(self) -> Optional[str]: return pulumi.get(self, "vlan_id") @property @@ -4891,7 +4904,7 @@ def vpn_paths(self) -> Optional[Mapping[str, 'outputs.GatewayPortConfigVpnPaths' @pulumi.getter(name="wanArpPolicer") def wan_arp_policer(self) -> Optional[str]: """ - when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` """ return pulumi.get(self, "wan_arp_policer") @@ -4899,7 +4912,7 @@ def wan_arp_policer(self) -> Optional[str]: @pulumi.getter(name="wanExtIp") def wan_ext_ip(self) -> Optional[str]: """ - optional, if spoke should reach this port by a different IP + Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP """ return pulumi.get(self, "wan_ext_ip") @@ -4907,15 +4920,23 @@ def wan_ext_ip(self) -> Optional[str]: @pulumi.getter(name="wanExtraRoutes") def wan_extra_routes(self) -> Optional[Mapping[str, 'outputs.GatewayPortConfigWanExtraRoutes']]: """ - Property Key is the destianation CIDR (e.g "100.100.100.0/24") + Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") """ return pulumi.get(self, "wan_extra_routes") + @property + @pulumi.getter(name="wanNetworks") + def wan_networks(self) -> Optional[Sequence[str]]: + """ + Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + """ + return pulumi.get(self, "wan_networks") + @property @pulumi.getter(name="wanProbeOverride") def wan_probe_override(self) -> Optional['outputs.GatewayPortConfigWanProbeOverride']: """ - if `usage`==`wan` + Only if `usage`==`wan` """ return pulumi.get(self, "wan_probe_override") @@ -4923,7 +4944,7 @@ def wan_probe_override(self) -> Optional['outputs.GatewayPortConfigWanProbeOverr @pulumi.getter(name="wanSourceNat") def wan_source_nat(self) -> Optional['outputs.GatewayPortConfigWanSourceNat']: """ - optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip """ return pulumi.get(self, "wan_source_nat") @@ -4931,7 +4952,7 @@ def wan_source_nat(self) -> Optional['outputs.GatewayPortConfigWanSourceNat']: @pulumi.getter(name="wanType") def wan_type(self) -> Optional[str]: """ - if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ return pulumi.get(self, "wan_type") @@ -4975,8 +4996,9 @@ def __init__(__self__, *, """ :param Sequence[str] dns: except for out-of_band interface (vme/em0/fxp0) :param Sequence[str] dns_suffixes: except for out-of_band interface (vme/em0/fxp0) - :param str gateway: except for out-of_band interface (vme/em0/fxp0) - :param str netmask: used only if `subnet` is not specified in `networks` + :param str gateway: except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") + :param str ip: Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + :param str netmask: used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") :param str network: optional, the network to be used for mgmt :param str poser_password: if `type`==`pppoe` :param str pppoe_auth: if `type`==`pppoe`. enum: `chap`, `none`, `pap` @@ -5024,20 +5046,23 @@ def dns_suffixes(self) -> Optional[Sequence[str]]: @pulumi.getter def gateway(self) -> Optional[str]: """ - except for out-of_band interface (vme/em0/fxp0) + except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "gateway") @property @pulumi.getter def ip(self) -> Optional[str]: + """ + Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "ip") @property @pulumi.getter def netmask(self) -> Optional[str]: """ - used only if `subnet` is not specified in `networks` + used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "netmask") @@ -5089,6 +5114,8 @@ def __key_warning(key: str): suggest = None if key == "classPercentages": suggest = "class_percentages" + elif key == "maxTxKbps": + suggest = "max_tx_kbps" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewayPortConfigTrafficShaping. Access the value via the '{suggest}' property getter instead.") @@ -5103,22 +5130,24 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, class_percentages: Optional[Sequence[int]] = None, - enabled: Optional[bool] = None): + enabled: Optional[bool] = None, + max_tx_kbps: Optional[int] = None): """ - :param Sequence[int] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + :param Sequence[int] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 + :param int max_tx_kbps: Interface Transmit Cap in kbps """ if class_percentages is not None: pulumi.set(__self__, "class_percentages", class_percentages) if enabled is not None: pulumi.set(__self__, "enabled", enabled) + if max_tx_kbps is not None: + pulumi.set(__self__, "max_tx_kbps", max_tx_kbps) @property @pulumi.getter(name="classPercentages") def class_percentages(self) -> Optional[Sequence[int]]: """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ return pulumi.get(self, "class_percentages") @@ -5127,6 +5156,14 @@ def class_percentages(self) -> Optional[Sequence[int]]: def enabled(self) -> Optional[bool]: return pulumi.get(self, "enabled") + @property + @pulumi.getter(name="maxTxKbps") + def max_tx_kbps(self) -> Optional[int]: + """ + Interface Transmit Cap in kbps + """ + return pulumi.get(self, "max_tx_kbps") + @pulumi.output_type class GatewayPortConfigVpnPaths(dict): @@ -5233,6 +5270,8 @@ def __key_warning(key: str): suggest = None if key == "classPercentages": suggest = "class_percentages" + elif key == "maxTxKbps": + suggest = "max_tx_kbps" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewayPortConfigVpnPathsTrafficShaping. Access the value via the '{suggest}' property getter instead.") @@ -5247,22 +5286,24 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, class_percentages: Optional[Sequence[int]] = None, - enabled: Optional[bool] = None): + enabled: Optional[bool] = None, + max_tx_kbps: Optional[int] = None): """ - :param Sequence[int] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + :param Sequence[int] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 + :param int max_tx_kbps: Interface Transmit Cap in kbps """ if class_percentages is not None: pulumi.set(__self__, "class_percentages", class_percentages) if enabled is not None: pulumi.set(__self__, "enabled", enabled) + if max_tx_kbps is not None: + pulumi.set(__self__, "max_tx_kbps", max_tx_kbps) @property @pulumi.getter(name="classPercentages") def class_percentages(self) -> Optional[Sequence[int]]: """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ return pulumi.get(self, "class_percentages") @@ -5271,6 +5312,14 @@ def class_percentages(self) -> Optional[Sequence[int]]: def enabled(self) -> Optional[bool]: return pulumi.get(self, "enabled") + @property + @pulumi.getter(name="maxTxKbps") + def max_tx_kbps(self) -> Optional[int]: + """ + Interface Transmit Cap in kbps + """ + return pulumi.get(self, "max_tx_kbps") + @pulumi.output_type class GatewayPortConfigWanExtraRoutes(dict): @@ -5560,6 +5609,7 @@ def __init__(__self__, *, accept: Optional[bool] = None, add_communities: Optional[Sequence[str]] = None, add_target_vrfs: Optional[Sequence[str]] = None, + aggregates: Optional[Sequence[str]] = None, communities: Optional[Sequence[str]] = None, exclude_as_paths: Optional[Sequence[str]] = None, exclude_communities: Optional[Sequence[str]] = None, @@ -5568,6 +5618,7 @@ def __init__(__self__, *, prepend_as_paths: Optional[Sequence[str]] = None): """ :param Sequence[str] add_target_vrfs: for SSR, hub decides how VRF routes are leaked on spoke + :param Sequence[str] aggregates: route aggregation :param Sequence[str] communities: when used as export policy, optional :param Sequence[str] exclude_as_paths: when used as export policy, optional. To exclude certain AS :param Sequence[str] export_communitites: when used as export policy, optional @@ -5580,6 +5631,8 @@ def __init__(__self__, *, pulumi.set(__self__, "add_communities", add_communities) if add_target_vrfs is not None: pulumi.set(__self__, "add_target_vrfs", add_target_vrfs) + if aggregates is not None: + pulumi.set(__self__, "aggregates", aggregates) if communities is not None: pulumi.set(__self__, "communities", communities) if exclude_as_paths is not None: @@ -5611,6 +5664,14 @@ def add_target_vrfs(self) -> Optional[Sequence[str]]: """ return pulumi.get(self, "add_target_vrfs") + @property + @pulumi.getter + def aggregates(self) -> Optional[Sequence[str]]: + """ + route aggregation + """ + return pulumi.get(self, "aggregates") + @property @pulumi.getter def communities(self) -> Optional[Sequence[str]]: @@ -5699,8 +5760,7 @@ def __init__(__self__, *, :param Sequence[str] prefixes: zero or more criteria/filter can be specified to match the term, all criteria have to be met :param Sequence[str] protocols: `direct`, `bgp`, `osp`, ... :param Sequence[str] vpn_neighbor_macs: overlay-facing criteria (used for bgp_config where via=vpn) - :param Sequence[str] vpn_paths: overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + :param Sequence[str] vpn_paths: overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ if as_paths is not None: pulumi.set(__self__, "as_paths", as_paths) @@ -5777,8 +5837,7 @@ def vpn_path_sla(self) -> Optional['outputs.GatewayRoutingPoliciesTermMatchingVp @pulumi.getter(name="vpnPaths") def vpn_paths(self) -> Optional[Sequence[str]]: """ - overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ return pulumi.get(self, "vpn_paths") @@ -5806,8 +5865,7 @@ def __init__(__self__, *, route: Optional[str] = None, vrf_name: Optional[str] = None): """ - :param str vrf_name: name of the vrf instance - it can also be the name of the VPN or wan if they + :param str vrf_name: name of the vrf instance, it can also be the name of the VPN or wan if they """ if route is not None: pulumi.set(__self__, "route", route) @@ -5823,8 +5881,7 @@ def route(self) -> Optional[str]: @pulumi.getter(name="vrfName") def vrf_name(self) -> Optional[str]: """ - name of the vrf instance - it can also be the name of the VPN or wan if they + name of the vrf instance, it can also be the name of the VPN or wan if they """ return pulumi.get(self, "vrf_name") @@ -5918,8 +5975,7 @@ def __init__(__self__, *, :param 'GatewayServicePolicyAppqoeArgs' appqoe: For SRX Only :param bool local_routing: access within the same VRF :param str name: Required when `servicepolicy_id` is not defined, optional otherwise (override the servicepolicy name) - :param str path_preference: by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + :param str path_preference: by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` :param str servicepolicy_id: used to link servicepolicy defined at org level and overwrite some attributes :param Sequence[str] services: Required when `servicepolicy_id` is not defined. List of Applications / Desctinations :param Sequence[str] tenants: Required when `servicepolicy_id` is not defined. List of Networks / Users @@ -5991,8 +6047,7 @@ def name(self) -> Optional[str]: @pulumi.getter(name="pathPreference") def path_preference(self) -> Optional[str]: """ - by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` """ return pulumi.get(self, "path_preference") @@ -6211,25 +6266,21 @@ def __init__(__self__, *, secondary: Optional['outputs.GatewayTunnelConfigsSecondary'] = None, version: Optional[str] = None): """ - :param int ike_lifetime: Only if `provider`== `custom-ipsec` - :param str ike_mode: Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` - :param Sequence['GatewayTunnelConfigsIkeProposalArgs'] ike_proposals: if `provider`== `custom-ipsec` - :param int ipsec_lifetime: if `provider`== `custom-ipsec` - :param Sequence['GatewayTunnelConfigsIpsecProposalArgs'] ipsec_proposals: Only if `provider`== `custom-ipsec` - :param str local_id: Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` - :param str mode: enum: `active-active`, `active-standby` - :param Sequence[str] networks: networks reachable via this tunnel - :param 'GatewayTunnelConfigsProbeArgs' probe: Only if `provider`== `custom-ipsec` - :param str protocol: Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` - :param str provider: enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` - :param str psk: Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` - :param str version: Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + :param int ike_lifetime: Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 + :param str ike_mode: Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` + :param Sequence['GatewayTunnelConfigsIkeProposalArgs'] ike_proposals: if `provider`==`custom-ipsec` + :param int ipsec_lifetime: Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 + :param Sequence['GatewayTunnelConfigsIpsecProposalArgs'] ipsec_proposals: Only if `provider`==`custom-ipsec` + :param str local_id: Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param str mode: Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` + :param Sequence[str] networks: if `provider`==`custom-ipsec`, networks reachable via this tunnel + :param 'GatewayTunnelConfigsPrimaryArgs' primary: Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param 'GatewayTunnelConfigsProbeArgs' probe: Only if `provider`==`custom-ipsec` + :param str protocol: Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` + :param str provider: Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + :param str psk: Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param 'GatewayTunnelConfigsSecondaryArgs' secondary: Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param str version: Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ if auto_provision is not None: pulumi.set(__self__, "auto_provision", auto_provision) @@ -6273,7 +6324,7 @@ def auto_provision(self) -> Optional['outputs.GatewayTunnelConfigsAutoProvision' @pulumi.getter(name="ikeLifetime") def ike_lifetime(self) -> Optional[int]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ return pulumi.get(self, "ike_lifetime") @@ -6281,7 +6332,7 @@ def ike_lifetime(self) -> Optional[int]: @pulumi.getter(name="ikeMode") def ike_mode(self) -> Optional[str]: """ - Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` """ return pulumi.get(self, "ike_mode") @@ -6289,7 +6340,7 @@ def ike_mode(self) -> Optional[str]: @pulumi.getter(name="ikeProposals") def ike_proposals(self) -> Optional[Sequence['outputs.GatewayTunnelConfigsIkeProposal']]: """ - if `provider`== `custom-ipsec` + if `provider`==`custom-ipsec` """ return pulumi.get(self, "ike_proposals") @@ -6297,7 +6348,7 @@ def ike_proposals(self) -> Optional[Sequence['outputs.GatewayTunnelConfigsIkePro @pulumi.getter(name="ipsecLifetime") def ipsec_lifetime(self) -> Optional[int]: """ - if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ return pulumi.get(self, "ipsec_lifetime") @@ -6305,7 +6356,7 @@ def ipsec_lifetime(self) -> Optional[int]: @pulumi.getter(name="ipsecProposals") def ipsec_proposals(self) -> Optional[Sequence['outputs.GatewayTunnelConfigsIpsecProposal']]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ return pulumi.get(self, "ipsec_proposals") @@ -6313,10 +6364,7 @@ def ipsec_proposals(self) -> Optional[Sequence['outputs.GatewayTunnelConfigsIpse @pulumi.getter(name="localId") def local_id(self) -> Optional[str]: """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "local_id") @@ -6324,7 +6372,7 @@ def local_id(self) -> Optional[str]: @pulumi.getter def mode(self) -> Optional[str]: """ - enum: `active-active`, `active-standby` + Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` """ return pulumi.get(self, "mode") @@ -6332,20 +6380,23 @@ def mode(self) -> Optional[str]: @pulumi.getter def networks(self) -> Optional[Sequence[str]]: """ - networks reachable via this tunnel + if `provider`==`custom-ipsec`, networks reachable via this tunnel """ return pulumi.get(self, "networks") @property @pulumi.getter def primary(self) -> Optional['outputs.GatewayTunnelConfigsPrimary']: + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ return pulumi.get(self, "primary") @property @pulumi.getter def probe(self) -> Optional['outputs.GatewayTunnelConfigsProbe']: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ return pulumi.get(self, "probe") @@ -6353,7 +6404,7 @@ def probe(self) -> Optional['outputs.GatewayTunnelConfigsProbe']: @pulumi.getter def protocol(self) -> Optional[str]: """ - Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` """ return pulumi.get(self, "protocol") @@ -6361,7 +6412,7 @@ def protocol(self) -> Optional[str]: @pulumi.getter def provider(self) -> Optional[str]: """ - enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` """ return pulumi.get(self, "provider") @@ -6369,23 +6420,23 @@ def provider(self) -> Optional[str]: @pulumi.getter def psk(self) -> Optional[str]: """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "psk") @property @pulumi.getter def secondary(self) -> Optional['outputs.GatewayTunnelConfigsSecondary']: + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ return pulumi.get(self, "secondary") @property @pulumi.getter def version(self) -> Optional[str]: """ - Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ return pulumi.get(self, "version") @@ -6393,19 +6444,37 @@ def version(self) -> Optional[str]: @pulumi.output_type class GatewayTunnelConfigsAutoProvision(dict): def __init__(__self__, *, + provider: str, enable: Optional[bool] = None, latlng: Optional['outputs.GatewayTunnelConfigsAutoProvisionLatlng'] = None, primary: Optional['outputs.GatewayTunnelConfigsAutoProvisionPrimary'] = None, + region: Optional[str] = None, secondary: Optional['outputs.GatewayTunnelConfigsAutoProvisionSecondary'] = None): + """ + :param str provider: enum: `jse-ipsec`, `zscaler-ipsec` + :param 'GatewayTunnelConfigsAutoProvisionLatlngArgs' latlng: API override for POP selection + :param str region: API override for POP selection + """ + pulumi.set(__self__, "provider", provider) if enable is not None: pulumi.set(__self__, "enable", enable) if latlng is not None: pulumi.set(__self__, "latlng", latlng) if primary is not None: pulumi.set(__self__, "primary", primary) + if region is not None: + pulumi.set(__self__, "region", region) if secondary is not None: pulumi.set(__self__, "secondary", secondary) + @property + @pulumi.getter + def provider(self) -> str: + """ + enum: `jse-ipsec`, `zscaler-ipsec` + """ + return pulumi.get(self, "provider") + @property @pulumi.getter def enable(self) -> Optional[bool]: @@ -6414,6 +6483,9 @@ def enable(self) -> Optional[bool]: @property @pulumi.getter def latlng(self) -> Optional['outputs.GatewayTunnelConfigsAutoProvisionLatlng']: + """ + API override for POP selection + """ return pulumi.get(self, "latlng") @property @@ -6421,6 +6493,14 @@ def latlng(self) -> Optional['outputs.GatewayTunnelConfigsAutoProvisionLatlng']: def primary(self) -> Optional['outputs.GatewayTunnelConfigsAutoProvisionPrimary']: return pulumi.get(self, "primary") + @property + @pulumi.getter + def region(self) -> Optional[str]: + """ + API override for POP selection + """ + return pulumi.get(self, "region") + @property @pulumi.getter def secondary(self) -> Optional['outputs.GatewayTunnelConfigsAutoProvisionSecondary']: @@ -6451,8 +6531,8 @@ class GatewayTunnelConfigsAutoProvisionPrimary(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "numHosts": - suggest = "num_hosts" + if key == "probeIps": + suggest = "probe_ips" elif key == "wanNames": suggest = "wan_names" @@ -6468,20 +6548,20 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - num_hosts: Optional[str] = None, + probe_ips: Optional[Sequence[str]] = None, wan_names: Optional[Sequence[str]] = None): """ :param Sequence[str] wan_names: optional, only needed if `vars_only`==`false` """ - if num_hosts is not None: - pulumi.set(__self__, "num_hosts", num_hosts) + if probe_ips is not None: + pulumi.set(__self__, "probe_ips", probe_ips) if wan_names is not None: pulumi.set(__self__, "wan_names", wan_names) @property - @pulumi.getter(name="numHosts") - def num_hosts(self) -> Optional[str]: - return pulumi.get(self, "num_hosts") + @pulumi.getter(name="probeIps") + def probe_ips(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "probe_ips") @property @pulumi.getter(name="wanNames") @@ -6497,8 +6577,8 @@ class GatewayTunnelConfigsAutoProvisionSecondary(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "numHosts": - suggest = "num_hosts" + if key == "probeIps": + suggest = "probe_ips" elif key == "wanNames": suggest = "wan_names" @@ -6514,20 +6594,20 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - num_hosts: Optional[str] = None, + probe_ips: Optional[Sequence[str]] = None, wan_names: Optional[Sequence[str]] = None): """ :param Sequence[str] wan_names: optional, only needed if `vars_only`==`false` """ - if num_hosts is not None: - pulumi.set(__self__, "num_hosts", num_hosts) + if probe_ips is not None: + pulumi.set(__self__, "probe_ips", probe_ips) if wan_names is not None: pulumi.set(__self__, "wan_names", wan_names) @property - @pulumi.getter(name="numHosts") - def num_hosts(self) -> Optional[str]: - return pulumi.get(self, "num_hosts") + @pulumi.getter(name="probeIps") + def probe_ips(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "probe_ips") @property @pulumi.getter(name="wanNames") @@ -6651,7 +6731,7 @@ def __init__(__self__, *, enc_algo: Optional[str] = None): """ :param str auth_algo: enum: `md5`, `sha1`, `sha2` - :param str dh_group: Only if `provider`== `custom-ipsec`. enum: + :param str dh_group: Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -6683,7 +6763,7 @@ def auth_algo(self) -> Optional[str]: @pulumi.getter(name="dhGroup") def dh_group(self) -> Optional[str]: """ - Only if `provider`== `custom-ipsec`. enum: + Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -6711,14 +6791,14 @@ class GatewayTunnelConfigsPrimary(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "internalIps": + if key == "wanNames": + suggest = "wan_names" + elif key == "internalIps": suggest = "internal_ips" elif key == "probeIps": suggest = "probe_ips" elif key == "remoteIds": suggest = "remote_ids" - elif key == "wanNames": - suggest = "wan_names" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewayTunnelConfigsPrimary. Access the value via the '{suggest}' property getter instead.") @@ -6732,40 +6812,39 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - hosts: Optional[Sequence[str]] = None, + hosts: Sequence[str], + wan_names: Sequence[str], internal_ips: Optional[Sequence[str]] = None, probe_ips: Optional[Sequence[str]] = None, - remote_ids: Optional[Sequence[str]] = None, - wan_names: Optional[Sequence[str]] = None): + remote_ids: Optional[Sequence[str]] = None): """ - :param Sequence[str] internal_ips: Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` - :param Sequence[str] remote_ids: Only if `provider`== `custom-ipsec` + :param Sequence[str] internal_ips: Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` + :param Sequence[str] remote_ids: Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - if hosts is not None: - pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "wan_names", wan_names) if internal_ips is not None: pulumi.set(__self__, "internal_ips", internal_ips) if probe_ips is not None: pulumi.set(__self__, "probe_ips", probe_ips) if remote_ids is not None: pulumi.set(__self__, "remote_ids", remote_ids) - if wan_names is not None: - pulumi.set(__self__, "wan_names", wan_names) @property @pulumi.getter - def hosts(self) -> Optional[Sequence[str]]: + def hosts(self) -> Sequence[str]: return pulumi.get(self, "hosts") + @property + @pulumi.getter(name="wanNames") + def wan_names(self) -> Sequence[str]: + return pulumi.get(self, "wan_names") + @property @pulumi.getter(name="internalIps") def internal_ips(self) -> Optional[Sequence[str]]: """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ return pulumi.get(self, "internal_ips") @@ -6778,15 +6857,10 @@ def probe_ips(self) -> Optional[Sequence[str]]: @pulumi.getter(name="remoteIds") def remote_ids(self) -> Optional[Sequence[str]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "remote_ids") - @property - @pulumi.getter(name="wanNames") - def wan_names(self) -> Optional[Sequence[str]]: - return pulumi.get(self, "wan_names") - @pulumi.output_type class GatewayTunnelConfigsProbe(dict): @@ -6848,14 +6922,14 @@ class GatewayTunnelConfigsSecondary(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "internalIps": + if key == "wanNames": + suggest = "wan_names" + elif key == "internalIps": suggest = "internal_ips" elif key == "probeIps": suggest = "probe_ips" elif key == "remoteIds": suggest = "remote_ids" - elif key == "wanNames": - suggest = "wan_names" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewayTunnelConfigsSecondary. Access the value via the '{suggest}' property getter instead.") @@ -6869,40 +6943,39 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - hosts: Optional[Sequence[str]] = None, + hosts: Sequence[str], + wan_names: Sequence[str], internal_ips: Optional[Sequence[str]] = None, probe_ips: Optional[Sequence[str]] = None, - remote_ids: Optional[Sequence[str]] = None, - wan_names: Optional[Sequence[str]] = None): + remote_ids: Optional[Sequence[str]] = None): """ - :param Sequence[str] internal_ips: Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` - :param Sequence[str] remote_ids: Only if `provider`== `custom-ipsec` + :param Sequence[str] internal_ips: Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` + :param Sequence[str] remote_ids: Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - if hosts is not None: - pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "wan_names", wan_names) if internal_ips is not None: pulumi.set(__self__, "internal_ips", internal_ips) if probe_ips is not None: pulumi.set(__self__, "probe_ips", probe_ips) if remote_ids is not None: pulumi.set(__self__, "remote_ids", remote_ids) - if wan_names is not None: - pulumi.set(__self__, "wan_names", wan_names) @property @pulumi.getter - def hosts(self) -> Optional[Sequence[str]]: + def hosts(self) -> Sequence[str]: return pulumi.get(self, "hosts") + @property + @pulumi.getter(name="wanNames") + def wan_names(self) -> Sequence[str]: + return pulumi.get(self, "wan_names") + @property @pulumi.getter(name="internalIps") def internal_ips(self) -> Optional[Sequence[str]]: """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ return pulumi.get(self, "internal_ips") @@ -6915,15 +6988,10 @@ def probe_ips(self) -> Optional[Sequence[str]]: @pulumi.getter(name="remoteIds") def remote_ids(self) -> Optional[Sequence[str]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "remote_ids") - @property - @pulumi.getter(name="wanNames") - def wan_names(self) -> Optional[Sequence[str]]: - return pulumi.get(self, "wan_names") - @pulumi.output_type class GatewayTunnelProviderOptions(dict): @@ -6963,6 +7031,8 @@ def __key_warning(key: str): suggest = None if key == "numUsers": suggest = "num_users" + elif key == "orgName": + suggest = "org_name" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewayTunnelProviderOptionsJse. Access the value via the '{suggest}' property getter instead.") @@ -6976,49 +7046,65 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - name: Optional[str] = None, - num_users: Optional[int] = None): - if name is not None: - pulumi.set(__self__, "name", name) + num_users: Optional[int] = None, + org_name: Optional[str] = None): + """ + :param str org_name: JSE Organization name + """ if num_users is not None: pulumi.set(__self__, "num_users", num_users) - - @property - @pulumi.getter - def name(self) -> Optional[str]: - return pulumi.get(self, "name") + if org_name is not None: + pulumi.set(__self__, "org_name", org_name) @property @pulumi.getter(name="numUsers") def num_users(self) -> Optional[int]: return pulumi.get(self, "num_users") + @property + @pulumi.getter(name="orgName") + def org_name(self) -> Optional[str]: + """ + JSE Organization name + """ + return pulumi.get(self, "org_name") + @pulumi.output_type class GatewayTunnelProviderOptionsZscaler(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "aupAcceptanceRequired": - suggest = "aup_acceptance_required" - elif key == "aupExpire": - suggest = "aup_expire" - elif key == "aupSslProxy": - suggest = "aup_ssl_proxy" - elif key == "downloadMbps": - suggest = "download_mbps" - elif key == "enableAup": - suggest = "enable_aup" - elif key == "enableCaution": - suggest = "enable_caution" - elif key == "enforceAuthentication": - suggest = "enforce_authentication" + if key == "aupBlockInternetUntilAccepted": + suggest = "aup_block_internet_until_accepted" + elif key == "aupEnabled": + suggest = "aup_enabled" + elif key == "aupForceSslInspection": + suggest = "aup_force_ssl_inspection" + elif key == "aupTimeoutInDays": + suggest = "aup_timeout_in_days" + elif key == "authRequired": + suggest = "auth_required" + elif key == "cautionEnabled": + suggest = "caution_enabled" + elif key == "dnBandwidth": + suggest = "dn_bandwidth" + elif key == "idleTimeInMinutes": + suggest = "idle_time_in_minutes" + elif key == "ofwEnabled": + suggest = "ofw_enabled" elif key == "subLocations": suggest = "sub_locations" - elif key == "uploadMbps": - suggest = "upload_mbps" - elif key == "useXff": - suggest = "use_xff" + elif key == "surrogateIp": + suggest = "surrogate_ip" + elif key == "surrogateIpEnforcedForKnownBrowsers": + suggest = "surrogate_ip_enforced_for_known_browsers" + elif key == "surrogateRefreshTimeInMinutes": + suggest = "surrogate_refresh_time_in_minutes" + elif key == "upBandwidth": + suggest = "up_bandwidth" + elif key == "xffForwardEnabled": + suggest = "xff_forward_enabled" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewayTunnelProviderOptionsZscaler. Access the value via the '{suggest}' property getter instead.") @@ -7032,128 +7118,184 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - aup_acceptance_required: Optional[bool] = None, - aup_expire: Optional[int] = None, - aup_ssl_proxy: Optional[bool] = None, - download_mbps: Optional[int] = None, - enable_aup: Optional[bool] = None, - enable_caution: Optional[bool] = None, - enforce_authentication: Optional[bool] = None, - name: Optional[str] = None, + aup_block_internet_until_accepted: Optional[bool] = None, + aup_enabled: Optional[bool] = None, + aup_force_ssl_inspection: Optional[bool] = None, + aup_timeout_in_days: Optional[int] = None, + auth_required: Optional[bool] = None, + caution_enabled: Optional[bool] = None, + dn_bandwidth: Optional[float] = None, + idle_time_in_minutes: Optional[int] = None, + ofw_enabled: Optional[bool] = None, sub_locations: Optional[Sequence['outputs.GatewayTunnelProviderOptionsZscalerSubLocation']] = None, - upload_mbps: Optional[int] = None, - use_xff: Optional[bool] = None): - """ - :param int aup_expire: days before AUP is requested again - :param bool aup_ssl_proxy: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - :param int download_mbps: the download bandwidth cap of the link, in Mbps - :param bool enable_aup: if `use_xff`==`true`, display Acceptable Use Policy (AUP) - :param bool enable_caution: when `enforce_authentication`==`false`, display caution notification for non-authenticated users - :param Sequence['GatewayTunnelProviderOptionsZscalerSubLocationArgs'] sub_locations: if `use_xff`==`true` - :param int upload_mbps: the download bandwidth cap of the link, in Mbps - :param bool use_xff: location uses proxy chaining to forward traffic - """ - if aup_acceptance_required is not None: - pulumi.set(__self__, "aup_acceptance_required", aup_acceptance_required) - if aup_expire is not None: - pulumi.set(__self__, "aup_expire", aup_expire) - if aup_ssl_proxy is not None: - pulumi.set(__self__, "aup_ssl_proxy", aup_ssl_proxy) - if download_mbps is not None: - pulumi.set(__self__, "download_mbps", download_mbps) - if enable_aup is not None: - pulumi.set(__self__, "enable_aup", enable_aup) - if enable_caution is not None: - pulumi.set(__self__, "enable_caution", enable_caution) - if enforce_authentication is not None: - pulumi.set(__self__, "enforce_authentication", enforce_authentication) - if name is not None: - pulumi.set(__self__, "name", name) + surrogate_ip: Optional[bool] = None, + surrogate_ip_enforced_for_known_browsers: Optional[bool] = None, + surrogate_refresh_time_in_minutes: Optional[int] = None, + up_bandwidth: Optional[float] = None, + xff_forward_enabled: Optional[bool] = None): + """ + :param bool aup_enabled: Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + :param bool aup_force_ssl_inspection: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + :param int aup_timeout_in_days: Required if `aup_enabled`==`true`. Days before AUP is requested again + :param bool auth_required: Enable this option to enforce user authentication + :param bool caution_enabled: Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + :param float dn_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param int idle_time_in_minutes: Required if `surrogate_IP`==`true`, idle Time to Disassociation + :param bool ofw_enabled: if `true`, enable the firewall control option + :param Sequence['GatewayTunnelProviderOptionsZscalerSubLocationArgs'] sub_locations: `sub-locations` can be used for specific uses cases to define different configuration based on the user network + :param bool surrogate_ip: Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + :param bool surrogate_ip_enforced_for_known_browsers: Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + :param int surrogate_refresh_time_in_minutes: Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + :param float up_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param bool xff_forward_enabled: location uses proxy chaining to forward traffic + """ + if aup_block_internet_until_accepted is not None: + pulumi.set(__self__, "aup_block_internet_until_accepted", aup_block_internet_until_accepted) + if aup_enabled is not None: + pulumi.set(__self__, "aup_enabled", aup_enabled) + if aup_force_ssl_inspection is not None: + pulumi.set(__self__, "aup_force_ssl_inspection", aup_force_ssl_inspection) + if aup_timeout_in_days is not None: + pulumi.set(__self__, "aup_timeout_in_days", aup_timeout_in_days) + if auth_required is not None: + pulumi.set(__self__, "auth_required", auth_required) + if caution_enabled is not None: + pulumi.set(__self__, "caution_enabled", caution_enabled) + if dn_bandwidth is not None: + pulumi.set(__self__, "dn_bandwidth", dn_bandwidth) + if idle_time_in_minutes is not None: + pulumi.set(__self__, "idle_time_in_minutes", idle_time_in_minutes) + if ofw_enabled is not None: + pulumi.set(__self__, "ofw_enabled", ofw_enabled) if sub_locations is not None: pulumi.set(__self__, "sub_locations", sub_locations) - if upload_mbps is not None: - pulumi.set(__self__, "upload_mbps", upload_mbps) - if use_xff is not None: - pulumi.set(__self__, "use_xff", use_xff) + if surrogate_ip is not None: + pulumi.set(__self__, "surrogate_ip", surrogate_ip) + if surrogate_ip_enforced_for_known_browsers is not None: + pulumi.set(__self__, "surrogate_ip_enforced_for_known_browsers", surrogate_ip_enforced_for_known_browsers) + if surrogate_refresh_time_in_minutes is not None: + pulumi.set(__self__, "surrogate_refresh_time_in_minutes", surrogate_refresh_time_in_minutes) + if up_bandwidth is not None: + pulumi.set(__self__, "up_bandwidth", up_bandwidth) + if xff_forward_enabled is not None: + pulumi.set(__self__, "xff_forward_enabled", xff_forward_enabled) @property - @pulumi.getter(name="aupAcceptanceRequired") - def aup_acceptance_required(self) -> Optional[bool]: - return pulumi.get(self, "aup_acceptance_required") + @pulumi.getter(name="aupBlockInternetUntilAccepted") + def aup_block_internet_until_accepted(self) -> Optional[bool]: + return pulumi.get(self, "aup_block_internet_until_accepted") @property - @pulumi.getter(name="aupExpire") - def aup_expire(self) -> Optional[int]: + @pulumi.getter(name="aupEnabled") + def aup_enabled(self) -> Optional[bool]: """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - return pulumi.get(self, "aup_expire") + return pulumi.get(self, "aup_enabled") @property - @pulumi.getter(name="aupSslProxy") - def aup_ssl_proxy(self) -> Optional[bool]: + @pulumi.getter(name="aupForceSslInspection") + def aup_force_ssl_inspection(self) -> Optional[bool]: """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - return pulumi.get(self, "aup_ssl_proxy") + return pulumi.get(self, "aup_force_ssl_inspection") @property - @pulumi.getter(name="downloadMbps") - def download_mbps(self) -> Optional[int]: + @pulumi.getter(name="aupTimeoutInDays") + def aup_timeout_in_days(self) -> Optional[int]: """ - the download bandwidth cap of the link, in Mbps + Required if `aup_enabled`==`true`. Days before AUP is requested again """ - return pulumi.get(self, "download_mbps") + return pulumi.get(self, "aup_timeout_in_days") @property - @pulumi.getter(name="enableAup") - def enable_aup(self) -> Optional[bool]: + @pulumi.getter(name="authRequired") + def auth_required(self) -> Optional[bool]: """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Enable this option to enforce user authentication """ - return pulumi.get(self, "enable_aup") + return pulumi.get(self, "auth_required") @property - @pulumi.getter(name="enableCaution") - def enable_caution(self) -> Optional[bool]: + @pulumi.getter(name="cautionEnabled") + def caution_enabled(self) -> Optional[bool]: """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - return pulumi.get(self, "enable_caution") + return pulumi.get(self, "caution_enabled") @property - @pulumi.getter(name="enforceAuthentication") - def enforce_authentication(self) -> Optional[bool]: - return pulumi.get(self, "enforce_authentication") + @pulumi.getter(name="dnBandwidth") + def dn_bandwidth(self) -> Optional[float]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "dn_bandwidth") @property - @pulumi.getter - def name(self) -> Optional[str]: - return pulumi.get(self, "name") + @pulumi.getter(name="idleTimeInMinutes") + def idle_time_in_minutes(self) -> Optional[int]: + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + return pulumi.get(self, "idle_time_in_minutes") + + @property + @pulumi.getter(name="ofwEnabled") + def ofw_enabled(self) -> Optional[bool]: + """ + if `true`, enable the firewall control option + """ + return pulumi.get(self, "ofw_enabled") @property @pulumi.getter(name="subLocations") def sub_locations(self) -> Optional[Sequence['outputs.GatewayTunnelProviderOptionsZscalerSubLocation']]: """ - if `use_xff`==`true` + `sub-locations` can be used for specific uses cases to define different configuration based on the user network """ return pulumi.get(self, "sub_locations") @property - @pulumi.getter(name="uploadMbps") - def upload_mbps(self) -> Optional[int]: + @pulumi.getter(name="surrogateIp") + def surrogate_ip(self) -> Optional[bool]: """ - the download bandwidth cap of the link, in Mbps + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies """ - return pulumi.get(self, "upload_mbps") + return pulumi.get(self, "surrogate_ip") @property - @pulumi.getter(name="useXff") - def use_xff(self) -> Optional[bool]: + @pulumi.getter(name="surrogateIpEnforcedForKnownBrowsers") + def surrogate_ip_enforced_for_known_browsers(self) -> Optional[bool]: + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + """ + return pulumi.get(self, "surrogate_ip_enforced_for_known_browsers") + + @property + @pulumi.getter(name="surrogateRefreshTimeInMinutes") + def surrogate_refresh_time_in_minutes(self) -> Optional[int]: + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + return pulumi.get(self, "surrogate_refresh_time_in_minutes") + + @property + @pulumi.getter(name="upBandwidth") + def up_bandwidth(self) -> Optional[float]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "up_bandwidth") + + @property + @pulumi.getter(name="xffForwardEnabled") + def xff_forward_enabled(self) -> Optional[bool]: """ location uses proxy chaining to forward traffic """ - return pulumi.get(self, "use_xff") + return pulumi.get(self, "xff_forward_enabled") @pulumi.output_type @@ -7161,22 +7303,32 @@ class GatewayTunnelProviderOptionsZscalerSubLocation(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "aupAcceptanceRequired": - suggest = "aup_acceptance_required" - elif key == "aupExpire": - suggest = "aup_expire" - elif key == "aupSslProxy": - suggest = "aup_ssl_proxy" - elif key == "downloadMbps": - suggest = "download_mbps" - elif key == "enableAup": - suggest = "enable_aup" - elif key == "enableCaution": - suggest = "enable_caution" - elif key == "enforceAuthentication": - suggest = "enforce_authentication" - elif key == "uploadMbps": - suggest = "upload_mbps" + if key == "aupBlockInternetUntilAccepted": + suggest = "aup_block_internet_until_accepted" + elif key == "aupEnabled": + suggest = "aup_enabled" + elif key == "aupForceSslInspection": + suggest = "aup_force_ssl_inspection" + elif key == "aupTimeoutInDays": + suggest = "aup_timeout_in_days" + elif key == "authRequired": + suggest = "auth_required" + elif key == "cautionEnabled": + suggest = "caution_enabled" + elif key == "dnBandwidth": + suggest = "dn_bandwidth" + elif key == "idleTimeInMinutes": + suggest = "idle_time_in_minutes" + elif key == "ofwEnabled": + suggest = "ofw_enabled" + elif key == "surrogateIp": + suggest = "surrogate_ip" + elif key == "surrogateIpEnforcedForKnownBrowsers": + suggest = "surrogate_ip_enforced_for_known_browsers" + elif key == "surrogateRefreshTimeInMinutes": + suggest = "surrogate_refresh_time_in_minutes" + elif key == "upBandwidth": + suggest = "up_bandwidth" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewayTunnelProviderOptionsZscalerSubLocation. Access the value via the '{suggest}' property getter instead.") @@ -7190,104 +7342,172 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - aup_acceptance_required: Optional[bool] = None, - aup_expire: Optional[int] = None, - aup_ssl_proxy: Optional[bool] = None, - download_mbps: Optional[int] = None, - enable_aup: Optional[bool] = None, - enable_caution: Optional[bool] = None, - enforce_authentication: Optional[bool] = None, - subnets: Optional[Sequence[str]] = None, - upload_mbps: Optional[int] = None): - """ - :param int aup_expire: days before AUP is requested again - :param bool aup_ssl_proxy: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - :param int download_mbps: the download bandwidth cap of the link, in Mbps - :param bool enable_aup: if `use_xff`==`true`, display Acceptable Use Policy (AUP) - :param bool enable_caution: when `enforce_authentication`==`false`, display caution notification for non-authenticated users - :param int upload_mbps: the download bandwidth cap of the link, in Mbps - """ - if aup_acceptance_required is not None: - pulumi.set(__self__, "aup_acceptance_required", aup_acceptance_required) - if aup_expire is not None: - pulumi.set(__self__, "aup_expire", aup_expire) - if aup_ssl_proxy is not None: - pulumi.set(__self__, "aup_ssl_proxy", aup_ssl_proxy) - if download_mbps is not None: - pulumi.set(__self__, "download_mbps", download_mbps) - if enable_aup is not None: - pulumi.set(__self__, "enable_aup", enable_aup) - if enable_caution is not None: - pulumi.set(__self__, "enable_caution", enable_caution) - if enforce_authentication is not None: - pulumi.set(__self__, "enforce_authentication", enforce_authentication) - if subnets is not None: - pulumi.set(__self__, "subnets", subnets) - if upload_mbps is not None: - pulumi.set(__self__, "upload_mbps", upload_mbps) + aup_block_internet_until_accepted: Optional[bool] = None, + aup_enabled: Optional[bool] = None, + aup_force_ssl_inspection: Optional[bool] = None, + aup_timeout_in_days: Optional[int] = None, + auth_required: Optional[bool] = None, + caution_enabled: Optional[bool] = None, + dn_bandwidth: Optional[float] = None, + idle_time_in_minutes: Optional[int] = None, + name: Optional[str] = None, + ofw_enabled: Optional[bool] = None, + surrogate_ip: Optional[bool] = None, + surrogate_ip_enforced_for_known_browsers: Optional[bool] = None, + surrogate_refresh_time_in_minutes: Optional[int] = None, + up_bandwidth: Optional[float] = None): + """ + :param bool aup_enabled: Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + :param bool aup_force_ssl_inspection: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + :param int aup_timeout_in_days: Required if `aup_enabled`==`true`. Days before AUP is requested again + :param bool auth_required: Enable this option to authenticate users + :param bool caution_enabled: Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + :param float dn_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param int idle_time_in_minutes: Required if `surrogate_IP`==`true`, idle Time to Disassociation + :param str name: Network name + :param bool ofw_enabled: if `true`, enable the firewall control option + :param bool surrogate_ip: Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + :param bool surrogate_ip_enforced_for_known_browsers: Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + :param int surrogate_refresh_time_in_minutes: Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + :param float up_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + if aup_block_internet_until_accepted is not None: + pulumi.set(__self__, "aup_block_internet_until_accepted", aup_block_internet_until_accepted) + if aup_enabled is not None: + pulumi.set(__self__, "aup_enabled", aup_enabled) + if aup_force_ssl_inspection is not None: + pulumi.set(__self__, "aup_force_ssl_inspection", aup_force_ssl_inspection) + if aup_timeout_in_days is not None: + pulumi.set(__self__, "aup_timeout_in_days", aup_timeout_in_days) + if auth_required is not None: + pulumi.set(__self__, "auth_required", auth_required) + if caution_enabled is not None: + pulumi.set(__self__, "caution_enabled", caution_enabled) + if dn_bandwidth is not None: + pulumi.set(__self__, "dn_bandwidth", dn_bandwidth) + if idle_time_in_minutes is not None: + pulumi.set(__self__, "idle_time_in_minutes", idle_time_in_minutes) + if name is not None: + pulumi.set(__self__, "name", name) + if ofw_enabled is not None: + pulumi.set(__self__, "ofw_enabled", ofw_enabled) + if surrogate_ip is not None: + pulumi.set(__self__, "surrogate_ip", surrogate_ip) + if surrogate_ip_enforced_for_known_browsers is not None: + pulumi.set(__self__, "surrogate_ip_enforced_for_known_browsers", surrogate_ip_enforced_for_known_browsers) + if surrogate_refresh_time_in_minutes is not None: + pulumi.set(__self__, "surrogate_refresh_time_in_minutes", surrogate_refresh_time_in_minutes) + if up_bandwidth is not None: + pulumi.set(__self__, "up_bandwidth", up_bandwidth) @property - @pulumi.getter(name="aupAcceptanceRequired") - def aup_acceptance_required(self) -> Optional[bool]: - return pulumi.get(self, "aup_acceptance_required") + @pulumi.getter(name="aupBlockInternetUntilAccepted") + def aup_block_internet_until_accepted(self) -> Optional[bool]: + return pulumi.get(self, "aup_block_internet_until_accepted") @property - @pulumi.getter(name="aupExpire") - def aup_expire(self) -> Optional[int]: + @pulumi.getter(name="aupEnabled") + def aup_enabled(self) -> Optional[bool]: """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - return pulumi.get(self, "aup_expire") + return pulumi.get(self, "aup_enabled") @property - @pulumi.getter(name="aupSslProxy") - def aup_ssl_proxy(self) -> Optional[bool]: + @pulumi.getter(name="aupForceSslInspection") + def aup_force_ssl_inspection(self) -> Optional[bool]: """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - return pulumi.get(self, "aup_ssl_proxy") + return pulumi.get(self, "aup_force_ssl_inspection") @property - @pulumi.getter(name="downloadMbps") - def download_mbps(self) -> Optional[int]: + @pulumi.getter(name="aupTimeoutInDays") + def aup_timeout_in_days(self) -> Optional[int]: """ - the download bandwidth cap of the link, in Mbps + Required if `aup_enabled`==`true`. Days before AUP is requested again """ - return pulumi.get(self, "download_mbps") + return pulumi.get(self, "aup_timeout_in_days") @property - @pulumi.getter(name="enableAup") - def enable_aup(self) -> Optional[bool]: + @pulumi.getter(name="authRequired") + def auth_required(self) -> Optional[bool]: """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Enable this option to authenticate users """ - return pulumi.get(self, "enable_aup") + return pulumi.get(self, "auth_required") @property - @pulumi.getter(name="enableCaution") - def enable_caution(self) -> Optional[bool]: + @pulumi.getter(name="cautionEnabled") + def caution_enabled(self) -> Optional[bool]: """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - return pulumi.get(self, "enable_caution") + return pulumi.get(self, "caution_enabled") @property - @pulumi.getter(name="enforceAuthentication") - def enforce_authentication(self) -> Optional[bool]: - return pulumi.get(self, "enforce_authentication") + @pulumi.getter(name="dnBandwidth") + def dn_bandwidth(self) -> Optional[float]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "dn_bandwidth") + + @property + @pulumi.getter(name="idleTimeInMinutes") + def idle_time_in_minutes(self) -> Optional[int]: + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + return pulumi.get(self, "idle_time_in_minutes") @property @pulumi.getter - def subnets(self) -> Optional[Sequence[str]]: - return pulumi.get(self, "subnets") + def name(self) -> Optional[str]: + """ + Network name + """ + return pulumi.get(self, "name") @property - @pulumi.getter(name="uploadMbps") - def upload_mbps(self) -> Optional[int]: + @pulumi.getter(name="ofwEnabled") + def ofw_enabled(self) -> Optional[bool]: """ - the download bandwidth cap of the link, in Mbps + if `true`, enable the firewall control option """ - return pulumi.get(self, "upload_mbps") + return pulumi.get(self, "ofw_enabled") + + @property + @pulumi.getter(name="surrogateIp") + def surrogate_ip(self) -> Optional[bool]: + """ + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + """ + return pulumi.get(self, "surrogate_ip") + + @property + @pulumi.getter(name="surrogateIpEnforcedForKnownBrowsers") + def surrogate_ip_enforced_for_known_browsers(self) -> Optional[bool]: + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + """ + return pulumi.get(self, "surrogate_ip_enforced_for_known_browsers") + + @property + @pulumi.getter(name="surrogateRefreshTimeInMinutes") + def surrogate_refresh_time_in_minutes(self) -> Optional[int]: + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + return pulumi.get(self, "surrogate_refresh_time_in_minutes") + + @property + @pulumi.getter(name="upBandwidth") + def up_bandwidth(self) -> Optional[float]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "up_bandwidth") @pulumi.output_type @@ -7346,10 +7566,12 @@ def __init__(__self__, *, name: Optional[str] = None, src_tags: Optional[Sequence[str]] = None): """ - :param Sequence['SwitchAclPolicyActionArgs'] actions: - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to - :param Sequence[str] src_tags: - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + :param Sequence['SwitchAclPolicyActionArgs'] actions: ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + :param Sequence[str] src_tags: ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ if actions is not None: pulumi.set(__self__, "actions", actions) @@ -7362,8 +7584,9 @@ def __init__(__self__, *, @pulumi.getter def actions(self) -> Optional[Sequence['outputs.SwitchAclPolicyAction']]: """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ return pulumi.get(self, "actions") @@ -7376,8 +7599,9 @@ def name(self) -> Optional[str]: @pulumi.getter(name="srcTags") def src_tags(self) -> Optional[Sequence[str]]: """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ return pulumi.get(self, "src_tags") @@ -7466,9 +7690,9 @@ def __init__(__self__, *, * `static_gbp`: applying gbp tag against matching conditions * `subnet`' :param int gbp_tag: required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) :param Sequence[str] macs: required if - `type`==`mac` - `type`==`static_gbp` if from matching mac @@ -7482,8 +7706,7 @@ def __init__(__self__, *, * `type`==`radius_group` * `type`==`static_gbp` if from matching radius_group - :param Sequence['SwitchAclTagsSpecArgs'] specs: if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + :param Sequence['SwitchAclTagsSpecArgs'] specs: if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any :param Sequence[str] subnets: if - `type`==`subnet` - `type`==`resource` (optional. default is `any`) @@ -7525,9 +7748,9 @@ def type(self) -> str: def gbp_tag(self) -> Optional[int]: """ required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) """ return pulumi.get(self, "gbp_tag") @@ -7569,8 +7792,7 @@ def radius_group(self) -> Optional[str]: @pulumi.getter def specs(self) -> Optional[Sequence['outputs.SwitchAclTagsSpec']]: """ - if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any """ return pulumi.get(self, "specs") @@ -7610,7 +7832,7 @@ def __init__(__self__, *, protocol: Optional[str] = None): """ :param str port_range: matched dst port, "0" means any - :param str protocol: `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + :param str protocol: `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ if port_range is not None: pulumi.set(__self__, "port_range", port_range) @@ -7629,7 +7851,7 @@ def port_range(self) -> Optional[str]: @pulumi.getter def protocol(self) -> Optional[str]: """ - `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ return pulumi.get(self, "protocol") @@ -8059,33 +8281,6 @@ def value(self) -> Optional[str]: return pulumi.get(self, "value") -@pulumi.output_type -class SwitchEvpnConfig(dict): - def __init__(__self__, *, - enabled: Optional[bool] = None, - role: Optional[str] = None): - """ - :param str role: enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - """ - if enabled is not None: - pulumi.set(__self__, "enabled", enabled) - if role is not None: - pulumi.set(__self__, "role", role) - - @property - @pulumi.getter - def enabled(self) -> Optional[bool]: - return pulumi.get(self, "enabled") - - @property - @pulumi.getter - def role(self) -> Optional[str]: - """ - enum: `access`, `collapsed-core`, `core`, `distribution`, `esilag-access`, `none` - """ - return pulumi.get(self, "role") - - @pulumi.output_type class SwitchExtraRoutes6(dict): @staticmethod @@ -8482,6 +8677,7 @@ def __init__(__self__, *, mode: Optional[str] = None, mtu: Optional[int] = None, networks: Optional[Sequence[str]] = None, + note: Optional[str] = None, persist_mac: Optional[bool] = None, poe_disabled: Optional[bool] = None, port_auth: Optional[str] = None, @@ -8499,9 +8695,7 @@ def __init__(__self__, *, """ :param str usage: port usage name. :param bool all_networks: Only if `mode`==`trunk` whether to trunk all network/vlans - :param bool allow_dhcpd: 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 allow_dhcpd is a tri_state. - 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. + :param bool allow_dhcpd: 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 allow_dhcpd is a tri_state. 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. :param bool bypass_auth_when_server_down: Only if `port_auth`==`dot1x` bypass auth for known clients if set to true when RADIUS server is down :param bool bypass_auth_when_server_down_for_unkonwn_client: Only if `port_auth`=`dot1x` bypass auth for all (including unknown clients) if set to true when RADIUS server is down :param bool disable_autoneg: Only if `mode`!=`dynamic` if speed and duplex are specified, whether to disable autonegotiation @@ -8510,8 +8704,7 @@ def __init__(__self__, *, :param Sequence[str] dynamic_vlan_networks: Only if `port_auth`==`dot1x`, if dynamic vlan is used, specify the possible networks/vlans RADIUS can return :param bool enable_mac_auth: Only if `port_auth`==`dot1x` whether to enable MAC Auth :param str guest_network: Only if `port_auth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) - :param bool inter_switch_link: inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + :param bool inter_switch_link: inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together :param bool mac_auth_only: Only if `enable_mac_auth`==`true` :param bool mac_auth_preferred: Only if `enable_mac_auth`==`true` + `mac_auth_only`==`false`, dot1x will be given priority then mac_auth. Enable this to prefer mac_auth over dot1x. :param str mac_auth_protocol: Only if `enable_mac_auth` ==`true`. This type is ignored if mist_nac is enabled. enum: `eap-md5`, `eap-peap`, `pap` @@ -8519,6 +8712,7 @@ def __init__(__self__, *, :param str mode: enum: `access`, `inet`, `trunk` :param int mtu: media maximum transmission unit (MTU) is the largest data unit that can be forwarded without fragmentation. The default value is 1514. :param Sequence[str] networks: Only if `mode`==`trunk`, the list of network/vlans + :param str note: Additional note for the port config override :param bool persist_mac: Only if `mode`==`access` and `port_auth`!=`dot1x` whether the port should retain dynamically learned MAC addresses :param bool poe_disabled: whether PoE capabilities are disabled for a port :param str port_auth: if dot1x is desired, set to dot1x. enum: `dot1x` @@ -8575,6 +8769,8 @@ def __init__(__self__, *, pulumi.set(__self__, "mtu", mtu) if networks is not None: pulumi.set(__self__, "networks", networks) + if note is not None: + pulumi.set(__self__, "note", note) if persist_mac is not None: pulumi.set(__self__, "persist_mac", persist_mac) if poe_disabled is not None: @@ -8624,9 +8820,7 @@ def all_networks(self) -> Optional[bool]: @pulumi.getter(name="allowDhcpd") def allow_dhcpd(self) -> Optional[bool]: """ - 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 allow_dhcpd is a tri_state. - 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. + 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 allow_dhcpd is a tri_state. 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. """ return pulumi.get(self, "allow_dhcpd") @@ -8713,8 +8907,7 @@ def guest_network(self) -> Optional[str]: @pulumi.getter(name="interSwitchLink") def inter_switch_link(self) -> Optional[bool]: """ - inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together """ return pulumi.get(self, "inter_switch_link") @@ -8774,6 +8967,14 @@ def networks(self) -> Optional[Sequence[str]]: """ return pulumi.get(self, "networks") + @property + @pulumi.getter + def note(self) -> Optional[str]: + """ + Additional note for the port config override + """ + return pulumi.get(self, "note") + @property @pulumi.getter(name="persistMac") def persist_mac(self) -> Optional[bool]: @@ -9024,8 +9225,7 @@ def __init__(__self__, *, """ :param str gateway: only required for EVPN-VXLAN networks, IPv4 Virtual Gateway :param str gateway6: only required for EVPN-VXLAN networks, IPv6 Virtual Gateway - :param bool isolation: whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + :param bool isolation: whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set :param str subnet: optional for pure switching, required when L3 / routing features are used :param str subnet6: optional for pure switching, required when L3 / routing features are used """ @@ -9068,8 +9268,7 @@ def gateway6(self) -> Optional[str]: @pulumi.getter def isolation(self) -> Optional[bool]: """ - whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set """ return pulumi.get(self, "isolation") @@ -9924,9 +10123,7 @@ def __init__(__self__, *, voip_network: Optional[str] = None): """ :param bool all_networks: Only if `mode`==`trunk` whether to trunk all network/vlans - :param bool allow_dhcpd: 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 allow_dhcpd is a tri_state. - 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. + :param bool allow_dhcpd: 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 allow_dhcpd is a tri_state. 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. :param bool allow_multiple_supplicants: Only if `mode`!=`dynamic` :param bool bypass_auth_when_server_down: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` bypass auth for known clients if set to true when RADIUS server is down :param bool bypass_auth_when_server_down_for_unkonwn_client: Only if `mode`!=`dynamic` and `port_auth`=`dot1x` bypass auth for all (including unknown clients) if set to true when RADIUS server is down @@ -9938,8 +10135,7 @@ def __init__(__self__, *, :param bool enable_mac_auth: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` whether to enable MAC Auth :param bool enable_qos: Only if `mode`!=`dynamic` :param str guest_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) - :param bool inter_switch_link: Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + :param bool inter_switch_link: Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together :param bool mac_auth_only: Only if `mode`!=`dynamic` and `enable_mac_auth`==`true` :param bool mac_auth_preferred: Only if `mode`!=`dynamic` + `enable_mac_auth`==`true` + `mac_auth_only`==`false`, dot1x will be given priority then mac_auth. Enable this to prefer mac_auth over dot1x. :param str mac_auth_protocol: Only if `mode`!=`dynamic` and `enable_mac_auth` ==`true`. This type is ignored if mist_nac is enabled. enum: `eap-md5`, `eap-peap`, `pap` @@ -9957,8 +10153,7 @@ def __init__(__self__, *, :param str server_fail_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` sets server fail fallback vlan :param str server_reject_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` when radius server reject / fails :param str speed: Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto` - :param 'SwitchPortUsagesStormControlArgs' storm_control: Switch storm control - Only if `mode`!=`dynamic` + :param 'SwitchPortUsagesStormControlArgs' storm_control: Switch storm control. Only if `mode`!=`dynamic` :param bool stp_edge: Only if `mode`!=`dynamic` when enabled, the port is not expected to receive BPDU frames :param bool use_vstp: if this is connected to a vstp network :param str voip_network: Only if `mode`!=`dynamic` network/vlan for voip traffic, must also set port_network. to authenticate device, set port_auth @@ -10050,9 +10245,7 @@ def all_networks(self) -> Optional[bool]: @pulumi.getter(name="allowDhcpd") def allow_dhcpd(self) -> Optional[bool]: """ - 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 allow_dhcpd is a tri_state. - 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. + 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 allow_dhcpd is a tri_state. 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. """ return pulumi.get(self, "allow_dhcpd") @@ -10148,8 +10341,7 @@ def guest_network(self) -> Optional[str]: @pulumi.getter(name="interSwitchLink") def inter_switch_link(self) -> Optional[bool]: """ - Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together """ return pulumi.get(self, "inter_switch_link") @@ -10293,8 +10485,7 @@ def speed(self) -> Optional[str]: @pulumi.getter(name="stormControl") def storm_control(self) -> Optional['outputs.SwitchPortUsagesStormControl']: """ - Switch storm control - Only if `mode`!=`dynamic` + Switch storm control. Only if `mode`!=`dynamic` """ return pulumi.get(self, "storm_control") @@ -10547,8 +10738,7 @@ def __init__(__self__, *, :param int acct_interim_interval: how frequently should interim accounting be reported, 60-65535. default is 0 (use one specified in Access-Accept request from RADIUS Server). Very frequent messages can affect the performance of the radius server, 600 and up is recommended when enabled :param int auth_servers_retries: radius auth session retries :param int auth_servers_timeout: radius auth session timeout - :param str network: use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + :param str network: use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip :param str source_ip: use `network`or `source_ip` """ if acct_interim_interval is not None: @@ -10604,8 +10794,7 @@ def auth_servers_timeout(self) -> Optional[int]: @pulumi.getter def network(self) -> Optional[str]: """ - use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip """ return pulumi.get(self, "network") @@ -12102,11 +12291,9 @@ def __init__(__self__, *, encryption_type: Optional[str] = None, name: Optional[str] = None): """ - :param str authentication_password: Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + :param str authentication_password: Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. :param str authentication_type: sha224, sha256, sha384, sha512 are supported in 21.1 and newer release. enum: `authentication_md5`, `authentication_none`, `authentication_sha`, `authentication_sha224`, `authentication_sha256`, `authentication_sha384`, `authentication_sha512` - :param str encryption_password: Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + :param str encryption_password: Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters :param str encryption_type: enum: `privacy-3des`, `privacy-aes128`, `privacy-des`, `privacy-none` """ if authentication_password is not None: @@ -12124,8 +12311,7 @@ def __init__(__self__, *, @pulumi.getter(name="authenticationPassword") def authentication_password(self) -> Optional[str]: """ - Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. """ return pulumi.get(self, "authentication_password") @@ -12141,8 +12327,7 @@ def authentication_type(self) -> Optional[str]: @pulumi.getter(name="encryptionPassword") def encryption_password(self) -> Optional[str]: """ - Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters """ return pulumi.get(self, "encryption_password") diff --git a/sdk/python/pulumi_juniper_mist/device/switch.py b/sdk/python/pulumi_juniper_mist/device/switch.py index d3ae1b7f..3a5b8983 100644 --- a/sdk/python/pulumi_juniper_mist/device/switch.py +++ b/sdk/python/pulumi_juniper_mist/device/switch.py @@ -66,7 +66,7 @@ def __init__(__self__, *, """ The set of arguments for constructing a Switch resource. :param pulumi.Input[Mapping[str, pulumi.Input['SwitchAclTagsArgs']]] acl_tags: ACL Tags to identify traffic source or destination. Key name is the tag name - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[bool] disable_auto_config: for a claimed switch, we control the configs by default. This option (disables the behavior) :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting @@ -79,12 +79,12 @@ def __init__(__self__, *, :param pulumi.Input['SwitchMistNacArgs'] mist_nac: enable mist_nac to use radsec :param pulumi.Input[Mapping[str, pulumi.Input['SwitchNetworksArgs']]] networks: Property key is network name :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers specific to this device. By default, those in Site Settings will be used - :param pulumi.Input['SwitchOobIpConfigArgs'] oob_ip_config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - set separately (if desired): key parameter = `re1` + :param pulumi.Input['SwitchOobIpConfigArgs'] oob_ip_config: Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + re1 mgmt IP has to be set separately (if desired): key parameter = `re1` :param pulumi.Input[Mapping[str, pulumi.Input['SwitchOspfAreasArgs']]] ospf_areas: Junos OSPF areas :param pulumi.Input[Mapping[str, pulumi.Input['SwitchOtherIpConfigsArgs']]] other_ip_configs: Property key is the network name. Defines the additional IP Addresses configured on the device. :param pulumi.Input[Mapping[str, pulumi.Input['SwitchPortConfigArgs']]] port_config: Property key is the port name or range (e.g. "ge-0/0/0-10") - :param pulumi.Input[Mapping[str, pulumi.Input['SwitchPortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + :param pulumi.Input[Mapping[str, pulumi.Input['SwitchPortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed :param pulumi.Input[Mapping[str, pulumi.Input['SwitchPortUsagesArgs']]] port_usages: Property key is the port usage name. Defines the profiles of port configuration configured on the switch @@ -225,7 +225,7 @@ def acl_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Switc @pulumi.getter(name="additionalConfigCmds") def additional_config_cmds(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - additional CLI commands to append to the generated Junos config **Note**: no check is done + additional CLI commands to append to the generated Junos config. **Note**: no check is done """ return pulumi.get(self, "additional_config_cmds") @@ -415,8 +415,8 @@ def ntp_servers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] @pulumi.getter(name="oobIpConfig") def oob_ip_config(self) -> Optional[pulumi.Input['SwitchOobIpConfigArgs']]: """ - - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - set separately (if desired): key parameter = `re1` + Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + re1 mgmt IP has to be set separately (if desired): key parameter = `re1` """ return pulumi.get(self, "oob_ip_config") @@ -464,7 +464,7 @@ def port_config(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Sw @pulumi.getter(name="portMirroring") def port_mirroring(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['SwitchPortMirroringArgs']]]]: """ - Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ @@ -664,7 +664,6 @@ def __init__(__self__, *, disable_auto_config: Optional[pulumi.Input[bool]] = None, dns_servers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, dns_suffixes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - evpn_config: Optional[pulumi.Input['SwitchEvpnConfigArgs']] = None, extra_routes: Optional[pulumi.Input[Mapping[str, pulumi.Input['SwitchExtraRoutesArgs']]]] = None, extra_routes6: Optional[pulumi.Input[Mapping[str, pulumi.Input['SwitchExtraRoutes6Args']]]] = None, image1_url: Optional[pulumi.Input[str]] = None, @@ -709,11 +708,10 @@ def __init__(__self__, *, """ Input properties used for looking up and filtering Switch resources. :param pulumi.Input[Mapping[str, pulumi.Input['SwitchAclTagsArgs']]] acl_tags: ACL Tags to identify traffic source or destination. Key name is the tag name - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[bool] disable_auto_config: for a claimed switch, we control the configs by default. This option (disables the behavior) :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting - :param pulumi.Input['SwitchEvpnConfigArgs'] evpn_config: EVPN Junos settings :param pulumi.Input[Mapping[str, pulumi.Input['SwitchExtraRoutes6Args']]] extra_routes6: Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64") :param pulumi.Input['SwitchIpConfigArgs'] ip_config: Junos IP Config :param pulumi.Input[Mapping[str, pulumi.Input['SwitchLocalPortConfigArgs']]] local_port_config: Local port override, overriding the port configuration from `port_config`. Property key is the port name or range (e.g. @@ -725,12 +723,12 @@ def __init__(__self__, *, :param pulumi.Input[str] model: device Model :param pulumi.Input[Mapping[str, pulumi.Input['SwitchNetworksArgs']]] networks: Property key is network name :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers specific to this device. By default, those in Site Settings will be used - :param pulumi.Input['SwitchOobIpConfigArgs'] oob_ip_config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - set separately (if desired): key parameter = `re1` + :param pulumi.Input['SwitchOobIpConfigArgs'] oob_ip_config: Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + re1 mgmt IP has to be set separately (if desired): key parameter = `re1` :param pulumi.Input[Mapping[str, pulumi.Input['SwitchOspfAreasArgs']]] ospf_areas: Junos OSPF areas :param pulumi.Input[Mapping[str, pulumi.Input['SwitchOtherIpConfigsArgs']]] other_ip_configs: Property key is the network name. Defines the additional IP Addresses configured on the device. :param pulumi.Input[Mapping[str, pulumi.Input['SwitchPortConfigArgs']]] port_config: Property key is the port name or range (e.g. "ge-0/0/0-10") - :param pulumi.Input[Mapping[str, pulumi.Input['SwitchPortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + :param pulumi.Input[Mapping[str, pulumi.Input['SwitchPortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed :param pulumi.Input[Mapping[str, pulumi.Input['SwitchPortUsagesArgs']]] port_usages: Property key is the port usage name. Defines the profiles of port configuration configured on the switch @@ -765,8 +763,6 @@ def __init__(__self__, *, pulumi.set(__self__, "dns_servers", dns_servers) if dns_suffixes is not None: pulumi.set(__self__, "dns_suffixes", dns_suffixes) - if evpn_config is not None: - pulumi.set(__self__, "evpn_config", evpn_config) if extra_routes is not None: pulumi.set(__self__, "extra_routes", extra_routes) if extra_routes6 is not None: @@ -875,7 +871,7 @@ def acl_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Switc @pulumi.getter(name="additionalConfigCmds") def additional_config_cmds(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - additional CLI commands to append to the generated Junos config **Note**: no check is done + additional CLI commands to append to the generated Junos config. **Note**: no check is done """ return pulumi.get(self, "additional_config_cmds") @@ -946,18 +942,6 @@ def dns_suffixes(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: def dns_suffixes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "dns_suffixes", value) - @property - @pulumi.getter(name="evpnConfig") - def evpn_config(self) -> Optional[pulumi.Input['SwitchEvpnConfigArgs']]: - """ - EVPN Junos settings - """ - return pulumi.get(self, "evpn_config") - - @evpn_config.setter - def evpn_config(self, value: Optional[pulumi.Input['SwitchEvpnConfigArgs']]): - pulumi.set(self, "evpn_config", value) - @property @pulumi.getter(name="extraRoutes") def extra_routes(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['SwitchExtraRoutesArgs']]]]: @@ -1137,8 +1121,8 @@ def ntp_servers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] @pulumi.getter(name="oobIpConfig") def oob_ip_config(self) -> Optional[pulumi.Input['SwitchOobIpConfigArgs']]: """ - - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - set separately (if desired): key parameter = `re1` + Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + re1 mgmt IP has to be set separately (if desired): key parameter = `re1` """ return pulumi.get(self, "oob_ip_config") @@ -1195,7 +1179,7 @@ def port_config(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Sw @pulumi.getter(name="portMirroring") def port_mirroring(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['SwitchPortMirroringArgs']]]]: """ - Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ @@ -1483,7 +1467,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchAclTagsArgs', 'SwitchAclTagsArgsDict']]]] acl_tags: ACL Tags to identify traffic source or destination. Key name is the tag name - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[bool] disable_auto_config: for a claimed switch, we control the configs by default. This option (disables the behavior) :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting @@ -1496,12 +1480,12 @@ def __init__(__self__, :param pulumi.Input[Union['SwitchMistNacArgs', 'SwitchMistNacArgsDict']] mist_nac: enable mist_nac to use radsec :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchNetworksArgs', 'SwitchNetworksArgsDict']]]] networks: Property key is network name :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers specific to this device. By default, those in Site Settings will be used - :param pulumi.Input[Union['SwitchOobIpConfigArgs', 'SwitchOobIpConfigArgsDict']] oob_ip_config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - set separately (if desired): key parameter = `re1` + :param pulumi.Input[Union['SwitchOobIpConfigArgs', 'SwitchOobIpConfigArgsDict']] oob_ip_config: Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + re1 mgmt IP has to be set separately (if desired): key parameter = `re1` :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchOspfAreasArgs', 'SwitchOspfAreasArgsDict']]]] ospf_areas: Junos OSPF areas :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchOtherIpConfigsArgs', 'SwitchOtherIpConfigsArgsDict']]]] other_ip_configs: Property key is the network name. Defines the additional IP Addresses configured on the device. :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchPortConfigArgs', 'SwitchPortConfigArgsDict']]]] port_config: Property key is the port name or range (e.g. "ge-0/0/0-10") - :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchPortMirroringArgs', 'SwitchPortMirroringArgsDict']]]] port_mirroring: Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchPortMirroringArgs', 'SwitchPortMirroringArgsDict']]]] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchPortUsagesArgs', 'SwitchPortUsagesArgsDict']]]] port_usages: Property key is the port usage name. Defines the profiles of port configuration configured on the switch @@ -1650,7 +1634,6 @@ def _internal_init(__self__, __props__.__dict__["vrrp_config"] = vrrp_config __props__.__dict__["x"] = x __props__.__dict__["y"] = y - __props__.__dict__["evpn_config"] = None __props__.__dict__["image1_url"] = None __props__.__dict__["image2_url"] = None __props__.__dict__["image3_url"] = None @@ -1678,7 +1661,6 @@ def get(resource_name: str, disable_auto_config: Optional[pulumi.Input[bool]] = None, dns_servers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, dns_suffixes: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - evpn_config: Optional[pulumi.Input[Union['SwitchEvpnConfigArgs', 'SwitchEvpnConfigArgsDict']]] = None, extra_routes: Optional[pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchExtraRoutesArgs', 'SwitchExtraRoutesArgsDict']]]]] = None, extra_routes6: Optional[pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchExtraRoutes6Args', 'SwitchExtraRoutes6ArgsDict']]]]] = None, image1_url: Optional[pulumi.Input[str]] = None, @@ -1728,11 +1710,10 @@ def get(resource_name: str, :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchAclTagsArgs', 'SwitchAclTagsArgsDict']]]] acl_tags: ACL Tags to identify traffic source or destination. Key name is the tag name - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[bool] disable_auto_config: for a claimed switch, we control the configs by default. This option (disables the behavior) :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting - :param pulumi.Input[Union['SwitchEvpnConfigArgs', 'SwitchEvpnConfigArgsDict']] evpn_config: EVPN Junos settings :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchExtraRoutes6Args', 'SwitchExtraRoutes6ArgsDict']]]] extra_routes6: Property key is the destination CIDR (e.g. "2a02:1234:420a:10c9::/64") :param pulumi.Input[Union['SwitchIpConfigArgs', 'SwitchIpConfigArgsDict']] ip_config: Junos IP Config :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchLocalPortConfigArgs', 'SwitchLocalPortConfigArgsDict']]]] local_port_config: Local port override, overriding the port configuration from `port_config`. Property key is the port name or range (e.g. @@ -1744,12 +1725,12 @@ def get(resource_name: str, :param pulumi.Input[str] model: device Model :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchNetworksArgs', 'SwitchNetworksArgsDict']]]] networks: Property key is network name :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers specific to this device. By default, those in Site Settings will be used - :param pulumi.Input[Union['SwitchOobIpConfigArgs', 'SwitchOobIpConfigArgsDict']] oob_ip_config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - set separately (if desired): key parameter = `re1` + :param pulumi.Input[Union['SwitchOobIpConfigArgs', 'SwitchOobIpConfigArgsDict']] oob_ip_config: Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + re1 mgmt IP has to be set separately (if desired): key parameter = `re1` :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchOspfAreasArgs', 'SwitchOspfAreasArgsDict']]]] ospf_areas: Junos OSPF areas :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchOtherIpConfigsArgs', 'SwitchOtherIpConfigsArgsDict']]]] other_ip_configs: Property key is the network name. Defines the additional IP Addresses configured on the device. :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchPortConfigArgs', 'SwitchPortConfigArgsDict']]]] port_config: Property key is the port name or range (e.g. "ge-0/0/0-10") - :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchPortMirroringArgs', 'SwitchPortMirroringArgsDict']]]] port_mirroring: Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchPortMirroringArgs', 'SwitchPortMirroringArgsDict']]]] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed :param pulumi.Input[Mapping[str, pulumi.Input[Union['SwitchPortUsagesArgs', 'SwitchPortUsagesArgsDict']]]] port_usages: Property key is the port usage name. Defines the profiles of port configuration configured on the switch @@ -1779,7 +1760,6 @@ def get(resource_name: str, __props__.__dict__["disable_auto_config"] = disable_auto_config __props__.__dict__["dns_servers"] = dns_servers __props__.__dict__["dns_suffixes"] = dns_suffixes - __props__.__dict__["evpn_config"] = evpn_config __props__.__dict__["extra_routes"] = extra_routes __props__.__dict__["extra_routes6"] = extra_routes6 __props__.__dict__["image1_url"] = image1_url @@ -1840,7 +1820,7 @@ def acl_tags(self) -> pulumi.Output[Optional[Mapping[str, 'outputs.SwitchAclTags @pulumi.getter(name="additionalConfigCmds") def additional_config_cmds(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - additional CLI commands to append to the generated Junos config **Note**: no check is done + additional CLI commands to append to the generated Junos config. **Note**: no check is done """ return pulumi.get(self, "additional_config_cmds") @@ -1883,14 +1863,6 @@ def dns_suffixes(self) -> pulumi.Output[Optional[Sequence[str]]]: """ return pulumi.get(self, "dns_suffixes") - @property - @pulumi.getter(name="evpnConfig") - def evpn_config(self) -> pulumi.Output['outputs.SwitchEvpnConfig']: - """ - EVPN Junos settings - """ - return pulumi.get(self, "evpn_config") - @property @pulumi.getter(name="extraRoutes") def extra_routes(self) -> pulumi.Output[Optional[Mapping[str, 'outputs.SwitchExtraRoutes']]]: @@ -2006,8 +1978,8 @@ def ntp_servers(self) -> pulumi.Output[Optional[Sequence[str]]]: @pulumi.getter(name="oobIpConfig") def oob_ip_config(self) -> pulumi.Output[Optional['outputs.SwitchOobIpConfig']]: """ - - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, re1 mgmt IP has to be - set separately (if desired): key parameter = `re1` + Switch OOB IP Config: - If HA configuration: key parameter will be nodeX (eg: node1) - If there are 2 routing engines, + re1 mgmt IP has to be set separately (if desired): key parameter = `re1` """ return pulumi.get(self, "oob_ip_config") @@ -2044,7 +2016,7 @@ def port_config(self) -> pulumi.Output[Optional[Mapping[str, 'outputs.SwitchPort @pulumi.getter(name="portMirroring") def port_mirroring(self) -> pulumi.Output[Optional[Mapping[str, 'outputs.SwitchPortMirroring']]]: """ - Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ diff --git a/sdk/python/pulumi_juniper_mist/org/_inputs.py b/sdk/python/pulumi_juniper_mist/org/_inputs.py index 79383af6..ea04a8f7 100644 --- a/sdk/python/pulumi_juniper_mist/org/_inputs.py +++ b/sdk/python/pulumi_juniper_mist/org/_inputs.py @@ -333,6 +333,10 @@ 'NetworkInternetAccessDestinationNatArgsDict', 'NetworkInternetAccessStaticNatArgs', 'NetworkInternetAccessStaticNatArgsDict', + 'NetworkMulticastArgs', + 'NetworkMulticastArgsDict', + 'NetworkMulticastGroupsArgs', + 'NetworkMulticastGroupsArgsDict', 'NetworkTenantsArgs', 'NetworkTenantsArgsDict', 'NetworkVpnAccessArgs', @@ -3485,8 +3489,7 @@ class DeviceprofileGatewayBgpConfigArgsDict(TypedDict): """ extended_v4_nexthop: NotRequired[pulumi.Input[bool]] """ - by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this """ graceful_restart_time: NotRequired[pulumi.Input[int]] """ @@ -3563,8 +3566,7 @@ def __init__(__self__, *, :param pulumi.Input[int] bfd_multiplier: when bfd_minimum_interval_is_configured alone :param pulumi.Input[bool] disable_bfd: BFD provides faster path failure detection and is enabled by default :param pulumi.Input[str] export_policy: default export policies if no per-neighbor policies defined - :param pulumi.Input[bool] extended_v4_nexthop: by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + :param pulumi.Input[bool] extended_v4_nexthop: by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this :param pulumi.Input[int] graceful_restart_time: `0` means disable :param pulumi.Input[str] import_policy: default import policies if no per-neighbor policies defined :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayBgpConfigNeighborsArgs']]] neighbors: if per-neighbor as is desired. Property key is the neighbor address @@ -3690,8 +3692,7 @@ def export_policy(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="extendedV4Nexthop") def extended_v4_nexthop(self) -> Optional[pulumi.Input[bool]]: """ - by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this """ return pulumi.get(self, "extended_v4_nexthop") @@ -4811,6 +4812,9 @@ class DeviceprofileGatewayNetworkArgsDict(TypedDict): """ subnet6: NotRequired[pulumi.Input[str]] tenants: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkTenantsArgsDict']]]] + """ + Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + """ vlan_id: NotRequired[pulumi.Input[str]] vpn_access: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkVpnAccessArgsDict']]]] """ @@ -4842,6 +4846,7 @@ def __init__(__self__, *, :param pulumi.Input[bool] isolation: whether to allow clients in the network to talk to each other :param pulumi.Input['DeviceprofileGatewayNetworkMulticastArgs'] multicast: whether to enable multicast support (only PIM-sparse mode is supported) :param pulumi.Input[Sequence[pulumi.Input[str]]] routed_for_networks: for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) + :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkTenantsArgs']]] tenants: Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkVpnAccessArgs']]] vpn_access: Property key is the VPN name. Whether this network can be accessed from vpn """ pulumi.set(__self__, "name", name) @@ -4988,6 +4993,9 @@ def subnet6(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tenants(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkTenantsArgs']]]]: + """ + Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "tenants") @tenants.setter @@ -5044,7 +5052,7 @@ class DeviceprofileGatewayNetworkInternetAccessArgsDict(TypedDict): create_simple_service_policy: NotRequired[pulumi.Input[bool]] destination_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkInternetAccessDestinationNatArgsDict']]]] """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ enabled: NotRequired[pulumi.Input[bool]] restricted: NotRequired[pulumi.Input[bool]] @@ -5053,7 +5061,7 @@ class DeviceprofileGatewayNetworkInternetAccessArgsDict(TypedDict): """ static_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkInternetAccessStaticNatArgsDict']]]] """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ elif False: DeviceprofileGatewayNetworkInternetAccessArgsDict: TypeAlias = Mapping[str, Any] @@ -5067,9 +5075,9 @@ def __init__(__self__, *, restricted: Optional[pulumi.Input[bool]] = None, static_nat: Optional[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkInternetAccessStaticNatArgs']]]] = None): """ - :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs']]] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs']]] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param pulumi.Input[bool] restricted: by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies - :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkInternetAccessStaticNatArgs']]] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkInternetAccessStaticNatArgs']]] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ if create_simple_service_policy is not None: pulumi.set(__self__, "create_simple_service_policy", create_simple_service_policy) @@ -5095,7 +5103,7 @@ def create_simple_service_policy(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs']]]]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -5128,7 +5136,7 @@ def restricted(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkInternetAccessStaticNatArgs']]]]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -5140,8 +5148,18 @@ def static_nat(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Dev if not MYPY: class DeviceprofileGatewayNetworkInternetAccessDestinationNatArgsDict(TypedDict): internal_ip: NotRequired[pulumi.Input[str]] + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ name: NotRequired[pulumi.Input[str]] - port: NotRequired[pulumi.Input[int]] + port: NotRequired[pulumi.Input[str]] + """ + The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + """ + wan_name: NotRequired[pulumi.Input[str]] + """ + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ elif False: DeviceprofileGatewayNetworkInternetAccessDestinationNatArgsDict: TypeAlias = Mapping[str, Any] @@ -5150,17 +5168,28 @@ class DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs: def __init__(__self__, *, internal_ip: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - port: Optional[pulumi.Input[int]] = None): + port: Optional[pulumi.Input[str]] = None, + wan_name: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] port: The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: pulumi.set(__self__, "name", name) if port is not None: pulumi.set(__self__, "port", port) + if wan_name is not None: + pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[pulumi.Input[str]]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter @@ -5178,21 +5207,39 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - def port(self) -> Optional[pulumi.Input[int]]: + def port(self) -> Optional[pulumi.Input[str]]: + """ + The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "port") @port.setter - def port(self, value: Optional[pulumi.Input[int]]): + def port(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "port", value) + @property + @pulumi.getter(name="wanName") + def wan_name(self) -> Optional[pulumi.Input[str]]: + """ + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ + return pulumi.get(self, "wan_name") + + @wan_name.setter + def wan_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "wan_name", value) + if not MYPY: class DeviceprofileGatewayNetworkInternetAccessStaticNatArgsDict(TypedDict): - internal_ip: NotRequired[pulumi.Input[str]] - name: NotRequired[pulumi.Input[str]] + internal_ip: pulumi.Input[str] + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ + name: pulumi.Input[str] wan_name: NotRequired[pulumi.Input[str]] """ - If not set, we configure the nat policies against all WAN ports for simplicity + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ elif False: DeviceprofileGatewayNetworkInternetAccessStaticNatArgsDict: TypeAlias = Mapping[str, Any] @@ -5200,42 +5247,44 @@ class DeviceprofileGatewayNetworkInternetAccessStaticNatArgsDict(TypedDict): @pulumi.input_type class DeviceprofileGatewayNetworkInternetAccessStaticNatArgs: def __init__(__self__, *, - internal_ip: Optional[pulumi.Input[str]] = None, - name: Optional[pulumi.Input[str]] = None, + internal_ip: pulumi.Input[str], + name: pulumi.Input[str], wan_name: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param pulumi.Input[str] internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) if wan_name is not None: pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[pulumi.Input[str]]: + def internal_ip(self) -> pulumi.Input[str]: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter - def internal_ip(self, value: Optional[pulumi.Input[str]]): + def internal_ip(self, value: pulumi.Input[str]): pulumi.set(self, "internal_ip", value) @property @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: + def name(self) -> pulumi.Input[str]: return pulumi.get(self, "name") @name.setter - def name(self, value: Optional[pulumi.Input[str]]): + def name(self, value: pulumi.Input[str]): pulumi.set(self, "name", value) @property @pulumi.getter(name="wanName") def wan_name(self) -> Optional[pulumi.Input[str]]: """ - If not set, we configure the nat policies against all WAN ports for simplicity + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "wan_name") @@ -5376,7 +5425,7 @@ class DeviceprofileGatewayNetworkVpnAccessArgsDict(TypedDict): """ destination_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkVpnAccessDestinationNatArgsDict']]]] """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ nat_pool: NotRequired[pulumi.Input[str]] """ @@ -5392,13 +5441,11 @@ class DeviceprofileGatewayNetworkVpnAccessArgsDict(TypedDict): """ no_readvertise_to_overlay: NotRequired[pulumi.Input[bool]] """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ other_vrfs: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs """ routed: NotRequired[pulumi.Input[bool]] """ @@ -5410,12 +5457,11 @@ class DeviceprofileGatewayNetworkVpnAccessArgsDict(TypedDict): """ static_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkVpnAccessStaticNatArgsDict']]]] """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ summarized_subnet: NotRequired[pulumi.Input[str]] """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ summarized_subnet_to_lan_bgp: NotRequired[pulumi.Input[str]] """ @@ -5448,19 +5494,16 @@ def __init__(__self__, *, """ :param pulumi.Input[str] advertised_subnet: if `routed`==`true`, whether to advertise an aggregated subnet toward HUB this is useful when there are multiple networks on SPOKE's side :param pulumi.Input[bool] allow_ping: whether to allow ping from vpn into this routed network - :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs']]] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs']]] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param pulumi.Input[str] nat_pool: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub :param pulumi.Input[bool] no_readvertise_to_lan_bgp: toward LAN-side BGP peers :param pulumi.Input[bool] no_readvertise_to_lan_ospf: toward LAN-side OSPF peers - :param pulumi.Input[bool] no_readvertise_to_overlay: toward overlay - how HUB should deal with routes it received from Spokes - :param pulumi.Input[Sequence[pulumi.Input[str]]] other_vrfs: by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + :param pulumi.Input[bool] no_readvertise_to_overlay: toward overlay, how HUB should deal with routes it received from Spokes + :param pulumi.Input[Sequence[pulumi.Input[str]]] other_vrfs: by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs :param pulumi.Input[bool] routed: whether this network is routable :param pulumi.Input['DeviceprofileGatewayNetworkVpnAccessSourceNatArgs'] source_nat: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub - :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkVpnAccessStaticNatArgs']]] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") - :param pulumi.Input[str] summarized_subnet: toward overlay - how HUB should deal with routes it received from Spokes + :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkVpnAccessStaticNatArgs']]] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] summarized_subnet: toward overlay, how HUB should deal with routes it received from Spokes :param pulumi.Input[str] summarized_subnet_to_lan_bgp: toward LAN-side BGP peers :param pulumi.Input[str] summarized_subnet_to_lan_ospf: toward LAN-side OSPF peers """ @@ -5521,7 +5564,7 @@ def allow_ping(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs']]]]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -5569,8 +5612,7 @@ def no_readvertise_to_lan_ospf(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="noReadvertiseToOverlay") def no_readvertise_to_overlay(self) -> Optional[pulumi.Input[bool]]: """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ return pulumi.get(self, "no_readvertise_to_overlay") @@ -5582,8 +5624,7 @@ def no_readvertise_to_overlay(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="otherVrfs") def other_vrfs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs """ return pulumi.get(self, "other_vrfs") @@ -5619,7 +5660,7 @@ def source_nat(self, value: Optional[pulumi.Input['DeviceprofileGatewayNetworkVp @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayNetworkVpnAccessStaticNatArgs']]]]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -5631,8 +5672,7 @@ def static_nat(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Dev @pulumi.getter(name="summarizedSubnet") def summarized_subnet(self) -> Optional[pulumi.Input[str]]: """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ return pulumi.get(self, "summarized_subnet") @@ -5668,8 +5708,11 @@ def summarized_subnet_to_lan_ospf(self, value: Optional[pulumi.Input[str]]): if not MYPY: class DeviceprofileGatewayNetworkVpnAccessDestinationNatArgsDict(TypedDict): internal_ip: NotRequired[pulumi.Input[str]] + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ name: NotRequired[pulumi.Input[str]] - port: NotRequired[pulumi.Input[int]] + port: NotRequired[pulumi.Input[str]] elif False: DeviceprofileGatewayNetworkVpnAccessDestinationNatArgsDict: TypeAlias = Mapping[str, Any] @@ -5678,7 +5721,10 @@ class DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs: def __init__(__self__, *, internal_ip: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - port: Optional[pulumi.Input[int]] = None): + port: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: @@ -5689,6 +5735,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[pulumi.Input[str]]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter @@ -5706,11 +5755,11 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - def port(self) -> Optional[pulumi.Input[int]]: + def port(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "port") @port.setter - def port(self, value: Optional[pulumi.Input[int]]): + def port(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "port", value) @@ -5739,61 +5788,46 @@ def external_ip(self, value: Optional[pulumi.Input[str]]): if not MYPY: class DeviceprofileGatewayNetworkVpnAccessStaticNatArgsDict(TypedDict): - internal_ip: NotRequired[pulumi.Input[str]] - name: NotRequired[pulumi.Input[str]] - wan_name: NotRequired[pulumi.Input[str]] + internal_ip: pulumi.Input[str] """ - If not set, we configure the nat policies against all WAN ports for simplicity + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") """ + name: pulumi.Input[str] elif False: DeviceprofileGatewayNetworkVpnAccessStaticNatArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type class DeviceprofileGatewayNetworkVpnAccessStaticNatArgs: def __init__(__self__, *, - internal_ip: Optional[pulumi.Input[str]] = None, - name: Optional[pulumi.Input[str]] = None, - wan_name: Optional[pulumi.Input[str]] = None): + internal_ip: pulumi.Input[str], + name: pulumi.Input[str]): """ - :param pulumi.Input[str] wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param pulumi.Input[str] internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) - if wan_name is not None: - pulumi.set(__self__, "wan_name", wan_name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[pulumi.Input[str]]: + def internal_ip(self) -> pulumi.Input[str]: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter - def internal_ip(self, value: Optional[pulumi.Input[str]]): + def internal_ip(self, value: pulumi.Input[str]): pulumi.set(self, "internal_ip", value) @property @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: + def name(self) -> pulumi.Input[str]: return pulumi.get(self, "name") @name.setter - def name(self, value: Optional[pulumi.Input[str]]): + def name(self, value: pulumi.Input[str]): pulumi.set(self, "name", value) - @property - @pulumi.getter(name="wanName") - def wan_name(self) -> Optional[pulumi.Input[str]]: - """ - If not set, we configure the nat policies against all WAN ports for simplicity - """ - return pulumi.get(self, "wan_name") - - @wan_name.setter - def wan_name(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "wan_name", value) - if not MYPY: class DeviceprofileGatewayOobIpConfigArgsDict(TypedDict): @@ -6350,9 +6384,7 @@ class DeviceprofileGatewayPortConfigArgsDict(TypedDict): """ ae_lacp_force_up: NotRequired[pulumi.Input[bool]] """ - For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only """ aggregated: NotRequired[pulumi.Input[bool]] critical: NotRequired[pulumi.Input[bool]] @@ -6360,6 +6392,9 @@ class DeviceprofileGatewayPortConfigArgsDict(TypedDict): if want to generate port up/down alarm, set it to true """ description: NotRequired[pulumi.Input[str]] + """ + Interface Description. Can be a variable (i.e. "{{myvar}}") + """ disable_autoneg: NotRequired[pulumi.Input[bool]] disabled: NotRequired[pulumi.Input[bool]] """ @@ -6371,13 +6406,11 @@ class DeviceprofileGatewayPortConfigArgsDict(TypedDict): """ dsl_vci: NotRequired[pulumi.Input[int]] """ - if `wan_type`==`dsl` - 16 bit int + if `wan_type`==`dsl`, 16 bit int """ dsl_vpi: NotRequired[pulumi.Input[int]] """ - if `wan_type`==`dsl` - 8 bit int + if `wan_type`==`dsl`, 8 bit int """ duplex: NotRequired[pulumi.Input[str]] """ @@ -6411,7 +6444,7 @@ class DeviceprofileGatewayPortConfigArgsDict(TypedDict): """ networks: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - if `usage`==`lan` + if `usage`==`lan`, name of the `org.Network` resource """ outer_vlan_id: NotRequired[pulumi.Input[int]] """ @@ -6420,7 +6453,7 @@ class DeviceprofileGatewayPortConfigArgsDict(TypedDict): poe_disabled: NotRequired[pulumi.Input[bool]] port_network: NotRequired[pulumi.Input[str]] """ - if `usage`==`lan` + Only for SRX and if `usage`==`lan`, the Untagged VLAN Network """ preserve_dscp: NotRequired[pulumi.Input[bool]] """ @@ -6452,37 +6485,38 @@ class DeviceprofileGatewayPortConfigArgsDict(TypedDict): for SSR only """ traffic_shaping: NotRequired[pulumi.Input['DeviceprofileGatewayPortConfigTrafficShapingArgsDict']] - vlan_id: NotRequired[pulumi.Input[int]] - """ - if WAN interface is on a VLAN - """ + vlan_id: NotRequired[pulumi.Input[str]] vpn_paths: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayPortConfigVpnPathsArgsDict']]]] """ Property key is the VPN name """ wan_arp_policer: NotRequired[pulumi.Input[str]] """ - when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` """ wan_ext_ip: NotRequired[pulumi.Input[str]] """ - optional, if spoke should reach this port by a different IP + Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP """ wan_extra_routes: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayPortConfigWanExtraRoutesArgsDict']]]] """ - Property Key is the destianation CIDR (e.g "100.100.100.0/24") + Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") + """ + wan_networks: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + """ + Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined """ wan_probe_override: NotRequired[pulumi.Input['DeviceprofileGatewayPortConfigWanProbeOverrideArgsDict']] """ - if `usage`==`wan` + Only if `usage`==`wan` """ wan_source_nat: NotRequired[pulumi.Input['DeviceprofileGatewayPortConfigWanSourceNatArgsDict']] """ - optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip """ wan_type: NotRequired[pulumi.Input[str]] """ - if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ elif False: DeviceprofileGatewayPortConfigArgsDict: TypeAlias = Mapping[str, Any] @@ -6524,11 +6558,12 @@ def __init__(__self__, *, ssr_no_virtual_mac: Optional[pulumi.Input[bool]] = None, svr_port_range: Optional[pulumi.Input[str]] = None, traffic_shaping: Optional[pulumi.Input['DeviceprofileGatewayPortConfigTrafficShapingArgs']] = None, - vlan_id: Optional[pulumi.Input[int]] = None, + vlan_id: Optional[pulumi.Input[str]] = None, vpn_paths: Optional[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayPortConfigVpnPathsArgs']]]] = None, wan_arp_policer: Optional[pulumi.Input[str]] = None, wan_ext_ip: Optional[pulumi.Input[str]] = None, wan_extra_routes: Optional[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayPortConfigWanExtraRoutesArgs']]]] = None, + wan_networks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, wan_probe_override: Optional[pulumi.Input['DeviceprofileGatewayPortConfigWanProbeOverrideArgs']] = None, wan_source_nat: Optional[pulumi.Input['DeviceprofileGatewayPortConfigWanSourceNatArgs']] = None, wan_type: Optional[pulumi.Input[str]] = None): @@ -6536,16 +6571,13 @@ def __init__(__self__, *, :param pulumi.Input[str] usage: port usage name. enum: `ha_control`, `ha_data`, `lan`, `wan` :param pulumi.Input[bool] ae_disable_lacp: if `aggregated`==`true`. To disable LCP support for the AE interface :param pulumi.Input[str] ae_idx: if `aggregated`==`true`. Users could force to use the designated AE name (must be an integer between 0 and 127) - :param pulumi.Input[bool] ae_lacp_force_up: For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + :param pulumi.Input[bool] ae_lacp_force_up: For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only :param pulumi.Input[bool] critical: if want to generate port up/down alarm, set it to true + :param pulumi.Input[str] description: Interface Description. Can be a variable (i.e. "{{myvar}}") :param pulumi.Input[bool] disabled: port admin up (true) / down (false) :param pulumi.Input[str] dsl_type: if `wan_type`==`dsl`. enum: `adsl`, `vdsl` - :param pulumi.Input[int] dsl_vci: if `wan_type`==`dsl` - 16 bit int - :param pulumi.Input[int] dsl_vpi: if `wan_type`==`dsl` - 8 bit int + :param pulumi.Input[int] dsl_vci: if `wan_type`==`dsl`, 16 bit int + :param pulumi.Input[int] dsl_vpi: if `wan_type`==`dsl`, 8 bit int :param pulumi.Input[str] duplex: enum: `auto`, `full`, `half` :param pulumi.Input['DeviceprofileGatewayPortConfigIpConfigArgs'] ip_config: Junos IP Config :param pulumi.Input[str] lte_apn: if `wan_type`==`lte` @@ -6553,9 +6585,9 @@ def __init__(__self__, *, :param pulumi.Input[str] lte_password: if `wan_type`==`lte` :param pulumi.Input[str] lte_username: if `wan_type`==`lte` :param pulumi.Input[str] name: name that we'll use to derive config - :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: if `usage`==`lan` + :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: if `usage`==`lan`, name of the `org.Network` resource :param pulumi.Input[int] outer_vlan_id: for Q-in-Q - :param pulumi.Input[str] port_network: if `usage`==`lan` + :param pulumi.Input[str] port_network: Only for SRX and if `usage`==`lan`, the Untagged VLAN Network :param pulumi.Input[bool] preserve_dscp: whether to preserve dscp when sending traffic over VPN (SSR-only) :param pulumi.Input[bool] redundant: if HA mode :param pulumi.Input[int] reth_idx: if HA mode @@ -6563,14 +6595,14 @@ def __init__(__self__, *, :param pulumi.Input[Sequence[pulumi.Input[str]]] reth_nodes: SSR only - supporting vlan-based redundancy (matching the size of `networks`) :param pulumi.Input[bool] ssr_no_virtual_mac: when SSR is running as VM, this is required on certain hosting platforms :param pulumi.Input[str] svr_port_range: for SSR only - :param pulumi.Input[int] vlan_id: if WAN interface is on a VLAN :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayPortConfigVpnPathsArgs']]] vpn_paths: Property key is the VPN name - :param pulumi.Input[str] wan_arp_policer: when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` - :param pulumi.Input[str] wan_ext_ip: optional, if spoke should reach this port by a different IP - :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayPortConfigWanExtraRoutesArgs']]] wan_extra_routes: Property Key is the destianation CIDR (e.g "100.100.100.0/24") - :param pulumi.Input['DeviceprofileGatewayPortConfigWanProbeOverrideArgs'] wan_probe_override: if `usage`==`wan` - :param pulumi.Input['DeviceprofileGatewayPortConfigWanSourceNatArgs'] wan_source_nat: optional, by default, source-NAT is performed on all WAN Ports using the interface-ip - :param pulumi.Input[str] wan_type: if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + :param pulumi.Input[str] wan_arp_policer: Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + :param pulumi.Input[str] wan_ext_ip: Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP + :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayPortConfigWanExtraRoutesArgs']]] wan_extra_routes: Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") + :param pulumi.Input[Sequence[pulumi.Input[str]]] wan_networks: Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + :param pulumi.Input['DeviceprofileGatewayPortConfigWanProbeOverrideArgs'] wan_probe_override: Only if `usage`==`wan` + :param pulumi.Input['DeviceprofileGatewayPortConfigWanSourceNatArgs'] wan_source_nat: Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip + :param pulumi.Input[str] wan_type: Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ pulumi.set(__self__, "usage", usage) if ae_disable_lacp is not None: @@ -6649,6 +6681,8 @@ def __init__(__self__, *, pulumi.set(__self__, "wan_ext_ip", wan_ext_ip) if wan_extra_routes is not None: pulumi.set(__self__, "wan_extra_routes", wan_extra_routes) + if wan_networks is not None: + pulumi.set(__self__, "wan_networks", wan_networks) if wan_probe_override is not None: pulumi.set(__self__, "wan_probe_override", wan_probe_override) if wan_source_nat is not None: @@ -6696,9 +6730,7 @@ def ae_idx(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="aeLacpForceUp") def ae_lacp_force_up(self) -> Optional[pulumi.Input[bool]]: """ - For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only """ return pulumi.get(self, "ae_lacp_force_up") @@ -6730,6 +6762,9 @@ def critical(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: + """ + Interface Description. Can be a variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "description") @description.setter @@ -6773,8 +6808,7 @@ def dsl_type(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="dslVci") def dsl_vci(self) -> Optional[pulumi.Input[int]]: """ - if `wan_type`==`dsl` - 16 bit int + if `wan_type`==`dsl`, 16 bit int """ return pulumi.get(self, "dsl_vci") @@ -6786,8 +6820,7 @@ def dsl_vci(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="dslVpi") def dsl_vpi(self) -> Optional[pulumi.Input[int]]: """ - if `wan_type`==`dsl` - 8 bit int + if `wan_type`==`dsl`, 8 bit int """ return pulumi.get(self, "dsl_vpi") @@ -6901,7 +6934,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - if `usage`==`lan` + if `usage`==`lan`, name of the `org.Network` resource """ return pulumi.get(self, "networks") @@ -6934,7 +6967,7 @@ def poe_disabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="portNetwork") def port_network(self) -> Optional[pulumi.Input[str]]: """ - if `usage`==`lan` + Only for SRX and if `usage`==`lan`, the Untagged VLAN Network """ return pulumi.get(self, "port_network") @@ -7046,14 +7079,11 @@ def traffic_shaping(self, value: Optional[pulumi.Input['DeviceprofileGatewayPort @property @pulumi.getter(name="vlanId") - def vlan_id(self) -> Optional[pulumi.Input[int]]: - """ - if WAN interface is on a VLAN - """ + def vlan_id(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "vlan_id") @vlan_id.setter - def vlan_id(self, value: Optional[pulumi.Input[int]]): + def vlan_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "vlan_id", value) @property @@ -7072,7 +7102,7 @@ def vpn_paths(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Devi @pulumi.getter(name="wanArpPolicer") def wan_arp_policer(self) -> Optional[pulumi.Input[str]]: """ - when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` """ return pulumi.get(self, "wan_arp_policer") @@ -7084,7 +7114,7 @@ def wan_arp_policer(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="wanExtIp") def wan_ext_ip(self) -> Optional[pulumi.Input[str]]: """ - optional, if spoke should reach this port by a different IP + Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP """ return pulumi.get(self, "wan_ext_ip") @@ -7096,7 +7126,7 @@ def wan_ext_ip(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="wanExtraRoutes") def wan_extra_routes(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayPortConfigWanExtraRoutesArgs']]]]: """ - Property Key is the destianation CIDR (e.g "100.100.100.0/24") + Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") """ return pulumi.get(self, "wan_extra_routes") @@ -7104,11 +7134,23 @@ def wan_extra_routes(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['D def wan_extra_routes(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayPortConfigWanExtraRoutesArgs']]]]): pulumi.set(self, "wan_extra_routes", value) + @property + @pulumi.getter(name="wanNetworks") + def wan_networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + """ + return pulumi.get(self, "wan_networks") + + @wan_networks.setter + def wan_networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "wan_networks", value) + @property @pulumi.getter(name="wanProbeOverride") def wan_probe_override(self) -> Optional[pulumi.Input['DeviceprofileGatewayPortConfigWanProbeOverrideArgs']]: """ - if `usage`==`wan` + Only if `usage`==`wan` """ return pulumi.get(self, "wan_probe_override") @@ -7120,7 +7162,7 @@ def wan_probe_override(self, value: Optional[pulumi.Input['DeviceprofileGatewayP @pulumi.getter(name="wanSourceNat") def wan_source_nat(self) -> Optional[pulumi.Input['DeviceprofileGatewayPortConfigWanSourceNatArgs']]: """ - optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip """ return pulumi.get(self, "wan_source_nat") @@ -7132,7 +7174,7 @@ def wan_source_nat(self, value: Optional[pulumi.Input['DeviceprofileGatewayPortC @pulumi.getter(name="wanType") def wan_type(self) -> Optional[pulumi.Input[str]]: """ - if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ return pulumi.get(self, "wan_type") @@ -7153,12 +7195,15 @@ class DeviceprofileGatewayPortConfigIpConfigArgsDict(TypedDict): """ gateway: NotRequired[pulumi.Input[str]] """ - except for out-of_band interface (vme/em0/fxp0) + except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") """ ip: NotRequired[pulumi.Input[str]] + """ + Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + """ netmask: NotRequired[pulumi.Input[str]] """ - used only if `subnet` is not specified in `networks` + used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") """ network: NotRequired[pulumi.Input[str]] """ @@ -7199,8 +7244,9 @@ def __init__(__self__, *, """ :param pulumi.Input[Sequence[pulumi.Input[str]]] dns: except for out-of_band interface (vme/em0/fxp0) :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: except for out-of_band interface (vme/em0/fxp0) - :param pulumi.Input[str] gateway: except for out-of_band interface (vme/em0/fxp0) - :param pulumi.Input[str] netmask: used only if `subnet` is not specified in `networks` + :param pulumi.Input[str] gateway: except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] ip: Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] netmask: used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") :param pulumi.Input[str] network: optional, the network to be used for mgmt :param pulumi.Input[str] poser_password: if `type`==`pppoe` :param pulumi.Input[str] pppoe_auth: if `type`==`pppoe`. enum: `chap`, `none`, `pap` @@ -7256,7 +7302,7 @@ def dns_suffixes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]] @pulumi.getter def gateway(self) -> Optional[pulumi.Input[str]]: """ - except for out-of_band interface (vme/em0/fxp0) + except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "gateway") @@ -7267,6 +7313,9 @@ def gateway(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ip(self) -> Optional[pulumi.Input[str]]: + """ + Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "ip") @ip.setter @@ -7277,7 +7326,7 @@ def ip(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def netmask(self) -> Optional[pulumi.Input[str]]: """ - used only if `subnet` is not specified in `networks` + used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "netmask") @@ -7350,10 +7399,13 @@ def type(self, value: Optional[pulumi.Input[str]]): class DeviceprofileGatewayPortConfigTrafficShapingArgsDict(TypedDict): class_percentages: NotRequired[pulumi.Input[Sequence[pulumi.Input[int]]]] """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ enabled: NotRequired[pulumi.Input[bool]] + max_tx_kbps: NotRequired[pulumi.Input[int]] + """ + Interface Transmit Cap in kbps + """ elif False: DeviceprofileGatewayPortConfigTrafficShapingArgsDict: TypeAlias = Mapping[str, Any] @@ -7361,22 +7413,24 @@ class DeviceprofileGatewayPortConfigTrafficShapingArgsDict(TypedDict): class DeviceprofileGatewayPortConfigTrafficShapingArgs: def __init__(__self__, *, class_percentages: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None, - enabled: Optional[pulumi.Input[bool]] = None): + enabled: Optional[pulumi.Input[bool]] = None, + max_tx_kbps: Optional[pulumi.Input[int]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[int]]] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + :param pulumi.Input[Sequence[pulumi.Input[int]]] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 + :param pulumi.Input[int] max_tx_kbps: Interface Transmit Cap in kbps """ if class_percentages is not None: pulumi.set(__self__, "class_percentages", class_percentages) if enabled is not None: pulumi.set(__self__, "enabled", enabled) + if max_tx_kbps is not None: + pulumi.set(__self__, "max_tx_kbps", max_tx_kbps) @property @pulumi.getter(name="classPercentages") def class_percentages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]: """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ return pulumi.get(self, "class_percentages") @@ -7393,6 +7447,18 @@ def enabled(self) -> Optional[pulumi.Input[bool]]: def enabled(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "enabled", value) + @property + @pulumi.getter(name="maxTxKbps") + def max_tx_kbps(self) -> Optional[pulumi.Input[int]]: + """ + Interface Transmit Cap in kbps + """ + return pulumi.get(self, "max_tx_kbps") + + @max_tx_kbps.setter + def max_tx_kbps(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "max_tx_kbps", value) + if not MYPY: class DeviceprofileGatewayPortConfigVpnPathsArgsDict(TypedDict): @@ -7523,10 +7589,13 @@ def traffic_shaping(self, value: Optional[pulumi.Input['DeviceprofileGatewayPort class DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgsDict(TypedDict): class_percentages: NotRequired[pulumi.Input[Sequence[pulumi.Input[int]]]] """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ enabled: NotRequired[pulumi.Input[bool]] + max_tx_kbps: NotRequired[pulumi.Input[int]] + """ + Interface Transmit Cap in kbps + """ elif False: DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgsDict: TypeAlias = Mapping[str, Any] @@ -7534,22 +7603,24 @@ class DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgsDict(TypedDict): class DeviceprofileGatewayPortConfigVpnPathsTrafficShapingArgs: def __init__(__self__, *, class_percentages: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None, - enabled: Optional[pulumi.Input[bool]] = None): + enabled: Optional[pulumi.Input[bool]] = None, + max_tx_kbps: Optional[pulumi.Input[int]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[int]]] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + :param pulumi.Input[Sequence[pulumi.Input[int]]] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 + :param pulumi.Input[int] max_tx_kbps: Interface Transmit Cap in kbps """ if class_percentages is not None: pulumi.set(__self__, "class_percentages", class_percentages) if enabled is not None: pulumi.set(__self__, "enabled", enabled) + if max_tx_kbps is not None: + pulumi.set(__self__, "max_tx_kbps", max_tx_kbps) @property @pulumi.getter(name="classPercentages") def class_percentages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]: """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ return pulumi.get(self, "class_percentages") @@ -7566,6 +7637,18 @@ def enabled(self) -> Optional[pulumi.Input[bool]]: def enabled(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "enabled", value) + @property + @pulumi.getter(name="maxTxKbps") + def max_tx_kbps(self) -> Optional[pulumi.Input[int]]: + """ + Interface Transmit Cap in kbps + """ + return pulumi.get(self, "max_tx_kbps") + + @max_tx_kbps.setter + def max_tx_kbps(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "max_tx_kbps", value) + if not MYPY: class DeviceprofileGatewayPortConfigWanExtraRoutesArgsDict(TypedDict): @@ -7779,6 +7862,10 @@ class DeviceprofileGatewayRoutingPoliciesTermActionArgsDict(TypedDict): """ for SSR, hub decides how VRF routes are leaked on spoke """ + aggregates: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + """ + route aggregation + """ communities: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ when used as export policy, optional @@ -7809,6 +7896,7 @@ def __init__(__self__, *, accept: Optional[pulumi.Input[bool]] = None, add_communities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, add_target_vrfs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + aggregates: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, communities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, exclude_as_paths: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, exclude_communities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -7817,6 +7905,7 @@ def __init__(__self__, *, prepend_as_paths: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ :param pulumi.Input[Sequence[pulumi.Input[str]]] add_target_vrfs: for SSR, hub decides how VRF routes are leaked on spoke + :param pulumi.Input[Sequence[pulumi.Input[str]]] aggregates: route aggregation :param pulumi.Input[Sequence[pulumi.Input[str]]] communities: when used as export policy, optional :param pulumi.Input[Sequence[pulumi.Input[str]]] exclude_as_paths: when used as export policy, optional. To exclude certain AS :param pulumi.Input[Sequence[pulumi.Input[str]]] export_communitites: when used as export policy, optional @@ -7829,6 +7918,8 @@ def __init__(__self__, *, pulumi.set(__self__, "add_communities", add_communities) if add_target_vrfs is not None: pulumi.set(__self__, "add_target_vrfs", add_target_vrfs) + if aggregates is not None: + pulumi.set(__self__, "aggregates", aggregates) if communities is not None: pulumi.set(__self__, "communities", communities) if exclude_as_paths is not None: @@ -7872,6 +7963,18 @@ def add_target_vrfs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] def add_target_vrfs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "add_target_vrfs", value) + @property + @pulumi.getter + def aggregates(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + route aggregation + """ + return pulumi.get(self, "aggregates") + + @aggregates.setter + def aggregates(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "aggregates", value) + @property @pulumi.getter def communities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: @@ -7966,8 +8069,7 @@ class DeviceprofileGatewayRoutingPoliciesTermMatchingArgsDict(TypedDict): vpn_path_sla: NotRequired[pulumi.Input['DeviceprofileGatewayRoutingPoliciesTermMatchingVpnPathSlaArgsDict']] vpn_paths: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ elif False: DeviceprofileGatewayRoutingPoliciesTermMatchingArgsDict: TypeAlias = Mapping[str, Any] @@ -7989,8 +8091,7 @@ def __init__(__self__, *, :param pulumi.Input[Sequence[pulumi.Input[str]]] prefixes: zero or more criteria/filter can be specified to match the term, all criteria have to be met :param pulumi.Input[Sequence[pulumi.Input[str]]] protocols: `direct`, `bgp`, `osp`, ... :param pulumi.Input[Sequence[pulumi.Input[str]]] vpn_neighbor_macs: overlay-facing criteria (used for bgp_config where via=vpn) - :param pulumi.Input[Sequence[pulumi.Input[str]]] vpn_paths: overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + :param pulumi.Input[Sequence[pulumi.Input[str]]] vpn_paths: overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ if as_paths is not None: pulumi.set(__self__, "as_paths", as_paths) @@ -8099,8 +8200,7 @@ def vpn_path_sla(self, value: Optional[pulumi.Input['DeviceprofileGatewayRouting @pulumi.getter(name="vpnPaths") def vpn_paths(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ return pulumi.get(self, "vpn_paths") @@ -8114,8 +8214,7 @@ class DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsArgsDict(TypedDi route: NotRequired[pulumi.Input[str]] vrf_name: NotRequired[pulumi.Input[str]] """ - name of the vrf instance - it can also be the name of the VPN or wan if they + name of the vrf instance, it can also be the name of the VPN or wan if they """ elif False: DeviceprofileGatewayRoutingPoliciesTermMatchingRouteExistsArgsDict: TypeAlias = Mapping[str, Any] @@ -8126,8 +8225,7 @@ def __init__(__self__, *, route: Optional[pulumi.Input[str]] = None, vrf_name: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] vrf_name: name of the vrf instance - it can also be the name of the VPN or wan if they + :param pulumi.Input[str] vrf_name: name of the vrf instance, it can also be the name of the VPN or wan if they """ if route is not None: pulumi.set(__self__, "route", route) @@ -8147,8 +8245,7 @@ def route(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="vrfName") def vrf_name(self) -> Optional[pulumi.Input[str]]: """ - name of the vrf instance - it can also be the name of the VPN or wan if they + name of the vrf instance, it can also be the name of the VPN or wan if they """ return pulumi.get(self, "vrf_name") @@ -8228,8 +8325,7 @@ class DeviceprofileGatewayServicePolicyArgsDict(TypedDict): """ path_preference: NotRequired[pulumi.Input[str]] """ - by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` """ servicepolicy_id: NotRequired[pulumi.Input[str]] """ @@ -8264,8 +8360,7 @@ def __init__(__self__, *, :param pulumi.Input['DeviceprofileGatewayServicePolicyAppqoeArgs'] appqoe: For SRX Only :param pulumi.Input[bool] local_routing: access within the same VRF :param pulumi.Input[str] name: Required when `servicepolicy_id` is not defined, optional otherwise (override the servicepolicy name) - :param pulumi.Input[str] path_preference: by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + :param pulumi.Input[str] path_preference: by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` :param pulumi.Input[str] servicepolicy_id: used to link servicepolicy defined at org level and overwrite some attributes :param pulumi.Input[Sequence[pulumi.Input[str]]] services: Required when `servicepolicy_id` is not defined. List of Applications / Desctinations :param pulumi.Input[Sequence[pulumi.Input[str]]] tenants: Required when `servicepolicy_id` is not defined. List of Networks / Users @@ -8361,8 +8456,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="pathPreference") def path_preference(self) -> Optional[pulumi.Input[str]]: """ - by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` """ return pulumi.get(self, "path_preference") @@ -8584,63 +8678,63 @@ class DeviceprofileGatewayTunnelConfigsArgsDict(TypedDict): auto_provision: NotRequired[pulumi.Input['DeviceprofileGatewayTunnelConfigsAutoProvisionArgsDict']] ike_lifetime: NotRequired[pulumi.Input[int]] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ ike_mode: NotRequired[pulumi.Input[str]] """ - Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` """ ike_proposals: NotRequired[pulumi.Input[Sequence[pulumi.Input['DeviceprofileGatewayTunnelConfigsIkeProposalArgsDict']]]] """ - if `provider`== `custom-ipsec` + if `provider`==`custom-ipsec` """ ipsec_lifetime: NotRequired[pulumi.Input[int]] """ - if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ ipsec_proposals: NotRequired[pulumi.Input[Sequence[pulumi.Input['DeviceprofileGatewayTunnelConfigsIpsecProposalArgsDict']]]] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ local_id: NotRequired[pulumi.Input[str]] """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ mode: NotRequired[pulumi.Input[str]] """ - enum: `active-active`, `active-standby` + Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` """ networks: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - networks reachable via this tunnel + if `provider`==`custom-ipsec`, networks reachable via this tunnel """ primary: NotRequired[pulumi.Input['DeviceprofileGatewayTunnelConfigsPrimaryArgsDict']] + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ probe: NotRequired[pulumi.Input['DeviceprofileGatewayTunnelConfigsProbeArgsDict']] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ protocol: NotRequired[pulumi.Input[str]] """ - Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` """ provider: NotRequired[pulumi.Input[str]] """ - enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` """ psk: NotRequired[pulumi.Input[str]] """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ secondary: NotRequired[pulumi.Input['DeviceprofileGatewayTunnelConfigsSecondaryArgsDict']] + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ version: NotRequired[pulumi.Input[str]] """ - Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ elif False: DeviceprofileGatewayTunnelConfigsArgsDict: TypeAlias = Mapping[str, Any] @@ -8665,25 +8759,21 @@ def __init__(__self__, *, secondary: Optional[pulumi.Input['DeviceprofileGatewayTunnelConfigsSecondaryArgs']] = None, version: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[int] ike_lifetime: Only if `provider`== `custom-ipsec` - :param pulumi.Input[str] ike_mode: Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` - :param pulumi.Input[Sequence[pulumi.Input['DeviceprofileGatewayTunnelConfigsIkeProposalArgs']]] ike_proposals: if `provider`== `custom-ipsec` - :param pulumi.Input[int] ipsec_lifetime: if `provider`== `custom-ipsec` - :param pulumi.Input[Sequence[pulumi.Input['DeviceprofileGatewayTunnelConfigsIpsecProposalArgs']]] ipsec_proposals: Only if `provider`== `custom-ipsec` - :param pulumi.Input[str] local_id: Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` - :param pulumi.Input[str] mode: enum: `active-active`, `active-standby` - :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: networks reachable via this tunnel - :param pulumi.Input['DeviceprofileGatewayTunnelConfigsProbeArgs'] probe: Only if `provider`== `custom-ipsec` - :param pulumi.Input[str] protocol: Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` - :param pulumi.Input[str] provider: enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` - :param pulumi.Input[str] psk: Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` - :param pulumi.Input[str] version: Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + :param pulumi.Input[int] ike_lifetime: Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 + :param pulumi.Input[str] ike_mode: Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` + :param pulumi.Input[Sequence[pulumi.Input['DeviceprofileGatewayTunnelConfigsIkeProposalArgs']]] ike_proposals: if `provider`==`custom-ipsec` + :param pulumi.Input[int] ipsec_lifetime: Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 + :param pulumi.Input[Sequence[pulumi.Input['DeviceprofileGatewayTunnelConfigsIpsecProposalArgs']]] ipsec_proposals: Only if `provider`==`custom-ipsec` + :param pulumi.Input[str] local_id: Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param pulumi.Input[str] mode: Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` + :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: if `provider`==`custom-ipsec`, networks reachable via this tunnel + :param pulumi.Input['DeviceprofileGatewayTunnelConfigsPrimaryArgs'] primary: Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param pulumi.Input['DeviceprofileGatewayTunnelConfigsProbeArgs'] probe: Only if `provider`==`custom-ipsec` + :param pulumi.Input[str] protocol: Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` + :param pulumi.Input[str] provider: Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + :param pulumi.Input[str] psk: Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param pulumi.Input['DeviceprofileGatewayTunnelConfigsSecondaryArgs'] secondary: Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param pulumi.Input[str] version: Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ if auto_provision is not None: pulumi.set(__self__, "auto_provision", auto_provision) @@ -8731,7 +8821,7 @@ def auto_provision(self, value: Optional[pulumi.Input['DeviceprofileGatewayTunne @pulumi.getter(name="ikeLifetime") def ike_lifetime(self) -> Optional[pulumi.Input[int]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ return pulumi.get(self, "ike_lifetime") @@ -8743,7 +8833,7 @@ def ike_lifetime(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="ikeMode") def ike_mode(self) -> Optional[pulumi.Input[str]]: """ - Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` """ return pulumi.get(self, "ike_mode") @@ -8755,7 +8845,7 @@ def ike_mode(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="ikeProposals") def ike_proposals(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DeviceprofileGatewayTunnelConfigsIkeProposalArgs']]]]: """ - if `provider`== `custom-ipsec` + if `provider`==`custom-ipsec` """ return pulumi.get(self, "ike_proposals") @@ -8767,7 +8857,7 @@ def ike_proposals(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Devi @pulumi.getter(name="ipsecLifetime") def ipsec_lifetime(self) -> Optional[pulumi.Input[int]]: """ - if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ return pulumi.get(self, "ipsec_lifetime") @@ -8779,7 +8869,7 @@ def ipsec_lifetime(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="ipsecProposals") def ipsec_proposals(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DeviceprofileGatewayTunnelConfigsIpsecProposalArgs']]]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ return pulumi.get(self, "ipsec_proposals") @@ -8791,10 +8881,7 @@ def ipsec_proposals(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['De @pulumi.getter(name="localId") def local_id(self) -> Optional[pulumi.Input[str]]: """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "local_id") @@ -8806,7 +8893,7 @@ def local_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def mode(self) -> Optional[pulumi.Input[str]]: """ - enum: `active-active`, `active-standby` + Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` """ return pulumi.get(self, "mode") @@ -8818,7 +8905,7 @@ def mode(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - networks reachable via this tunnel + if `provider`==`custom-ipsec`, networks reachable via this tunnel """ return pulumi.get(self, "networks") @@ -8829,6 +8916,9 @@ def networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def primary(self) -> Optional[pulumi.Input['DeviceprofileGatewayTunnelConfigsPrimaryArgs']]: + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ return pulumi.get(self, "primary") @primary.setter @@ -8839,7 +8929,7 @@ def primary(self, value: Optional[pulumi.Input['DeviceprofileGatewayTunnelConfig @pulumi.getter def probe(self) -> Optional[pulumi.Input['DeviceprofileGatewayTunnelConfigsProbeArgs']]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ return pulumi.get(self, "probe") @@ -8851,7 +8941,7 @@ def probe(self, value: Optional[pulumi.Input['DeviceprofileGatewayTunnelConfigsP @pulumi.getter def protocol(self) -> Optional[pulumi.Input[str]]: """ - Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` """ return pulumi.get(self, "protocol") @@ -8863,7 +8953,7 @@ def protocol(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def provider(self) -> Optional[pulumi.Input[str]]: """ - enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` """ return pulumi.get(self, "provider") @@ -8875,10 +8965,7 @@ def provider(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def psk(self) -> Optional[pulumi.Input[str]]: """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "psk") @@ -8889,6 +8976,9 @@ def psk(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def secondary(self) -> Optional[pulumi.Input['DeviceprofileGatewayTunnelConfigsSecondaryArgs']]: + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ return pulumi.get(self, "secondary") @secondary.setter @@ -8899,7 +8989,7 @@ def secondary(self, value: Optional[pulumi.Input['DeviceprofileGatewayTunnelConf @pulumi.getter def version(self) -> Optional[pulumi.Input[str]]: """ - Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ return pulumi.get(self, "version") @@ -8910,9 +9000,20 @@ def version(self, value: Optional[pulumi.Input[str]]): if not MYPY: class DeviceprofileGatewayTunnelConfigsAutoProvisionArgsDict(TypedDict): + provider: pulumi.Input[str] + """ + enum: `jse-ipsec`, `zscaler-ipsec` + """ enable: NotRequired[pulumi.Input[bool]] latlng: NotRequired[pulumi.Input['DeviceprofileGatewayTunnelConfigsAutoProvisionLatlngArgsDict']] + """ + API override for POP selection + """ primary: NotRequired[pulumi.Input['DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgsDict']] + region: NotRequired[pulumi.Input[str]] + """ + API override for POP selection + """ secondary: NotRequired[pulumi.Input['DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgsDict']] elif False: DeviceprofileGatewayTunnelConfigsAutoProvisionArgsDict: TypeAlias = Mapping[str, Any] @@ -8920,19 +9021,41 @@ class DeviceprofileGatewayTunnelConfigsAutoProvisionArgsDict(TypedDict): @pulumi.input_type class DeviceprofileGatewayTunnelConfigsAutoProvisionArgs: def __init__(__self__, *, + provider: pulumi.Input[str], enable: Optional[pulumi.Input[bool]] = None, latlng: Optional[pulumi.Input['DeviceprofileGatewayTunnelConfigsAutoProvisionLatlngArgs']] = None, primary: Optional[pulumi.Input['DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs']] = None, + region: Optional[pulumi.Input[str]] = None, secondary: Optional[pulumi.Input['DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs']] = None): + """ + :param pulumi.Input[str] provider: enum: `jse-ipsec`, `zscaler-ipsec` + :param pulumi.Input['DeviceprofileGatewayTunnelConfigsAutoProvisionLatlngArgs'] latlng: API override for POP selection + :param pulumi.Input[str] region: API override for POP selection + """ + pulumi.set(__self__, "provider", provider) if enable is not None: pulumi.set(__self__, "enable", enable) if latlng is not None: pulumi.set(__self__, "latlng", latlng) if primary is not None: pulumi.set(__self__, "primary", primary) + if region is not None: + pulumi.set(__self__, "region", region) if secondary is not None: pulumi.set(__self__, "secondary", secondary) + @property + @pulumi.getter + def provider(self) -> pulumi.Input[str]: + """ + enum: `jse-ipsec`, `zscaler-ipsec` + """ + return pulumi.get(self, "provider") + + @provider.setter + def provider(self, value: pulumi.Input[str]): + pulumi.set(self, "provider", value) + @property @pulumi.getter def enable(self) -> Optional[pulumi.Input[bool]]: @@ -8945,6 +9068,9 @@ def enable(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def latlng(self) -> Optional[pulumi.Input['DeviceprofileGatewayTunnelConfigsAutoProvisionLatlngArgs']]: + """ + API override for POP selection + """ return pulumi.get(self, "latlng") @latlng.setter @@ -8960,6 +9086,18 @@ def primary(self) -> Optional[pulumi.Input['DeviceprofileGatewayTunnelConfigsAut def primary(self, value: Optional[pulumi.Input['DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs']]): pulumi.set(self, "primary", value) + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + """ + API override for POP selection + """ + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + @property @pulumi.getter def secondary(self) -> Optional[pulumi.Input['DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs']]: @@ -9006,7 +9144,7 @@ def lng(self, value: pulumi.Input[float]): if not MYPY: class DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgsDict(TypedDict): - num_hosts: NotRequired[pulumi.Input[str]] + probe_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] wan_names: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ optional, only needed if `vars_only`==`false` @@ -9017,24 +9155,24 @@ class DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgsDict(TypedDict): @pulumi.input_type class DeviceprofileGatewayTunnelConfigsAutoProvisionPrimaryArgs: def __init__(__self__, *, - num_hosts: Optional[pulumi.Input[str]] = None, + probe_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, wan_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ :param pulumi.Input[Sequence[pulumi.Input[str]]] wan_names: optional, only needed if `vars_only`==`false` """ - if num_hosts is not None: - pulumi.set(__self__, "num_hosts", num_hosts) + if probe_ips is not None: + pulumi.set(__self__, "probe_ips", probe_ips) if wan_names is not None: pulumi.set(__self__, "wan_names", wan_names) @property - @pulumi.getter(name="numHosts") - def num_hosts(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "num_hosts") + @pulumi.getter(name="probeIps") + def probe_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "probe_ips") - @num_hosts.setter - def num_hosts(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "num_hosts", value) + @probe_ips.setter + def probe_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "probe_ips", value) @property @pulumi.getter(name="wanNames") @@ -9051,7 +9189,7 @@ def wan_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): if not MYPY: class DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgsDict(TypedDict): - num_hosts: NotRequired[pulumi.Input[str]] + probe_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] wan_names: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ optional, only needed if `vars_only`==`false` @@ -9062,24 +9200,24 @@ class DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgsDict(TypedDict) @pulumi.input_type class DeviceprofileGatewayTunnelConfigsAutoProvisionSecondaryArgs: def __init__(__self__, *, - num_hosts: Optional[pulumi.Input[str]] = None, + probe_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, wan_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ :param pulumi.Input[Sequence[pulumi.Input[str]]] wan_names: optional, only needed if `vars_only`==`false` """ - if num_hosts is not None: - pulumi.set(__self__, "num_hosts", num_hosts) + if probe_ips is not None: + pulumi.set(__self__, "probe_ips", probe_ips) if wan_names is not None: pulumi.set(__self__, "wan_names", wan_names) @property - @pulumi.getter(name="numHosts") - def num_hosts(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "num_hosts") + @pulumi.getter(name="probeIps") + def probe_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "probe_ips") - @num_hosts.setter - def num_hosts(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "num_hosts", value) + @probe_ips.setter + def probe_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "probe_ips", value) @property @pulumi.getter(name="wanNames") @@ -9204,7 +9342,7 @@ class DeviceprofileGatewayTunnelConfigsIpsecProposalArgsDict(TypedDict): """ dh_group: NotRequired[pulumi.Input[str]] """ - Only if `provider`== `custom-ipsec`. enum: + Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -9231,7 +9369,7 @@ def __init__(__self__, *, enc_algo: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[str] auth_algo: enum: `md5`, `sha1`, `sha2` - :param pulumi.Input[str] dh_group: Only if `provider`== `custom-ipsec`. enum: + :param pulumi.Input[str] dh_group: Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -9267,7 +9405,7 @@ def auth_algo(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="dhGroup") def dh_group(self) -> Optional[pulumi.Input[str]]: """ - Only if `provider`== `custom-ipsec`. enum: + Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -9300,63 +9438,64 @@ def enc_algo(self, value: Optional[pulumi.Input[str]]): if not MYPY: class DeviceprofileGatewayTunnelConfigsPrimaryArgsDict(TypedDict): - hosts: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + hosts: pulumi.Input[Sequence[pulumi.Input[str]]] + wan_names: pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ probe_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] remote_ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - wan_names: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] elif False: DeviceprofileGatewayTunnelConfigsPrimaryArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type class DeviceprofileGatewayTunnelConfigsPrimaryArgs: def __init__(__self__, *, - hosts: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + hosts: pulumi.Input[Sequence[pulumi.Input[str]]], + wan_names: pulumi.Input[Sequence[pulumi.Input[str]]], internal_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, probe_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - remote_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - wan_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + remote_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` - :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_ids: Only if `provider`== `custom-ipsec` + :param pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` + :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_ids: Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - if hosts is not None: - pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "wan_names", wan_names) if internal_ips is not None: pulumi.set(__self__, "internal_ips", internal_ips) if probe_ips is not None: pulumi.set(__self__, "probe_ips", probe_ips) if remote_ids is not None: pulumi.set(__self__, "remote_ids", remote_ids) - if wan_names is not None: - pulumi.set(__self__, "wan_names", wan_names) @property @pulumi.getter - def hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + def hosts(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: return pulumi.get(self, "hosts") @hosts.setter - def hosts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + def hosts(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): pulumi.set(self, "hosts", value) + @property + @pulumi.getter(name="wanNames") + def wan_names(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "wan_names") + + @wan_names.setter + def wan_names(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "wan_names", value) + @property @pulumi.getter(name="internalIps") def internal_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ return pulumi.get(self, "internal_ips") @@ -9377,7 +9516,7 @@ def probe_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @pulumi.getter(name="remoteIds") def remote_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "remote_ids") @@ -9385,15 +9524,6 @@ def remote_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: def remote_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "remote_ids", value) - @property - @pulumi.getter(name="wanNames") - def wan_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - return pulumi.get(self, "wan_names") - - @wan_names.setter - def wan_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): - pulumi.set(self, "wan_names", value) - if not MYPY: class DeviceprofileGatewayTunnelConfigsProbeArgsDict(TypedDict): @@ -9489,63 +9619,64 @@ def type(self, value: Optional[pulumi.Input[str]]): if not MYPY: class DeviceprofileGatewayTunnelConfigsSecondaryArgsDict(TypedDict): - hosts: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + hosts: pulumi.Input[Sequence[pulumi.Input[str]]] + wan_names: pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ probe_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] remote_ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - wan_names: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] elif False: DeviceprofileGatewayTunnelConfigsSecondaryArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type class DeviceprofileGatewayTunnelConfigsSecondaryArgs: def __init__(__self__, *, - hosts: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + hosts: pulumi.Input[Sequence[pulumi.Input[str]]], + wan_names: pulumi.Input[Sequence[pulumi.Input[str]]], internal_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, probe_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - remote_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - wan_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + remote_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` - :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_ids: Only if `provider`== `custom-ipsec` + :param pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` + :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_ids: Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - if hosts is not None: - pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "wan_names", wan_names) if internal_ips is not None: pulumi.set(__self__, "internal_ips", internal_ips) if probe_ips is not None: pulumi.set(__self__, "probe_ips", probe_ips) if remote_ids is not None: pulumi.set(__self__, "remote_ids", remote_ids) - if wan_names is not None: - pulumi.set(__self__, "wan_names", wan_names) @property @pulumi.getter - def hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + def hosts(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: return pulumi.get(self, "hosts") @hosts.setter - def hosts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + def hosts(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): pulumi.set(self, "hosts", value) + @property + @pulumi.getter(name="wanNames") + def wan_names(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "wan_names") + + @wan_names.setter + def wan_names(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "wan_names", value) + @property @pulumi.getter(name="internalIps") def internal_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ return pulumi.get(self, "internal_ips") @@ -9566,7 +9697,7 @@ def probe_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @pulumi.getter(name="remoteIds") def remote_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "remote_ids") @@ -9574,15 +9705,6 @@ def remote_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: def remote_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "remote_ids", value) - @property - @pulumi.getter(name="wanNames") - def wan_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - return pulumi.get(self, "wan_names") - - @wan_names.setter - def wan_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): - pulumi.set(self, "wan_names", value) - if not MYPY: class DeviceprofileGatewayTunnelProviderOptionsArgsDict(TypedDict): @@ -9638,29 +9760,26 @@ def zscaler(self, value: Optional[pulumi.Input['DeviceprofileGatewayTunnelProvid if not MYPY: class DeviceprofileGatewayTunnelProviderOptionsJseArgsDict(TypedDict): - name: NotRequired[pulumi.Input[str]] num_users: NotRequired[pulumi.Input[int]] + org_name: NotRequired[pulumi.Input[str]] + """ + JSE Organization name + """ elif False: DeviceprofileGatewayTunnelProviderOptionsJseArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type class DeviceprofileGatewayTunnelProviderOptionsJseArgs: def __init__(__self__, *, - name: Optional[pulumi.Input[str]] = None, - num_users: Optional[pulumi.Input[int]] = None): - if name is not None: - pulumi.set(__self__, "name", name) + num_users: Optional[pulumi.Input[int]] = None, + org_name: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] org_name: JSE Organization name + """ if num_users is not None: pulumi.set(__self__, "num_users", num_users) - - @property - @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "name") - - @name.setter - def name(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "name", value) + if org_name is not None: + pulumi.set(__self__, "org_name", org_name) @property @pulumi.getter(name="numUsers") @@ -9671,41 +9790,75 @@ def num_users(self) -> Optional[pulumi.Input[int]]: def num_users(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "num_users", value) + @property + @pulumi.getter(name="orgName") + def org_name(self) -> Optional[pulumi.Input[str]]: + """ + JSE Organization name + """ + return pulumi.get(self, "org_name") + + @org_name.setter + def org_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "org_name", value) + if not MYPY: class DeviceprofileGatewayTunnelProviderOptionsZscalerArgsDict(TypedDict): - aup_acceptance_required: NotRequired[pulumi.Input[bool]] - aup_expire: NotRequired[pulumi.Input[int]] + aup_block_internet_until_accepted: NotRequired[pulumi.Input[bool]] + aup_enabled: NotRequired[pulumi.Input[bool]] """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - aup_ssl_proxy: NotRequired[pulumi.Input[bool]] + aup_force_ssl_inspection: NotRequired[pulumi.Input[bool]] """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - download_mbps: NotRequired[pulumi.Input[int]] + aup_timeout_in_days: NotRequired[pulumi.Input[int]] """ - the download bandwidth cap of the link, in Mbps + Required if `aup_enabled`==`true`. Days before AUP is requested again """ - enable_aup: NotRequired[pulumi.Input[bool]] + auth_required: NotRequired[pulumi.Input[bool]] """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Enable this option to enforce user authentication """ - enable_caution: NotRequired[pulumi.Input[bool]] + caution_enabled: NotRequired[pulumi.Input[bool]] """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + """ + dn_bandwidth: NotRequired[pulumi.Input[float]] + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + idle_time_in_minutes: NotRequired[pulumi.Input[int]] + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + ofw_enabled: NotRequired[pulumi.Input[bool]] + """ + if `true`, enable the firewall control option """ - enforce_authentication: NotRequired[pulumi.Input[bool]] - name: NotRequired[pulumi.Input[str]] sub_locations: NotRequired[pulumi.Input[Sequence[pulumi.Input['DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgsDict']]]] """ - if `use_xff`==`true` + `sub-locations` can be used for specific uses cases to define different configuration based on the user network + """ + surrogate_ip: NotRequired[pulumi.Input[bool]] + """ + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + """ + surrogate_ip_enforced_for_known_browsers: NotRequired[pulumi.Input[bool]] + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers """ - upload_mbps: NotRequired[pulumi.Input[int]] + surrogate_refresh_time_in_minutes: NotRequired[pulumi.Input[int]] """ - the download bandwidth cap of the link, in Mbps + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy """ - use_xff: NotRequired[pulumi.Input[bool]] + up_bandwidth: NotRequired[pulumi.Input[float]] + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + xff_forward_enabled: NotRequired[pulumi.Input[bool]] """ location uses proxy chaining to forward traffic """ @@ -9715,142 +9868,178 @@ class DeviceprofileGatewayTunnelProviderOptionsZscalerArgsDict(TypedDict): @pulumi.input_type class DeviceprofileGatewayTunnelProviderOptionsZscalerArgs: def __init__(__self__, *, - aup_acceptance_required: Optional[pulumi.Input[bool]] = None, - aup_expire: Optional[pulumi.Input[int]] = None, - aup_ssl_proxy: Optional[pulumi.Input[bool]] = None, - download_mbps: Optional[pulumi.Input[int]] = None, - enable_aup: Optional[pulumi.Input[bool]] = None, - enable_caution: Optional[pulumi.Input[bool]] = None, - enforce_authentication: Optional[pulumi.Input[bool]] = None, - name: Optional[pulumi.Input[str]] = None, + aup_block_internet_until_accepted: Optional[pulumi.Input[bool]] = None, + aup_enabled: Optional[pulumi.Input[bool]] = None, + aup_force_ssl_inspection: Optional[pulumi.Input[bool]] = None, + aup_timeout_in_days: Optional[pulumi.Input[int]] = None, + auth_required: Optional[pulumi.Input[bool]] = None, + caution_enabled: Optional[pulumi.Input[bool]] = None, + dn_bandwidth: Optional[pulumi.Input[float]] = None, + idle_time_in_minutes: Optional[pulumi.Input[int]] = None, + ofw_enabled: Optional[pulumi.Input[bool]] = None, sub_locations: Optional[pulumi.Input[Sequence[pulumi.Input['DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs']]]] = None, - upload_mbps: Optional[pulumi.Input[int]] = None, - use_xff: Optional[pulumi.Input[bool]] = None): - """ - :param pulumi.Input[int] aup_expire: days before AUP is requested again - :param pulumi.Input[bool] aup_ssl_proxy: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - :param pulumi.Input[int] download_mbps: the download bandwidth cap of the link, in Mbps - :param pulumi.Input[bool] enable_aup: if `use_xff`==`true`, display Acceptable Use Policy (AUP) - :param pulumi.Input[bool] enable_caution: when `enforce_authentication`==`false`, display caution notification for non-authenticated users - :param pulumi.Input[Sequence[pulumi.Input['DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs']]] sub_locations: if `use_xff`==`true` - :param pulumi.Input[int] upload_mbps: the download bandwidth cap of the link, in Mbps - :param pulumi.Input[bool] use_xff: location uses proxy chaining to forward traffic - """ - if aup_acceptance_required is not None: - pulumi.set(__self__, "aup_acceptance_required", aup_acceptance_required) - if aup_expire is not None: - pulumi.set(__self__, "aup_expire", aup_expire) - if aup_ssl_proxy is not None: - pulumi.set(__self__, "aup_ssl_proxy", aup_ssl_proxy) - if download_mbps is not None: - pulumi.set(__self__, "download_mbps", download_mbps) - if enable_aup is not None: - pulumi.set(__self__, "enable_aup", enable_aup) - if enable_caution is not None: - pulumi.set(__self__, "enable_caution", enable_caution) - if enforce_authentication is not None: - pulumi.set(__self__, "enforce_authentication", enforce_authentication) - if name is not None: - pulumi.set(__self__, "name", name) + surrogate_ip: Optional[pulumi.Input[bool]] = None, + surrogate_ip_enforced_for_known_browsers: Optional[pulumi.Input[bool]] = None, + surrogate_refresh_time_in_minutes: Optional[pulumi.Input[int]] = None, + up_bandwidth: Optional[pulumi.Input[float]] = None, + xff_forward_enabled: Optional[pulumi.Input[bool]] = None): + """ + :param pulumi.Input[bool] aup_enabled: Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + :param pulumi.Input[bool] aup_force_ssl_inspection: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + :param pulumi.Input[int] aup_timeout_in_days: Required if `aup_enabled`==`true`. Days before AUP is requested again + :param pulumi.Input[bool] auth_required: Enable this option to enforce user authentication + :param pulumi.Input[bool] caution_enabled: Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + :param pulumi.Input[float] dn_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param pulumi.Input[int] idle_time_in_minutes: Required if `surrogate_IP`==`true`, idle Time to Disassociation + :param pulumi.Input[bool] ofw_enabled: if `true`, enable the firewall control option + :param pulumi.Input[Sequence[pulumi.Input['DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs']]] sub_locations: `sub-locations` can be used for specific uses cases to define different configuration based on the user network + :param pulumi.Input[bool] surrogate_ip: Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + :param pulumi.Input[bool] surrogate_ip_enforced_for_known_browsers: Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + :param pulumi.Input[int] surrogate_refresh_time_in_minutes: Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + :param pulumi.Input[float] up_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param pulumi.Input[bool] xff_forward_enabled: location uses proxy chaining to forward traffic + """ + if aup_block_internet_until_accepted is not None: + pulumi.set(__self__, "aup_block_internet_until_accepted", aup_block_internet_until_accepted) + if aup_enabled is not None: + pulumi.set(__self__, "aup_enabled", aup_enabled) + if aup_force_ssl_inspection is not None: + pulumi.set(__self__, "aup_force_ssl_inspection", aup_force_ssl_inspection) + if aup_timeout_in_days is not None: + pulumi.set(__self__, "aup_timeout_in_days", aup_timeout_in_days) + if auth_required is not None: + pulumi.set(__self__, "auth_required", auth_required) + if caution_enabled is not None: + pulumi.set(__self__, "caution_enabled", caution_enabled) + if dn_bandwidth is not None: + pulumi.set(__self__, "dn_bandwidth", dn_bandwidth) + if idle_time_in_minutes is not None: + pulumi.set(__self__, "idle_time_in_minutes", idle_time_in_minutes) + if ofw_enabled is not None: + pulumi.set(__self__, "ofw_enabled", ofw_enabled) if sub_locations is not None: pulumi.set(__self__, "sub_locations", sub_locations) - if upload_mbps is not None: - pulumi.set(__self__, "upload_mbps", upload_mbps) - if use_xff is not None: - pulumi.set(__self__, "use_xff", use_xff) + if surrogate_ip is not None: + pulumi.set(__self__, "surrogate_ip", surrogate_ip) + if surrogate_ip_enforced_for_known_browsers is not None: + pulumi.set(__self__, "surrogate_ip_enforced_for_known_browsers", surrogate_ip_enforced_for_known_browsers) + if surrogate_refresh_time_in_minutes is not None: + pulumi.set(__self__, "surrogate_refresh_time_in_minutes", surrogate_refresh_time_in_minutes) + if up_bandwidth is not None: + pulumi.set(__self__, "up_bandwidth", up_bandwidth) + if xff_forward_enabled is not None: + pulumi.set(__self__, "xff_forward_enabled", xff_forward_enabled) @property - @pulumi.getter(name="aupAcceptanceRequired") - def aup_acceptance_required(self) -> Optional[pulumi.Input[bool]]: - return pulumi.get(self, "aup_acceptance_required") + @pulumi.getter(name="aupBlockInternetUntilAccepted") + def aup_block_internet_until_accepted(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "aup_block_internet_until_accepted") - @aup_acceptance_required.setter - def aup_acceptance_required(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "aup_acceptance_required", value) + @aup_block_internet_until_accepted.setter + def aup_block_internet_until_accepted(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_block_internet_until_accepted", value) @property - @pulumi.getter(name="aupExpire") - def aup_expire(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="aupEnabled") + def aup_enabled(self) -> Optional[pulumi.Input[bool]]: """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - return pulumi.get(self, "aup_expire") + return pulumi.get(self, "aup_enabled") - @aup_expire.setter - def aup_expire(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "aup_expire", value) + @aup_enabled.setter + def aup_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_enabled", value) @property - @pulumi.getter(name="aupSslProxy") - def aup_ssl_proxy(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="aupForceSslInspection") + def aup_force_ssl_inspection(self) -> Optional[pulumi.Input[bool]]: """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - return pulumi.get(self, "aup_ssl_proxy") + return pulumi.get(self, "aup_force_ssl_inspection") - @aup_ssl_proxy.setter - def aup_ssl_proxy(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "aup_ssl_proxy", value) + @aup_force_ssl_inspection.setter + def aup_force_ssl_inspection(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_force_ssl_inspection", value) @property - @pulumi.getter(name="downloadMbps") - def download_mbps(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="aupTimeoutInDays") + def aup_timeout_in_days(self) -> Optional[pulumi.Input[int]]: """ - the download bandwidth cap of the link, in Mbps + Required if `aup_enabled`==`true`. Days before AUP is requested again """ - return pulumi.get(self, "download_mbps") + return pulumi.get(self, "aup_timeout_in_days") - @download_mbps.setter - def download_mbps(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "download_mbps", value) + @aup_timeout_in_days.setter + def aup_timeout_in_days(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "aup_timeout_in_days", value) @property - @pulumi.getter(name="enableAup") - def enable_aup(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="authRequired") + def auth_required(self) -> Optional[pulumi.Input[bool]]: """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Enable this option to enforce user authentication """ - return pulumi.get(self, "enable_aup") + return pulumi.get(self, "auth_required") - @enable_aup.setter - def enable_aup(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enable_aup", value) + @auth_required.setter + def auth_required(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "auth_required", value) @property - @pulumi.getter(name="enableCaution") - def enable_caution(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="cautionEnabled") + def caution_enabled(self) -> Optional[pulumi.Input[bool]]: """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - return pulumi.get(self, "enable_caution") + return pulumi.get(self, "caution_enabled") - @enable_caution.setter - def enable_caution(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enable_caution", value) + @caution_enabled.setter + def caution_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "caution_enabled", value) @property - @pulumi.getter(name="enforceAuthentication") - def enforce_authentication(self) -> Optional[pulumi.Input[bool]]: - return pulumi.get(self, "enforce_authentication") + @pulumi.getter(name="dnBandwidth") + def dn_bandwidth(self) -> Optional[pulumi.Input[float]]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "dn_bandwidth") - @enforce_authentication.setter - def enforce_authentication(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enforce_authentication", value) + @dn_bandwidth.setter + def dn_bandwidth(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "dn_bandwidth", value) @property - @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "name") + @pulumi.getter(name="idleTimeInMinutes") + def idle_time_in_minutes(self) -> Optional[pulumi.Input[int]]: + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + return pulumi.get(self, "idle_time_in_minutes") - @name.setter - def name(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "name", value) + @idle_time_in_minutes.setter + def idle_time_in_minutes(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "idle_time_in_minutes", value) + + @property + @pulumi.getter(name="ofwEnabled") + def ofw_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + if `true`, enable the firewall control option + """ + return pulumi.get(self, "ofw_enabled") + + @ofw_enabled.setter + def ofw_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "ofw_enabled", value) @property @pulumi.getter(name="subLocations") def sub_locations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs']]]]: """ - if `use_xff`==`true` + `sub-locations` can be used for specific uses cases to define different configuration based on the user network """ return pulumi.get(self, "sub_locations") @@ -9859,58 +10048,120 @@ def sub_locations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Devi pulumi.set(self, "sub_locations", value) @property - @pulumi.getter(name="uploadMbps") - def upload_mbps(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="surrogateIp") + def surrogate_ip(self) -> Optional[pulumi.Input[bool]]: """ - the download bandwidth cap of the link, in Mbps + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies """ - return pulumi.get(self, "upload_mbps") + return pulumi.get(self, "surrogate_ip") - @upload_mbps.setter - def upload_mbps(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "upload_mbps", value) + @surrogate_ip.setter + def surrogate_ip(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "surrogate_ip", value) @property - @pulumi.getter(name="useXff") - def use_xff(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="surrogateIpEnforcedForKnownBrowsers") + def surrogate_ip_enforced_for_known_browsers(self) -> Optional[pulumi.Input[bool]]: + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + """ + return pulumi.get(self, "surrogate_ip_enforced_for_known_browsers") + + @surrogate_ip_enforced_for_known_browsers.setter + def surrogate_ip_enforced_for_known_browsers(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "surrogate_ip_enforced_for_known_browsers", value) + + @property + @pulumi.getter(name="surrogateRefreshTimeInMinutes") + def surrogate_refresh_time_in_minutes(self) -> Optional[pulumi.Input[int]]: + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + return pulumi.get(self, "surrogate_refresh_time_in_minutes") + + @surrogate_refresh_time_in_minutes.setter + def surrogate_refresh_time_in_minutes(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "surrogate_refresh_time_in_minutes", value) + + @property + @pulumi.getter(name="upBandwidth") + def up_bandwidth(self) -> Optional[pulumi.Input[float]]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "up_bandwidth") + + @up_bandwidth.setter + def up_bandwidth(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "up_bandwidth", value) + + @property + @pulumi.getter(name="xffForwardEnabled") + def xff_forward_enabled(self) -> Optional[pulumi.Input[bool]]: """ location uses proxy chaining to forward traffic """ - return pulumi.get(self, "use_xff") + return pulumi.get(self, "xff_forward_enabled") - @use_xff.setter - def use_xff(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "use_xff", value) + @xff_forward_enabled.setter + def xff_forward_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "xff_forward_enabled", value) if not MYPY: class DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgsDict(TypedDict): - aup_acceptance_required: NotRequired[pulumi.Input[bool]] - aup_expire: NotRequired[pulumi.Input[int]] + aup_block_internet_until_accepted: NotRequired[pulumi.Input[bool]] + aup_enabled: NotRequired[pulumi.Input[bool]] """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - aup_ssl_proxy: NotRequired[pulumi.Input[bool]] + aup_force_ssl_inspection: NotRequired[pulumi.Input[bool]] """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - download_mbps: NotRequired[pulumi.Input[int]] + aup_timeout_in_days: NotRequired[pulumi.Input[int]] """ - the download bandwidth cap of the link, in Mbps + Required if `aup_enabled`==`true`. Days before AUP is requested again """ - enable_aup: NotRequired[pulumi.Input[bool]] + auth_required: NotRequired[pulumi.Input[bool]] """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Enable this option to authenticate users """ - enable_caution: NotRequired[pulumi.Input[bool]] + caution_enabled: NotRequired[pulumi.Input[bool]] """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - enforce_authentication: NotRequired[pulumi.Input[bool]] - subnets: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] - upload_mbps: NotRequired[pulumi.Input[int]] + dn_bandwidth: NotRequired[pulumi.Input[float]] + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + idle_time_in_minutes: NotRequired[pulumi.Input[int]] + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + name: NotRequired[pulumi.Input[str]] """ - the download bandwidth cap of the link, in Mbps + Network name + """ + ofw_enabled: NotRequired[pulumi.Input[bool]] + """ + if `true`, enable the firewall control option + """ + surrogate_ip: NotRequired[pulumi.Input[bool]] + """ + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + """ + surrogate_ip_enforced_for_known_browsers: NotRequired[pulumi.Input[bool]] + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + """ + surrogate_refresh_time_in_minutes: NotRequired[pulumi.Input[int]] + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + up_bandwidth: NotRequired[pulumi.Input[float]] + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set """ elif False: DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgsDict: TypeAlias = Mapping[str, Any] @@ -9918,140 +10169,228 @@ class DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgsDict(TypedD @pulumi.input_type class DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs: def __init__(__self__, *, - aup_acceptance_required: Optional[pulumi.Input[bool]] = None, - aup_expire: Optional[pulumi.Input[int]] = None, - aup_ssl_proxy: Optional[pulumi.Input[bool]] = None, - download_mbps: Optional[pulumi.Input[int]] = None, - enable_aup: Optional[pulumi.Input[bool]] = None, - enable_caution: Optional[pulumi.Input[bool]] = None, - enforce_authentication: Optional[pulumi.Input[bool]] = None, - subnets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - upload_mbps: Optional[pulumi.Input[int]] = None): - """ - :param pulumi.Input[int] aup_expire: days before AUP is requested again - :param pulumi.Input[bool] aup_ssl_proxy: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - :param pulumi.Input[int] download_mbps: the download bandwidth cap of the link, in Mbps - :param pulumi.Input[bool] enable_aup: if `use_xff`==`true`, display Acceptable Use Policy (AUP) - :param pulumi.Input[bool] enable_caution: when `enforce_authentication`==`false`, display caution notification for non-authenticated users - :param pulumi.Input[int] upload_mbps: the download bandwidth cap of the link, in Mbps - """ - if aup_acceptance_required is not None: - pulumi.set(__self__, "aup_acceptance_required", aup_acceptance_required) - if aup_expire is not None: - pulumi.set(__self__, "aup_expire", aup_expire) - if aup_ssl_proxy is not None: - pulumi.set(__self__, "aup_ssl_proxy", aup_ssl_proxy) - if download_mbps is not None: - pulumi.set(__self__, "download_mbps", download_mbps) - if enable_aup is not None: - pulumi.set(__self__, "enable_aup", enable_aup) - if enable_caution is not None: - pulumi.set(__self__, "enable_caution", enable_caution) - if enforce_authentication is not None: - pulumi.set(__self__, "enforce_authentication", enforce_authentication) - if subnets is not None: - pulumi.set(__self__, "subnets", subnets) - if upload_mbps is not None: - pulumi.set(__self__, "upload_mbps", upload_mbps) + aup_block_internet_until_accepted: Optional[pulumi.Input[bool]] = None, + aup_enabled: Optional[pulumi.Input[bool]] = None, + aup_force_ssl_inspection: Optional[pulumi.Input[bool]] = None, + aup_timeout_in_days: Optional[pulumi.Input[int]] = None, + auth_required: Optional[pulumi.Input[bool]] = None, + caution_enabled: Optional[pulumi.Input[bool]] = None, + dn_bandwidth: Optional[pulumi.Input[float]] = None, + idle_time_in_minutes: Optional[pulumi.Input[int]] = None, + name: Optional[pulumi.Input[str]] = None, + ofw_enabled: Optional[pulumi.Input[bool]] = None, + surrogate_ip: Optional[pulumi.Input[bool]] = None, + surrogate_ip_enforced_for_known_browsers: Optional[pulumi.Input[bool]] = None, + surrogate_refresh_time_in_minutes: Optional[pulumi.Input[int]] = None, + up_bandwidth: Optional[pulumi.Input[float]] = None): + """ + :param pulumi.Input[bool] aup_enabled: Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + :param pulumi.Input[bool] aup_force_ssl_inspection: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + :param pulumi.Input[int] aup_timeout_in_days: Required if `aup_enabled`==`true`. Days before AUP is requested again + :param pulumi.Input[bool] auth_required: Enable this option to authenticate users + :param pulumi.Input[bool] caution_enabled: Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + :param pulumi.Input[float] dn_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param pulumi.Input[int] idle_time_in_minutes: Required if `surrogate_IP`==`true`, idle Time to Disassociation + :param pulumi.Input[str] name: Network name + :param pulumi.Input[bool] ofw_enabled: if `true`, enable the firewall control option + :param pulumi.Input[bool] surrogate_ip: Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + :param pulumi.Input[bool] surrogate_ip_enforced_for_known_browsers: Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + :param pulumi.Input[int] surrogate_refresh_time_in_minutes: Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + :param pulumi.Input[float] up_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + if aup_block_internet_until_accepted is not None: + pulumi.set(__self__, "aup_block_internet_until_accepted", aup_block_internet_until_accepted) + if aup_enabled is not None: + pulumi.set(__self__, "aup_enabled", aup_enabled) + if aup_force_ssl_inspection is not None: + pulumi.set(__self__, "aup_force_ssl_inspection", aup_force_ssl_inspection) + if aup_timeout_in_days is not None: + pulumi.set(__self__, "aup_timeout_in_days", aup_timeout_in_days) + if auth_required is not None: + pulumi.set(__self__, "auth_required", auth_required) + if caution_enabled is not None: + pulumi.set(__self__, "caution_enabled", caution_enabled) + if dn_bandwidth is not None: + pulumi.set(__self__, "dn_bandwidth", dn_bandwidth) + if idle_time_in_minutes is not None: + pulumi.set(__self__, "idle_time_in_minutes", idle_time_in_minutes) + if name is not None: + pulumi.set(__self__, "name", name) + if ofw_enabled is not None: + pulumi.set(__self__, "ofw_enabled", ofw_enabled) + if surrogate_ip is not None: + pulumi.set(__self__, "surrogate_ip", surrogate_ip) + if surrogate_ip_enforced_for_known_browsers is not None: + pulumi.set(__self__, "surrogate_ip_enforced_for_known_browsers", surrogate_ip_enforced_for_known_browsers) + if surrogate_refresh_time_in_minutes is not None: + pulumi.set(__self__, "surrogate_refresh_time_in_minutes", surrogate_refresh_time_in_minutes) + if up_bandwidth is not None: + pulumi.set(__self__, "up_bandwidth", up_bandwidth) @property - @pulumi.getter(name="aupAcceptanceRequired") - def aup_acceptance_required(self) -> Optional[pulumi.Input[bool]]: - return pulumi.get(self, "aup_acceptance_required") + @pulumi.getter(name="aupBlockInternetUntilAccepted") + def aup_block_internet_until_accepted(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "aup_block_internet_until_accepted") - @aup_acceptance_required.setter - def aup_acceptance_required(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "aup_acceptance_required", value) + @aup_block_internet_until_accepted.setter + def aup_block_internet_until_accepted(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_block_internet_until_accepted", value) @property - @pulumi.getter(name="aupExpire") - def aup_expire(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="aupEnabled") + def aup_enabled(self) -> Optional[pulumi.Input[bool]]: """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - return pulumi.get(self, "aup_expire") + return pulumi.get(self, "aup_enabled") - @aup_expire.setter - def aup_expire(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "aup_expire", value) + @aup_enabled.setter + def aup_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_enabled", value) @property - @pulumi.getter(name="aupSslProxy") - def aup_ssl_proxy(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="aupForceSslInspection") + def aup_force_ssl_inspection(self) -> Optional[pulumi.Input[bool]]: """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - return pulumi.get(self, "aup_ssl_proxy") + return pulumi.get(self, "aup_force_ssl_inspection") - @aup_ssl_proxy.setter - def aup_ssl_proxy(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "aup_ssl_proxy", value) + @aup_force_ssl_inspection.setter + def aup_force_ssl_inspection(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_force_ssl_inspection", value) @property - @pulumi.getter(name="downloadMbps") - def download_mbps(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="aupTimeoutInDays") + def aup_timeout_in_days(self) -> Optional[pulumi.Input[int]]: """ - the download bandwidth cap of the link, in Mbps + Required if `aup_enabled`==`true`. Days before AUP is requested again """ - return pulumi.get(self, "download_mbps") + return pulumi.get(self, "aup_timeout_in_days") - @download_mbps.setter - def download_mbps(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "download_mbps", value) + @aup_timeout_in_days.setter + def aup_timeout_in_days(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "aup_timeout_in_days", value) @property - @pulumi.getter(name="enableAup") - def enable_aup(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="authRequired") + def auth_required(self) -> Optional[pulumi.Input[bool]]: """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Enable this option to authenticate users """ - return pulumi.get(self, "enable_aup") + return pulumi.get(self, "auth_required") - @enable_aup.setter - def enable_aup(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enable_aup", value) + @auth_required.setter + def auth_required(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "auth_required", value) @property - @pulumi.getter(name="enableCaution") - def enable_caution(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="cautionEnabled") + def caution_enabled(self) -> Optional[pulumi.Input[bool]]: """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - return pulumi.get(self, "enable_caution") + return pulumi.get(self, "caution_enabled") - @enable_caution.setter - def enable_caution(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enable_caution", value) + @caution_enabled.setter + def caution_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "caution_enabled", value) @property - @pulumi.getter(name="enforceAuthentication") - def enforce_authentication(self) -> Optional[pulumi.Input[bool]]: - return pulumi.get(self, "enforce_authentication") + @pulumi.getter(name="dnBandwidth") + def dn_bandwidth(self) -> Optional[pulumi.Input[float]]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "dn_bandwidth") + + @dn_bandwidth.setter + def dn_bandwidth(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "dn_bandwidth", value) + + @property + @pulumi.getter(name="idleTimeInMinutes") + def idle_time_in_minutes(self) -> Optional[pulumi.Input[int]]: + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + return pulumi.get(self, "idle_time_in_minutes") - @enforce_authentication.setter - def enforce_authentication(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enforce_authentication", value) + @idle_time_in_minutes.setter + def idle_time_in_minutes(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "idle_time_in_minutes", value) @property @pulumi.getter - def subnets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - return pulumi.get(self, "subnets") + def name(self) -> Optional[pulumi.Input[str]]: + """ + Network name + """ + return pulumi.get(self, "name") - @subnets.setter - def subnets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): - pulumi.set(self, "subnets", value) + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) + + @property + @pulumi.getter(name="ofwEnabled") + def ofw_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + if `true`, enable the firewall control option + """ + return pulumi.get(self, "ofw_enabled") + + @ofw_enabled.setter + def ofw_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "ofw_enabled", value) + + @property + @pulumi.getter(name="surrogateIp") + def surrogate_ip(self) -> Optional[pulumi.Input[bool]]: + """ + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + """ + return pulumi.get(self, "surrogate_ip") + + @surrogate_ip.setter + def surrogate_ip(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "surrogate_ip", value) @property - @pulumi.getter(name="uploadMbps") - def upload_mbps(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="surrogateIpEnforcedForKnownBrowsers") + def surrogate_ip_enforced_for_known_browsers(self) -> Optional[pulumi.Input[bool]]: """ - the download bandwidth cap of the link, in Mbps + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers """ - return pulumi.get(self, "upload_mbps") + return pulumi.get(self, "surrogate_ip_enforced_for_known_browsers") - @upload_mbps.setter - def upload_mbps(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "upload_mbps", value) + @surrogate_ip_enforced_for_known_browsers.setter + def surrogate_ip_enforced_for_known_browsers(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "surrogate_ip_enforced_for_known_browsers", value) + + @property + @pulumi.getter(name="surrogateRefreshTimeInMinutes") + def surrogate_refresh_time_in_minutes(self) -> Optional[pulumi.Input[int]]: + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + return pulumi.get(self, "surrogate_refresh_time_in_minutes") + + @surrogate_refresh_time_in_minutes.setter + def surrogate_refresh_time_in_minutes(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "surrogate_refresh_time_in_minutes", value) + + @property + @pulumi.getter(name="upBandwidth") + def up_bandwidth(self) -> Optional[pulumi.Input[float]]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "up_bandwidth") + + @up_bandwidth.setter + def up_bandwidth(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "up_bandwidth", value) if not MYPY: @@ -10635,8 +10974,7 @@ class GatewaytemplateBgpConfigArgsDict(TypedDict): """ extended_v4_nexthop: NotRequired[pulumi.Input[bool]] """ - by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this """ graceful_restart_time: NotRequired[pulumi.Input[int]] """ @@ -10713,8 +11051,7 @@ def __init__(__self__, *, :param pulumi.Input[int] bfd_multiplier: when bfd_minimum_interval_is_configured alone :param pulumi.Input[bool] disable_bfd: BFD provides faster path failure detection and is enabled by default :param pulumi.Input[str] export_policy: default export policies if no per-neighbor policies defined - :param pulumi.Input[bool] extended_v4_nexthop: by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + :param pulumi.Input[bool] extended_v4_nexthop: by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this :param pulumi.Input[int] graceful_restart_time: `0` means disable :param pulumi.Input[str] import_policy: default import policies if no per-neighbor policies defined :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateBgpConfigNeighborsArgs']]] neighbors: if per-neighbor as is desired. Property key is the neighbor address @@ -10840,8 +11177,7 @@ def export_policy(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="extendedV4Nexthop") def extended_v4_nexthop(self) -> Optional[pulumi.Input[bool]]: """ - by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this """ return pulumi.get(self, "extended_v4_nexthop") @@ -11961,6 +12297,9 @@ class GatewaytemplateNetworkArgsDict(TypedDict): """ subnet6: NotRequired[pulumi.Input[str]] tenants: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkTenantsArgsDict']]]] + """ + Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + """ vlan_id: NotRequired[pulumi.Input[str]] vpn_access: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkVpnAccessArgsDict']]]] """ @@ -11992,6 +12331,7 @@ def __init__(__self__, *, :param pulumi.Input[bool] isolation: whether to allow clients in the network to talk to each other :param pulumi.Input['GatewaytemplateNetworkMulticastArgs'] multicast: whether to enable multicast support (only PIM-sparse mode is supported) :param pulumi.Input[Sequence[pulumi.Input[str]]] routed_for_networks: for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) + :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkTenantsArgs']]] tenants: Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkVpnAccessArgs']]] vpn_access: Property key is the VPN name. Whether this network can be accessed from vpn """ pulumi.set(__self__, "name", name) @@ -12138,6 +12478,9 @@ def subnet6(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tenants(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkTenantsArgs']]]]: + """ + Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "tenants") @tenants.setter @@ -12194,7 +12537,7 @@ class GatewaytemplateNetworkInternetAccessArgsDict(TypedDict): create_simple_service_policy: NotRequired[pulumi.Input[bool]] destination_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkInternetAccessDestinationNatArgsDict']]]] """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ enabled: NotRequired[pulumi.Input[bool]] restricted: NotRequired[pulumi.Input[bool]] @@ -12203,7 +12546,7 @@ class GatewaytemplateNetworkInternetAccessArgsDict(TypedDict): """ static_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkInternetAccessStaticNatArgsDict']]]] """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ elif False: GatewaytemplateNetworkInternetAccessArgsDict: TypeAlias = Mapping[str, Any] @@ -12217,9 +12560,9 @@ def __init__(__self__, *, restricted: Optional[pulumi.Input[bool]] = None, static_nat: Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkInternetAccessStaticNatArgs']]]] = None): """ - :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkInternetAccessDestinationNatArgs']]] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkInternetAccessDestinationNatArgs']]] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param pulumi.Input[bool] restricted: by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies - :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkInternetAccessStaticNatArgs']]] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkInternetAccessStaticNatArgs']]] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ if create_simple_service_policy is not None: pulumi.set(__self__, "create_simple_service_policy", create_simple_service_policy) @@ -12245,7 +12588,7 @@ def create_simple_service_policy(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkInternetAccessDestinationNatArgs']]]]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -12278,7 +12621,7 @@ def restricted(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkInternetAccessStaticNatArgs']]]]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -12290,8 +12633,18 @@ def static_nat(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Gat if not MYPY: class GatewaytemplateNetworkInternetAccessDestinationNatArgsDict(TypedDict): internal_ip: NotRequired[pulumi.Input[str]] + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ name: NotRequired[pulumi.Input[str]] - port: NotRequired[pulumi.Input[int]] + port: NotRequired[pulumi.Input[str]] + """ + The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + """ + wan_name: NotRequired[pulumi.Input[str]] + """ + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ elif False: GatewaytemplateNetworkInternetAccessDestinationNatArgsDict: TypeAlias = Mapping[str, Any] @@ -12300,17 +12653,28 @@ class GatewaytemplateNetworkInternetAccessDestinationNatArgs: def __init__(__self__, *, internal_ip: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - port: Optional[pulumi.Input[int]] = None): + port: Optional[pulumi.Input[str]] = None, + wan_name: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] port: The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: pulumi.set(__self__, "name", name) if port is not None: pulumi.set(__self__, "port", port) + if wan_name is not None: + pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[pulumi.Input[str]]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter @@ -12328,21 +12692,39 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - def port(self) -> Optional[pulumi.Input[int]]: + def port(self) -> Optional[pulumi.Input[str]]: + """ + The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "port") @port.setter - def port(self, value: Optional[pulumi.Input[int]]): + def port(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "port", value) + @property + @pulumi.getter(name="wanName") + def wan_name(self) -> Optional[pulumi.Input[str]]: + """ + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ + return pulumi.get(self, "wan_name") + + @wan_name.setter + def wan_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "wan_name", value) + if not MYPY: class GatewaytemplateNetworkInternetAccessStaticNatArgsDict(TypedDict): - internal_ip: NotRequired[pulumi.Input[str]] - name: NotRequired[pulumi.Input[str]] + internal_ip: pulumi.Input[str] + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ + name: pulumi.Input[str] wan_name: NotRequired[pulumi.Input[str]] """ - If not set, we configure the nat policies against all WAN ports for simplicity + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ elif False: GatewaytemplateNetworkInternetAccessStaticNatArgsDict: TypeAlias = Mapping[str, Any] @@ -12350,42 +12732,44 @@ class GatewaytemplateNetworkInternetAccessStaticNatArgsDict(TypedDict): @pulumi.input_type class GatewaytemplateNetworkInternetAccessStaticNatArgs: def __init__(__self__, *, - internal_ip: Optional[pulumi.Input[str]] = None, - name: Optional[pulumi.Input[str]] = None, + internal_ip: pulumi.Input[str], + name: pulumi.Input[str], wan_name: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param pulumi.Input[str] internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) if wan_name is not None: pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[pulumi.Input[str]]: + def internal_ip(self) -> pulumi.Input[str]: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter - def internal_ip(self, value: Optional[pulumi.Input[str]]): + def internal_ip(self, value: pulumi.Input[str]): pulumi.set(self, "internal_ip", value) @property @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: + def name(self) -> pulumi.Input[str]: return pulumi.get(self, "name") @name.setter - def name(self, value: Optional[pulumi.Input[str]]): + def name(self, value: pulumi.Input[str]): pulumi.set(self, "name", value) @property @pulumi.getter(name="wanName") def wan_name(self) -> Optional[pulumi.Input[str]]: """ - If not set, we configure the nat policies against all WAN ports for simplicity + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "wan_name") @@ -12526,7 +12910,7 @@ class GatewaytemplateNetworkVpnAccessArgsDict(TypedDict): """ destination_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkVpnAccessDestinationNatArgsDict']]]] """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ nat_pool: NotRequired[pulumi.Input[str]] """ @@ -12542,13 +12926,11 @@ class GatewaytemplateNetworkVpnAccessArgsDict(TypedDict): """ no_readvertise_to_overlay: NotRequired[pulumi.Input[bool]] """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ other_vrfs: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs """ routed: NotRequired[pulumi.Input[bool]] """ @@ -12560,12 +12942,11 @@ class GatewaytemplateNetworkVpnAccessArgsDict(TypedDict): """ static_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkVpnAccessStaticNatArgsDict']]]] """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ summarized_subnet: NotRequired[pulumi.Input[str]] """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ summarized_subnet_to_lan_bgp: NotRequired[pulumi.Input[str]] """ @@ -12598,19 +12979,16 @@ def __init__(__self__, *, """ :param pulumi.Input[str] advertised_subnet: if `routed`==`true`, whether to advertise an aggregated subnet toward HUB this is useful when there are multiple networks on SPOKE's side :param pulumi.Input[bool] allow_ping: whether to allow ping from vpn into this routed network - :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkVpnAccessDestinationNatArgs']]] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkVpnAccessDestinationNatArgs']]] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param pulumi.Input[str] nat_pool: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub :param pulumi.Input[bool] no_readvertise_to_lan_bgp: toward LAN-side BGP peers :param pulumi.Input[bool] no_readvertise_to_lan_ospf: toward LAN-side OSPF peers - :param pulumi.Input[bool] no_readvertise_to_overlay: toward overlay - how HUB should deal with routes it received from Spokes - :param pulumi.Input[Sequence[pulumi.Input[str]]] other_vrfs: by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + :param pulumi.Input[bool] no_readvertise_to_overlay: toward overlay, how HUB should deal with routes it received from Spokes + :param pulumi.Input[Sequence[pulumi.Input[str]]] other_vrfs: by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs :param pulumi.Input[bool] routed: whether this network is routable :param pulumi.Input['GatewaytemplateNetworkVpnAccessSourceNatArgs'] source_nat: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub - :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkVpnAccessStaticNatArgs']]] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") - :param pulumi.Input[str] summarized_subnet: toward overlay - how HUB should deal with routes it received from Spokes + :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkVpnAccessStaticNatArgs']]] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] summarized_subnet: toward overlay, how HUB should deal with routes it received from Spokes :param pulumi.Input[str] summarized_subnet_to_lan_bgp: toward LAN-side BGP peers :param pulumi.Input[str] summarized_subnet_to_lan_ospf: toward LAN-side OSPF peers """ @@ -12671,7 +13049,7 @@ def allow_ping(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkVpnAccessDestinationNatArgs']]]]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -12719,8 +13097,7 @@ def no_readvertise_to_lan_ospf(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="noReadvertiseToOverlay") def no_readvertise_to_overlay(self) -> Optional[pulumi.Input[bool]]: """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ return pulumi.get(self, "no_readvertise_to_overlay") @@ -12732,8 +13109,7 @@ def no_readvertise_to_overlay(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="otherVrfs") def other_vrfs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs """ return pulumi.get(self, "other_vrfs") @@ -12769,7 +13145,7 @@ def source_nat(self, value: Optional[pulumi.Input['GatewaytemplateNetworkVpnAcce @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateNetworkVpnAccessStaticNatArgs']]]]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -12781,8 +13157,7 @@ def static_nat(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Gat @pulumi.getter(name="summarizedSubnet") def summarized_subnet(self) -> Optional[pulumi.Input[str]]: """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ return pulumi.get(self, "summarized_subnet") @@ -12818,8 +13193,11 @@ def summarized_subnet_to_lan_ospf(self, value: Optional[pulumi.Input[str]]): if not MYPY: class GatewaytemplateNetworkVpnAccessDestinationNatArgsDict(TypedDict): internal_ip: NotRequired[pulumi.Input[str]] + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ name: NotRequired[pulumi.Input[str]] - port: NotRequired[pulumi.Input[int]] + port: NotRequired[pulumi.Input[str]] elif False: GatewaytemplateNetworkVpnAccessDestinationNatArgsDict: TypeAlias = Mapping[str, Any] @@ -12828,7 +13206,10 @@ class GatewaytemplateNetworkVpnAccessDestinationNatArgs: def __init__(__self__, *, internal_ip: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - port: Optional[pulumi.Input[int]] = None): + port: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: @@ -12839,6 +13220,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[pulumi.Input[str]]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter @@ -12856,11 +13240,11 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - def port(self) -> Optional[pulumi.Input[int]]: + def port(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "port") @port.setter - def port(self, value: Optional[pulumi.Input[int]]): + def port(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "port", value) @@ -12889,61 +13273,46 @@ def external_ip(self, value: Optional[pulumi.Input[str]]): if not MYPY: class GatewaytemplateNetworkVpnAccessStaticNatArgsDict(TypedDict): - internal_ip: NotRequired[pulumi.Input[str]] - name: NotRequired[pulumi.Input[str]] - wan_name: NotRequired[pulumi.Input[str]] + internal_ip: pulumi.Input[str] """ - If not set, we configure the nat policies against all WAN ports for simplicity + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") """ + name: pulumi.Input[str] elif False: GatewaytemplateNetworkVpnAccessStaticNatArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type class GatewaytemplateNetworkVpnAccessStaticNatArgs: def __init__(__self__, *, - internal_ip: Optional[pulumi.Input[str]] = None, - name: Optional[pulumi.Input[str]] = None, - wan_name: Optional[pulumi.Input[str]] = None): + internal_ip: pulumi.Input[str], + name: pulumi.Input[str]): """ - :param pulumi.Input[str] wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param pulumi.Input[str] internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) - if wan_name is not None: - pulumi.set(__self__, "wan_name", wan_name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[pulumi.Input[str]]: + def internal_ip(self) -> pulumi.Input[str]: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter - def internal_ip(self, value: Optional[pulumi.Input[str]]): + def internal_ip(self, value: pulumi.Input[str]): pulumi.set(self, "internal_ip", value) @property @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: + def name(self) -> pulumi.Input[str]: return pulumi.get(self, "name") @name.setter - def name(self, value: Optional[pulumi.Input[str]]): + def name(self, value: pulumi.Input[str]): pulumi.set(self, "name", value) - @property - @pulumi.getter(name="wanName") - def wan_name(self) -> Optional[pulumi.Input[str]]: - """ - If not set, we configure the nat policies against all WAN ports for simplicity - """ - return pulumi.get(self, "wan_name") - - @wan_name.setter - def wan_name(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "wan_name", value) - if not MYPY: class GatewaytemplateOobIpConfigArgsDict(TypedDict): @@ -13500,9 +13869,7 @@ class GatewaytemplatePortConfigArgsDict(TypedDict): """ ae_lacp_force_up: NotRequired[pulumi.Input[bool]] """ - For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only """ aggregated: NotRequired[pulumi.Input[bool]] critical: NotRequired[pulumi.Input[bool]] @@ -13510,6 +13877,9 @@ class GatewaytemplatePortConfigArgsDict(TypedDict): if want to generate port up/down alarm, set it to true """ description: NotRequired[pulumi.Input[str]] + """ + Interface Description. Can be a variable (i.e. "{{myvar}}") + """ disable_autoneg: NotRequired[pulumi.Input[bool]] disabled: NotRequired[pulumi.Input[bool]] """ @@ -13521,13 +13891,11 @@ class GatewaytemplatePortConfigArgsDict(TypedDict): """ dsl_vci: NotRequired[pulumi.Input[int]] """ - if `wan_type`==`dsl` - 16 bit int + if `wan_type`==`dsl`, 16 bit int """ dsl_vpi: NotRequired[pulumi.Input[int]] """ - if `wan_type`==`dsl` - 8 bit int + if `wan_type`==`dsl`, 8 bit int """ duplex: NotRequired[pulumi.Input[str]] """ @@ -13561,7 +13929,7 @@ class GatewaytemplatePortConfigArgsDict(TypedDict): """ networks: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - if `usage`==`lan` + if `usage`==`lan`, name of the `org.Network` resource """ outer_vlan_id: NotRequired[pulumi.Input[int]] """ @@ -13570,7 +13938,7 @@ class GatewaytemplatePortConfigArgsDict(TypedDict): poe_disabled: NotRequired[pulumi.Input[bool]] port_network: NotRequired[pulumi.Input[str]] """ - if `usage`==`lan` + Only for SRX and if `usage`==`lan`, the Untagged VLAN Network """ preserve_dscp: NotRequired[pulumi.Input[bool]] """ @@ -13602,37 +13970,38 @@ class GatewaytemplatePortConfigArgsDict(TypedDict): for SSR only """ traffic_shaping: NotRequired[pulumi.Input['GatewaytemplatePortConfigTrafficShapingArgsDict']] - vlan_id: NotRequired[pulumi.Input[int]] - """ - if WAN interface is on a VLAN - """ + vlan_id: NotRequired[pulumi.Input[str]] vpn_paths: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigVpnPathsArgsDict']]]] """ Property key is the VPN name """ wan_arp_policer: NotRequired[pulumi.Input[str]] """ - when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` """ wan_ext_ip: NotRequired[pulumi.Input[str]] """ - optional, if spoke should reach this port by a different IP + Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP """ wan_extra_routes: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigWanExtraRoutesArgsDict']]]] """ - Property Key is the destianation CIDR (e.g "100.100.100.0/24") + Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") + """ + wan_networks: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + """ + Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined """ wan_probe_override: NotRequired[pulumi.Input['GatewaytemplatePortConfigWanProbeOverrideArgsDict']] """ - if `usage`==`wan` + Only if `usage`==`wan` """ wan_source_nat: NotRequired[pulumi.Input['GatewaytemplatePortConfigWanSourceNatArgsDict']] """ - optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip """ wan_type: NotRequired[pulumi.Input[str]] """ - if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ elif False: GatewaytemplatePortConfigArgsDict: TypeAlias = Mapping[str, Any] @@ -13674,11 +14043,12 @@ def __init__(__self__, *, ssr_no_virtual_mac: Optional[pulumi.Input[bool]] = None, svr_port_range: Optional[pulumi.Input[str]] = None, traffic_shaping: Optional[pulumi.Input['GatewaytemplatePortConfigTrafficShapingArgs']] = None, - vlan_id: Optional[pulumi.Input[int]] = None, + vlan_id: Optional[pulumi.Input[str]] = None, vpn_paths: Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigVpnPathsArgs']]]] = None, wan_arp_policer: Optional[pulumi.Input[str]] = None, wan_ext_ip: Optional[pulumi.Input[str]] = None, wan_extra_routes: Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigWanExtraRoutesArgs']]]] = None, + wan_networks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, wan_probe_override: Optional[pulumi.Input['GatewaytemplatePortConfigWanProbeOverrideArgs']] = None, wan_source_nat: Optional[pulumi.Input['GatewaytemplatePortConfigWanSourceNatArgs']] = None, wan_type: Optional[pulumi.Input[str]] = None): @@ -13686,16 +14056,13 @@ def __init__(__self__, *, :param pulumi.Input[str] usage: port usage name. enum: `ha_control`, `ha_data`, `lan`, `wan` :param pulumi.Input[bool] ae_disable_lacp: if `aggregated`==`true`. To disable LCP support for the AE interface :param pulumi.Input[str] ae_idx: if `aggregated`==`true`. Users could force to use the designated AE name (must be an integer between 0 and 127) - :param pulumi.Input[bool] ae_lacp_force_up: For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + :param pulumi.Input[bool] ae_lacp_force_up: For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only :param pulumi.Input[bool] critical: if want to generate port up/down alarm, set it to true + :param pulumi.Input[str] description: Interface Description. Can be a variable (i.e. "{{myvar}}") :param pulumi.Input[bool] disabled: port admin up (true) / down (false) :param pulumi.Input[str] dsl_type: if `wan_type`==`dsl`. enum: `adsl`, `vdsl` - :param pulumi.Input[int] dsl_vci: if `wan_type`==`dsl` - 16 bit int - :param pulumi.Input[int] dsl_vpi: if `wan_type`==`dsl` - 8 bit int + :param pulumi.Input[int] dsl_vci: if `wan_type`==`dsl`, 16 bit int + :param pulumi.Input[int] dsl_vpi: if `wan_type`==`dsl`, 8 bit int :param pulumi.Input[str] duplex: enum: `auto`, `full`, `half` :param pulumi.Input['GatewaytemplatePortConfigIpConfigArgs'] ip_config: Junos IP Config :param pulumi.Input[str] lte_apn: if `wan_type`==`lte` @@ -13703,9 +14070,9 @@ def __init__(__self__, *, :param pulumi.Input[str] lte_password: if `wan_type`==`lte` :param pulumi.Input[str] lte_username: if `wan_type`==`lte` :param pulumi.Input[str] name: name that we'll use to derive config - :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: if `usage`==`lan` + :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: if `usage`==`lan`, name of the `org.Network` resource :param pulumi.Input[int] outer_vlan_id: for Q-in-Q - :param pulumi.Input[str] port_network: if `usage`==`lan` + :param pulumi.Input[str] port_network: Only for SRX and if `usage`==`lan`, the Untagged VLAN Network :param pulumi.Input[bool] preserve_dscp: whether to preserve dscp when sending traffic over VPN (SSR-only) :param pulumi.Input[bool] redundant: if HA mode :param pulumi.Input[int] reth_idx: if HA mode @@ -13713,14 +14080,14 @@ def __init__(__self__, *, :param pulumi.Input[Sequence[pulumi.Input[str]]] reth_nodes: SSR only - supporting vlan-based redundancy (matching the size of `networks`) :param pulumi.Input[bool] ssr_no_virtual_mac: when SSR is running as VM, this is required on certain hosting platforms :param pulumi.Input[str] svr_port_range: for SSR only - :param pulumi.Input[int] vlan_id: if WAN interface is on a VLAN :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigVpnPathsArgs']]] vpn_paths: Property key is the VPN name - :param pulumi.Input[str] wan_arp_policer: when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` - :param pulumi.Input[str] wan_ext_ip: optional, if spoke should reach this port by a different IP - :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigWanExtraRoutesArgs']]] wan_extra_routes: Property Key is the destianation CIDR (e.g "100.100.100.0/24") - :param pulumi.Input['GatewaytemplatePortConfigWanProbeOverrideArgs'] wan_probe_override: if `usage`==`wan` - :param pulumi.Input['GatewaytemplatePortConfigWanSourceNatArgs'] wan_source_nat: optional, by default, source-NAT is performed on all WAN Ports using the interface-ip - :param pulumi.Input[str] wan_type: if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + :param pulumi.Input[str] wan_arp_policer: Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + :param pulumi.Input[str] wan_ext_ip: Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP + :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigWanExtraRoutesArgs']]] wan_extra_routes: Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") + :param pulumi.Input[Sequence[pulumi.Input[str]]] wan_networks: Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + :param pulumi.Input['GatewaytemplatePortConfigWanProbeOverrideArgs'] wan_probe_override: Only if `usage`==`wan` + :param pulumi.Input['GatewaytemplatePortConfigWanSourceNatArgs'] wan_source_nat: Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip + :param pulumi.Input[str] wan_type: Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ pulumi.set(__self__, "usage", usage) if ae_disable_lacp is not None: @@ -13799,6 +14166,8 @@ def __init__(__self__, *, pulumi.set(__self__, "wan_ext_ip", wan_ext_ip) if wan_extra_routes is not None: pulumi.set(__self__, "wan_extra_routes", wan_extra_routes) + if wan_networks is not None: + pulumi.set(__self__, "wan_networks", wan_networks) if wan_probe_override is not None: pulumi.set(__self__, "wan_probe_override", wan_probe_override) if wan_source_nat is not None: @@ -13846,9 +14215,7 @@ def ae_idx(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="aeLacpForceUp") def ae_lacp_force_up(self) -> Optional[pulumi.Input[bool]]: """ - For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only """ return pulumi.get(self, "ae_lacp_force_up") @@ -13880,6 +14247,9 @@ def critical(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def description(self) -> Optional[pulumi.Input[str]]: + """ + Interface Description. Can be a variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "description") @description.setter @@ -13923,8 +14293,7 @@ def dsl_type(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="dslVci") def dsl_vci(self) -> Optional[pulumi.Input[int]]: """ - if `wan_type`==`dsl` - 16 bit int + if `wan_type`==`dsl`, 16 bit int """ return pulumi.get(self, "dsl_vci") @@ -13936,8 +14305,7 @@ def dsl_vci(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="dslVpi") def dsl_vpi(self) -> Optional[pulumi.Input[int]]: """ - if `wan_type`==`dsl` - 8 bit int + if `wan_type`==`dsl`, 8 bit int """ return pulumi.get(self, "dsl_vpi") @@ -14051,7 +14419,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - if `usage`==`lan` + if `usage`==`lan`, name of the `org.Network` resource """ return pulumi.get(self, "networks") @@ -14084,7 +14452,7 @@ def poe_disabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="portNetwork") def port_network(self) -> Optional[pulumi.Input[str]]: """ - if `usage`==`lan` + Only for SRX and if `usage`==`lan`, the Untagged VLAN Network """ return pulumi.get(self, "port_network") @@ -14196,14 +14564,11 @@ def traffic_shaping(self, value: Optional[pulumi.Input['GatewaytemplatePortConfi @property @pulumi.getter(name="vlanId") - def vlan_id(self) -> Optional[pulumi.Input[int]]: - """ - if WAN interface is on a VLAN - """ + def vlan_id(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "vlan_id") @vlan_id.setter - def vlan_id(self, value: Optional[pulumi.Input[int]]): + def vlan_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "vlan_id", value) @property @@ -14222,7 +14587,7 @@ def vpn_paths(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Gate @pulumi.getter(name="wanArpPolicer") def wan_arp_policer(self) -> Optional[pulumi.Input[str]]: """ - when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` """ return pulumi.get(self, "wan_arp_policer") @@ -14234,7 +14599,7 @@ def wan_arp_policer(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="wanExtIp") def wan_ext_ip(self) -> Optional[pulumi.Input[str]]: """ - optional, if spoke should reach this port by a different IP + Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP """ return pulumi.get(self, "wan_ext_ip") @@ -14246,7 +14611,7 @@ def wan_ext_ip(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="wanExtraRoutes") def wan_extra_routes(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigWanExtraRoutesArgs']]]]: """ - Property Key is the destianation CIDR (e.g "100.100.100.0/24") + Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") """ return pulumi.get(self, "wan_extra_routes") @@ -14254,11 +14619,23 @@ def wan_extra_routes(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['G def wan_extra_routes(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigWanExtraRoutesArgs']]]]): pulumi.set(self, "wan_extra_routes", value) + @property + @pulumi.getter(name="wanNetworks") + def wan_networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + """ + return pulumi.get(self, "wan_networks") + + @wan_networks.setter + def wan_networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "wan_networks", value) + @property @pulumi.getter(name="wanProbeOverride") def wan_probe_override(self) -> Optional[pulumi.Input['GatewaytemplatePortConfigWanProbeOverrideArgs']]: """ - if `usage`==`wan` + Only if `usage`==`wan` """ return pulumi.get(self, "wan_probe_override") @@ -14270,7 +14647,7 @@ def wan_probe_override(self, value: Optional[pulumi.Input['GatewaytemplatePortCo @pulumi.getter(name="wanSourceNat") def wan_source_nat(self) -> Optional[pulumi.Input['GatewaytemplatePortConfigWanSourceNatArgs']]: """ - optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip """ return pulumi.get(self, "wan_source_nat") @@ -14282,7 +14659,7 @@ def wan_source_nat(self, value: Optional[pulumi.Input['GatewaytemplatePortConfig @pulumi.getter(name="wanType") def wan_type(self) -> Optional[pulumi.Input[str]]: """ - if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ return pulumi.get(self, "wan_type") @@ -14303,12 +14680,15 @@ class GatewaytemplatePortConfigIpConfigArgsDict(TypedDict): """ gateway: NotRequired[pulumi.Input[str]] """ - except for out-of_band interface (vme/em0/fxp0) + except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") """ ip: NotRequired[pulumi.Input[str]] + """ + Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + """ netmask: NotRequired[pulumi.Input[str]] """ - used only if `subnet` is not specified in `networks` + used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") """ network: NotRequired[pulumi.Input[str]] """ @@ -14349,8 +14729,9 @@ def __init__(__self__, *, """ :param pulumi.Input[Sequence[pulumi.Input[str]]] dns: except for out-of_band interface (vme/em0/fxp0) :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: except for out-of_band interface (vme/em0/fxp0) - :param pulumi.Input[str] gateway: except for out-of_band interface (vme/em0/fxp0) - :param pulumi.Input[str] netmask: used only if `subnet` is not specified in `networks` + :param pulumi.Input[str] gateway: except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] ip: Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] netmask: used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") :param pulumi.Input[str] network: optional, the network to be used for mgmt :param pulumi.Input[str] poser_password: if `type`==`pppoe` :param pulumi.Input[str] pppoe_auth: if `type`==`pppoe`. enum: `chap`, `none`, `pap` @@ -14406,7 +14787,7 @@ def dns_suffixes(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]] @pulumi.getter def gateway(self) -> Optional[pulumi.Input[str]]: """ - except for out-of_band interface (vme/em0/fxp0) + except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "gateway") @@ -14417,6 +14798,9 @@ def gateway(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def ip(self) -> Optional[pulumi.Input[str]]: + """ + Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "ip") @ip.setter @@ -14427,7 +14811,7 @@ def ip(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def netmask(self) -> Optional[pulumi.Input[str]]: """ - used only if `subnet` is not specified in `networks` + used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "netmask") @@ -14500,10 +14884,13 @@ def type(self, value: Optional[pulumi.Input[str]]): class GatewaytemplatePortConfigTrafficShapingArgsDict(TypedDict): class_percentages: NotRequired[pulumi.Input[Sequence[pulumi.Input[int]]]] """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ enabled: NotRequired[pulumi.Input[bool]] + max_tx_kbps: NotRequired[pulumi.Input[int]] + """ + Interface Transmit Cap in kbps + """ elif False: GatewaytemplatePortConfigTrafficShapingArgsDict: TypeAlias = Mapping[str, Any] @@ -14511,22 +14898,24 @@ class GatewaytemplatePortConfigTrafficShapingArgsDict(TypedDict): class GatewaytemplatePortConfigTrafficShapingArgs: def __init__(__self__, *, class_percentages: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None, - enabled: Optional[pulumi.Input[bool]] = None): + enabled: Optional[pulumi.Input[bool]] = None, + max_tx_kbps: Optional[pulumi.Input[int]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[int]]] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + :param pulumi.Input[Sequence[pulumi.Input[int]]] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 + :param pulumi.Input[int] max_tx_kbps: Interface Transmit Cap in kbps """ if class_percentages is not None: pulumi.set(__self__, "class_percentages", class_percentages) if enabled is not None: pulumi.set(__self__, "enabled", enabled) + if max_tx_kbps is not None: + pulumi.set(__self__, "max_tx_kbps", max_tx_kbps) @property @pulumi.getter(name="classPercentages") def class_percentages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]: """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ return pulumi.get(self, "class_percentages") @@ -14543,6 +14932,18 @@ def enabled(self) -> Optional[pulumi.Input[bool]]: def enabled(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "enabled", value) + @property + @pulumi.getter(name="maxTxKbps") + def max_tx_kbps(self) -> Optional[pulumi.Input[int]]: + """ + Interface Transmit Cap in kbps + """ + return pulumi.get(self, "max_tx_kbps") + + @max_tx_kbps.setter + def max_tx_kbps(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "max_tx_kbps", value) + if not MYPY: class GatewaytemplatePortConfigVpnPathsArgsDict(TypedDict): @@ -14673,10 +15074,13 @@ def traffic_shaping(self, value: Optional[pulumi.Input['GatewaytemplatePortConfi class GatewaytemplatePortConfigVpnPathsTrafficShapingArgsDict(TypedDict): class_percentages: NotRequired[pulumi.Input[Sequence[pulumi.Input[int]]]] """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ enabled: NotRequired[pulumi.Input[bool]] + max_tx_kbps: NotRequired[pulumi.Input[int]] + """ + Interface Transmit Cap in kbps + """ elif False: GatewaytemplatePortConfigVpnPathsTrafficShapingArgsDict: TypeAlias = Mapping[str, Any] @@ -14684,22 +15088,24 @@ class GatewaytemplatePortConfigVpnPathsTrafficShapingArgsDict(TypedDict): class GatewaytemplatePortConfigVpnPathsTrafficShapingArgs: def __init__(__self__, *, class_percentages: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None, - enabled: Optional[pulumi.Input[bool]] = None): + enabled: Optional[pulumi.Input[bool]] = None, + max_tx_kbps: Optional[pulumi.Input[int]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[int]]] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + :param pulumi.Input[Sequence[pulumi.Input[int]]] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 + :param pulumi.Input[int] max_tx_kbps: Interface Transmit Cap in kbps """ if class_percentages is not None: pulumi.set(__self__, "class_percentages", class_percentages) if enabled is not None: pulumi.set(__self__, "enabled", enabled) + if max_tx_kbps is not None: + pulumi.set(__self__, "max_tx_kbps", max_tx_kbps) @property @pulumi.getter(name="classPercentages") def class_percentages(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]: """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ return pulumi.get(self, "class_percentages") @@ -14716,6 +15122,18 @@ def enabled(self) -> Optional[pulumi.Input[bool]]: def enabled(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "enabled", value) + @property + @pulumi.getter(name="maxTxKbps") + def max_tx_kbps(self) -> Optional[pulumi.Input[int]]: + """ + Interface Transmit Cap in kbps + """ + return pulumi.get(self, "max_tx_kbps") + + @max_tx_kbps.setter + def max_tx_kbps(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "max_tx_kbps", value) + if not MYPY: class GatewaytemplatePortConfigWanExtraRoutesArgsDict(TypedDict): @@ -14929,6 +15347,10 @@ class GatewaytemplateRoutingPoliciesTermActionArgsDict(TypedDict): """ for SSR, hub decides how VRF routes are leaked on spoke """ + aggregates: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + """ + route aggregation + """ communities: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ when used as export policy, optional @@ -14959,6 +15381,7 @@ def __init__(__self__, *, accept: Optional[pulumi.Input[bool]] = None, add_communities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, add_target_vrfs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + aggregates: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, communities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, exclude_as_paths: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, exclude_communities: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -14967,6 +15390,7 @@ def __init__(__self__, *, prepend_as_paths: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ :param pulumi.Input[Sequence[pulumi.Input[str]]] add_target_vrfs: for SSR, hub decides how VRF routes are leaked on spoke + :param pulumi.Input[Sequence[pulumi.Input[str]]] aggregates: route aggregation :param pulumi.Input[Sequence[pulumi.Input[str]]] communities: when used as export policy, optional :param pulumi.Input[Sequence[pulumi.Input[str]]] exclude_as_paths: when used as export policy, optional. To exclude certain AS :param pulumi.Input[Sequence[pulumi.Input[str]]] export_communitites: when used as export policy, optional @@ -14979,6 +15403,8 @@ def __init__(__self__, *, pulumi.set(__self__, "add_communities", add_communities) if add_target_vrfs is not None: pulumi.set(__self__, "add_target_vrfs", add_target_vrfs) + if aggregates is not None: + pulumi.set(__self__, "aggregates", aggregates) if communities is not None: pulumi.set(__self__, "communities", communities) if exclude_as_paths is not None: @@ -15022,6 +15448,18 @@ def add_target_vrfs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] def add_target_vrfs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "add_target_vrfs", value) + @property + @pulumi.getter + def aggregates(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + """ + route aggregation + """ + return pulumi.get(self, "aggregates") + + @aggregates.setter + def aggregates(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "aggregates", value) + @property @pulumi.getter def communities(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: @@ -15116,8 +15554,7 @@ class GatewaytemplateRoutingPoliciesTermMatchingArgsDict(TypedDict): vpn_path_sla: NotRequired[pulumi.Input['GatewaytemplateRoutingPoliciesTermMatchingVpnPathSlaArgsDict']] vpn_paths: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ elif False: GatewaytemplateRoutingPoliciesTermMatchingArgsDict: TypeAlias = Mapping[str, Any] @@ -15139,8 +15576,7 @@ def __init__(__self__, *, :param pulumi.Input[Sequence[pulumi.Input[str]]] prefixes: zero or more criteria/filter can be specified to match the term, all criteria have to be met :param pulumi.Input[Sequence[pulumi.Input[str]]] protocols: `direct`, `bgp`, `osp`, ... :param pulumi.Input[Sequence[pulumi.Input[str]]] vpn_neighbor_macs: overlay-facing criteria (used for bgp_config where via=vpn) - :param pulumi.Input[Sequence[pulumi.Input[str]]] vpn_paths: overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + :param pulumi.Input[Sequence[pulumi.Input[str]]] vpn_paths: overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ if as_paths is not None: pulumi.set(__self__, "as_paths", as_paths) @@ -15249,8 +15685,7 @@ def vpn_path_sla(self, value: Optional[pulumi.Input['GatewaytemplateRoutingPolic @pulumi.getter(name="vpnPaths") def vpn_paths(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ return pulumi.get(self, "vpn_paths") @@ -15264,8 +15699,7 @@ class GatewaytemplateRoutingPoliciesTermMatchingRouteExistsArgsDict(TypedDict): route: NotRequired[pulumi.Input[str]] vrf_name: NotRequired[pulumi.Input[str]] """ - name of the vrf instance - it can also be the name of the VPN or wan if they + name of the vrf instance, it can also be the name of the VPN or wan if they """ elif False: GatewaytemplateRoutingPoliciesTermMatchingRouteExistsArgsDict: TypeAlias = Mapping[str, Any] @@ -15276,8 +15710,7 @@ def __init__(__self__, *, route: Optional[pulumi.Input[str]] = None, vrf_name: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] vrf_name: name of the vrf instance - it can also be the name of the VPN or wan if they + :param pulumi.Input[str] vrf_name: name of the vrf instance, it can also be the name of the VPN or wan if they """ if route is not None: pulumi.set(__self__, "route", route) @@ -15297,8 +15730,7 @@ def route(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="vrfName") def vrf_name(self) -> Optional[pulumi.Input[str]]: """ - name of the vrf instance - it can also be the name of the VPN or wan if they + name of the vrf instance, it can also be the name of the VPN or wan if they """ return pulumi.get(self, "vrf_name") @@ -15378,8 +15810,7 @@ class GatewaytemplateServicePolicyArgsDict(TypedDict): """ path_preference: NotRequired[pulumi.Input[str]] """ - by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` """ servicepolicy_id: NotRequired[pulumi.Input[str]] """ @@ -15414,8 +15845,7 @@ def __init__(__self__, *, :param pulumi.Input['GatewaytemplateServicePolicyAppqoeArgs'] appqoe: For SRX Only :param pulumi.Input[bool] local_routing: access within the same VRF :param pulumi.Input[str] name: Required when `servicepolicy_id` is not defined, optional otherwise (override the servicepolicy name) - :param pulumi.Input[str] path_preference: by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + :param pulumi.Input[str] path_preference: by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` :param pulumi.Input[str] servicepolicy_id: used to link servicepolicy defined at org level and overwrite some attributes :param pulumi.Input[Sequence[pulumi.Input[str]]] services: Required when `servicepolicy_id` is not defined. List of Applications / Desctinations :param pulumi.Input[Sequence[pulumi.Input[str]]] tenants: Required when `servicepolicy_id` is not defined. List of Networks / Users @@ -15511,8 +15941,7 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="pathPreference") def path_preference(self) -> Optional[pulumi.Input[str]]: """ - by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` """ return pulumi.get(self, "path_preference") @@ -15734,63 +16163,63 @@ class GatewaytemplateTunnelConfigsArgsDict(TypedDict): auto_provision: NotRequired[pulumi.Input['GatewaytemplateTunnelConfigsAutoProvisionArgsDict']] ike_lifetime: NotRequired[pulumi.Input[int]] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ ike_mode: NotRequired[pulumi.Input[str]] """ - Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` """ ike_proposals: NotRequired[pulumi.Input[Sequence[pulumi.Input['GatewaytemplateTunnelConfigsIkeProposalArgsDict']]]] """ - if `provider`== `custom-ipsec` + if `provider`==`custom-ipsec` """ ipsec_lifetime: NotRequired[pulumi.Input[int]] """ - if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ ipsec_proposals: NotRequired[pulumi.Input[Sequence[pulumi.Input['GatewaytemplateTunnelConfigsIpsecProposalArgsDict']]]] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ local_id: NotRequired[pulumi.Input[str]] """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ mode: NotRequired[pulumi.Input[str]] """ - enum: `active-active`, `active-standby` + Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` """ networks: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - networks reachable via this tunnel + if `provider`==`custom-ipsec`, networks reachable via this tunnel """ primary: NotRequired[pulumi.Input['GatewaytemplateTunnelConfigsPrimaryArgsDict']] + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ probe: NotRequired[pulumi.Input['GatewaytemplateTunnelConfigsProbeArgsDict']] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ protocol: NotRequired[pulumi.Input[str]] """ - Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` """ provider: NotRequired[pulumi.Input[str]] """ - enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` """ psk: NotRequired[pulumi.Input[str]] """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ secondary: NotRequired[pulumi.Input['GatewaytemplateTunnelConfigsSecondaryArgsDict']] + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ version: NotRequired[pulumi.Input[str]] """ - Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ elif False: GatewaytemplateTunnelConfigsArgsDict: TypeAlias = Mapping[str, Any] @@ -15815,25 +16244,21 @@ def __init__(__self__, *, secondary: Optional[pulumi.Input['GatewaytemplateTunnelConfigsSecondaryArgs']] = None, version: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[int] ike_lifetime: Only if `provider`== `custom-ipsec` - :param pulumi.Input[str] ike_mode: Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` - :param pulumi.Input[Sequence[pulumi.Input['GatewaytemplateTunnelConfigsIkeProposalArgs']]] ike_proposals: if `provider`== `custom-ipsec` - :param pulumi.Input[int] ipsec_lifetime: if `provider`== `custom-ipsec` - :param pulumi.Input[Sequence[pulumi.Input['GatewaytemplateTunnelConfigsIpsecProposalArgs']]] ipsec_proposals: Only if `provider`== `custom-ipsec` - :param pulumi.Input[str] local_id: Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` - :param pulumi.Input[str] mode: enum: `active-active`, `active-standby` - :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: networks reachable via this tunnel - :param pulumi.Input['GatewaytemplateTunnelConfigsProbeArgs'] probe: Only if `provider`== `custom-ipsec` - :param pulumi.Input[str] protocol: Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` - :param pulumi.Input[str] provider: enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` - :param pulumi.Input[str] psk: Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` - :param pulumi.Input[str] version: Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + :param pulumi.Input[int] ike_lifetime: Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 + :param pulumi.Input[str] ike_mode: Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` + :param pulumi.Input[Sequence[pulumi.Input['GatewaytemplateTunnelConfigsIkeProposalArgs']]] ike_proposals: if `provider`==`custom-ipsec` + :param pulumi.Input[int] ipsec_lifetime: Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 + :param pulumi.Input[Sequence[pulumi.Input['GatewaytemplateTunnelConfigsIpsecProposalArgs']]] ipsec_proposals: Only if `provider`==`custom-ipsec` + :param pulumi.Input[str] local_id: Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param pulumi.Input[str] mode: Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` + :param pulumi.Input[Sequence[pulumi.Input[str]]] networks: if `provider`==`custom-ipsec`, networks reachable via this tunnel + :param pulumi.Input['GatewaytemplateTunnelConfigsPrimaryArgs'] primary: Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param pulumi.Input['GatewaytemplateTunnelConfigsProbeArgs'] probe: Only if `provider`==`custom-ipsec` + :param pulumi.Input[str] protocol: Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` + :param pulumi.Input[str] provider: Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + :param pulumi.Input[str] psk: Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param pulumi.Input['GatewaytemplateTunnelConfigsSecondaryArgs'] secondary: Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param pulumi.Input[str] version: Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ if auto_provision is not None: pulumi.set(__self__, "auto_provision", auto_provision) @@ -15881,7 +16306,7 @@ def auto_provision(self, value: Optional[pulumi.Input['GatewaytemplateTunnelConf @pulumi.getter(name="ikeLifetime") def ike_lifetime(self) -> Optional[pulumi.Input[int]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ return pulumi.get(self, "ike_lifetime") @@ -15893,7 +16318,7 @@ def ike_lifetime(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="ikeMode") def ike_mode(self) -> Optional[pulumi.Input[str]]: """ - Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` """ return pulumi.get(self, "ike_mode") @@ -15905,7 +16330,7 @@ def ike_mode(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="ikeProposals") def ike_proposals(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['GatewaytemplateTunnelConfigsIkeProposalArgs']]]]: """ - if `provider`== `custom-ipsec` + if `provider`==`custom-ipsec` """ return pulumi.get(self, "ike_proposals") @@ -15917,7 +16342,7 @@ def ike_proposals(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Gate @pulumi.getter(name="ipsecLifetime") def ipsec_lifetime(self) -> Optional[pulumi.Input[int]]: """ - if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ return pulumi.get(self, "ipsec_lifetime") @@ -15929,7 +16354,7 @@ def ipsec_lifetime(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="ipsecProposals") def ipsec_proposals(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['GatewaytemplateTunnelConfigsIpsecProposalArgs']]]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ return pulumi.get(self, "ipsec_proposals") @@ -15941,10 +16366,7 @@ def ipsec_proposals(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Ga @pulumi.getter(name="localId") def local_id(self) -> Optional[pulumi.Input[str]]: """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "local_id") @@ -15956,7 +16378,7 @@ def local_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def mode(self) -> Optional[pulumi.Input[str]]: """ - enum: `active-active`, `active-standby` + Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` """ return pulumi.get(self, "mode") @@ -15968,7 +16390,7 @@ def mode(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def networks(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - networks reachable via this tunnel + if `provider`==`custom-ipsec`, networks reachable via this tunnel """ return pulumi.get(self, "networks") @@ -15979,6 +16401,9 @@ def networks(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @property @pulumi.getter def primary(self) -> Optional[pulumi.Input['GatewaytemplateTunnelConfigsPrimaryArgs']]: + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ return pulumi.get(self, "primary") @primary.setter @@ -15989,7 +16414,7 @@ def primary(self, value: Optional[pulumi.Input['GatewaytemplateTunnelConfigsPrim @pulumi.getter def probe(self) -> Optional[pulumi.Input['GatewaytemplateTunnelConfigsProbeArgs']]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ return pulumi.get(self, "probe") @@ -16001,7 +16426,7 @@ def probe(self, value: Optional[pulumi.Input['GatewaytemplateTunnelConfigsProbeA @pulumi.getter def protocol(self) -> Optional[pulumi.Input[str]]: """ - Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` """ return pulumi.get(self, "protocol") @@ -16013,7 +16438,7 @@ def protocol(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def provider(self) -> Optional[pulumi.Input[str]]: """ - enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` """ return pulumi.get(self, "provider") @@ -16025,10 +16450,7 @@ def provider(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def psk(self) -> Optional[pulumi.Input[str]]: """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "psk") @@ -16039,6 +16461,9 @@ def psk(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def secondary(self) -> Optional[pulumi.Input['GatewaytemplateTunnelConfigsSecondaryArgs']]: + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ return pulumi.get(self, "secondary") @secondary.setter @@ -16049,7 +16474,7 @@ def secondary(self, value: Optional[pulumi.Input['GatewaytemplateTunnelConfigsSe @pulumi.getter def version(self) -> Optional[pulumi.Input[str]]: """ - Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ return pulumi.get(self, "version") @@ -16060,9 +16485,20 @@ def version(self, value: Optional[pulumi.Input[str]]): if not MYPY: class GatewaytemplateTunnelConfigsAutoProvisionArgsDict(TypedDict): + provider: pulumi.Input[str] + """ + enum: `jse-ipsec`, `zscaler-ipsec` + """ enable: NotRequired[pulumi.Input[bool]] latlng: NotRequired[pulumi.Input['GatewaytemplateTunnelConfigsAutoProvisionLatlngArgsDict']] + """ + API override for POP selection + """ primary: NotRequired[pulumi.Input['GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgsDict']] + region: NotRequired[pulumi.Input[str]] + """ + API override for POP selection + """ secondary: NotRequired[pulumi.Input['GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgsDict']] elif False: GatewaytemplateTunnelConfigsAutoProvisionArgsDict: TypeAlias = Mapping[str, Any] @@ -16070,19 +16506,41 @@ class GatewaytemplateTunnelConfigsAutoProvisionArgsDict(TypedDict): @pulumi.input_type class GatewaytemplateTunnelConfigsAutoProvisionArgs: def __init__(__self__, *, + provider: pulumi.Input[str], enable: Optional[pulumi.Input[bool]] = None, latlng: Optional[pulumi.Input['GatewaytemplateTunnelConfigsAutoProvisionLatlngArgs']] = None, primary: Optional[pulumi.Input['GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs']] = None, + region: Optional[pulumi.Input[str]] = None, secondary: Optional[pulumi.Input['GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs']] = None): + """ + :param pulumi.Input[str] provider: enum: `jse-ipsec`, `zscaler-ipsec` + :param pulumi.Input['GatewaytemplateTunnelConfigsAutoProvisionLatlngArgs'] latlng: API override for POP selection + :param pulumi.Input[str] region: API override for POP selection + """ + pulumi.set(__self__, "provider", provider) if enable is not None: pulumi.set(__self__, "enable", enable) if latlng is not None: pulumi.set(__self__, "latlng", latlng) if primary is not None: pulumi.set(__self__, "primary", primary) + if region is not None: + pulumi.set(__self__, "region", region) if secondary is not None: pulumi.set(__self__, "secondary", secondary) + @property + @pulumi.getter + def provider(self) -> pulumi.Input[str]: + """ + enum: `jse-ipsec`, `zscaler-ipsec` + """ + return pulumi.get(self, "provider") + + @provider.setter + def provider(self, value: pulumi.Input[str]): + pulumi.set(self, "provider", value) + @property @pulumi.getter def enable(self) -> Optional[pulumi.Input[bool]]: @@ -16095,6 +16553,9 @@ def enable(self, value: Optional[pulumi.Input[bool]]): @property @pulumi.getter def latlng(self) -> Optional[pulumi.Input['GatewaytemplateTunnelConfigsAutoProvisionLatlngArgs']]: + """ + API override for POP selection + """ return pulumi.get(self, "latlng") @latlng.setter @@ -16110,6 +16571,18 @@ def primary(self) -> Optional[pulumi.Input['GatewaytemplateTunnelConfigsAutoProv def primary(self, value: Optional[pulumi.Input['GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs']]): pulumi.set(self, "primary", value) + @property + @pulumi.getter + def region(self) -> Optional[pulumi.Input[str]]: + """ + API override for POP selection + """ + return pulumi.get(self, "region") + + @region.setter + def region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "region", value) + @property @pulumi.getter def secondary(self) -> Optional[pulumi.Input['GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs']]: @@ -16156,7 +16629,7 @@ def lng(self, value: pulumi.Input[float]): if not MYPY: class GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgsDict(TypedDict): - num_hosts: NotRequired[pulumi.Input[str]] + probe_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] wan_names: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ optional, only needed if `vars_only`==`false` @@ -16167,24 +16640,24 @@ class GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgsDict(TypedDict): @pulumi.input_type class GatewaytemplateTunnelConfigsAutoProvisionPrimaryArgs: def __init__(__self__, *, - num_hosts: Optional[pulumi.Input[str]] = None, + probe_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, wan_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ :param pulumi.Input[Sequence[pulumi.Input[str]]] wan_names: optional, only needed if `vars_only`==`false` """ - if num_hosts is not None: - pulumi.set(__self__, "num_hosts", num_hosts) + if probe_ips is not None: + pulumi.set(__self__, "probe_ips", probe_ips) if wan_names is not None: pulumi.set(__self__, "wan_names", wan_names) @property - @pulumi.getter(name="numHosts") - def num_hosts(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "num_hosts") + @pulumi.getter(name="probeIps") + def probe_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "probe_ips") - @num_hosts.setter - def num_hosts(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "num_hosts", value) + @probe_ips.setter + def probe_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "probe_ips", value) @property @pulumi.getter(name="wanNames") @@ -16201,7 +16674,7 @@ def wan_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): if not MYPY: class GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgsDict(TypedDict): - num_hosts: NotRequired[pulumi.Input[str]] + probe_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] wan_names: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ optional, only needed if `vars_only`==`false` @@ -16212,24 +16685,24 @@ class GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgsDict(TypedDict): @pulumi.input_type class GatewaytemplateTunnelConfigsAutoProvisionSecondaryArgs: def __init__(__self__, *, - num_hosts: Optional[pulumi.Input[str]] = None, + probe_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, wan_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ :param pulumi.Input[Sequence[pulumi.Input[str]]] wan_names: optional, only needed if `vars_only`==`false` """ - if num_hosts is not None: - pulumi.set(__self__, "num_hosts", num_hosts) + if probe_ips is not None: + pulumi.set(__self__, "probe_ips", probe_ips) if wan_names is not None: pulumi.set(__self__, "wan_names", wan_names) @property - @pulumi.getter(name="numHosts") - def num_hosts(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "num_hosts") + @pulumi.getter(name="probeIps") + def probe_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + return pulumi.get(self, "probe_ips") - @num_hosts.setter - def num_hosts(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "num_hosts", value) + @probe_ips.setter + def probe_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + pulumi.set(self, "probe_ips", value) @property @pulumi.getter(name="wanNames") @@ -16354,7 +16827,7 @@ class GatewaytemplateTunnelConfigsIpsecProposalArgsDict(TypedDict): """ dh_group: NotRequired[pulumi.Input[str]] """ - Only if `provider`== `custom-ipsec`. enum: + Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -16381,7 +16854,7 @@ def __init__(__self__, *, enc_algo: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[str] auth_algo: enum: `md5`, `sha1`, `sha2` - :param pulumi.Input[str] dh_group: Only if `provider`== `custom-ipsec`. enum: + :param pulumi.Input[str] dh_group: Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -16417,7 +16890,7 @@ def auth_algo(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="dhGroup") def dh_group(self) -> Optional[pulumi.Input[str]]: """ - Only if `provider`== `custom-ipsec`. enum: + Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -16450,63 +16923,64 @@ def enc_algo(self, value: Optional[pulumi.Input[str]]): if not MYPY: class GatewaytemplateTunnelConfigsPrimaryArgsDict(TypedDict): - hosts: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + hosts: pulumi.Input[Sequence[pulumi.Input[str]]] + wan_names: pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ probe_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] remote_ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - wan_names: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] elif False: GatewaytemplateTunnelConfigsPrimaryArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type class GatewaytemplateTunnelConfigsPrimaryArgs: def __init__(__self__, *, - hosts: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + hosts: pulumi.Input[Sequence[pulumi.Input[str]]], + wan_names: pulumi.Input[Sequence[pulumi.Input[str]]], internal_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, probe_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - remote_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - wan_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + remote_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` - :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_ids: Only if `provider`== `custom-ipsec` + :param pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` + :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_ids: Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - if hosts is not None: - pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "wan_names", wan_names) if internal_ips is not None: pulumi.set(__self__, "internal_ips", internal_ips) if probe_ips is not None: pulumi.set(__self__, "probe_ips", probe_ips) if remote_ids is not None: pulumi.set(__self__, "remote_ids", remote_ids) - if wan_names is not None: - pulumi.set(__self__, "wan_names", wan_names) @property @pulumi.getter - def hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + def hosts(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: return pulumi.get(self, "hosts") @hosts.setter - def hosts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + def hosts(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): pulumi.set(self, "hosts", value) + @property + @pulumi.getter(name="wanNames") + def wan_names(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "wan_names") + + @wan_names.setter + def wan_names(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "wan_names", value) + @property @pulumi.getter(name="internalIps") def internal_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ return pulumi.get(self, "internal_ips") @@ -16527,7 +17001,7 @@ def probe_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @pulumi.getter(name="remoteIds") def remote_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "remote_ids") @@ -16535,15 +17009,6 @@ def remote_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: def remote_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "remote_ids", value) - @property - @pulumi.getter(name="wanNames") - def wan_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - return pulumi.get(self, "wan_names") - - @wan_names.setter - def wan_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): - pulumi.set(self, "wan_names", value) - if not MYPY: class GatewaytemplateTunnelConfigsProbeArgsDict(TypedDict): @@ -16639,63 +17104,64 @@ def type(self, value: Optional[pulumi.Input[str]]): if not MYPY: class GatewaytemplateTunnelConfigsSecondaryArgsDict(TypedDict): - hosts: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] + hosts: pulumi.Input[Sequence[pulumi.Input[str]]] + wan_names: pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ probe_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] remote_ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - wan_names: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] elif False: GatewaytemplateTunnelConfigsSecondaryArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type class GatewaytemplateTunnelConfigsSecondaryArgs: def __init__(__self__, *, - hosts: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, + hosts: pulumi.Input[Sequence[pulumi.Input[str]]], + wan_names: pulumi.Input[Sequence[pulumi.Input[str]]], internal_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, probe_ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - remote_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - wan_names: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): + remote_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` - :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_ids: Only if `provider`== `custom-ipsec` + :param pulumi.Input[Sequence[pulumi.Input[str]]] internal_ips: Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` + :param pulumi.Input[Sequence[pulumi.Input[str]]] remote_ids: Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - if hosts is not None: - pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "wan_names", wan_names) if internal_ips is not None: pulumi.set(__self__, "internal_ips", internal_ips) if probe_ips is not None: pulumi.set(__self__, "probe_ips", probe_ips) if remote_ids is not None: pulumi.set(__self__, "remote_ids", remote_ids) - if wan_names is not None: - pulumi.set(__self__, "wan_names", wan_names) @property @pulumi.getter - def hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: + def hosts(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: return pulumi.get(self, "hosts") @hosts.setter - def hosts(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): + def hosts(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): pulumi.set(self, "hosts", value) + @property + @pulumi.getter(name="wanNames") + def wan_names(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]: + return pulumi.get(self, "wan_names") + + @wan_names.setter + def wan_names(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]): + pulumi.set(self, "wan_names", value) + @property @pulumi.getter(name="internalIps") def internal_ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ return pulumi.get(self, "internal_ips") @@ -16716,7 +17182,7 @@ def probe_ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): @pulumi.getter(name="remoteIds") def remote_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "remote_ids") @@ -16724,15 +17190,6 @@ def remote_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: def remote_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): pulumi.set(self, "remote_ids", value) - @property - @pulumi.getter(name="wanNames") - def wan_names(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - return pulumi.get(self, "wan_names") - - @wan_names.setter - def wan_names(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): - pulumi.set(self, "wan_names", value) - if not MYPY: class GatewaytemplateTunnelProviderOptionsArgsDict(TypedDict): @@ -16788,29 +17245,26 @@ def zscaler(self, value: Optional[pulumi.Input['GatewaytemplateTunnelProviderOpt if not MYPY: class GatewaytemplateTunnelProviderOptionsJseArgsDict(TypedDict): - name: NotRequired[pulumi.Input[str]] num_users: NotRequired[pulumi.Input[int]] + org_name: NotRequired[pulumi.Input[str]] + """ + JSE Organization name + """ elif False: GatewaytemplateTunnelProviderOptionsJseArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type class GatewaytemplateTunnelProviderOptionsJseArgs: def __init__(__self__, *, - name: Optional[pulumi.Input[str]] = None, - num_users: Optional[pulumi.Input[int]] = None): - if name is not None: - pulumi.set(__self__, "name", name) + num_users: Optional[pulumi.Input[int]] = None, + org_name: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] org_name: JSE Organization name + """ if num_users is not None: pulumi.set(__self__, "num_users", num_users) - - @property - @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "name") - - @name.setter - def name(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "name", value) + if org_name is not None: + pulumi.set(__self__, "org_name", org_name) @property @pulumi.getter(name="numUsers") @@ -16821,41 +17275,75 @@ def num_users(self) -> Optional[pulumi.Input[int]]: def num_users(self, value: Optional[pulumi.Input[int]]): pulumi.set(self, "num_users", value) + @property + @pulumi.getter(name="orgName") + def org_name(self) -> Optional[pulumi.Input[str]]: + """ + JSE Organization name + """ + return pulumi.get(self, "org_name") + + @org_name.setter + def org_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "org_name", value) + if not MYPY: class GatewaytemplateTunnelProviderOptionsZscalerArgsDict(TypedDict): - aup_acceptance_required: NotRequired[pulumi.Input[bool]] - aup_expire: NotRequired[pulumi.Input[int]] + aup_block_internet_until_accepted: NotRequired[pulumi.Input[bool]] + aup_enabled: NotRequired[pulumi.Input[bool]] """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - aup_ssl_proxy: NotRequired[pulumi.Input[bool]] + aup_force_ssl_inspection: NotRequired[pulumi.Input[bool]] """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - download_mbps: NotRequired[pulumi.Input[int]] + aup_timeout_in_days: NotRequired[pulumi.Input[int]] """ - the download bandwidth cap of the link, in Mbps + Required if `aup_enabled`==`true`. Days before AUP is requested again """ - enable_aup: NotRequired[pulumi.Input[bool]] + auth_required: NotRequired[pulumi.Input[bool]] """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Enable this option to enforce user authentication """ - enable_caution: NotRequired[pulumi.Input[bool]] + caution_enabled: NotRequired[pulumi.Input[bool]] """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + """ + dn_bandwidth: NotRequired[pulumi.Input[float]] + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + idle_time_in_minutes: NotRequired[pulumi.Input[int]] + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + ofw_enabled: NotRequired[pulumi.Input[bool]] + """ + if `true`, enable the firewall control option """ - enforce_authentication: NotRequired[pulumi.Input[bool]] - name: NotRequired[pulumi.Input[str]] sub_locations: NotRequired[pulumi.Input[Sequence[pulumi.Input['GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgsDict']]]] """ - if `use_xff`==`true` + `sub-locations` can be used for specific uses cases to define different configuration based on the user network + """ + surrogate_ip: NotRequired[pulumi.Input[bool]] + """ + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + """ + surrogate_ip_enforced_for_known_browsers: NotRequired[pulumi.Input[bool]] + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers """ - upload_mbps: NotRequired[pulumi.Input[int]] + surrogate_refresh_time_in_minutes: NotRequired[pulumi.Input[int]] """ - the download bandwidth cap of the link, in Mbps + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy """ - use_xff: NotRequired[pulumi.Input[bool]] + up_bandwidth: NotRequired[pulumi.Input[float]] + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + xff_forward_enabled: NotRequired[pulumi.Input[bool]] """ location uses proxy chaining to forward traffic """ @@ -16865,142 +17353,178 @@ class GatewaytemplateTunnelProviderOptionsZscalerArgsDict(TypedDict): @pulumi.input_type class GatewaytemplateTunnelProviderOptionsZscalerArgs: def __init__(__self__, *, - aup_acceptance_required: Optional[pulumi.Input[bool]] = None, - aup_expire: Optional[pulumi.Input[int]] = None, - aup_ssl_proxy: Optional[pulumi.Input[bool]] = None, - download_mbps: Optional[pulumi.Input[int]] = None, - enable_aup: Optional[pulumi.Input[bool]] = None, - enable_caution: Optional[pulumi.Input[bool]] = None, - enforce_authentication: Optional[pulumi.Input[bool]] = None, - name: Optional[pulumi.Input[str]] = None, + aup_block_internet_until_accepted: Optional[pulumi.Input[bool]] = None, + aup_enabled: Optional[pulumi.Input[bool]] = None, + aup_force_ssl_inspection: Optional[pulumi.Input[bool]] = None, + aup_timeout_in_days: Optional[pulumi.Input[int]] = None, + auth_required: Optional[pulumi.Input[bool]] = None, + caution_enabled: Optional[pulumi.Input[bool]] = None, + dn_bandwidth: Optional[pulumi.Input[float]] = None, + idle_time_in_minutes: Optional[pulumi.Input[int]] = None, + ofw_enabled: Optional[pulumi.Input[bool]] = None, sub_locations: Optional[pulumi.Input[Sequence[pulumi.Input['GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs']]]] = None, - upload_mbps: Optional[pulumi.Input[int]] = None, - use_xff: Optional[pulumi.Input[bool]] = None): - """ - :param pulumi.Input[int] aup_expire: days before AUP is requested again - :param pulumi.Input[bool] aup_ssl_proxy: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - :param pulumi.Input[int] download_mbps: the download bandwidth cap of the link, in Mbps - :param pulumi.Input[bool] enable_aup: if `use_xff`==`true`, display Acceptable Use Policy (AUP) - :param pulumi.Input[bool] enable_caution: when `enforce_authentication`==`false`, display caution notification for non-authenticated users - :param pulumi.Input[Sequence[pulumi.Input['GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs']]] sub_locations: if `use_xff`==`true` - :param pulumi.Input[int] upload_mbps: the download bandwidth cap of the link, in Mbps - :param pulumi.Input[bool] use_xff: location uses proxy chaining to forward traffic - """ - if aup_acceptance_required is not None: - pulumi.set(__self__, "aup_acceptance_required", aup_acceptance_required) - if aup_expire is not None: - pulumi.set(__self__, "aup_expire", aup_expire) - if aup_ssl_proxy is not None: - pulumi.set(__self__, "aup_ssl_proxy", aup_ssl_proxy) - if download_mbps is not None: - pulumi.set(__self__, "download_mbps", download_mbps) - if enable_aup is not None: - pulumi.set(__self__, "enable_aup", enable_aup) - if enable_caution is not None: - pulumi.set(__self__, "enable_caution", enable_caution) - if enforce_authentication is not None: - pulumi.set(__self__, "enforce_authentication", enforce_authentication) - if name is not None: - pulumi.set(__self__, "name", name) + surrogate_ip: Optional[pulumi.Input[bool]] = None, + surrogate_ip_enforced_for_known_browsers: Optional[pulumi.Input[bool]] = None, + surrogate_refresh_time_in_minutes: Optional[pulumi.Input[int]] = None, + up_bandwidth: Optional[pulumi.Input[float]] = None, + xff_forward_enabled: Optional[pulumi.Input[bool]] = None): + """ + :param pulumi.Input[bool] aup_enabled: Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + :param pulumi.Input[bool] aup_force_ssl_inspection: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + :param pulumi.Input[int] aup_timeout_in_days: Required if `aup_enabled`==`true`. Days before AUP is requested again + :param pulumi.Input[bool] auth_required: Enable this option to enforce user authentication + :param pulumi.Input[bool] caution_enabled: Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + :param pulumi.Input[float] dn_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param pulumi.Input[int] idle_time_in_minutes: Required if `surrogate_IP`==`true`, idle Time to Disassociation + :param pulumi.Input[bool] ofw_enabled: if `true`, enable the firewall control option + :param pulumi.Input[Sequence[pulumi.Input['GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs']]] sub_locations: `sub-locations` can be used for specific uses cases to define different configuration based on the user network + :param pulumi.Input[bool] surrogate_ip: Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + :param pulumi.Input[bool] surrogate_ip_enforced_for_known_browsers: Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + :param pulumi.Input[int] surrogate_refresh_time_in_minutes: Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + :param pulumi.Input[float] up_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param pulumi.Input[bool] xff_forward_enabled: location uses proxy chaining to forward traffic + """ + if aup_block_internet_until_accepted is not None: + pulumi.set(__self__, "aup_block_internet_until_accepted", aup_block_internet_until_accepted) + if aup_enabled is not None: + pulumi.set(__self__, "aup_enabled", aup_enabled) + if aup_force_ssl_inspection is not None: + pulumi.set(__self__, "aup_force_ssl_inspection", aup_force_ssl_inspection) + if aup_timeout_in_days is not None: + pulumi.set(__self__, "aup_timeout_in_days", aup_timeout_in_days) + if auth_required is not None: + pulumi.set(__self__, "auth_required", auth_required) + if caution_enabled is not None: + pulumi.set(__self__, "caution_enabled", caution_enabled) + if dn_bandwidth is not None: + pulumi.set(__self__, "dn_bandwidth", dn_bandwidth) + if idle_time_in_minutes is not None: + pulumi.set(__self__, "idle_time_in_minutes", idle_time_in_minutes) + if ofw_enabled is not None: + pulumi.set(__self__, "ofw_enabled", ofw_enabled) if sub_locations is not None: pulumi.set(__self__, "sub_locations", sub_locations) - if upload_mbps is not None: - pulumi.set(__self__, "upload_mbps", upload_mbps) - if use_xff is not None: - pulumi.set(__self__, "use_xff", use_xff) + if surrogate_ip is not None: + pulumi.set(__self__, "surrogate_ip", surrogate_ip) + if surrogate_ip_enforced_for_known_browsers is not None: + pulumi.set(__self__, "surrogate_ip_enforced_for_known_browsers", surrogate_ip_enforced_for_known_browsers) + if surrogate_refresh_time_in_minutes is not None: + pulumi.set(__self__, "surrogate_refresh_time_in_minutes", surrogate_refresh_time_in_minutes) + if up_bandwidth is not None: + pulumi.set(__self__, "up_bandwidth", up_bandwidth) + if xff_forward_enabled is not None: + pulumi.set(__self__, "xff_forward_enabled", xff_forward_enabled) @property - @pulumi.getter(name="aupAcceptanceRequired") - def aup_acceptance_required(self) -> Optional[pulumi.Input[bool]]: - return pulumi.get(self, "aup_acceptance_required") + @pulumi.getter(name="aupBlockInternetUntilAccepted") + def aup_block_internet_until_accepted(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "aup_block_internet_until_accepted") - @aup_acceptance_required.setter - def aup_acceptance_required(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "aup_acceptance_required", value) + @aup_block_internet_until_accepted.setter + def aup_block_internet_until_accepted(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_block_internet_until_accepted", value) @property - @pulumi.getter(name="aupExpire") - def aup_expire(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="aupEnabled") + def aup_enabled(self) -> Optional[pulumi.Input[bool]]: """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - return pulumi.get(self, "aup_expire") + return pulumi.get(self, "aup_enabled") - @aup_expire.setter - def aup_expire(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "aup_expire", value) + @aup_enabled.setter + def aup_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_enabled", value) @property - @pulumi.getter(name="aupSslProxy") - def aup_ssl_proxy(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="aupForceSslInspection") + def aup_force_ssl_inspection(self) -> Optional[pulumi.Input[bool]]: """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - return pulumi.get(self, "aup_ssl_proxy") + return pulumi.get(self, "aup_force_ssl_inspection") + + @aup_force_ssl_inspection.setter + def aup_force_ssl_inspection(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_force_ssl_inspection", value) + + @property + @pulumi.getter(name="aupTimeoutInDays") + def aup_timeout_in_days(self) -> Optional[pulumi.Input[int]]: + """ + Required if `aup_enabled`==`true`. Days before AUP is requested again + """ + return pulumi.get(self, "aup_timeout_in_days") - @aup_ssl_proxy.setter - def aup_ssl_proxy(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "aup_ssl_proxy", value) + @aup_timeout_in_days.setter + def aup_timeout_in_days(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "aup_timeout_in_days", value) @property - @pulumi.getter(name="downloadMbps") - def download_mbps(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="authRequired") + def auth_required(self) -> Optional[pulumi.Input[bool]]: """ - the download bandwidth cap of the link, in Mbps + Enable this option to enforce user authentication """ - return pulumi.get(self, "download_mbps") + return pulumi.get(self, "auth_required") - @download_mbps.setter - def download_mbps(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "download_mbps", value) + @auth_required.setter + def auth_required(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "auth_required", value) @property - @pulumi.getter(name="enableAup") - def enable_aup(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="cautionEnabled") + def caution_enabled(self) -> Optional[pulumi.Input[bool]]: """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - return pulumi.get(self, "enable_aup") + return pulumi.get(self, "caution_enabled") - @enable_aup.setter - def enable_aup(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enable_aup", value) + @caution_enabled.setter + def caution_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "caution_enabled", value) @property - @pulumi.getter(name="enableCaution") - def enable_caution(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="dnBandwidth") + def dn_bandwidth(self) -> Optional[pulumi.Input[float]]: """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + the download bandwidth cap of the link, in Mbps. Disabled if not set """ - return pulumi.get(self, "enable_caution") + return pulumi.get(self, "dn_bandwidth") - @enable_caution.setter - def enable_caution(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enable_caution", value) + @dn_bandwidth.setter + def dn_bandwidth(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "dn_bandwidth", value) @property - @pulumi.getter(name="enforceAuthentication") - def enforce_authentication(self) -> Optional[pulumi.Input[bool]]: - return pulumi.get(self, "enforce_authentication") + @pulumi.getter(name="idleTimeInMinutes") + def idle_time_in_minutes(self) -> Optional[pulumi.Input[int]]: + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + return pulumi.get(self, "idle_time_in_minutes") - @enforce_authentication.setter - def enforce_authentication(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enforce_authentication", value) + @idle_time_in_minutes.setter + def idle_time_in_minutes(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "idle_time_in_minutes", value) @property - @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: - return pulumi.get(self, "name") + @pulumi.getter(name="ofwEnabled") + def ofw_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + if `true`, enable the firewall control option + """ + return pulumi.get(self, "ofw_enabled") - @name.setter - def name(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "name", value) + @ofw_enabled.setter + def ofw_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "ofw_enabled", value) @property @pulumi.getter(name="subLocations") def sub_locations(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs']]]]: """ - if `use_xff`==`true` + `sub-locations` can be used for specific uses cases to define different configuration based on the user network """ return pulumi.get(self, "sub_locations") @@ -17009,58 +17533,120 @@ def sub_locations(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Gate pulumi.set(self, "sub_locations", value) @property - @pulumi.getter(name="uploadMbps") - def upload_mbps(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="surrogateIp") + def surrogate_ip(self) -> Optional[pulumi.Input[bool]]: """ - the download bandwidth cap of the link, in Mbps + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies """ - return pulumi.get(self, "upload_mbps") + return pulumi.get(self, "surrogate_ip") - @upload_mbps.setter - def upload_mbps(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "upload_mbps", value) + @surrogate_ip.setter + def surrogate_ip(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "surrogate_ip", value) @property - @pulumi.getter(name="useXff") - def use_xff(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="surrogateIpEnforcedForKnownBrowsers") + def surrogate_ip_enforced_for_known_browsers(self) -> Optional[pulumi.Input[bool]]: + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + """ + return pulumi.get(self, "surrogate_ip_enforced_for_known_browsers") + + @surrogate_ip_enforced_for_known_browsers.setter + def surrogate_ip_enforced_for_known_browsers(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "surrogate_ip_enforced_for_known_browsers", value) + + @property + @pulumi.getter(name="surrogateRefreshTimeInMinutes") + def surrogate_refresh_time_in_minutes(self) -> Optional[pulumi.Input[int]]: + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + return pulumi.get(self, "surrogate_refresh_time_in_minutes") + + @surrogate_refresh_time_in_minutes.setter + def surrogate_refresh_time_in_minutes(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "surrogate_refresh_time_in_minutes", value) + + @property + @pulumi.getter(name="upBandwidth") + def up_bandwidth(self) -> Optional[pulumi.Input[float]]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "up_bandwidth") + + @up_bandwidth.setter + def up_bandwidth(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "up_bandwidth", value) + + @property + @pulumi.getter(name="xffForwardEnabled") + def xff_forward_enabled(self) -> Optional[pulumi.Input[bool]]: """ location uses proxy chaining to forward traffic """ - return pulumi.get(self, "use_xff") + return pulumi.get(self, "xff_forward_enabled") - @use_xff.setter - def use_xff(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "use_xff", value) + @xff_forward_enabled.setter + def xff_forward_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "xff_forward_enabled", value) if not MYPY: class GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgsDict(TypedDict): - aup_acceptance_required: NotRequired[pulumi.Input[bool]] - aup_expire: NotRequired[pulumi.Input[int]] + aup_block_internet_until_accepted: NotRequired[pulumi.Input[bool]] + aup_enabled: NotRequired[pulumi.Input[bool]] """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - aup_ssl_proxy: NotRequired[pulumi.Input[bool]] + aup_force_ssl_inspection: NotRequired[pulumi.Input[bool]] """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - download_mbps: NotRequired[pulumi.Input[int]] + aup_timeout_in_days: NotRequired[pulumi.Input[int]] """ - the download bandwidth cap of the link, in Mbps + Required if `aup_enabled`==`true`. Days before AUP is requested again """ - enable_aup: NotRequired[pulumi.Input[bool]] + auth_required: NotRequired[pulumi.Input[bool]] """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Enable this option to authenticate users """ - enable_caution: NotRequired[pulumi.Input[bool]] + caution_enabled: NotRequired[pulumi.Input[bool]] """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - enforce_authentication: NotRequired[pulumi.Input[bool]] - subnets: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] - upload_mbps: NotRequired[pulumi.Input[int]] + dn_bandwidth: NotRequired[pulumi.Input[float]] + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + idle_time_in_minutes: NotRequired[pulumi.Input[int]] + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + name: NotRequired[pulumi.Input[str]] + """ + Network name + """ + ofw_enabled: NotRequired[pulumi.Input[bool]] + """ + if `true`, enable the firewall control option + """ + surrogate_ip: NotRequired[pulumi.Input[bool]] + """ + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + """ + surrogate_ip_enforced_for_known_browsers: NotRequired[pulumi.Input[bool]] + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + """ + surrogate_refresh_time_in_minutes: NotRequired[pulumi.Input[int]] + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + up_bandwidth: NotRequired[pulumi.Input[float]] """ - the download bandwidth cap of the link, in Mbps + the download bandwidth cap of the link, in Mbps. Disabled if not set """ elif False: GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgsDict: TypeAlias = Mapping[str, Any] @@ -17068,140 +17654,228 @@ class GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgsDict(TypedDict): @pulumi.input_type class GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs: def __init__(__self__, *, - aup_acceptance_required: Optional[pulumi.Input[bool]] = None, - aup_expire: Optional[pulumi.Input[int]] = None, - aup_ssl_proxy: Optional[pulumi.Input[bool]] = None, - download_mbps: Optional[pulumi.Input[int]] = None, - enable_aup: Optional[pulumi.Input[bool]] = None, - enable_caution: Optional[pulumi.Input[bool]] = None, - enforce_authentication: Optional[pulumi.Input[bool]] = None, - subnets: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, - upload_mbps: Optional[pulumi.Input[int]] = None): - """ - :param pulumi.Input[int] aup_expire: days before AUP is requested again - :param pulumi.Input[bool] aup_ssl_proxy: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - :param pulumi.Input[int] download_mbps: the download bandwidth cap of the link, in Mbps - :param pulumi.Input[bool] enable_aup: if `use_xff`==`true`, display Acceptable Use Policy (AUP) - :param pulumi.Input[bool] enable_caution: when `enforce_authentication`==`false`, display caution notification for non-authenticated users - :param pulumi.Input[int] upload_mbps: the download bandwidth cap of the link, in Mbps - """ - if aup_acceptance_required is not None: - pulumi.set(__self__, "aup_acceptance_required", aup_acceptance_required) - if aup_expire is not None: - pulumi.set(__self__, "aup_expire", aup_expire) - if aup_ssl_proxy is not None: - pulumi.set(__self__, "aup_ssl_proxy", aup_ssl_proxy) - if download_mbps is not None: - pulumi.set(__self__, "download_mbps", download_mbps) - if enable_aup is not None: - pulumi.set(__self__, "enable_aup", enable_aup) - if enable_caution is not None: - pulumi.set(__self__, "enable_caution", enable_caution) - if enforce_authentication is not None: - pulumi.set(__self__, "enforce_authentication", enforce_authentication) - if subnets is not None: - pulumi.set(__self__, "subnets", subnets) - if upload_mbps is not None: - pulumi.set(__self__, "upload_mbps", upload_mbps) + aup_block_internet_until_accepted: Optional[pulumi.Input[bool]] = None, + aup_enabled: Optional[pulumi.Input[bool]] = None, + aup_force_ssl_inspection: Optional[pulumi.Input[bool]] = None, + aup_timeout_in_days: Optional[pulumi.Input[int]] = None, + auth_required: Optional[pulumi.Input[bool]] = None, + caution_enabled: Optional[pulumi.Input[bool]] = None, + dn_bandwidth: Optional[pulumi.Input[float]] = None, + idle_time_in_minutes: Optional[pulumi.Input[int]] = None, + name: Optional[pulumi.Input[str]] = None, + ofw_enabled: Optional[pulumi.Input[bool]] = None, + surrogate_ip: Optional[pulumi.Input[bool]] = None, + surrogate_ip_enforced_for_known_browsers: Optional[pulumi.Input[bool]] = None, + surrogate_refresh_time_in_minutes: Optional[pulumi.Input[int]] = None, + up_bandwidth: Optional[pulumi.Input[float]] = None): + """ + :param pulumi.Input[bool] aup_enabled: Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + :param pulumi.Input[bool] aup_force_ssl_inspection: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + :param pulumi.Input[int] aup_timeout_in_days: Required if `aup_enabled`==`true`. Days before AUP is requested again + :param pulumi.Input[bool] auth_required: Enable this option to authenticate users + :param pulumi.Input[bool] caution_enabled: Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + :param pulumi.Input[float] dn_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param pulumi.Input[int] idle_time_in_minutes: Required if `surrogate_IP`==`true`, idle Time to Disassociation + :param pulumi.Input[str] name: Network name + :param pulumi.Input[bool] ofw_enabled: if `true`, enable the firewall control option + :param pulumi.Input[bool] surrogate_ip: Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + :param pulumi.Input[bool] surrogate_ip_enforced_for_known_browsers: Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + :param pulumi.Input[int] surrogate_refresh_time_in_minutes: Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + :param pulumi.Input[float] up_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + if aup_block_internet_until_accepted is not None: + pulumi.set(__self__, "aup_block_internet_until_accepted", aup_block_internet_until_accepted) + if aup_enabled is not None: + pulumi.set(__self__, "aup_enabled", aup_enabled) + if aup_force_ssl_inspection is not None: + pulumi.set(__self__, "aup_force_ssl_inspection", aup_force_ssl_inspection) + if aup_timeout_in_days is not None: + pulumi.set(__self__, "aup_timeout_in_days", aup_timeout_in_days) + if auth_required is not None: + pulumi.set(__self__, "auth_required", auth_required) + if caution_enabled is not None: + pulumi.set(__self__, "caution_enabled", caution_enabled) + if dn_bandwidth is not None: + pulumi.set(__self__, "dn_bandwidth", dn_bandwidth) + if idle_time_in_minutes is not None: + pulumi.set(__self__, "idle_time_in_minutes", idle_time_in_minutes) + if name is not None: + pulumi.set(__self__, "name", name) + if ofw_enabled is not None: + pulumi.set(__self__, "ofw_enabled", ofw_enabled) + if surrogate_ip is not None: + pulumi.set(__self__, "surrogate_ip", surrogate_ip) + if surrogate_ip_enforced_for_known_browsers is not None: + pulumi.set(__self__, "surrogate_ip_enforced_for_known_browsers", surrogate_ip_enforced_for_known_browsers) + if surrogate_refresh_time_in_minutes is not None: + pulumi.set(__self__, "surrogate_refresh_time_in_minutes", surrogate_refresh_time_in_minutes) + if up_bandwidth is not None: + pulumi.set(__self__, "up_bandwidth", up_bandwidth) @property - @pulumi.getter(name="aupAcceptanceRequired") - def aup_acceptance_required(self) -> Optional[pulumi.Input[bool]]: - return pulumi.get(self, "aup_acceptance_required") + @pulumi.getter(name="aupBlockInternetUntilAccepted") + def aup_block_internet_until_accepted(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "aup_block_internet_until_accepted") - @aup_acceptance_required.setter - def aup_acceptance_required(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "aup_acceptance_required", value) + @aup_block_internet_until_accepted.setter + def aup_block_internet_until_accepted(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_block_internet_until_accepted", value) @property - @pulumi.getter(name="aupExpire") - def aup_expire(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="aupEnabled") + def aup_enabled(self) -> Optional[pulumi.Input[bool]]: """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - return pulumi.get(self, "aup_expire") + return pulumi.get(self, "aup_enabled") - @aup_expire.setter - def aup_expire(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "aup_expire", value) + @aup_enabled.setter + def aup_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_enabled", value) @property - @pulumi.getter(name="aupSslProxy") - def aup_ssl_proxy(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="aupForceSslInspection") + def aup_force_ssl_inspection(self) -> Optional[pulumi.Input[bool]]: """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - return pulumi.get(self, "aup_ssl_proxy") + return pulumi.get(self, "aup_force_ssl_inspection") - @aup_ssl_proxy.setter - def aup_ssl_proxy(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "aup_ssl_proxy", value) + @aup_force_ssl_inspection.setter + def aup_force_ssl_inspection(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "aup_force_ssl_inspection", value) @property - @pulumi.getter(name="downloadMbps") - def download_mbps(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="aupTimeoutInDays") + def aup_timeout_in_days(self) -> Optional[pulumi.Input[int]]: """ - the download bandwidth cap of the link, in Mbps + Required if `aup_enabled`==`true`. Days before AUP is requested again """ - return pulumi.get(self, "download_mbps") + return pulumi.get(self, "aup_timeout_in_days") - @download_mbps.setter - def download_mbps(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "download_mbps", value) + @aup_timeout_in_days.setter + def aup_timeout_in_days(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "aup_timeout_in_days", value) @property - @pulumi.getter(name="enableAup") - def enable_aup(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="authRequired") + def auth_required(self) -> Optional[pulumi.Input[bool]]: """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Enable this option to authenticate users """ - return pulumi.get(self, "enable_aup") + return pulumi.get(self, "auth_required") - @enable_aup.setter - def enable_aup(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enable_aup", value) + @auth_required.setter + def auth_required(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "auth_required", value) @property - @pulumi.getter(name="enableCaution") - def enable_caution(self) -> Optional[pulumi.Input[bool]]: + @pulumi.getter(name="cautionEnabled") + def caution_enabled(self) -> Optional[pulumi.Input[bool]]: """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - return pulumi.get(self, "enable_caution") + return pulumi.get(self, "caution_enabled") - @enable_caution.setter - def enable_caution(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enable_caution", value) + @caution_enabled.setter + def caution_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "caution_enabled", value) @property - @pulumi.getter(name="enforceAuthentication") - def enforce_authentication(self) -> Optional[pulumi.Input[bool]]: - return pulumi.get(self, "enforce_authentication") + @pulumi.getter(name="dnBandwidth") + def dn_bandwidth(self) -> Optional[pulumi.Input[float]]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "dn_bandwidth") - @enforce_authentication.setter - def enforce_authentication(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "enforce_authentication", value) + @dn_bandwidth.setter + def dn_bandwidth(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "dn_bandwidth", value) + + @property + @pulumi.getter(name="idleTimeInMinutes") + def idle_time_in_minutes(self) -> Optional[pulumi.Input[int]]: + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + return pulumi.get(self, "idle_time_in_minutes") + + @idle_time_in_minutes.setter + def idle_time_in_minutes(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "idle_time_in_minutes", value) @property @pulumi.getter - def subnets(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: - return pulumi.get(self, "subnets") + def name(self) -> Optional[pulumi.Input[str]]: + """ + Network name + """ + return pulumi.get(self, "name") - @subnets.setter - def subnets(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]): - pulumi.set(self, "subnets", value) + @name.setter + def name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "name", value) @property - @pulumi.getter(name="uploadMbps") - def upload_mbps(self) -> Optional[pulumi.Input[int]]: + @pulumi.getter(name="ofwEnabled") + def ofw_enabled(self) -> Optional[pulumi.Input[bool]]: """ - the download bandwidth cap of the link, in Mbps + if `true`, enable the firewall control option """ - return pulumi.get(self, "upload_mbps") + return pulumi.get(self, "ofw_enabled") - @upload_mbps.setter - def upload_mbps(self, value: Optional[pulumi.Input[int]]): - pulumi.set(self, "upload_mbps", value) + @ofw_enabled.setter + def ofw_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "ofw_enabled", value) + + @property + @pulumi.getter(name="surrogateIp") + def surrogate_ip(self) -> Optional[pulumi.Input[bool]]: + """ + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + """ + return pulumi.get(self, "surrogate_ip") + + @surrogate_ip.setter + def surrogate_ip(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "surrogate_ip", value) + + @property + @pulumi.getter(name="surrogateIpEnforcedForKnownBrowsers") + def surrogate_ip_enforced_for_known_browsers(self) -> Optional[pulumi.Input[bool]]: + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + """ + return pulumi.get(self, "surrogate_ip_enforced_for_known_browsers") + + @surrogate_ip_enforced_for_known_browsers.setter + def surrogate_ip_enforced_for_known_browsers(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "surrogate_ip_enforced_for_known_browsers", value) + + @property + @pulumi.getter(name="surrogateRefreshTimeInMinutes") + def surrogate_refresh_time_in_minutes(self) -> Optional[pulumi.Input[int]]: + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + return pulumi.get(self, "surrogate_refresh_time_in_minutes") + + @surrogate_refresh_time_in_minutes.setter + def surrogate_refresh_time_in_minutes(self, value: Optional[pulumi.Input[int]]): + pulumi.set(self, "surrogate_refresh_time_in_minutes", value) + + @property + @pulumi.getter(name="upBandwidth") + def up_bandwidth(self) -> Optional[pulumi.Input[float]]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "up_bandwidth") + + @up_bandwidth.setter + def up_bandwidth(self, value: Optional[pulumi.Input[float]]): + pulumi.set(self, "up_bandwidth", value) if not MYPY: @@ -18128,7 +18802,7 @@ class NetworkInternetAccessArgsDict(TypedDict): create_simple_service_policy: NotRequired[pulumi.Input[bool]] destination_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['NetworkInternetAccessDestinationNatArgsDict']]]] """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ enabled: NotRequired[pulumi.Input[bool]] restricted: NotRequired[pulumi.Input[bool]] @@ -18137,7 +18811,7 @@ class NetworkInternetAccessArgsDict(TypedDict): """ static_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['NetworkInternetAccessStaticNatArgsDict']]]] """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ elif False: NetworkInternetAccessArgsDict: TypeAlias = Mapping[str, Any] @@ -18151,9 +18825,9 @@ def __init__(__self__, *, restricted: Optional[pulumi.Input[bool]] = None, static_nat: Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworkInternetAccessStaticNatArgs']]]] = None): """ - :param pulumi.Input[Mapping[str, pulumi.Input['NetworkInternetAccessDestinationNatArgs']]] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param pulumi.Input[Mapping[str, pulumi.Input['NetworkInternetAccessDestinationNatArgs']]] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param pulumi.Input[bool] restricted: by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies - :param pulumi.Input[Mapping[str, pulumi.Input['NetworkInternetAccessStaticNatArgs']]] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + :param pulumi.Input[Mapping[str, pulumi.Input['NetworkInternetAccessStaticNatArgs']]] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ if create_simple_service_policy is not None: pulumi.set(__self__, "create_simple_service_policy", create_simple_service_policy) @@ -18179,7 +18853,7 @@ def create_simple_service_policy(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworkInternetAccessDestinationNatArgs']]]]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -18212,7 +18886,7 @@ def restricted(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworkInternetAccessStaticNatArgs']]]]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -18224,8 +18898,18 @@ def static_nat(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Net if not MYPY: class NetworkInternetAccessDestinationNatArgsDict(TypedDict): internal_ip: NotRequired[pulumi.Input[str]] + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ name: NotRequired[pulumi.Input[str]] - port: NotRequired[pulumi.Input[int]] + port: NotRequired[pulumi.Input[str]] + """ + The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + """ + wan_name: NotRequired[pulumi.Input[str]] + """ + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ elif False: NetworkInternetAccessDestinationNatArgsDict: TypeAlias = Mapping[str, Any] @@ -18234,17 +18918,28 @@ class NetworkInternetAccessDestinationNatArgs: def __init__(__self__, *, internal_ip: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - port: Optional[pulumi.Input[int]] = None): + port: Optional[pulumi.Input[str]] = None, + wan_name: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] port: The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: pulumi.set(__self__, "name", name) if port is not None: pulumi.set(__self__, "port", port) + if wan_name is not None: + pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[pulumi.Input[str]]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter @@ -18262,21 +18957,39 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - def port(self) -> Optional[pulumi.Input[int]]: + def port(self) -> Optional[pulumi.Input[str]]: + """ + The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "port") @port.setter - def port(self, value: Optional[pulumi.Input[int]]): + def port(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "port", value) + @property + @pulumi.getter(name="wanName") + def wan_name(self) -> Optional[pulumi.Input[str]]: + """ + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ + return pulumi.get(self, "wan_name") + + @wan_name.setter + def wan_name(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "wan_name", value) + if not MYPY: class NetworkInternetAccessStaticNatArgsDict(TypedDict): - internal_ip: NotRequired[pulumi.Input[str]] - name: NotRequired[pulumi.Input[str]] + internal_ip: pulumi.Input[str] + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ + name: pulumi.Input[str] wan_name: NotRequired[pulumi.Input[str]] """ - If not set, we configure the nat policies against all WAN ports for simplicity + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ elif False: NetworkInternetAccessStaticNatArgsDict: TypeAlias = Mapping[str, Any] @@ -18284,42 +18997,44 @@ class NetworkInternetAccessStaticNatArgsDict(TypedDict): @pulumi.input_type class NetworkInternetAccessStaticNatArgs: def __init__(__self__, *, - internal_ip: Optional[pulumi.Input[str]] = None, - name: Optional[pulumi.Input[str]] = None, + internal_ip: pulumi.Input[str], + name: pulumi.Input[str], wan_name: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param pulumi.Input[str] internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + :param pulumi.Input[str] wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) if wan_name is not None: pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[pulumi.Input[str]]: + def internal_ip(self) -> pulumi.Input[str]: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter - def internal_ip(self, value: Optional[pulumi.Input[str]]): + def internal_ip(self, value: pulumi.Input[str]): pulumi.set(self, "internal_ip", value) @property @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: + def name(self) -> pulumi.Input[str]: return pulumi.get(self, "name") @name.setter - def name(self, value: Optional[pulumi.Input[str]]): + def name(self, value: pulumi.Input[str]): pulumi.set(self, "name", value) @property @pulumi.getter(name="wanName") def wan_name(self) -> Optional[pulumi.Input[str]]: """ - If not set, we configure the nat policies against all WAN ports for simplicity + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "wan_name") @@ -18328,6 +19043,103 @@ def wan_name(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "wan_name", value) +if not MYPY: + class NetworkMulticastArgsDict(TypedDict): + disable_igmp: NotRequired[pulumi.Input[bool]] + """ + if the network will only be the soruce of the multicast traffic, IGMP can be disabled + """ + enabled: NotRequired[pulumi.Input[bool]] + groups: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['NetworkMulticastGroupsArgsDict']]]] + """ + Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + """ +elif False: + NetworkMulticastArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class NetworkMulticastArgs: + def __init__(__self__, *, + disable_igmp: Optional[pulumi.Input[bool]] = None, + enabled: Optional[pulumi.Input[bool]] = None, + groups: Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworkMulticastGroupsArgs']]]] = None): + """ + :param pulumi.Input[bool] disable_igmp: if the network will only be the soruce of the multicast traffic, IGMP can be disabled + :param pulumi.Input[Mapping[str, pulumi.Input['NetworkMulticastGroupsArgs']]] groups: Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + """ + if disable_igmp is not None: + pulumi.set(__self__, "disable_igmp", disable_igmp) + if enabled is not None: + pulumi.set(__self__, "enabled", enabled) + if groups is not None: + pulumi.set(__self__, "groups", groups) + + @property + @pulumi.getter(name="disableIgmp") + def disable_igmp(self) -> Optional[pulumi.Input[bool]]: + """ + if the network will only be the soruce of the multicast traffic, IGMP can be disabled + """ + return pulumi.get(self, "disable_igmp") + + @disable_igmp.setter + def disable_igmp(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "disable_igmp", value) + + @property + @pulumi.getter + def enabled(self) -> Optional[pulumi.Input[bool]]: + return pulumi.get(self, "enabled") + + @enabled.setter + def enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "enabled", value) + + @property + @pulumi.getter + def groups(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworkMulticastGroupsArgs']]]]: + """ + Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + """ + return pulumi.get(self, "groups") + + @groups.setter + def groups(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworkMulticastGroupsArgs']]]]): + pulumi.set(self, "groups", value) + + +if not MYPY: + class NetworkMulticastGroupsArgsDict(TypedDict): + rp_ip: NotRequired[pulumi.Input[str]] + """ + RP (rendezvous point) IP Address + """ +elif False: + NetworkMulticastGroupsArgsDict: TypeAlias = Mapping[str, Any] + +@pulumi.input_type +class NetworkMulticastGroupsArgs: + def __init__(__self__, *, + rp_ip: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] rp_ip: RP (rendezvous point) IP Address + """ + if rp_ip is not None: + pulumi.set(__self__, "rp_ip", rp_ip) + + @property + @pulumi.getter(name="rpIp") + def rp_ip(self) -> Optional[pulumi.Input[str]]: + """ + RP (rendezvous point) IP Address + """ + return pulumi.get(self, "rp_ip") + + @rp_ip.setter + def rp_ip(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "rp_ip", value) + + if not MYPY: class NetworkTenantsArgsDict(TypedDict): addresses: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] @@ -18363,7 +19175,7 @@ class NetworkVpnAccessArgsDict(TypedDict): """ destination_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['NetworkVpnAccessDestinationNatArgsDict']]]] """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ nat_pool: NotRequired[pulumi.Input[str]] """ @@ -18397,7 +19209,7 @@ class NetworkVpnAccessArgsDict(TypedDict): """ static_nat: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['NetworkVpnAccessStaticNatArgsDict']]]] """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ summarized_subnet: NotRequired[pulumi.Input[str]] """ @@ -18435,7 +19247,7 @@ def __init__(__self__, *, """ :param pulumi.Input[str] advertised_subnet: if `routed`==`true`, whether to advertise an aggregated subnet toward HUB this is useful when there are multiple networks on SPOKE's side :param pulumi.Input[bool] allow_ping: whether to allow ping from vpn into this routed network - :param pulumi.Input[Mapping[str, pulumi.Input['NetworkVpnAccessDestinationNatArgs']]] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param pulumi.Input[Mapping[str, pulumi.Input['NetworkVpnAccessDestinationNatArgs']]] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param pulumi.Input[str] nat_pool: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub :param pulumi.Input[bool] no_readvertise_to_lan_bgp: toward LAN-side BGP peers :param pulumi.Input[bool] no_readvertise_to_lan_ospf: toward LAN-side OSPF peers @@ -18445,7 +19257,7 @@ def __init__(__self__, *, to allow it to be leaked to other vrfs :param pulumi.Input[bool] routed: whether this network is routable :param pulumi.Input['NetworkVpnAccessSourceNatArgs'] source_nat: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub - :param pulumi.Input[Mapping[str, pulumi.Input['NetworkVpnAccessStaticNatArgs']]] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + :param pulumi.Input[Mapping[str, pulumi.Input['NetworkVpnAccessStaticNatArgs']]] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") :param pulumi.Input[str] summarized_subnet: toward overlay how HUB should deal with routes it received from Spokes :param pulumi.Input[str] summarized_subnet_to_lan_bgp: toward LAN-side BGP peers @@ -18508,7 +19320,7 @@ def allow_ping(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworkVpnAccessDestinationNatArgs']]]]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -18606,7 +19418,7 @@ def source_nat(self, value: Optional[pulumi.Input['NetworkVpnAccessSourceNatArgs @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworkVpnAccessStaticNatArgs']]]]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -18655,8 +19467,11 @@ def summarized_subnet_to_lan_ospf(self, value: Optional[pulumi.Input[str]]): if not MYPY: class NetworkVpnAccessDestinationNatArgsDict(TypedDict): internal_ip: NotRequired[pulumi.Input[str]] + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ name: NotRequired[pulumi.Input[str]] - port: NotRequired[pulumi.Input[int]] + port: NotRequired[pulumi.Input[str]] elif False: NetworkVpnAccessDestinationNatArgsDict: TypeAlias = Mapping[str, Any] @@ -18665,7 +19480,10 @@ class NetworkVpnAccessDestinationNatArgs: def __init__(__self__, *, internal_ip: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None, - port: Optional[pulumi.Input[int]] = None): + port: Optional[pulumi.Input[str]] = None): + """ + :param pulumi.Input[str] internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: @@ -18676,6 +19494,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[pulumi.Input[str]]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter @@ -18693,11 +19514,11 @@ def name(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter - def port(self) -> Optional[pulumi.Input[int]]: + def port(self) -> Optional[pulumi.Input[str]]: return pulumi.get(self, "port") @port.setter - def port(self, value: Optional[pulumi.Input[int]]): + def port(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "port", value) @@ -18726,74 +19547,61 @@ def external_ip(self, value: Optional[pulumi.Input[str]]): if not MYPY: class NetworkVpnAccessStaticNatArgsDict(TypedDict): - internal_ip: NotRequired[pulumi.Input[str]] - name: NotRequired[pulumi.Input[str]] - wan_name: NotRequired[pulumi.Input[str]] + internal_ip: pulumi.Input[str] """ - If not set, we configure the nat policies against all WAN ports for simplicity + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") """ + name: pulumi.Input[str] elif False: NetworkVpnAccessStaticNatArgsDict: TypeAlias = Mapping[str, Any] @pulumi.input_type class NetworkVpnAccessStaticNatArgs: def __init__(__self__, *, - internal_ip: Optional[pulumi.Input[str]] = None, - name: Optional[pulumi.Input[str]] = None, - wan_name: Optional[pulumi.Input[str]] = None): + internal_ip: pulumi.Input[str], + name: pulumi.Input[str]): """ - :param pulumi.Input[str] wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param pulumi.Input[str] internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) - if wan_name is not None: - pulumi.set(__self__, "wan_name", wan_name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[pulumi.Input[str]]: + def internal_ip(self) -> pulumi.Input[str]: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @internal_ip.setter - def internal_ip(self, value: Optional[pulumi.Input[str]]): + def internal_ip(self, value: pulumi.Input[str]): pulumi.set(self, "internal_ip", value) @property @pulumi.getter - def name(self) -> Optional[pulumi.Input[str]]: + def name(self) -> pulumi.Input[str]: return pulumi.get(self, "name") @name.setter - def name(self, value: Optional[pulumi.Input[str]]): + def name(self, value: pulumi.Input[str]): pulumi.set(self, "name", value) - @property - @pulumi.getter(name="wanName") - def wan_name(self) -> Optional[pulumi.Input[str]]: - """ - If not set, we configure the nat policies against all WAN ports for simplicity - """ - return pulumi.get(self, "wan_name") - - @wan_name.setter - def wan_name(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "wan_name", value) - if not MYPY: class NetworktemplateAclPolicyArgsDict(TypedDict): actions: NotRequired[pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclPolicyActionArgsDict']]]] """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ name: NotRequired[pulumi.Input[str]] src_tags: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ elif False: NetworktemplateAclPolicyArgsDict: TypeAlias = Mapping[str, Any] @@ -18805,10 +19613,12 @@ def __init__(__self__, *, name: Optional[pulumi.Input[str]] = None, src_tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclPolicyActionArgs']]] actions: - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to - :param pulumi.Input[Sequence[pulumi.Input[str]]] src_tags: - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + :param pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclPolicyActionArgs']]] actions: ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + :param pulumi.Input[Sequence[pulumi.Input[str]]] src_tags: ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ if actions is not None: pulumi.set(__self__, "actions", actions) @@ -18821,8 +19631,9 @@ def __init__(__self__, *, @pulumi.getter def actions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclPolicyActionArgs']]]]: """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ return pulumi.get(self, "actions") @@ -18843,8 +19654,9 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="srcTags") def src_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ return pulumi.get(self, "src_tags") @@ -18915,9 +19727,9 @@ class NetworktemplateAclTagsArgsDict(TypedDict): gbp_tag: NotRequired[pulumi.Input[int]] """ required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) """ macs: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ @@ -18943,8 +19755,7 @@ class NetworktemplateAclTagsArgsDict(TypedDict): """ specs: NotRequired[pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclTagsSpecArgsDict']]]] """ - if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any """ subnets: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ @@ -18978,9 +19789,9 @@ def __init__(__self__, *, * `static_gbp`: applying gbp tag against matching conditions * `subnet`' :param pulumi.Input[int] gbp_tag: required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) :param pulumi.Input[Sequence[pulumi.Input[str]]] macs: required if - `type`==`mac` - `type`==`static_gbp` if from matching mac @@ -18994,8 +19805,7 @@ def __init__(__self__, *, * `type`==`radius_group` * `type`==`static_gbp` if from matching radius_group - :param pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclTagsSpecArgs']]] specs: if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + :param pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclTagsSpecArgs']]] specs: if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any :param pulumi.Input[Sequence[pulumi.Input[str]]] subnets: if - `type`==`subnet` - `type`==`resource` (optional. default is `any`) @@ -19041,9 +19851,9 @@ def type(self, value: pulumi.Input[str]): def gbp_tag(self) -> Optional[pulumi.Input[int]]: """ required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) """ return pulumi.get(self, "gbp_tag") @@ -19101,8 +19911,7 @@ def radius_group(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def specs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclTagsSpecArgs']]]]: """ - if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any """ return pulumi.get(self, "specs") @@ -19134,7 +19943,7 @@ class NetworktemplateAclTagsSpecArgsDict(TypedDict): """ protocol: NotRequired[pulumi.Input[str]] """ - `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ elif False: NetworktemplateAclTagsSpecArgsDict: TypeAlias = Mapping[str, Any] @@ -19146,7 +19955,7 @@ def __init__(__self__, *, protocol: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[str] port_range: matched dst port, "0" means any - :param pulumi.Input[str] protocol: `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + :param pulumi.Input[str] protocol: `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ if port_range is not None: pulumi.set(__self__, "port_range", port_range) @@ -19169,7 +19978,7 @@ def port_range(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def protocol(self) -> Optional[pulumi.Input[str]]: """ - `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ return pulumi.get(self, "protocol") @@ -19603,8 +20412,7 @@ class NetworktemplateNetworksArgsDict(TypedDict): """ isolation: NotRequired[pulumi.Input[bool]] """ - whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set """ isolation_vlan_id: NotRequired[pulumi.Input[str]] subnet: NotRequired[pulumi.Input[str]] @@ -19631,8 +20439,7 @@ def __init__(__self__, *, """ :param pulumi.Input[str] gateway: only required for EVPN-VXLAN networks, IPv4 Virtual Gateway :param pulumi.Input[str] gateway6: only required for EVPN-VXLAN networks, IPv6 Virtual Gateway - :param pulumi.Input[bool] isolation: whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + :param pulumi.Input[bool] isolation: whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set :param pulumi.Input[str] subnet: optional for pure switching, required when L3 / routing features are used :param pulumi.Input[str] subnet6: optional for pure switching, required when L3 / routing features are used """ @@ -19687,8 +20494,7 @@ def gateway6(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def isolation(self) -> Optional[pulumi.Input[bool]]: """ - whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set """ return pulumi.get(self, "isolation") @@ -20117,9 +20923,7 @@ class NetworktemplatePortUsagesArgsDict(TypedDict): """ allow_dhcpd: NotRequired[pulumi.Input[bool]] """ - 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 allow_dhcpd is a tri_state. - 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. + 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 allow_dhcpd is a tri_state. 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. """ allow_multiple_supplicants: NotRequired[pulumi.Input[bool]] """ @@ -20167,8 +20971,7 @@ class NetworktemplatePortUsagesArgsDict(TypedDict): """ inter_switch_link: NotRequired[pulumi.Input[bool]] """ - Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together """ mac_auth_only: NotRequired[pulumi.Input[bool]] """ @@ -20240,8 +21043,7 @@ class NetworktemplatePortUsagesArgsDict(TypedDict): """ storm_control: NotRequired[pulumi.Input['NetworktemplatePortUsagesStormControlArgsDict']] """ - Switch storm control - Only if `mode`!=`dynamic` + Switch storm control. Only if `mode`!=`dynamic` """ stp_edge: NotRequired[pulumi.Input[bool]] """ @@ -20307,9 +21109,7 @@ def __init__(__self__, *, voip_network: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[bool] all_networks: Only if `mode`==`trunk` whether to trunk all network/vlans - :param pulumi.Input[bool] allow_dhcpd: 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 allow_dhcpd is a tri_state. - 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. + :param pulumi.Input[bool] allow_dhcpd: 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 allow_dhcpd is a tri_state. 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. :param pulumi.Input[bool] allow_multiple_supplicants: Only if `mode`!=`dynamic` :param pulumi.Input[bool] bypass_auth_when_server_down: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` bypass auth for known clients if set to true when RADIUS server is down :param pulumi.Input[bool] bypass_auth_when_server_down_for_unkonwn_client: Only if `mode`!=`dynamic` and `port_auth`=`dot1x` bypass auth for all (including unknown clients) if set to true when RADIUS server is down @@ -20321,8 +21121,7 @@ def __init__(__self__, *, :param pulumi.Input[bool] enable_mac_auth: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` whether to enable MAC Auth :param pulumi.Input[bool] enable_qos: Only if `mode`!=`dynamic` :param pulumi.Input[str] guest_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) - :param pulumi.Input[bool] inter_switch_link: Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + :param pulumi.Input[bool] inter_switch_link: Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together :param pulumi.Input[bool] mac_auth_only: Only if `mode`!=`dynamic` and `enable_mac_auth`==`true` :param pulumi.Input[bool] mac_auth_preferred: Only if `mode`!=`dynamic` + `enable_mac_auth`==`true` + `mac_auth_only`==`false`, dot1x will be given priority then mac_auth. Enable this to prefer mac_auth over dot1x. :param pulumi.Input[str] mac_auth_protocol: Only if `mode`!=`dynamic` and `enable_mac_auth` ==`true`. This type is ignored if mist_nac is enabled. enum: `eap-md5`, `eap-peap`, `pap` @@ -20340,8 +21139,7 @@ def __init__(__self__, *, :param pulumi.Input[str] server_fail_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` sets server fail fallback vlan :param pulumi.Input[str] server_reject_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` when radius server reject / fails :param pulumi.Input[str] speed: Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto` - :param pulumi.Input['NetworktemplatePortUsagesStormControlArgs'] storm_control: Switch storm control - Only if `mode`!=`dynamic` + :param pulumi.Input['NetworktemplatePortUsagesStormControlArgs'] storm_control: Switch storm control. Only if `mode`!=`dynamic` :param pulumi.Input[bool] stp_edge: Only if `mode`!=`dynamic` when enabled, the port is not expected to receive BPDU frames :param pulumi.Input[str] ui_evpntopo_id: 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 :param pulumi.Input[bool] use_vstp: if this is connected to a vstp network @@ -20440,9 +21238,7 @@ def all_networks(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="allowDhcpd") def allow_dhcpd(self) -> Optional[pulumi.Input[bool]]: """ - 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 allow_dhcpd is a tri_state. - 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. + 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 allow_dhcpd is a tri_state. 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. """ return pulumi.get(self, "allow_dhcpd") @@ -20586,8 +21382,7 @@ def guest_network(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="interSwitchLink") def inter_switch_link(self) -> Optional[pulumi.Input[bool]]: """ - Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together """ return pulumi.get(self, "inter_switch_link") @@ -20803,8 +21598,7 @@ def speed(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="stormControl") def storm_control(self) -> Optional[pulumi.Input['NetworktemplatePortUsagesStormControlArgs']]: """ - Switch storm control - Only if `mode`!=`dynamic` + Switch storm control. Only if `mode`!=`dynamic` """ return pulumi.get(self, "storm_control") @@ -21119,8 +21913,7 @@ class NetworktemplateRadiusConfigArgsDict(TypedDict): """ network: NotRequired[pulumi.Input[str]] """ - use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip """ source_ip: NotRequired[pulumi.Input[str]] """ @@ -21143,8 +21936,7 @@ def __init__(__self__, *, :param pulumi.Input[int] acct_interim_interval: how frequently should interim accounting be reported, 60-65535. default is 0 (use one specified in Access-Accept request from RADIUS Server). Very frequent messages can affect the performance of the radius server, 600 and up is recommended when enabled :param pulumi.Input[int] auth_servers_retries: radius auth session retries :param pulumi.Input[int] auth_servers_timeout: radius auth session timeout - :param pulumi.Input[str] network: use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + :param pulumi.Input[str] network: use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip :param pulumi.Input[str] source_ip: use `network`or `source_ip` """ if acct_interim_interval is not None: @@ -21220,8 +22012,7 @@ def auth_servers_timeout(self, value: Optional[pulumi.Input[int]]): @pulumi.getter def network(self) -> Optional[pulumi.Input[str]]: """ - use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip """ return pulumi.get(self, "network") @@ -23182,8 +23973,7 @@ def users(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Networktempl class NetworktemplateSnmpConfigV3ConfigUsmUserArgsDict(TypedDict): authentication_password: NotRequired[pulumi.Input[str]] """ - Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. """ authentication_type: NotRequired[pulumi.Input[str]] """ @@ -23191,8 +23981,7 @@ class NetworktemplateSnmpConfigV3ConfigUsmUserArgsDict(TypedDict): """ encryption_password: NotRequired[pulumi.Input[str]] """ - Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters """ encryption_type: NotRequired[pulumi.Input[str]] """ @@ -23211,11 +24000,9 @@ def __init__(__self__, *, encryption_type: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] authentication_password: Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + :param pulumi.Input[str] authentication_password: Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. :param pulumi.Input[str] authentication_type: sha224, sha256, sha384, sha512 are supported in 21.1 and newer release. enum: `authentication_md5`, `authentication_none`, `authentication_sha`, `authentication_sha224`, `authentication_sha256`, `authentication_sha384`, `authentication_sha512` - :param pulumi.Input[str] encryption_password: Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + :param pulumi.Input[str] encryption_password: Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters :param pulumi.Input[str] encryption_type: enum: `privacy-3des`, `privacy-aes128`, `privacy-des`, `privacy-none` """ if authentication_password is not None: @@ -23233,8 +24020,7 @@ def __init__(__self__, *, @pulumi.getter(name="authenticationPassword") def authentication_password(self) -> Optional[pulumi.Input[str]]: """ - Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. """ return pulumi.get(self, "authentication_password") @@ -23258,8 +24044,7 @@ def authentication_type(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="encryptionPassword") def encryption_password(self) -> Optional[pulumi.Input[str]]: """ - Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters """ return pulumi.get(self, "encryption_password") @@ -23748,8 +24533,7 @@ class NetworktemplateSwitchMatchingRuleArgsDict(TypedDict): """ port_mirroring: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateSwitchMatchingRulePortMirroringArgsDict']]]] """ - Property key is the port mirroring instance name - port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ elif False: NetworktemplateSwitchMatchingRuleArgsDict: TypeAlias = Mapping[str, Any] @@ -23779,8 +24563,7 @@ def __init__(__self__, *, :param pulumi.Input[str] match_type: 'property key define the type of matching, value is the string to match. e.g: `match_name[0:3]`, `match_name[2:6]`, `match_model`, `match_model[0-6]` :param pulumi.Input['NetworktemplateSwitchMatchingRuleOobIpConfigArgs'] oob_ip_config: Out-of-Band Management interface configuration :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateSwitchMatchingRulePortConfigArgs']]] port_config: Propery key is the interface name or interface range - :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateSwitchMatchingRulePortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name - port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateSwitchMatchingRulePortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ if additional_config_cmds is not None: pulumi.set(__self__, "additional_config_cmds", additional_config_cmds) @@ -23951,8 +24734,7 @@ def port_config(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Ne @pulumi.getter(name="portMirroring") def port_mirroring(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateSwitchMatchingRulePortMirroringArgs']]]]: """ - Property key is the port mirroring instance name - port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ return pulumi.get(self, "port_mirroring") @@ -29250,8 +30032,7 @@ class WlanAppLimitArgsDict(TypedDict): enabled: NotRequired[pulumi.Input[bool]] wxtag_ids: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[int]]]] """ - Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - Property key is the wxtag id + Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` """ elif False: WlanAppLimitArgsDict: TypeAlias = Mapping[str, Any] @@ -29265,8 +30046,7 @@ def __init__(__self__, *, """ :param pulumi.Input[Mapping[str, pulumi.Input[int]]] apps: Map from app key to bandwidth in kbps. Property key is the app key, defined in Get Application List - :param pulumi.Input[Mapping[str, pulumi.Input[int]]] wxtag_ids: Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - Property key is the wxtag id + :param pulumi.Input[Mapping[str, pulumi.Input[int]]] wxtag_ids: Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` """ if apps is not None: pulumi.set(__self__, "apps", apps) @@ -29301,8 +30081,7 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="wxtagIds") def wxtag_ids(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[int]]]]: """ - Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - Property key is the wxtag id + Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` """ return pulumi.get(self, "wxtag_ids") @@ -30218,8 +30997,7 @@ class WlanDnsServerRewriteArgsDict(TypedDict): enabled: NotRequired[pulumi.Input[bool]] radius_groups: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]] """ - map between radius_group and the desired DNS server (IPv4 only) - Property key is the RADIUS group, property value is the desired DNS Server + map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server """ elif False: WlanDnsServerRewriteArgsDict: TypeAlias = Mapping[str, Any] @@ -30230,8 +31008,7 @@ def __init__(__self__, *, enabled: Optional[pulumi.Input[bool]] = None, radius_groups: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] radius_groups: map between radius_group and the desired DNS server (IPv4 only) - Property key is the RADIUS group, property value is the desired DNS Server + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] radius_groups: map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server """ if enabled is not None: pulumi.set(__self__, "enabled", enabled) @@ -30251,8 +31028,7 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="radiusGroups") def radius_groups(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: """ - map between radius_group and the desired DNS server (IPv4 only) - Property key is the RADIUS group, property value is the desired DNS Server + map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server """ return pulumi.get(self, "radius_groups") @@ -30271,8 +31047,7 @@ class WlanDynamicPskArgsDict(TypedDict): enabled: NotRequired[pulumi.Input[bool]] force_lookup: NotRequired[pulumi.Input[bool]] """ - when 11r is enabled, we'll try to use the cached PMK, this can be disabled - `false` means auto + when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto """ source: NotRequired[pulumi.Input[str]] """ @@ -30291,8 +31066,7 @@ def __init__(__self__, *, source: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[str] default_psk: default PSK to use if cloud WLC is not available, 8-63 characters - :param pulumi.Input[bool] force_lookup: when 11r is enabled, we'll try to use the cached PMK, this can be disabled - `false` means auto + :param pulumi.Input[bool] force_lookup: when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto :param pulumi.Input[str] source: enum: `cloud_psks`, `radius` """ if default_psk is not None: @@ -30340,8 +31114,7 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="forceLookup") def force_lookup(self) -> Optional[pulumi.Input[bool]]: """ - when 11r is enabled, we'll try to use the cached PMK, this can be disabled - `false` means auto + when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto """ return pulumi.get(self, "force_lookup") @@ -36135,13 +36908,11 @@ class WlanRadsecArgsDict(TypedDict): idle_timeout: NotRequired[pulumi.Input[int]] mxcluster_ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - Org mxedge(s) identified by mxcluster_ids + To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids """ proxy_hosts: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` """ server_name: NotRequired[pulumi.Input[str]] """ @@ -36175,10 +36946,8 @@ def __init__(__self__, *, use_mxedge: Optional[pulumi.Input[bool]] = None, use_site_mxedge: Optional[pulumi.Input[bool]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[str]]] mxcluster_ids: To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - Org mxedge(s) identified by mxcluster_ids - :param pulumi.Input[Sequence[pulumi.Input[str]]] proxy_hosts: default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + :param pulumi.Input[Sequence[pulumi.Input[str]]] mxcluster_ids: To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids + :param pulumi.Input[Sequence[pulumi.Input[str]]] proxy_hosts: default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` :param pulumi.Input[str] server_name: name of the server to verify (against the cacerts in Org Setting). Only if not Mist Edge. :param pulumi.Input[Sequence[pulumi.Input['WlanRadsecServerArgs']]] servers: List of Radsec Servers. Only if not Mist Edge. :param pulumi.Input[bool] use_mxedge: use mxedge(s) as radsecproxy @@ -36234,8 +37003,7 @@ def idle_timeout(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="mxclusterIds") def mxcluster_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - Org mxedge(s) identified by mxcluster_ids + To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids """ return pulumi.get(self, "mxcluster_ids") @@ -36247,8 +37015,7 @@ def mxcluster_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]] @pulumi.getter(name="proxyHosts") def proxy_hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` """ return pulumi.get(self, "proxy_hosts") diff --git a/sdk/python/pulumi_juniper_mist/org/deviceprofile_gateway.py b/sdk/python/pulumi_juniper_mist/org/deviceprofile_gateway.py index a819936a..a808ff37 100644 --- a/sdk/python/pulumi_juniper_mist/org/deviceprofile_gateway.py +++ b/sdk/python/pulumi_juniper_mist/org/deviceprofile_gateway.py @@ -48,7 +48,7 @@ def __init__(__self__, *, vrf_instances: Optional[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayVrfInstancesArgs']]]] = None): """ The set of arguments for constructing a DeviceprofileGateway resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayExtraRoutesArgs']]] extra_routes: Property key is the destination CIDR (e.g. "10.0.0.0/8") @@ -127,7 +127,7 @@ def org_id(self, value: pulumi.Input[str]): @pulumi.getter(name="additionalConfigCmds") def additional_config_cmds(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - additional CLI commands to append to the generated Junos config **Note**: no check is done + additional CLI commands to append to the generated Junos config. **Note**: no check is done """ return pulumi.get(self, "additional_config_cmds") @@ -416,7 +416,7 @@ def __init__(__self__, *, vrf_instances: Optional[pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayVrfInstancesArgs']]]] = None): """ Input properties used for looking up and filtering DeviceprofileGateway resources. - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Mapping[str, pulumi.Input['DeviceprofileGatewayExtraRoutesArgs']]] extra_routes: Property key is the destination CIDR (e.g. "10.0.0.0/8") @@ -490,7 +490,7 @@ def __init__(__self__, *, @pulumi.getter(name="additionalConfigCmds") def additional_config_cmds(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - additional CLI commands to append to the generated Junos config **Note**: no check is done + additional CLI commands to append to the generated Junos config. **Note**: no check is done """ return pulumi.get(self, "additional_config_cmds") @@ -818,7 +818,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Mapping[str, pulumi.Input[Union['DeviceprofileGatewayExtraRoutesArgs', 'DeviceprofileGatewayExtraRoutesArgsDict']]]] extra_routes: Property key is the destination CIDR (e.g. "10.0.0.0/8") @@ -976,7 +976,7 @@ def get(resource_name: str, :param str resource_name: The unique name of the resulting resource. :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Mapping[str, pulumi.Input[Union['DeviceprofileGatewayExtraRoutesArgs', 'DeviceprofileGatewayExtraRoutesArgsDict']]]] extra_routes: Property key is the destination CIDR (e.g. "10.0.0.0/8") @@ -1029,7 +1029,7 @@ def get(resource_name: str, @pulumi.getter(name="additionalConfigCmds") def additional_config_cmds(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - additional CLI commands to append to the generated Junos config **Note**: no check is done + additional CLI commands to append to the generated Junos config. **Note**: no check is done """ return pulumi.get(self, "additional_config_cmds") diff --git a/sdk/python/pulumi_juniper_mist/org/gatewaytemplate.py b/sdk/python/pulumi_juniper_mist/org/gatewaytemplate.py index 8146191b..b6e85410 100644 --- a/sdk/python/pulumi_juniper_mist/org/gatewaytemplate.py +++ b/sdk/python/pulumi_juniper_mist/org/gatewaytemplate.py @@ -49,7 +49,7 @@ def __init__(__self__, *, vrf_instances: Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateVrfInstancesArgs']]]] = None): """ The set of arguments for constructing a Gatewaytemplate resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateExtraRoutesArgs']]] extra_routes: Property key is the destination CIDR (e.g. "10.0.0.0/8") @@ -59,7 +59,8 @@ def __init__(__self__, *, :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers specific to this device. By default, those in Site Settings will be used :param pulumi.Input['GatewaytemplateOobIpConfigArgs'] oob_ip_config: out-of-band (vme/em0/fxp0) IP config :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePathPreferencesArgs']]] path_preferences: Property key is the path name - :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigArgs']]] port_config: Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigArgs']]] port_config: Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). :param pulumi.Input[str] router_id: auto assigned if not set :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateRoutingPoliciesArgs']]] routing_policies: Property key is the routing policy name :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateTunnelConfigsArgs']]] tunnel_configs: Property key is the tunnel name @@ -131,7 +132,7 @@ def org_id(self, value: pulumi.Input[str]): @pulumi.getter(name="additionalConfigCmds") def additional_config_cmds(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - additional CLI commands to append to the generated Junos config **Note**: no check is done + additional CLI commands to append to the generated Junos config. **Note**: no check is done """ return pulumi.get(self, "additional_config_cmds") @@ -305,7 +306,8 @@ def path_preferences(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Inpu @pulumi.getter(name="portConfig") def port_config(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigArgs']]]]: """ - Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). """ return pulumi.get(self, "port_config") @@ -432,7 +434,7 @@ def __init__(__self__, *, vrf_instances: Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateVrfInstancesArgs']]]] = None): """ Input properties used for looking up and filtering Gatewaytemplate resources. - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateExtraRoutesArgs']]] extra_routes: Property key is the destination CIDR (e.g. "10.0.0.0/8") @@ -442,7 +444,8 @@ def __init__(__self__, *, :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers specific to this device. By default, those in Site Settings will be used :param pulumi.Input['GatewaytemplateOobIpConfigArgs'] oob_ip_config: out-of-band (vme/em0/fxp0) IP config :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePathPreferencesArgs']]] path_preferences: Property key is the path name - :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigArgs']]] port_config: Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigArgs']]] port_config: Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). :param pulumi.Input[str] router_id: auto assigned if not set :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateRoutingPoliciesArgs']]] routing_policies: Property key is the routing policy name :param pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplateTunnelConfigsArgs']]] tunnel_configs: Property key is the tunnel name @@ -506,7 +509,7 @@ def __init__(__self__, *, @pulumi.getter(name="additionalConfigCmds") def additional_config_cmds(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - additional CLI commands to append to the generated Junos config **Note**: no check is done + additional CLI commands to append to the generated Junos config. **Note**: no check is done """ return pulumi.get(self, "additional_config_cmds") @@ -689,7 +692,8 @@ def path_preferences(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Inpu @pulumi.getter(name="portConfig") def port_config(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['GatewaytemplatePortConfigArgs']]]]: """ - Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). """ return pulumi.get(self, "port_config") @@ -833,7 +837,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Mapping[str, pulumi.Input[Union['GatewaytemplateExtraRoutesArgs', 'GatewaytemplateExtraRoutesArgsDict']]]] extra_routes: Property key is the destination CIDR (e.g. "10.0.0.0/8") @@ -843,7 +847,8 @@ def __init__(__self__, :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers specific to this device. By default, those in Site Settings will be used :param pulumi.Input[Union['GatewaytemplateOobIpConfigArgs', 'GatewaytemplateOobIpConfigArgsDict']] oob_ip_config: out-of-band (vme/em0/fxp0) IP config :param pulumi.Input[Mapping[str, pulumi.Input[Union['GatewaytemplatePathPreferencesArgs', 'GatewaytemplatePathPreferencesArgsDict']]]] path_preferences: Property key is the path name - :param pulumi.Input[Mapping[str, pulumi.Input[Union['GatewaytemplatePortConfigArgs', 'GatewaytemplatePortConfigArgsDict']]]] port_config: Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + :param pulumi.Input[Mapping[str, pulumi.Input[Union['GatewaytemplatePortConfigArgs', 'GatewaytemplatePortConfigArgsDict']]]] port_config: Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). :param pulumi.Input[str] router_id: auto assigned if not set :param pulumi.Input[Mapping[str, pulumi.Input[Union['GatewaytemplateRoutingPoliciesArgs', 'GatewaytemplateRoutingPoliciesArgsDict']]]] routing_policies: Property key is the routing policy name :param pulumi.Input[Mapping[str, pulumi.Input[Union['GatewaytemplateTunnelConfigsArgs', 'GatewaytemplateTunnelConfigsArgsDict']]]] tunnel_configs: Property key is the tunnel name @@ -991,7 +996,7 @@ def get(resource_name: str, :param str resource_name: The unique name of the resulting resource. :param pulumi.Input[str] id: The unique provider ID of the resource to lookup. :param pulumi.ResourceOptions opts: Options for the resource. - :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config **Note**: no check is done + :param pulumi.Input[Sequence[pulumi.Input[str]]] additional_config_cmds: additional CLI commands to append to the generated Junos config. **Note**: no check is done :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_servers: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Sequence[pulumi.Input[str]]] dns_suffixes: Global dns settings. To keep compatibility, dns settings in `ip_config` and `oob_ip_config` will overwrite this setting :param pulumi.Input[Mapping[str, pulumi.Input[Union['GatewaytemplateExtraRoutesArgs', 'GatewaytemplateExtraRoutesArgsDict']]]] extra_routes: Property key is the destination CIDR (e.g. "10.0.0.0/8") @@ -1001,7 +1006,8 @@ def get(resource_name: str, :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers specific to this device. By default, those in Site Settings will be used :param pulumi.Input[Union['GatewaytemplateOobIpConfigArgs', 'GatewaytemplateOobIpConfigArgsDict']] oob_ip_config: out-of-band (vme/em0/fxp0) IP config :param pulumi.Input[Mapping[str, pulumi.Input[Union['GatewaytemplatePathPreferencesArgs', 'GatewaytemplatePathPreferencesArgsDict']]]] path_preferences: Property key is the path name - :param pulumi.Input[Mapping[str, pulumi.Input[Union['GatewaytemplatePortConfigArgs', 'GatewaytemplatePortConfigArgsDict']]]] port_config: Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + :param pulumi.Input[Mapping[str, pulumi.Input[Union['GatewaytemplatePortConfigArgs', 'GatewaytemplatePortConfigArgsDict']]]] port_config: Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). :param pulumi.Input[str] router_id: auto assigned if not set :param pulumi.Input[Mapping[str, pulumi.Input[Union['GatewaytemplateRoutingPoliciesArgs', 'GatewaytemplateRoutingPoliciesArgsDict']]]] routing_policies: Property key is the routing policy name :param pulumi.Input[Mapping[str, pulumi.Input[Union['GatewaytemplateTunnelConfigsArgs', 'GatewaytemplateTunnelConfigsArgsDict']]]] tunnel_configs: Property key is the tunnel name @@ -1044,7 +1050,7 @@ def get(resource_name: str, @pulumi.getter(name="additionalConfigCmds") def additional_config_cmds(self) -> pulumi.Output[Optional[Sequence[str]]]: """ - additional CLI commands to append to the generated Junos config **Note**: no check is done + additional CLI commands to append to the generated Junos config. **Note**: no check is done """ return pulumi.get(self, "additional_config_cmds") @@ -1159,7 +1165,8 @@ def path_preferences(self) -> pulumi.Output[Optional[Mapping[str, 'outputs.Gatew @pulumi.getter(name="portConfig") def port_config(self) -> pulumi.Output[Optional[Mapping[str, 'outputs.GatewaytemplatePortConfig']]]: """ - Property key is the port(s) name or range (e.g. "ge-0/0/0-10") + Property key is the Port Name (i.e. "ge-0/0/0"), the Ports Range (i.e. "ge-0/0/0-10"), the List of Ports (i.e. + "ge-0/0/0,ge-1/0/0", only allowed for Aggregated or Redundant interfaces) or a Variable (i.e. "{{myvar}}"). """ return pulumi.get(self, "port_config") diff --git a/sdk/python/pulumi_juniper_mist/org/nacidp.py b/sdk/python/pulumi_juniper_mist/org/nacidp.py index e3fbd48d..36cf3d2f 100644 --- a/sdk/python/pulumi_juniper_mist/org/nacidp.py +++ b/sdk/python/pulumi_juniper_mist/org/nacidp.py @@ -39,10 +39,13 @@ def __init__(__self__, *, oauth_cc_client_id: Optional[pulumi.Input[str]] = None, oauth_cc_client_secret: Optional[pulumi.Input[str]] = None, oauth_discovery_url: Optional[pulumi.Input[str]] = None, + oauth_ping_identity_region: Optional[pulumi.Input[str]] = None, oauth_ropc_client_id: Optional[pulumi.Input[str]] = None, oauth_ropc_client_secret: Optional[pulumi.Input[str]] = None, oauth_tenant_id: Optional[pulumi.Input[str]] = None, - oauth_type: Optional[pulumi.Input[str]] = None): + oauth_type: Optional[pulumi.Input[str]] = None, + scim_enabled: Optional[pulumi.Input[bool]] = None, + scim_secret_token: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Nacidp resource. :param pulumi.Input[str] idp_type: enum: `ldap`, `mxedge_proxy`, `oauth` @@ -64,10 +67,13 @@ def __init__(__self__, *, :param pulumi.Input[str] oauth_cc_client_id: Required if `idp_type`==`oauth`, Client Credentials :param pulumi.Input[str] oauth_cc_client_secret: Required if `idp_type`==`oauth`, oauth*cc*client_secret is RSA private key, of the form "-----BEGIN RSA PRIVATE KEY--...." :param pulumi.Input[str] oauth_discovery_url: if `idp_type`==`oauth` + :param pulumi.Input[str] oauth_ping_identity_region: enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) :param pulumi.Input[str] oauth_ropc_client_id: if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials :param pulumi.Input[str] oauth_ropc_client_secret: if `oauth_type`==`azure` or `oauth_type`==`azure-gov`. oauth*ropc*client_secret can be empty :param pulumi.Input[str] oauth_tenant_id: Required if `idp_type`==`oauth`, oauth*tenant*id :param pulumi.Input[str] oauth_type: if `idp_type`==`oauth`. enum: `azure`, `azure-gov`, `okta`, `ping_identity` + :param pulumi.Input[bool] scim_enabled: if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + :param pulumi.Input[str] scim_secret_token: if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP """ pulumi.set(__self__, "idp_type", idp_type) pulumi.set(__self__, "org_id", org_id) @@ -107,6 +113,8 @@ def __init__(__self__, *, pulumi.set(__self__, "oauth_cc_client_secret", oauth_cc_client_secret) if oauth_discovery_url is not None: pulumi.set(__self__, "oauth_discovery_url", oauth_discovery_url) + if oauth_ping_identity_region is not None: + pulumi.set(__self__, "oauth_ping_identity_region", oauth_ping_identity_region) if oauth_ropc_client_id is not None: pulumi.set(__self__, "oauth_ropc_client_id", oauth_ropc_client_id) if oauth_ropc_client_secret is not None: @@ -115,6 +123,10 @@ def __init__(__self__, *, pulumi.set(__self__, "oauth_tenant_id", oauth_tenant_id) if oauth_type is not None: pulumi.set(__self__, "oauth_type", oauth_type) + if scim_enabled is not None: + pulumi.set(__self__, "scim_enabled", scim_enabled) + if scim_secret_token is not None: + pulumi.set(__self__, "scim_secret_token", scim_secret_token) @property @pulumi.getter(name="idpType") @@ -353,6 +365,18 @@ def oauth_discovery_url(self) -> Optional[pulumi.Input[str]]: def oauth_discovery_url(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "oauth_discovery_url", value) + @property + @pulumi.getter(name="oauthPingIdentityRegion") + def oauth_ping_identity_region(self) -> Optional[pulumi.Input[str]]: + """ + enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + """ + return pulumi.get(self, "oauth_ping_identity_region") + + @oauth_ping_identity_region.setter + def oauth_ping_identity_region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "oauth_ping_identity_region", value) + @property @pulumi.getter(name="oauthRopcClientId") def oauth_ropc_client_id(self) -> Optional[pulumi.Input[str]]: @@ -401,6 +425,30 @@ def oauth_type(self) -> Optional[pulumi.Input[str]]: def oauth_type(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "oauth_type", value) + @property + @pulumi.getter(name="scimEnabled") + def scim_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + """ + return pulumi.get(self, "scim_enabled") + + @scim_enabled.setter + def scim_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "scim_enabled", value) + + @property + @pulumi.getter(name="scimSecretToken") + def scim_secret_token(self) -> Optional[pulumi.Input[str]]: + """ + if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + """ + return pulumi.get(self, "scim_secret_token") + + @scim_secret_token.setter + def scim_secret_token(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "scim_secret_token", value) + @pulumi.input_type class _NacidpState: @@ -424,11 +472,14 @@ def __init__(__self__, *, oauth_cc_client_id: Optional[pulumi.Input[str]] = None, oauth_cc_client_secret: Optional[pulumi.Input[str]] = None, oauth_discovery_url: Optional[pulumi.Input[str]] = None, + oauth_ping_identity_region: Optional[pulumi.Input[str]] = None, oauth_ropc_client_id: Optional[pulumi.Input[str]] = None, oauth_ropc_client_secret: Optional[pulumi.Input[str]] = None, oauth_tenant_id: Optional[pulumi.Input[str]] = None, oauth_type: Optional[pulumi.Input[str]] = None, - org_id: Optional[pulumi.Input[str]] = None): + org_id: Optional[pulumi.Input[str]] = None, + scim_enabled: Optional[pulumi.Input[bool]] = None, + scim_secret_token: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering Nacidp resources. :param pulumi.Input[str] group_filter: Required if `ldap_type`==`custom`, LDAP filter that will identify the type of group @@ -450,10 +501,13 @@ def __init__(__self__, *, :param pulumi.Input[str] oauth_cc_client_id: Required if `idp_type`==`oauth`, Client Credentials :param pulumi.Input[str] oauth_cc_client_secret: Required if `idp_type`==`oauth`, oauth*cc*client_secret is RSA private key, of the form "-----BEGIN RSA PRIVATE KEY--...." :param pulumi.Input[str] oauth_discovery_url: if `idp_type`==`oauth` + :param pulumi.Input[str] oauth_ping_identity_region: enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) :param pulumi.Input[str] oauth_ropc_client_id: if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials :param pulumi.Input[str] oauth_ropc_client_secret: if `oauth_type`==`azure` or `oauth_type`==`azure-gov`. oauth*ropc*client_secret can be empty :param pulumi.Input[str] oauth_tenant_id: Required if `idp_type`==`oauth`, oauth*tenant*id :param pulumi.Input[str] oauth_type: if `idp_type`==`oauth`. enum: `azure`, `azure-gov`, `okta`, `ping_identity` + :param pulumi.Input[bool] scim_enabled: if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + :param pulumi.Input[str] scim_secret_token: if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP """ if group_filter is not None: pulumi.set(__self__, "group_filter", group_filter) @@ -493,6 +547,8 @@ def __init__(__self__, *, pulumi.set(__self__, "oauth_cc_client_secret", oauth_cc_client_secret) if oauth_discovery_url is not None: pulumi.set(__self__, "oauth_discovery_url", oauth_discovery_url) + if oauth_ping_identity_region is not None: + pulumi.set(__self__, "oauth_ping_identity_region", oauth_ping_identity_region) if oauth_ropc_client_id is not None: pulumi.set(__self__, "oauth_ropc_client_id", oauth_ropc_client_id) if oauth_ropc_client_secret is not None: @@ -503,6 +559,10 @@ def __init__(__self__, *, pulumi.set(__self__, "oauth_type", oauth_type) if org_id is not None: pulumi.set(__self__, "org_id", org_id) + if scim_enabled is not None: + pulumi.set(__self__, "scim_enabled", scim_enabled) + if scim_secret_token is not None: + pulumi.set(__self__, "scim_secret_token", scim_secret_token) @property @pulumi.getter(name="groupFilter") @@ -732,6 +792,18 @@ def oauth_discovery_url(self) -> Optional[pulumi.Input[str]]: def oauth_discovery_url(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "oauth_discovery_url", value) + @property + @pulumi.getter(name="oauthPingIdentityRegion") + def oauth_ping_identity_region(self) -> Optional[pulumi.Input[str]]: + """ + enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + """ + return pulumi.get(self, "oauth_ping_identity_region") + + @oauth_ping_identity_region.setter + def oauth_ping_identity_region(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "oauth_ping_identity_region", value) + @property @pulumi.getter(name="oauthRopcClientId") def oauth_ropc_client_id(self) -> Optional[pulumi.Input[str]]: @@ -789,6 +861,30 @@ def org_id(self) -> Optional[pulumi.Input[str]]: def org_id(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "org_id", value) + @property + @pulumi.getter(name="scimEnabled") + def scim_enabled(self) -> Optional[pulumi.Input[bool]]: + """ + if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + """ + return pulumi.get(self, "scim_enabled") + + @scim_enabled.setter + def scim_enabled(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "scim_enabled", value) + + @property + @pulumi.getter(name="scimSecretToken") + def scim_secret_token(self) -> Optional[pulumi.Input[str]]: + """ + if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + """ + return pulumi.get(self, "scim_secret_token") + + @scim_secret_token.setter + def scim_secret_token(self, value: Optional[pulumi.Input[str]]): + pulumi.set(self, "scim_secret_token", value) + class Nacidp(pulumi.CustomResource): @overload @@ -814,11 +910,14 @@ def __init__(__self__, oauth_cc_client_id: Optional[pulumi.Input[str]] = None, oauth_cc_client_secret: Optional[pulumi.Input[str]] = None, oauth_discovery_url: Optional[pulumi.Input[str]] = None, + oauth_ping_identity_region: Optional[pulumi.Input[str]] = None, oauth_ropc_client_id: Optional[pulumi.Input[str]] = None, oauth_ropc_client_secret: Optional[pulumi.Input[str]] = None, oauth_tenant_id: Optional[pulumi.Input[str]] = None, oauth_type: Optional[pulumi.Input[str]] = None, org_id: Optional[pulumi.Input[str]] = None, + scim_enabled: Optional[pulumi.Input[bool]] = None, + scim_secret_token: Optional[pulumi.Input[str]] = None, __props__=None): """ This resource manages NAC IDPs (Identity Providers). @@ -909,10 +1008,13 @@ def __init__(__self__, :param pulumi.Input[str] oauth_cc_client_id: Required if `idp_type`==`oauth`, Client Credentials :param pulumi.Input[str] oauth_cc_client_secret: Required if `idp_type`==`oauth`, oauth*cc*client_secret is RSA private key, of the form "-----BEGIN RSA PRIVATE KEY--...." :param pulumi.Input[str] oauth_discovery_url: if `idp_type`==`oauth` + :param pulumi.Input[str] oauth_ping_identity_region: enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) :param pulumi.Input[str] oauth_ropc_client_id: if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials :param pulumi.Input[str] oauth_ropc_client_secret: if `oauth_type`==`azure` or `oauth_type`==`azure-gov`. oauth*ropc*client_secret can be empty :param pulumi.Input[str] oauth_tenant_id: Required if `idp_type`==`oauth`, oauth*tenant*id :param pulumi.Input[str] oauth_type: if `idp_type`==`oauth`. enum: `azure`, `azure-gov`, `okta`, `ping_identity` + :param pulumi.Input[bool] scim_enabled: if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + :param pulumi.Input[str] scim_secret_token: if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP """ ... @overload @@ -1022,11 +1124,14 @@ def _internal_init(__self__, oauth_cc_client_id: Optional[pulumi.Input[str]] = None, oauth_cc_client_secret: Optional[pulumi.Input[str]] = None, oauth_discovery_url: Optional[pulumi.Input[str]] = None, + oauth_ping_identity_region: Optional[pulumi.Input[str]] = None, oauth_ropc_client_id: Optional[pulumi.Input[str]] = None, oauth_ropc_client_secret: Optional[pulumi.Input[str]] = None, oauth_tenant_id: Optional[pulumi.Input[str]] = None, oauth_type: Optional[pulumi.Input[str]] = None, org_id: Optional[pulumi.Input[str]] = None, + scim_enabled: Optional[pulumi.Input[bool]] = None, + scim_secret_token: Optional[pulumi.Input[str]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -1057,6 +1162,7 @@ def _internal_init(__self__, __props__.__dict__["oauth_cc_client_id"] = oauth_cc_client_id __props__.__dict__["oauth_cc_client_secret"] = oauth_cc_client_secret __props__.__dict__["oauth_discovery_url"] = oauth_discovery_url + __props__.__dict__["oauth_ping_identity_region"] = oauth_ping_identity_region __props__.__dict__["oauth_ropc_client_id"] = oauth_ropc_client_id __props__.__dict__["oauth_ropc_client_secret"] = oauth_ropc_client_secret __props__.__dict__["oauth_tenant_id"] = oauth_tenant_id @@ -1064,6 +1170,8 @@ def _internal_init(__self__, if org_id is None and not opts.urn: raise TypeError("Missing required property 'org_id'") __props__.__dict__["org_id"] = org_id + __props__.__dict__["scim_enabled"] = scim_enabled + __props__.__dict__["scim_secret_token"] = scim_secret_token super(Nacidp, __self__).__init__( 'junipermist:org/nacidp:Nacidp', resource_name, @@ -1093,11 +1201,14 @@ def get(resource_name: str, oauth_cc_client_id: Optional[pulumi.Input[str]] = None, oauth_cc_client_secret: Optional[pulumi.Input[str]] = None, oauth_discovery_url: Optional[pulumi.Input[str]] = None, + oauth_ping_identity_region: Optional[pulumi.Input[str]] = None, oauth_ropc_client_id: Optional[pulumi.Input[str]] = None, oauth_ropc_client_secret: Optional[pulumi.Input[str]] = None, oauth_tenant_id: Optional[pulumi.Input[str]] = None, oauth_type: Optional[pulumi.Input[str]] = None, - org_id: Optional[pulumi.Input[str]] = None) -> 'Nacidp': + org_id: Optional[pulumi.Input[str]] = None, + scim_enabled: Optional[pulumi.Input[bool]] = None, + scim_secret_token: Optional[pulumi.Input[str]] = None) -> 'Nacidp': """ Get an existing Nacidp resource's state with the given name, id, and optional extra properties used to qualify the lookup. @@ -1124,10 +1235,13 @@ def get(resource_name: str, :param pulumi.Input[str] oauth_cc_client_id: Required if `idp_type`==`oauth`, Client Credentials :param pulumi.Input[str] oauth_cc_client_secret: Required if `idp_type`==`oauth`, oauth*cc*client_secret is RSA private key, of the form "-----BEGIN RSA PRIVATE KEY--...." :param pulumi.Input[str] oauth_discovery_url: if `idp_type`==`oauth` + :param pulumi.Input[str] oauth_ping_identity_region: enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) :param pulumi.Input[str] oauth_ropc_client_id: if `idp_type`==`oauth`, ropc = Resource Owner Password Credentials :param pulumi.Input[str] oauth_ropc_client_secret: if `oauth_type`==`azure` or `oauth_type`==`azure-gov`. oauth*ropc*client_secret can be empty :param pulumi.Input[str] oauth_tenant_id: Required if `idp_type`==`oauth`, oauth*tenant*id :param pulumi.Input[str] oauth_type: if `idp_type`==`oauth`. enum: `azure`, `azure-gov`, `okta`, `ping_identity` + :param pulumi.Input[bool] scim_enabled: if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + :param pulumi.Input[str] scim_secret_token: if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -1152,11 +1266,14 @@ def get(resource_name: str, __props__.__dict__["oauth_cc_client_id"] = oauth_cc_client_id __props__.__dict__["oauth_cc_client_secret"] = oauth_cc_client_secret __props__.__dict__["oauth_discovery_url"] = oauth_discovery_url + __props__.__dict__["oauth_ping_identity_region"] = oauth_ping_identity_region __props__.__dict__["oauth_ropc_client_id"] = oauth_ropc_client_id __props__.__dict__["oauth_ropc_client_secret"] = oauth_ropc_client_secret __props__.__dict__["oauth_tenant_id"] = oauth_tenant_id __props__.__dict__["oauth_type"] = oauth_type __props__.__dict__["org_id"] = org_id + __props__.__dict__["scim_enabled"] = scim_enabled + __props__.__dict__["scim_secret_token"] = scim_secret_token return Nacidp(resource_name, opts=opts, __props__=__props__) @property @@ -1311,6 +1428,14 @@ def oauth_discovery_url(self) -> pulumi.Output[Optional[str]]: """ return pulumi.get(self, "oauth_discovery_url") + @property + @pulumi.getter(name="oauthPingIdentityRegion") + def oauth_ping_identity_region(self) -> pulumi.Output[str]: + """ + enum: `us` (United States, default), `ca` (Canada), `eu` (Europe), `asia` (Asia), `au` (Australia) + """ + return pulumi.get(self, "oauth_ping_identity_region") + @property @pulumi.getter(name="oauthRopcClientId") def oauth_ropc_client_id(self) -> pulumi.Output[Optional[str]]: @@ -1348,3 +1473,19 @@ def oauth_type(self) -> pulumi.Output[str]: def org_id(self) -> pulumi.Output[str]: return pulumi.get(self, "org_id") + @property + @pulumi.getter(name="scimEnabled") + def scim_enabled(self) -> pulumi.Output[bool]: + """ + if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP + """ + return pulumi.get(self, "scim_enabled") + + @property + @pulumi.getter(name="scimSecretToken") + def scim_secret_token(self) -> pulumi.Output[str]: + """ + if `idp_type`==`oauth`, scim*secret*token (auto-generated when not provided by caller and `scim_enabled`==`true`, empty string when `scim_enabled`==`false`) is used as the Bearer token in the Authorization header of SCIM provisioning requests by the IDP + """ + return pulumi.get(self, "scim_secret_token") + diff --git a/sdk/python/pulumi_juniper_mist/org/network.py b/sdk/python/pulumi_juniper_mist/org/network.py index 0f87e359..751c29ba 100644 --- a/sdk/python/pulumi_juniper_mist/org/network.py +++ b/sdk/python/pulumi_juniper_mist/org/network.py @@ -29,6 +29,7 @@ def __init__(__self__, *, internal_access: Optional[pulumi.Input['NetworkInternalAccessArgs']] = None, internet_access: Optional[pulumi.Input['NetworkInternetAccessArgs']] = None, isolation: Optional[pulumi.Input[bool]] = None, + multicast: Optional[pulumi.Input['NetworkMulticastArgs']] = None, name: Optional[pulumi.Input[str]] = None, routed_for_networks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, subnet6: Optional[pulumi.Input[str]] = None, @@ -40,7 +41,9 @@ def __init__(__self__, *, :param pulumi.Input[bool] disallow_mist_services: whether to disallow Mist Devices in the network :param pulumi.Input['NetworkInternetAccessArgs'] internet_access: whether this network has direct internet access :param pulumi.Input[bool] isolation: whether to allow clients in the network to talk to each other + :param pulumi.Input['NetworkMulticastArgs'] multicast: whether to enable multicast support (only PIM-sparse mode is supported) :param pulumi.Input[Sequence[pulumi.Input[str]]] routed_for_networks: for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) + :param pulumi.Input[Mapping[str, pulumi.Input['NetworkTenantsArgs']]] tenants: Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") :param pulumi.Input[Mapping[str, pulumi.Input['NetworkVpnAccessArgs']]] vpn_access: Property key is the VPN name. Whether this network can be accessed from vpn """ pulumi.set(__self__, "org_id", org_id) @@ -57,6 +60,8 @@ def __init__(__self__, *, pulumi.set(__self__, "internet_access", internet_access) if isolation is not None: pulumi.set(__self__, "isolation", isolation) + if multicast is not None: + pulumi.set(__self__, "multicast", multicast) if name is not None: pulumi.set(__self__, "name", name) if routed_for_networks is not None: @@ -151,6 +156,18 @@ def isolation(self) -> Optional[pulumi.Input[bool]]: def isolation(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "isolation", value) + @property + @pulumi.getter + def multicast(self) -> Optional[pulumi.Input['NetworkMulticastArgs']]: + """ + whether to enable multicast support (only PIM-sparse mode is supported) + """ + return pulumi.get(self, "multicast") + + @multicast.setter + def multicast(self, value: Optional[pulumi.Input['NetworkMulticastArgs']]): + pulumi.set(self, "multicast", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -184,6 +201,9 @@ def subnet6(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tenants(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworkTenantsArgs']]]]: + """ + Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "tenants") @tenants.setter @@ -221,6 +241,7 @@ def __init__(__self__, *, internal_access: Optional[pulumi.Input['NetworkInternalAccessArgs']] = None, internet_access: Optional[pulumi.Input['NetworkInternetAccessArgs']] = None, isolation: Optional[pulumi.Input[bool]] = None, + multicast: Optional[pulumi.Input['NetworkMulticastArgs']] = None, name: Optional[pulumi.Input[str]] = None, org_id: Optional[pulumi.Input[str]] = None, routed_for_networks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -234,7 +255,9 @@ def __init__(__self__, *, :param pulumi.Input[bool] disallow_mist_services: whether to disallow Mist Devices in the network :param pulumi.Input['NetworkInternetAccessArgs'] internet_access: whether this network has direct internet access :param pulumi.Input[bool] isolation: whether to allow clients in the network to talk to each other + :param pulumi.Input['NetworkMulticastArgs'] multicast: whether to enable multicast support (only PIM-sparse mode is supported) :param pulumi.Input[Sequence[pulumi.Input[str]]] routed_for_networks: for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) + :param pulumi.Input[Mapping[str, pulumi.Input['NetworkTenantsArgs']]] tenants: Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") :param pulumi.Input[Mapping[str, pulumi.Input['NetworkVpnAccessArgs']]] vpn_access: Property key is the VPN name. Whether this network can be accessed from vpn """ if disallow_mist_services is not None: @@ -249,6 +272,8 @@ def __init__(__self__, *, pulumi.set(__self__, "internet_access", internet_access) if isolation is not None: pulumi.set(__self__, "isolation", isolation) + if multicast is not None: + pulumi.set(__self__, "multicast", multicast) if name is not None: pulumi.set(__self__, "name", name) if org_id is not None: @@ -329,6 +354,18 @@ def isolation(self) -> Optional[pulumi.Input[bool]]: def isolation(self, value: Optional[pulumi.Input[bool]]): pulumi.set(self, "isolation", value) + @property + @pulumi.getter + def multicast(self) -> Optional[pulumi.Input['NetworkMulticastArgs']]: + """ + whether to enable multicast support (only PIM-sparse mode is supported) + """ + return pulumi.get(self, "multicast") + + @multicast.setter + def multicast(self, value: Optional[pulumi.Input['NetworkMulticastArgs']]): + pulumi.set(self, "multicast", value) + @property @pulumi.getter def name(self) -> Optional[pulumi.Input[str]]: @@ -380,6 +417,9 @@ def subnet6(self, value: Optional[pulumi.Input[str]]): @property @pulumi.getter def tenants(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworkTenantsArgs']]]]: + """ + Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "tenants") @tenants.setter @@ -419,6 +459,7 @@ def __init__(__self__, internal_access: Optional[pulumi.Input[Union['NetworkInternalAccessArgs', 'NetworkInternalAccessArgsDict']]] = None, internet_access: Optional[pulumi.Input[Union['NetworkInternetAccessArgs', 'NetworkInternetAccessArgsDict']]] = None, isolation: Optional[pulumi.Input[bool]] = None, + multicast: Optional[pulumi.Input[Union['NetworkMulticastArgs', 'NetworkMulticastArgsDict']]] = None, name: Optional[pulumi.Input[str]] = None, org_id: Optional[pulumi.Input[str]] = None, routed_for_networks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -460,7 +501,9 @@ def __init__(__self__, :param pulumi.Input[bool] disallow_mist_services: whether to disallow Mist Devices in the network :param pulumi.Input[Union['NetworkInternetAccessArgs', 'NetworkInternetAccessArgsDict']] internet_access: whether this network has direct internet access :param pulumi.Input[bool] isolation: whether to allow clients in the network to talk to each other + :param pulumi.Input[Union['NetworkMulticastArgs', 'NetworkMulticastArgsDict']] multicast: whether to enable multicast support (only PIM-sparse mode is supported) :param pulumi.Input[Sequence[pulumi.Input[str]]] routed_for_networks: for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) + :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworkTenantsArgs', 'NetworkTenantsArgsDict']]]] tenants: Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworkVpnAccessArgs', 'NetworkVpnAccessArgsDict']]]] vpn_access: Property key is the VPN name. Whether this network can be accessed from vpn """ ... @@ -517,6 +560,7 @@ def _internal_init(__self__, internal_access: Optional[pulumi.Input[Union['NetworkInternalAccessArgs', 'NetworkInternalAccessArgsDict']]] = None, internet_access: Optional[pulumi.Input[Union['NetworkInternetAccessArgs', 'NetworkInternetAccessArgsDict']]] = None, isolation: Optional[pulumi.Input[bool]] = None, + multicast: Optional[pulumi.Input[Union['NetworkMulticastArgs', 'NetworkMulticastArgsDict']]] = None, name: Optional[pulumi.Input[str]] = None, org_id: Optional[pulumi.Input[str]] = None, routed_for_networks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -540,6 +584,7 @@ def _internal_init(__self__, __props__.__dict__["internal_access"] = internal_access __props__.__dict__["internet_access"] = internet_access __props__.__dict__["isolation"] = isolation + __props__.__dict__["multicast"] = multicast __props__.__dict__["name"] = name if org_id is None and not opts.urn: raise TypeError("Missing required property 'org_id'") @@ -568,6 +613,7 @@ def get(resource_name: str, internal_access: Optional[pulumi.Input[Union['NetworkInternalAccessArgs', 'NetworkInternalAccessArgsDict']]] = None, internet_access: Optional[pulumi.Input[Union['NetworkInternetAccessArgs', 'NetworkInternetAccessArgsDict']]] = None, isolation: Optional[pulumi.Input[bool]] = None, + multicast: Optional[pulumi.Input[Union['NetworkMulticastArgs', 'NetworkMulticastArgsDict']]] = None, name: Optional[pulumi.Input[str]] = None, org_id: Optional[pulumi.Input[str]] = None, routed_for_networks: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None, @@ -586,7 +632,9 @@ def get(resource_name: str, :param pulumi.Input[bool] disallow_mist_services: whether to disallow Mist Devices in the network :param pulumi.Input[Union['NetworkInternetAccessArgs', 'NetworkInternetAccessArgsDict']] internet_access: whether this network has direct internet access :param pulumi.Input[bool] isolation: whether to allow clients in the network to talk to each other + :param pulumi.Input[Union['NetworkMulticastArgs', 'NetworkMulticastArgsDict']] multicast: whether to enable multicast support (only PIM-sparse mode is supported) :param pulumi.Input[Sequence[pulumi.Input[str]]] routed_for_networks: for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) + :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworkTenantsArgs', 'NetworkTenantsArgsDict']]]] tenants: Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworkVpnAccessArgs', 'NetworkVpnAccessArgsDict']]]] vpn_access: Property key is the VPN name. Whether this network can be accessed from vpn """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -599,6 +647,7 @@ def get(resource_name: str, __props__.__dict__["internal_access"] = internal_access __props__.__dict__["internet_access"] = internet_access __props__.__dict__["isolation"] = isolation + __props__.__dict__["multicast"] = multicast __props__.__dict__["name"] = name __props__.__dict__["org_id"] = org_id __props__.__dict__["routed_for_networks"] = routed_for_networks @@ -648,6 +697,14 @@ def isolation(self) -> pulumi.Output[Optional[bool]]: """ return pulumi.get(self, "isolation") + @property + @pulumi.getter + def multicast(self) -> pulumi.Output[Optional['outputs.NetworkMulticast']]: + """ + whether to enable multicast support (only PIM-sparse mode is supported) + """ + return pulumi.get(self, "multicast") + @property @pulumi.getter def name(self) -> pulumi.Output[str]: @@ -679,6 +736,9 @@ def subnet6(self) -> pulumi.Output[Optional[str]]: @property @pulumi.getter def tenants(self) -> pulumi.Output[Optional[Mapping[str, 'outputs.NetworkTenants']]]: + """ + Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "tenants") @property diff --git a/sdk/python/pulumi_juniper_mist/org/networktemplate.py b/sdk/python/pulumi_juniper_mist/org/networktemplate.py index f605fade..7d883f97 100644 --- a/sdk/python/pulumi_juniper_mist/org/networktemplate.py +++ b/sdk/python/pulumi_juniper_mist/org/networktemplate.py @@ -56,7 +56,7 @@ def __init__(__self__, *, :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateNetworksArgs']]] networks: Property key is network name :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers specific to this device. By default, those in Site Settings will be used :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateOspfAreasArgs']]] ospf_areas: Junos OSPF areas - :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortUsagesArgs']]] port_usages: Property key is the port usage name. Defines the profiles of port configuration configured on the switch @@ -271,7 +271,7 @@ def ospf_areas(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Net @pulumi.getter(name="portMirroring") def port_mirroring(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortMirroringArgs']]]]: """ - Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ @@ -419,7 +419,7 @@ def __init__(__self__, *, :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateNetworksArgs']]] networks: Property key is network name :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers specific to this device. By default, those in Site Settings will be used :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateOspfAreasArgs']]] ospf_areas: Junos OSPF areas - :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortUsagesArgs']]] port_usages: Property key is the port usage name. Defines the profiles of port configuration configured on the switch @@ -635,7 +635,7 @@ def ospf_areas(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Net @pulumi.getter(name="portMirroring") def port_mirroring(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortMirroringArgs']]]]: """ - Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ @@ -800,7 +800,7 @@ def __init__(__self__, :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplateNetworksArgs', 'NetworktemplateNetworksArgsDict']]]] networks: Property key is network name :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers specific to this device. By default, those in Site Settings will be used :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplateOspfAreasArgs', 'NetworktemplateOspfAreasArgsDict']]]] ospf_areas: Junos OSPF areas - :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplatePortMirroringArgs', 'NetworktemplatePortMirroringArgsDict']]]] port_mirroring: Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplatePortMirroringArgs', 'NetworktemplatePortMirroringArgsDict']]]] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplatePortUsagesArgs', 'NetworktemplatePortUsagesArgsDict']]]] port_usages: Property key is the port usage name. Defines the profiles of port configuration configured on the switch @@ -954,7 +954,7 @@ def get(resource_name: str, :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplateNetworksArgs', 'NetworktemplateNetworksArgsDict']]]] networks: Property key is network name :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers specific to this device. By default, those in Site Settings will be used :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplateOspfAreasArgs', 'NetworktemplateOspfAreasArgsDict']]]] ospf_areas: Junos OSPF areas - :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplatePortMirroringArgs', 'NetworktemplatePortMirroringArgsDict']]]] port_mirroring: Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplatePortMirroringArgs', 'NetworktemplatePortMirroringArgsDict']]]] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplatePortUsagesArgs', 'NetworktemplatePortUsagesArgsDict']]]] port_usages: Property key is the port usage name. Defines the profiles of port configuration configured on the switch @@ -1095,7 +1095,7 @@ def ospf_areas(self) -> pulumi.Output[Optional[Mapping[str, 'outputs.Networktemp @pulumi.getter(name="portMirroring") def port_mirroring(self) -> pulumi.Output[Optional[Mapping[str, 'outputs.NetworktemplatePortMirroring']]]: """ - Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ diff --git a/sdk/python/pulumi_juniper_mist/org/outputs.py b/sdk/python/pulumi_juniper_mist/org/outputs.py index e3624014..683a5ced 100644 --- a/sdk/python/pulumi_juniper_mist/org/outputs.py +++ b/sdk/python/pulumi_juniper_mist/org/outputs.py @@ -175,6 +175,8 @@ 'NetworkInternetAccess', 'NetworkInternetAccessDestinationNat', 'NetworkInternetAccessStaticNat', + 'NetworkMulticast', + 'NetworkMulticastGroups', 'NetworkTenants', 'NetworkVpnAccess', 'NetworkVpnAccessDestinationNat', @@ -2494,8 +2496,7 @@ def __init__(__self__, *, :param int bfd_multiplier: when bfd_minimum_interval_is_configured alone :param bool disable_bfd: BFD provides faster path failure detection and is enabled by default :param str export_policy: default export policies if no per-neighbor policies defined - :param bool extended_v4_nexthop: by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + :param bool extended_v4_nexthop: by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this :param int graceful_restart_time: `0` means disable :param str import_policy: default import policies if no per-neighbor policies defined :param Mapping[str, 'DeviceprofileGatewayBgpConfigNeighborsArgs'] neighbors: if per-neighbor as is desired. Property key is the neighbor address @@ -2597,8 +2598,7 @@ def export_policy(self) -> Optional[str]: @pulumi.getter(name="extendedV4Nexthop") def extended_v4_nexthop(self) -> Optional[bool]: """ - by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this """ return pulumi.get(self, "extended_v4_nexthop") @@ -3420,6 +3420,7 @@ def __init__(__self__, *, :param bool isolation: whether to allow clients in the network to talk to each other :param 'DeviceprofileGatewayNetworkMulticastArgs' multicast: whether to enable multicast support (only PIM-sparse mode is supported) :param Sequence[str] routed_for_networks: for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) + :param Mapping[str, 'DeviceprofileGatewayNetworkTenantsArgs'] tenants: Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") :param Mapping[str, 'DeviceprofileGatewayNetworkVpnAccessArgs'] vpn_access: Property key is the VPN name. Whether this network can be accessed from vpn """ pulumi.set(__self__, "name", name) @@ -3522,6 +3523,9 @@ def subnet6(self) -> Optional[str]: @property @pulumi.getter def tenants(self) -> Optional[Mapping[str, 'outputs.DeviceprofileGatewayNetworkTenants']]: + """ + Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "tenants") @property @@ -3581,9 +3585,9 @@ def __init__(__self__, *, restricted: Optional[bool] = None, static_nat: Optional[Mapping[str, 'outputs.DeviceprofileGatewayNetworkInternetAccessStaticNat']] = None): """ - :param Mapping[str, 'DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs'] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param Mapping[str, 'DeviceprofileGatewayNetworkInternetAccessDestinationNatArgs'] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param bool restricted: by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies - :param Mapping[str, 'DeviceprofileGatewayNetworkInternetAccessStaticNatArgs'] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + :param Mapping[str, 'DeviceprofileGatewayNetworkInternetAccessStaticNatArgs'] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ if create_simple_service_policy is not None: pulumi.set(__self__, "create_simple_service_policy", create_simple_service_policy) @@ -3605,7 +3609,7 @@ def create_simple_service_policy(self) -> Optional[bool]: @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[Mapping[str, 'outputs.DeviceprofileGatewayNetworkInternetAccessDestinationNat']]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -3626,7 +3630,7 @@ def restricted(self) -> Optional[bool]: @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[Mapping[str, 'outputs.DeviceprofileGatewayNetworkInternetAccessStaticNat']]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -3638,6 +3642,8 @@ def __key_warning(key: str): suggest = None if key == "internalIp": suggest = "internal_ip" + elif key == "wanName": + suggest = "wan_name" if suggest: pulumi.log.warn(f"Key '{key}' not found in DeviceprofileGatewayNetworkInternetAccessDestinationNat. Access the value via the '{suggest}' property getter instead.") @@ -3653,17 +3659,28 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, internal_ip: Optional[str] = None, name: Optional[str] = None, - port: Optional[int] = None): + port: Optional[str] = None, + wan_name: Optional[str] = None): + """ + :param str internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + :param str port: The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + :param str wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: pulumi.set(__self__, "name", name) if port is not None: pulumi.set(__self__, "port", port) + if wan_name is not None: + pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[str]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @@ -3673,9 +3690,20 @@ def name(self) -> Optional[str]: @property @pulumi.getter - def port(self) -> Optional[int]: + def port(self) -> Optional[str]: + """ + The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "port") + @property + @pulumi.getter(name="wanName") + def wan_name(self) -> Optional[str]: + """ + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ + return pulumi.get(self, "wan_name") + @pulumi.output_type class DeviceprofileGatewayNetworkInternetAccessStaticNat(dict): @@ -3699,34 +3727,36 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - internal_ip: Optional[str] = None, - name: Optional[str] = None, + internal_ip: str, + name: str, wan_name: Optional[str] = None): """ - :param str wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param str internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + :param str wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) if wan_name is not None: pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[str]: + def internal_ip(self) -> str: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @pulumi.getter - def name(self) -> Optional[str]: + def name(self) -> str: return pulumi.get(self, "name") @property @pulumi.getter(name="wanName") def wan_name(self) -> Optional[str]: """ - If not set, we configure the nat policies against all WAN ports for simplicity + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "wan_name") @@ -3897,19 +3927,16 @@ def __init__(__self__, *, """ :param str advertised_subnet: if `routed`==`true`, whether to advertise an aggregated subnet toward HUB this is useful when there are multiple networks on SPOKE's side :param bool allow_ping: whether to allow ping from vpn into this routed network - :param Mapping[str, 'DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs'] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param Mapping[str, 'DeviceprofileGatewayNetworkVpnAccessDestinationNatArgs'] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param str nat_pool: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub :param bool no_readvertise_to_lan_bgp: toward LAN-side BGP peers :param bool no_readvertise_to_lan_ospf: toward LAN-side OSPF peers - :param bool no_readvertise_to_overlay: toward overlay - how HUB should deal with routes it received from Spokes - :param Sequence[str] other_vrfs: by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + :param bool no_readvertise_to_overlay: toward overlay, how HUB should deal with routes it received from Spokes + :param Sequence[str] other_vrfs: by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs :param bool routed: whether this network is routable :param 'DeviceprofileGatewayNetworkVpnAccessSourceNatArgs' source_nat: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub - :param Mapping[str, 'DeviceprofileGatewayNetworkVpnAccessStaticNatArgs'] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") - :param str summarized_subnet: toward overlay - how HUB should deal with routes it received from Spokes + :param Mapping[str, 'DeviceprofileGatewayNetworkVpnAccessStaticNatArgs'] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") + :param str summarized_subnet: toward overlay, how HUB should deal with routes it received from Spokes :param str summarized_subnet_to_lan_bgp: toward LAN-side BGP peers :param str summarized_subnet_to_lan_ospf: toward LAN-side OSPF peers """ @@ -3962,7 +3989,7 @@ def allow_ping(self) -> Optional[bool]: @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[Mapping[str, 'outputs.DeviceprofileGatewayNetworkVpnAccessDestinationNat']]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -3994,8 +4021,7 @@ def no_readvertise_to_lan_ospf(self) -> Optional[bool]: @pulumi.getter(name="noReadvertiseToOverlay") def no_readvertise_to_overlay(self) -> Optional[bool]: """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ return pulumi.get(self, "no_readvertise_to_overlay") @@ -4003,8 +4029,7 @@ def no_readvertise_to_overlay(self) -> Optional[bool]: @pulumi.getter(name="otherVrfs") def other_vrfs(self) -> Optional[Sequence[str]]: """ - by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs """ return pulumi.get(self, "other_vrfs") @@ -4028,7 +4053,7 @@ def source_nat(self) -> Optional['outputs.DeviceprofileGatewayNetworkVpnAccessSo @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[Mapping[str, 'outputs.DeviceprofileGatewayNetworkVpnAccessStaticNat']]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -4036,8 +4061,7 @@ def static_nat(self) -> Optional[Mapping[str, 'outputs.DeviceprofileGatewayNetwo @pulumi.getter(name="summarizedSubnet") def summarized_subnet(self) -> Optional[str]: """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ return pulumi.get(self, "summarized_subnet") @@ -4080,7 +4104,10 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, internal_ip: Optional[str] = None, name: Optional[str] = None, - port: Optional[int] = None): + port: Optional[str] = None): + """ + :param str internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: @@ -4091,6 +4118,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[str]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @@ -4100,7 +4130,7 @@ def name(self) -> Optional[str]: @property @pulumi.getter - def port(self) -> Optional[int]: + def port(self) -> Optional[str]: return pulumi.get(self, "port") @@ -4141,8 +4171,6 @@ def __key_warning(key: str): suggest = None if key == "internalIp": suggest = "internal_ip" - elif key == "wanName": - suggest = "wan_name" if suggest: pulumi.log.warn(f"Key '{key}' not found in DeviceprofileGatewayNetworkVpnAccessStaticNat. Access the value via the '{suggest}' property getter instead.") @@ -4156,37 +4184,27 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - internal_ip: Optional[str] = None, - name: Optional[str] = None, - wan_name: Optional[str] = None): + internal_ip: str, + name: str): """ - :param str wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param str internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) - if wan_name is not None: - pulumi.set(__self__, "wan_name", wan_name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[str]: + def internal_ip(self) -> str: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @pulumi.getter - def name(self) -> Optional[str]: + def name(self) -> str: return pulumi.get(self, "name") - @property - @pulumi.getter(name="wanName") - def wan_name(self) -> Optional[str]: - """ - If not set, we configure the nat policies against all WAN ports for simplicity - """ - return pulumi.get(self, "wan_name") - @pulumi.output_type class DeviceprofileGatewayOobIpConfig(dict): @@ -4638,6 +4656,8 @@ def __key_warning(key: str): suggest = "wan_ext_ip" elif key == "wanExtraRoutes": suggest = "wan_extra_routes" + elif key == "wanNetworks": + suggest = "wan_networks" elif key == "wanProbeOverride": suggest = "wan_probe_override" elif key == "wanSourceNat": @@ -4691,11 +4711,12 @@ def __init__(__self__, *, ssr_no_virtual_mac: Optional[bool] = None, svr_port_range: Optional[str] = None, traffic_shaping: Optional['outputs.DeviceprofileGatewayPortConfigTrafficShaping'] = None, - vlan_id: Optional[int] = None, + vlan_id: Optional[str] = None, vpn_paths: Optional[Mapping[str, 'outputs.DeviceprofileGatewayPortConfigVpnPaths']] = None, wan_arp_policer: Optional[str] = None, wan_ext_ip: Optional[str] = None, wan_extra_routes: Optional[Mapping[str, 'outputs.DeviceprofileGatewayPortConfigWanExtraRoutes']] = None, + wan_networks: Optional[Sequence[str]] = None, wan_probe_override: Optional['outputs.DeviceprofileGatewayPortConfigWanProbeOverride'] = None, wan_source_nat: Optional['outputs.DeviceprofileGatewayPortConfigWanSourceNat'] = None, wan_type: Optional[str] = None): @@ -4703,16 +4724,13 @@ def __init__(__self__, *, :param str usage: port usage name. enum: `ha_control`, `ha_data`, `lan`, `wan` :param bool ae_disable_lacp: if `aggregated`==`true`. To disable LCP support for the AE interface :param str ae_idx: if `aggregated`==`true`. Users could force to use the designated AE name (must be an integer between 0 and 127) - :param bool ae_lacp_force_up: For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + :param bool ae_lacp_force_up: For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only :param bool critical: if want to generate port up/down alarm, set it to true + :param str description: Interface Description. Can be a variable (i.e. "{{myvar}}") :param bool disabled: port admin up (true) / down (false) :param str dsl_type: if `wan_type`==`dsl`. enum: `adsl`, `vdsl` - :param int dsl_vci: if `wan_type`==`dsl` - 16 bit int - :param int dsl_vpi: if `wan_type`==`dsl` - 8 bit int + :param int dsl_vci: if `wan_type`==`dsl`, 16 bit int + :param int dsl_vpi: if `wan_type`==`dsl`, 8 bit int :param str duplex: enum: `auto`, `full`, `half` :param 'DeviceprofileGatewayPortConfigIpConfigArgs' ip_config: Junos IP Config :param str lte_apn: if `wan_type`==`lte` @@ -4720,9 +4738,9 @@ def __init__(__self__, *, :param str lte_password: if `wan_type`==`lte` :param str lte_username: if `wan_type`==`lte` :param str name: name that we'll use to derive config - :param Sequence[str] networks: if `usage`==`lan` + :param Sequence[str] networks: if `usage`==`lan`, name of the `org.Network` resource :param int outer_vlan_id: for Q-in-Q - :param str port_network: if `usage`==`lan` + :param str port_network: Only for SRX and if `usage`==`lan`, the Untagged VLAN Network :param bool preserve_dscp: whether to preserve dscp when sending traffic over VPN (SSR-only) :param bool redundant: if HA mode :param int reth_idx: if HA mode @@ -4730,14 +4748,14 @@ def __init__(__self__, *, :param Sequence[str] reth_nodes: SSR only - supporting vlan-based redundancy (matching the size of `networks`) :param bool ssr_no_virtual_mac: when SSR is running as VM, this is required on certain hosting platforms :param str svr_port_range: for SSR only - :param int vlan_id: if WAN interface is on a VLAN :param Mapping[str, 'DeviceprofileGatewayPortConfigVpnPathsArgs'] vpn_paths: Property key is the VPN name - :param str wan_arp_policer: when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` - :param str wan_ext_ip: optional, if spoke should reach this port by a different IP - :param Mapping[str, 'DeviceprofileGatewayPortConfigWanExtraRoutesArgs'] wan_extra_routes: Property Key is the destianation CIDR (e.g "100.100.100.0/24") - :param 'DeviceprofileGatewayPortConfigWanProbeOverrideArgs' wan_probe_override: if `usage`==`wan` - :param 'DeviceprofileGatewayPortConfigWanSourceNatArgs' wan_source_nat: optional, by default, source-NAT is performed on all WAN Ports using the interface-ip - :param str wan_type: if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + :param str wan_arp_policer: Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + :param str wan_ext_ip: Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP + :param Mapping[str, 'DeviceprofileGatewayPortConfigWanExtraRoutesArgs'] wan_extra_routes: Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") + :param Sequence[str] wan_networks: Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + :param 'DeviceprofileGatewayPortConfigWanProbeOverrideArgs' wan_probe_override: Only if `usage`==`wan` + :param 'DeviceprofileGatewayPortConfigWanSourceNatArgs' wan_source_nat: Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip + :param str wan_type: Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ pulumi.set(__self__, "usage", usage) if ae_disable_lacp is not None: @@ -4816,6 +4834,8 @@ def __init__(__self__, *, pulumi.set(__self__, "wan_ext_ip", wan_ext_ip) if wan_extra_routes is not None: pulumi.set(__self__, "wan_extra_routes", wan_extra_routes) + if wan_networks is not None: + pulumi.set(__self__, "wan_networks", wan_networks) if wan_probe_override is not None: pulumi.set(__self__, "wan_probe_override", wan_probe_override) if wan_source_nat is not None: @@ -4851,9 +4871,7 @@ def ae_idx(self) -> Optional[str]: @pulumi.getter(name="aeLacpForceUp") def ae_lacp_force_up(self) -> Optional[bool]: """ - For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only """ return pulumi.get(self, "ae_lacp_force_up") @@ -4873,6 +4891,9 @@ def critical(self) -> Optional[bool]: @property @pulumi.getter def description(self) -> Optional[str]: + """ + Interface Description. Can be a variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "description") @property @@ -4900,8 +4921,7 @@ def dsl_type(self) -> Optional[str]: @pulumi.getter(name="dslVci") def dsl_vci(self) -> Optional[int]: """ - if `wan_type`==`dsl` - 16 bit int + if `wan_type`==`dsl`, 16 bit int """ return pulumi.get(self, "dsl_vci") @@ -4909,8 +4929,7 @@ def dsl_vci(self) -> Optional[int]: @pulumi.getter(name="dslVpi") def dsl_vpi(self) -> Optional[int]: """ - if `wan_type`==`dsl` - 8 bit int + if `wan_type`==`dsl`, 8 bit int """ return pulumi.get(self, "dsl_vpi") @@ -4984,7 +5003,7 @@ def name(self) -> Optional[str]: @pulumi.getter def networks(self) -> Optional[Sequence[str]]: """ - if `usage`==`lan` + if `usage`==`lan`, name of the `org.Network` resource """ return pulumi.get(self, "networks") @@ -5005,7 +5024,7 @@ def poe_disabled(self) -> Optional[bool]: @pulumi.getter(name="portNetwork") def port_network(self) -> Optional[str]: """ - if `usage`==`lan` + Only for SRX and if `usage`==`lan`, the Untagged VLAN Network """ return pulumi.get(self, "port_network") @@ -5077,10 +5096,7 @@ def traffic_shaping(self) -> Optional['outputs.DeviceprofileGatewayPortConfigTra @property @pulumi.getter(name="vlanId") - def vlan_id(self) -> Optional[int]: - """ - if WAN interface is on a VLAN - """ + def vlan_id(self) -> Optional[str]: return pulumi.get(self, "vlan_id") @property @@ -5095,7 +5111,7 @@ def vpn_paths(self) -> Optional[Mapping[str, 'outputs.DeviceprofileGatewayPortCo @pulumi.getter(name="wanArpPolicer") def wan_arp_policer(self) -> Optional[str]: """ - when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` """ return pulumi.get(self, "wan_arp_policer") @@ -5103,7 +5119,7 @@ def wan_arp_policer(self) -> Optional[str]: @pulumi.getter(name="wanExtIp") def wan_ext_ip(self) -> Optional[str]: """ - optional, if spoke should reach this port by a different IP + Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP """ return pulumi.get(self, "wan_ext_ip") @@ -5111,15 +5127,23 @@ def wan_ext_ip(self) -> Optional[str]: @pulumi.getter(name="wanExtraRoutes") def wan_extra_routes(self) -> Optional[Mapping[str, 'outputs.DeviceprofileGatewayPortConfigWanExtraRoutes']]: """ - Property Key is the destianation CIDR (e.g "100.100.100.0/24") + Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") """ return pulumi.get(self, "wan_extra_routes") + @property + @pulumi.getter(name="wanNetworks") + def wan_networks(self) -> Optional[Sequence[str]]: + """ + Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + """ + return pulumi.get(self, "wan_networks") + @property @pulumi.getter(name="wanProbeOverride") def wan_probe_override(self) -> Optional['outputs.DeviceprofileGatewayPortConfigWanProbeOverride']: """ - if `usage`==`wan` + Only if `usage`==`wan` """ return pulumi.get(self, "wan_probe_override") @@ -5127,7 +5151,7 @@ def wan_probe_override(self) -> Optional['outputs.DeviceprofileGatewayPortConfig @pulumi.getter(name="wanSourceNat") def wan_source_nat(self) -> Optional['outputs.DeviceprofileGatewayPortConfigWanSourceNat']: """ - optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip """ return pulumi.get(self, "wan_source_nat") @@ -5135,7 +5159,7 @@ def wan_source_nat(self) -> Optional['outputs.DeviceprofileGatewayPortConfigWanS @pulumi.getter(name="wanType") def wan_type(self) -> Optional[str]: """ - if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ return pulumi.get(self, "wan_type") @@ -5179,8 +5203,9 @@ def __init__(__self__, *, """ :param Sequence[str] dns: except for out-of_band interface (vme/em0/fxp0) :param Sequence[str] dns_suffixes: except for out-of_band interface (vme/em0/fxp0) - :param str gateway: except for out-of_band interface (vme/em0/fxp0) - :param str netmask: used only if `subnet` is not specified in `networks` + :param str gateway: except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") + :param str ip: Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + :param str netmask: used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") :param str network: optional, the network to be used for mgmt :param str poser_password: if `type`==`pppoe` :param str pppoe_auth: if `type`==`pppoe`. enum: `chap`, `none`, `pap` @@ -5228,20 +5253,23 @@ def dns_suffixes(self) -> Optional[Sequence[str]]: @pulumi.getter def gateway(self) -> Optional[str]: """ - except for out-of_band interface (vme/em0/fxp0) + except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "gateway") @property @pulumi.getter def ip(self) -> Optional[str]: + """ + Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "ip") @property @pulumi.getter def netmask(self) -> Optional[str]: """ - used only if `subnet` is not specified in `networks` + used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "netmask") @@ -5293,6 +5321,8 @@ def __key_warning(key: str): suggest = None if key == "classPercentages": suggest = "class_percentages" + elif key == "maxTxKbps": + suggest = "max_tx_kbps" if suggest: pulumi.log.warn(f"Key '{key}' not found in DeviceprofileGatewayPortConfigTrafficShaping. Access the value via the '{suggest}' property getter instead.") @@ -5307,22 +5337,24 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, class_percentages: Optional[Sequence[int]] = None, - enabled: Optional[bool] = None): + enabled: Optional[bool] = None, + max_tx_kbps: Optional[int] = None): """ - :param Sequence[int] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + :param Sequence[int] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 + :param int max_tx_kbps: Interface Transmit Cap in kbps """ if class_percentages is not None: pulumi.set(__self__, "class_percentages", class_percentages) if enabled is not None: pulumi.set(__self__, "enabled", enabled) + if max_tx_kbps is not None: + pulumi.set(__self__, "max_tx_kbps", max_tx_kbps) @property @pulumi.getter(name="classPercentages") def class_percentages(self) -> Optional[Sequence[int]]: """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ return pulumi.get(self, "class_percentages") @@ -5331,6 +5363,14 @@ def class_percentages(self) -> Optional[Sequence[int]]: def enabled(self) -> Optional[bool]: return pulumi.get(self, "enabled") + @property + @pulumi.getter(name="maxTxKbps") + def max_tx_kbps(self) -> Optional[int]: + """ + Interface Transmit Cap in kbps + """ + return pulumi.get(self, "max_tx_kbps") + @pulumi.output_type class DeviceprofileGatewayPortConfigVpnPaths(dict): @@ -5437,6 +5477,8 @@ def __key_warning(key: str): suggest = None if key == "classPercentages": suggest = "class_percentages" + elif key == "maxTxKbps": + suggest = "max_tx_kbps" if suggest: pulumi.log.warn(f"Key '{key}' not found in DeviceprofileGatewayPortConfigVpnPathsTrafficShaping. Access the value via the '{suggest}' property getter instead.") @@ -5451,22 +5493,24 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, class_percentages: Optional[Sequence[int]] = None, - enabled: Optional[bool] = None): + enabled: Optional[bool] = None, + max_tx_kbps: Optional[int] = None): """ - :param Sequence[int] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + :param Sequence[int] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 + :param int max_tx_kbps: Interface Transmit Cap in kbps """ if class_percentages is not None: pulumi.set(__self__, "class_percentages", class_percentages) if enabled is not None: pulumi.set(__self__, "enabled", enabled) + if max_tx_kbps is not None: + pulumi.set(__self__, "max_tx_kbps", max_tx_kbps) @property @pulumi.getter(name="classPercentages") def class_percentages(self) -> Optional[Sequence[int]]: """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ return pulumi.get(self, "class_percentages") @@ -5475,6 +5519,14 @@ def class_percentages(self) -> Optional[Sequence[int]]: def enabled(self) -> Optional[bool]: return pulumi.get(self, "enabled") + @property + @pulumi.getter(name="maxTxKbps") + def max_tx_kbps(self) -> Optional[int]: + """ + Interface Transmit Cap in kbps + """ + return pulumi.get(self, "max_tx_kbps") + @pulumi.output_type class DeviceprofileGatewayPortConfigWanExtraRoutes(dict): @@ -5666,6 +5718,7 @@ def __init__(__self__, *, accept: Optional[bool] = None, add_communities: Optional[Sequence[str]] = None, add_target_vrfs: Optional[Sequence[str]] = None, + aggregates: Optional[Sequence[str]] = None, communities: Optional[Sequence[str]] = None, exclude_as_paths: Optional[Sequence[str]] = None, exclude_communities: Optional[Sequence[str]] = None, @@ -5674,6 +5727,7 @@ def __init__(__self__, *, prepend_as_paths: Optional[Sequence[str]] = None): """ :param Sequence[str] add_target_vrfs: for SSR, hub decides how VRF routes are leaked on spoke + :param Sequence[str] aggregates: route aggregation :param Sequence[str] communities: when used as export policy, optional :param Sequence[str] exclude_as_paths: when used as export policy, optional. To exclude certain AS :param Sequence[str] export_communitites: when used as export policy, optional @@ -5686,6 +5740,8 @@ def __init__(__self__, *, pulumi.set(__self__, "add_communities", add_communities) if add_target_vrfs is not None: pulumi.set(__self__, "add_target_vrfs", add_target_vrfs) + if aggregates is not None: + pulumi.set(__self__, "aggregates", aggregates) if communities is not None: pulumi.set(__self__, "communities", communities) if exclude_as_paths is not None: @@ -5717,6 +5773,14 @@ def add_target_vrfs(self) -> Optional[Sequence[str]]: """ return pulumi.get(self, "add_target_vrfs") + @property + @pulumi.getter + def aggregates(self) -> Optional[Sequence[str]]: + """ + route aggregation + """ + return pulumi.get(self, "aggregates") + @property @pulumi.getter def communities(self) -> Optional[Sequence[str]]: @@ -5805,8 +5869,7 @@ def __init__(__self__, *, :param Sequence[str] prefixes: zero or more criteria/filter can be specified to match the term, all criteria have to be met :param Sequence[str] protocols: `direct`, `bgp`, `osp`, ... :param Sequence[str] vpn_neighbor_macs: overlay-facing criteria (used for bgp_config where via=vpn) - :param Sequence[str] vpn_paths: overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + :param Sequence[str] vpn_paths: overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ if as_paths is not None: pulumi.set(__self__, "as_paths", as_paths) @@ -5883,8 +5946,7 @@ def vpn_path_sla(self) -> Optional['outputs.DeviceprofileGatewayRoutingPoliciesT @pulumi.getter(name="vpnPaths") def vpn_paths(self) -> Optional[Sequence[str]]: """ - overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ return pulumi.get(self, "vpn_paths") @@ -5912,8 +5974,7 @@ def __init__(__self__, *, route: Optional[str] = None, vrf_name: Optional[str] = None): """ - :param str vrf_name: name of the vrf instance - it can also be the name of the VPN or wan if they + :param str vrf_name: name of the vrf instance, it can also be the name of the VPN or wan if they """ if route is not None: pulumi.set(__self__, "route", route) @@ -5929,8 +5990,7 @@ def route(self) -> Optional[str]: @pulumi.getter(name="vrfName") def vrf_name(self) -> Optional[str]: """ - name of the vrf instance - it can also be the name of the VPN or wan if they + name of the vrf instance, it can also be the name of the VPN or wan if they """ return pulumi.get(self, "vrf_name") @@ -6024,8 +6084,7 @@ def __init__(__self__, *, :param 'DeviceprofileGatewayServicePolicyAppqoeArgs' appqoe: For SRX Only :param bool local_routing: access within the same VRF :param str name: Required when `servicepolicy_id` is not defined, optional otherwise (override the servicepolicy name) - :param str path_preference: by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + :param str path_preference: by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` :param str servicepolicy_id: used to link servicepolicy defined at org level and overwrite some attributes :param Sequence[str] services: Required when `servicepolicy_id` is not defined. List of Applications / Desctinations :param Sequence[str] tenants: Required when `servicepolicy_id` is not defined. List of Networks / Users @@ -6097,8 +6156,7 @@ def name(self) -> Optional[str]: @pulumi.getter(name="pathPreference") def path_preference(self) -> Optional[str]: """ - by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` """ return pulumi.get(self, "path_preference") @@ -6317,25 +6375,21 @@ def __init__(__self__, *, secondary: Optional['outputs.DeviceprofileGatewayTunnelConfigsSecondary'] = None, version: Optional[str] = None): """ - :param int ike_lifetime: Only if `provider`== `custom-ipsec` - :param str ike_mode: Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` - :param Sequence['DeviceprofileGatewayTunnelConfigsIkeProposalArgs'] ike_proposals: if `provider`== `custom-ipsec` - :param int ipsec_lifetime: if `provider`== `custom-ipsec` - :param Sequence['DeviceprofileGatewayTunnelConfigsIpsecProposalArgs'] ipsec_proposals: Only if `provider`== `custom-ipsec` - :param str local_id: Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` - :param str mode: enum: `active-active`, `active-standby` - :param Sequence[str] networks: networks reachable via this tunnel - :param 'DeviceprofileGatewayTunnelConfigsProbeArgs' probe: Only if `provider`== `custom-ipsec` - :param str protocol: Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` - :param str provider: enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` - :param str psk: Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` - :param str version: Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + :param int ike_lifetime: Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 + :param str ike_mode: Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` + :param Sequence['DeviceprofileGatewayTunnelConfigsIkeProposalArgs'] ike_proposals: if `provider`==`custom-ipsec` + :param int ipsec_lifetime: Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 + :param Sequence['DeviceprofileGatewayTunnelConfigsIpsecProposalArgs'] ipsec_proposals: Only if `provider`==`custom-ipsec` + :param str local_id: Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param str mode: Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` + :param Sequence[str] networks: if `provider`==`custom-ipsec`, networks reachable via this tunnel + :param 'DeviceprofileGatewayTunnelConfigsPrimaryArgs' primary: Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param 'DeviceprofileGatewayTunnelConfigsProbeArgs' probe: Only if `provider`==`custom-ipsec` + :param str protocol: Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` + :param str provider: Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + :param str psk: Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param 'DeviceprofileGatewayTunnelConfigsSecondaryArgs' secondary: Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param str version: Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ if auto_provision is not None: pulumi.set(__self__, "auto_provision", auto_provision) @@ -6379,7 +6433,7 @@ def auto_provision(self) -> Optional['outputs.DeviceprofileGatewayTunnelConfigsA @pulumi.getter(name="ikeLifetime") def ike_lifetime(self) -> Optional[int]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ return pulumi.get(self, "ike_lifetime") @@ -6387,7 +6441,7 @@ def ike_lifetime(self) -> Optional[int]: @pulumi.getter(name="ikeMode") def ike_mode(self) -> Optional[str]: """ - Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` """ return pulumi.get(self, "ike_mode") @@ -6395,7 +6449,7 @@ def ike_mode(self) -> Optional[str]: @pulumi.getter(name="ikeProposals") def ike_proposals(self) -> Optional[Sequence['outputs.DeviceprofileGatewayTunnelConfigsIkeProposal']]: """ - if `provider`== `custom-ipsec` + if `provider`==`custom-ipsec` """ return pulumi.get(self, "ike_proposals") @@ -6403,7 +6457,7 @@ def ike_proposals(self) -> Optional[Sequence['outputs.DeviceprofileGatewayTunnel @pulumi.getter(name="ipsecLifetime") def ipsec_lifetime(self) -> Optional[int]: """ - if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ return pulumi.get(self, "ipsec_lifetime") @@ -6411,7 +6465,7 @@ def ipsec_lifetime(self) -> Optional[int]: @pulumi.getter(name="ipsecProposals") def ipsec_proposals(self) -> Optional[Sequence['outputs.DeviceprofileGatewayTunnelConfigsIpsecProposal']]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ return pulumi.get(self, "ipsec_proposals") @@ -6419,10 +6473,7 @@ def ipsec_proposals(self) -> Optional[Sequence['outputs.DeviceprofileGatewayTunn @pulumi.getter(name="localId") def local_id(self) -> Optional[str]: """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "local_id") @@ -6430,7 +6481,7 @@ def local_id(self) -> Optional[str]: @pulumi.getter def mode(self) -> Optional[str]: """ - enum: `active-active`, `active-standby` + Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` """ return pulumi.get(self, "mode") @@ -6438,20 +6489,23 @@ def mode(self) -> Optional[str]: @pulumi.getter def networks(self) -> Optional[Sequence[str]]: """ - networks reachable via this tunnel + if `provider`==`custom-ipsec`, networks reachable via this tunnel """ return pulumi.get(self, "networks") @property @pulumi.getter def primary(self) -> Optional['outputs.DeviceprofileGatewayTunnelConfigsPrimary']: + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ return pulumi.get(self, "primary") @property @pulumi.getter def probe(self) -> Optional['outputs.DeviceprofileGatewayTunnelConfigsProbe']: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ return pulumi.get(self, "probe") @@ -6459,7 +6513,7 @@ def probe(self) -> Optional['outputs.DeviceprofileGatewayTunnelConfigsProbe']: @pulumi.getter def protocol(self) -> Optional[str]: """ - Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` """ return pulumi.get(self, "protocol") @@ -6467,7 +6521,7 @@ def protocol(self) -> Optional[str]: @pulumi.getter def provider(self) -> Optional[str]: """ - enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` """ return pulumi.get(self, "provider") @@ -6475,23 +6529,23 @@ def provider(self) -> Optional[str]: @pulumi.getter def psk(self) -> Optional[str]: """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "psk") @property @pulumi.getter def secondary(self) -> Optional['outputs.DeviceprofileGatewayTunnelConfigsSecondary']: + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ return pulumi.get(self, "secondary") @property @pulumi.getter def version(self) -> Optional[str]: """ - Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ return pulumi.get(self, "version") @@ -6499,19 +6553,37 @@ def version(self) -> Optional[str]: @pulumi.output_type class DeviceprofileGatewayTunnelConfigsAutoProvision(dict): def __init__(__self__, *, + provider: str, enable: Optional[bool] = None, latlng: Optional['outputs.DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng'] = None, primary: Optional['outputs.DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary'] = None, + region: Optional[str] = None, secondary: Optional['outputs.DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary'] = None): + """ + :param str provider: enum: `jse-ipsec`, `zscaler-ipsec` + :param 'DeviceprofileGatewayTunnelConfigsAutoProvisionLatlngArgs' latlng: API override for POP selection + :param str region: API override for POP selection + """ + pulumi.set(__self__, "provider", provider) if enable is not None: pulumi.set(__self__, "enable", enable) if latlng is not None: pulumi.set(__self__, "latlng", latlng) if primary is not None: pulumi.set(__self__, "primary", primary) + if region is not None: + pulumi.set(__self__, "region", region) if secondary is not None: pulumi.set(__self__, "secondary", secondary) + @property + @pulumi.getter + def provider(self) -> str: + """ + enum: `jse-ipsec`, `zscaler-ipsec` + """ + return pulumi.get(self, "provider") + @property @pulumi.getter def enable(self) -> Optional[bool]: @@ -6520,6 +6592,9 @@ def enable(self) -> Optional[bool]: @property @pulumi.getter def latlng(self) -> Optional['outputs.DeviceprofileGatewayTunnelConfigsAutoProvisionLatlng']: + """ + API override for POP selection + """ return pulumi.get(self, "latlng") @property @@ -6527,6 +6602,14 @@ def latlng(self) -> Optional['outputs.DeviceprofileGatewayTunnelConfigsAutoProvi def primary(self) -> Optional['outputs.DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary']: return pulumi.get(self, "primary") + @property + @pulumi.getter + def region(self) -> Optional[str]: + """ + API override for POP selection + """ + return pulumi.get(self, "region") + @property @pulumi.getter def secondary(self) -> Optional['outputs.DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary']: @@ -6557,8 +6640,8 @@ class DeviceprofileGatewayTunnelConfigsAutoProvisionPrimary(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "numHosts": - suggest = "num_hosts" + if key == "probeIps": + suggest = "probe_ips" elif key == "wanNames": suggest = "wan_names" @@ -6574,20 +6657,20 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - num_hosts: Optional[str] = None, + probe_ips: Optional[Sequence[str]] = None, wan_names: Optional[Sequence[str]] = None): """ :param Sequence[str] wan_names: optional, only needed if `vars_only`==`false` """ - if num_hosts is not None: - pulumi.set(__self__, "num_hosts", num_hosts) + if probe_ips is not None: + pulumi.set(__self__, "probe_ips", probe_ips) if wan_names is not None: pulumi.set(__self__, "wan_names", wan_names) @property - @pulumi.getter(name="numHosts") - def num_hosts(self) -> Optional[str]: - return pulumi.get(self, "num_hosts") + @pulumi.getter(name="probeIps") + def probe_ips(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "probe_ips") @property @pulumi.getter(name="wanNames") @@ -6603,8 +6686,8 @@ class DeviceprofileGatewayTunnelConfigsAutoProvisionSecondary(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "numHosts": - suggest = "num_hosts" + if key == "probeIps": + suggest = "probe_ips" elif key == "wanNames": suggest = "wan_names" @@ -6620,20 +6703,20 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - num_hosts: Optional[str] = None, + probe_ips: Optional[Sequence[str]] = None, wan_names: Optional[Sequence[str]] = None): """ :param Sequence[str] wan_names: optional, only needed if `vars_only`==`false` """ - if num_hosts is not None: - pulumi.set(__self__, "num_hosts", num_hosts) + if probe_ips is not None: + pulumi.set(__self__, "probe_ips", probe_ips) if wan_names is not None: pulumi.set(__self__, "wan_names", wan_names) @property - @pulumi.getter(name="numHosts") - def num_hosts(self) -> Optional[str]: - return pulumi.get(self, "num_hosts") + @pulumi.getter(name="probeIps") + def probe_ips(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "probe_ips") @property @pulumi.getter(name="wanNames") @@ -6757,7 +6840,7 @@ def __init__(__self__, *, enc_algo: Optional[str] = None): """ :param str auth_algo: enum: `md5`, `sha1`, `sha2` - :param str dh_group: Only if `provider`== `custom-ipsec`. enum: + :param str dh_group: Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -6789,7 +6872,7 @@ def auth_algo(self) -> Optional[str]: @pulumi.getter(name="dhGroup") def dh_group(self) -> Optional[str]: """ - Only if `provider`== `custom-ipsec`. enum: + Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -6817,14 +6900,14 @@ class DeviceprofileGatewayTunnelConfigsPrimary(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "internalIps": + if key == "wanNames": + suggest = "wan_names" + elif key == "internalIps": suggest = "internal_ips" elif key == "probeIps": suggest = "probe_ips" elif key == "remoteIds": suggest = "remote_ids" - elif key == "wanNames": - suggest = "wan_names" if suggest: pulumi.log.warn(f"Key '{key}' not found in DeviceprofileGatewayTunnelConfigsPrimary. Access the value via the '{suggest}' property getter instead.") @@ -6838,40 +6921,39 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - hosts: Optional[Sequence[str]] = None, + hosts: Sequence[str], + wan_names: Sequence[str], internal_ips: Optional[Sequence[str]] = None, probe_ips: Optional[Sequence[str]] = None, - remote_ids: Optional[Sequence[str]] = None, - wan_names: Optional[Sequence[str]] = None): + remote_ids: Optional[Sequence[str]] = None): """ - :param Sequence[str] internal_ips: Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` - :param Sequence[str] remote_ids: Only if `provider`== `custom-ipsec` + :param Sequence[str] internal_ips: Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` + :param Sequence[str] remote_ids: Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - if hosts is not None: - pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "wan_names", wan_names) if internal_ips is not None: pulumi.set(__self__, "internal_ips", internal_ips) if probe_ips is not None: pulumi.set(__self__, "probe_ips", probe_ips) if remote_ids is not None: pulumi.set(__self__, "remote_ids", remote_ids) - if wan_names is not None: - pulumi.set(__self__, "wan_names", wan_names) @property @pulumi.getter - def hosts(self) -> Optional[Sequence[str]]: + def hosts(self) -> Sequence[str]: return pulumi.get(self, "hosts") + @property + @pulumi.getter(name="wanNames") + def wan_names(self) -> Sequence[str]: + return pulumi.get(self, "wan_names") + @property @pulumi.getter(name="internalIps") def internal_ips(self) -> Optional[Sequence[str]]: """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ return pulumi.get(self, "internal_ips") @@ -6884,15 +6966,10 @@ def probe_ips(self) -> Optional[Sequence[str]]: @pulumi.getter(name="remoteIds") def remote_ids(self) -> Optional[Sequence[str]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "remote_ids") - @property - @pulumi.getter(name="wanNames") - def wan_names(self) -> Optional[Sequence[str]]: - return pulumi.get(self, "wan_names") - @pulumi.output_type class DeviceprofileGatewayTunnelConfigsProbe(dict): @@ -6954,14 +7031,14 @@ class DeviceprofileGatewayTunnelConfigsSecondary(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "internalIps": + if key == "wanNames": + suggest = "wan_names" + elif key == "internalIps": suggest = "internal_ips" elif key == "probeIps": suggest = "probe_ips" elif key == "remoteIds": suggest = "remote_ids" - elif key == "wanNames": - suggest = "wan_names" if suggest: pulumi.log.warn(f"Key '{key}' not found in DeviceprofileGatewayTunnelConfigsSecondary. Access the value via the '{suggest}' property getter instead.") @@ -6975,40 +7052,39 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - hosts: Optional[Sequence[str]] = None, + hosts: Sequence[str], + wan_names: Sequence[str], internal_ips: Optional[Sequence[str]] = None, probe_ips: Optional[Sequence[str]] = None, - remote_ids: Optional[Sequence[str]] = None, - wan_names: Optional[Sequence[str]] = None): + remote_ids: Optional[Sequence[str]] = None): """ - :param Sequence[str] internal_ips: Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` - :param Sequence[str] remote_ids: Only if `provider`== `custom-ipsec` + :param Sequence[str] internal_ips: Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` + :param Sequence[str] remote_ids: Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - if hosts is not None: - pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "wan_names", wan_names) if internal_ips is not None: pulumi.set(__self__, "internal_ips", internal_ips) if probe_ips is not None: pulumi.set(__self__, "probe_ips", probe_ips) if remote_ids is not None: pulumi.set(__self__, "remote_ids", remote_ids) - if wan_names is not None: - pulumi.set(__self__, "wan_names", wan_names) @property @pulumi.getter - def hosts(self) -> Optional[Sequence[str]]: + def hosts(self) -> Sequence[str]: return pulumi.get(self, "hosts") + @property + @pulumi.getter(name="wanNames") + def wan_names(self) -> Sequence[str]: + return pulumi.get(self, "wan_names") + @property @pulumi.getter(name="internalIps") def internal_ips(self) -> Optional[Sequence[str]]: """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ return pulumi.get(self, "internal_ips") @@ -7021,15 +7097,10 @@ def probe_ips(self) -> Optional[Sequence[str]]: @pulumi.getter(name="remoteIds") def remote_ids(self) -> Optional[Sequence[str]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "remote_ids") - @property - @pulumi.getter(name="wanNames") - def wan_names(self) -> Optional[Sequence[str]]: - return pulumi.get(self, "wan_names") - @pulumi.output_type class DeviceprofileGatewayTunnelProviderOptions(dict): @@ -7069,6 +7140,8 @@ def __key_warning(key: str): suggest = None if key == "numUsers": suggest = "num_users" + elif key == "orgName": + suggest = "org_name" if suggest: pulumi.log.warn(f"Key '{key}' not found in DeviceprofileGatewayTunnelProviderOptionsJse. Access the value via the '{suggest}' property getter instead.") @@ -7082,49 +7155,65 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - name: Optional[str] = None, - num_users: Optional[int] = None): - if name is not None: - pulumi.set(__self__, "name", name) + num_users: Optional[int] = None, + org_name: Optional[str] = None): + """ + :param str org_name: JSE Organization name + """ if num_users is not None: pulumi.set(__self__, "num_users", num_users) - - @property - @pulumi.getter - def name(self) -> Optional[str]: - return pulumi.get(self, "name") + if org_name is not None: + pulumi.set(__self__, "org_name", org_name) @property @pulumi.getter(name="numUsers") def num_users(self) -> Optional[int]: return pulumi.get(self, "num_users") + @property + @pulumi.getter(name="orgName") + def org_name(self) -> Optional[str]: + """ + JSE Organization name + """ + return pulumi.get(self, "org_name") + @pulumi.output_type class DeviceprofileGatewayTunnelProviderOptionsZscaler(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "aupAcceptanceRequired": - suggest = "aup_acceptance_required" - elif key == "aupExpire": - suggest = "aup_expire" - elif key == "aupSslProxy": - suggest = "aup_ssl_proxy" - elif key == "downloadMbps": - suggest = "download_mbps" - elif key == "enableAup": - suggest = "enable_aup" - elif key == "enableCaution": - suggest = "enable_caution" - elif key == "enforceAuthentication": - suggest = "enforce_authentication" + if key == "aupBlockInternetUntilAccepted": + suggest = "aup_block_internet_until_accepted" + elif key == "aupEnabled": + suggest = "aup_enabled" + elif key == "aupForceSslInspection": + suggest = "aup_force_ssl_inspection" + elif key == "aupTimeoutInDays": + suggest = "aup_timeout_in_days" + elif key == "authRequired": + suggest = "auth_required" + elif key == "cautionEnabled": + suggest = "caution_enabled" + elif key == "dnBandwidth": + suggest = "dn_bandwidth" + elif key == "idleTimeInMinutes": + suggest = "idle_time_in_minutes" + elif key == "ofwEnabled": + suggest = "ofw_enabled" elif key == "subLocations": suggest = "sub_locations" - elif key == "uploadMbps": - suggest = "upload_mbps" - elif key == "useXff": - suggest = "use_xff" + elif key == "surrogateIp": + suggest = "surrogate_ip" + elif key == "surrogateIpEnforcedForKnownBrowsers": + suggest = "surrogate_ip_enforced_for_known_browsers" + elif key == "surrogateRefreshTimeInMinutes": + suggest = "surrogate_refresh_time_in_minutes" + elif key == "upBandwidth": + suggest = "up_bandwidth" + elif key == "xffForwardEnabled": + suggest = "xff_forward_enabled" if suggest: pulumi.log.warn(f"Key '{key}' not found in DeviceprofileGatewayTunnelProviderOptionsZscaler. Access the value via the '{suggest}' property getter instead.") @@ -7138,128 +7227,184 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - aup_acceptance_required: Optional[bool] = None, - aup_expire: Optional[int] = None, - aup_ssl_proxy: Optional[bool] = None, - download_mbps: Optional[int] = None, - enable_aup: Optional[bool] = None, - enable_caution: Optional[bool] = None, - enforce_authentication: Optional[bool] = None, - name: Optional[str] = None, + aup_block_internet_until_accepted: Optional[bool] = None, + aup_enabled: Optional[bool] = None, + aup_force_ssl_inspection: Optional[bool] = None, + aup_timeout_in_days: Optional[int] = None, + auth_required: Optional[bool] = None, + caution_enabled: Optional[bool] = None, + dn_bandwidth: Optional[float] = None, + idle_time_in_minutes: Optional[int] = None, + ofw_enabled: Optional[bool] = None, sub_locations: Optional[Sequence['outputs.DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation']] = None, - upload_mbps: Optional[int] = None, - use_xff: Optional[bool] = None): - """ - :param int aup_expire: days before AUP is requested again - :param bool aup_ssl_proxy: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - :param int download_mbps: the download bandwidth cap of the link, in Mbps - :param bool enable_aup: if `use_xff`==`true`, display Acceptable Use Policy (AUP) - :param bool enable_caution: when `enforce_authentication`==`false`, display caution notification for non-authenticated users - :param Sequence['DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs'] sub_locations: if `use_xff`==`true` - :param int upload_mbps: the download bandwidth cap of the link, in Mbps - :param bool use_xff: location uses proxy chaining to forward traffic - """ - if aup_acceptance_required is not None: - pulumi.set(__self__, "aup_acceptance_required", aup_acceptance_required) - if aup_expire is not None: - pulumi.set(__self__, "aup_expire", aup_expire) - if aup_ssl_proxy is not None: - pulumi.set(__self__, "aup_ssl_proxy", aup_ssl_proxy) - if download_mbps is not None: - pulumi.set(__self__, "download_mbps", download_mbps) - if enable_aup is not None: - pulumi.set(__self__, "enable_aup", enable_aup) - if enable_caution is not None: - pulumi.set(__self__, "enable_caution", enable_caution) - if enforce_authentication is not None: - pulumi.set(__self__, "enforce_authentication", enforce_authentication) - if name is not None: - pulumi.set(__self__, "name", name) + surrogate_ip: Optional[bool] = None, + surrogate_ip_enforced_for_known_browsers: Optional[bool] = None, + surrogate_refresh_time_in_minutes: Optional[int] = None, + up_bandwidth: Optional[float] = None, + xff_forward_enabled: Optional[bool] = None): + """ + :param bool aup_enabled: Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + :param bool aup_force_ssl_inspection: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + :param int aup_timeout_in_days: Required if `aup_enabled`==`true`. Days before AUP is requested again + :param bool auth_required: Enable this option to enforce user authentication + :param bool caution_enabled: Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + :param float dn_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param int idle_time_in_minutes: Required if `surrogate_IP`==`true`, idle Time to Disassociation + :param bool ofw_enabled: if `true`, enable the firewall control option + :param Sequence['DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocationArgs'] sub_locations: `sub-locations` can be used for specific uses cases to define different configuration based on the user network + :param bool surrogate_ip: Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + :param bool surrogate_ip_enforced_for_known_browsers: Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + :param int surrogate_refresh_time_in_minutes: Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + :param float up_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param bool xff_forward_enabled: location uses proxy chaining to forward traffic + """ + if aup_block_internet_until_accepted is not None: + pulumi.set(__self__, "aup_block_internet_until_accepted", aup_block_internet_until_accepted) + if aup_enabled is not None: + pulumi.set(__self__, "aup_enabled", aup_enabled) + if aup_force_ssl_inspection is not None: + pulumi.set(__self__, "aup_force_ssl_inspection", aup_force_ssl_inspection) + if aup_timeout_in_days is not None: + pulumi.set(__self__, "aup_timeout_in_days", aup_timeout_in_days) + if auth_required is not None: + pulumi.set(__self__, "auth_required", auth_required) + if caution_enabled is not None: + pulumi.set(__self__, "caution_enabled", caution_enabled) + if dn_bandwidth is not None: + pulumi.set(__self__, "dn_bandwidth", dn_bandwidth) + if idle_time_in_minutes is not None: + pulumi.set(__self__, "idle_time_in_minutes", idle_time_in_minutes) + if ofw_enabled is not None: + pulumi.set(__self__, "ofw_enabled", ofw_enabled) if sub_locations is not None: pulumi.set(__self__, "sub_locations", sub_locations) - if upload_mbps is not None: - pulumi.set(__self__, "upload_mbps", upload_mbps) - if use_xff is not None: - pulumi.set(__self__, "use_xff", use_xff) + if surrogate_ip is not None: + pulumi.set(__self__, "surrogate_ip", surrogate_ip) + if surrogate_ip_enforced_for_known_browsers is not None: + pulumi.set(__self__, "surrogate_ip_enforced_for_known_browsers", surrogate_ip_enforced_for_known_browsers) + if surrogate_refresh_time_in_minutes is not None: + pulumi.set(__self__, "surrogate_refresh_time_in_minutes", surrogate_refresh_time_in_minutes) + if up_bandwidth is not None: + pulumi.set(__self__, "up_bandwidth", up_bandwidth) + if xff_forward_enabled is not None: + pulumi.set(__self__, "xff_forward_enabled", xff_forward_enabled) @property - @pulumi.getter(name="aupAcceptanceRequired") - def aup_acceptance_required(self) -> Optional[bool]: - return pulumi.get(self, "aup_acceptance_required") + @pulumi.getter(name="aupBlockInternetUntilAccepted") + def aup_block_internet_until_accepted(self) -> Optional[bool]: + return pulumi.get(self, "aup_block_internet_until_accepted") @property - @pulumi.getter(name="aupExpire") - def aup_expire(self) -> Optional[int]: + @pulumi.getter(name="aupEnabled") + def aup_enabled(self) -> Optional[bool]: """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - return pulumi.get(self, "aup_expire") + return pulumi.get(self, "aup_enabled") @property - @pulumi.getter(name="aupSslProxy") - def aup_ssl_proxy(self) -> Optional[bool]: + @pulumi.getter(name="aupForceSslInspection") + def aup_force_ssl_inspection(self) -> Optional[bool]: """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - return pulumi.get(self, "aup_ssl_proxy") + return pulumi.get(self, "aup_force_ssl_inspection") + + @property + @pulumi.getter(name="aupTimeoutInDays") + def aup_timeout_in_days(self) -> Optional[int]: + """ + Required if `aup_enabled`==`true`. Days before AUP is requested again + """ + return pulumi.get(self, "aup_timeout_in_days") @property - @pulumi.getter(name="downloadMbps") - def download_mbps(self) -> Optional[int]: + @pulumi.getter(name="authRequired") + def auth_required(self) -> Optional[bool]: """ - the download bandwidth cap of the link, in Mbps + Enable this option to enforce user authentication """ - return pulumi.get(self, "download_mbps") + return pulumi.get(self, "auth_required") @property - @pulumi.getter(name="enableAup") - def enable_aup(self) -> Optional[bool]: + @pulumi.getter(name="cautionEnabled") + def caution_enabled(self) -> Optional[bool]: """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - return pulumi.get(self, "enable_aup") + return pulumi.get(self, "caution_enabled") @property - @pulumi.getter(name="enableCaution") - def enable_caution(self) -> Optional[bool]: + @pulumi.getter(name="dnBandwidth") + def dn_bandwidth(self) -> Optional[float]: """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + the download bandwidth cap of the link, in Mbps. Disabled if not set """ - return pulumi.get(self, "enable_caution") + return pulumi.get(self, "dn_bandwidth") @property - @pulumi.getter(name="enforceAuthentication") - def enforce_authentication(self) -> Optional[bool]: - return pulumi.get(self, "enforce_authentication") + @pulumi.getter(name="idleTimeInMinutes") + def idle_time_in_minutes(self) -> Optional[int]: + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + return pulumi.get(self, "idle_time_in_minutes") @property - @pulumi.getter - def name(self) -> Optional[str]: - return pulumi.get(self, "name") + @pulumi.getter(name="ofwEnabled") + def ofw_enabled(self) -> Optional[bool]: + """ + if `true`, enable the firewall control option + """ + return pulumi.get(self, "ofw_enabled") @property @pulumi.getter(name="subLocations") def sub_locations(self) -> Optional[Sequence['outputs.DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation']]: """ - if `use_xff`==`true` + `sub-locations` can be used for specific uses cases to define different configuration based on the user network """ return pulumi.get(self, "sub_locations") @property - @pulumi.getter(name="uploadMbps") - def upload_mbps(self) -> Optional[int]: + @pulumi.getter(name="surrogateIp") + def surrogate_ip(self) -> Optional[bool]: + """ + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + """ + return pulumi.get(self, "surrogate_ip") + + @property + @pulumi.getter(name="surrogateIpEnforcedForKnownBrowsers") + def surrogate_ip_enforced_for_known_browsers(self) -> Optional[bool]: + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + """ + return pulumi.get(self, "surrogate_ip_enforced_for_known_browsers") + + @property + @pulumi.getter(name="surrogateRefreshTimeInMinutes") + def surrogate_refresh_time_in_minutes(self) -> Optional[int]: + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + return pulumi.get(self, "surrogate_refresh_time_in_minutes") + + @property + @pulumi.getter(name="upBandwidth") + def up_bandwidth(self) -> Optional[float]: """ - the download bandwidth cap of the link, in Mbps + the download bandwidth cap of the link, in Mbps. Disabled if not set """ - return pulumi.get(self, "upload_mbps") + return pulumi.get(self, "up_bandwidth") @property - @pulumi.getter(name="useXff") - def use_xff(self) -> Optional[bool]: + @pulumi.getter(name="xffForwardEnabled") + def xff_forward_enabled(self) -> Optional[bool]: """ location uses proxy chaining to forward traffic """ - return pulumi.get(self, "use_xff") + return pulumi.get(self, "xff_forward_enabled") @pulumi.output_type @@ -7267,22 +7412,32 @@ class DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "aupAcceptanceRequired": - suggest = "aup_acceptance_required" - elif key == "aupExpire": - suggest = "aup_expire" - elif key == "aupSslProxy": - suggest = "aup_ssl_proxy" - elif key == "downloadMbps": - suggest = "download_mbps" - elif key == "enableAup": - suggest = "enable_aup" - elif key == "enableCaution": - suggest = "enable_caution" - elif key == "enforceAuthentication": - suggest = "enforce_authentication" - elif key == "uploadMbps": - suggest = "upload_mbps" + if key == "aupBlockInternetUntilAccepted": + suggest = "aup_block_internet_until_accepted" + elif key == "aupEnabled": + suggest = "aup_enabled" + elif key == "aupForceSslInspection": + suggest = "aup_force_ssl_inspection" + elif key == "aupTimeoutInDays": + suggest = "aup_timeout_in_days" + elif key == "authRequired": + suggest = "auth_required" + elif key == "cautionEnabled": + suggest = "caution_enabled" + elif key == "dnBandwidth": + suggest = "dn_bandwidth" + elif key == "idleTimeInMinutes": + suggest = "idle_time_in_minutes" + elif key == "ofwEnabled": + suggest = "ofw_enabled" + elif key == "surrogateIp": + suggest = "surrogate_ip" + elif key == "surrogateIpEnforcedForKnownBrowsers": + suggest = "surrogate_ip_enforced_for_known_browsers" + elif key == "surrogateRefreshTimeInMinutes": + suggest = "surrogate_refresh_time_in_minutes" + elif key == "upBandwidth": + suggest = "up_bandwidth" if suggest: pulumi.log.warn(f"Key '{key}' not found in DeviceprofileGatewayTunnelProviderOptionsZscalerSubLocation. Access the value via the '{suggest}' property getter instead.") @@ -7296,104 +7451,172 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - aup_acceptance_required: Optional[bool] = None, - aup_expire: Optional[int] = None, - aup_ssl_proxy: Optional[bool] = None, - download_mbps: Optional[int] = None, - enable_aup: Optional[bool] = None, - enable_caution: Optional[bool] = None, - enforce_authentication: Optional[bool] = None, - subnets: Optional[Sequence[str]] = None, - upload_mbps: Optional[int] = None): - """ - :param int aup_expire: days before AUP is requested again - :param bool aup_ssl_proxy: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - :param int download_mbps: the download bandwidth cap of the link, in Mbps - :param bool enable_aup: if `use_xff`==`true`, display Acceptable Use Policy (AUP) - :param bool enable_caution: when `enforce_authentication`==`false`, display caution notification for non-authenticated users - :param int upload_mbps: the download bandwidth cap of the link, in Mbps - """ - if aup_acceptance_required is not None: - pulumi.set(__self__, "aup_acceptance_required", aup_acceptance_required) - if aup_expire is not None: - pulumi.set(__self__, "aup_expire", aup_expire) - if aup_ssl_proxy is not None: - pulumi.set(__self__, "aup_ssl_proxy", aup_ssl_proxy) - if download_mbps is not None: - pulumi.set(__self__, "download_mbps", download_mbps) - if enable_aup is not None: - pulumi.set(__self__, "enable_aup", enable_aup) - if enable_caution is not None: - pulumi.set(__self__, "enable_caution", enable_caution) - if enforce_authentication is not None: - pulumi.set(__self__, "enforce_authentication", enforce_authentication) - if subnets is not None: - pulumi.set(__self__, "subnets", subnets) - if upload_mbps is not None: - pulumi.set(__self__, "upload_mbps", upload_mbps) + aup_block_internet_until_accepted: Optional[bool] = None, + aup_enabled: Optional[bool] = None, + aup_force_ssl_inspection: Optional[bool] = None, + aup_timeout_in_days: Optional[int] = None, + auth_required: Optional[bool] = None, + caution_enabled: Optional[bool] = None, + dn_bandwidth: Optional[float] = None, + idle_time_in_minutes: Optional[int] = None, + name: Optional[str] = None, + ofw_enabled: Optional[bool] = None, + surrogate_ip: Optional[bool] = None, + surrogate_ip_enforced_for_known_browsers: Optional[bool] = None, + surrogate_refresh_time_in_minutes: Optional[int] = None, + up_bandwidth: Optional[float] = None): + """ + :param bool aup_enabled: Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + :param bool aup_force_ssl_inspection: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + :param int aup_timeout_in_days: Required if `aup_enabled`==`true`. Days before AUP is requested again + :param bool auth_required: Enable this option to authenticate users + :param bool caution_enabled: Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + :param float dn_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param int idle_time_in_minutes: Required if `surrogate_IP`==`true`, idle Time to Disassociation + :param str name: Network name + :param bool ofw_enabled: if `true`, enable the firewall control option + :param bool surrogate_ip: Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + :param bool surrogate_ip_enforced_for_known_browsers: Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + :param int surrogate_refresh_time_in_minutes: Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + :param float up_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + if aup_block_internet_until_accepted is not None: + pulumi.set(__self__, "aup_block_internet_until_accepted", aup_block_internet_until_accepted) + if aup_enabled is not None: + pulumi.set(__self__, "aup_enabled", aup_enabled) + if aup_force_ssl_inspection is not None: + pulumi.set(__self__, "aup_force_ssl_inspection", aup_force_ssl_inspection) + if aup_timeout_in_days is not None: + pulumi.set(__self__, "aup_timeout_in_days", aup_timeout_in_days) + if auth_required is not None: + pulumi.set(__self__, "auth_required", auth_required) + if caution_enabled is not None: + pulumi.set(__self__, "caution_enabled", caution_enabled) + if dn_bandwidth is not None: + pulumi.set(__self__, "dn_bandwidth", dn_bandwidth) + if idle_time_in_minutes is not None: + pulumi.set(__self__, "idle_time_in_minutes", idle_time_in_minutes) + if name is not None: + pulumi.set(__self__, "name", name) + if ofw_enabled is not None: + pulumi.set(__self__, "ofw_enabled", ofw_enabled) + if surrogate_ip is not None: + pulumi.set(__self__, "surrogate_ip", surrogate_ip) + if surrogate_ip_enforced_for_known_browsers is not None: + pulumi.set(__self__, "surrogate_ip_enforced_for_known_browsers", surrogate_ip_enforced_for_known_browsers) + if surrogate_refresh_time_in_minutes is not None: + pulumi.set(__self__, "surrogate_refresh_time_in_minutes", surrogate_refresh_time_in_minutes) + if up_bandwidth is not None: + pulumi.set(__self__, "up_bandwidth", up_bandwidth) @property - @pulumi.getter(name="aupAcceptanceRequired") - def aup_acceptance_required(self) -> Optional[bool]: - return pulumi.get(self, "aup_acceptance_required") + @pulumi.getter(name="aupBlockInternetUntilAccepted") + def aup_block_internet_until_accepted(self) -> Optional[bool]: + return pulumi.get(self, "aup_block_internet_until_accepted") @property - @pulumi.getter(name="aupExpire") - def aup_expire(self) -> Optional[int]: + @pulumi.getter(name="aupEnabled") + def aup_enabled(self) -> Optional[bool]: """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - return pulumi.get(self, "aup_expire") + return pulumi.get(self, "aup_enabled") @property - @pulumi.getter(name="aupSslProxy") - def aup_ssl_proxy(self) -> Optional[bool]: + @pulumi.getter(name="aupForceSslInspection") + def aup_force_ssl_inspection(self) -> Optional[bool]: """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - return pulumi.get(self, "aup_ssl_proxy") + return pulumi.get(self, "aup_force_ssl_inspection") + + @property + @pulumi.getter(name="aupTimeoutInDays") + def aup_timeout_in_days(self) -> Optional[int]: + """ + Required if `aup_enabled`==`true`. Days before AUP is requested again + """ + return pulumi.get(self, "aup_timeout_in_days") @property - @pulumi.getter(name="downloadMbps") - def download_mbps(self) -> Optional[int]: + @pulumi.getter(name="authRequired") + def auth_required(self) -> Optional[bool]: """ - the download bandwidth cap of the link, in Mbps + Enable this option to authenticate users """ - return pulumi.get(self, "download_mbps") + return pulumi.get(self, "auth_required") @property - @pulumi.getter(name="enableAup") - def enable_aup(self) -> Optional[bool]: + @pulumi.getter(name="cautionEnabled") + def caution_enabled(self) -> Optional[bool]: """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - return pulumi.get(self, "enable_aup") + return pulumi.get(self, "caution_enabled") @property - @pulumi.getter(name="enableCaution") - def enable_caution(self) -> Optional[bool]: + @pulumi.getter(name="dnBandwidth") + def dn_bandwidth(self) -> Optional[float]: """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + the download bandwidth cap of the link, in Mbps. Disabled if not set """ - return pulumi.get(self, "enable_caution") + return pulumi.get(self, "dn_bandwidth") @property - @pulumi.getter(name="enforceAuthentication") - def enforce_authentication(self) -> Optional[bool]: - return pulumi.get(self, "enforce_authentication") + @pulumi.getter(name="idleTimeInMinutes") + def idle_time_in_minutes(self) -> Optional[int]: + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + return pulumi.get(self, "idle_time_in_minutes") @property @pulumi.getter - def subnets(self) -> Optional[Sequence[str]]: - return pulumi.get(self, "subnets") + def name(self) -> Optional[str]: + """ + Network name + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="ofwEnabled") + def ofw_enabled(self) -> Optional[bool]: + """ + if `true`, enable the firewall control option + """ + return pulumi.get(self, "ofw_enabled") + + @property + @pulumi.getter(name="surrogateIp") + def surrogate_ip(self) -> Optional[bool]: + """ + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + """ + return pulumi.get(self, "surrogate_ip") + + @property + @pulumi.getter(name="surrogateIpEnforcedForKnownBrowsers") + def surrogate_ip_enforced_for_known_browsers(self) -> Optional[bool]: + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + """ + return pulumi.get(self, "surrogate_ip_enforced_for_known_browsers") + + @property + @pulumi.getter(name="surrogateRefreshTimeInMinutes") + def surrogate_refresh_time_in_minutes(self) -> Optional[int]: + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + return pulumi.get(self, "surrogate_refresh_time_in_minutes") @property - @pulumi.getter(name="uploadMbps") - def upload_mbps(self) -> Optional[int]: + @pulumi.getter(name="upBandwidth") + def up_bandwidth(self) -> Optional[float]: """ - the download bandwidth cap of the link, in Mbps + the download bandwidth cap of the link, in Mbps. Disabled if not set """ - return pulumi.get(self, "upload_mbps") + return pulumi.get(self, "up_bandwidth") @pulumi.output_type @@ -7900,8 +8123,7 @@ def __init__(__self__, *, :param int bfd_multiplier: when bfd_minimum_interval_is_configured alone :param bool disable_bfd: BFD provides faster path failure detection and is enabled by default :param str export_policy: default export policies if no per-neighbor policies defined - :param bool extended_v4_nexthop: by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + :param bool extended_v4_nexthop: by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this :param int graceful_restart_time: `0` means disable :param str import_policy: default import policies if no per-neighbor policies defined :param Mapping[str, 'GatewaytemplateBgpConfigNeighborsArgs'] neighbors: if per-neighbor as is desired. Property key is the neighbor address @@ -8003,8 +8225,7 @@ def export_policy(self) -> Optional[str]: @pulumi.getter(name="extendedV4Nexthop") def extended_v4_nexthop(self) -> Optional[bool]: """ - by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6) - for v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this + by default, either inet/net6 unicast depending on neighbor IP family (v4 or v6). For v6 neighbors, to exchange v4 nexthop, which allows dual-stack support, enable this """ return pulumi.get(self, "extended_v4_nexthop") @@ -8826,6 +9047,7 @@ def __init__(__self__, *, :param bool isolation: whether to allow clients in the network to talk to each other :param 'GatewaytemplateNetworkMulticastArgs' multicast: whether to enable multicast support (only PIM-sparse mode is supported) :param Sequence[str] routed_for_networks: for a Network (usually LAN), it can be routable to other networks (e.g. OSPF) + :param Mapping[str, 'GatewaytemplateNetworkTenantsArgs'] tenants: Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") :param Mapping[str, 'GatewaytemplateNetworkVpnAccessArgs'] vpn_access: Property key is the VPN name. Whether this network can be accessed from vpn """ pulumi.set(__self__, "name", name) @@ -8928,7 +9150,10 @@ def subnet6(self) -> Optional[str]: @property @pulumi.getter def tenants(self) -> Optional[Mapping[str, 'outputs.GatewaytemplateNetworkTenants']]: - return pulumi.get(self, "tenants") + """ + Property key must be the user/tenant name (i.e. "printer-1") or a Variable (i.e. "{{myvar}}") + """ + return pulumi.get(self, "tenants") @property @pulumi.getter(name="vlanId") @@ -8987,9 +9212,9 @@ def __init__(__self__, *, restricted: Optional[bool] = None, static_nat: Optional[Mapping[str, 'outputs.GatewaytemplateNetworkInternetAccessStaticNat']] = None): """ - :param Mapping[str, 'GatewaytemplateNetworkInternetAccessDestinationNatArgs'] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param Mapping[str, 'GatewaytemplateNetworkInternetAccessDestinationNatArgs'] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param bool restricted: by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies - :param Mapping[str, 'GatewaytemplateNetworkInternetAccessStaticNatArgs'] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + :param Mapping[str, 'GatewaytemplateNetworkInternetAccessStaticNatArgs'] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ if create_simple_service_policy is not None: pulumi.set(__self__, "create_simple_service_policy", create_simple_service_policy) @@ -9011,7 +9236,7 @@ def create_simple_service_policy(self) -> Optional[bool]: @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[Mapping[str, 'outputs.GatewaytemplateNetworkInternetAccessDestinationNat']]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -9032,7 +9257,7 @@ def restricted(self) -> Optional[bool]: @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[Mapping[str, 'outputs.GatewaytemplateNetworkInternetAccessStaticNat']]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -9044,6 +9269,8 @@ def __key_warning(key: str): suggest = None if key == "internalIp": suggest = "internal_ip" + elif key == "wanName": + suggest = "wan_name" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewaytemplateNetworkInternetAccessDestinationNat. Access the value via the '{suggest}' property getter instead.") @@ -9059,17 +9286,28 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, internal_ip: Optional[str] = None, name: Optional[str] = None, - port: Optional[int] = None): + port: Optional[str] = None, + wan_name: Optional[str] = None): + """ + :param str internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + :param str port: The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + :param str wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: pulumi.set(__self__, "name", name) if port is not None: pulumi.set(__self__, "port", port) + if wan_name is not None: + pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[str]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @@ -9079,9 +9317,20 @@ def name(self) -> Optional[str]: @property @pulumi.getter - def port(self) -> Optional[int]: + def port(self) -> Optional[str]: + """ + The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "port") + @property + @pulumi.getter(name="wanName") + def wan_name(self) -> Optional[str]: + """ + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ + return pulumi.get(self, "wan_name") + @pulumi.output_type class GatewaytemplateNetworkInternetAccessStaticNat(dict): @@ -9105,34 +9354,36 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - internal_ip: Optional[str] = None, - name: Optional[str] = None, + internal_ip: str, + name: str, wan_name: Optional[str] = None): """ - :param str wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param str internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + :param str wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) if wan_name is not None: pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[str]: + def internal_ip(self) -> str: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @pulumi.getter - def name(self) -> Optional[str]: + def name(self) -> str: return pulumi.get(self, "name") @property @pulumi.getter(name="wanName") def wan_name(self) -> Optional[str]: """ - If not set, we configure the nat policies against all WAN ports for simplicity + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "wan_name") @@ -9303,19 +9554,16 @@ def __init__(__self__, *, """ :param str advertised_subnet: if `routed`==`true`, whether to advertise an aggregated subnet toward HUB this is useful when there are multiple networks on SPOKE's side :param bool allow_ping: whether to allow ping from vpn into this routed network - :param Mapping[str, 'GatewaytemplateNetworkVpnAccessDestinationNatArgs'] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param Mapping[str, 'GatewaytemplateNetworkVpnAccessDestinationNatArgs'] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param str nat_pool: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub :param bool no_readvertise_to_lan_bgp: toward LAN-side BGP peers :param bool no_readvertise_to_lan_ospf: toward LAN-side OSPF peers - :param bool no_readvertise_to_overlay: toward overlay - how HUB should deal with routes it received from Spokes - :param Sequence[str] other_vrfs: by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + :param bool no_readvertise_to_overlay: toward overlay, how HUB should deal with routes it received from Spokes + :param Sequence[str] other_vrfs: by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs :param bool routed: whether this network is routable :param 'GatewaytemplateNetworkVpnAccessSourceNatArgs' source_nat: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub - :param Mapping[str, 'GatewaytemplateNetworkVpnAccessStaticNatArgs'] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") - :param str summarized_subnet: toward overlay - how HUB should deal with routes it received from Spokes + :param Mapping[str, 'GatewaytemplateNetworkVpnAccessStaticNatArgs'] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") + :param str summarized_subnet: toward overlay, how HUB should deal with routes it received from Spokes :param str summarized_subnet_to_lan_bgp: toward LAN-side BGP peers :param str summarized_subnet_to_lan_ospf: toward LAN-side OSPF peers """ @@ -9368,7 +9616,7 @@ def allow_ping(self) -> Optional[bool]: @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[Mapping[str, 'outputs.GatewaytemplateNetworkVpnAccessDestinationNat']]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -9400,8 +9648,7 @@ def no_readvertise_to_lan_ospf(self) -> Optional[bool]: @pulumi.getter(name="noReadvertiseToOverlay") def no_readvertise_to_overlay(self) -> Optional[bool]: """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ return pulumi.get(self, "no_readvertise_to_overlay") @@ -9409,8 +9656,7 @@ def no_readvertise_to_overlay(self) -> Optional[bool]: @pulumi.getter(name="otherVrfs") def other_vrfs(self) -> Optional[Sequence[str]]: """ - by default, the routes are only readvertised toward the same vrf on spoke - to allow it to be leaked to other vrfs + by default, the routes are only readvertised toward the same vrf on spoke. To allow it to be leaked to other vrfs """ return pulumi.get(self, "other_vrfs") @@ -9434,7 +9680,7 @@ def source_nat(self) -> Optional['outputs.GatewaytemplateNetworkVpnAccessSourceN @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[Mapping[str, 'outputs.GatewaytemplateNetworkVpnAccessStaticNat']]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -9442,8 +9688,7 @@ def static_nat(self) -> Optional[Mapping[str, 'outputs.GatewaytemplateNetworkVpn @pulumi.getter(name="summarizedSubnet") def summarized_subnet(self) -> Optional[str]: """ - toward overlay - how HUB should deal with routes it received from Spokes + toward overlay, how HUB should deal with routes it received from Spokes """ return pulumi.get(self, "summarized_subnet") @@ -9486,7 +9731,10 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, internal_ip: Optional[str] = None, name: Optional[str] = None, - port: Optional[int] = None): + port: Optional[str] = None): + """ + :param str internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: @@ -9497,6 +9745,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[str]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @@ -9506,7 +9757,7 @@ def name(self) -> Optional[str]: @property @pulumi.getter - def port(self) -> Optional[int]: + def port(self) -> Optional[str]: return pulumi.get(self, "port") @@ -9547,8 +9798,6 @@ def __key_warning(key: str): suggest = None if key == "internalIp": suggest = "internal_ip" - elif key == "wanName": - suggest = "wan_name" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewaytemplateNetworkVpnAccessStaticNat. Access the value via the '{suggest}' property getter instead.") @@ -9562,37 +9811,27 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - internal_ip: Optional[str] = None, - name: Optional[str] = None, - wan_name: Optional[str] = None): + internal_ip: str, + name: str): """ - :param str wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param str internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) - if wan_name is not None: - pulumi.set(__self__, "wan_name", wan_name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[str]: + def internal_ip(self) -> str: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @pulumi.getter - def name(self) -> Optional[str]: + def name(self) -> str: return pulumi.get(self, "name") - @property - @pulumi.getter(name="wanName") - def wan_name(self) -> Optional[str]: - """ - If not set, we configure the nat policies against all WAN ports for simplicity - """ - return pulumi.get(self, "wan_name") - @pulumi.output_type class GatewaytemplateOobIpConfig(dict): @@ -10044,6 +10283,8 @@ def __key_warning(key: str): suggest = "wan_ext_ip" elif key == "wanExtraRoutes": suggest = "wan_extra_routes" + elif key == "wanNetworks": + suggest = "wan_networks" elif key == "wanProbeOverride": suggest = "wan_probe_override" elif key == "wanSourceNat": @@ -10097,11 +10338,12 @@ def __init__(__self__, *, ssr_no_virtual_mac: Optional[bool] = None, svr_port_range: Optional[str] = None, traffic_shaping: Optional['outputs.GatewaytemplatePortConfigTrafficShaping'] = None, - vlan_id: Optional[int] = None, + vlan_id: Optional[str] = None, vpn_paths: Optional[Mapping[str, 'outputs.GatewaytemplatePortConfigVpnPaths']] = None, wan_arp_policer: Optional[str] = None, wan_ext_ip: Optional[str] = None, wan_extra_routes: Optional[Mapping[str, 'outputs.GatewaytemplatePortConfigWanExtraRoutes']] = None, + wan_networks: Optional[Sequence[str]] = None, wan_probe_override: Optional['outputs.GatewaytemplatePortConfigWanProbeOverride'] = None, wan_source_nat: Optional['outputs.GatewaytemplatePortConfigWanSourceNat'] = None, wan_type: Optional[str] = None): @@ -10109,16 +10351,13 @@ def __init__(__self__, *, :param str usage: port usage name. enum: `ha_control`, `ha_data`, `lan`, `wan` :param bool ae_disable_lacp: if `aggregated`==`true`. To disable LCP support for the AE interface :param str ae_idx: if `aggregated`==`true`. Users could force to use the designated AE name (must be an integer between 0 and 127) - :param bool ae_lacp_force_up: For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + :param bool ae_lacp_force_up: For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only :param bool critical: if want to generate port up/down alarm, set it to true + :param str description: Interface Description. Can be a variable (i.e. "{{myvar}}") :param bool disabled: port admin up (true) / down (false) :param str dsl_type: if `wan_type`==`dsl`. enum: `adsl`, `vdsl` - :param int dsl_vci: if `wan_type`==`dsl` - 16 bit int - :param int dsl_vpi: if `wan_type`==`dsl` - 8 bit int + :param int dsl_vci: if `wan_type`==`dsl`, 16 bit int + :param int dsl_vpi: if `wan_type`==`dsl`, 8 bit int :param str duplex: enum: `auto`, `full`, `half` :param 'GatewaytemplatePortConfigIpConfigArgs' ip_config: Junos IP Config :param str lte_apn: if `wan_type`==`lte` @@ -10126,9 +10365,9 @@ def __init__(__self__, *, :param str lte_password: if `wan_type`==`lte` :param str lte_username: if `wan_type`==`lte` :param str name: name that we'll use to derive config - :param Sequence[str] networks: if `usage`==`lan` + :param Sequence[str] networks: if `usage`==`lan`, name of the `org.Network` resource :param int outer_vlan_id: for Q-in-Q - :param str port_network: if `usage`==`lan` + :param str port_network: Only for SRX and if `usage`==`lan`, the Untagged VLAN Network :param bool preserve_dscp: whether to preserve dscp when sending traffic over VPN (SSR-only) :param bool redundant: if HA mode :param int reth_idx: if HA mode @@ -10136,14 +10375,14 @@ def __init__(__self__, *, :param Sequence[str] reth_nodes: SSR only - supporting vlan-based redundancy (matching the size of `networks`) :param bool ssr_no_virtual_mac: when SSR is running as VM, this is required on certain hosting platforms :param str svr_port_range: for SSR only - :param int vlan_id: if WAN interface is on a VLAN :param Mapping[str, 'GatewaytemplatePortConfigVpnPathsArgs'] vpn_paths: Property key is the VPN name - :param str wan_arp_policer: when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` - :param str wan_ext_ip: optional, if spoke should reach this port by a different IP - :param Mapping[str, 'GatewaytemplatePortConfigWanExtraRoutesArgs'] wan_extra_routes: Property Key is the destianation CIDR (e.g "100.100.100.0/24") - :param 'GatewaytemplatePortConfigWanProbeOverrideArgs' wan_probe_override: if `usage`==`wan` - :param 'GatewaytemplatePortConfigWanSourceNatArgs' wan_source_nat: optional, by default, source-NAT is performed on all WAN Ports using the interface-ip - :param str wan_type: if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + :param str wan_arp_policer: Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + :param str wan_ext_ip: Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP + :param Mapping[str, 'GatewaytemplatePortConfigWanExtraRoutesArgs'] wan_extra_routes: Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") + :param Sequence[str] wan_networks: Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + :param 'GatewaytemplatePortConfigWanProbeOverrideArgs' wan_probe_override: Only if `usage`==`wan` + :param 'GatewaytemplatePortConfigWanSourceNatArgs' wan_source_nat: Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip + :param str wan_type: Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ pulumi.set(__self__, "usage", usage) if ae_disable_lacp is not None: @@ -10222,6 +10461,8 @@ def __init__(__self__, *, pulumi.set(__self__, "wan_ext_ip", wan_ext_ip) if wan_extra_routes is not None: pulumi.set(__self__, "wan_extra_routes", wan_extra_routes) + if wan_networks is not None: + pulumi.set(__self__, "wan_networks", wan_networks) if wan_probe_override is not None: pulumi.set(__self__, "wan_probe_override", wan_probe_override) if wan_source_nat is not None: @@ -10257,9 +10498,7 @@ def ae_idx(self) -> Optional[str]: @pulumi.getter(name="aeLacpForceUp") def ae_lacp_force_up(self) -> Optional[bool]: """ - For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability.\\n - Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end\\n - Note: Turning this on will enable force-up on one of the interfaces in the bundle only + For SRX Only, if `aggregated`==`true`.Sets the state of the interface as UP when the peer has limited LACP capability. Use case: When a device connected to this AE port is ZTPing for the first time, it will not have LACP configured on the other end. **Note:** Turning this on will enable force-up on one of the interfaces in the bundle only """ return pulumi.get(self, "ae_lacp_force_up") @@ -10279,6 +10518,9 @@ def critical(self) -> Optional[bool]: @property @pulumi.getter def description(self) -> Optional[str]: + """ + Interface Description. Can be a variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "description") @property @@ -10306,8 +10548,7 @@ def dsl_type(self) -> Optional[str]: @pulumi.getter(name="dslVci") def dsl_vci(self) -> Optional[int]: """ - if `wan_type`==`dsl` - 16 bit int + if `wan_type`==`dsl`, 16 bit int """ return pulumi.get(self, "dsl_vci") @@ -10315,8 +10556,7 @@ def dsl_vci(self) -> Optional[int]: @pulumi.getter(name="dslVpi") def dsl_vpi(self) -> Optional[int]: """ - if `wan_type`==`dsl` - 8 bit int + if `wan_type`==`dsl`, 8 bit int """ return pulumi.get(self, "dsl_vpi") @@ -10390,7 +10630,7 @@ def name(self) -> Optional[str]: @pulumi.getter def networks(self) -> Optional[Sequence[str]]: """ - if `usage`==`lan` + if `usage`==`lan`, name of the `org.Network` resource """ return pulumi.get(self, "networks") @@ -10411,7 +10651,7 @@ def poe_disabled(self) -> Optional[bool]: @pulumi.getter(name="portNetwork") def port_network(self) -> Optional[str]: """ - if `usage`==`lan` + Only for SRX and if `usage`==`lan`, the Untagged VLAN Network """ return pulumi.get(self, "port_network") @@ -10483,10 +10723,7 @@ def traffic_shaping(self) -> Optional['outputs.GatewaytemplatePortConfigTrafficS @property @pulumi.getter(name="vlanId") - def vlan_id(self) -> Optional[int]: - """ - if WAN interface is on a VLAN - """ + def vlan_id(self) -> Optional[str]: return pulumi.get(self, "vlan_id") @property @@ -10501,7 +10738,7 @@ def vpn_paths(self) -> Optional[Mapping[str, 'outputs.GatewaytemplatePortConfigV @pulumi.getter(name="wanArpPolicer") def wan_arp_policer(self) -> Optional[str]: """ - when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` + Only when `wan_type`==`broadband`. enum: `default`, `max`, `recommended` """ return pulumi.get(self, "wan_arp_policer") @@ -10509,7 +10746,7 @@ def wan_arp_policer(self) -> Optional[str]: @pulumi.getter(name="wanExtIp") def wan_ext_ip(self) -> Optional[str]: """ - optional, if spoke should reach this port by a different IP + Only if `usage`==`wan`, optional. If spoke should reach this port by a different IP """ return pulumi.get(self, "wan_ext_ip") @@ -10517,15 +10754,23 @@ def wan_ext_ip(self) -> Optional[str]: @pulumi.getter(name="wanExtraRoutes") def wan_extra_routes(self) -> Optional[Mapping[str, 'outputs.GatewaytemplatePortConfigWanExtraRoutes']]: """ - Property Key is the destianation CIDR (e.g "100.100.100.0/24") + Only if `usage`==`wan`. Property Key is the destianation CIDR (e.g "100.100.100.0/24") """ return pulumi.get(self, "wan_extra_routes") + @property + @pulumi.getter(name="wanNetworks") + def wan_networks(self) -> Optional[Sequence[str]]: + """ + Only if `usage`==`wan`. If some networks are connected to this WAN port, it can be added here so policies can be defined + """ + return pulumi.get(self, "wan_networks") + @property @pulumi.getter(name="wanProbeOverride") def wan_probe_override(self) -> Optional['outputs.GatewaytemplatePortConfigWanProbeOverride']: """ - if `usage`==`wan` + Only if `usage`==`wan` """ return pulumi.get(self, "wan_probe_override") @@ -10533,7 +10778,7 @@ def wan_probe_override(self) -> Optional['outputs.GatewaytemplatePortConfigWanPr @pulumi.getter(name="wanSourceNat") def wan_source_nat(self) -> Optional['outputs.GatewaytemplatePortConfigWanSourceNat']: """ - optional, by default, source-NAT is performed on all WAN Ports using the interface-ip + Only if `usage`==`wan`, optional. By default, source-NAT is performed on all WAN Ports using the interface-ip """ return pulumi.get(self, "wan_source_nat") @@ -10541,7 +10786,7 @@ def wan_source_nat(self) -> Optional['outputs.GatewaytemplatePortConfigWanSource @pulumi.getter(name="wanType") def wan_type(self) -> Optional[str]: """ - if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` + Only if `usage`==`wan`. enum: `broadband`, `dsl`, `lte` """ return pulumi.get(self, "wan_type") @@ -10585,8 +10830,9 @@ def __init__(__self__, *, """ :param Sequence[str] dns: except for out-of_band interface (vme/em0/fxp0) :param Sequence[str] dns_suffixes: except for out-of_band interface (vme/em0/fxp0) - :param str gateway: except for out-of_band interface (vme/em0/fxp0) - :param str netmask: used only if `subnet` is not specified in `networks` + :param str gateway: except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") + :param str ip: Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + :param str netmask: used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") :param str network: optional, the network to be used for mgmt :param str poser_password: if `type`==`pppoe` :param str pppoe_auth: if `type`==`pppoe`. enum: `chap`, `none`, `pap` @@ -10634,20 +10880,23 @@ def dns_suffixes(self) -> Optional[Sequence[str]]: @pulumi.getter def gateway(self) -> Optional[str]: """ - except for out-of_band interface (vme/em0/fxp0) + except for out-of_band interface (vme/em0/fxp0). Interface Default Gateway IP Address (i.e. "192.168.1.1") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "gateway") @property @pulumi.getter def ip(self) -> Optional[str]: + """ + Interface IP Address (i.e. "192.168.1.8") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "ip") @property @pulumi.getter def netmask(self) -> Optional[str]: """ - used only if `subnet` is not specified in `networks` + used only if `subnet` is not specified in `networks`. Interface Netmask (i.e. "/24") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "netmask") @@ -10699,6 +10948,8 @@ def __key_warning(key: str): suggest = None if key == "classPercentages": suggest = "class_percentages" + elif key == "maxTxKbps": + suggest = "max_tx_kbps" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewaytemplatePortConfigTrafficShaping. Access the value via the '{suggest}' property getter instead.") @@ -10713,22 +10964,24 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, class_percentages: Optional[Sequence[int]] = None, - enabled: Optional[bool] = None): + enabled: Optional[bool] = None, + max_tx_kbps: Optional[int] = None): """ - :param Sequence[int] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + :param Sequence[int] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 + :param int max_tx_kbps: Interface Transmit Cap in kbps """ if class_percentages is not None: pulumi.set(__self__, "class_percentages", class_percentages) if enabled is not None: pulumi.set(__self__, "enabled", enabled) + if max_tx_kbps is not None: + pulumi.set(__self__, "max_tx_kbps", max_tx_kbps) @property @pulumi.getter(name="classPercentages") def class_percentages(self) -> Optional[Sequence[int]]: """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ return pulumi.get(self, "class_percentages") @@ -10737,6 +10990,14 @@ def class_percentages(self) -> Optional[Sequence[int]]: def enabled(self) -> Optional[bool]: return pulumi.get(self, "enabled") + @property + @pulumi.getter(name="maxTxKbps") + def max_tx_kbps(self) -> Optional[int]: + """ + Interface Transmit Cap in kbps + """ + return pulumi.get(self, "max_tx_kbps") + @pulumi.output_type class GatewaytemplatePortConfigVpnPaths(dict): @@ -10843,6 +11104,8 @@ def __key_warning(key: str): suggest = None if key == "classPercentages": suggest = "class_percentages" + elif key == "maxTxKbps": + suggest = "max_tx_kbps" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewaytemplatePortConfigVpnPathsTrafficShaping. Access the value via the '{suggest}' property getter instead.") @@ -10857,22 +11120,24 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, class_percentages: Optional[Sequence[int]] = None, - enabled: Optional[bool] = None): + enabled: Optional[bool] = None, + max_tx_kbps: Optional[int] = None): """ - :param Sequence[int] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + :param Sequence[int] class_percentages: percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 + :param int max_tx_kbps: Interface Transmit Cap in kbps """ if class_percentages is not None: pulumi.set(__self__, "class_percentages", class_percentages) if enabled is not None: pulumi.set(__self__, "enabled", enabled) + if max_tx_kbps is not None: + pulumi.set(__self__, "max_tx_kbps", max_tx_kbps) @property @pulumi.getter(name="classPercentages") def class_percentages(self) -> Optional[Sequence[int]]: """ - percentages for differet class of traffic: high / medium / low / best-effort - sum must be equal to 100 + percentages for differet class of traffic: high / medium / low / best-effort. Sum must be equal to 100 """ return pulumi.get(self, "class_percentages") @@ -10881,6 +11146,14 @@ def class_percentages(self) -> Optional[Sequence[int]]: def enabled(self) -> Optional[bool]: return pulumi.get(self, "enabled") + @property + @pulumi.getter(name="maxTxKbps") + def max_tx_kbps(self) -> Optional[int]: + """ + Interface Transmit Cap in kbps + """ + return pulumi.get(self, "max_tx_kbps") + @pulumi.output_type class GatewaytemplatePortConfigWanExtraRoutes(dict): @@ -11072,6 +11345,7 @@ def __init__(__self__, *, accept: Optional[bool] = None, add_communities: Optional[Sequence[str]] = None, add_target_vrfs: Optional[Sequence[str]] = None, + aggregates: Optional[Sequence[str]] = None, communities: Optional[Sequence[str]] = None, exclude_as_paths: Optional[Sequence[str]] = None, exclude_communities: Optional[Sequence[str]] = None, @@ -11080,6 +11354,7 @@ def __init__(__self__, *, prepend_as_paths: Optional[Sequence[str]] = None): """ :param Sequence[str] add_target_vrfs: for SSR, hub decides how VRF routes are leaked on spoke + :param Sequence[str] aggregates: route aggregation :param Sequence[str] communities: when used as export policy, optional :param Sequence[str] exclude_as_paths: when used as export policy, optional. To exclude certain AS :param Sequence[str] export_communitites: when used as export policy, optional @@ -11092,6 +11367,8 @@ def __init__(__self__, *, pulumi.set(__self__, "add_communities", add_communities) if add_target_vrfs is not None: pulumi.set(__self__, "add_target_vrfs", add_target_vrfs) + if aggregates is not None: + pulumi.set(__self__, "aggregates", aggregates) if communities is not None: pulumi.set(__self__, "communities", communities) if exclude_as_paths is not None: @@ -11123,6 +11400,14 @@ def add_target_vrfs(self) -> Optional[Sequence[str]]: """ return pulumi.get(self, "add_target_vrfs") + @property + @pulumi.getter + def aggregates(self) -> Optional[Sequence[str]]: + """ + route aggregation + """ + return pulumi.get(self, "aggregates") + @property @pulumi.getter def communities(self) -> Optional[Sequence[str]]: @@ -11211,8 +11496,7 @@ def __init__(__self__, *, :param Sequence[str] prefixes: zero or more criteria/filter can be specified to match the term, all criteria have to be met :param Sequence[str] protocols: `direct`, `bgp`, `osp`, ... :param Sequence[str] vpn_neighbor_macs: overlay-facing criteria (used for bgp_config where via=vpn) - :param Sequence[str] vpn_paths: overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + :param Sequence[str] vpn_paths: overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ if as_paths is not None: pulumi.set(__self__, "as_paths", as_paths) @@ -11289,8 +11573,7 @@ def vpn_path_sla(self) -> Optional['outputs.GatewaytemplateRoutingPoliciesTermMa @pulumi.getter(name="vpnPaths") def vpn_paths(self) -> Optional[Sequence[str]]: """ - overlay-facing criteria (used for bgp_config where via=vpn) - ordered- + overlay-facing criteria (used for bgp_config where via=vpn). ordered- """ return pulumi.get(self, "vpn_paths") @@ -11318,8 +11601,7 @@ def __init__(__self__, *, route: Optional[str] = None, vrf_name: Optional[str] = None): """ - :param str vrf_name: name of the vrf instance - it can also be the name of the VPN or wan if they + :param str vrf_name: name of the vrf instance, it can also be the name of the VPN or wan if they """ if route is not None: pulumi.set(__self__, "route", route) @@ -11335,8 +11617,7 @@ def route(self) -> Optional[str]: @pulumi.getter(name="vrfName") def vrf_name(self) -> Optional[str]: """ - name of the vrf instance - it can also be the name of the VPN or wan if they + name of the vrf instance, it can also be the name of the VPN or wan if they """ return pulumi.get(self, "vrf_name") @@ -11430,8 +11711,7 @@ def __init__(__self__, *, :param 'GatewaytemplateServicePolicyAppqoeArgs' appqoe: For SRX Only :param bool local_routing: access within the same VRF :param str name: Required when `servicepolicy_id` is not defined, optional otherwise (override the servicepolicy name) - :param str path_preference: by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + :param str path_preference: by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` :param str servicepolicy_id: used to link servicepolicy defined at org level and overwrite some attributes :param Sequence[str] services: Required when `servicepolicy_id` is not defined. List of Applications / Desctinations :param Sequence[str] tenants: Required when `servicepolicy_id` is not defined. List of Networks / Users @@ -11503,8 +11783,7 @@ def name(self) -> Optional[str]: @pulumi.getter(name="pathPreference") def path_preference(self) -> Optional[str]: """ - by default, we derive all paths available and use them - optionally, you can customize by using `path_preference` + by default, we derive all paths available and use them. Optionally, you can customize by using `path_preference` """ return pulumi.get(self, "path_preference") @@ -11723,25 +12002,21 @@ def __init__(__self__, *, secondary: Optional['outputs.GatewaytemplateTunnelConfigsSecondary'] = None, version: Optional[str] = None): """ - :param int ike_lifetime: Only if `provider`== `custom-ipsec` - :param str ike_mode: Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` - :param Sequence['GatewaytemplateTunnelConfigsIkeProposalArgs'] ike_proposals: if `provider`== `custom-ipsec` - :param int ipsec_lifetime: if `provider`== `custom-ipsec` - :param Sequence['GatewaytemplateTunnelConfigsIpsecProposalArgs'] ipsec_proposals: Only if `provider`== `custom-ipsec` - :param str local_id: Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` - :param str mode: enum: `active-active`, `active-standby` - :param Sequence[str] networks: networks reachable via this tunnel - :param 'GatewaytemplateTunnelConfigsProbeArgs' probe: Only if `provider`== `custom-ipsec` - :param str protocol: Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` - :param str provider: enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` - :param str psk: Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` - :param str version: Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + :param int ike_lifetime: Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 + :param str ike_mode: Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` + :param Sequence['GatewaytemplateTunnelConfigsIkeProposalArgs'] ike_proposals: if `provider`==`custom-ipsec` + :param int ipsec_lifetime: Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 + :param Sequence['GatewaytemplateTunnelConfigsIpsecProposalArgs'] ipsec_proposals: Only if `provider`==`custom-ipsec` + :param str local_id: Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param str mode: Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` + :param Sequence[str] networks: if `provider`==`custom-ipsec`, networks reachable via this tunnel + :param 'GatewaytemplateTunnelConfigsPrimaryArgs' primary: Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param 'GatewaytemplateTunnelConfigsProbeArgs' probe: Only if `provider`==`custom-ipsec` + :param str protocol: Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` + :param str provider: Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + :param str psk: Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param 'GatewaytemplateTunnelConfigsSecondaryArgs' secondary: Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + :param str version: Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ if auto_provision is not None: pulumi.set(__self__, "auto_provision", auto_provision) @@ -11785,7 +12060,7 @@ def auto_provision(self) -> Optional['outputs.GatewaytemplateTunnelConfigsAutoPr @pulumi.getter(name="ikeLifetime") def ike_lifetime(self) -> Optional[int]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ return pulumi.get(self, "ike_lifetime") @@ -11793,7 +12068,7 @@ def ike_lifetime(self) -> Optional[int]: @pulumi.getter(name="ikeMode") def ike_mode(self) -> Optional[str]: """ - Only if `provider`== `custom-ipsec`. enum: `aggressive`, `main` + Only if `provider`==`custom-ipsec`. enum: `aggressive`, `main` """ return pulumi.get(self, "ike_mode") @@ -11801,7 +12076,7 @@ def ike_mode(self) -> Optional[str]: @pulumi.getter(name="ikeProposals") def ike_proposals(self) -> Optional[Sequence['outputs.GatewaytemplateTunnelConfigsIkeProposal']]: """ - if `provider`== `custom-ipsec` + if `provider`==`custom-ipsec` """ return pulumi.get(self, "ike_proposals") @@ -11809,7 +12084,7 @@ def ike_proposals(self) -> Optional[Sequence['outputs.GatewaytemplateTunnelConfi @pulumi.getter(name="ipsecLifetime") def ipsec_lifetime(self) -> Optional[int]: """ - if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec`. Must be between 180 and 86400 """ return pulumi.get(self, "ipsec_lifetime") @@ -11817,7 +12092,7 @@ def ipsec_lifetime(self) -> Optional[int]: @pulumi.getter(name="ipsecProposals") def ipsec_proposals(self) -> Optional[Sequence['outputs.GatewaytemplateTunnelConfigsIpsecProposal']]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ return pulumi.get(self, "ipsec_proposals") @@ -11825,10 +12100,7 @@ def ipsec_proposals(self) -> Optional[Sequence['outputs.GatewaytemplateTunnelCon @pulumi.getter(name="localId") def local_id(self) -> Optional[str]: """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "local_id") @@ -11836,7 +12108,7 @@ def local_id(self) -> Optional[str]: @pulumi.getter def mode(self) -> Optional[str]: """ - enum: `active-active`, `active-standby` + Required if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`. enum: `active-active`, `active-standby` """ return pulumi.get(self, "mode") @@ -11844,20 +12116,23 @@ def mode(self) -> Optional[str]: @pulumi.getter def networks(self) -> Optional[Sequence[str]]: """ - networks reachable via this tunnel + if `provider`==`custom-ipsec`, networks reachable via this tunnel """ return pulumi.get(self, "networks") @property @pulumi.getter def primary(self) -> Optional['outputs.GatewaytemplateTunnelConfigsPrimary']: + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ return pulumi.get(self, "primary") @property @pulumi.getter def probe(self) -> Optional['outputs.GatewaytemplateTunnelConfigsProbe']: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`custom-ipsec` """ return pulumi.get(self, "probe") @@ -11865,7 +12140,7 @@ def probe(self) -> Optional['outputs.GatewaytemplateTunnelConfigsProbe']: @pulumi.getter def protocol(self) -> Optional[str]: """ - Only if `provider`== `custom-ipsec`. enum: `gre`, `ipsec` + Only if `provider`==`custom-ipsec`. enum: `gre`, `ipsec` """ return pulumi.get(self, "protocol") @@ -11873,7 +12148,7 @@ def protocol(self) -> Optional[str]: @pulumi.getter def provider(self) -> Optional[str]: """ - enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` + Only if `auto_provision.enabled`==`false`. enum: `custom-ipsec`, `customer-gre`, `jse-ipsec`, `zscaler-gre`, `zscaler-ipsec` """ return pulumi.get(self, "provider") @@ -11881,23 +12156,23 @@ def provider(self) -> Optional[str]: @pulumi.getter def psk(self) -> Optional[str]: """ - Only if: - * `provider`== `zscaler-ipsec` - * `provider`==`jse-ipsec` - * `provider`== `custom-ipsec` + Required if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "psk") @property @pulumi.getter def secondary(self) -> Optional['outputs.GatewaytemplateTunnelConfigsSecondary']: + """ + Only if `provider`==`zscaler-ipsec`, `provider`==`jse-ipsec` or `provider`==`custom-ipsec` + """ return pulumi.get(self, "secondary") @property @pulumi.getter def version(self) -> Optional[str]: """ - Only if `provider`== `custom-gre` or `provider`== `custom-ipsec`. enum: `1`, `2` + Only if `provider`==`custom-gre` or `provider`==`custom-ipsec`. enum: `1`, `2` """ return pulumi.get(self, "version") @@ -11905,19 +12180,37 @@ def version(self) -> Optional[str]: @pulumi.output_type class GatewaytemplateTunnelConfigsAutoProvision(dict): def __init__(__self__, *, + provider: str, enable: Optional[bool] = None, latlng: Optional['outputs.GatewaytemplateTunnelConfigsAutoProvisionLatlng'] = None, primary: Optional['outputs.GatewaytemplateTunnelConfigsAutoProvisionPrimary'] = None, + region: Optional[str] = None, secondary: Optional['outputs.GatewaytemplateTunnelConfigsAutoProvisionSecondary'] = None): + """ + :param str provider: enum: `jse-ipsec`, `zscaler-ipsec` + :param 'GatewaytemplateTunnelConfigsAutoProvisionLatlngArgs' latlng: API override for POP selection + :param str region: API override for POP selection + """ + pulumi.set(__self__, "provider", provider) if enable is not None: pulumi.set(__self__, "enable", enable) if latlng is not None: pulumi.set(__self__, "latlng", latlng) if primary is not None: pulumi.set(__self__, "primary", primary) + if region is not None: + pulumi.set(__self__, "region", region) if secondary is not None: pulumi.set(__self__, "secondary", secondary) + @property + @pulumi.getter + def provider(self) -> str: + """ + enum: `jse-ipsec`, `zscaler-ipsec` + """ + return pulumi.get(self, "provider") + @property @pulumi.getter def enable(self) -> Optional[bool]: @@ -11926,6 +12219,9 @@ def enable(self) -> Optional[bool]: @property @pulumi.getter def latlng(self) -> Optional['outputs.GatewaytemplateTunnelConfigsAutoProvisionLatlng']: + """ + API override for POP selection + """ return pulumi.get(self, "latlng") @property @@ -11933,6 +12229,14 @@ def latlng(self) -> Optional['outputs.GatewaytemplateTunnelConfigsAutoProvisionL def primary(self) -> Optional['outputs.GatewaytemplateTunnelConfigsAutoProvisionPrimary']: return pulumi.get(self, "primary") + @property + @pulumi.getter + def region(self) -> Optional[str]: + """ + API override for POP selection + """ + return pulumi.get(self, "region") + @property @pulumi.getter def secondary(self) -> Optional['outputs.GatewaytemplateTunnelConfigsAutoProvisionSecondary']: @@ -11963,8 +12267,8 @@ class GatewaytemplateTunnelConfigsAutoProvisionPrimary(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "numHosts": - suggest = "num_hosts" + if key == "probeIps": + suggest = "probe_ips" elif key == "wanNames": suggest = "wan_names" @@ -11980,20 +12284,20 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - num_hosts: Optional[str] = None, + probe_ips: Optional[Sequence[str]] = None, wan_names: Optional[Sequence[str]] = None): """ :param Sequence[str] wan_names: optional, only needed if `vars_only`==`false` """ - if num_hosts is not None: - pulumi.set(__self__, "num_hosts", num_hosts) + if probe_ips is not None: + pulumi.set(__self__, "probe_ips", probe_ips) if wan_names is not None: pulumi.set(__self__, "wan_names", wan_names) @property - @pulumi.getter(name="numHosts") - def num_hosts(self) -> Optional[str]: - return pulumi.get(self, "num_hosts") + @pulumi.getter(name="probeIps") + def probe_ips(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "probe_ips") @property @pulumi.getter(name="wanNames") @@ -12009,8 +12313,8 @@ class GatewaytemplateTunnelConfigsAutoProvisionSecondary(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "numHosts": - suggest = "num_hosts" + if key == "probeIps": + suggest = "probe_ips" elif key == "wanNames": suggest = "wan_names" @@ -12026,20 +12330,20 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - num_hosts: Optional[str] = None, + probe_ips: Optional[Sequence[str]] = None, wan_names: Optional[Sequence[str]] = None): """ :param Sequence[str] wan_names: optional, only needed if `vars_only`==`false` """ - if num_hosts is not None: - pulumi.set(__self__, "num_hosts", num_hosts) + if probe_ips is not None: + pulumi.set(__self__, "probe_ips", probe_ips) if wan_names is not None: pulumi.set(__self__, "wan_names", wan_names) @property - @pulumi.getter(name="numHosts") - def num_hosts(self) -> Optional[str]: - return pulumi.get(self, "num_hosts") + @pulumi.getter(name="probeIps") + def probe_ips(self) -> Optional[Sequence[str]]: + return pulumi.get(self, "probe_ips") @property @pulumi.getter(name="wanNames") @@ -12163,7 +12467,7 @@ def __init__(__self__, *, enc_algo: Optional[str] = None): """ :param str auth_algo: enum: `md5`, `sha1`, `sha2` - :param str dh_group: Only if `provider`== `custom-ipsec`. enum: + :param str dh_group: Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -12195,7 +12499,7 @@ def auth_algo(self) -> Optional[str]: @pulumi.getter(name="dhGroup") def dh_group(self) -> Optional[str]: """ - Only if `provider`== `custom-ipsec`. enum: + Only if `provider`==`custom-ipsec`. enum: * 1 * 2 (1024-bit) * 5 @@ -12223,14 +12527,14 @@ class GatewaytemplateTunnelConfigsPrimary(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "internalIps": + if key == "wanNames": + suggest = "wan_names" + elif key == "internalIps": suggest = "internal_ips" elif key == "probeIps": suggest = "probe_ips" elif key == "remoteIds": suggest = "remote_ids" - elif key == "wanNames": - suggest = "wan_names" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewaytemplateTunnelConfigsPrimary. Access the value via the '{suggest}' property getter instead.") @@ -12244,40 +12548,39 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - hosts: Optional[Sequence[str]] = None, + hosts: Sequence[str], + wan_names: Sequence[str], internal_ips: Optional[Sequence[str]] = None, probe_ips: Optional[Sequence[str]] = None, - remote_ids: Optional[Sequence[str]] = None, - wan_names: Optional[Sequence[str]] = None): + remote_ids: Optional[Sequence[str]] = None): """ - :param Sequence[str] internal_ips: Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` - :param Sequence[str] remote_ids: Only if `provider`== `custom-ipsec` + :param Sequence[str] internal_ips: Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` + :param Sequence[str] remote_ids: Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - if hosts is not None: - pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "wan_names", wan_names) if internal_ips is not None: pulumi.set(__self__, "internal_ips", internal_ips) if probe_ips is not None: pulumi.set(__self__, "probe_ips", probe_ips) if remote_ids is not None: pulumi.set(__self__, "remote_ids", remote_ids) - if wan_names is not None: - pulumi.set(__self__, "wan_names", wan_names) @property @pulumi.getter - def hosts(self) -> Optional[Sequence[str]]: + def hosts(self) -> Sequence[str]: return pulumi.get(self, "hosts") + @property + @pulumi.getter(name="wanNames") + def wan_names(self) -> Sequence[str]: + return pulumi.get(self, "wan_names") + @property @pulumi.getter(name="internalIps") def internal_ips(self) -> Optional[Sequence[str]]: """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ return pulumi.get(self, "internal_ips") @@ -12290,15 +12593,10 @@ def probe_ips(self) -> Optional[Sequence[str]]: @pulumi.getter(name="remoteIds") def remote_ids(self) -> Optional[Sequence[str]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "remote_ids") - @property - @pulumi.getter(name="wanNames") - def wan_names(self) -> Optional[Sequence[str]]: - return pulumi.get(self, "wan_names") - @pulumi.output_type class GatewaytemplateTunnelConfigsProbe(dict): @@ -12360,14 +12658,14 @@ class GatewaytemplateTunnelConfigsSecondary(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "internalIps": + if key == "wanNames": + suggest = "wan_names" + elif key == "internalIps": suggest = "internal_ips" elif key == "probeIps": suggest = "probe_ips" elif key == "remoteIds": suggest = "remote_ids" - elif key == "wanNames": - suggest = "wan_names" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewaytemplateTunnelConfigsSecondary. Access the value via the '{suggest}' property getter instead.") @@ -12381,40 +12679,39 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - hosts: Optional[Sequence[str]] = None, + hosts: Sequence[str], + wan_names: Sequence[str], internal_ips: Optional[Sequence[str]] = None, probe_ips: Optional[Sequence[str]] = None, - remote_ids: Optional[Sequence[str]] = None, - wan_names: Optional[Sequence[str]] = None): + remote_ids: Optional[Sequence[str]] = None): """ - :param Sequence[str] internal_ips: Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` - :param Sequence[str] remote_ids: Only if `provider`== `custom-ipsec` + :param Sequence[str] internal_ips: Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` + :param Sequence[str] remote_ids: Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ - if hosts is not None: - pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "hosts", hosts) + pulumi.set(__self__, "wan_names", wan_names) if internal_ips is not None: pulumi.set(__self__, "internal_ips", internal_ips) if probe_ips is not None: pulumi.set(__self__, "probe_ips", probe_ips) if remote_ids is not None: pulumi.set(__self__, "remote_ids", remote_ids) - if wan_names is not None: - pulumi.set(__self__, "wan_names", wan_names) @property @pulumi.getter - def hosts(self) -> Optional[Sequence[str]]: + def hosts(self) -> Sequence[str]: return pulumi.get(self, "hosts") + @property + @pulumi.getter(name="wanNames") + def wan_names(self) -> Sequence[str]: + return pulumi.get(self, "wan_names") + @property @pulumi.getter(name="internalIps") def internal_ips(self) -> Optional[Sequence[str]]: """ - Only if: - * `provider`== `zscaler-gre` - * `provider`== `custom-gre` + Only if `provider`==`zscaler-gre`, `provider`==`jse-ipsec`, `provider`==`custom-ipsec` or `provider`==`custom-gre` """ return pulumi.get(self, "internal_ips") @@ -12427,15 +12724,10 @@ def probe_ips(self) -> Optional[Sequence[str]]: @pulumi.getter(name="remoteIds") def remote_ids(self) -> Optional[Sequence[str]]: """ - Only if `provider`== `custom-ipsec` + Only if `provider`==`jse-ipsec` or `provider`==`custom-ipsec` """ return pulumi.get(self, "remote_ids") - @property - @pulumi.getter(name="wanNames") - def wan_names(self) -> Optional[Sequence[str]]: - return pulumi.get(self, "wan_names") - @pulumi.output_type class GatewaytemplateTunnelProviderOptions(dict): @@ -12475,6 +12767,8 @@ def __key_warning(key: str): suggest = None if key == "numUsers": suggest = "num_users" + elif key == "orgName": + suggest = "org_name" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewaytemplateTunnelProviderOptionsJse. Access the value via the '{suggest}' property getter instead.") @@ -12488,49 +12782,65 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - name: Optional[str] = None, - num_users: Optional[int] = None): - if name is not None: - pulumi.set(__self__, "name", name) + num_users: Optional[int] = None, + org_name: Optional[str] = None): + """ + :param str org_name: JSE Organization name + """ if num_users is not None: pulumi.set(__self__, "num_users", num_users) - - @property - @pulumi.getter - def name(self) -> Optional[str]: - return pulumi.get(self, "name") + if org_name is not None: + pulumi.set(__self__, "org_name", org_name) @property @pulumi.getter(name="numUsers") def num_users(self) -> Optional[int]: return pulumi.get(self, "num_users") + @property + @pulumi.getter(name="orgName") + def org_name(self) -> Optional[str]: + """ + JSE Organization name + """ + return pulumi.get(self, "org_name") + @pulumi.output_type class GatewaytemplateTunnelProviderOptionsZscaler(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "aupAcceptanceRequired": - suggest = "aup_acceptance_required" - elif key == "aupExpire": - suggest = "aup_expire" - elif key == "aupSslProxy": - suggest = "aup_ssl_proxy" - elif key == "downloadMbps": - suggest = "download_mbps" - elif key == "enableAup": - suggest = "enable_aup" - elif key == "enableCaution": - suggest = "enable_caution" - elif key == "enforceAuthentication": - suggest = "enforce_authentication" + if key == "aupBlockInternetUntilAccepted": + suggest = "aup_block_internet_until_accepted" + elif key == "aupEnabled": + suggest = "aup_enabled" + elif key == "aupForceSslInspection": + suggest = "aup_force_ssl_inspection" + elif key == "aupTimeoutInDays": + suggest = "aup_timeout_in_days" + elif key == "authRequired": + suggest = "auth_required" + elif key == "cautionEnabled": + suggest = "caution_enabled" + elif key == "dnBandwidth": + suggest = "dn_bandwidth" + elif key == "idleTimeInMinutes": + suggest = "idle_time_in_minutes" + elif key == "ofwEnabled": + suggest = "ofw_enabled" elif key == "subLocations": suggest = "sub_locations" - elif key == "uploadMbps": - suggest = "upload_mbps" - elif key == "useXff": - suggest = "use_xff" + elif key == "surrogateIp": + suggest = "surrogate_ip" + elif key == "surrogateIpEnforcedForKnownBrowsers": + suggest = "surrogate_ip_enforced_for_known_browsers" + elif key == "surrogateRefreshTimeInMinutes": + suggest = "surrogate_refresh_time_in_minutes" + elif key == "upBandwidth": + suggest = "up_bandwidth" + elif key == "xffForwardEnabled": + suggest = "xff_forward_enabled" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewaytemplateTunnelProviderOptionsZscaler. Access the value via the '{suggest}' property getter instead.") @@ -12544,128 +12854,184 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - aup_acceptance_required: Optional[bool] = None, - aup_expire: Optional[int] = None, - aup_ssl_proxy: Optional[bool] = None, - download_mbps: Optional[int] = None, - enable_aup: Optional[bool] = None, - enable_caution: Optional[bool] = None, - enforce_authentication: Optional[bool] = None, - name: Optional[str] = None, + aup_block_internet_until_accepted: Optional[bool] = None, + aup_enabled: Optional[bool] = None, + aup_force_ssl_inspection: Optional[bool] = None, + aup_timeout_in_days: Optional[int] = None, + auth_required: Optional[bool] = None, + caution_enabled: Optional[bool] = None, + dn_bandwidth: Optional[float] = None, + idle_time_in_minutes: Optional[int] = None, + ofw_enabled: Optional[bool] = None, sub_locations: Optional[Sequence['outputs.GatewaytemplateTunnelProviderOptionsZscalerSubLocation']] = None, - upload_mbps: Optional[int] = None, - use_xff: Optional[bool] = None): - """ - :param int aup_expire: days before AUP is requested again - :param bool aup_ssl_proxy: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - :param int download_mbps: the download bandwidth cap of the link, in Mbps - :param bool enable_aup: if `use_xff`==`true`, display Acceptable Use Policy (AUP) - :param bool enable_caution: when `enforce_authentication`==`false`, display caution notification for non-authenticated users - :param Sequence['GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs'] sub_locations: if `use_xff`==`true` - :param int upload_mbps: the download bandwidth cap of the link, in Mbps - :param bool use_xff: location uses proxy chaining to forward traffic - """ - if aup_acceptance_required is not None: - pulumi.set(__self__, "aup_acceptance_required", aup_acceptance_required) - if aup_expire is not None: - pulumi.set(__self__, "aup_expire", aup_expire) - if aup_ssl_proxy is not None: - pulumi.set(__self__, "aup_ssl_proxy", aup_ssl_proxy) - if download_mbps is not None: - pulumi.set(__self__, "download_mbps", download_mbps) - if enable_aup is not None: - pulumi.set(__self__, "enable_aup", enable_aup) - if enable_caution is not None: - pulumi.set(__self__, "enable_caution", enable_caution) - if enforce_authentication is not None: - pulumi.set(__self__, "enforce_authentication", enforce_authentication) - if name is not None: - pulumi.set(__self__, "name", name) + surrogate_ip: Optional[bool] = None, + surrogate_ip_enforced_for_known_browsers: Optional[bool] = None, + surrogate_refresh_time_in_minutes: Optional[int] = None, + up_bandwidth: Optional[float] = None, + xff_forward_enabled: Optional[bool] = None): + """ + :param bool aup_enabled: Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + :param bool aup_force_ssl_inspection: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + :param int aup_timeout_in_days: Required if `aup_enabled`==`true`. Days before AUP is requested again + :param bool auth_required: Enable this option to enforce user authentication + :param bool caution_enabled: Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + :param float dn_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param int idle_time_in_minutes: Required if `surrogate_IP`==`true`, idle Time to Disassociation + :param bool ofw_enabled: if `true`, enable the firewall control option + :param Sequence['GatewaytemplateTunnelProviderOptionsZscalerSubLocationArgs'] sub_locations: `sub-locations` can be used for specific uses cases to define different configuration based on the user network + :param bool surrogate_ip: Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + :param bool surrogate_ip_enforced_for_known_browsers: Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + :param int surrogate_refresh_time_in_minutes: Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + :param float up_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param bool xff_forward_enabled: location uses proxy chaining to forward traffic + """ + if aup_block_internet_until_accepted is not None: + pulumi.set(__self__, "aup_block_internet_until_accepted", aup_block_internet_until_accepted) + if aup_enabled is not None: + pulumi.set(__self__, "aup_enabled", aup_enabled) + if aup_force_ssl_inspection is not None: + pulumi.set(__self__, "aup_force_ssl_inspection", aup_force_ssl_inspection) + if aup_timeout_in_days is not None: + pulumi.set(__self__, "aup_timeout_in_days", aup_timeout_in_days) + if auth_required is not None: + pulumi.set(__self__, "auth_required", auth_required) + if caution_enabled is not None: + pulumi.set(__self__, "caution_enabled", caution_enabled) + if dn_bandwidth is not None: + pulumi.set(__self__, "dn_bandwidth", dn_bandwidth) + if idle_time_in_minutes is not None: + pulumi.set(__self__, "idle_time_in_minutes", idle_time_in_minutes) + if ofw_enabled is not None: + pulumi.set(__self__, "ofw_enabled", ofw_enabled) if sub_locations is not None: pulumi.set(__self__, "sub_locations", sub_locations) - if upload_mbps is not None: - pulumi.set(__self__, "upload_mbps", upload_mbps) - if use_xff is not None: - pulumi.set(__self__, "use_xff", use_xff) + if surrogate_ip is not None: + pulumi.set(__self__, "surrogate_ip", surrogate_ip) + if surrogate_ip_enforced_for_known_browsers is not None: + pulumi.set(__self__, "surrogate_ip_enforced_for_known_browsers", surrogate_ip_enforced_for_known_browsers) + if surrogate_refresh_time_in_minutes is not None: + pulumi.set(__self__, "surrogate_refresh_time_in_minutes", surrogate_refresh_time_in_minutes) + if up_bandwidth is not None: + pulumi.set(__self__, "up_bandwidth", up_bandwidth) + if xff_forward_enabled is not None: + pulumi.set(__self__, "xff_forward_enabled", xff_forward_enabled) @property - @pulumi.getter(name="aupAcceptanceRequired") - def aup_acceptance_required(self) -> Optional[bool]: - return pulumi.get(self, "aup_acceptance_required") + @pulumi.getter(name="aupBlockInternetUntilAccepted") + def aup_block_internet_until_accepted(self) -> Optional[bool]: + return pulumi.get(self, "aup_block_internet_until_accepted") @property - @pulumi.getter(name="aupExpire") - def aup_expire(self) -> Optional[int]: + @pulumi.getter(name="aupEnabled") + def aup_enabled(self) -> Optional[bool]: """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - return pulumi.get(self, "aup_expire") + return pulumi.get(self, "aup_enabled") @property - @pulumi.getter(name="aupSslProxy") - def aup_ssl_proxy(self) -> Optional[bool]: + @pulumi.getter(name="aupForceSslInspection") + def aup_force_ssl_inspection(self) -> Optional[bool]: """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - return pulumi.get(self, "aup_ssl_proxy") + return pulumi.get(self, "aup_force_ssl_inspection") @property - @pulumi.getter(name="downloadMbps") - def download_mbps(self) -> Optional[int]: + @pulumi.getter(name="aupTimeoutInDays") + def aup_timeout_in_days(self) -> Optional[int]: """ - the download bandwidth cap of the link, in Mbps + Required if `aup_enabled`==`true`. Days before AUP is requested again """ - return pulumi.get(self, "download_mbps") + return pulumi.get(self, "aup_timeout_in_days") @property - @pulumi.getter(name="enableAup") - def enable_aup(self) -> Optional[bool]: + @pulumi.getter(name="authRequired") + def auth_required(self) -> Optional[bool]: """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Enable this option to enforce user authentication """ - return pulumi.get(self, "enable_aup") + return pulumi.get(self, "auth_required") @property - @pulumi.getter(name="enableCaution") - def enable_caution(self) -> Optional[bool]: + @pulumi.getter(name="cautionEnabled") + def caution_enabled(self) -> Optional[bool]: """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - return pulumi.get(self, "enable_caution") + return pulumi.get(self, "caution_enabled") @property - @pulumi.getter(name="enforceAuthentication") - def enforce_authentication(self) -> Optional[bool]: - return pulumi.get(self, "enforce_authentication") + @pulumi.getter(name="dnBandwidth") + def dn_bandwidth(self) -> Optional[float]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "dn_bandwidth") @property - @pulumi.getter - def name(self) -> Optional[str]: - return pulumi.get(self, "name") + @pulumi.getter(name="idleTimeInMinutes") + def idle_time_in_minutes(self) -> Optional[int]: + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + return pulumi.get(self, "idle_time_in_minutes") + + @property + @pulumi.getter(name="ofwEnabled") + def ofw_enabled(self) -> Optional[bool]: + """ + if `true`, enable the firewall control option + """ + return pulumi.get(self, "ofw_enabled") @property @pulumi.getter(name="subLocations") def sub_locations(self) -> Optional[Sequence['outputs.GatewaytemplateTunnelProviderOptionsZscalerSubLocation']]: """ - if `use_xff`==`true` + `sub-locations` can be used for specific uses cases to define different configuration based on the user network """ return pulumi.get(self, "sub_locations") @property - @pulumi.getter(name="uploadMbps") - def upload_mbps(self) -> Optional[int]: + @pulumi.getter(name="surrogateIp") + def surrogate_ip(self) -> Optional[bool]: + """ + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + """ + return pulumi.get(self, "surrogate_ip") + + @property + @pulumi.getter(name="surrogateIpEnforcedForKnownBrowsers") + def surrogate_ip_enforced_for_known_browsers(self) -> Optional[bool]: + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + """ + return pulumi.get(self, "surrogate_ip_enforced_for_known_browsers") + + @property + @pulumi.getter(name="surrogateRefreshTimeInMinutes") + def surrogate_refresh_time_in_minutes(self) -> Optional[int]: + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + return pulumi.get(self, "surrogate_refresh_time_in_minutes") + + @property + @pulumi.getter(name="upBandwidth") + def up_bandwidth(self) -> Optional[float]: """ - the download bandwidth cap of the link, in Mbps + the download bandwidth cap of the link, in Mbps. Disabled if not set """ - return pulumi.get(self, "upload_mbps") + return pulumi.get(self, "up_bandwidth") @property - @pulumi.getter(name="useXff") - def use_xff(self) -> Optional[bool]: + @pulumi.getter(name="xffForwardEnabled") + def xff_forward_enabled(self) -> Optional[bool]: """ location uses proxy chaining to forward traffic """ - return pulumi.get(self, "use_xff") + return pulumi.get(self, "xff_forward_enabled") @pulumi.output_type @@ -12673,22 +13039,32 @@ class GatewaytemplateTunnelProviderOptionsZscalerSubLocation(dict): @staticmethod def __key_warning(key: str): suggest = None - if key == "aupAcceptanceRequired": - suggest = "aup_acceptance_required" - elif key == "aupExpire": - suggest = "aup_expire" - elif key == "aupSslProxy": - suggest = "aup_ssl_proxy" - elif key == "downloadMbps": - suggest = "download_mbps" - elif key == "enableAup": - suggest = "enable_aup" - elif key == "enableCaution": - suggest = "enable_caution" - elif key == "enforceAuthentication": - suggest = "enforce_authentication" - elif key == "uploadMbps": - suggest = "upload_mbps" + if key == "aupBlockInternetUntilAccepted": + suggest = "aup_block_internet_until_accepted" + elif key == "aupEnabled": + suggest = "aup_enabled" + elif key == "aupForceSslInspection": + suggest = "aup_force_ssl_inspection" + elif key == "aupTimeoutInDays": + suggest = "aup_timeout_in_days" + elif key == "authRequired": + suggest = "auth_required" + elif key == "cautionEnabled": + suggest = "caution_enabled" + elif key == "dnBandwidth": + suggest = "dn_bandwidth" + elif key == "idleTimeInMinutes": + suggest = "idle_time_in_minutes" + elif key == "ofwEnabled": + suggest = "ofw_enabled" + elif key == "surrogateIp": + suggest = "surrogate_ip" + elif key == "surrogateIpEnforcedForKnownBrowsers": + suggest = "surrogate_ip_enforced_for_known_browsers" + elif key == "surrogateRefreshTimeInMinutes": + suggest = "surrogate_refresh_time_in_minutes" + elif key == "upBandwidth": + suggest = "up_bandwidth" if suggest: pulumi.log.warn(f"Key '{key}' not found in GatewaytemplateTunnelProviderOptionsZscalerSubLocation. Access the value via the '{suggest}' property getter instead.") @@ -12702,104 +13078,172 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - aup_acceptance_required: Optional[bool] = None, - aup_expire: Optional[int] = None, - aup_ssl_proxy: Optional[bool] = None, - download_mbps: Optional[int] = None, - enable_aup: Optional[bool] = None, - enable_caution: Optional[bool] = None, - enforce_authentication: Optional[bool] = None, - subnets: Optional[Sequence[str]] = None, - upload_mbps: Optional[int] = None): - """ - :param int aup_expire: days before AUP is requested again - :param bool aup_ssl_proxy: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser - :param int download_mbps: the download bandwidth cap of the link, in Mbps - :param bool enable_aup: if `use_xff`==`true`, display Acceptable Use Policy (AUP) - :param bool enable_caution: when `enforce_authentication`==`false`, display caution notification for non-authenticated users - :param int upload_mbps: the download bandwidth cap of the link, in Mbps - """ - if aup_acceptance_required is not None: - pulumi.set(__self__, "aup_acceptance_required", aup_acceptance_required) - if aup_expire is not None: - pulumi.set(__self__, "aup_expire", aup_expire) - if aup_ssl_proxy is not None: - pulumi.set(__self__, "aup_ssl_proxy", aup_ssl_proxy) - if download_mbps is not None: - pulumi.set(__self__, "download_mbps", download_mbps) - if enable_aup is not None: - pulumi.set(__self__, "enable_aup", enable_aup) - if enable_caution is not None: - pulumi.set(__self__, "enable_caution", enable_caution) - if enforce_authentication is not None: - pulumi.set(__self__, "enforce_authentication", enforce_authentication) - if subnets is not None: - pulumi.set(__self__, "subnets", subnets) - if upload_mbps is not None: - pulumi.set(__self__, "upload_mbps", upload_mbps) + aup_block_internet_until_accepted: Optional[bool] = None, + aup_enabled: Optional[bool] = None, + aup_force_ssl_inspection: Optional[bool] = None, + aup_timeout_in_days: Optional[int] = None, + auth_required: Optional[bool] = None, + caution_enabled: Optional[bool] = None, + dn_bandwidth: Optional[float] = None, + idle_time_in_minutes: Optional[int] = None, + name: Optional[str] = None, + ofw_enabled: Optional[bool] = None, + surrogate_ip: Optional[bool] = None, + surrogate_ip_enforced_for_known_browsers: Optional[bool] = None, + surrogate_refresh_time_in_minutes: Optional[int] = None, + up_bandwidth: Optional[float] = None): + """ + :param bool aup_enabled: Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) + :param bool aup_force_ssl_inspection: proxy HTTPs traffic, requiring Zscaler cert to be installed in browser + :param int aup_timeout_in_days: Required if `aup_enabled`==`true`. Days before AUP is requested again + :param bool auth_required: Enable this option to authenticate users + :param bool caution_enabled: Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users + :param float dn_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + :param int idle_time_in_minutes: Required if `surrogate_IP`==`true`, idle Time to Disassociation + :param str name: Network name + :param bool ofw_enabled: if `true`, enable the firewall control option + :param bool surrogate_ip: Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + :param bool surrogate_ip_enforced_for_known_browsers: Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + :param int surrogate_refresh_time_in_minutes: Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + :param float up_bandwidth: the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + if aup_block_internet_until_accepted is not None: + pulumi.set(__self__, "aup_block_internet_until_accepted", aup_block_internet_until_accepted) + if aup_enabled is not None: + pulumi.set(__self__, "aup_enabled", aup_enabled) + if aup_force_ssl_inspection is not None: + pulumi.set(__self__, "aup_force_ssl_inspection", aup_force_ssl_inspection) + if aup_timeout_in_days is not None: + pulumi.set(__self__, "aup_timeout_in_days", aup_timeout_in_days) + if auth_required is not None: + pulumi.set(__self__, "auth_required", auth_required) + if caution_enabled is not None: + pulumi.set(__self__, "caution_enabled", caution_enabled) + if dn_bandwidth is not None: + pulumi.set(__self__, "dn_bandwidth", dn_bandwidth) + if idle_time_in_minutes is not None: + pulumi.set(__self__, "idle_time_in_minutes", idle_time_in_minutes) + if name is not None: + pulumi.set(__self__, "name", name) + if ofw_enabled is not None: + pulumi.set(__self__, "ofw_enabled", ofw_enabled) + if surrogate_ip is not None: + pulumi.set(__self__, "surrogate_ip", surrogate_ip) + if surrogate_ip_enforced_for_known_browsers is not None: + pulumi.set(__self__, "surrogate_ip_enforced_for_known_browsers", surrogate_ip_enforced_for_known_browsers) + if surrogate_refresh_time_in_minutes is not None: + pulumi.set(__self__, "surrogate_refresh_time_in_minutes", surrogate_refresh_time_in_minutes) + if up_bandwidth is not None: + pulumi.set(__self__, "up_bandwidth", up_bandwidth) @property - @pulumi.getter(name="aupAcceptanceRequired") - def aup_acceptance_required(self) -> Optional[bool]: - return pulumi.get(self, "aup_acceptance_required") + @pulumi.getter(name="aupBlockInternetUntilAccepted") + def aup_block_internet_until_accepted(self) -> Optional[bool]: + return pulumi.get(self, "aup_block_internet_until_accepted") @property - @pulumi.getter(name="aupExpire") - def aup_expire(self) -> Optional[int]: + @pulumi.getter(name="aupEnabled") + def aup_enabled(self) -> Optional[bool]: """ - days before AUP is requested again + Can only be `true` when `auth_required`==`false`, display Acceptable Use Policy (AUP) """ - return pulumi.get(self, "aup_expire") + return pulumi.get(self, "aup_enabled") @property - @pulumi.getter(name="aupSslProxy") - def aup_ssl_proxy(self) -> Optional[bool]: + @pulumi.getter(name="aupForceSslInspection") + def aup_force_ssl_inspection(self) -> Optional[bool]: """ proxy HTTPs traffic, requiring Zscaler cert to be installed in browser """ - return pulumi.get(self, "aup_ssl_proxy") + return pulumi.get(self, "aup_force_ssl_inspection") @property - @pulumi.getter(name="downloadMbps") - def download_mbps(self) -> Optional[int]: + @pulumi.getter(name="aupTimeoutInDays") + def aup_timeout_in_days(self) -> Optional[int]: """ - the download bandwidth cap of the link, in Mbps + Required if `aup_enabled`==`true`. Days before AUP is requested again """ - return pulumi.get(self, "download_mbps") + return pulumi.get(self, "aup_timeout_in_days") @property - @pulumi.getter(name="enableAup") - def enable_aup(self) -> Optional[bool]: + @pulumi.getter(name="authRequired") + def auth_required(self) -> Optional[bool]: """ - if `use_xff`==`true`, display Acceptable Use Policy (AUP) + Enable this option to authenticate users """ - return pulumi.get(self, "enable_aup") + return pulumi.get(self, "auth_required") @property - @pulumi.getter(name="enableCaution") - def enable_caution(self) -> Optional[bool]: + @pulumi.getter(name="cautionEnabled") + def caution_enabled(self) -> Optional[bool]: """ - when `enforce_authentication`==`false`, display caution notification for non-authenticated users + Can only be `true` when `auth_required`==`false`, display caution notification for non-authenticated users """ - return pulumi.get(self, "enable_caution") + return pulumi.get(self, "caution_enabled") @property - @pulumi.getter(name="enforceAuthentication") - def enforce_authentication(self) -> Optional[bool]: - return pulumi.get(self, "enforce_authentication") + @pulumi.getter(name="dnBandwidth") + def dn_bandwidth(self) -> Optional[float]: + """ + the download bandwidth cap of the link, in Mbps. Disabled if not set + """ + return pulumi.get(self, "dn_bandwidth") + + @property + @pulumi.getter(name="idleTimeInMinutes") + def idle_time_in_minutes(self) -> Optional[int]: + """ + Required if `surrogate_IP`==`true`, idle Time to Disassociation + """ + return pulumi.get(self, "idle_time_in_minutes") @property @pulumi.getter - def subnets(self) -> Optional[Sequence[str]]: - return pulumi.get(self, "subnets") + def name(self) -> Optional[str]: + """ + Network name + """ + return pulumi.get(self, "name") + + @property + @pulumi.getter(name="ofwEnabled") + def ofw_enabled(self) -> Optional[bool]: + """ + if `true`, enable the firewall control option + """ + return pulumi.get(self, "ofw_enabled") + + @property + @pulumi.getter(name="surrogateIp") + def surrogate_ip(self) -> Optional[bool]: + """ + Can only be `true` when `auth_required`==`true`. Map a user to a private IP address so it applies the user's policies, instead of the location's policies + """ + return pulumi.get(self, "surrogate_ip") + + @property + @pulumi.getter(name="surrogateIpEnforcedForKnownBrowsers") + def surrogate_ip_enforced_for_known_browsers(self) -> Optional[bool]: + """ + Can only be `true` when `surrogate_IP`==`true`, enforce surrogate IP for known browsers + """ + return pulumi.get(self, "surrogate_ip_enforced_for_known_browsers") + + @property + @pulumi.getter(name="surrogateRefreshTimeInMinutes") + def surrogate_refresh_time_in_minutes(self) -> Optional[int]: + """ + Required if `surrogate_IP_enforced_for_known_browsers`==`true`, must be lower or equal than `idle_time_in_minutes`, refresh Time for re-validation of Surrogacy + """ + return pulumi.get(self, "surrogate_refresh_time_in_minutes") @property - @pulumi.getter(name="uploadMbps") - def upload_mbps(self) -> Optional[int]: + @pulumi.getter(name="upBandwidth") + def up_bandwidth(self) -> Optional[float]: """ - the download bandwidth cap of the link, in Mbps + the download bandwidth cap of the link, in Mbps. Disabled if not set """ - return pulumi.get(self, "upload_mbps") + return pulumi.get(self, "up_bandwidth") @pulumi.output_type @@ -13501,9 +13945,9 @@ def __init__(__self__, *, restricted: Optional[bool] = None, static_nat: Optional[Mapping[str, 'outputs.NetworkInternetAccessStaticNat']] = None): """ - :param Mapping[str, 'NetworkInternetAccessDestinationNatArgs'] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param Mapping[str, 'NetworkInternetAccessDestinationNatArgs'] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param bool restricted: by default, all access is allowed, to only allow certain traffic, make `restricted`=`true` and define service_policies - :param Mapping[str, 'NetworkInternetAccessStaticNatArgs'] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + :param Mapping[str, 'NetworkInternetAccessStaticNatArgs'] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ if create_simple_service_policy is not None: pulumi.set(__self__, "create_simple_service_policy", create_simple_service_policy) @@ -13525,7 +13969,7 @@ def create_simple_service_policy(self) -> Optional[bool]: @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[Mapping[str, 'outputs.NetworkInternetAccessDestinationNat']]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -13546,7 +13990,7 @@ def restricted(self) -> Optional[bool]: @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[Mapping[str, 'outputs.NetworkInternetAccessStaticNat']]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -13558,6 +14002,8 @@ def __key_warning(key: str): suggest = None if key == "internalIp": suggest = "internal_ip" + elif key == "wanName": + suggest = "wan_name" if suggest: pulumi.log.warn(f"Key '{key}' not found in NetworkInternetAccessDestinationNat. Access the value via the '{suggest}' property getter instead.") @@ -13573,17 +14019,28 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, internal_ip: Optional[str] = None, name: Optional[str] = None, - port: Optional[int] = None): + port: Optional[str] = None, + wan_name: Optional[str] = None): + """ + :param str internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + :param str port: The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + :param str wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: pulumi.set(__self__, "name", name) if port is not None: pulumi.set(__self__, "port", port) + if wan_name is not None: + pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[str]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @@ -13593,9 +14050,20 @@ def name(self) -> Optional[str]: @property @pulumi.getter - def port(self) -> Optional[int]: + def port(self) -> Optional[str]: + """ + The Destination NAT destination IP Address. Must be a Port (i.e. "443") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "port") + @property + @pulumi.getter(name="wanName") + def wan_name(self) -> Optional[str]: + """ + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity + """ + return pulumi.get(self, "wan_name") + @pulumi.output_type class NetworkInternetAccessStaticNat(dict): @@ -13619,38 +14087,132 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - internal_ip: Optional[str] = None, - name: Optional[str] = None, + internal_ip: str, + name: str, wan_name: Optional[str] = None): """ - :param str wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param str internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + :param str wan_name: SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) if wan_name is not None: pulumi.set(__self__, "wan_name", wan_name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[str]: + def internal_ip(self) -> str: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @pulumi.getter - def name(self) -> Optional[str]: + def name(self) -> str: return pulumi.get(self, "name") @property @pulumi.getter(name="wanName") def wan_name(self) -> Optional[str]: """ - If not set, we configure the nat policies against all WAN ports for simplicity + SRX Only. If not set, we configure the nat policies against all WAN ports for simplicity. Can be a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "wan_name") +@pulumi.output_type +class NetworkMulticast(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "disableIgmp": + suggest = "disable_igmp" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in NetworkMulticast. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + NetworkMulticast.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + NetworkMulticast.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + disable_igmp: Optional[bool] = None, + enabled: Optional[bool] = None, + groups: Optional[Mapping[str, 'outputs.NetworkMulticastGroups']] = None): + """ + :param bool disable_igmp: if the network will only be the soruce of the multicast traffic, IGMP can be disabled + :param Mapping[str, 'NetworkMulticastGroupsArgs'] groups: Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + """ + if disable_igmp is not None: + pulumi.set(__self__, "disable_igmp", disable_igmp) + if enabled is not None: + pulumi.set(__self__, "enabled", enabled) + if groups is not None: + pulumi.set(__self__, "groups", groups) + + @property + @pulumi.getter(name="disableIgmp") + def disable_igmp(self) -> Optional[bool]: + """ + if the network will only be the soruce of the multicast traffic, IGMP can be disabled + """ + return pulumi.get(self, "disable_igmp") + + @property + @pulumi.getter + def enabled(self) -> Optional[bool]: + return pulumi.get(self, "enabled") + + @property + @pulumi.getter + def groups(self) -> Optional[Mapping[str, 'outputs.NetworkMulticastGroups']]: + """ + Group address to RP (rendezvous point) mapping. Property Key is the CIDR (example "225.1.0.3/32") + """ + return pulumi.get(self, "groups") + + +@pulumi.output_type +class NetworkMulticastGroups(dict): + @staticmethod + def __key_warning(key: str): + suggest = None + if key == "rpIp": + suggest = "rp_ip" + + if suggest: + pulumi.log.warn(f"Key '{key}' not found in NetworkMulticastGroups. Access the value via the '{suggest}' property getter instead.") + + def __getitem__(self, key: str) -> Any: + NetworkMulticastGroups.__key_warning(key) + return super().__getitem__(key) + + def get(self, key: str, default = None) -> Any: + NetworkMulticastGroups.__key_warning(key) + return super().get(key, default) + + def __init__(__self__, *, + rp_ip: Optional[str] = None): + """ + :param str rp_ip: RP (rendezvous point) IP Address + """ + if rp_ip is not None: + pulumi.set(__self__, "rp_ip", rp_ip) + + @property + @pulumi.getter(name="rpIp") + def rp_ip(self) -> Optional[str]: + """ + RP (rendezvous point) IP Address + """ + return pulumi.get(self, "rp_ip") + + @pulumi.output_type class NetworkTenants(dict): def __init__(__self__, *, @@ -13725,7 +14287,7 @@ def __init__(__self__, *, """ :param str advertised_subnet: if `routed`==`true`, whether to advertise an aggregated subnet toward HUB this is useful when there are multiple networks on SPOKE's side :param bool allow_ping: whether to allow ping from vpn into this routed network - :param Mapping[str, 'NetworkVpnAccessDestinationNatArgs'] destination_nat: Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + :param Mapping[str, 'NetworkVpnAccessDestinationNatArgs'] destination_nat: Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined :param str nat_pool: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub, a subnet is required to create and advertise the route to Hub :param bool no_readvertise_to_lan_bgp: toward LAN-side BGP peers :param bool no_readvertise_to_lan_ospf: toward LAN-side OSPF peers @@ -13735,7 +14297,7 @@ def __init__(__self__, *, to allow it to be leaked to other vrfs :param bool routed: whether this network is routable :param 'NetworkVpnAccessSourceNatArgs' source_nat: if `routed`==`false` (usually at Spoke), but some hosts needs to be reachable from Hub - :param Mapping[str, 'NetworkVpnAccessStaticNatArgs'] static_nat: Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + :param Mapping[str, 'NetworkVpnAccessStaticNatArgs'] static_nat: Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") :param str summarized_subnet: toward overlay how HUB should deal with routes it received from Spokes :param str summarized_subnet_to_lan_bgp: toward LAN-side BGP peers @@ -13790,7 +14352,7 @@ def allow_ping(self) -> Optional[bool]: @pulumi.getter(name="destinationNat") def destination_nat(self) -> Optional[Mapping[str, 'outputs.NetworkVpnAccessDestinationNat']]: """ - Property key may be an IP/Port (i.e. "63.16.0.3:443"), or a port (i.e. ":2222") + Property key can be an External IP (i.e. "63.16.0.3"), an External IP:Port (i.e. "63.16.0.3:443"), an External Port (i.e. ":443"), an External CIDR (i.e. "63.16.0.0/30"), an External CIDR:Port (i.e. "63.16.0.0/30:443") or a Variable (i.e. "{{myvar}}"). At least one of the `internal_ip` or `port` must be defined """ return pulumi.get(self, "destination_nat") @@ -13856,7 +14418,7 @@ def source_nat(self) -> Optional['outputs.NetworkVpnAccessSourceNat']: @pulumi.getter(name="staticNat") def static_nat(self) -> Optional[Mapping[str, 'outputs.NetworkVpnAccessStaticNat']]: """ - Property key may be an IP Address (i.e. "172.16.0.1"), and IP Address and Port (i.e. "172.16.0.1:8443") or a CIDR (i.e. "172.16.0.12/20") + Property key may be an External IP Address (i.e. "63.16.0.3"), a CIDR (i.e. "63.16.0.12/20") or a Variable (i.e. "{{myvar}}") """ return pulumi.get(self, "static_nat") @@ -13908,7 +14470,10 @@ def get(self, key: str, default = None) -> Any: def __init__(__self__, *, internal_ip: Optional[str] = None, name: Optional[str] = None, - port: Optional[int] = None): + port: Optional[str] = None): + """ + :param str internal_ip: The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ if internal_ip is not None: pulumi.set(__self__, "internal_ip", internal_ip) if name is not None: @@ -13919,6 +14484,9 @@ def __init__(__self__, *, @property @pulumi.getter(name="internalIp") def internal_ip(self) -> Optional[str]: + """ + The Destination NAT destination IP Address. Must be an IP (i.e. "192.168.70.30") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @@ -13928,7 +14496,7 @@ def name(self) -> Optional[str]: @property @pulumi.getter - def port(self) -> Optional[int]: + def port(self) -> Optional[str]: return pulumi.get(self, "port") @@ -13969,8 +14537,6 @@ def __key_warning(key: str): suggest = None if key == "internalIp": suggest = "internal_ip" - elif key == "wanName": - suggest = "wan_name" if suggest: pulumi.log.warn(f"Key '{key}' not found in NetworkVpnAccessStaticNat. Access the value via the '{suggest}' property getter instead.") @@ -13984,37 +14550,27 @@ def get(self, key: str, default = None) -> Any: return super().get(key, default) def __init__(__self__, *, - internal_ip: Optional[str] = None, - name: Optional[str] = None, - wan_name: Optional[str] = None): + internal_ip: str, + name: str): """ - :param str wan_name: If not set, we configure the nat policies against all WAN ports for simplicity + :param str internal_ip: The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") """ - if internal_ip is not None: - pulumi.set(__self__, "internal_ip", internal_ip) - if name is not None: - pulumi.set(__self__, "name", name) - if wan_name is not None: - pulumi.set(__self__, "wan_name", wan_name) + pulumi.set(__self__, "internal_ip", internal_ip) + pulumi.set(__self__, "name", name) @property @pulumi.getter(name="internalIp") - def internal_ip(self) -> Optional[str]: + def internal_ip(self) -> str: + """ + The Static NAT destination IP Address. Must be an IP Address (i.e. "192.168.70.3") or a Variable (i.e. "{{myvar}}") + """ return pulumi.get(self, "internal_ip") @property @pulumi.getter - def name(self) -> Optional[str]: + def name(self) -> str: return pulumi.get(self, "name") - @property - @pulumi.getter(name="wanName") - def wan_name(self) -> Optional[str]: - """ - If not set, we configure the nat policies against all WAN ports for simplicity - """ - return pulumi.get(self, "wan_name") - @pulumi.output_type class NetworktemplateAclPolicy(dict): @@ -14040,10 +14596,12 @@ def __init__(__self__, *, name: Optional[str] = None, src_tags: Optional[Sequence[str]] = None): """ - :param Sequence['NetworktemplateAclPolicyActionArgs'] actions: - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to - :param Sequence[str] src_tags: - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + :param Sequence['NetworktemplateAclPolicyActionArgs'] actions: ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + :param Sequence[str] src_tags: ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ if actions is not None: pulumi.set(__self__, "actions", actions) @@ -14056,8 +14614,9 @@ def __init__(__self__, *, @pulumi.getter def actions(self) -> Optional[Sequence['outputs.NetworktemplateAclPolicyAction']]: """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ return pulumi.get(self, "actions") @@ -14070,8 +14629,9 @@ def name(self) -> Optional[str]: @pulumi.getter(name="srcTags") def src_tags(self) -> Optional[Sequence[str]]: """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ return pulumi.get(self, "src_tags") @@ -14160,9 +14720,9 @@ def __init__(__self__, *, * `static_gbp`: applying gbp tag against matching conditions * `subnet`' :param int gbp_tag: required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) :param Sequence[str] macs: required if - `type`==`mac` - `type`==`static_gbp` if from matching mac @@ -14176,8 +14736,7 @@ def __init__(__self__, *, * `type`==`radius_group` * `type`==`static_gbp` if from matching radius_group - :param Sequence['NetworktemplateAclTagsSpecArgs'] specs: if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + :param Sequence['NetworktemplateAclTagsSpecArgs'] specs: if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any :param Sequence[str] subnets: if - `type`==`subnet` - `type`==`resource` (optional. default is `any`) @@ -14219,9 +14778,9 @@ def type(self) -> str: def gbp_tag(self) -> Optional[int]: """ required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) """ return pulumi.get(self, "gbp_tag") @@ -14263,8 +14822,7 @@ def radius_group(self) -> Optional[str]: @pulumi.getter def specs(self) -> Optional[Sequence['outputs.NetworktemplateAclTagsSpec']]: """ - if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any """ return pulumi.get(self, "specs") @@ -14304,7 +14862,7 @@ def __init__(__self__, *, protocol: Optional[str] = None): """ :param str port_range: matched dst port, "0" means any - :param str protocol: `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + :param str protocol: `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ if port_range is not None: pulumi.set(__self__, "port_range", port_range) @@ -14323,7 +14881,7 @@ def port_range(self) -> Optional[str]: @pulumi.getter def protocol(self) -> Optional[str]: """ - `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ return pulumi.get(self, "protocol") @@ -14665,8 +15223,7 @@ def __init__(__self__, *, """ :param str gateway: only required for EVPN-VXLAN networks, IPv4 Virtual Gateway :param str gateway6: only required for EVPN-VXLAN networks, IPv6 Virtual Gateway - :param bool isolation: whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + :param bool isolation: whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set :param str subnet: optional for pure switching, required when L3 / routing features are used :param str subnet6: optional for pure switching, required when L3 / routing features are used """ @@ -14709,8 +15266,7 @@ def gateway6(self) -> Optional[str]: @pulumi.getter def isolation(self) -> Optional[bool]: """ - whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set """ return pulumi.get(self, "isolation") @@ -15159,9 +15715,7 @@ def __init__(__self__, *, voip_network: Optional[str] = None): """ :param bool all_networks: Only if `mode`==`trunk` whether to trunk all network/vlans - :param bool allow_dhcpd: 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 allow_dhcpd is a tri_state. - 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. + :param bool allow_dhcpd: 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 allow_dhcpd is a tri_state. 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. :param bool allow_multiple_supplicants: Only if `mode`!=`dynamic` :param bool bypass_auth_when_server_down: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` bypass auth for known clients if set to true when RADIUS server is down :param bool bypass_auth_when_server_down_for_unkonwn_client: Only if `mode`!=`dynamic` and `port_auth`=`dot1x` bypass auth for all (including unknown clients) if set to true when RADIUS server is down @@ -15173,8 +15727,7 @@ def __init__(__self__, *, :param bool enable_mac_auth: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` whether to enable MAC Auth :param bool enable_qos: Only if `mode`!=`dynamic` :param str guest_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) - :param bool inter_switch_link: Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + :param bool inter_switch_link: Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together :param bool mac_auth_only: Only if `mode`!=`dynamic` and `enable_mac_auth`==`true` :param bool mac_auth_preferred: Only if `mode`!=`dynamic` + `enable_mac_auth`==`true` + `mac_auth_only`==`false`, dot1x will be given priority then mac_auth. Enable this to prefer mac_auth over dot1x. :param str mac_auth_protocol: Only if `mode`!=`dynamic` and `enable_mac_auth` ==`true`. This type is ignored if mist_nac is enabled. enum: `eap-md5`, `eap-peap`, `pap` @@ -15192,8 +15745,7 @@ def __init__(__self__, *, :param str server_fail_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` sets server fail fallback vlan :param str server_reject_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` when radius server reject / fails :param str speed: Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto` - :param 'NetworktemplatePortUsagesStormControlArgs' storm_control: Switch storm control - Only if `mode`!=`dynamic` + :param 'NetworktemplatePortUsagesStormControlArgs' storm_control: Switch storm control. Only if `mode`!=`dynamic` :param bool stp_edge: Only if `mode`!=`dynamic` when enabled, the port is not expected to receive BPDU frames :param str ui_evpntopo_id: 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 :param bool use_vstp: if this is connected to a vstp network @@ -15288,9 +15840,7 @@ def all_networks(self) -> Optional[bool]: @pulumi.getter(name="allowDhcpd") def allow_dhcpd(self) -> Optional[bool]: """ - 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 allow_dhcpd is a tri_state. - 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. + 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 allow_dhcpd is a tri_state. 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. """ return pulumi.get(self, "allow_dhcpd") @@ -15386,8 +15936,7 @@ def guest_network(self) -> Optional[str]: @pulumi.getter(name="interSwitchLink") def inter_switch_link(self) -> Optional[bool]: """ - Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together """ return pulumi.get(self, "inter_switch_link") @@ -15531,8 +16080,7 @@ def speed(self) -> Optional[str]: @pulumi.getter(name="stormControl") def storm_control(self) -> Optional['outputs.NetworktemplatePortUsagesStormControl']: """ - Switch storm control - Only if `mode`!=`dynamic` + Switch storm control. Only if `mode`!=`dynamic` """ return pulumi.get(self, "storm_control") @@ -15793,8 +16341,7 @@ def __init__(__self__, *, :param int acct_interim_interval: how frequently should interim accounting be reported, 60-65535. default is 0 (use one specified in Access-Accept request from RADIUS Server). Very frequent messages can affect the performance of the radius server, 600 and up is recommended when enabled :param int auth_servers_retries: radius auth session retries :param int auth_servers_timeout: radius auth session timeout - :param str network: use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + :param str network: use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip :param str source_ip: use `network`or `source_ip` """ if acct_interim_interval is not None: @@ -15850,8 +16397,7 @@ def auth_servers_timeout(self) -> Optional[int]: @pulumi.getter def network(self) -> Optional[str]: """ - use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip """ return pulumi.get(self, "network") @@ -17348,11 +17894,9 @@ def __init__(__self__, *, encryption_type: Optional[str] = None, name: Optional[str] = None): """ - :param str authentication_password: Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + :param str authentication_password: Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. :param str authentication_type: sha224, sha256, sha384, sha512 are supported in 21.1 and newer release. enum: `authentication_md5`, `authentication_none`, `authentication_sha`, `authentication_sha224`, `authentication_sha256`, `authentication_sha384`, `authentication_sha512` - :param str encryption_password: Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + :param str encryption_password: Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters :param str encryption_type: enum: `privacy-3des`, `privacy-aes128`, `privacy-des`, `privacy-none` """ if authentication_password is not None: @@ -17370,8 +17914,7 @@ def __init__(__self__, *, @pulumi.getter(name="authenticationPassword") def authentication_password(self) -> Optional[str]: """ - Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. """ return pulumi.get(self, "authentication_password") @@ -17387,8 +17930,7 @@ def authentication_type(self) -> Optional[str]: @pulumi.getter(name="encryptionPassword") def encryption_password(self) -> Optional[str]: """ - Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters """ return pulumi.get(self, "encryption_password") @@ -17831,8 +18373,7 @@ def __init__(__self__, *, :param str match_type: 'property key define the type of matching, value is the string to match. e.g: `match_name[0:3]`, `match_name[2:6]`, `match_model`, `match_model[0-6]` :param 'NetworktemplateSwitchMatchingRuleOobIpConfigArgs' oob_ip_config: Out-of-Band Management interface configuration :param Mapping[str, 'NetworktemplateSwitchMatchingRulePortConfigArgs'] port_config: Propery key is the interface name or interface range - :param Mapping[str, 'NetworktemplateSwitchMatchingRulePortMirroringArgs'] port_mirroring: Property key is the port mirroring instance name - port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + :param Mapping[str, 'NetworktemplateSwitchMatchingRulePortMirroringArgs'] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ if additional_config_cmds is not None: pulumi.set(__self__, "additional_config_cmds", additional_config_cmds) @@ -17949,8 +18490,7 @@ def port_config(self) -> Optional[Mapping[str, 'outputs.NetworktemplateSwitchMat @pulumi.getter(name="portMirroring") def port_mirroring(self) -> Optional[Mapping[str, 'outputs.NetworktemplateSwitchMatchingRulePortMirroring']]: """ - Property key is the port mirroring instance name - port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ return pulumi.get(self, "port_mirroring") @@ -22079,8 +22619,7 @@ def __init__(__self__, *, """ :param Mapping[str, int] apps: Map from app key to bandwidth in kbps. Property key is the app key, defined in Get Application List - :param Mapping[str, int] wxtag_ids: Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - Property key is the wxtag id + :param Mapping[str, int] wxtag_ids: Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` """ if apps is not None: pulumi.set(__self__, "apps", apps) @@ -22107,8 +22646,7 @@ def enabled(self) -> Optional[bool]: @pulumi.getter(name="wxtagIds") def wxtag_ids(self) -> Optional[Mapping[str, int]]: """ - Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - Property key is the wxtag id + Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` """ return pulumi.get(self, "wxtag_ids") @@ -22843,8 +23381,7 @@ def __init__(__self__, *, enabled: Optional[bool] = None, radius_groups: Optional[Mapping[str, str]] = None): """ - :param Mapping[str, str] radius_groups: map between radius_group and the desired DNS server (IPv4 only) - Property key is the RADIUS group, property value is the desired DNS Server + :param Mapping[str, str] radius_groups: map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server """ if enabled is not None: pulumi.set(__self__, "enabled", enabled) @@ -22860,8 +23397,7 @@ def enabled(self) -> Optional[bool]: @pulumi.getter(name="radiusGroups") def radius_groups(self) -> Optional[Mapping[str, str]]: """ - map between radius_group and the desired DNS server (IPv4 only) - Property key is the RADIUS group, property value is the desired DNS Server + map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server """ return pulumi.get(self, "radius_groups") @@ -22897,8 +23433,7 @@ def __init__(__self__, *, source: Optional[str] = None): """ :param str default_psk: default PSK to use if cloud WLC is not available, 8-63 characters - :param bool force_lookup: when 11r is enabled, we'll try to use the cached PMK, this can be disabled - `false` means auto + :param bool force_lookup: when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto :param str source: enum: `cloud_psks`, `radius` """ if default_psk is not None: @@ -22934,8 +23469,7 @@ def enabled(self) -> Optional[bool]: @pulumi.getter(name="forceLookup") def force_lookup(self) -> Optional[bool]: """ - when 11r is enabled, we'll try to use the cached PMK, this can be disabled - `false` means auto + when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto """ return pulumi.get(self, "force_lookup") @@ -27082,10 +27616,8 @@ def __init__(__self__, *, use_mxedge: Optional[bool] = None, use_site_mxedge: Optional[bool] = None): """ - :param Sequence[str] mxcluster_ids: To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - Org mxedge(s) identified by mxcluster_ids - :param Sequence[str] proxy_hosts: default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + :param Sequence[str] mxcluster_ids: To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids + :param Sequence[str] proxy_hosts: default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` :param str server_name: name of the server to verify (against the cacerts in Org Setting). Only if not Mist Edge. :param Sequence['WlanRadsecServerArgs'] servers: List of Radsec Servers. Only if not Mist Edge. :param bool use_mxedge: use mxedge(s) as radsecproxy @@ -27129,8 +27661,7 @@ def idle_timeout(self) -> Optional[int]: @pulumi.getter(name="mxclusterIds") def mxcluster_ids(self) -> Optional[Sequence[str]]: """ - To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - Org mxedge(s) identified by mxcluster_ids + To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids """ return pulumi.get(self, "mxcluster_ids") @@ -27138,8 +27669,7 @@ def mxcluster_ids(self) -> Optional[Sequence[str]]: @pulumi.getter(name="proxyHosts") def proxy_hosts(self) -> Optional[Sequence[str]]: """ - default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` """ return pulumi.get(self, "proxy_hosts") diff --git a/sdk/python/pulumi_juniper_mist/org/sso.py b/sdk/python/pulumi_juniper_mist/org/sso.py index 2c5f5af1..6bce7eab 100644 --- a/sdk/python/pulumi_juniper_mist/org/sso.py +++ b/sdk/python/pulumi_juniper_mist/org/sso.py @@ -30,9 +30,7 @@ def __init__(__self__, *, name: Optional[pulumi.Input[str]] = None, nameid_format: Optional[pulumi.Input[str]] = None, role_attr_extraction: Optional[pulumi.Input[str]] = None, - role_attr_from: Optional[pulumi.Input[str]] = None, - scim_enabled: Optional[pulumi.Input[bool]] = None, - scim_secret_token: Optional[pulumi.Input[str]] = None): + role_attr_from: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Sso resource. :param pulumi.Input[str] idp_cert: IDP Cert (used to verify the signed response) @@ -46,15 +44,12 @@ def __init__(__self__, *, :param pulumi.Input[bool] ignore_unmatched_roles: ignore any unmatched roles provided in assertion. By default, an assertion is treated as invalid for any unmatched role :param pulumi.Input[str] name: name :param pulumi.Input[str] nameid_format: enum: `email`, `unspecified` - :param pulumi.Input[str] role_attr_extraction: custom role attribute parsing scheme\\n\\nSupported Role Parsing - Schemes\\n
NameScheme
cn
  • The expected role attribute format in - SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - is “cn”
+ :param pulumi.Input[str] role_attr_extraction: custom role attribute parsing scheme. Supported Role Parsing Schemes +
NameScheme
`cn`
  • The expected role attribute format in SAML + Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + “cn”
:param pulumi.Input[str] role_attr_from: name of the attribute in SAML Assertion to extract role from. Default: `Role` - :param pulumi.Input[bool] scim_enabled: if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - :param pulumi.Input[str] scim_secret_token: if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - Authorization header of SCIM provisioning requests by the IDP """ pulumi.set(__self__, "idp_cert", idp_cert) pulumi.set(__self__, "idp_sign_algo", idp_sign_algo) @@ -75,10 +70,6 @@ def __init__(__self__, *, pulumi.set(__self__, "role_attr_extraction", role_attr_extraction) if role_attr_from is not None: pulumi.set(__self__, "role_attr_from", role_attr_from) - if scim_enabled is not None: - pulumi.set(__self__, "scim_enabled", scim_enabled) - if scim_secret_token is not None: - pulumi.set(__self__, "scim_secret_token", scim_secret_token) @property @pulumi.getter(name="idpCert") @@ -203,11 +194,11 @@ def nameid_format(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="roleAttrExtraction") def role_attr_extraction(self) -> Optional[pulumi.Input[str]]: """ - custom role attribute parsing scheme\\n\\nSupported Role Parsing - Schemes\\n
NameScheme
cn
  • The expected role attribute format in - SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - is “cn”
+ custom role attribute parsing scheme. Supported Role Parsing Schemes +
NameScheme
`cn`
  • The expected role attribute format in SAML + Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + “cn”
""" return pulumi.get(self, "role_attr_extraction") @@ -227,31 +218,6 @@ def role_attr_from(self) -> Optional[pulumi.Input[str]]: def role_attr_from(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "role_attr_from", value) - @property - @pulumi.getter(name="scimEnabled") - def scim_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - """ - return pulumi.get(self, "scim_enabled") - - @scim_enabled.setter - def scim_enabled(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "scim_enabled", value) - - @property - @pulumi.getter(name="scimSecretToken") - def scim_secret_token(self) -> Optional[pulumi.Input[str]]: - """ - if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - Authorization header of SCIM provisioning requests by the IDP - """ - return pulumi.get(self, "scim_secret_token") - - @scim_secret_token.setter - def scim_secret_token(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "scim_secret_token", value) - @pulumi.input_type class _SsoState: @@ -268,9 +234,7 @@ def __init__(__self__, *, nameid_format: Optional[pulumi.Input[str]] = None, org_id: Optional[pulumi.Input[str]] = None, role_attr_extraction: Optional[pulumi.Input[str]] = None, - role_attr_from: Optional[pulumi.Input[str]] = None, - scim_enabled: Optional[pulumi.Input[bool]] = None, - scim_secret_token: Optional[pulumi.Input[str]] = None): + role_attr_from: Optional[pulumi.Input[str]] = None): """ Input properties used for looking up and filtering Sso resources. :param pulumi.Input[str] custom_logout_url: a URL we will redirect the user after user logout from Mist (for some IdP which supports a custom logout URL that is @@ -287,15 +251,12 @@ def __init__(__self__, *, :param pulumi.Input[str] issuer: IDP issuer URL :param pulumi.Input[str] name: name :param pulumi.Input[str] nameid_format: enum: `email`, `unspecified` - :param pulumi.Input[str] role_attr_extraction: custom role attribute parsing scheme\\n\\nSupported Role Parsing - Schemes\\n
NameScheme
cn
  • The expected role attribute format in - SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - is “cn”
+ :param pulumi.Input[str] role_attr_extraction: custom role attribute parsing scheme. Supported Role Parsing Schemes +
NameScheme
`cn`
  • The expected role attribute format in SAML + Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + “cn”
:param pulumi.Input[str] role_attr_from: name of the attribute in SAML Assertion to extract role from. Default: `Role` - :param pulumi.Input[bool] scim_enabled: if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - :param pulumi.Input[str] scim_secret_token: if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - Authorization header of SCIM provisioning requests by the IDP """ if custom_logout_url is not None: pulumi.set(__self__, "custom_logout_url", custom_logout_url) @@ -323,10 +284,6 @@ def __init__(__self__, *, pulumi.set(__self__, "role_attr_extraction", role_attr_extraction) if role_attr_from is not None: pulumi.set(__self__, "role_attr_from", role_attr_from) - if scim_enabled is not None: - pulumi.set(__self__, "scim_enabled", scim_enabled) - if scim_secret_token is not None: - pulumi.set(__self__, "scim_secret_token", scim_secret_token) @property @pulumi.getter(name="customLogoutUrl") @@ -465,11 +422,11 @@ def org_id(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="roleAttrExtraction") def role_attr_extraction(self) -> Optional[pulumi.Input[str]]: """ - custom role attribute parsing scheme\\n\\nSupported Role Parsing - Schemes\\n
NameScheme
cn
  • The expected role attribute format in - SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - is “cn”
+ custom role attribute parsing scheme. Supported Role Parsing Schemes +
NameScheme
`cn`
  • The expected role attribute format in SAML + Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + “cn”
""" return pulumi.get(self, "role_attr_extraction") @@ -489,31 +446,6 @@ def role_attr_from(self) -> Optional[pulumi.Input[str]]: def role_attr_from(self, value: Optional[pulumi.Input[str]]): pulumi.set(self, "role_attr_from", value) - @property - @pulumi.getter(name="scimEnabled") - def scim_enabled(self) -> Optional[pulumi.Input[bool]]: - """ - if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - """ - return pulumi.get(self, "scim_enabled") - - @scim_enabled.setter - def scim_enabled(self, value: Optional[pulumi.Input[bool]]): - pulumi.set(self, "scim_enabled", value) - - @property - @pulumi.getter(name="scimSecretToken") - def scim_secret_token(self) -> Optional[pulumi.Input[str]]: - """ - if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - Authorization header of SCIM provisioning requests by the IDP - """ - return pulumi.get(self, "scim_secret_token") - - @scim_secret_token.setter - def scim_secret_token(self, value: Optional[pulumi.Input[str]]): - pulumi.set(self, "scim_secret_token", value) - class Sso(pulumi.CustomResource): @overload @@ -532,8 +464,6 @@ def __init__(__self__, org_id: Optional[pulumi.Input[str]] = None, role_attr_extraction: Optional[pulumi.Input[str]] = None, role_attr_from: Optional[pulumi.Input[str]] = None, - scim_enabled: Optional[pulumi.Input[bool]] = None, - scim_secret_token: Optional[pulumi.Input[str]] = None, __props__=None): """ This resource manages Org API Tokens. @@ -583,15 +513,12 @@ def __init__(__self__, :param pulumi.Input[str] issuer: IDP issuer URL :param pulumi.Input[str] name: name :param pulumi.Input[str] nameid_format: enum: `email`, `unspecified` - :param pulumi.Input[str] role_attr_extraction: custom role attribute parsing scheme\\n\\nSupported Role Parsing - Schemes\\n
NameScheme
cn
  • The expected role attribute format in - SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - is “cn”
+ :param pulumi.Input[str] role_attr_extraction: custom role attribute parsing scheme. Supported Role Parsing Schemes +
NameScheme
`cn`
  • The expected role attribute format in SAML + Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + “cn”
:param pulumi.Input[str] role_attr_from: name of the attribute in SAML Assertion to extract role from. Default: `Role` - :param pulumi.Input[bool] scim_enabled: if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - :param pulumi.Input[str] scim_secret_token: if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - Authorization header of SCIM provisioning requests by the IDP """ ... @overload @@ -661,8 +588,6 @@ def _internal_init(__self__, org_id: Optional[pulumi.Input[str]] = None, role_attr_extraction: Optional[pulumi.Input[str]] = None, role_attr_from: Optional[pulumi.Input[str]] = None, - scim_enabled: Optional[pulumi.Input[bool]] = None, - scim_secret_token: Optional[pulumi.Input[str]] = None, __props__=None): opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts) if not isinstance(opts, pulumi.ResourceOptions): @@ -694,8 +619,6 @@ def _internal_init(__self__, __props__.__dict__["org_id"] = org_id __props__.__dict__["role_attr_extraction"] = role_attr_extraction __props__.__dict__["role_attr_from"] = role_attr_from - __props__.__dict__["scim_enabled"] = scim_enabled - __props__.__dict__["scim_secret_token"] = scim_secret_token __props__.__dict__["domain"] = None super(Sso, __self__).__init__( 'junipermist:org/sso:Sso', @@ -719,9 +642,7 @@ def get(resource_name: str, nameid_format: Optional[pulumi.Input[str]] = None, org_id: Optional[pulumi.Input[str]] = None, role_attr_extraction: Optional[pulumi.Input[str]] = None, - role_attr_from: Optional[pulumi.Input[str]] = None, - scim_enabled: Optional[pulumi.Input[bool]] = None, - scim_secret_token: Optional[pulumi.Input[str]] = None) -> 'Sso': + role_attr_from: Optional[pulumi.Input[str]] = None) -> 'Sso': """ Get an existing Sso resource's state with the given name, id, and optional extra properties used to qualify the lookup. @@ -743,15 +664,12 @@ def get(resource_name: str, :param pulumi.Input[str] issuer: IDP issuer URL :param pulumi.Input[str] name: name :param pulumi.Input[str] nameid_format: enum: `email`, `unspecified` - :param pulumi.Input[str] role_attr_extraction: custom role attribute parsing scheme\\n\\nSupported Role Parsing - Schemes\\n
NameScheme
cn
  • The expected role attribute format in - SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - is “cn”
+ :param pulumi.Input[str] role_attr_extraction: custom role attribute parsing scheme. Supported Role Parsing Schemes +
NameScheme
`cn`
  • The expected role attribute format in SAML + Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + “cn”
:param pulumi.Input[str] role_attr_from: name of the attribute in SAML Assertion to extract role from. Default: `Role` - :param pulumi.Input[bool] scim_enabled: if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - :param pulumi.Input[str] scim_secret_token: if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - Authorization header of SCIM provisioning requests by the IDP """ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id)) @@ -770,8 +688,6 @@ def get(resource_name: str, __props__.__dict__["org_id"] = org_id __props__.__dict__["role_attr_extraction"] = role_attr_extraction __props__.__dict__["role_attr_from"] = role_attr_from - __props__.__dict__["scim_enabled"] = scim_enabled - __props__.__dict__["scim_secret_token"] = scim_secret_token return Sso(resource_name, opts=opts, __props__=__props__) @property @@ -867,11 +783,11 @@ def org_id(self) -> pulumi.Output[str]: @pulumi.getter(name="roleAttrExtraction") def role_attr_extraction(self) -> pulumi.Output[Optional[str]]: """ - custom role attribute parsing scheme\\n\\nSupported Role Parsing - Schemes\\n
NameScheme
cn
  • The expected role attribute format in - SAML Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected - (or the entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value - is “cn”
+ custom role attribute parsing scheme. Supported Role Parsing Schemes +
NameScheme
`cn`
  • The expected role attribute format in SAML + Assertion is “CN=cn,OU=ou1,OU=ou2,…”
  • CN (the key) is case insensitive and exactly 1 CN is expected (or the + entire entry will be ignored)
  • E.g. if role attribute is “CN=cn,OU=ou1,OU=ou2” then parsed role value is + “cn”
""" return pulumi.get(self, "role_attr_extraction") @@ -883,20 +799,3 @@ def role_attr_from(self) -> pulumi.Output[str]: """ return pulumi.get(self, "role_attr_from") - @property - @pulumi.getter(name="scimEnabled") - def scim_enabled(self) -> pulumi.Output[bool]: - """ - if `idp_type`==`oauth`, indicates if SCIM provisioning is enabled for the OAuth IDP - """ - return pulumi.get(self, "scim_enabled") - - @property - @pulumi.getter(name="scimSecretToken") - def scim_secret_token(self) -> pulumi.Output[Optional[str]]: - """ - if `idp_type`==`oauth`, scim_secret_token (generated by caller, crypto-random) is used as the Bearer token in the - Authorization header of SCIM provisioning requests by the IDP - """ - return pulumi.get(self, "scim_secret_token") - diff --git a/sdk/python/pulumi_juniper_mist/provider.py b/sdk/python/pulumi_juniper_mist/provider.py index ab66e1f0..7acef237 100644 --- a/sdk/python/pulumi_juniper_mist/provider.py +++ b/sdk/python/pulumi_juniper_mist/provider.py @@ -19,6 +19,7 @@ @pulumi.input_type class ProviderArgs: def __init__(__self__, *, + api_debug: Optional[pulumi.Input[bool]] = None, api_timeout: Optional[pulumi.Input[float]] = None, apitoken: Optional[pulumi.Input[str]] = None, host: Optional[pulumi.Input[str]] = None, @@ -27,6 +28,7 @@ def __init__(__self__, *, username: Optional[pulumi.Input[str]] = None): """ The set of arguments for constructing a Provider resource. + :param pulumi.Input[bool] api_debug: Flag to enable debugging API calls. Default is false. :param pulumi.Input[float] api_timeout: Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 results in infinite timeout. :param pulumi.Input[str] apitoken: For API Token authentication, the Mist API Token. @@ -37,6 +39,8 @@ def __init__(__self__, *, are supported. :param pulumi.Input[str] username: For username/password authentication, the Mist Account username. """ + if api_debug is not None: + pulumi.set(__self__, "api_debug", api_debug) if api_timeout is not None: pulumi.set(__self__, "api_timeout", api_timeout) if apitoken is not None: @@ -50,6 +54,18 @@ def __init__(__self__, *, if username is not None: pulumi.set(__self__, "username", username) + @property + @pulumi.getter(name="apiDebug") + def api_debug(self) -> Optional[pulumi.Input[bool]]: + """ + Flag to enable debugging API calls. Default is false. + """ + return pulumi.get(self, "api_debug") + + @api_debug.setter + def api_debug(self, value: Optional[pulumi.Input[bool]]): + pulumi.set(self, "api_debug", value) + @property @pulumi.getter(name="apiTimeout") def api_timeout(self) -> Optional[pulumi.Input[float]]: @@ -131,6 +147,7 @@ class Provider(pulumi.ProviderResource): def __init__(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + api_debug: Optional[pulumi.Input[bool]] = None, api_timeout: Optional[pulumi.Input[float]] = None, apitoken: Optional[pulumi.Input[str]] = None, host: Optional[pulumi.Input[str]] = None, @@ -146,6 +163,7 @@ def __init__(__self__, :param str resource_name: The name of the resource. :param pulumi.ResourceOptions opts: Options for the resource. + :param pulumi.Input[bool] api_debug: Flag to enable debugging API calls. Default is false. :param pulumi.Input[float] api_timeout: Timeout in seconds for completing API transactions with the Mist Cloud. Omit for default value of 10 seconds. Value of 0 results in infinite timeout. :param pulumi.Input[str] apitoken: For API Token authentication, the Mist API Token. @@ -183,6 +201,7 @@ def __init__(__self__, resource_name: str, *args, **kwargs): def _internal_init(__self__, resource_name: str, opts: Optional[pulumi.ResourceOptions] = None, + api_debug: Optional[pulumi.Input[bool]] = None, api_timeout: Optional[pulumi.Input[float]] = None, apitoken: Optional[pulumi.Input[str]] = None, host: Optional[pulumi.Input[str]] = None, @@ -198,6 +217,7 @@ def _internal_init(__self__, raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource') __props__ = ProviderArgs.__new__(ProviderArgs) + __props__.__dict__["api_debug"] = pulumi.Output.from_input(api_debug).apply(pulumi.runtime.to_json) if api_debug is not None else None __props__.__dict__["api_timeout"] = pulumi.Output.from_input(api_timeout).apply(pulumi.runtime.to_json) if api_timeout is not None else None __props__.__dict__["apitoken"] = None if apitoken is None else pulumi.Output.secret(apitoken) __props__.__dict__["host"] = host diff --git a/sdk/python/pulumi_juniper_mist/site/_inputs.py b/sdk/python/pulumi_juniper_mist/site/_inputs.py index 5144ea33..231fccac 100644 --- a/sdk/python/pulumi_juniper_mist/site/_inputs.py +++ b/sdk/python/pulumi_juniper_mist/site/_inputs.py @@ -807,14 +807,16 @@ def site_id(self, value: Optional[pulumi.Input[str]]): class NetworktemplateAclPolicyArgsDict(TypedDict): actions: NotRequired[pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclPolicyActionArgsDict']]]] """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ name: NotRequired[pulumi.Input[str]] src_tags: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ elif False: NetworktemplateAclPolicyArgsDict: TypeAlias = Mapping[str, Any] @@ -826,10 +828,12 @@ def __init__(__self__, *, name: Optional[pulumi.Input[str]] = None, src_tags: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclPolicyActionArgs']]] actions: - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to - :param pulumi.Input[Sequence[pulumi.Input[str]]] src_tags: - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + :param pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclPolicyActionArgs']]] actions: ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + :param pulumi.Input[Sequence[pulumi.Input[str]]] src_tags: ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ if actions is not None: pulumi.set(__self__, "actions", actions) @@ -842,8 +846,9 @@ def __init__(__self__, *, @pulumi.getter def actions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclPolicyActionArgs']]]]: """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ return pulumi.get(self, "actions") @@ -864,8 +869,9 @@ def name(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="srcTags") def src_tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ return pulumi.get(self, "src_tags") @@ -936,9 +942,9 @@ class NetworktemplateAclTagsArgsDict(TypedDict): gbp_tag: NotRequired[pulumi.Input[int]] """ required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) """ macs: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ @@ -964,8 +970,7 @@ class NetworktemplateAclTagsArgsDict(TypedDict): """ specs: NotRequired[pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclTagsSpecArgsDict']]]] """ - if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any """ subnets: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ @@ -999,9 +1004,9 @@ def __init__(__self__, *, * `static_gbp`: applying gbp tag against matching conditions * `subnet`' :param pulumi.Input[int] gbp_tag: required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) :param pulumi.Input[Sequence[pulumi.Input[str]]] macs: required if - `type`==`mac` - `type`==`static_gbp` if from matching mac @@ -1015,8 +1020,7 @@ def __init__(__self__, *, * `type`==`radius_group` * `type`==`static_gbp` if from matching radius_group - :param pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclTagsSpecArgs']]] specs: if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + :param pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclTagsSpecArgs']]] specs: if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any :param pulumi.Input[Sequence[pulumi.Input[str]]] subnets: if - `type`==`subnet` - `type`==`resource` (optional. default is `any`) @@ -1062,9 +1066,9 @@ def type(self, value: pulumi.Input[str]): def gbp_tag(self) -> Optional[pulumi.Input[int]]: """ required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) """ return pulumi.get(self, "gbp_tag") @@ -1122,8 +1126,7 @@ def radius_group(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def specs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworktemplateAclTagsSpecArgs']]]]: """ - if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any """ return pulumi.get(self, "specs") @@ -1155,7 +1158,7 @@ class NetworktemplateAclTagsSpecArgsDict(TypedDict): """ protocol: NotRequired[pulumi.Input[str]] """ - `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ elif False: NetworktemplateAclTagsSpecArgsDict: TypeAlias = Mapping[str, Any] @@ -1167,7 +1170,7 @@ def __init__(__self__, *, protocol: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[str] port_range: matched dst port, "0" means any - :param pulumi.Input[str] protocol: `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + :param pulumi.Input[str] protocol: `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ if port_range is not None: pulumi.set(__self__, "port_range", port_range) @@ -1190,7 +1193,7 @@ def port_range(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def protocol(self) -> Optional[pulumi.Input[str]]: """ - `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ return pulumi.get(self, "protocol") @@ -1624,8 +1627,7 @@ class NetworktemplateNetworksArgsDict(TypedDict): """ isolation: NotRequired[pulumi.Input[bool]] """ - whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set """ isolation_vlan_id: NotRequired[pulumi.Input[str]] subnet: NotRequired[pulumi.Input[str]] @@ -1652,8 +1654,7 @@ def __init__(__self__, *, """ :param pulumi.Input[str] gateway: only required for EVPN-VXLAN networks, IPv4 Virtual Gateway :param pulumi.Input[str] gateway6: only required for EVPN-VXLAN networks, IPv6 Virtual Gateway - :param pulumi.Input[bool] isolation: whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + :param pulumi.Input[bool] isolation: whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set :param pulumi.Input[str] subnet: optional for pure switching, required when L3 / routing features are used :param pulumi.Input[str] subnet6: optional for pure switching, required when L3 / routing features are used """ @@ -1708,8 +1709,7 @@ def gateway6(self, value: Optional[pulumi.Input[str]]): @pulumi.getter def isolation(self) -> Optional[pulumi.Input[bool]]: """ - whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set """ return pulumi.get(self, "isolation") @@ -2138,9 +2138,7 @@ class NetworktemplatePortUsagesArgsDict(TypedDict): """ allow_dhcpd: NotRequired[pulumi.Input[bool]] """ - 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 allow_dhcpd is a tri_state. - 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. + 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 allow_dhcpd is a tri_state. 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. """ allow_multiple_supplicants: NotRequired[pulumi.Input[bool]] """ @@ -2188,8 +2186,7 @@ class NetworktemplatePortUsagesArgsDict(TypedDict): """ inter_switch_link: NotRequired[pulumi.Input[bool]] """ - Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together """ mac_auth_only: NotRequired[pulumi.Input[bool]] """ @@ -2261,8 +2258,7 @@ class NetworktemplatePortUsagesArgsDict(TypedDict): """ storm_control: NotRequired[pulumi.Input['NetworktemplatePortUsagesStormControlArgsDict']] """ - Switch storm control - Only if `mode`!=`dynamic` + Switch storm control. Only if `mode`!=`dynamic` """ stp_edge: NotRequired[pulumi.Input[bool]] """ @@ -2328,9 +2324,7 @@ def __init__(__self__, *, voip_network: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[bool] all_networks: Only if `mode`==`trunk` whether to trunk all network/vlans - :param pulumi.Input[bool] allow_dhcpd: 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 allow_dhcpd is a tri_state. - 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. + :param pulumi.Input[bool] allow_dhcpd: 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 allow_dhcpd is a tri_state. 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. :param pulumi.Input[bool] allow_multiple_supplicants: Only if `mode`!=`dynamic` :param pulumi.Input[bool] bypass_auth_when_server_down: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` bypass auth for known clients if set to true when RADIUS server is down :param pulumi.Input[bool] bypass_auth_when_server_down_for_unkonwn_client: Only if `mode`!=`dynamic` and `port_auth`=`dot1x` bypass auth for all (including unknown clients) if set to true when RADIUS server is down @@ -2342,8 +2336,7 @@ def __init__(__self__, *, :param pulumi.Input[bool] enable_mac_auth: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` whether to enable MAC Auth :param pulumi.Input[bool] enable_qos: Only if `mode`!=`dynamic` :param pulumi.Input[str] guest_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) - :param pulumi.Input[bool] inter_switch_link: Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + :param pulumi.Input[bool] inter_switch_link: Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together :param pulumi.Input[bool] mac_auth_only: Only if `mode`!=`dynamic` and `enable_mac_auth`==`true` :param pulumi.Input[bool] mac_auth_preferred: Only if `mode`!=`dynamic` + `enable_mac_auth`==`true` + `mac_auth_only`==`false`, dot1x will be given priority then mac_auth. Enable this to prefer mac_auth over dot1x. :param pulumi.Input[str] mac_auth_protocol: Only if `mode`!=`dynamic` and `enable_mac_auth` ==`true`. This type is ignored if mist_nac is enabled. enum: `eap-md5`, `eap-peap`, `pap` @@ -2361,8 +2354,7 @@ def __init__(__self__, *, :param pulumi.Input[str] server_fail_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` sets server fail fallback vlan :param pulumi.Input[str] server_reject_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` when radius server reject / fails :param pulumi.Input[str] speed: Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto` - :param pulumi.Input['NetworktemplatePortUsagesStormControlArgs'] storm_control: Switch storm control - Only if `mode`!=`dynamic` + :param pulumi.Input['NetworktemplatePortUsagesStormControlArgs'] storm_control: Switch storm control. Only if `mode`!=`dynamic` :param pulumi.Input[bool] stp_edge: Only if `mode`!=`dynamic` when enabled, the port is not expected to receive BPDU frames :param pulumi.Input[str] ui_evpntopo_id: 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 :param pulumi.Input[bool] use_vstp: if this is connected to a vstp network @@ -2461,9 +2453,7 @@ def all_networks(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="allowDhcpd") def allow_dhcpd(self) -> Optional[pulumi.Input[bool]]: """ - 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 allow_dhcpd is a tri_state. - 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. + 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 allow_dhcpd is a tri_state. 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. """ return pulumi.get(self, "allow_dhcpd") @@ -2607,8 +2597,7 @@ def guest_network(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="interSwitchLink") def inter_switch_link(self) -> Optional[pulumi.Input[bool]]: """ - Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together """ return pulumi.get(self, "inter_switch_link") @@ -2824,8 +2813,7 @@ def speed(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="stormControl") def storm_control(self) -> Optional[pulumi.Input['NetworktemplatePortUsagesStormControlArgs']]: """ - Switch storm control - Only if `mode`!=`dynamic` + Switch storm control. Only if `mode`!=`dynamic` """ return pulumi.get(self, "storm_control") @@ -3140,8 +3128,7 @@ class NetworktemplateRadiusConfigArgsDict(TypedDict): """ network: NotRequired[pulumi.Input[str]] """ - use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip """ source_ip: NotRequired[pulumi.Input[str]] """ @@ -3164,8 +3151,7 @@ def __init__(__self__, *, :param pulumi.Input[int] acct_interim_interval: how frequently should interim accounting be reported, 60-65535. default is 0 (use one specified in Access-Accept request from RADIUS Server). Very frequent messages can affect the performance of the radius server, 600 and up is recommended when enabled :param pulumi.Input[int] auth_servers_retries: radius auth session retries :param pulumi.Input[int] auth_servers_timeout: radius auth session timeout - :param pulumi.Input[str] network: use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + :param pulumi.Input[str] network: use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip :param pulumi.Input[str] source_ip: use `network`or `source_ip` """ if acct_interim_interval is not None: @@ -3241,8 +3227,7 @@ def auth_servers_timeout(self, value: Optional[pulumi.Input[int]]): @pulumi.getter def network(self) -> Optional[pulumi.Input[str]]: """ - use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip """ return pulumi.get(self, "network") @@ -5203,8 +5188,7 @@ def users(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['Networktempl class NetworktemplateSnmpConfigV3ConfigUsmUserArgsDict(TypedDict): authentication_password: NotRequired[pulumi.Input[str]] """ - Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. """ authentication_type: NotRequired[pulumi.Input[str]] """ @@ -5212,8 +5196,7 @@ class NetworktemplateSnmpConfigV3ConfigUsmUserArgsDict(TypedDict): """ encryption_password: NotRequired[pulumi.Input[str]] """ - Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters """ encryption_type: NotRequired[pulumi.Input[str]] """ @@ -5232,11 +5215,9 @@ def __init__(__self__, *, encryption_type: Optional[pulumi.Input[str]] = None, name: Optional[pulumi.Input[str]] = None): """ - :param pulumi.Input[str] authentication_password: Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + :param pulumi.Input[str] authentication_password: Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. :param pulumi.Input[str] authentication_type: sha224, sha256, sha384, sha512 are supported in 21.1 and newer release. enum: `authentication_md5`, `authentication_none`, `authentication_sha`, `authentication_sha224`, `authentication_sha256`, `authentication_sha384`, `authentication_sha512` - :param pulumi.Input[str] encryption_password: Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + :param pulumi.Input[str] encryption_password: Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters :param pulumi.Input[str] encryption_type: enum: `privacy-3des`, `privacy-aes128`, `privacy-des`, `privacy-none` """ if authentication_password is not None: @@ -5254,8 +5235,7 @@ def __init__(__self__, *, @pulumi.getter(name="authenticationPassword") def authentication_password(self) -> Optional[pulumi.Input[str]]: """ - Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. """ return pulumi.get(self, "authentication_password") @@ -5279,8 +5259,7 @@ def authentication_type(self, value: Optional[pulumi.Input[str]]): @pulumi.getter(name="encryptionPassword") def encryption_password(self) -> Optional[pulumi.Input[str]]: """ - Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters """ return pulumi.get(self, "encryption_password") @@ -5769,8 +5748,7 @@ class NetworktemplateSwitchMatchingRuleArgsDict(TypedDict): """ port_mirroring: NotRequired[pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateSwitchMatchingRulePortMirroringArgsDict']]]] """ - Property key is the port mirroring instance name - port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ elif False: NetworktemplateSwitchMatchingRuleArgsDict: TypeAlias = Mapping[str, Any] @@ -5800,8 +5778,7 @@ def __init__(__self__, *, :param pulumi.Input[str] match_type: 'property key define the type of matching, value is the string to match. e.g: `match_name[0:3]`, `match_name[2:6]`, `match_model`, `match_model[0-6]` :param pulumi.Input['NetworktemplateSwitchMatchingRuleOobIpConfigArgs'] oob_ip_config: Out-of-Band Management interface configuration :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateSwitchMatchingRulePortConfigArgs']]] port_config: Propery key is the interface name or interface range - :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateSwitchMatchingRulePortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name - port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateSwitchMatchingRulePortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ if additional_config_cmds is not None: pulumi.set(__self__, "additional_config_cmds", additional_config_cmds) @@ -5972,8 +5949,7 @@ def port_config(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Ne @pulumi.getter(name="portMirroring") def port_mirroring(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateSwitchMatchingRulePortMirroringArgs']]]]: """ - Property key is the port mirroring instance name - port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ return pulumi.get(self, "port_mirroring") @@ -10902,8 +10878,7 @@ class WlanAppLimitArgsDict(TypedDict): enabled: NotRequired[pulumi.Input[bool]] wxtag_ids: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[int]]]] """ - Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - Property key is the wxtag id + Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` """ elif False: WlanAppLimitArgsDict: TypeAlias = Mapping[str, Any] @@ -10917,8 +10892,7 @@ def __init__(__self__, *, """ :param pulumi.Input[Mapping[str, pulumi.Input[int]]] apps: Map from app key to bandwidth in kbps. Property key is the app key, defined in Get Application List - :param pulumi.Input[Mapping[str, pulumi.Input[int]]] wxtag_ids: Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - Property key is the wxtag id + :param pulumi.Input[Mapping[str, pulumi.Input[int]]] wxtag_ids: Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` """ if apps is not None: pulumi.set(__self__, "apps", apps) @@ -10953,8 +10927,7 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="wxtagIds") def wxtag_ids(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[int]]]]: """ - Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - Property key is the wxtag id + Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` """ return pulumi.get(self, "wxtag_ids") @@ -11870,8 +11843,7 @@ class WlanDnsServerRewriteArgsDict(TypedDict): enabled: NotRequired[pulumi.Input[bool]] radius_groups: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]] """ - map between radius_group and the desired DNS server (IPv4 only) - Property key is the RADIUS group, property value is the desired DNS Server + map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server """ elif False: WlanDnsServerRewriteArgsDict: TypeAlias = Mapping[str, Any] @@ -11882,8 +11854,7 @@ def __init__(__self__, *, enabled: Optional[pulumi.Input[bool]] = None, radius_groups: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None): """ - :param pulumi.Input[Mapping[str, pulumi.Input[str]]] radius_groups: map between radius_group and the desired DNS server (IPv4 only) - Property key is the RADIUS group, property value is the desired DNS Server + :param pulumi.Input[Mapping[str, pulumi.Input[str]]] radius_groups: map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server """ if enabled is not None: pulumi.set(__self__, "enabled", enabled) @@ -11903,8 +11874,7 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="radiusGroups") def radius_groups(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]: """ - map between radius_group and the desired DNS server (IPv4 only) - Property key is the RADIUS group, property value is the desired DNS Server + map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server """ return pulumi.get(self, "radius_groups") @@ -11923,8 +11893,7 @@ class WlanDynamicPskArgsDict(TypedDict): enabled: NotRequired[pulumi.Input[bool]] force_lookup: NotRequired[pulumi.Input[bool]] """ - when 11r is enabled, we'll try to use the cached PMK, this can be disabled - `false` means auto + when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto """ source: NotRequired[pulumi.Input[str]] """ @@ -11943,8 +11912,7 @@ def __init__(__self__, *, source: Optional[pulumi.Input[str]] = None): """ :param pulumi.Input[str] default_psk: default PSK to use if cloud WLC is not available, 8-63 characters - :param pulumi.Input[bool] force_lookup: when 11r is enabled, we'll try to use the cached PMK, this can be disabled - `false` means auto + :param pulumi.Input[bool] force_lookup: when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto :param pulumi.Input[str] source: enum: `cloud_psks`, `radius` """ if default_psk is not None: @@ -11992,8 +11960,7 @@ def enabled(self, value: Optional[pulumi.Input[bool]]): @pulumi.getter(name="forceLookup") def force_lookup(self) -> Optional[pulumi.Input[bool]]: """ - when 11r is enabled, we'll try to use the cached PMK, this can be disabled - `false` means auto + when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto """ return pulumi.get(self, "force_lookup") @@ -17787,13 +17754,11 @@ class WlanRadsecArgsDict(TypedDict): idle_timeout: NotRequired[pulumi.Input[int]] mxcluster_ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - Org mxedge(s) identified by mxcluster_ids + To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids """ proxy_hosts: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]] """ - default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` """ server_name: NotRequired[pulumi.Input[str]] """ @@ -17827,10 +17792,8 @@ def __init__(__self__, *, use_mxedge: Optional[pulumi.Input[bool]] = None, use_site_mxedge: Optional[pulumi.Input[bool]] = None): """ - :param pulumi.Input[Sequence[pulumi.Input[str]]] mxcluster_ids: To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - Org mxedge(s) identified by mxcluster_ids - :param pulumi.Input[Sequence[pulumi.Input[str]]] proxy_hosts: default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + :param pulumi.Input[Sequence[pulumi.Input[str]]] mxcluster_ids: To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids + :param pulumi.Input[Sequence[pulumi.Input[str]]] proxy_hosts: default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` :param pulumi.Input[str] server_name: name of the server to verify (against the cacerts in Org Setting). Only if not Mist Edge. :param pulumi.Input[Sequence[pulumi.Input['WlanRadsecServerArgs']]] servers: List of Radsec Servers. Only if not Mist Edge. :param pulumi.Input[bool] use_mxedge: use mxedge(s) as radsecproxy @@ -17886,8 +17849,7 @@ def idle_timeout(self, value: Optional[pulumi.Input[int]]): @pulumi.getter(name="mxclusterIds") def mxcluster_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - Org mxedge(s) identified by mxcluster_ids + To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids """ return pulumi.get(self, "mxcluster_ids") @@ -17899,8 +17861,7 @@ def mxcluster_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]] @pulumi.getter(name="proxyHosts") def proxy_hosts(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]: """ - default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` """ return pulumi.get(self, "proxy_hosts") diff --git a/sdk/python/pulumi_juniper_mist/site/networktemplate.py b/sdk/python/pulumi_juniper_mist/site/networktemplate.py index be1cc2d1..3b832427 100644 --- a/sdk/python/pulumi_juniper_mist/site/networktemplate.py +++ b/sdk/python/pulumi_juniper_mist/site/networktemplate.py @@ -58,7 +58,7 @@ def __init__(__self__, *, :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateNetworksArgs']]] networks: Property key is network name :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateOspfAreasArgs']]] ospf_areas: Junos OSPF areas - :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortUsagesArgs']]] port_usages: Property key is the port usage name. Defines the profiles of port configuration configured on the switch @@ -279,7 +279,7 @@ def ospf_areas(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Net @pulumi.getter(name="portMirroring") def port_mirroring(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortMirroringArgs']]]]: """ - Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ @@ -428,7 +428,7 @@ def __init__(__self__, *, :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateNetworksArgs']]] networks: Property key is network name :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplateOspfAreasArgs']]] ospf_areas: Junos OSPF areas - :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortMirroringArgs']]] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed :param pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortUsagesArgs']]] port_usages: Property key is the port usage name. Defines the profiles of port configuration configured on the switch @@ -639,7 +639,7 @@ def ospf_areas(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input['Net @pulumi.getter(name="portMirroring") def port_mirroring(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input['NetworktemplatePortMirroringArgs']]]]: """ - Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ @@ -821,7 +821,7 @@ def __init__(__self__, :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplateNetworksArgs', 'NetworktemplateNetworksArgsDict']]]] networks: Property key is network name :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplateOspfAreasArgs', 'NetworktemplateOspfAreasArgsDict']]]] ospf_areas: Junos OSPF areas - :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplatePortMirroringArgs', 'NetworktemplatePortMirroringArgsDict']]]] port_mirroring: Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplatePortMirroringArgs', 'NetworktemplatePortMirroringArgsDict']]]] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplatePortUsagesArgs', 'NetworktemplatePortUsagesArgsDict']]]] port_usages: Property key is the port usage name. Defines the profiles of port configuration configured on the switch @@ -981,7 +981,7 @@ def get(resource_name: str, :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplateNetworksArgs', 'NetworktemplateNetworksArgsDict']]]] networks: Property key is network name :param pulumi.Input[Sequence[pulumi.Input[str]]] ntp_servers: list of NTP servers :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplateOspfAreasArgs', 'NetworktemplateOspfAreasArgsDict']]]] ospf_areas: Junos OSPF areas - :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplatePortMirroringArgs', 'NetworktemplatePortMirroringArgsDict']]]] port_mirroring: Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplatePortMirroringArgs', 'NetworktemplatePortMirroringArgsDict']]]] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed :param pulumi.Input[Mapping[str, pulumi.Input[Union['NetworktemplatePortUsagesArgs', 'NetworktemplatePortUsagesArgsDict']]]] port_usages: Property key is the port usage name. Defines the profiles of port configuration configured on the switch @@ -1121,7 +1121,7 @@ def ospf_areas(self) -> pulumi.Output[Optional[Mapping[str, 'outputs.Networktemp @pulumi.getter(name="portMirroring") def port_mirroring(self) -> pulumi.Output[Optional[Mapping[str, 'outputs.NetworktemplatePortMirroring']]]: """ - Property key is the port mirroring instance name port_mirroring can be added under device/site settings. It takes + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ diff --git a/sdk/python/pulumi_juniper_mist/site/outputs.py b/sdk/python/pulumi_juniper_mist/site/outputs.py index 378948be..4059b93f 100644 --- a/sdk/python/pulumi_juniper_mist/site/outputs.py +++ b/sdk/python/pulumi_juniper_mist/site/outputs.py @@ -579,10 +579,12 @@ def __init__(__self__, *, name: Optional[str] = None, src_tags: Optional[Sequence[str]] = None): """ - :param Sequence['NetworktemplateAclPolicyActionArgs'] actions: - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to - :param Sequence[str] src_tags: - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + :param Sequence['NetworktemplateAclPolicyActionArgs'] actions: ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + :param Sequence[str] src_tags: ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ if actions is not None: pulumi.set(__self__, "actions", actions) @@ -595,8 +597,9 @@ def __init__(__self__, *, @pulumi.getter def actions(self) -> Optional[Sequence['outputs.NetworktemplateAclPolicyAction']]: """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Actions: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ return pulumi.get(self, "actions") @@ -609,8 +612,9 @@ def name(self) -> Optional[str]: @pulumi.getter(name="srcTags") def src_tags(self) -> Optional[Sequence[str]]: """ - - for GBP-based policy, all src_tags and dst_tags have to be gbp-based - - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to + ACL Policy Source Tags: + - for GBP-based policy, all src_tags and dst_tags have to be gbp-based + - for ACL-based policy, `network` is required in either the source or destination so that we know where to attach the policy to """ return pulumi.get(self, "src_tags") @@ -699,9 +703,9 @@ def __init__(__self__, *, * `static_gbp`: applying gbp tag against matching conditions * `subnet`' :param int gbp_tag: required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) :param Sequence[str] macs: required if - `type`==`mac` - `type`==`static_gbp` if from matching mac @@ -715,8 +719,7 @@ def __init__(__self__, *, * `type`==`radius_group` * `type`==`static_gbp` if from matching radius_group - :param Sequence['NetworktemplateAclTagsSpecArgs'] specs: if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + :param Sequence['NetworktemplateAclTagsSpecArgs'] specs: if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any :param Sequence[str] subnets: if - `type`==`subnet` - `type`==`resource` (optional. default is `any`) @@ -758,9 +761,9 @@ def type(self) -> str: def gbp_tag(self) -> Optional[int]: """ required if - - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) - - `type`==`gbp_resource` - - `type`==`static_gbp` (applying gbp tag against matching conditions) + - `type`==`dynamic_gbp` (gbp_tag received from RADIUS) + - `type`==`gbp_resource` + - `type`==`static_gbp` (applying gbp tag against matching conditions) """ return pulumi.get(self, "gbp_tag") @@ -802,8 +805,7 @@ def radius_group(self) -> Optional[str]: @pulumi.getter def specs(self) -> Optional[Sequence['outputs.NetworktemplateAclTagsSpec']]: """ - if `type`==`resource` or `type`==`gbp_resource` - empty means unrestricted, i.e. any + if `type`==`resource` or `type`==`gbp_resource`. Empty means unrestricted, i.e. any """ return pulumi.get(self, "specs") @@ -843,7 +845,7 @@ def __init__(__self__, *, protocol: Optional[str] = None): """ :param str port_range: matched dst port, "0" means any - :param str protocol: `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + :param str protocol: `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ if port_range is not None: pulumi.set(__self__, "port_range", port_range) @@ -862,7 +864,7 @@ def port_range(self) -> Optional[str]: @pulumi.getter def protocol(self) -> Optional[str]: """ - `tcp` / `udp` / `icmp` / `gre` / `any` / `:protocol_number`. `protocol_number` is between 1-254 + `tcp` / `udp` / `icmp` / `icmp6` / `gre` / `any` / `:protocol_number`, `protocol_number` is between 1-254, default is `any` `protocol_number` is between 1-254 """ return pulumi.get(self, "protocol") @@ -1204,8 +1206,7 @@ def __init__(__self__, *, """ :param str gateway: only required for EVPN-VXLAN networks, IPv4 Virtual Gateway :param str gateway6: only required for EVPN-VXLAN networks, IPv6 Virtual Gateway - :param bool isolation: whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + :param bool isolation: whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set :param str subnet: optional for pure switching, required when L3 / routing features are used :param str subnet6: optional for pure switching, required when L3 / routing features are used """ @@ -1248,8 +1249,7 @@ def gateway6(self) -> Optional[str]: @pulumi.getter def isolation(self) -> Optional[bool]: """ - whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required) - NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set + whether to stop clients to talk to each other, default is false (when enabled, a unique isolation_vlan_id is required). NOTE: this features requires uplink device to also a be Juniper device and `inter_switch_link` to be set """ return pulumi.get(self, "isolation") @@ -1700,9 +1700,7 @@ def __init__(__self__, *, voip_network: Optional[str] = None): """ :param bool all_networks: Only if `mode`==`trunk` whether to trunk all network/vlans - :param bool allow_dhcpd: 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 allow_dhcpd is a tri_state. - 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. + :param bool allow_dhcpd: 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 allow_dhcpd is a tri_state. 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. :param bool allow_multiple_supplicants: Only if `mode`!=`dynamic` :param bool bypass_auth_when_server_down: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` bypass auth for known clients if set to true when RADIUS server is down :param bool bypass_auth_when_server_down_for_unkonwn_client: Only if `mode`!=`dynamic` and `port_auth`=`dot1x` bypass auth for all (including unknown clients) if set to true when RADIUS server is down @@ -1714,8 +1712,7 @@ def __init__(__self__, *, :param bool enable_mac_auth: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` whether to enable MAC Auth :param bool enable_qos: Only if `mode`!=`dynamic` :param str guest_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` which network to put the device into if the device cannot do dot1x. default is null (i.e. not allowed) - :param bool inter_switch_link: Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + :param bool inter_switch_link: Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together :param bool mac_auth_only: Only if `mode`!=`dynamic` and `enable_mac_auth`==`true` :param bool mac_auth_preferred: Only if `mode`!=`dynamic` + `enable_mac_auth`==`true` + `mac_auth_only`==`false`, dot1x will be given priority then mac_auth. Enable this to prefer mac_auth over dot1x. :param str mac_auth_protocol: Only if `mode`!=`dynamic` and `enable_mac_auth` ==`true`. This type is ignored if mist_nac is enabled. enum: `eap-md5`, `eap-peap`, `pap` @@ -1733,8 +1730,7 @@ def __init__(__self__, *, :param str server_fail_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` sets server fail fallback vlan :param str server_reject_network: Only if `mode`!=`dynamic` and `port_auth`==`dot1x` when radius server reject / fails :param str speed: Only if `mode`!=`dynamic` speed, default is auto to automatically negotiate speed enum: `100m`, `10m`, `1g`, `2.5g`, `5g`, `10g`, `25g`, `40g`, `100g`,`auto` - :param 'NetworktemplatePortUsagesStormControlArgs' storm_control: Switch storm control - Only if `mode`!=`dynamic` + :param 'NetworktemplatePortUsagesStormControlArgs' storm_control: Switch storm control. Only if `mode`!=`dynamic` :param bool stp_edge: Only if `mode`!=`dynamic` when enabled, the port is not expected to receive BPDU frames :param str ui_evpntopo_id: 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 :param bool use_vstp: if this is connected to a vstp network @@ -1829,9 +1825,7 @@ def all_networks(self) -> Optional[bool]: @pulumi.getter(name="allowDhcpd") def allow_dhcpd(self) -> Optional[bool]: """ - 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 allow_dhcpd is a tri_state. - 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. + 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 allow_dhcpd is a tri_state. 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. """ return pulumi.get(self, "allow_dhcpd") @@ -1927,8 +1921,7 @@ def guest_network(self) -> Optional[str]: @pulumi.getter(name="interSwitchLink") def inter_switch_link(self) -> Optional[bool]: """ - Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks - NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together + Only if `mode`!=`dynamic` inter_switch_link is used together with "isolation" under networks. NOTE: inter_switch_link works only between Juniper device. This has to be applied to both ports connected together """ return pulumi.get(self, "inter_switch_link") @@ -2072,8 +2065,7 @@ def speed(self) -> Optional[str]: @pulumi.getter(name="stormControl") def storm_control(self) -> Optional['outputs.NetworktemplatePortUsagesStormControl']: """ - Switch storm control - Only if `mode`!=`dynamic` + Switch storm control. Only if `mode`!=`dynamic` """ return pulumi.get(self, "storm_control") @@ -2334,8 +2326,7 @@ def __init__(__self__, *, :param int acct_interim_interval: how frequently should interim accounting be reported, 60-65535. default is 0 (use one specified in Access-Accept request from RADIUS Server). Very frequent messages can affect the performance of the radius server, 600 and up is recommended when enabled :param int auth_servers_retries: radius auth session retries :param int auth_servers_timeout: radius auth session timeout - :param str network: use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + :param str network: use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip :param str source_ip: use `network`or `source_ip` """ if acct_interim_interval is not None: @@ -2391,8 +2382,7 @@ def auth_servers_timeout(self) -> Optional[int]: @pulumi.getter def network(self) -> Optional[str]: """ - use `network`or `source_ip` - which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip + use `network`or `source_ip`. Which network the RADIUS server resides, if there's static IP for this network, we'd use it as source-ip """ return pulumi.get(self, "network") @@ -3889,11 +3879,9 @@ def __init__(__self__, *, encryption_type: Optional[str] = None, name: Optional[str] = None): """ - :param str authentication_password: Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + :param str authentication_password: Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. :param str authentication_type: sha224, sha256, sha384, sha512 are supported in 21.1 and newer release. enum: `authentication_md5`, `authentication_none`, `authentication_sha`, `authentication_sha224`, `authentication_sha256`, `authentication_sha384`, `authentication_sha512` - :param str encryption_password: Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + :param str encryption_password: Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters :param str encryption_type: enum: `privacy-3des`, `privacy-aes128`, `privacy-des`, `privacy-none` """ if authentication_password is not None: @@ -3911,8 +3899,7 @@ def __init__(__self__, *, @pulumi.getter(name="authenticationPassword") def authentication_password(self) -> Optional[str]: """ - Not required if `authentication_type`==`authentication_none` - include alphabetic, numeric, and special characters, but it cannot include control characters. + Not required if `authentication_type`==`authentication_none`. Include alphabetic, numeric, and special characters, but it cannot include control characters. """ return pulumi.get(self, "authentication_password") @@ -3928,8 +3915,7 @@ def authentication_type(self) -> Optional[str]: @pulumi.getter(name="encryptionPassword") def encryption_password(self) -> Optional[str]: """ - Not required if `encryption_type`==`privacy-none` - include alphabetic, numeric, and special characters, but it cannot include control characters + Not required if `encryption_type`==`privacy-none`. Include alphabetic, numeric, and special characters, but it cannot include control characters """ return pulumi.get(self, "encryption_password") @@ -4372,8 +4358,7 @@ def __init__(__self__, *, :param str match_type: 'property key define the type of matching, value is the string to match. e.g: `match_name[0:3]`, `match_name[2:6]`, `match_model`, `match_model[0-6]` :param 'NetworktemplateSwitchMatchingRuleOobIpConfigArgs' oob_ip_config: Out-of-Band Management interface configuration :param Mapping[str, 'NetworktemplateSwitchMatchingRulePortConfigArgs'] port_config: Propery key is the interface name or interface range - :param Mapping[str, 'NetworktemplateSwitchMatchingRulePortMirroringArgs'] port_mirroring: Property key is the port mirroring instance name - port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + :param Mapping[str, 'NetworktemplateSwitchMatchingRulePortMirroringArgs'] port_mirroring: Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ if additional_config_cmds is not None: pulumi.set(__self__, "additional_config_cmds", additional_config_cmds) @@ -4490,8 +4475,7 @@ def port_config(self) -> Optional[Mapping[str, 'outputs.NetworktemplateSwitchMat @pulumi.getter(name="portMirroring") def port_mirroring(self) -> Optional[Mapping[str, 'outputs.NetworktemplateSwitchMatchingRulePortMirroring']]: """ - Property key is the port mirroring instance name - port_mirroring can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed + Property key is the port mirroring instance name. `port_mirroring` can be added under device/site settings. It takes interface and ports as input for ingress, interface as input for egress and can take interface and port as output. A maximum 4 port mirrorings is allowed """ return pulumi.get(self, "port_mirroring") @@ -8298,8 +8282,7 @@ def __init__(__self__, *, """ :param Mapping[str, int] apps: Map from app key to bandwidth in kbps. Property key is the app key, defined in Get Application List - :param Mapping[str, int] wxtag_ids: Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - Property key is the wxtag id + :param Mapping[str, int] wxtag_ids: Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` """ if apps is not None: pulumi.set(__self__, "apps", apps) @@ -8326,8 +8309,7 @@ def enabled(self) -> Optional[bool]: @pulumi.getter(name="wxtagIds") def wxtag_ids(self) -> Optional[Mapping[str, int]]: """ - Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps - Property key is the wxtag id + Map from wxtag_id of Hostname Wxlan Tags to bandwidth in kbps. Property key is the `wxtag_id` """ return pulumi.get(self, "wxtag_ids") @@ -9062,8 +9044,7 @@ def __init__(__self__, *, enabled: Optional[bool] = None, radius_groups: Optional[Mapping[str, str]] = None): """ - :param Mapping[str, str] radius_groups: map between radius_group and the desired DNS server (IPv4 only) - Property key is the RADIUS group, property value is the desired DNS Server + :param Mapping[str, str] radius_groups: map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server """ if enabled is not None: pulumi.set(__self__, "enabled", enabled) @@ -9079,8 +9060,7 @@ def enabled(self) -> Optional[bool]: @pulumi.getter(name="radiusGroups") def radius_groups(self) -> Optional[Mapping[str, str]]: """ - map between radius_group and the desired DNS server (IPv4 only) - Property key is the RADIUS group, property value is the desired DNS Server + map between radius_group and the desired DNS server (IPv4 only). Property key is the RADIUS group, property value is the desired DNS Server """ return pulumi.get(self, "radius_groups") @@ -9116,8 +9096,7 @@ def __init__(__self__, *, source: Optional[str] = None): """ :param str default_psk: default PSK to use if cloud WLC is not available, 8-63 characters - :param bool force_lookup: when 11r is enabled, we'll try to use the cached PMK, this can be disabled - `false` means auto + :param bool force_lookup: when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto :param str source: enum: `cloud_psks`, `radius` """ if default_psk is not None: @@ -9153,8 +9132,7 @@ def enabled(self) -> Optional[bool]: @pulumi.getter(name="forceLookup") def force_lookup(self) -> Optional[bool]: """ - when 11r is enabled, we'll try to use the cached PMK, this can be disabled - `false` means auto + when 11r is enabled, we'll try to use the cached PMK, this can be disabled. `false` means auto """ return pulumi.get(self, "force_lookup") @@ -13301,10 +13279,8 @@ def __init__(__self__, *, use_mxedge: Optional[bool] = None, use_site_mxedge: Optional[bool] = None): """ - :param Sequence[str] mxcluster_ids: To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - Org mxedge(s) identified by mxcluster_ids - :param Sequence[str] proxy_hosts: default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + :param Sequence[str] mxcluster_ids: To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids + :param Sequence[str] proxy_hosts: default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` :param str server_name: name of the server to verify (against the cacerts in Org Setting). Only if not Mist Edge. :param Sequence['WlanRadsecServerArgs'] servers: List of Radsec Servers. Only if not Mist Edge. :param bool use_mxedge: use mxedge(s) as radsecproxy @@ -13348,8 +13324,7 @@ def idle_timeout(self) -> Optional[int]: @pulumi.getter(name="mxclusterIds") def mxcluster_ids(self) -> Optional[Sequence[str]]: """ - To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. - Org mxedge(s) identified by mxcluster_ids + To use Org mxedges when this WLAN does not use mxtunnel, specify their mxcluster_ids. Org mxedge(s) identified by mxcluster_ids """ return pulumi.get(self, "mxcluster_ids") @@ -13357,8 +13332,7 @@ def mxcluster_ids(self) -> Optional[Sequence[str]]: @pulumi.getter(name="proxyHosts") def proxy_hosts(self) -> Optional[Sequence[str]]: """ - default is site.mxedge.radsec.proxy_hosts which must be a superset of all wlans[*].radsec.proxy_hosts - when radsec.proxy_hosts are not used, tunnel peers (org or site mxedges) are used irrespective of use_site_mxedge + default is site.mxedge.radsec.proxy_hosts which must be a superset of all `wlans[*].radsec.proxy_hosts`. When `radsec.proxy_hosts` are not used, tunnel peers (org or site mxedges) are used irrespective of `use_site_mxedge` """ return pulumi.get(self, "proxy_hosts") diff --git a/upstream b/upstream index d3978102..c561311a 160000 --- a/upstream +++ b/upstream @@ -1 +1 @@ -Subproject commit d3978102585f90bb7e53576511296a30031fbafe +Subproject commit c561311abba31d3583374c840a7a7c491ab72c35