pulumi-oci 1.35.0a1715306721__py3-none-any.whl → 1.36.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. pulumi_oci/__init__.py +208 -0
  2. pulumi_oci/core/__init__.py +3 -0
  3. pulumi_oci/core/_inputs.py +40 -0
  4. pulumi_oci/core/get_ip_inventory_subnet.py +171 -0
  5. pulumi_oci/core/get_ip_inventory_subnet_cidr.py +171 -0
  6. pulumi_oci/core/get_ip_inventory_vcn_overlaps.py +206 -0
  7. pulumi_oci/core/outputs.py +261 -0
  8. pulumi_oci/database/_inputs.py +304 -0
  9. pulumi_oci/database/cloud_exadata_infrastructure.py +28 -0
  10. pulumi_oci/database/cloud_vm_cluster.py +55 -0
  11. pulumi_oci/database/exadata_infrastructure.py +28 -0
  12. pulumi_oci/database/get_cloud_exadata_infrastructure.py +14 -1
  13. pulumi_oci/database/get_cloud_vm_cluster.py +14 -1
  14. pulumi_oci/database/get_exadata_infrastructure.py +14 -1
  15. pulumi_oci/database/get_vm_cluster.py +14 -1
  16. pulumi_oci/database/outputs.py +734 -6
  17. pulumi_oci/database/vm_cluster.py +55 -0
  18. pulumi_oci/database/vm_cluster_add_virtual_network.py +28 -0
  19. pulumi_oci/database/vm_cluster_remove_virtual_machine.py +28 -0
  20. pulumi_oci/datasafe/__init__.py +1 -0
  21. pulumi_oci/datasafe/masking_report_management.py +693 -0
  22. pulumi_oci/disasterrecovery/_inputs.py +16 -0
  23. pulumi_oci/disasterrecovery/outputs.py +36 -0
  24. pulumi_oci/email/__init__.py +3 -0
  25. pulumi_oci/email/_inputs.py +46 -0
  26. pulumi_oci/email/dkim.py +4 -4
  27. pulumi_oci/email/email_domain.py +77 -0
  28. pulumi_oci/email/email_return_path.py +642 -0
  29. pulumi_oci/email/get_email_domain.py +27 -1
  30. pulumi_oci/email/get_email_return_path.py +274 -0
  31. pulumi_oci/email/get_email_return_paths.py +203 -0
  32. pulumi_oci/email/outputs.py +231 -0
  33. pulumi_oci/loadbalancer/_inputs.py +160 -20
  34. pulumi_oci/loadbalancer/backend.py +49 -0
  35. pulumi_oci/loadbalancer/backend_set.py +57 -0
  36. pulumi_oci/loadbalancer/get_listener_rules.py +2 -2
  37. pulumi_oci/loadbalancer/listener.py +2 -0
  38. pulumi_oci/loadbalancer/load_balancer.py +98 -7
  39. pulumi_oci/loadbalancer/outputs.py +375 -36
  40. pulumi_oci/loadbalancer/rule_set.py +10 -0
  41. pulumi_oci/loganalytics/namespace.py +4 -4
  42. pulumi_oci/networkloadbalancer/get_listener.py +14 -1
  43. pulumi_oci/networkloadbalancer/listener.py +51 -2
  44. pulumi_oci/networkloadbalancer/outputs.py +11 -0
  45. pulumi_oci/osmanagementhub/__init__.py +48 -0
  46. pulumi_oci/osmanagementhub/_inputs.py +3635 -493
  47. pulumi_oci/osmanagementhub/event.py +701 -0
  48. pulumi_oci/osmanagementhub/get_entitlements.py +178 -0
  49. pulumi_oci/osmanagementhub/get_errata.py +283 -0
  50. pulumi_oci/osmanagementhub/get_erratum.py +308 -0
  51. pulumi_oci/osmanagementhub/get_event.py +314 -0
  52. pulumi_oci/osmanagementhub/get_events.py +314 -0
  53. pulumi_oci/osmanagementhub/get_lifecycle_environment.py +26 -13
  54. pulumi_oci/osmanagementhub/get_lifecycle_environments.py +48 -11
  55. pulumi_oci/osmanagementhub/get_lifecycle_stage.py +28 -15
  56. pulumi_oci/osmanagementhub/get_lifecycle_stages.py +86 -19
  57. pulumi_oci/osmanagementhub/get_managed_instance.py +587 -0
  58. pulumi_oci/osmanagementhub/get_managed_instance_available_packages.py +187 -0
  59. pulumi_oci/osmanagementhub/get_managed_instance_available_software_sources.py +190 -0
  60. pulumi_oci/osmanagementhub/get_managed_instance_available_windows_updates.py +238 -0
  61. pulumi_oci/osmanagementhub/get_managed_instance_errata.py +204 -0
  62. pulumi_oci/osmanagementhub/get_managed_instance_group.py +62 -10
  63. pulumi_oci/osmanagementhub/get_managed_instance_group_available_modules.py +7 -9
  64. pulumi_oci/osmanagementhub/get_managed_instance_group_available_packages.py +7 -7
  65. pulumi_oci/osmanagementhub/get_managed_instance_group_available_software_sources.py +8 -10
  66. pulumi_oci/osmanagementhub/get_managed_instance_group_installed_packages.py +220 -0
  67. pulumi_oci/osmanagementhub/get_managed_instance_group_modules.py +244 -0
  68. pulumi_oci/osmanagementhub/get_managed_instance_groups.py +71 -16
  69. pulumi_oci/osmanagementhub/get_managed_instance_installed_packages.py +221 -0
  70. pulumi_oci/osmanagementhub/get_managed_instance_installed_windows_updates.py +204 -0
  71. pulumi_oci/osmanagementhub/get_managed_instance_modules.py +187 -0
  72. pulumi_oci/osmanagementhub/get_managed_instance_updatable_packages.py +221 -0
  73. pulumi_oci/osmanagementhub/get_managed_instances.py +537 -0
  74. pulumi_oci/osmanagementhub/get_management_station.py +42 -19
  75. pulumi_oci/osmanagementhub/get_management_station_mirrors.py +4 -4
  76. pulumi_oci/osmanagementhub/get_management_stations.py +15 -15
  77. pulumi_oci/osmanagementhub/get_profile.py +51 -12
  78. pulumi_oci/osmanagementhub/get_profiles.py +76 -16
  79. pulumi_oci/osmanagementhub/get_scheduled_job.py +426 -0
  80. pulumi_oci/osmanagementhub/get_scheduled_jobs.py +433 -0
  81. pulumi_oci/osmanagementhub/get_software_package.py +301 -0
  82. pulumi_oci/osmanagementhub/get_software_package_software_source.py +329 -0
  83. pulumi_oci/osmanagementhub/get_software_packages.py +232 -0
  84. pulumi_oci/osmanagementhub/get_software_source.py +109 -18
  85. pulumi_oci/osmanagementhub/get_software_source_module_stream.py +5 -5
  86. pulumi_oci/osmanagementhub/get_software_source_module_stream_profile.py +6 -6
  87. pulumi_oci/osmanagementhub/get_software_source_module_stream_profiles.py +8 -8
  88. pulumi_oci/osmanagementhub/get_software_source_module_streams.py +9 -9
  89. pulumi_oci/osmanagementhub/get_software_source_package_group.py +8 -8
  90. pulumi_oci/osmanagementhub/get_software_source_package_groups.py +7 -7
  91. pulumi_oci/osmanagementhub/get_software_source_software_package.py +23 -10
  92. pulumi_oci/osmanagementhub/get_software_source_software_packages.py +6 -6
  93. pulumi_oci/osmanagementhub/get_software_source_vendors.py +2 -2
  94. pulumi_oci/osmanagementhub/get_software_sources.py +78 -21
  95. pulumi_oci/osmanagementhub/get_windows_update.py +222 -0
  96. pulumi_oci/osmanagementhub/get_windows_updates.py +187 -0
  97. pulumi_oci/osmanagementhub/lifecycle_environment.py +159 -86
  98. pulumi_oci/osmanagementhub/lifecycle_stage_attach_managed_instances_management.py +249 -0
  99. pulumi_oci/osmanagementhub/lifecycle_stage_detach_managed_instances_management.py +249 -0
  100. pulumi_oci/osmanagementhub/lifecycle_stage_promote_software_source_management.py +296 -0
  101. pulumi_oci/osmanagementhub/managed_instance.py +1327 -0
  102. pulumi_oci/osmanagementhub/managed_instance_attach_profile_management.py +266 -0
  103. pulumi_oci/osmanagementhub/managed_instance_detach_profile_management.py +214 -0
  104. pulumi_oci/osmanagementhub/managed_instance_group.py +264 -86
  105. pulumi_oci/osmanagementhub/managed_instance_group_attach_managed_instances_management.py +293 -0
  106. pulumi_oci/osmanagementhub/managed_instance_group_attach_software_sources_management.py +293 -0
  107. pulumi_oci/osmanagementhub/managed_instance_group_detach_managed_instances_management.py +264 -0
  108. pulumi_oci/osmanagementhub/managed_instance_group_detach_software_sources_management.py +293 -0
  109. pulumi_oci/osmanagementhub/managed_instance_group_install_packages_management.py +293 -0
  110. pulumi_oci/osmanagementhub/managed_instance_group_install_windows_updates_management.py +293 -0
  111. pulumi_oci/osmanagementhub/managed_instance_group_manage_module_streams_management.py +526 -0
  112. pulumi_oci/osmanagementhub/managed_instance_group_remove_packages_management.py +293 -0
  113. pulumi_oci/osmanagementhub/managed_instance_group_update_all_packages_management.py +292 -0
  114. pulumi_oci/osmanagementhub/managed_instance_install_windows_updates_management.py +341 -0
  115. pulumi_oci/osmanagementhub/managed_instance_update_packages_management.py +341 -0
  116. pulumi_oci/osmanagementhub/management_station.py +184 -81
  117. pulumi_oci/osmanagementhub/management_station_mirror_synchronize_management.py +264 -0
  118. pulumi_oci/osmanagementhub/management_station_refresh_management.py +212 -0
  119. pulumi_oci/osmanagementhub/management_station_synchronize_mirrors_management.py +264 -0
  120. pulumi_oci/osmanagementhub/outputs.py +10867 -2365
  121. pulumi_oci/osmanagementhub/profile.py +200 -78
  122. pulumi_oci/osmanagementhub/scheduled_job.py +1331 -0
  123. pulumi_oci/osmanagementhub/software_source.py +365 -181
  124. pulumi_oci/osmanagementhub/software_source_add_packages_management.py +266 -0
  125. pulumi_oci/osmanagementhub/software_source_change_availability_management.py +194 -0
  126. pulumi_oci/pulumi-plugin.json +2 -1
  127. {pulumi_oci-1.35.0a1715306721.dist-info → pulumi_oci-1.36.0.dist-info}/METADATA +1 -1
  128. {pulumi_oci-1.35.0a1715306721.dist-info → pulumi_oci-1.36.0.dist-info}/RECORD +130 -75
  129. {pulumi_oci-1.35.0a1715306721.dist-info → pulumi_oci-1.36.0.dist-info}/WHEEL +0 -0
  130. {pulumi_oci-1.35.0a1715306721.dist-info → pulumi_oci-1.36.0.dist-info}/top_level.txt +0 -0
