pulumi-snowflake 0.50.2a1709892015__py3-none-any.whl → 1.2.0a1736835738__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.

Potentially problematic release.


This version of pulumi-snowflake might be problematic. Click here for more details.

Files changed (182) hide show
  1. pulumi_snowflake/__init__.py +224 -172
  2. pulumi_snowflake/_inputs.py +52854 -1662
  3. pulumi_snowflake/_utilities.py +41 -5
  4. pulumi_snowflake/account.py +188 -214
  5. pulumi_snowflake/account_authentication_policy_attachment.py +149 -0
  6. pulumi_snowflake/account_parameter.py +21 -44
  7. pulumi_snowflake/account_password_policy_attachment.py +7 -28
  8. pulumi_snowflake/account_role.py +250 -0
  9. pulumi_snowflake/alert.py +38 -43
  10. pulumi_snowflake/api_authentication_integration_with_authorization_code_grant.py +704 -0
  11. pulumi_snowflake/api_authentication_integration_with_client_credentials.py +657 -0
  12. pulumi_snowflake/api_authentication_integration_with_jwt_bearer.py +692 -0
  13. pulumi_snowflake/api_integration.py +35 -50
  14. pulumi_snowflake/authentication_policy.py +622 -0
  15. pulumi_snowflake/config/__init__.pyi +76 -99
  16. pulumi_snowflake/config/outputs.py +5 -0
  17. pulumi_snowflake/config/vars.py +93 -124
  18. pulumi_snowflake/cortex_search_service.py +596 -0
  19. pulumi_snowflake/database.py +819 -209
  20. pulumi_snowflake/database_role.py +81 -40
  21. pulumi_snowflake/dynamic_table.py +44 -47
  22. pulumi_snowflake/email_notification_integration.py +35 -26
  23. pulumi_snowflake/{unsafe_execute.py → execute.py} +36 -139
  24. pulumi_snowflake/external_function.py +54 -71
  25. pulumi_snowflake/external_oauth_integration.py +593 -538
  26. pulumi_snowflake/external_table.py +67 -86
  27. pulumi_snowflake/external_volume.py +382 -0
  28. pulumi_snowflake/failover_group.py +59 -96
  29. pulumi_snowflake/file_format.py +33 -24
  30. pulumi_snowflake/function_java.py +1211 -0
  31. pulumi_snowflake/function_javascript.py +882 -0
  32. pulumi_snowflake/function_python.py +1212 -0
  33. pulumi_snowflake/function_scala.py +1212 -0
  34. pulumi_snowflake/function_sql.py +835 -0
  35. pulumi_snowflake/get_account_roles.py +129 -0
  36. pulumi_snowflake/get_accounts.py +53 -22
  37. pulumi_snowflake/get_alerts.py +22 -5
  38. pulumi_snowflake/get_connections.py +109 -0
  39. pulumi_snowflake/get_cortex_search_services.py +216 -0
  40. pulumi_snowflake/get_current_account.py +24 -9
  41. pulumi_snowflake/get_current_role.py +14 -7
  42. pulumi_snowflake/get_database.py +25 -5
  43. pulumi_snowflake/get_database_role.py +162 -0
  44. pulumi_snowflake/get_database_roles.py +79 -43
  45. pulumi_snowflake/get_databases.py +91 -69
  46. pulumi_snowflake/get_dynamic_tables.py +36 -19
  47. pulumi_snowflake/get_external_functions.py +28 -5
  48. pulumi_snowflake/get_external_tables.py +28 -5
  49. pulumi_snowflake/get_failover_groups.py +18 -7
  50. pulumi_snowflake/get_file_formats.py +28 -5
  51. pulumi_snowflake/get_functions.py +28 -5
  52. pulumi_snowflake/get_grants.py +207 -80
  53. pulumi_snowflake/get_masking_policies.py +91 -47
  54. pulumi_snowflake/get_materialized_views.py +28 -5
  55. pulumi_snowflake/get_network_policies.py +129 -0
  56. pulumi_snowflake/get_parameters.py +38 -11
  57. pulumi_snowflake/get_pipes.py +28 -5
  58. pulumi_snowflake/get_procedures.py +28 -5
  59. pulumi_snowflake/get_resource_monitors.py +37 -20
  60. pulumi_snowflake/get_row_access_policies.py +91 -47
  61. pulumi_snowflake/get_schemas.py +145 -37
  62. pulumi_snowflake/get_secrets.py +200 -0
  63. pulumi_snowflake/get_security_integrations.py +129 -0
  64. pulumi_snowflake/get_sequences.py +28 -5
  65. pulumi_snowflake/get_shares.py +18 -5
  66. pulumi_snowflake/get_stages.py +28 -5
  67. pulumi_snowflake/get_storage_integrations.py +16 -5
  68. pulumi_snowflake/get_streamlits.py +170 -0
  69. pulumi_snowflake/get_streams.py +114 -50
  70. pulumi_snowflake/get_system_generate_scim_access_token.py +18 -5
  71. pulumi_snowflake/get_system_get_aws_sns_iam_policy.py +32 -7
  72. pulumi_snowflake/get_system_get_private_link_config.py +121 -6
  73. pulumi_snowflake/get_system_get_snowflake_platform_info.py +15 -7
  74. pulumi_snowflake/get_tables.py +28 -5
  75. pulumi_snowflake/get_tags.py +130 -0
  76. pulumi_snowflake/get_tasks.py +134 -50
  77. pulumi_snowflake/get_users.py +116 -40
  78. pulumi_snowflake/get_views.py +114 -50
  79. pulumi_snowflake/get_warehouses.py +79 -22
  80. pulumi_snowflake/grant_account_role.py +28 -61
  81. pulumi_snowflake/grant_application_role.py +257 -0
  82. pulumi_snowflake/grant_database_role.py +35 -108
  83. pulumi_snowflake/grant_ownership.py +382 -0
  84. pulumi_snowflake/grant_privileges_to_account_role.py +42 -78
  85. pulumi_snowflake/grant_privileges_to_database_role.py +37 -223
  86. pulumi_snowflake/grant_privileges_to_share.py +96 -44
  87. pulumi_snowflake/legacy_service_user.py +3670 -0
  88. pulumi_snowflake/managed_account.py +42 -9
  89. pulumi_snowflake/masking_policy.py +213 -306
  90. pulumi_snowflake/materialized_view.py +62 -67
  91. pulumi_snowflake/network_policy.py +217 -57
  92. pulumi_snowflake/network_policy_attachment.py +7 -32
  93. pulumi_snowflake/network_rule.py +473 -0
  94. pulumi_snowflake/notification_integration.py +51 -82
  95. pulumi_snowflake/oauth_integration_for_custom_clients.py +906 -0
  96. pulumi_snowflake/{oauth_integration.py → oauth_integration_for_partner_applications.py} +191 -188
  97. pulumi_snowflake/object_parameter.py +12 -99
  98. pulumi_snowflake/outputs.py +49200 -2928
  99. pulumi_snowflake/password_policy.py +41 -28
  100. pulumi_snowflake/pipe.py +33 -0
  101. pulumi_snowflake/primary_connection.py +330 -0
  102. pulumi_snowflake/procedure_java.py +1273 -0
  103. pulumi_snowflake/procedure_javascript.py +895 -0
  104. pulumi_snowflake/procedure_python.py +1226 -0
  105. pulumi_snowflake/procedure_scala.py +1273 -0
  106. pulumi_snowflake/procedure_sql.py +895 -0
  107. pulumi_snowflake/provider.py +378 -613
  108. pulumi_snowflake/pulumi-plugin.json +2 -1
  109. pulumi_snowflake/resource_monitor.py +118 -323
  110. pulumi_snowflake/row_access_policy.py +200 -145
  111. pulumi_snowflake/{saml_integration.py → saml2_integration.py} +356 -295
  112. pulumi_snowflake/schema.py +949 -174
  113. pulumi_snowflake/scim_integration.py +286 -105
  114. pulumi_snowflake/secondary_connection.py +339 -0
  115. pulumi_snowflake/secondary_database.py +1080 -0
  116. pulumi_snowflake/secret_with_authorization_code_grant.py +548 -0
  117. pulumi_snowflake/secret_with_basic_authentication.py +500 -0
  118. pulumi_snowflake/secret_with_client_credentials.py +511 -0
  119. pulumi_snowflake/secret_with_generic_string.py +452 -0
  120. pulumi_snowflake/sequence.py +9 -30
  121. pulumi_snowflake/service_user.py +3585 -0
  122. pulumi_snowflake/share.py +35 -26
  123. pulumi_snowflake/shared_database.py +939 -0
  124. pulumi_snowflake/stage.py +95 -80
  125. pulumi_snowflake/storage_integration.py +48 -2
  126. pulumi_snowflake/stream_on_directory_table.py +517 -0
  127. pulumi_snowflake/stream_on_external_table.py +632 -0
  128. pulumi_snowflake/stream_on_table.py +666 -0
  129. pulumi_snowflake/stream_on_view.py +666 -0
  130. pulumi_snowflake/streamlit.py +671 -0
  131. pulumi_snowflake/table.py +86 -93
  132. pulumi_snowflake/table_column_masking_policy_application.py +7 -14
  133. pulumi_snowflake/table_constraint.py +29 -168
  134. pulumi_snowflake/tag.py +142 -70
  135. pulumi_snowflake/tag_association.py +40 -211
  136. pulumi_snowflake/task.py +3048 -414
  137. pulumi_snowflake/user.py +3351 -380
  138. pulumi_snowflake/user_authentication_policy_attachment.py +197 -0
  139. pulumi_snowflake/user_password_policy_attachment.py +7 -6
  140. pulumi_snowflake/user_public_keys.py +5 -0
  141. pulumi_snowflake/view.py +466 -211
  142. pulumi_snowflake/warehouse.py +184 -164
  143. {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/METADATA +7 -6
  144. pulumi_snowflake-1.2.0a1736835738.dist-info/RECORD +148 -0
  145. {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/WHEEL +1 -1
  146. pulumi_snowflake/account_grant.py +0 -339
  147. pulumi_snowflake/database_grant.py +0 -491
  148. pulumi_snowflake/external_table_grant.py +0 -686
  149. pulumi_snowflake/failover_group_grant.py +0 -388
  150. pulumi_snowflake/file_format_grant.py +0 -631
  151. pulumi_snowflake/function.py +0 -868
  152. pulumi_snowflake/function_grant.py +0 -741
  153. pulumi_snowflake/get_role.py +0 -117
  154. pulumi_snowflake/get_roles.py +0 -116
  155. pulumi_snowflake/grant_privileges_to_role.py +0 -667
  156. pulumi_snowflake/integration_grant.py +0 -436
  157. pulumi_snowflake/masking_policy_grant.py +0 -538
  158. pulumi_snowflake/materialized_view_grant.py +0 -685
  159. pulumi_snowflake/pipe_grant.py +0 -583
  160. pulumi_snowflake/procedure.py +0 -883
  161. pulumi_snowflake/procedure_grant.py +0 -741
  162. pulumi_snowflake/resource_monitor_grant.py +0 -383
  163. pulumi_snowflake/role.py +0 -269
  164. pulumi_snowflake/role_grants.py +0 -348
  165. pulumi_snowflake/role_ownership_grant.py +0 -334
  166. pulumi_snowflake/row_access_policy_grant.py +0 -536
  167. pulumi_snowflake/schema_grant.py +0 -643
  168. pulumi_snowflake/sequence_grant.py +0 -631
  169. pulumi_snowflake/session_parameter.py +0 -328
  170. pulumi_snowflake/stage_grant.py +0 -631
  171. pulumi_snowflake/stream.py +0 -610
  172. pulumi_snowflake/stream_grant.py +0 -631
  173. pulumi_snowflake/table_grant.py +0 -673
  174. pulumi_snowflake/tag_grant.py +0 -528
  175. pulumi_snowflake/tag_masking_policy_association.py +0 -210
  176. pulumi_snowflake/task_grant.py +0 -631
  177. pulumi_snowflake/user_grant.py +0 -390
  178. pulumi_snowflake/user_ownership_grant.py +0 -286
  179. pulumi_snowflake/view_grant.py +0 -701
  180. pulumi_snowflake/warehouse_grant.py +0 -436
  181. pulumi_snowflake-0.50.2a1709892015.dist-info/RECORD +0 -136
  182. {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/top_level.txt +0 -0
@@ -4,10 +4,17 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
11
18
 
12
19
  __all__ = ['ResourceMonitorArgs', 'ResourceMonitor']
13
20
 
@@ -20,28 +27,20 @@ class ResourceMonitorArgs:
20
27
  name: Optional[pulumi.Input[str]] = None,
21
28
  notify_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
22
29
  notify_users: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
23
- set_for_account: Optional[pulumi.Input[bool]] = None,
24
30
  start_timestamp: Optional[pulumi.Input[str]] = None,
25
31
  suspend_immediate_trigger: Optional[pulumi.Input[int]] = None,
26
- suspend_immediate_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
27
- suspend_trigger: Optional[pulumi.Input[int]] = None,
28
- suspend_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
29
- warehouses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
32
+ suspend_trigger: Optional[pulumi.Input[int]] = None):
30
33
  """
31
34
  The set of arguments for constructing a ResourceMonitor resource.
32
- :param pulumi.Input[int] credit_quota: The number of credits allocated monthly to the resource monitor.
35
+ :param pulumi.Input[int] credit_quota: The number of credits allocated to the resource monitor per frequency interval. When total usage for all warehouses assigned to the monitor reaches this number for the current frequency interval, the resource monitor is considered to be at 100% of quota.
33
36
  :param pulumi.Input[str] end_timestamp: The date and time when the resource monitor suspends the assigned warehouses.
34
- :param pulumi.Input[str] frequency: The frequency interval at which the credit usage resets to 0. If you set a frequency for a resource monitor, you must also set START_TIMESTAMP.
35
- :param pulumi.Input[str] name: Identifier for the resource monitor; must be unique for your account.
36
- :param pulumi.Input[Sequence[pulumi.Input[int]]] notify_triggers: A list of percentage thresholds at which to send an alert to subscribed users.
37
- :param pulumi.Input[Sequence[pulumi.Input[str]]] notify_users: Specifies the list of users to receive email notifications on resource monitors.
38
- :param pulumi.Input[bool] set_for_account: Specifies whether the resource monitor should be applied globally to your Snowflake account (defaults to false).
39
- :param pulumi.Input[str] start_timestamp: The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses.
40
- :param pulumi.Input[int] suspend_immediate_trigger: The number that represents the percentage threshold at which to immediately suspend all warehouses.
41
- :param pulumi.Input[Sequence[pulumi.Input[int]]] suspend_immediate_triggers: A list of percentage thresholds at which to suspend all warehouses.
42
- :param pulumi.Input[int] suspend_trigger: The number that represents the percentage threshold at which to suspend all warehouses.
43
- :param pulumi.Input[Sequence[pulumi.Input[int]]] suspend_triggers: A list of percentage thresholds at which to suspend all warehouses.
44
- :param pulumi.Input[Sequence[pulumi.Input[str]]] warehouses: A list of warehouses to apply the resource monitor to.
37
+ :param pulumi.Input[str] frequency: The frequency interval at which the credit usage resets to 0. Valid values are (case-insensitive): `MONTHLY` | `DAILY` | `WEEKLY` | `YEARLY` | `NEVER`. If you set a `frequency` for a resource monitor, you must also set `start_timestamp`. If you specify `NEVER` for the frequency, the credit usage for the warehouse does not reset. After removing this field from the config, the previously set value will be preserved on the Snowflake side, not the default value. That's due to Snowflake limitation and the lack of unset functionality for this parameter.
38
+ :param pulumi.Input[str] name: Identifier for the resource monitor; must be unique for your account. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
39
+ :param pulumi.Input[Sequence[pulumi.Input[int]]] notify_triggers: Specifies a list of percentages of the credit quota. After reaching any of the values the users passed in the notify_users field will be notified (to receive the notification they should have notifications enabled). Values over 100 are supported.
40
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] notify_users: Specifies the list of users (their identifiers) to receive email notifications on resource monitors. For more information about this resource, see docs.
41
+ :param pulumi.Input[str] start_timestamp: The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses. If you set a `start_timestamp` for a resource monitor, you must also set `frequency`. After removing this field from the config, the previously set value will be preserved on the Snowflake side, not the default value. That's due to Snowflake limitation and the lack of unset functionality for this parameter.
42
+ :param pulumi.Input[int] suspend_immediate_trigger: Represents a numeric value specified as a percentage of the credit quota. Values over 100 are supported. After reaching this value, all assigned warehouses immediately cancel any currently running queries or statements. In addition, this action sends a notification to all users who have enabled notifications for themselves.
43
+ :param pulumi.Input[int] suspend_trigger: Represents a numeric value specified as a percentage of the credit quota. Values over 100 are supported. After reaching this value, all assigned warehouses while allowing currently running queries to complete will be suspended. No new queries can be executed by the warehouses until the credit quota for the resource monitor is increased. In addition, this action sends a notification to all users who have enabled notifications for themselves.
45
44
  """
46
45
  if credit_quota is not None:
47
46
  pulumi.set(__self__, "credit_quota", credit_quota)
@@ -55,32 +54,18 @@ class ResourceMonitorArgs:
55
54
  pulumi.set(__self__, "notify_triggers", notify_triggers)
56
55
  if notify_users is not None:
57
56
  pulumi.set(__self__, "notify_users", notify_users)
58
- if set_for_account is not None:
59
- pulumi.set(__self__, "set_for_account", set_for_account)
60
57
  if start_timestamp is not None:
61
58
  pulumi.set(__self__, "start_timestamp", start_timestamp)
62
59
  if suspend_immediate_trigger is not None:
63
60
  pulumi.set(__self__, "suspend_immediate_trigger", suspend_immediate_trigger)
64
- if suspend_immediate_triggers is not None:
65
- warnings.warn("""Use suspend_immediate_trigger instead""", DeprecationWarning)
66
- pulumi.log.warn("""suspend_immediate_triggers is deprecated: Use suspend_immediate_trigger instead""")
67
- if suspend_immediate_triggers is not None:
68
- pulumi.set(__self__, "suspend_immediate_triggers", suspend_immediate_triggers)
69
61
  if suspend_trigger is not None:
70
62
  pulumi.set(__self__, "suspend_trigger", suspend_trigger)
71
- if suspend_triggers is not None:
72
- warnings.warn("""Use suspend_trigger instead""", DeprecationWarning)
73
- pulumi.log.warn("""suspend_triggers is deprecated: Use suspend_trigger instead""")
74
- if suspend_triggers is not None:
75
- pulumi.set(__self__, "suspend_triggers", suspend_triggers)
76
- if warehouses is not None:
77
- pulumi.set(__self__, "warehouses", warehouses)
78
63
 
79
64
  @property
80
65
  @pulumi.getter(name="creditQuota")
81
66
  def credit_quota(self) -> Optional[pulumi.Input[int]]:
82
67
  """
83
- The number of credits allocated monthly to the resource monitor.
68
+ The number of credits allocated to the resource monitor per frequency interval. When total usage for all warehouses assigned to the monitor reaches this number for the current frequency interval, the resource monitor is considered to be at 100% of quota.
84
69
  """
85
70
  return pulumi.get(self, "credit_quota")
86
71
 
@@ -104,7 +89,7 @@ class ResourceMonitorArgs:
104
89
  @pulumi.getter
105
90
  def frequency(self) -> Optional[pulumi.Input[str]]:
106
91
  """
107
- The frequency interval at which the credit usage resets to 0. If you set a frequency for a resource monitor, you must also set START_TIMESTAMP.
92
+ The frequency interval at which the credit usage resets to 0. Valid values are (case-insensitive): `MONTHLY` | `DAILY` | `WEEKLY` | `YEARLY` | `NEVER`. If you set a `frequency` for a resource monitor, you must also set `start_timestamp`. If you specify `NEVER` for the frequency, the credit usage for the warehouse does not reset. After removing this field from the config, the previously set value will be preserved on the Snowflake side, not the default value. That's due to Snowflake limitation and the lack of unset functionality for this parameter.
108
93
  """
109
94
  return pulumi.get(self, "frequency")
110
95
 
@@ -116,7 +101,7 @@ class ResourceMonitorArgs:
116
101
  @pulumi.getter
117
102
  def name(self) -> Optional[pulumi.Input[str]]:
118
103
  """
119
- Identifier for the resource monitor; must be unique for your account.
104
+ Identifier for the resource monitor; must be unique for your account. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
120
105
  """
121
106
  return pulumi.get(self, "name")
122
107
 
@@ -128,7 +113,7 @@ class ResourceMonitorArgs:
128
113
  @pulumi.getter(name="notifyTriggers")
129
114
  def notify_triggers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]:
130
115
  """
131
- A list of percentage thresholds at which to send an alert to subscribed users.
116
+ Specifies a list of percentages of the credit quota. After reaching any of the values the users passed in the notify_users field will be notified (to receive the notification they should have notifications enabled). Values over 100 are supported.
132
117
  """
133
118
  return pulumi.get(self, "notify_triggers")
134
119
 
@@ -140,7 +125,7 @@ class ResourceMonitorArgs:
140
125
  @pulumi.getter(name="notifyUsers")
141
126
  def notify_users(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
142
127
  """
143
- Specifies the list of users to receive email notifications on resource monitors.
128
+ Specifies the list of users (their identifiers) to receive email notifications on resource monitors. For more information about this resource, see docs.
144
129
  """
145
130
  return pulumi.get(self, "notify_users")
146
131
 
@@ -148,23 +133,11 @@ class ResourceMonitorArgs:
148
133
  def notify_users(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
149
134
  pulumi.set(self, "notify_users", value)
150
135
 
151
- @property
152
- @pulumi.getter(name="setForAccount")
153
- def set_for_account(self) -> Optional[pulumi.Input[bool]]:
154
- """
155
- Specifies whether the resource monitor should be applied globally to your Snowflake account (defaults to false).
156
- """
157
- return pulumi.get(self, "set_for_account")
158
-
159
- @set_for_account.setter
160
- def set_for_account(self, value: Optional[pulumi.Input[bool]]):
161
- pulumi.set(self, "set_for_account", value)
162
-
163
136
  @property
164
137
  @pulumi.getter(name="startTimestamp")
165
138
  def start_timestamp(self) -> Optional[pulumi.Input[str]]:
166
139
  """
167
- The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses.
140
+ The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses. If you set a `start_timestamp` for a resource monitor, you must also set `frequency`. After removing this field from the config, the previously set value will be preserved on the Snowflake side, not the default value. That's due to Snowflake limitation and the lack of unset functionality for this parameter.
168
141
  """
169
142
  return pulumi.get(self, "start_timestamp")
170
143
 
@@ -176,7 +149,7 @@ class ResourceMonitorArgs:
176
149
  @pulumi.getter(name="suspendImmediateTrigger")
177
150
  def suspend_immediate_trigger(self) -> Optional[pulumi.Input[int]]:
178
151
  """
179
- The number that represents the percentage threshold at which to immediately suspend all warehouses.
152
+ Represents a numeric value specified as a percentage of the credit quota. Values over 100 are supported. After reaching this value, all assigned warehouses immediately cancel any currently running queries or statements. In addition, this action sends a notification to all users who have enabled notifications for themselves.
180
153
  """
181
154
  return pulumi.get(self, "suspend_immediate_trigger")
182
155
 
@@ -184,26 +157,11 @@ class ResourceMonitorArgs:
184
157
  def suspend_immediate_trigger(self, value: Optional[pulumi.Input[int]]):
185
158
  pulumi.set(self, "suspend_immediate_trigger", value)
186
159
 
187
- @property
188
- @pulumi.getter(name="suspendImmediateTriggers")
189
- def suspend_immediate_triggers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]:
190
- """
191
- A list of percentage thresholds at which to suspend all warehouses.
192
- """
193
- warnings.warn("""Use suspend_immediate_trigger instead""", DeprecationWarning)
194
- pulumi.log.warn("""suspend_immediate_triggers is deprecated: Use suspend_immediate_trigger instead""")
195
-
196
- return pulumi.get(self, "suspend_immediate_triggers")
197
-
198
- @suspend_immediate_triggers.setter
199
- def suspend_immediate_triggers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]):
200
- pulumi.set(self, "suspend_immediate_triggers", value)
201
-
202
160
  @property
203
161
  @pulumi.getter(name="suspendTrigger")
204
162
  def suspend_trigger(self) -> Optional[pulumi.Input[int]]:
205
163
  """
206
- The number that represents the percentage threshold at which to suspend all warehouses.
164
+ Represents a numeric value specified as a percentage of the credit quota. Values over 100 are supported. After reaching this value, all assigned warehouses while allowing currently running queries to complete will be suspended. No new queries can be executed by the warehouses until the credit quota for the resource monitor is increased. In addition, this action sends a notification to all users who have enabled notifications for themselves.
207
165
  """
208
166
  return pulumi.get(self, "suspend_trigger")
209
167
 
@@ -211,33 +169,6 @@ class ResourceMonitorArgs:
211
169
  def suspend_trigger(self, value: Optional[pulumi.Input[int]]):
212
170
  pulumi.set(self, "suspend_trigger", value)
213
171
 
214
- @property
215
- @pulumi.getter(name="suspendTriggers")
216
- def suspend_triggers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]:
217
- """
218
- A list of percentage thresholds at which to suspend all warehouses.
219
- """
220
- warnings.warn("""Use suspend_trigger instead""", DeprecationWarning)
221
- pulumi.log.warn("""suspend_triggers is deprecated: Use suspend_trigger instead""")
222
-
223
- return pulumi.get(self, "suspend_triggers")
224
-
225
- @suspend_triggers.setter
226
- def suspend_triggers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]):
227
- pulumi.set(self, "suspend_triggers", value)
228
-
229
- @property
230
- @pulumi.getter
231
- def warehouses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
232
- """
233
- A list of warehouses to apply the resource monitor to.
234
- """
235
- return pulumi.get(self, "warehouses")
236
-
237
- @warehouses.setter
238
- def warehouses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
239
- pulumi.set(self, "warehouses", value)
240
-
241
172
 