@@ -28,6 +28,7 @@ __all__ = [
28
28
  'PathRouteSetPathRoutePathMatchType',
29
29
  'RuleSetItem',
30
30
  'RuleSetItemCondition',
31
+ 'RuleSetItemIpMaxConnection',
31
32
  'RuleSetItemRedirectUri',
32
33
  'GetBackendHealthHealthCheckResultResult',
33
34
  'GetBackendSetsBackendsetResult',
@@ -47,6 +48,7 @@ __all__ = [
47
48
  'GetListenerRulesListenerRuleResult',
48
49
  'GetListenerRulesListenerRuleRuleResult',
49
50
  'GetListenerRulesListenerRuleRuleConditionResult',
51
+ 'GetListenerRulesListenerRuleRuleIpMaxConnectionResult',
50
52
  'GetListenerRulesListenerRuleRuleRedirectUriResult',
51
53
  'GetLoadBalancerRoutingPoliciesFilterResult',
52
54
  'GetLoadBalancerRoutingPoliciesRoutingPolicyResult',
@@ -70,11 +72,13 @@ __all__ = [
70
72
  'GetProtocolsProtocolResult',
71
73
  'GetRuleSetItemResult',
72
74
  'GetRuleSetItemConditionResult',
75
+ 'GetRuleSetItemIpMaxConnectionResult',
73
76
  'GetRuleSetItemRedirectUriResult',
74
77
  'GetRuleSetsFilterResult',
75
78
  'GetRuleSetsRuleSetResult',
76
79
  'GetRuleSetsRuleSetItemResult',
77
80
  'GetRuleSetsRuleSetItemConditionResult',
81
+ 'GetRuleSetsRuleSetItemIpMaxConnectionResult',
78
82
  'GetRuleSetsRuleSetItemRedirectUriResult',
79
83
  'GetShapesFilterResult',
80
84
  'GetShapesShapeResult',
@@ -89,6 +93,8 @@ class BackendSetBackend(dict):
89
93
  suggest = None
90
94
  if key == "ipAddress":
91
95
  suggest = "ip_address"
96
+ elif key == "maxConnections":
97
+ suggest = "max_connections"
92
98
 
93
99
  if suggest:
94
100
  pulumi.log.warn(f"Key '{key}' not found in BackendSetBackend. Access the value via the '{suggest}' property getter instead.")
@@ -106,21 +112,27 @@ class BackendSetBackend(dict):
106
112
  port: int,
107
113
  backup: Optional[bool] = None,
108
114
  drain: Optional[bool] = None,
115
+ max_connections: Optional[int] = None,
109
116
  name: Optional[str] = None,
110
117
  offline: Optional[bool] = None,
111
118
  weight: Optional[int] = None):
112
119
  """
113
- :param str ip_address: The IP address of the backend server. Example: `10.0.0.3`
120
+ :param str ip_address: (Updatable) The IP address of the backend server. Example: `10.0.0.3`
114
121
  :param int port: (Updatable) The backend server port against which to run the health check. If the port is not specified, the load balancer uses the port information from the `Backend` object. Example: `8080`
115
- :param bool backup: Whether the load balancer should treat this server as a backup unit. If `true`, the load balancer forwards no ingress traffic to this backend server unless all other backend servers not marked as "backup" fail the health check policy.
116
- :param bool drain: Whether the load balancer should drain this server. Servers marked "drain" receive no new incoming traffic. Example: `false`
122
+ :param bool backup: (Updatable) Whether the load balancer should treat this server as a backup unit. If `true`, the load balancer forwards no ingress traffic to this backend server unless all other backend servers not marked as "backup" fail the health check policy.
123
+
124
+ **Note:** You cannot add a backend server marked as `backup` to a backend set that uses the IP Hash policy.
125
+
126
+ Example: `false`
127
+ :param bool drain: (Updatable) Whether the load balancer should drain this server. Servers marked "drain" receive no new incoming traffic. Example: `false`
128
+ :param int max_connections: (Updatable) The maximum number of simultaneous connections the load balancer can make to the backend. If this is not set then the maximum number of simultaneous connections the load balancer can make to the backend is unlimited. Example: `300`
117
129
  :param str name: A friendly name for the backend set. It must be unique and it cannot be changed.
118
130
 
119
131
  Valid backend set names include only alphanumeric characters, dashes, and underscores. Backend set names cannot contain spaces. Avoid entering confidential information.
120
132
 
121
133
  Example: `example_backend_set`
122
- :param bool offline: Whether the load balancer should treat this server as offline. Offline servers receive no incoming traffic. Example: `false`
123
- :param int weight: The load balancing policy weight assigned to the server. Backend servers with a higher weight receive a larger proportion of incoming traffic. For example, a server weighted '3' receives 3 times the number of new connections as a server weighted '1'. For more information on load balancing policies, see [How Load Balancing Policies Work](https://docs.cloud.oracle.com/iaas/Content/Balance/Reference/lbpolicies.htm). Example: `3`
134
+ :param bool offline: (Updatable) Whether the load balancer should treat this server as offline. Offline servers receive no incoming traffic. Example: `false`
135
+ :param int weight: (Updatable) The load balancing policy weight assigned to the server. Backend servers with a higher weight receive a larger proportion of incoming traffic. For example, a server weighted '3' receives 3 times the number of new connections as a server weighted '1'. For more information on load balancing policies, see [How Load Balancing Policies Work](https://docs.cloud.oracle.com/iaas/Content/Balance/Reference/lbpolicies.htm). Example: `3`
124
136
  """
125
137
  pulumi.set(__self__, "ip_address", ip_address)
126
138
  pulumi.set(__self__, "port", port)
@@ -128,6 +140,8 @@ class BackendSetBackend(dict):
128
140
  pulumi.set(__self__, "backup", backup)
129
141
  if drain is not None:
130
142
  pulumi.set(__self__, "drain", drain)
143
+ if max_connections is not None:
144
+ pulumi.set(__self__, "max_connections", max_connections)
131
145
  if name is not None:
132
146
  pulumi.set(__self__, "name", name)
133
147
  if offline is not None:
@@ -139,7 +153,7 @@ class BackendSetBackend(dict):
139
153
  @pulumi.getter(name="ipAddress")
140
154
  def ip_address(self) -> str:
141
155
  """
142
- The IP address of the backend server. Example: `10.0.0.3`
156
+ (Updatable) The IP address of the backend server. Example: `10.0.0.3`
143
157
  """
144
158
  return pulumi.get(self, "ip_address")
145
159
 
@@ -155,7 +169,11 @@ class BackendSetBackend(dict):
155
169
  @pulumi.getter
156
170
  def backup(self) -> Optional[bool]:
157
171
  """
158
- Whether the load balancer should treat this server as a backup unit. If `true`, the load balancer forwards no ingress traffic to this backend server unless all other backend servers not marked as "backup" fail the health check policy.
172
+ (Updatable) Whether the load balancer should treat this server as a backup unit. If `true`, the load balancer forwards no ingress traffic to this backend server unless all other backend servers not marked as "backup" fail the health check policy.
173
+
174
+ **Note:** You cannot add a backend server marked as `backup` to a backend set that uses the IP Hash policy.
175
+
176
+ Example: `false`
159
177
  """
160
178
  return pulumi.get(self, "backup")
161
179
 
@@ -163,10 +181,18 @@ class BackendSetBackend(dict):
163
181
  @pulumi.getter
164
182
  def drain(self) -> Optional[bool]:
165
183
  """
166
- Whether the load balancer should drain this server. Servers marked "drain" receive no new incoming traffic. Example: `false`
184
+ (Updatable) Whether the load balancer should drain this server. Servers marked "drain" receive no new incoming traffic. Example: `false`
167
185
  """
168
186
  return pulumi.get(self, "drain")
169
187
 
188
+ @property
189
+ @pulumi.getter(name="maxConnections")
190
+ def max_connections(self) -> Optional[int]:
191
+ """
192
+ (Updatable) The maximum number of simultaneous connections the load balancer can make to the backend. If this is not set then the maximum number of simultaneous connections the load balancer can make to the backend is unlimited. Example: `300`
193
+ """
194
+ return pulumi.get(self, "max_connections")
195
+
170
196
  @property
171
197
  @pulumi.getter
172
198
  def name(self) -> Optional[str]:
@@ -183,7 +209,7 @@ class BackendSetBackend(dict):
183
209
  @pulumi.getter
184
210
  def offline(self) -> Optional[bool]:
185
211
  """
186
- Whether the load balancer should treat this server as offline. Offline servers receive no incoming traffic. Example: `false`
212
+ (Updatable) Whether the load balancer should treat this server as offline. Offline servers receive no incoming traffic. Example: `false`
187
213
  """
188
214
  return pulumi.get(self, "offline")
189
215
 
@@ -191,7 +217,7 @@ class BackendSetBackend(dict):
191
217
  @pulumi.getter
192
218
  def weight(self) -> Optional[int]:
193
219
  """
194
- The load balancing policy weight assigned to the server. Backend servers with a higher weight receive a larger proportion of incoming traffic. For example, a server weighted '3' receives 3 times the number of new connections as a server weighted '1'. For more information on load balancing policies, see [How Load Balancing Policies Work](https://docs.cloud.oracle.com/iaas/Content/Balance/Reference/lbpolicies.htm). Example: `3`
220
+ (Updatable) The load balancing policy weight assigned to the server. Backend servers with a higher weight receive a larger proportion of incoming traffic. For example, a server weighted '3' receives 3 times the number of new connections as a server weighted '1'. For more information on load balancing policies, see [How Load Balancing Policies Work](https://docs.cloud.oracle.com/iaas/Content/Balance/Reference/lbpolicies.htm). Example: `3`
195
221
  """
196
222
  return pulumi.get(self, "weight")
197
223
 
@@ -834,6 +860,8 @@ class ListenerSslConfiguration(dict):
834
860
  suggest = "certificate_name"
835
861
  elif key == "cipherSuiteName":
836
862
  suggest = "cipher_suite_name"
863
+ elif key == "hasSessionResumption":
864
+ suggest = "has_session_resumption"
837
865
  elif key == "serverOrderPreference":
838
866
  suggest = "server_order_preference"
839
867
  elif key == "trustedCertificateAuthorityIds":
@@ -858,6 +886,7 @@ class ListenerSslConfiguration(dict):
858
886
  certificate_ids: Optional[Sequence[str]] = None,
859
887
  certificate_name: Optional[str] = None,
860
888
  cipher_suite_name: Optional[str] = None,
889
+ has_session_resumption: Optional[bool] = None,
861
890
  protocols: Optional[Sequence[str]] = None,
862
891
  server_order_preference: Optional[str] = None,
863
892
  trusted_certificate_authority_ids: Optional[Sequence[str]] = None,
@@ -880,6 +909,7 @@ class ListenerSslConfiguration(dict):
880
909
  * The `oci-customized-ssl-cipher-suite` Oracle reserved cipher suite name is not accepted as valid input for this field.
881
910
 
882
911
  example: `example_cipher_suite`
912
+ :param bool has_session_resumption: (Updatable) Whether the load balancer listener should resume an encrypted session by reusing the cryptographic parameters of a previous TLS session, without having to perform a full handshake again. If "true", the service resumes the previous TLS encrypted session. If "false", the service starts a new TLS encrypted session. Enabling session resumption improves performance but provides a lower level of security. Disabling session resumption improves security but reduces performance. Example: `true`
883
913
  :param Sequence[str] protocols: (Updatable) A list of SSL protocols the load balancer must support for HTTPS or SSL connections.
884
914
 
885
915
  The load balancer uses SSL protocols to establish a secure connection between a client and a server. A secure connection ensures that all data passed between the client and the server is private.
@@ -916,6 +946,8 @@ class ListenerSslConfiguration(dict):
916
946
  pulumi.set(__self__, "certificate_name", certificate_name)
917
947
  if cipher_suite_name is not None:
918
948
  pulumi.set(__self__, "cipher_suite_name", cipher_suite_name)
949
+ if has_session_resumption is not None:
950
+ pulumi.set(__self__, "has_session_resumption", has_session_resumption)
919
951
  if protocols is not None:
920
952
  pulumi.set(__self__, "protocols", protocols)
921
953
  if server_order_preference is not None:
@@ -964,6 +996,14 @@ class ListenerSslConfiguration(dict):
964
996
  """
965
997
  return pulumi.get(self, "cipher_suite_name")
966
998
 
999
+ @property
1000
+ @pulumi.getter(name="hasSessionResumption")
1001
+ def has_session_resumption(self) -> Optional[bool]:
1002
+ """
1003
+ (Updatable) Whether the load balancer listener should resume an encrypted session by reusing the cryptographic parameters of a previous TLS session, without having to perform a full handshake again. If "true", the service resumes the previous TLS encrypted session. If "false", the service starts a new TLS encrypted session. Enabling session resumption improves performance but provides a lower level of security. Disabling session resumption improves security but reduces performance. Example: `true`
1004
+ """
1005
+ return pulumi.get(self, "has_session_resumption")
1006
+
967
1007
  @property
968
1008
  @pulumi.getter
969
1009
  def protocols(self) -> Optional[Sequence[str]]:
@@ -1059,7 +1099,6 @@ class LoadBalancerIpAddressDetail(dict):
1059
1099
  """
1060
1100
  :param str ip_address: An IP address. Example: `192.168.0.3`
1061
1101
  :param bool is_public: Whether the IP address is public or private.
1062
- :param Sequence['LoadBalancerIpAddressDetailReservedIpArgs'] reserved_ips: Pre-created public IP that will be used as the IP of this load balancer. This reserved IP will not be deleted when load balancer is deleted. This ip should not be already mapped to any other resource.
1063
1102
  """
1064
1103
  if ip_address is not None:
1065
1104
  pulumi.set(__self__, "ip_address", ip_address)
@@ -1087,9 +1126,6 @@ class LoadBalancerIpAddressDetail(dict):
1087
1126
  @property
1088
1127
  @pulumi.getter(name="reservedIps")
1089
1128
  def reserved_ips(self) -> Optional[Sequence['outputs.LoadBalancerIpAddressDetailReservedIp']]:
1090
- """
1091
- Pre-created public IP that will be used as the IP of this load balancer. This reserved IP will not be deleted when load balancer is deleted. This ip should not be already mapped to any other resource.
1092
- """
1093
1129
  return pulumi.get(self, "reserved_ips")
1094
1130
 
1095
1131
 
@@ -1098,7 +1134,15 @@ class LoadBalancerIpAddressDetailReservedIp(dict):
1098
1134
  def __init__(__self__, *,
1099
1135
  id: Optional[str] = None):
1100
1136
  """
1101
- :param str id: Ocid of the pre-created public IP that should be attached to this load balancer. The public IP will be attached to a private IP. **Note** If public IP resource is present in the config, the pulumi preview will throw `After applying this step and refreshing, the plan was not empty` error, and `private_ip_id` needs to be added as an input argument to the public IP resource block or ignore from its lifecycle as shown in examples to resolve this error.
1137
+ :param str id: Ocid of the Reserved IP/Public Ip created with VCN.
1138
+
1139
+ Reserved IPs are IPs which already registered using VCN API.
1140
+
1141
+ Create a reserved Public IP and then while creating the load balancer pass the ocid of the reserved IP in this field reservedIp to attach the Ip to Load balancer. Load balancer will be configured to listen to traffic on this IP.
1142
+
1143
+ Reserved IPs will not be deleted when the Load balancer is deleted. They will be unattached from the Load balancer.
1144
+
1145
+ Example: "ocid1.publicip.oc1.phx.unique_ID" Ocid of the pre-created public IP that should be attached to this load balancer. The public IP will be attached to a private IP. **Note** If public IP resource is present in the config, the pulumi preview will throw `After applying this step and refreshing, the plan was not empty` error, and `private_ip_id` needs to be added as an input argument to the public IP resource block or ignore from its lifecycle as shown in examples to resolve this error.
1102
1146
  """
1103
1147
  if id is not None:
1104
1148
  pulumi.set(__self__, "id", id)
@@ -1107,7 +1151,15 @@ class LoadBalancerIpAddressDetailReservedIp(dict):
1107
1151
  @pulumi.getter
1108
1152
  def id(self) -> Optional[str]:
1109
1153
  """
1110
- Ocid of the pre-created public IP that should be attached to this load balancer. The public IP will be attached to a private IP. **Note** If public IP resource is present in the config, the pulumi preview will throw `After applying this step and refreshing, the plan was not empty` error, and `private_ip_id` needs to be added as an input argument to the public IP resource block or ignore from its lifecycle as shown in examples to resolve this error.
1154
+ Ocid of the Reserved IP/Public Ip created with VCN.
1155
+
1156
+ Reserved IPs are IPs which already registered using VCN API.
1157
+
1158
+ Create a reserved Public IP and then while creating the load balancer pass the ocid of the reserved IP in this field reservedIp to attach the Ip to Load balancer. Load balancer will be configured to listen to traffic on this IP.
1159
+
1160
+ Reserved IPs will not be deleted when the Load balancer is deleted. They will be unattached from the Load balancer.
1161
+
1162
+ Example: "ocid1.publicip.oc1.phx.unique_ID" Ocid of the pre-created public IP that should be attached to this load balancer. The public IP will be attached to a private IP. **Note** If public IP resource is present in the config, the pulumi preview will throw `After applying this step and refreshing, the plan was not empty` error, and `private_ip_id` needs to be added as an input argument to the public IP resource block or ignore from its lifecycle as shown in examples to resolve this error.
1111
1163
  """
1112
1164
  return pulumi.get(self, "id")
1113
1165
 
@@ -1117,7 +1169,15 @@ class LoadBalancerReservedIp(dict):
1117
1169
  def __init__(__self__, *,
1118
1170
  id: Optional[str] = None):
1119
1171
  """
1120
- :param str id: Ocid of the pre-created public IP that should be attached to this load balancer. The public IP will be attached to a private IP. **Note** If public IP resource is present in the config, the pulumi preview will throw `After applying this step and refreshing, the plan was not empty` error, and `private_ip_id` needs to be added as an input argument to the public IP resource block or ignore from its lifecycle as shown in examples to resolve this error.
1172
+ :param str id: Ocid of the Reserved IP/Public Ip created with VCN.
1173
+
1174
+ Reserved IPs are IPs which already registered using VCN API.
1175
+
1176
+ Create a reserved Public IP and then while creating the load balancer pass the ocid of the reserved IP in this field reservedIp to attach the Ip to Load balancer. Load balancer will be configured to listen to traffic on this IP.
1177
+
1178
+ Reserved IPs will not be deleted when the Load balancer is deleted. They will be unattached from the Load balancer.
1179
+
1180
+ Example: "ocid1.publicip.oc1.phx.unique_ID" Ocid of the pre-created public IP that should be attached to this load balancer. The public IP will be attached to a private IP. **Note** If public IP resource is present in the config, the pulumi preview will throw `After applying this step and refreshing, the plan was not empty` error, and `private_ip_id` needs to be added as an input argument to the public IP resource block or ignore from its lifecycle as shown in examples to resolve this error.
1121
1181
  """
1122
1182
  if id is not None:
1123
1183
  pulumi.set(__self__, "id", id)
@@ -1126,7 +1186,15 @@ class LoadBalancerReservedIp(dict):
1126
1186
  @pulumi.getter
1127
1187
  def id(self) -> Optional[str]:
1128
1188
  """
1129
- Ocid of the pre-created public IP that should be attached to this load balancer. The public IP will be attached to a private IP. **Note** If public IP resource is present in the config, the pulumi preview will throw `After applying this step and refreshing, the plan was not empty` error, and `private_ip_id` needs to be added as an input argument to the public IP resource block or ignore from its lifecycle as shown in examples to resolve this error.
1189
+ Ocid of the Reserved IP/Public Ip created with VCN.
1190
+
1191
+ Reserved IPs are IPs which already registered using VCN API.
1192
+
1193
+ Create a reserved Public IP and then while creating the load balancer pass the ocid of the reserved IP in this field reservedIp to attach the Ip to Load balancer. Load balancer will be configured to listen to traffic on this IP.
1194
+
1195
+ Reserved IPs will not be deleted when the Load balancer is deleted. They will be unattached from the Load balancer.
1196
+
1197
+ Example: "ocid1.publicip.oc1.phx.unique_ID" Ocid of the pre-created public IP that should be attached to this load balancer. The public IP will be attached to a private IP. **Note** If public IP resource is present in the config, the pulumi preview will throw `After applying this step and refreshing, the plan was not empty` error, and `private_ip_id` needs to be added as an input argument to the public IP resource block or ignore from its lifecycle as shown in examples to resolve this error.
1130
1198
  """
1131
1199
  return pulumi.get(self, "id")
1132
1200
 
@@ -1422,8 +1490,12 @@ class RuleSetItem(dict):
1422
1490
  suggest = "allowed_methods"
1423
1491
  elif key == "areInvalidCharactersAllowed":
1424
1492
  suggest = "are_invalid_characters_allowed"
1493
+ elif key == "defaultMaxConnections":
1494
+ suggest = "default_max_connections"
1425
1495
  elif key == "httpLargeHeaderSizeInKb":
1426
1496
  suggest = "http_large_header_size_in_kb"
1497
+ elif key == "ipMaxConnections":
1498
+ suggest = "ip_max_connections"
1427
1499
  elif key == "redirectUri":
1428
1500
  suggest = "redirect_uri"
1429
1501
  elif key == "responseCode":
@@ -1447,9 +1519,11 @@ class RuleSetItem(dict):
1447
1519
  allowed_methods: Optional[Sequence[str]] = None,
1448
1520
  are_invalid_characters_allowed: Optional[bool] = None,
1449
1521
  conditions: Optional[Sequence['outputs.RuleSetItemCondition']] = None,
1522
+ default_max_connections: Optional[int] = None,
1450
1523
  description: Optional[str] = None,
1451
1524
  header: Optional[str] = None,
1452
1525
  http_large_header_size_in_kb: Optional[int] = None,
1526
+ ip_max_connections: Optional[Sequence['outputs.RuleSetItemIpMaxConnection']] = None,
1453
1527
  prefix: Optional[str] = None,
1454
1528
  redirect_uri: Optional['outputs.RuleSetItemRedirectUri'] = None,
1455
1529
  response_code: Optional[int] = None,
@@ -1457,7 +1531,7 @@ class RuleSetItem(dict):
1457
1531
  suffix: Optional[str] = None,
1458
1532
  value: Optional[str] = None):
1459
1533
  """
1460
- :param str action: (Updatable) The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
1534
+ :param str action: (Updatable) The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `IP_BASED_MAX_CONNECTIONS`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
1461
1535
  :param Sequence[str] allowed_methods: (Updatable) The list of HTTP methods allowed for this listener.
1462
1536
 
1463
1537
  By default, you can specify only the standard HTTP methods defined in the [HTTP Method Registry](http://www.iana.org/assignments/http-methods/http-methods.xhtml). You can also see a list of supported standard HTTP methods in the Load Balancing service documentation at [Managing Rule Sets](https://docs.cloud.oracle.com/iaas/Content/Balance/Tasks/managingrulesets.htm).
@@ -1469,11 +1543,13 @@ class RuleSetItem(dict):
1469
1543
  Example: ["GET", "PUT", "POST", "PROPFIND"]
1470
1544
  :param bool are_invalid_characters_allowed: (Updatable) Indicates whether or not invalid characters in client header fields will be allowed. Valid names are composed of English letters, digits, hyphens and underscores. If "true", invalid characters are allowed in the HTTP header. If "false", invalid characters are not allowed in the HTTP header
1471
1545
  :param Sequence['RuleSetItemConditionArgs'] conditions: (Updatable)
1546
+ :param int default_max_connections: (Updatable) The maximum number of connections that the any IP can make to a listener unless the IP is mentioned in maxConnections. If no defaultMaxConnections is specified the default is unlimited.
1472
1547
  :param str description: (Updatable) A brief description of the access control rule. Avoid entering confidential information.
1473
1548
 
1474
1549
  example: `192.168.0.0/16 and 2001:db8::/32 are trusted clients. Whitelist them.`
1475
1550
  :param str header: (Updatable) A header name that conforms to RFC 7230. Example: `example_header_name`
1476
1551
  :param int http_large_header_size_in_kb: (Updatable) The maximum size of each buffer used for reading http client request header. This value indicates the maximum size allowed for each buffer. The allowed values for buffer size are 8, 16, 32 and 64.
1552
+ :param Sequence['RuleSetItemIpMaxConnectionArgs'] ip_max_connections: (Updatable) An array of IPs that have a maxConnection setting different than the default and what that maxConnection setting is
1477
1553
  :param str prefix: (Updatable) A string to prepend to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:
1478
1554
  * value cannot contain `$`
1479
1555
  * value cannot contain patterns like `{variable_name}`. They are reserved for future extensions. Currently, such values are invalid.
@@ -1534,12 +1610,16 @@ class RuleSetItem(dict):
1534
1610
  pulumi.set(__self__, "are_invalid_characters_allowed", are_invalid_characters_allowed)
1535
1611
  if conditions is not None:
1536
1612
  pulumi.set(__self__, "conditions", conditions)
1613
+ if default_max_connections is not None:
1614
+ pulumi.set(__self__, "default_max_connections", default_max_connections)
1537
1615
  if description is not None:
1538
1616
  pulumi.set(__self__, "description", description)
1539
1617
  if header is not None:
1540
1618
  pulumi.set(__self__, "header", header)
1541
1619
  if http_large_header_size_in_kb is not None:
1542
1620
  pulumi.set(__self__, "http_large_header_size_in_kb", http_large_header_size_in_kb)
1621
+ if ip_max_connections is not None:
1622
+ pulumi.set(__self__, "ip_max_connections", ip_max_connections)
1543
1623
  if prefix is not None:
1544
1624
  pulumi.set(__self__, "prefix", prefix)
1545
1625
  if redirect_uri is not None:
@@ -1557,7 +1637,7 @@ class RuleSetItem(dict):
1557
1637
  @pulumi.getter
1558
1638
  def action(self) -> str:
1559
1639
  """
1560
- (Updatable) The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
1640
+ (Updatable) The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `IP_BASED_MAX_CONNECTIONS`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
1561
1641
  """
1562
1642
  return pulumi.get(self, "action")
1563
1643
 
@@ -1593,6 +1673,14 @@ class RuleSetItem(dict):
1593
1673
  """
1594
1674
  return pulumi.get(self, "conditions")
1595
1675
 
1676
+ @property
1677
+ @pulumi.getter(name="defaultMaxConnections")
1678
+ def default_max_connections(self) -> Optional[int]:
1679
+ """
1680
+ (Updatable) The maximum number of connections that the any IP can make to a listener unless the IP is mentioned in maxConnections. If no defaultMaxConnections is specified the default is unlimited.
1681
+ """
1682
+ return pulumi.get(self, "default_max_connections")
1683
+
1596
1684
  @property
1597
1685
  @pulumi.getter
1598
1686
  def description(self) -> Optional[str]:
@@ -1619,6 +1707,14 @@ class RuleSetItem(dict):
1619
1707
  """
1620
1708
  return pulumi.get(self, "http_large_header_size_in_kb")
1621
1709
 
1710
+ @property
1711
+ @pulumi.getter(name="ipMaxConnections")
1712
+ def ip_max_connections(self) -> Optional[Sequence['outputs.RuleSetItemIpMaxConnection']]:
1713
+ """
1714
+ (Updatable) An array of IPs that have a maxConnection setting different than the default and what that maxConnection setting is
1715
+ """
1716
+ return pulumi.get(self, "ip_max_connections")
1717
+
1622
1718
  @property
1623
1719
  @pulumi.getter
1624
1720
  def prefix(self) -> Optional[str]:
@@ -1788,6 +1884,56 @@ class RuleSetItemCondition(dict):
1788
1884
  return pulumi.get(self, "operator")
1789
1885
 
1790
1886
 
1887
+ @pulumi.output_type
1888
+ class RuleSetItemIpMaxConnection(dict):
1889
+ @staticmethod
1890
+ def __key_warning(key: str):
1891
+ suggest = None
1892
+ if key == "ipAddresses":
1893
+ suggest = "ip_addresses"
1894
+ elif key == "maxConnections":
1895
+ suggest = "max_connections"
1896
+
1897
+ if suggest:
1898
+ pulumi.log.warn(f"Key '{key}' not found in RuleSetItemIpMaxConnection. Access the value via the '{suggest}' property getter instead.")
1899
+
1900
+ def __getitem__(self, key: str) -> Any:
1901
+ RuleSetItemIpMaxConnection.__key_warning(key)
1902
+ return super().__getitem__(key)
1903
+
1904
+ def get(self, key: str, default = None) -> Any:
1905
+ RuleSetItemIpMaxConnection.__key_warning(key)
1906
+ return super().get(key, default)
1907
+
1908
+ def __init__(__self__, *,
1909
+ ip_addresses: Optional[Sequence[str]] = None,
1910
+ max_connections: Optional[int] = None):
1911
+ """
1912
+ :param Sequence[str] ip_addresses: (Updatable) Each element in the list should be valid IPv4 or IPv6 CIDR Block address. Example: '["129.213.176.0/24", "150.136.187.0/24", "2002::1234:abcd:ffff:c0a8:101/64"]'
1913
+ :param int max_connections: (Updatable) The maximum number of simultaneous connections that the specified IPs can make to the Listener. IPs without a maxConnections setting can make either defaultMaxConnections simultaneous connections to a listener or, if no defaultMaxConnections is specified, an unlimited number of simultaneous connections to a listener.
1914
+ """
1915
+ if ip_addresses is not None:
1916
+ pulumi.set(__self__, "ip_addresses", ip_addresses)
1917
+ if max_connections is not None:
1918
+ pulumi.set(__self__, "max_connections", max_connections)
1919
+
1920
+ @property
1921
+ @pulumi.getter(name="ipAddresses")
1922
+ def ip_addresses(self) -> Optional[Sequence[str]]:
1923
+ """
1924
+ (Updatable) Each element in the list should be valid IPv4 or IPv6 CIDR Block address. Example: '["129.213.176.0/24", "150.136.187.0/24", "2002::1234:abcd:ffff:c0a8:101/64"]'
1925
+ """
1926
+ return pulumi.get(self, "ip_addresses")
1927
+
1928
+ @property
1929
+ @pulumi.getter(name="maxConnections")
1930
+ def max_connections(self) -> Optional[int]:
1931
+ """
1932
+ (Updatable) The maximum number of simultaneous connections that the specified IPs can make to the Listener. IPs without a maxConnections setting can make either defaultMaxConnections simultaneous connections to a listener or, if no defaultMaxConnections is specified, an unlimited number of simultaneous connections to a listener.
1933
+ """
1934
+ return pulumi.get(self, "max_connections")
1935
+
1936
+
1791
1937
  @pulumi.output_type
1792
1938
  class RuleSetItemRedirectUri(dict):
1793
1939
  def __init__(__self__, *,
@@ -2025,6 +2171,7 @@ class GetBackendHealthHealthCheckResultResult(dict):
2025
2171
  @pulumi.output_type
2026
2172
  class GetBackendSetsBackendsetResult(dict):
2027
2173
  def __init__(__self__, *,
2174
+ backend_max_connections: int,
2028
2175
  backends: Sequence['outputs.GetBackendSetsBackendsetBackendResult'],
2029
2176
  health_checkers: Sequence['outputs.GetBackendSetsBackendsetHealthCheckerResult'],
2030
2177
  id: str,
@@ -2036,6 +2183,7 @@ class GetBackendSetsBackendsetResult(dict):
2036
2183
  ssl_configurations: Sequence['outputs.GetBackendSetsBackendsetSslConfigurationResult'],
2037
2184
  state: str):
2038
2185
  """
2186
+ :param int backend_max_connections: The maximum number of simultaneous connections the load balancer can make to any backend in the backend set unless the backend has its own maxConnections setting. If this is not set then the number of simultaneous connections the load balancer can make to any backend in the backend set unless the backend has its own maxConnections setting is unlimited. Example: `300`
2039
2187
  :param Sequence['GetBackendSetsBackendsetHealthCheckerArgs'] health_checkers: The health check policy configuration. For more information, see [Editing Health Check Policies](https://docs.cloud.oracle.com/iaas/Content/Balance/Tasks/editinghealthcheck.htm).
2040
2188
  :param Sequence['GetBackendSetsBackendsetLbCookieSessionPersistenceConfigurationArgs'] lb_cookie_session_persistence_configurations: The configuration details for implementing load balancer cookie session persistence (LB cookie stickiness).
2041
2189
  :param str load_balancer_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the load balancer associated with the backend sets to retrieve.
@@ -2044,6 +2192,7 @@ class GetBackendSetsBackendsetResult(dict):
2044
2192
  :param Sequence['GetBackendSetsBackendsetSessionPersistenceConfigurationArgs'] session_persistence_configurations: The configuration details for implementing session persistence based on a user-specified cookie name (application cookie stickiness).
2045
2193
  :param Sequence['GetBackendSetsBackendsetSslConfigurationArgs'] ssl_configurations: A listener's SSL handling configuration.
2046
2194
  """
2195
+ pulumi.set(__self__, "backend_max_connections", backend_max_connections)
2047
2196
  pulumi.set(__self__, "backends", backends)
2048
2197
  pulumi.set(__self__, "health_checkers", health_checkers)
2049
2198
  pulumi.set(__self__, "id", id)
@@ -2055,6 +2204,14 @@ class GetBackendSetsBackendsetResult(dict):
2055
2204
  pulumi.set(__self__, "ssl_configurations", ssl_configurations)
2056
2205
  pulumi.set(__self__, "state", state)
2057
2206
 
2207
+ @property
2208
+ @pulumi.getter(name="backendMaxConnections")
2209
+ def backend_max_connections(self) -> int:
2210
+ """
2211
+ The maximum number of simultaneous connections the load balancer can make to any backend in the backend set unless the backend has its own maxConnections setting. If this is not set then the number of simultaneous connections the load balancer can make to any backend in the backend set unless the backend has its own maxConnections setting is unlimited. Example: `300`
2212
+ """
2213
+ return pulumi.get(self, "backend_max_connections")
2214
+
2058
2215
  @property
2059
2216
  @pulumi.getter
2060
2217
  def backends(self) -> Sequence['outputs.GetBackendSetsBackendsetBackendResult']:
@@ -2133,6 +2290,7 @@ class GetBackendSetsBackendsetBackendResult(dict):
2133
2290
  backup: bool,
2134
2291
  drain: bool,
2135
2292
  ip_address: str,
2293
+ max_connections: int,
2136
2294
  name: str,
2137
2295
  offline: bool,
2138
2296
  port: int,
@@ -2141,6 +2299,7 @@ class GetBackendSetsBackendsetBackendResult(dict):
2141
2299
  :param bool backup: Whether the load balancer should treat this server as a backup unit. If `true`, the load balancer forwards no ingress traffic to this backend server unless all other backend servers not marked as "backup" fail the health check policy.
2142
2300
  :param bool drain: Whether the load balancer should drain this server. Servers marked "drain" receive no new incoming traffic. Example: `false`
2143
2301
  :param str ip_address: The IP address of the backend server. Example: `10.0.0.3`
2302
+ :param int max_connections: The maximum number of simultaneous connections the load balancer can make to the backend. If this is not set then the maximum number of simultaneous connections the load balancer can make to the backend is unlimited. Example: `300`
2144
2303
  :param str name: A friendly name for the backend set. It must be unique and it cannot be changed.
2145
2304
  :param bool offline: Whether the load balancer should treat this server as offline. Offline servers receive no incoming traffic. Example: `false`
2146
2305
  :param int port: The backend server port against which to run the health check. If the port is not specified, the load balancer uses the port information from the `Backend` object. Example: `8080`
@@ -2149,6 +2308,7 @@ class GetBackendSetsBackendsetBackendResult(dict):
2149
2308
  pulumi.set(__self__, "backup", backup)
2150
2309
  pulumi.set(__self__, "drain", drain)
2151
2310
  pulumi.set(__self__, "ip_address", ip_address)
2311
+ pulumi.set(__self__, "max_connections", max_connections)
2152
2312
  pulumi.set(__self__, "name", name)
2153
2313
  pulumi.set(__self__, "offline", offline)
2154
2314
  pulumi.set(__self__, "port", port)
@@ -2178,6 +2338,14 @@ class GetBackendSetsBackendsetBackendResult(dict):
2178
2338
  """
2179
2339
  return pulumi.get(self, "ip_address")
2180
2340
 
2341
+ @property
2342
+ @pulumi.getter(name="maxConnections")
2343
+ def max_connections(self) -> int:
2344
+ """
2345
+ The maximum number of simultaneous connections the load balancer can make to the backend. If this is not set then the maximum number of simultaneous connections the load balancer can make to the backend is unlimited. Example: `300`
2346
+ """
2347
+ return pulumi.get(self, "max_connections")
2348
+
2181
2349
  @property
2182
2350
  @pulumi.getter
2183
2351
  def name(self) -> str:
@@ -2565,6 +2733,7 @@ class GetBackendsBackendResult(dict):
2565
2733
  drain: bool,
2566
2734
  ip_address: str,
2567
2735
  load_balancer_id: str,
2736
+ max_connections: int,
2568
2737
  name: str,
2569
2738
  offline: bool,
2570
2739
  port: int,
@@ -2576,6 +2745,7 @@ class GetBackendsBackendResult(dict):
2576
2745
  :param bool drain: Whether the load balancer should drain this server. Servers marked "drain" receive no new incoming traffic. Example: `false`
2577
2746
  :param str ip_address: The IP address of the backend server. Example: `10.0.0.3`
2578
2747
  :param str load_balancer_id: The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the load balancer associated with the backend set and servers.
2748
+ :param int max_connections: The maximum number of simultaneous connections the load balancer can make to the backend. If this is not set then the maximum number of simultaneous connections the load balancer can make to the backend is unlimited. Example: `300`
2579
2749
  :param str name: A read-only field showing the IP address and port that uniquely identify this backend server in the backend set. Example: `10.0.0.3:8080`
2580
2750
  :param bool offline: Whether the load balancer should treat this server as offline. Offline servers receive no incoming traffic. Example: `false`
2581
2751
  :param int port: The communication port for the backend server. Example: `8080`
@@ -2586,6 +2756,7 @@ class GetBackendsBackendResult(dict):
2586
2756
  pulumi.set(__self__, "drain", drain)
2587
2757
  pulumi.set(__self__, "ip_address", ip_address)
2588
2758
  pulumi.set(__self__, "load_balancer_id", load_balancer_id)
2759
+ pulumi.set(__self__, "max_connections", max_connections)
2589
2760
  pulumi.set(__self__, "name", name)
2590
2761
  pulumi.set(__self__, "offline", offline)
2591
2762
  pulumi.set(__self__, "port", port)
@@ -2626,6 +2797,14 @@ class GetBackendsBackendResult(dict):
2626
2797
  """
2627
2798
  return pulumi.get(self, "load_balancer_id")
2628
2799
 
2800
+ @property
2801
+ @pulumi.getter(name="maxConnections")
2802
+ def max_connections(self) -> int:
2803
+ """
2804
+ The maximum number of simultaneous connections the load balancer can make to the backend. If this is not set then the maximum number of simultaneous connections the load balancer can make to the backend is unlimited. Example: `300`
2805
+ """
2806
+ return pulumi.get(self, "max_connections")
2807
+
2629
2808
  @property
2630
2809
  @pulumi.getter
2631
2810
  def name(self) -> str:
@@ -2961,9 +3140,11 @@ class GetListenerRulesListenerRuleRuleResult(dict):
2961
3140
  allowed_methods: Sequence[str],
2962
3141
  are_invalid_characters_allowed: bool,
2963
3142
  conditions: Sequence['outputs.GetListenerRulesListenerRuleRuleConditionResult'],
3143
+ default_max_connections: int,
2964
3144
  description: str,
2965
3145
  header: str,
2966
3146
  http_large_header_size_in_kb: int,
3147
+ ip_max_connections: Sequence['outputs.GetListenerRulesListenerRuleRuleIpMaxConnectionResult'],
2967
3148
  prefix: str,
2968
3149
  redirect_uris: Sequence['outputs.GetListenerRulesListenerRuleRuleRedirectUriResult'],
2969
3150
  response_code: int,
@@ -2971,12 +3152,14 @@ class GetListenerRulesListenerRuleRuleResult(dict):
2971
3152
  suffix: str,
2972
3153
  value: str):
2973
3154
  """
2974
- :param str action: The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
3155
+ :param str action: The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `IP_BASED_MAX_CONNECTIONS`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
2975
3156
  :param Sequence[str] allowed_methods: The list of HTTP methods allowed for this listener.
2976
3157
  :param bool are_invalid_characters_allowed: Indicates whether or not invalid characters in client header fields will be allowed. Valid names are composed of English letters, digits, hyphens and underscores. If "true", invalid characters are allowed in the HTTP header. If "false", invalid characters are not allowed in the HTTP header
3158
+ :param int default_max_connections: The maximum number of connections that the any IP can make to a listener unless the IP is mentioned in maxConnections. If no defaultMaxConnections is specified the default is unlimited.
2977
3159
  :param str description: A brief description of the access control rule. Avoid entering confidential information.
2978
3160
  :param str header: A header name that conforms to RFC 7230. Example: `example_header_name`
2979
3161
  :param int http_large_header_size_in_kb: The maximum size of each buffer used for reading http client request header. This value indicates the maximum size allowed for each buffer. The allowed values for buffer size are 8, 16, 32 and 64.
3162
+ :param Sequence['GetListenerRulesListenerRuleRuleIpMaxConnectionArgs'] ip_max_connections: An array of IPs that have a maxConnection setting different than the default and what that maxConnection setting is
2980
3163
  :param str prefix: A string to prepend to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:
2981
3164
  * value cannot contain `$`
2982
3165
  * value cannot contain patterns like `{variable_name}`. They are reserved for future extensions. Currently, such values are invalid.
@@ -2994,9 +3177,11 @@ class GetListenerRulesListenerRuleRuleResult(dict):
2994
3177
  pulumi.set(__self__, "allowed_methods", allowed_methods)
2995
3178
  pulumi.set(__self__, "are_invalid_characters_allowed", are_invalid_characters_allowed)
2996
3179
  pulumi.set(__self__, "conditions", conditions)
3180
+ pulumi.set(__self__, "default_max_connections", default_max_connections)
2997
3181
  pulumi.set(__self__, "description", description)
2998
3182
  pulumi.set(__self__, "header", header)
2999
3183
  pulumi.set(__self__, "http_large_header_size_in_kb", http_large_header_size_in_kb)
3184
+ pulumi.set(__self__, "ip_max_connections", ip_max_connections)
3000
3185
  pulumi.set(__self__, "prefix", prefix)
3001
3186
  pulumi.set(__self__, "redirect_uris", redirect_uris)
3002
3187
  pulumi.set(__self__, "response_code", response_code)
@@ -3008,7 +3193,7 @@ class GetListenerRulesListenerRuleRuleResult(dict):
3008
3193
  @pulumi.getter
3009
3194
  def action(self) -> str:
3010
3195
  """
3011
- The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
3196
+ The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `IP_BASED_MAX_CONNECTIONS`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
3012
3197
  """
3013
3198
  return pulumi.get(self, "action")
3014
3199
 
@@ -3033,6 +3218,14 @@ class GetListenerRulesListenerRuleRuleResult(dict):
3033
3218
  def conditions(self) -> Sequence['outputs.GetListenerRulesListenerRuleRuleConditionResult']:
3034
3219
  return pulumi.get(self, "conditions")
3035
3220
 
3221
+ @property
3222
+ @pulumi.getter(name="defaultMaxConnections")
3223
+ def default_max_connections(self) -> int:
3224
+ """
3225
+ The maximum number of connections that the any IP can make to a listener unless the IP is mentioned in maxConnections. If no defaultMaxConnections is specified the default is unlimited.
3226
+ """
3227
+ return pulumi.get(self, "default_max_connections")
3228
+
3036
3229
  @property
3037
3230
  @pulumi.getter
3038
3231
  def description(self) -> str:
@@ -3057,6 +3250,14 @@ class GetListenerRulesListenerRuleRuleResult(dict):
3057
3250
  """
3058
3251
  return pulumi.get(self, "http_large_header_size_in_kb")
3059
3252
 
3253
+ @property
3254
+ @pulumi.getter(name="ipMaxConnections")
3255
+ def ip_max_connections(self) -> Sequence['outputs.GetListenerRulesListenerRuleRuleIpMaxConnectionResult']:
3256
+ """
3257
+ An array of IPs that have a maxConnection setting different than the default and what that maxConnection setting is
3258
+ """
3259
+ return pulumi.get(self, "ip_max_connections")
3260
+
3060
3261
  @property
3061
3262
  @pulumi.getter
3062
3263
  def prefix(self) -> str:
@@ -3160,6 +3361,35 @@ class GetListenerRulesListenerRuleRuleConditionResult(dict):
3160
3361
  return pulumi.get(self, "operator")
3161
3362
 
3162
3363
 
3364
+ @pulumi.output_type
3365
+ class GetListenerRulesListenerRuleRuleIpMaxConnectionResult(dict):
3366
+ def __init__(__self__, *,
3367
+ ip_addresses: Sequence[str],
3368
+ max_connections: int):
3369
+ """
3370
+ :param Sequence[str] ip_addresses: Each element in the list should be valid IPv4 or IPv6 CIDR Block address. Example: '["129.213.176.0/24", "150.136.187.0/24", "2002::1234:abcd:ffff:c0a8:101/64"]'
3371
+ :param int max_connections: The maximum number of simultaneous connections that the specified IPs can make to the Listener. IPs without a maxConnections setting can make either defaultMaxConnections simultaneous connections to a listener or, if no defaultMaxConnections is specified, an unlimited number of simultaneous connections to a listener.
3372
+ """
3373
+ pulumi.set(__self__, "ip_addresses", ip_addresses)
3374
+ pulumi.set(__self__, "max_connections", max_connections)
3375
+
3376
+ @property
3377
+ @pulumi.getter(name="ipAddresses")
3378
+ def ip_addresses(self) -> Sequence[str]:
3379
+ """
3380
+ Each element in the list should be valid IPv4 or IPv6 CIDR Block address. Example: '["129.213.176.0/24", "150.136.187.0/24", "2002::1234:abcd:ffff:c0a8:101/64"]'
3381
+ """
3382
+ return pulumi.get(self, "ip_addresses")
3383
+
3384
+ @property
3385
+ @pulumi.getter(name="maxConnections")
3386
+ def max_connections(self) -> int:
3387
+ """
3388
+ The maximum number of simultaneous connections that the specified IPs can make to the Listener. IPs without a maxConnections setting can make either defaultMaxConnections simultaneous connections to a listener or, if no defaultMaxConnections is specified, an unlimited number of simultaneous connections to a listener.
3389
+ """
3390
+ return pulumi.get(self, "max_connections")
3391
+
3392
+
3163
3393
  @pulumi.output_type
3164
3394
  class GetListenerRulesListenerRuleRuleRedirectUriResult(dict):
3165
3395
  def __init__(__self__, *,
@@ -3495,6 +3725,7 @@ class GetLoadBalancersLoadBalancerResult(dict):
3495
3725
  ip_address_details: Sequence['outputs.GetLoadBalancersLoadBalancerIpAddressDetailResult'],
3496
3726
  ip_addresses: Sequence[str],
3497
3727
  ip_mode: str,
3728
+ is_delete_protection_enabled: bool,
3498
3729
  is_private: bool,
3499
3730
  network_security_group_ids: Sequence[str],
3500
3731
  reserved_ips: Sequence['outputs.GetLoadBalancersLoadBalancerReservedIpResult'],
@@ -3509,9 +3740,10 @@ class GetLoadBalancersLoadBalancerResult(dict):
3509
3740
  :param Mapping[str, Any] defined_tags: Defined tags for this resource. Each key is predefined and scoped to a namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`
3510
3741
  :param str display_name: A filter to return only resources that match the given display name exactly. Example: `example_load_balancer`
3511
3742
  :param Mapping[str, Any] freeform_tags: Free-form tags for this resource. Each tag is a simple key-value pair with no predefined name, type, or namespace. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`
3512
- :param str id: Ocid of the pre-created public IP. That should be attahed to this load balancer.
3743
+ :param str id: Ocid of the Reserved IP/Public Ip created with VCN.
3513
3744
  :param Sequence['GetLoadBalancersLoadBalancerIpAddressDetailArgs'] ip_address_details: An array of IP addresses.
3514
3745
  :param Sequence[str] ip_addresses: An array of IP addresses. Deprecated: use ip_address_details instead.
3746
+ :param bool is_delete_protection_enabled: Whether or not the load balancer has delete protection enabled.
3515
3747
  :param bool is_private: Whether the load balancer has a VCN-local (private) IP address.
3516
3748
  :param Sequence[str] network_security_group_ids: An array of NSG [OCIDs](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) associated with the load balancer.
3517
3749
  :param str shape: A template that determines the total pre-provisioned bandwidth (ingress plus egress). To get a list of available shapes, use the [ListShapes](https://docs.cloud.oracle.com/iaas/api/#/en/loadbalancer/20170115/LoadBalancerShape/ListShapes) operation. Example: `100Mbps`
@@ -3529,6 +3761,7 @@ class GetLoadBalancersLoadBalancerResult(dict):
3529
3761
  pulumi.set(__self__, "ip_address_details", ip_address_details)
3530
3762
  pulumi.set(__self__, "ip_addresses", ip_addresses)
3531
3763
  pulumi.set(__self__, "ip_mode", ip_mode)
3764
+ pulumi.set(__self__, "is_delete_protection_enabled", is_delete_protection_enabled)
3532
3765
  pulumi.set(__self__, "is_private", is_private)
3533
3766
  pulumi.set(__self__, "network_security_group_ids", network_security_group_ids)
3534
3767
  pulumi.set(__self__, "reserved_ips", reserved_ips)
@@ -3575,7 +3808,7 @@ class GetLoadBalancersLoadBalancerResult(dict):
3575
3808
  @pulumi.getter
3576
3809
  def id(self) -> str:
3577
3810
  """
3578
- Ocid of the pre-created public IP. That should be attahed to this load balancer.
3811
+ Ocid of the Reserved IP/Public Ip created with VCN.
3579
3812
  """
3580
3813
  return pulumi.get(self, "id")
3581
3814
 
@@ -3603,6 +3836,14 @@ class GetLoadBalancersLoadBalancerResult(dict):
3603
3836
  def ip_mode(self) -> str:
3604
3837
  return pulumi.get(self, "ip_mode")
3605
3838
 
3839
+ @property
3840
+ @pulumi.getter(name="isDeleteProtectionEnabled")
3841
+ def is_delete_protection_enabled(self) -> bool:
3842
+ """
3843
+ Whether or not the load balancer has delete protection enabled.
3844
+ """
3845
+ return pulumi.get(self, "is_delete_protection_enabled")
3846
+
3606
3847
  @property
3607
3848
  @pulumi.getter(name="isPrivate")
3608
3849
  def is_private(self) -> bool:
@@ -3682,7 +3923,6 @@ class GetLoadBalancersLoadBalancerIpAddressDetailResult(dict):
3682
3923
  """
3683
3924
  :param str ip_address: An IP address. Example: `192.168.0.3`
3684
3925
  :param bool is_public: Whether the IP address is public or private.
3685
- :param Sequence['GetLoadBalancersLoadBalancerIpAddressDetailReservedIpArgs'] reserved_ips: Pre-created public IP that will be used as the IP of this load balancer. This reserved IP will not be deleted when load balancer is deleted. This ip should not be already mapped to any other resource.
3686
3926
  """
3687
3927
  pulumi.set(__self__, "ip_address", ip_address)
3688
3928
  pulumi.set(__self__, "is_public", is_public)
@@ -3707,9 +3947,6 @@ class GetLoadBalancersLoadBalancerIpAddressDetailResult(dict):
3707
3947
  @property
3708
3948
  @pulumi.getter(name="reservedIps")
3709
3949
  def reserved_ips(self) -> Sequence['outputs.GetLoadBalancersLoadBalancerIpAddressDetailReservedIpResult']:
3710
- """
3711
- Pre-created public IP that will be used as the IP of this load balancer. This reserved IP will not be deleted when load balancer is deleted. This ip should not be already mapped to any other resource.
3712
- """
3713
3950
  return pulumi.get(self, "reserved_ips")
3714
3951
 
3715
3952
 
@@ -3718,7 +3955,7 @@ class GetLoadBalancersLoadBalancerIpAddressDetailReservedIpResult(dict):
3718
3955
  def __init__(__self__, *,
3719
3956
  id: str):
3720
3957
  """
3721
- :param str id: Ocid of the pre-created public IP. That should be attahed to this load balancer.
3958
+ :param str id: Ocid of the Reserved IP/Public Ip created with VCN.
3722
3959
  """
3723
3960
  pulumi.set(__self__, "id", id)
3724
3961
 
@@ -3726,7 +3963,7 @@ class GetLoadBalancersLoadBalancerIpAddressDetailReservedIpResult(dict):
3726
3963
  @pulumi.getter
3727
3964
  def id(self) -> str:
3728
3965
  """
3729
- Ocid of the pre-created public IP. That should be attahed to this load balancer.
3966
+ Ocid of the Reserved IP/Public Ip created with VCN.
3730
3967
  """
3731
3968
  return pulumi.get(self, "id")
3732
3969
 
@@ -3736,7 +3973,7 @@ class GetLoadBalancersLoadBalancerReservedIpResult(dict):
3736
3973
  def __init__(__self__, *,
3737
3974
  id: str):
3738
3975
  """
3739
- :param str id: Ocid of the pre-created public IP. That should be attahed to this load balancer.
3976
+ :param str id: Ocid of the Reserved IP/Public Ip created with VCN.
3740
3977
  """
3741
3978
  pulumi.set(__self__, "id", id)
3742
3979
 
@@ -3744,7 +3981,7 @@ class GetLoadBalancersLoadBalancerReservedIpResult(dict):
3744
3981
  @pulumi.getter
3745
3982
  def id(self) -> str:
3746
3983
  """
3747
- Ocid of the pre-created public IP. That should be attahed to this load balancer.
3984
+ Ocid of the Reserved IP/Public Ip created with VCN.
3748
3985
  """
3749
3986
  return pulumi.get(self, "id")
3750
3987
 
@@ -4039,9 +4276,11 @@ class GetRuleSetItemResult(dict):
4039
4276
  allowed_methods: Sequence[str],
4040
4277
  are_invalid_characters_allowed: bool,
4041
4278
  conditions: Sequence['outputs.GetRuleSetItemConditionResult'],
4279
+ default_max_connections: int,
4042
4280
  description: str,
4043
4281
  header: str,
4044
4282
  http_large_header_size_in_kb: int,
4283
+ ip_max_connections: Sequence['outputs.GetRuleSetItemIpMaxConnectionResult'],
4045
4284
  prefix: str,
4046
4285
  redirect_uris: Sequence['outputs.GetRuleSetItemRedirectUriResult'],
4047
4286
  response_code: int,
@@ -4049,12 +4288,14 @@ class GetRuleSetItemResult(dict):
4049
4288
  suffix: str,
4050
4289
  value: str):
4051
4290
  """
4052
- :param str action: The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
4291
+ :param str action: The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `IP_BASED_MAX_CONNECTIONS`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
4053
4292
  :param Sequence[str] allowed_methods: The list of HTTP methods allowed for this listener.
4054
4293
  :param bool are_invalid_characters_allowed: Indicates whether or not invalid characters in client header fields will be allowed. Valid names are composed of English letters, digits, hyphens and underscores. If "true", invalid characters are allowed in the HTTP header. If "false", invalid characters are not allowed in the HTTP header
4294
+ :param int default_max_connections: The maximum number of connections that the any IP can make to a listener unless the IP is mentioned in maxConnections. If no defaultMaxConnections is specified the default is unlimited.
4055
4295
  :param str description: A brief description of the access control rule. Avoid entering confidential information.
4056
4296
  :param str header: A header name that conforms to RFC 7230. Example: `example_header_name`
4057
4297
  :param int http_large_header_size_in_kb: The maximum size of each buffer used for reading http client request header. This value indicates the maximum size allowed for each buffer. The allowed values for buffer size are 8, 16, 32 and 64.
4298
+ :param Sequence['GetRuleSetItemIpMaxConnectionArgs'] ip_max_connections: An array of IPs that have a maxConnection setting different than the default and what that maxConnection setting is
4058
4299
  :param str prefix: A string to prepend to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:
4059
4300
  * value cannot contain `$`
4060
4301
  * value cannot contain patterns like `{variable_name}`. They are reserved for future extensions. Currently, such values are invalid.
@@ -4072,9 +4313,11 @@ class GetRuleSetItemResult(dict):
4072
4313
  pulumi.set(__self__, "allowed_methods", allowed_methods)
4073
4314
  pulumi.set(__self__, "are_invalid_characters_allowed", are_invalid_characters_allowed)
4074
4315
  pulumi.set(__self__, "conditions", conditions)
4316
+ pulumi.set(__self__, "default_max_connections", default_max_connections)
4075
4317
  pulumi.set(__self__, "description", description)
4076
4318
  pulumi.set(__self__, "header", header)
4077
4319
  pulumi.set(__self__, "http_large_header_size_in_kb", http_large_header_size_in_kb)
4320
+ pulumi.set(__self__, "ip_max_connections", ip_max_connections)
4078
4321
  pulumi.set(__self__, "prefix", prefix)
4079
4322
  pulumi.set(__self__, "redirect_uris", redirect_uris)
4080
4323
  pulumi.set(__self__, "response_code", response_code)
@@ -4086,7 +4329,7 @@ class GetRuleSetItemResult(dict):
4086
4329
  @pulumi.getter
4087
4330
  def action(self) -> str:
4088
4331
  """
4089
- The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
4332
+ The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `IP_BASED_MAX_CONNECTIONS`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
4090
4333
  """
4091
4334
  return pulumi.get(self, "action")
4092
4335
 
@@ -4111,6 +4354,14 @@ class GetRuleSetItemResult(dict):
4111
4354
  def conditions(self) -> Sequence['outputs.GetRuleSetItemConditionResult']:
4112
4355
  return pulumi.get(self, "conditions")
4113
4356
 
4357
+ @property
4358
+ @pulumi.getter(name="defaultMaxConnections")
4359
+ def default_max_connections(self) -> int:
4360
+ """
4361
+ The maximum number of connections that the any IP can make to a listener unless the IP is mentioned in maxConnections. If no defaultMaxConnections is specified the default is unlimited.
4362
+ """
4363
+ return pulumi.get(self, "default_max_connections")
4364
+
4114
4365
  @property
4115
4366
  @pulumi.getter
4116
4367
  def description(self) -> str:
@@ -4135,6 +4386,14 @@ class GetRuleSetItemResult(dict):
4135
4386
  """
4136
4387
  return pulumi.get(self, "http_large_header_size_in_kb")
4137
4388
 
4389
+ @property
4390
+ @pulumi.getter(name="ipMaxConnections")
4391
+ def ip_max_connections(self) -> Sequence['outputs.GetRuleSetItemIpMaxConnectionResult']:
4392
+ """
4393
+ An array of IPs that have a maxConnection setting different than the default and what that maxConnection setting is
4394
+ """
4395
+ return pulumi.get(self, "ip_max_connections")
4396
+
4138
4397
  @property
4139
4398
  @pulumi.getter
4140
4399
  def prefix(self) -> str:
@@ -4244,6 +4503,35 @@ class GetRuleSetItemConditionResult(dict):
4244
4503
  return pulumi.get(self, "operator")
4245
4504
 
4246
4505
 
4506
+ @pulumi.output_type
4507
+ class GetRuleSetItemIpMaxConnectionResult(dict):
4508
+ def __init__(__self__, *,
4509
+ ip_addresses: Sequence[str],
4510
+ max_connections: int):
4511
+ """
4512
+ :param Sequence[str] ip_addresses: Each element in the list should be valid IPv4 or IPv6 CIDR Block address. Example: '["129.213.176.0/24", "150.136.187.0/24", "2002::1234:abcd:ffff:c0a8:101/64"]'
4513
+ :param int max_connections: The maximum number of simultaneous connections that the specified IPs can make to the Listener. IPs without a maxConnections setting can make either defaultMaxConnections simultaneous connections to a listener or, if no defaultMaxConnections is specified, an unlimited number of simultaneous connections to a listener.
4514
+ """
4515
+ pulumi.set(__self__, "ip_addresses", ip_addresses)
4516
+ pulumi.set(__self__, "max_connections", max_connections)
4517
+
4518
+ @property
4519
+ @pulumi.getter(name="ipAddresses")
4520
+ def ip_addresses(self) -> Sequence[str]:
4521
+ """
4522
+ Each element in the list should be valid IPv4 or IPv6 CIDR Block address. Example: '["129.213.176.0/24", "150.136.187.0/24", "2002::1234:abcd:ffff:c0a8:101/64"]'
4523
+ """
4524
+ return pulumi.get(self, "ip_addresses")
4525
+
4526
+ @property
4527
+ @pulumi.getter(name="maxConnections")
4528
+ def max_connections(self) -> int:
4529
+ """
4530
+ The maximum number of simultaneous connections that the specified IPs can make to the Listener. IPs without a maxConnections setting can make either defaultMaxConnections simultaneous connections to a listener or, if no defaultMaxConnections is specified, an unlimited number of simultaneous connections to a listener.
4531
+ """
4532
+ return pulumi.get(self, "max_connections")
4533
+
4534
+
4247
4535
  @pulumi.output_type
4248
4536
  class GetRuleSetItemRedirectUriResult(dict):
4249
4537
  def __init__(__self__, *,
@@ -4400,9 +4688,11 @@ class GetRuleSetsRuleSetItemResult(dict):
4400
4688
  allowed_methods: Sequence[str],
4401
4689
  are_invalid_characters_allowed: bool,
4402
4690
  conditions: Sequence['outputs.GetRuleSetsRuleSetItemConditionResult'],
4691
+ default_max_connections: int,
4403
4692
  description: str,
4404
4693
  header: str,
4405
4694
  http_large_header_size_in_kb: int,
4695
+ ip_max_connections: Sequence['outputs.GetRuleSetsRuleSetItemIpMaxConnectionResult'],
4406
4696
  prefix: str,
4407
4697
  redirect_uris: Sequence['outputs.GetRuleSetsRuleSetItemRedirectUriResult'],
4408
4698
  response_code: int,
@@ -4410,12 +4700,14 @@ class GetRuleSetsRuleSetItemResult(dict):
4410
4700
  suffix: str,
4411
4701
  value: str):
4412
4702
  """
4413
- :param str action: The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
4703
+ :param str action: The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `IP_BASED_MAX_CONNECTIONS`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
4414
4704
  :param Sequence[str] allowed_methods: The list of HTTP methods allowed for this listener.
4415
4705
  :param bool are_invalid_characters_allowed: Indicates whether or not invalid characters in client header fields will be allowed. Valid names are composed of English letters, digits, hyphens and underscores. If "true", invalid characters are allowed in the HTTP header. If "false", invalid characters are not allowed in the HTTP header
4706
+ :param int default_max_connections: The maximum number of connections that the any IP can make to a listener unless the IP is mentioned in maxConnections. If no defaultMaxConnections is specified the default is unlimited.
4416
4707
  :param str description: A brief description of the access control rule. Avoid entering confidential information.
4417
4708
  :param str header: A header name that conforms to RFC 7230. Example: `example_header_name`
4418
4709
  :param int http_large_header_size_in_kb: The maximum size of each buffer used for reading http client request header. This value indicates the maximum size allowed for each buffer. The allowed values for buffer size are 8, 16, 32 and 64.
4710
+ :param Sequence['GetRuleSetsRuleSetItemIpMaxConnectionArgs'] ip_max_connections: An array of IPs that have a maxConnection setting different than the default and what that maxConnection setting is
4419
4711
  :param str prefix: A string to prepend to the header value. The resulting header value must still conform to RFC 7230. With the following exceptions:
4420
4712
  * value cannot contain `$`
4421
4713
  * value cannot contain patterns like `{variable_name}`. They are reserved for future extensions. Currently, such values are invalid.
@@ -4433,9 +4725,11 @@ class GetRuleSetsRuleSetItemResult(dict):
4433
4725
  pulumi.set(__self__, "allowed_methods", allowed_methods)
4434
4726
  pulumi.set(__self__, "are_invalid_characters_allowed", are_invalid_characters_allowed)
4435
4727
  pulumi.set(__self__, "conditions", conditions)
4728
+ pulumi.set(__self__, "default_max_connections", default_max_connections)
4436
4729
  pulumi.set(__self__, "description", description)
4437
4730
  pulumi.set(__self__, "header", header)
4438
4731
  pulumi.set(__self__, "http_large_header_size_in_kb", http_large_header_size_in_kb)
4732
+ pulumi.set(__self__, "ip_max_connections", ip_max_connections)
4439
4733
  pulumi.set(__self__, "prefix", prefix)
4440
4734
  pulumi.set(__self__, "redirect_uris", redirect_uris)
4441
4735
  pulumi.set(__self__, "response_code", response_code)
@@ -4447,7 +4741,7 @@ class GetRuleSetsRuleSetItemResult(dict):
4447
4741
  @pulumi.getter
4448
4742
  def action(self) -> str:
4449
4743
  """
4450
- The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
4744
+ The action can be one of these values: `ADD_HTTP_REQUEST_HEADER`, `ADD_HTTP_RESPONSE_HEADER`, `ALLOW`, `CONTROL_ACCESS_USING_HTTP_METHODS`, `EXTEND_HTTP_REQUEST_HEADER_VALUE`, `EXTEND_HTTP_RESPONSE_HEADER_VALUE`, `HTTP_HEADER`, `IP_BASED_MAX_CONNECTIONS`, `REDIRECT`, `REMOVE_HTTP_REQUEST_HEADER`, `REMOVE_HTTP_RESPONSE_HEADER`
4451
4745
  """
4452
4746
  return pulumi.get(self, "action")
4453
4747
 
@@ -4472,6 +4766,14 @@ class GetRuleSetsRuleSetItemResult(dict):
4472
4766
  def conditions(self) -> Sequence['outputs.GetRuleSetsRuleSetItemConditionResult']:
4473
4767
  return pulumi.get(self, "conditions")
4474
4768
 
4769
+ @property
4770
+ @pulumi.getter(name="defaultMaxConnections")
4771
+ def default_max_connections(self) -> int:
4772
+ """
4773
+ The maximum number of connections that the any IP can make to a listener unless the IP is mentioned in maxConnections. If no defaultMaxConnections is specified the default is unlimited.
4774
+ """
4775
+ return pulumi.get(self, "default_max_connections")
4776
+
4475
4777
  @property
4476
4778
  @pulumi.getter
4477
4779
  def description(self) -> str:
@@ -4496,6 +4798,14 @@ class GetRuleSetsRuleSetItemResult(dict):
4496
4798
  """
4497
4799
  return pulumi.get(self, "http_large_header_size_in_kb")
4498
4800
 
4801
+ @property
4802
+ @pulumi.getter(name="ipMaxConnections")
4803
+ def ip_max_connections(self) -> Sequence['outputs.GetRuleSetsRuleSetItemIpMaxConnectionResult']:
4804
+ """
4805
+ An array of IPs that have a maxConnection setting different than the default and what that maxConnection setting is
4806
+ """
4807
+ return pulumi.get(self, "ip_max_connections")
4808
+
4499
4809
  @property
4500
4810
  @pulumi.getter
4501
4811
  def prefix(self) -> str:
@@ -4605,6 +4915,35 @@ class GetRuleSetsRuleSetItemConditionResult(dict):
4605
4915
  return pulumi.get(self, "operator")
4606
4916
 
4607
4917
 
4918
+ @pulumi.output_type
4919
+ class GetRuleSetsRuleSetItemIpMaxConnectionResult(dict):
4920
+ def __init__(__self__, *,
4921
+ ip_addresses: Sequence[str],
4922
+ max_connections: int):
4923
+ """
4924
+ :param Sequence[str] ip_addresses: Each element in the list should be valid IPv4 or IPv6 CIDR Block address. Example: '["129.213.176.0/24", "150.136.187.0/24", "2002::1234:abcd:ffff:c0a8:101/64"]'
4925
+ :param int max_connections: The maximum number of simultaneous connections that the specified IPs can make to the Listener. IPs without a maxConnections setting can make either defaultMaxConnections simultaneous connections to a listener or, if no defaultMaxConnections is specified, an unlimited number of simultaneous connections to a listener.
4926
+ """
4927
+ pulumi.set(__self__, "ip_addresses", ip_addresses)
4928
+ pulumi.set(__self__, "max_connections", max_connections)
4929
+
4930
+ @property
4931
+ @pulumi.getter(name="ipAddresses")
4932
+ def ip_addresses(self) -> Sequence[str]:
4933
+ """
4934
+ Each element in the list should be valid IPv4 or IPv6 CIDR Block address. Example: '["129.213.176.0/24", "150.136.187.0/24", "2002::1234:abcd:ffff:c0a8:101/64"]'
4935
+ """
4936
+ return pulumi.get(self, "ip_addresses")
4937
+
4938
+ @property
4939
+ @pulumi.getter(name="maxConnections")
4940
+ def max_connections(self) -> int:
4941
+ """
4942
+ The maximum number of simultaneous connections that the specified IPs can make to the Listener. IPs without a maxConnections setting can make either defaultMaxConnections simultaneous connections to a listener or, if no defaultMaxConnections is specified, an unlimited number of simultaneous connections to a listener.
4943
+ """
4944
+ return pulumi.get(self, "max_connections")
4945
+
4946
+
4608
4947
  @pulumi.output_type
4609
4948
  class GetRuleSetsRuleSetItemRedirectUriResult(dict):
4610
4949
  def __init__(__self__, *,