242
173
  @pulumi.input_type
243
174
  class _ResourceMonitorState:
@@ -245,31 +176,27 @@ class _ResourceMonitorState:
245
176
  credit_quota: Optional[pulumi.Input[int]] = None,
246
177
  end_timestamp: Optional[pulumi.Input[str]] = None,
247
178
  frequency: Optional[pulumi.Input[str]] = None,
179
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
248
180
  name: Optional[pulumi.Input[str]] = None,
249
181
  notify_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
250
182
  notify_users: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
251
- set_for_account: Optional[pulumi.Input[bool]] = None,
183
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['ResourceMonitorShowOutputArgs']]]] = None,
252
184
  start_timestamp: Optional[pulumi.Input[str]] = None,
253
185
  suspend_immediate_trigger: Optional[pulumi.Input[int]] = None,
254
- suspend_immediate_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
255
- suspend_trigger: Optional[pulumi.Input[int]] = None,
256
- suspend_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
257
- warehouses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
186
+ suspend_trigger: Optional[pulumi.Input[int]] = None):
258
187
  """
259
188
  Input properties used for looking up and filtering ResourceMonitor resources.
260
- :param pulumi.Input[int] credit_quota: The number of credits allocated monthly to the resource monitor.
189
+ :param pulumi.Input[int] credit_quota: The number of credits allocated to the resource monitor per frequency interval. When total usage for all warehouses assigned to the monitor reaches this number for the current frequency interval, the resource monitor is considered to be at 100% of quota.
261
190
  :param pulumi.Input[str] end_timestamp: The date and time when the resource monitor suspends the assigned warehouses.
262
- :param pulumi.Input[str] frequency: The frequency interval at which the credit usage resets to 0. If you set a frequency for a resource monitor, you must also set START_TIMESTAMP.
263
- :param pulumi.Input[str] name: Identifier for the resource monitor; must be unique for your account.
264
- :param pulumi.Input[Sequence[pulumi.Input[int]]] notify_triggers: A list of percentage thresholds at which to send an alert to subscribed users.
265
- :param pulumi.Input[Sequence[pulumi.Input[str]]] notify_users: Specifies the list of users to receive email notifications on resource monitors.
266
- :param pulumi.Input[bool] set_for_account: Specifies whether the resource monitor should be applied globally to your Snowflake account (defaults to false).
267
- :param pulumi.Input[str] start_timestamp: The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses.
268
- :param pulumi.Input[int] suspend_immediate_trigger: The number that represents the percentage threshold at which to immediately suspend all warehouses.
269
- :param pulumi.Input[Sequence[pulumi.Input[int]]] suspend_immediate_triggers: A list of percentage thresholds at which to suspend all warehouses.
270
- :param pulumi.Input[int] suspend_trigger: The number that represents the percentage threshold at which to suspend all warehouses.
271
- :param pulumi.Input[Sequence[pulumi.Input[int]]] suspend_triggers: A list of percentage thresholds at which to suspend all warehouses.
272
- :param pulumi.Input[Sequence[pulumi.Input[str]]] warehouses: A list of warehouses to apply the resource monitor to.
191
+ :param pulumi.Input[str] frequency: The frequency interval at which the credit usage resets to 0. Valid values are (case-insensitive): `MONTHLY` | `DAILY` | `WEEKLY` | `YEARLY` | `NEVER`. If you set a `frequency` for a resource monitor, you must also set `start_timestamp`. If you specify `NEVER` for the frequency, the credit usage for the warehouse does not reset. After removing this field from the config, the previously set value will be preserved on the Snowflake side, not the default value. That's due to Snowflake limitation and the lack of unset functionality for this parameter.
192
+ :param pulumi.Input[str] fully_qualified_name: Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
193
+ :param pulumi.Input[str] name: Identifier for the resource monitor; must be unique for your account. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
194
+ :param pulumi.Input[Sequence[pulumi.Input[int]]] notify_triggers: Specifies a list of percentages of the credit quota. After reaching any of the values the users passed in the notify_users field will be notified (to receive the notification they should have notifications enabled). Values over 100 are supported.
195
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] notify_users: Specifies the list of users (their identifiers) to receive email notifications on resource monitors. For more information about this resource, see docs.
196
+ :param pulumi.Input[Sequence[pulumi.Input['ResourceMonitorShowOutputArgs']]] show_outputs: Outputs the result of `SHOW RESOURCE MONITORS` for the given resource monitor.
197
+ :param pulumi.Input[str] start_timestamp: The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses. If you set a `start_timestamp` for a resource monitor, you must also set `frequency`. After removing this field from the config, the previously set value will be preserved on the Snowflake side, not the default value. That's due to Snowflake limitation and the lack of unset functionality for this parameter.
198
+ :param pulumi.Input[int] suspend_immediate_trigger: Represents a numeric value specified as a percentage of the credit quota. Values over 100 are supported. After reaching this value, all assigned warehouses immediately cancel any currently running queries or statements. In addition, this action sends a notification to all users who have enabled notifications for themselves.
199
+ :param pulumi.Input[int] suspend_trigger: Represents a numeric value specified as a percentage of the credit quota. Values over 100 are supported. After reaching this value, all assigned warehouses while allowing currently running queries to complete will be suspended. No new queries can be executed by the warehouses until the credit quota for the resource monitor is increased. In addition, this action sends a notification to all users who have enabled notifications for themselves.
273
200
  """
274
201
  if credit_quota is not None:
275
202
  pulumi.set(__self__, "credit_quota", credit_quota)
@@ -277,38 +204,28 @@ class _ResourceMonitorState:
277
204
  pulumi.set(__self__, "end_timestamp", end_timestamp)
278
205
  if frequency is not None:
279
206
  pulumi.set(__self__, "frequency", frequency)
207
+ if fully_qualified_name is not None:
208
+ pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
280
209
  if name is not None:
281
210
  pulumi.set(__self__, "name", name)
282
211
  if notify_triggers is not None:
283
212
  pulumi.set(__self__, "notify_triggers", notify_triggers)
284
213
  if notify_users is not None:
285
214
  pulumi.set(__self__, "notify_users", notify_users)
286
- if set_for_account is not None:
287
- pulumi.set(__self__, "set_for_account", set_for_account)
215
+ if show_outputs is not None:
216
+ pulumi.set(__self__, "show_outputs", show_outputs)
288
217
  if start_timestamp is not None:
289
218
  pulumi.set(__self__, "start_timestamp", start_timestamp)
290
219
  if suspend_immediate_trigger is not None:
291
220
  pulumi.set(__self__, "suspend_immediate_trigger", suspend_immediate_trigger)
292
- if suspend_immediate_triggers is not None:
293
- warnings.warn("""Use suspend_immediate_trigger instead""", DeprecationWarning)
294
- pulumi.log.warn("""suspend_immediate_triggers is deprecated: Use suspend_immediate_trigger instead""")
295
- if suspend_immediate_triggers is not None:
296
- pulumi.set(__self__, "suspend_immediate_triggers", suspend_immediate_triggers)
297
221
  if suspend_trigger is not None:
298
222
  pulumi.set(__self__, "suspend_trigger", suspend_trigger)
299
- if suspend_triggers is not None:
300
- warnings.warn("""Use suspend_trigger instead""", DeprecationWarning)
301
- pulumi.log.warn("""suspend_triggers is deprecated: Use suspend_trigger instead""")
302
- if suspend_triggers is not None:
303
- pulumi.set(__self__, "suspend_triggers", suspend_triggers)
304
- if warehouses is not None:
305
- pulumi.set(__self__, "warehouses", warehouses)
306
223
 
307
224
  @property
308
225
  @pulumi.getter(name="creditQuota")
309
226
  def credit_quota(self) -> Optional[pulumi.Input[int]]:
310
227
  """
311
- The number of credits allocated monthly to the resource monitor.
228
+ The number of credits allocated to the resource monitor per frequency interval. When total usage for all warehouses assigned to the monitor reaches this number for the current frequency interval, the resource monitor is considered to be at 100% of quota.
312
229
  """
313
230
  return pulumi.get(self, "credit_quota")
314
231
 
@@ -332,7 +249,7 @@ class _ResourceMonitorState:
332
249
  @pulumi.getter
333
250
  def frequency(self) -> Optional[pulumi.Input[str]]:
334
251
  """
335
- The frequency interval at which the credit usage resets to 0. If you set a frequency for a resource monitor, you must also set START_TIMESTAMP.
252
+ The frequency interval at which the credit usage resets to 0. Valid values are (case-insensitive): `MONTHLY` | `DAILY` | `WEEKLY` | `YEARLY` | `NEVER`. If you set a `frequency` for a resource monitor, you must also set `start_timestamp`. If you specify `NEVER` for the frequency, the credit usage for the warehouse does not reset. After removing this field from the config, the previously set value will be preserved on the Snowflake side, not the default value. That's due to Snowflake limitation and the lack of unset functionality for this parameter.
336
253
  """
337
254
  return pulumi.get(self, "frequency")
338
255
 
@@ -340,11 +257,23 @@ class _ResourceMonitorState:
340
257
  def frequency(self, value: Optional[pulumi.Input[str]]):
341
258
  pulumi.set(self, "frequency", value)
342
259
 
260
+ @property
261
+ @pulumi.getter(name="fullyQualifiedName")
262
+ def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
263
+ """
264
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
265
+ """
266
+ return pulumi.get(self, "fully_qualified_name")
267
+
268
+ @fully_qualified_name.setter
269
+ def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
270
+ pulumi.set(self, "fully_qualified_name", value)
271
+
343
272
  @property
344
273
  @pulumi.getter
345
274
  def name(self) -> Optional[pulumi.Input[str]]:
346
275
  """
347
- Identifier for the resource monitor; must be unique for your account.
276
+ Identifier for the resource monitor; must be unique for your account. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
348
277
  """
349
278
  return pulumi.get(self, "name")
350
279
 
@@ -356,7 +285,7 @@ class _ResourceMonitorState:
356
285
  @pulumi.getter(name="notifyTriggers")
357
286
  def notify_triggers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]:
358
287
  """
359
- A list of percentage thresholds at which to send an alert to subscribed users.
288
+ Specifies a list of percentages of the credit quota. After reaching any of the values the users passed in the notify_users field will be notified (to receive the notification they should have notifications enabled). Values over 100 are supported.
360
289
  """
361
290
  return pulumi.get(self, "notify_triggers")
362
291
 
@@ -368,7 +297,7 @@ class _ResourceMonitorState:
368
297
  @pulumi.getter(name="notifyUsers")
369
298
  def notify_users(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
370
299
  """
371
- Specifies the list of users to receive email notifications on resource monitors.
300
+ Specifies the list of users (their identifiers) to receive email notifications on resource monitors. For more information about this resource, see docs.
372
301
  """
373
302
  return pulumi.get(self, "notify_users")
374
303
 
@@ -377,22 +306,22 @@ class _ResourceMonitorState:
377
306
  pulumi.set(self, "notify_users", value)
378
307
 
379
308
  @property
380
- @pulumi.getter(name="setForAccount")
381
- def set_for_account(self) -> Optional[pulumi.Input[bool]]:
309
+ @pulumi.getter(name="showOutputs")
310
+ def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ResourceMonitorShowOutputArgs']]]]:
382
311
  """
383
- Specifies whether the resource monitor should be applied globally to your Snowflake account (defaults to false).
312
+ Outputs the result of `SHOW RESOURCE MONITORS` for the given resource monitor.
384
313
  """
385
- return pulumi.get(self, "set_for_account")
314
+ return pulumi.get(self, "show_outputs")
386
315
 
387
- @set_for_account.setter
388
- def set_for_account(self, value: Optional[pulumi.Input[bool]]):
389
- pulumi.set(self, "set_for_account", value)
316
+ @show_outputs.setter
317
+ def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ResourceMonitorShowOutputArgs']]]]):
318
+ pulumi.set(self, "show_outputs", value)
390
319
 
391
320
  @property
392
321
  @pulumi.getter(name="startTimestamp")
393
322
  def start_timestamp(self) -> Optional[pulumi.Input[str]]:
394
323
  """
395
- The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses.
324
+ The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses. If you set a `start_timestamp` for a resource monitor, you must also set `frequency`. After removing this field from the config, the previously set value will be preserved on the Snowflake side, not the default value. That's due to Snowflake limitation and the lack of unset functionality for this parameter.
396
325
  """
397
326
  return pulumi.get(self, "start_timestamp")
398
327
 
@@ -404,7 +333,7 @@ class _ResourceMonitorState:
404
333
  @pulumi.getter(name="suspendImmediateTrigger")
405
334
  def suspend_immediate_trigger(self) -> Optional[pulumi.Input[int]]:
406
335
  """
407
- The number that represents the percentage threshold at which to immediately suspend all warehouses.
336
+ Represents a numeric value specified as a percentage of the credit quota. Values over 100 are supported. After reaching this value, all assigned warehouses immediately cancel any currently running queries or statements. In addition, this action sends a notification to all users who have enabled notifications for themselves.
408
337
  """
409
338
  return pulumi.get(self, "suspend_immediate_trigger")
410
339
 
@@ -412,26 +341,11 @@ class _ResourceMonitorState:
412
341
  def suspend_immediate_trigger(self, value: Optional[pulumi.Input[int]]):
413
342
  pulumi.set(self, "suspend_immediate_trigger", value)
414
343
 
415
- @property
416
- @pulumi.getter(name="suspendImmediateTriggers")
417
- def suspend_immediate_triggers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]:
418
- """
419
- A list of percentage thresholds at which to suspend all warehouses.
420
- """
421
- warnings.warn("""Use suspend_immediate_trigger instead""", DeprecationWarning)
422
- pulumi.log.warn("""suspend_immediate_triggers is deprecated: Use suspend_immediate_trigger instead""")
423
-
424
- return pulumi.get(self, "suspend_immediate_triggers")
425
-
426
- @suspend_immediate_triggers.setter
427
- def suspend_immediate_triggers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]):
428
- pulumi.set(self, "suspend_immediate_triggers", value)
429
-
430
344
  @property
431
345
  @pulumi.getter(name="suspendTrigger")
432
346
  def suspend_trigger(self) -> Optional[pulumi.Input[int]]:
433
347
  """
434
- The number that represents the percentage threshold at which to suspend all warehouses.
348
+ Represents a numeric value specified as a percentage of the credit quota. Values over 100 are supported. After reaching this value, all assigned warehouses while allowing currently running queries to complete will be suspended. No new queries can be executed by the warehouses until the credit quota for the resource monitor is increased. In addition, this action sends a notification to all users who have enabled notifications for themselves.
435
349
  """
436
350
  return pulumi.get(self, "suspend_trigger")
437
351
 
@@ -439,33 +353,6 @@ class _ResourceMonitorState:
439
353
  def suspend_trigger(self, value: Optional[pulumi.Input[int]]):
440
354
  pulumi.set(self, "suspend_trigger", value)
441
355
 
442
- @property
443
- @pulumi.getter(name="suspendTriggers")
444
- def suspend_triggers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]:
445
- """
446
- A list of percentage thresholds at which to suspend all warehouses.
447
- """
448
- warnings.warn("""Use suspend_trigger instead""", DeprecationWarning)
449
- pulumi.log.warn("""suspend_triggers is deprecated: Use suspend_trigger instead""")
450
-
451
- return pulumi.get(self, "suspend_triggers")
452
-
453
- @suspend_triggers.setter
454
- def suspend_triggers(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]]):
455
- pulumi.set(self, "suspend_triggers", value)
456
-
457
- @property
458
- @pulumi.getter
459
- def warehouses(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
460
- """
461
- A list of warehouses to apply the resource monitor to.
462
- """
463
- return pulumi.get(self, "warehouses")
464
-
465
- @warehouses.setter
466
- def warehouses(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
467
- pulumi.set(self, "warehouses", value)
468
-
469
356
 
470
357
  class ResourceMonitor(pulumi.CustomResource):
471
358
  @overload
@@ -478,61 +365,28 @@ class ResourceMonitor(pulumi.CustomResource):
478
365
  name: Optional[pulumi.Input[str]] = None,
479
366
  notify_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
480
367
  notify_users: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
481
- set_for_account: Optional[pulumi.Input[bool]] = None,
482
368
  start_timestamp: Optional[pulumi.Input[str]] = None,
483
369
  suspend_immediate_trigger: Optional[pulumi.Input[int]] = None,
484
- suspend_immediate_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
485
370
  suspend_trigger: Optional[pulumi.Input[int]] = None,
486
- suspend_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
487
- warehouses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
488
371
  __props__=None):
489
372
  """
490
- ## Example Usage
491
-
492
- ```python
493
- import pulumi
494
- import pulumi_snowflake as snowflake
495
-
496
- monitor = snowflake.ResourceMonitor("monitor",
497
- credit_quota=100,
498
- end_timestamp="2021-12-07 00:00",
499
- frequency="DAILY",
500
- notify_triggers=[
501
- 40,
502
- 50,
503
- ],
504
- notify_users=[
505
- "USERONE",
506
- "USERTWO",
507
- ],
508
- start_timestamp="2020-12-07 00:00",
509
- suspend_immediate_triggers=90,
510
- suspend_triggers=50)
511
- ```
512
-
513
373
  ## Import
514
374
 
515
- format is the resource monitor name
516
-
517
375
  ```sh
518
- $ pulumi import snowflake:index/resourceMonitor:ResourceMonitor example 'resourceMonitorName'
376
+ $ pulumi import snowflake:index/resourceMonitor:ResourceMonitor example '"<resource_monitor_name>"'
519
377
  ```
520
378
 
521
379
  :param str resource_name: The name of the resource.
522
380
  :param pulumi.ResourceOptions opts: Options for the resource.
523
- :param pulumi.Input[int] credit_quota: The number of credits allocated monthly to the resource monitor.
381
+ :param pulumi.Input[int] credit_quota: The number of credits allocated to the resource monitor per frequency interval. When total usage for all warehouses assigned to the monitor reaches this number for the current frequency interval, the resource monitor is considered to be at 100% of quota.
524
382
  :param pulumi.Input[str] end_timestamp: The date and time when the resource monitor suspends the assigned warehouses.
525
- :param pulumi.Input[str] frequency: The frequency interval at which the credit usage resets to 0. If you set a frequency for a resource monitor, you must also set START_TIMESTAMP.
526
- :param pulumi.Input[str] name: Identifier for the resource monitor; must be unique for your account.
527
- :param pulumi.Input[Sequence[pulumi.Input[int]]] notify_triggers: A list of percentage thresholds at which to send an alert to subscribed users.
528
- :param pulumi.Input[Sequence[pulumi.Input[str]]] notify_users: Specifies the list of users to receive email notifications on resource monitors.
529
- :param pulumi.Input[bool] set_for_account: Specifies whether the resource monitor should be applied globally to your Snowflake account (defaults to false).
530
- :param pulumi.Input[str] start_timestamp: The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses.
531
- :param pulumi.Input[int] suspend_immediate_trigger: The number that represents the percentage threshold at which to immediately suspend all warehouses.
532
- :param pulumi.Input[Sequence[pulumi.Input[int]]] suspend_immediate_triggers: A list of percentage thresholds at which to suspend all warehouses.
533
- :param pulumi.Input[int] suspend_trigger: The number that represents the percentage threshold at which to suspend all warehouses.
534
- :param pulumi.Input[Sequence[pulumi.Input[int]]] suspend_triggers: A list of percentage thresholds at which to suspend all warehouses.
535
- :param pulumi.Input[Sequence[pulumi.Input[str]]] warehouses: A list of warehouses to apply the resource monitor to.
383
+ :param pulumi.Input[str] frequency: The frequency interval at which the credit usage resets to 0. Valid values are (case-insensitive): `MONTHLY` | `DAILY` | `WEEKLY` | `YEARLY` | `NEVER`. If you set a `frequency` for a resource monitor, you must also set `start_timestamp`. If you specify `NEVER` for the frequency, the credit usage for the warehouse does not reset. After removing this field from the config, the previously set value will be preserved on the Snowflake side, not the default value. That's due to Snowflake limitation and the lack of unset functionality for this parameter.
384
+ :param pulumi.Input[str] name: Identifier for the resource monitor; must be unique for your account. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
385
+ :param pulumi.Input[Sequence[pulumi.Input[int]]] notify_triggers: Specifies a list of percentages of the credit quota. After reaching any of the values the users passed in the notify_users field will be notified (to receive the notification they should have notifications enabled). Values over 100 are supported.
386
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] notify_users: Specifies the list of users (their identifiers) to receive email notifications on resource monitors. For more information about this resource, see docs.
387
+ :param pulumi.Input[str] start_timestamp: The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses. If you set a `start_timestamp` for a resource monitor, you must also set `frequency`. After removing this field from the config, the previously set value will be preserved on the Snowflake side, not the default value. That's due to Snowflake limitation and the lack of unset functionality for this parameter.
388
+ :param pulumi.Input[int] suspend_immediate_trigger: Represents a numeric value specified as a percentage of the credit quota. Values over 100 are supported. After reaching this value, all assigned warehouses immediately cancel any currently running queries or statements. In addition, this action sends a notification to all users who have enabled notifications for themselves.
389
+ :param pulumi.Input[int] suspend_trigger: Represents a numeric value specified as a percentage of the credit quota. Values over 100 are supported. After reaching this value, all assigned warehouses while allowing currently running queries to complete will be suspended. No new queries can be executed by the warehouses until the credit quota for the resource monitor is increased. In addition, this action sends a notification to all users who have enabled notifications for themselves.
536
390
  """
537
391
  ...
538
392
  @overload
@@ -541,35 +395,10 @@ class ResourceMonitor(pulumi.CustomResource):
541
395
  args: Optional[ResourceMonitorArgs] = None,
542
396
  opts: Optional[pulumi.ResourceOptions] = None):
543
397
  """
544
- ## Example Usage
545
-
546
- ```python
547
- import pulumi
548
- import pulumi_snowflake as snowflake
549
-
550
- monitor = snowflake.ResourceMonitor("monitor",
551
- credit_quota=100,
552
- end_timestamp="2021-12-07 00:00",
553
- frequency="DAILY",
554
- notify_triggers=[
555
- 40,
556
- 50,
557
- ],
558
- notify_users=[
559
- "USERONE",
560
- "USERTWO",
561
- ],
562
- start_timestamp="2020-12-07 00:00",
563
- suspend_immediate_triggers=90,
564
- suspend_triggers=50)
565
- ```
566
-
567
398
  ## Import
568
399
 
569
- format is the resource monitor name
570
-
571
400
  ```sh
572
- $ pulumi import snowflake:index/resourceMonitor:ResourceMonitor example 'resourceMonitorName'
401
+ $ pulumi import snowflake:index/resourceMonitor:ResourceMonitor example '"<resource_monitor_name>"'
573
402
  ```
574
403
 
575
404
  :param str resource_name: The name of the resource.
@@ -593,13 +422,9 @@ class ResourceMonitor(pulumi.CustomResource):
593
422
  name: Optional[pulumi.Input[str]] = None,
594
423
  notify_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
595
424
  notify_users: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
596
- set_for_account: Optional[pulumi.Input[bool]] = None,
597
425
  start_timestamp: Optional[pulumi.Input[str]] = None,
598
426
  suspend_immediate_trigger: Optional[pulumi.Input[int]] = None,
599
- suspend_immediate_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
600
427
  suspend_trigger: Optional[pulumi.Input[int]] = None,
601
- suspend_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
602
- warehouses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
603
428
  __props__=None):
604
429
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
605
430
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -615,13 +440,11 @@ class ResourceMonitor(pulumi.CustomResource):
615
440
  __props__.__dict__["name"] = name
616
441
  __props__.__dict__["notify_triggers"] = notify_triggers
617
442
  __props__.__dict__["notify_users"] = notify_users
618
- __props__.__dict__["set_for_account"] = set_for_account
619
443
  __props__.__dict__["start_timestamp"] = start_timestamp
620
444
  __props__.__dict__["suspend_immediate_trigger"] = suspend_immediate_trigger
621
- __props__.__dict__["suspend_immediate_triggers"] = suspend_immediate_triggers
622
445
  __props__.__dict__["suspend_trigger"] = suspend_trigger
623
- __props__.__dict__["suspend_triggers"] = suspend_triggers
624
- __props__.__dict__["warehouses"] = warehouses
446
+ __props__.__dict__["fully_qualified_name"] = None
447
+ __props__.__dict__["show_outputs"] = None
625
448
  super(ResourceMonitor, __self__).__init__(
626
449
  'snowflake:index/resourceMonitor:ResourceMonitor',
627
450
  resource_name,
@@ -635,16 +458,14 @@ class ResourceMonitor(pulumi.CustomResource):
635
458
  credit_quota: Optional[pulumi.Input[int]] = None,
636
459
  end_timestamp: Optional[pulumi.Input[str]] = None,
637
460
  frequency: Optional[pulumi.Input[str]] = None,
461
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
638
462
  name: Optional[pulumi.Input[str]] = None,
639
463
  notify_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
640
464
  notify_users: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
641
- set_for_account: Optional[pulumi.Input[bool]] = None,
465
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ResourceMonitorShowOutputArgs', 'ResourceMonitorShowOutputArgsDict']]]]] = None,
642
466
  start_timestamp: Optional[pulumi.Input[str]] = None,
643
467
  suspend_immediate_trigger: Optional[pulumi.Input[int]] = None,
644
- suspend_immediate_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
645
- suspend_trigger: Optional[pulumi.Input[int]] = None,
646
- suspend_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
647
- warehouses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None) -> 'ResourceMonitor':
468
+ suspend_trigger: Optional[pulumi.Input[int]] = None) -> 'ResourceMonitor':
648
469
  """
649
470
  Get an existing ResourceMonitor resource's state with the given name, id, and optional extra
650
471
  properties used to qualify the lookup.
@@ -652,19 +473,17 @@ class ResourceMonitor(pulumi.CustomResource):
652
473
  :param str resource_name: The unique name of the resulting resource.
653
474
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
654
475
  :param pulumi.ResourceOptions opts: Options for the resource.
655
- :param pulumi.Input[int] credit_quota: The number of credits allocated monthly to the resource monitor.
476
+ :param pulumi.Input[int] credit_quota: The number of credits allocated to the resource monitor per frequency interval. When total usage for all warehouses assigned to the monitor reaches this number for the current frequency interval, the resource monitor is considered to be at 100% of quota.
656
477
  :param pulumi.Input[str] end_timestamp: The date and time when the resource monitor suspends the assigned warehouses.
657
- :param pulumi.Input[str] frequency: The frequency interval at which the credit usage resets to 0. If you set a frequency for a resource monitor, you must also set START_TIMESTAMP.
658
- :param pulumi.Input[str] name: Identifier for the resource monitor; must be unique for your account.
659
- :param pulumi.Input[Sequence[pulumi.Input[int]]] notify_triggers: A list of percentage thresholds at which to send an alert to subscribed users.
660
- :param pulumi.Input[Sequence[pulumi.Input[str]]] notify_users: Specifies the list of users to receive email notifications on resource monitors.
661
- :param pulumi.Input[bool] set_for_account: Specifies whether the resource monitor should be applied globally to your Snowflake account (defaults to false).
662
- :param pulumi.Input[str] start_timestamp: The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses.
663
- :param pulumi.Input[int] suspend_immediate_trigger: The number that represents the percentage threshold at which to immediately suspend all warehouses.
664
- :param pulumi.Input[Sequence[pulumi.Input[int]]] suspend_immediate_triggers: A list of percentage thresholds at which to suspend all warehouses.
665
- :param pulumi.Input[int] suspend_trigger: The number that represents the percentage threshold at which to suspend all warehouses.
666
- :param pulumi.Input[Sequence[pulumi.Input[int]]] suspend_triggers: A list of percentage thresholds at which to suspend all warehouses.
667
- :param pulumi.Input[Sequence[pulumi.Input[str]]] warehouses: A list of warehouses to apply the resource monitor to.
478
+ :param pulumi.Input[str] frequency: The frequency interval at which the credit usage resets to 0. Valid values are (case-insensitive): `MONTHLY` | `DAILY` | `WEEKLY` | `YEARLY` | `NEVER`. If you set a `frequency` for a resource monitor, you must also set `start_timestamp`. If you specify `NEVER` for the frequency, the credit usage for the warehouse does not reset. After removing this field from the config, the previously set value will be preserved on the Snowflake side, not the default value. That's due to Snowflake limitation and the lack of unset functionality for this parameter.
479
+ :param pulumi.Input[str] fully_qualified_name: Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
480
+ :param pulumi.Input[str] name: Identifier for the resource monitor; must be unique for your account. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
481
+ :param pulumi.Input[Sequence[pulumi.Input[int]]] notify_triggers: Specifies a list of percentages of the credit quota. After reaching any of the values the users passed in the notify_users field will be notified (to receive the notification they should have notifications enabled). Values over 100 are supported.
482
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] notify_users: Specifies the list of users (their identifiers) to receive email notifications on resource monitors. For more information about this resource, see docs.
483
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ResourceMonitorShowOutputArgs', 'ResourceMonitorShowOutputArgsDict']]]] show_outputs: Outputs the result of `SHOW RESOURCE MONITORS` for the given resource monitor.
484
+ :param pulumi.Input[str] start_timestamp: The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses. If you set a `start_timestamp` for a resource monitor, you must also set `frequency`. After removing this field from the config, the previously set value will be preserved on the Snowflake side, not the default value. That's due to Snowflake limitation and the lack of unset functionality for this parameter.
485
+ :param pulumi.Input[int] suspend_immediate_trigger: Represents a numeric value specified as a percentage of the credit quota. Values over 100 are supported. After reaching this value, all assigned warehouses immediately cancel any currently running queries or statements. In addition, this action sends a notification to all users who have enabled notifications for themselves.
486
+ :param pulumi.Input[int] suspend_trigger: Represents a numeric value specified as a percentage of the credit quota. Values over 100 are supported. After reaching this value, all assigned warehouses while allowing currently running queries to complete will be suspended. No new queries can be executed by the warehouses until the credit quota for the resource monitor is increased. In addition, this action sends a notification to all users who have enabled notifications for themselves.
668
487
  """
669
488
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
670
489
 
@@ -673,23 +492,21 @@ class ResourceMonitor(pulumi.CustomResource):
673
492
  __props__.__dict__["credit_quota"] = credit_quota
674
493
  __props__.__dict__["end_timestamp"] = end_timestamp
675
494
  __props__.__dict__["frequency"] = frequency
495
+ __props__.__dict__["fully_qualified_name"] = fully_qualified_name
676
496
  __props__.__dict__["name"] = name
677
497
  __props__.__dict__["notify_triggers"] = notify_triggers
678
498
  __props__.__dict__["notify_users"] = notify_users
679
- __props__.__dict__["set_for_account"] = set_for_account
499
+ __props__.__dict__["show_outputs"] = show_outputs
680
500
  __props__.__dict__["start_timestamp"] = start_timestamp
681
501
  __props__.__dict__["suspend_immediate_trigger"] = suspend_immediate_trigger
682
- __props__.__dict__["suspend_immediate_triggers"] = suspend_immediate_triggers
683
502
  __props__.__dict__["suspend_trigger"] = suspend_trigger
684
- __props__.__dict__["suspend_triggers"] = suspend_triggers
685
- __props__.__dict__["warehouses"] = warehouses
686
503
  return ResourceMonitor(resource_name, opts=opts, __props__=__props__)
687
504
 
688
505
  @property
689
506
  @pulumi.getter(name="creditQuota")
690
- def credit_quota(self) -> pulumi.Output[int]:
507
+ def credit_quota(self) -> pulumi.Output[Optional[int]]:
691
508
  """
692
- The number of credits allocated monthly to the resource monitor.
509
+ The number of credits allocated to the resource monitor per frequency interval. When total usage for all warehouses assigned to the monitor reaches this number for the current frequency interval, the resource monitor is considered to be at 100% of quota.
693
510
  """
694
511
  return pulumi.get(self, "credit_quota")
695
512
 
@@ -703,17 +520,25 @@ class ResourceMonitor(pulumi.CustomResource):
703
520
 
704
521
  @property
705
522
  @pulumi.getter
706
- def frequency(self) -> pulumi.Output[str]:
523
+ def frequency(self) -> pulumi.Output[Optional[str]]:
707
524
  """
708
- The frequency interval at which the credit usage resets to 0. If you set a frequency for a resource monitor, you must also set START_TIMESTAMP.
525
+ The frequency interval at which the credit usage resets to 0. Valid values are (case-insensitive): `MONTHLY` | `DAILY` | `WEEKLY` | `YEARLY` | `NEVER`. If you set a `frequency` for a resource monitor, you must also set `start_timestamp`. If you specify `NEVER` for the frequency, the credit usage for the warehouse does not reset. After removing this field from the config, the previously set value will be preserved on the Snowflake side, not the default value. That's due to Snowflake limitation and the lack of unset functionality for this parameter.
709
526
  """
710
527
  return pulumi.get(self, "frequency")
711
528
 
529
+ @property
530
+ @pulumi.getter(name="fullyQualifiedName")
531
+ def fully_qualified_name(self) -> pulumi.Output[str]:
532
+ """
533
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
534
+ """
535
+ return pulumi.get(self, "fully_qualified_name")
536
+
712
537
  @property
713
538
  @pulumi.getter
714
539
  def name(self) -> pulumi.Output[str]:
715
540
  """
716
- Identifier for the resource monitor; must be unique for your account.
541
+ Identifier for the resource monitor; must be unique for your account. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
717
542
  """
718
543
  return pulumi.get(self, "name")
719
544
 
@@ -721,7 +546,7 @@ class ResourceMonitor(pulumi.CustomResource):
721
546
  @pulumi.getter(name="notifyTriggers")
722
547
  def notify_triggers(self) -> pulumi.Output[Optional[Sequence[int]]]:
723
548
  """
724
- A list of percentage thresholds at which to send an alert to subscribed users.
549
+ Specifies a list of percentages of the credit quota. After reaching any of the values the users passed in the notify_users field will be notified (to receive the notification they should have notifications enabled). Values over 100 are supported.
725
550
  """
726
551
  return pulumi.get(self, "notify_triggers")
727
552
 
@@ -729,23 +554,23 @@ class ResourceMonitor(pulumi.CustomResource):
729
554
  @pulumi.getter(name="notifyUsers")
730
555
  def notify_users(self) -> pulumi.Output[Optional[Sequence[str]]]:
731
556
  """
732
- Specifies the list of users to receive email notifications on resource monitors.
557
+ Specifies the list of users (their identifiers) to receive email notifications on resource monitors. For more information about this resource, see docs.
733
558
  """
734
559
  return pulumi.get(self, "notify_users")
735
560
 
736
561
  @property
737
- @pulumi.getter(name="setForAccount")
738
- def set_for_account(self) -> pulumi.Output[Optional[bool]]:
562
+ @pulumi.getter(name="showOutputs")
563
+ def show_outputs(self) -> pulumi.Output[Sequence['outputs.ResourceMonitorShowOutput']]:
739
564
  """
740
- Specifies whether the resource monitor should be applied globally to your Snowflake account (defaults to false).
565
+ Outputs the result of `SHOW RESOURCE MONITORS` for the given resource monitor.
741
566
  """
742
- return pulumi.get(self, "set_for_account")
567
+ return pulumi.get(self, "show_outputs")
743
568
 
744
569
  @property
745
570
  @pulumi.getter(name="startTimestamp")
746
- def start_timestamp(self) -> pulumi.Output[str]:
571
+ def start_timestamp(self) -> pulumi.Output[Optional[str]]:
747
572
  """
748
- The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses.
573
+ The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses. If you set a `start_timestamp` for a resource monitor, you must also set `frequency`. After removing this field from the config, the previously set value will be preserved on the Snowflake side, not the default value. That's due to Snowflake limitation and the lack of unset functionality for this parameter.
749
574
  """
750
575
  return pulumi.get(self, "start_timestamp")
751
576
 
@@ -753,45 +578,15 @@ class ResourceMonitor(pulumi.CustomResource):
753
578
  @pulumi.getter(name="suspendImmediateTrigger")
754
579
  def suspend_immediate_trigger(self) -> pulumi.Output[Optional[int]]:
755
580
  """
756
- The number that represents the percentage threshold at which to immediately suspend all warehouses.
581
+ Represents a numeric value specified as a percentage of the credit quota. Values over 100 are supported. After reaching this value, all assigned warehouses immediately cancel any currently running queries or statements. In addition, this action sends a notification to all users who have enabled notifications for themselves.
757
582
  """
758
583
  return pulumi.get(self, "suspend_immediate_trigger")
759
584
 
760
- @property
761
- @pulumi.getter(name="suspendImmediateTriggers")
762
- def suspend_immediate_triggers(self) -> pulumi.Output[Optional[Sequence[int]]]:
763
- """
764
- A list of percentage thresholds at which to suspend all warehouses.
765
- """
766
- warnings.warn("""Use suspend_immediate_trigger instead""", DeprecationWarning)
767
- pulumi.log.warn("""suspend_immediate_triggers is deprecated: Use suspend_immediate_trigger instead""")
768
-
769
- return pulumi.get(self, "suspend_immediate_triggers")
770
-
771
585
  @property
772
586
  @pulumi.getter(name="suspendTrigger")
773
587
  def suspend_trigger(self) -> pulumi.Output[Optional[int]]:
774
588
  """
775
- The number that represents the percentage threshold at which to suspend all warehouses.
589
+ Represents a numeric value specified as a percentage of the credit quota. Values over 100 are supported. After reaching this value, all assigned warehouses while allowing currently running queries to complete will be suspended. No new queries can be executed by the warehouses until the credit quota for the resource monitor is increased. In addition, this action sends a notification to all users who have enabled notifications for themselves.
776
590
  """
777
591
  return pulumi.get(self, "suspend_trigger")
778
592
 
779
- @property
780
- @pulumi.getter(name="suspendTriggers")
781
- def suspend_triggers(self) -> pulumi.Output[Optional[Sequence[int]]]:
782
- """
783
- A list of percentage thresholds at which to suspend all warehouses.
784
- """
785
- warnings.warn("""Use suspend_trigger instead""", DeprecationWarning)
786
- pulumi.log.warn("""suspend_triggers is deprecated: Use suspend_trigger instead""")
787
-
788
- return pulumi.get(self, "suspend_triggers")
789
-
790
- @property
791
- @pulumi.getter
792
- def warehouses(self) -> pulumi.Output[Optional[Sequence[str]]]:
793
- """
794
- A list of warehouses to apply the resource monitor to.
795
- """
796
- return pulumi.get(self, "warehouses")
797
-