pulumi-snowflake 0.50.3a1710160126__py3-none-any.whl → 1.2.0a1736849992__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 +52857 -1665
  3. pulumi_snowflake/_utilities.py +41 -5
  4. pulumi_snowflake/account.py +188 -218
  5. pulumi_snowflake/account_authentication_policy_attachment.py +149 -0
  6. pulumi_snowflake/account_parameter.py +21 -48
  7. pulumi_snowflake/account_password_policy_attachment.py +7 -32
  8. pulumi_snowflake/account_role.py +250 -0
  9. pulumi_snowflake/alert.py +38 -47
  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 +33 -52
  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 -213
  20. pulumi_snowflake/database_role.py +81 -44
  21. pulumi_snowflake/dynamic_table.py +42 -49
  22. pulumi_snowflake/email_notification_integration.py +33 -28
  23. pulumi_snowflake/{unsafe_execute.py → execute.py} +36 -39
  24. pulumi_snowflake/external_function.py +54 -75
  25. pulumi_snowflake/external_oauth_integration.py +593 -542
  26. pulumi_snowflake/external_table.py +67 -90
  27. pulumi_snowflake/external_volume.py +382 -0
  28. pulumi_snowflake/failover_group.py +57 -98
  29. pulumi_snowflake/file_format.py +33 -28
  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 -9
  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 -13
  41. pulumi_snowflake/get_current_role.py +14 -7
  42. pulumi_snowflake/get_database.py +25 -9
  43. pulumi_snowflake/get_database_role.py +162 -0
  44. pulumi_snowflake/get_database_roles.py +79 -47
  45. pulumi_snowflake/get_databases.py +91 -73
  46. pulumi_snowflake/get_dynamic_tables.py +36 -19
  47. pulumi_snowflake/get_external_functions.py +28 -9
  48. pulumi_snowflake/get_external_tables.py +28 -9
  49. pulumi_snowflake/get_failover_groups.py +18 -7
  50. pulumi_snowflake/get_file_formats.py +28 -9
  51. pulumi_snowflake/get_functions.py +28 -9
  52. pulumi_snowflake/get_grants.py +207 -84
  53. pulumi_snowflake/get_masking_policies.py +91 -51
  54. pulumi_snowflake/get_materialized_views.py +28 -9
  55. pulumi_snowflake/get_network_policies.py +129 -0
  56. pulumi_snowflake/get_parameters.py +38 -15
  57. pulumi_snowflake/get_pipes.py +28 -9
  58. pulumi_snowflake/get_procedures.py +28 -9
  59. pulumi_snowflake/get_resource_monitors.py +37 -24
  60. pulumi_snowflake/get_row_access_policies.py +91 -51
  61. pulumi_snowflake/get_schemas.py +145 -41
  62. pulumi_snowflake/get_secrets.py +200 -0
  63. pulumi_snowflake/get_security_integrations.py +129 -0
  64. pulumi_snowflake/get_sequences.py +28 -9
  65. pulumi_snowflake/get_shares.py +18 -9
  66. pulumi_snowflake/get_stages.py +28 -9
  67. pulumi_snowflake/get_storage_integrations.py +16 -9
  68. pulumi_snowflake/get_streamlits.py +170 -0
  69. pulumi_snowflake/get_streams.py +114 -54
  70. pulumi_snowflake/get_system_generate_scim_access_token.py +18 -9
  71. pulumi_snowflake/get_system_get_aws_sns_iam_policy.py +32 -7
  72. pulumi_snowflake/get_system_get_private_link_config.py +120 -5
  73. pulumi_snowflake/get_system_get_snowflake_platform_info.py +15 -7
  74. pulumi_snowflake/get_tables.py +28 -9
  75. pulumi_snowflake/get_tags.py +130 -0
  76. pulumi_snowflake/get_tasks.py +134 -54
  77. pulumi_snowflake/get_users.py +116 -44
  78. pulumi_snowflake/get_views.py +114 -54
  79. pulumi_snowflake/get_warehouses.py +79 -26
  80. pulumi_snowflake/grant_account_role.py +28 -75
  81. pulumi_snowflake/grant_application_role.py +257 -0
  82. pulumi_snowflake/grant_database_role.py +35 -94
  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 -383
  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 +40 -11
  89. pulumi_snowflake/masking_policy.py +213 -310
  90. pulumi_snowflake/materialized_view.py +62 -71
  91. pulumi_snowflake/network_policy.py +217 -61
  92. pulumi_snowflake/network_policy_attachment.py +5 -34
  93. pulumi_snowflake/network_rule.py +473 -0
  94. pulumi_snowflake/notification_integration.py +49 -84
  95. pulumi_snowflake/oauth_integration_for_custom_clients.py +906 -0
  96. pulumi_snowflake/{oauth_integration.py → oauth_integration_for_partner_applications.py} +191 -192
  97. pulumi_snowflake/object_parameter.py +10 -101
  98. pulumi_snowflake/outputs.py +49200 -2928
  99. pulumi_snowflake/password_policy.py +41 -28
  100. pulumi_snowflake/pipe.py +33 -4
  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 -327
  110. pulumi_snowflake/row_access_policy.py +200 -149
  111. pulumi_snowflake/{saml_integration.py → saml2_integration.py} +356 -299
  112. pulumi_snowflake/schema.py +949 -178
  113. pulumi_snowflake/scim_integration.py +286 -109
  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 -34
  121. pulumi_snowflake/service_user.py +3585 -0
  122. pulumi_snowflake/share.py +33 -28
  123. pulumi_snowflake/shared_database.py +939 -0
  124. pulumi_snowflake/stage.py +95 -84
  125. pulumi_snowflake/storage_integration.py +46 -4
  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 -97
  132. pulumi_snowflake/table_column_masking_policy_application.py +7 -14
  133. pulumi_snowflake/table_constraint.py +29 -172
  134. pulumi_snowflake/tag.py +142 -74
  135. pulumi_snowflake/tag_association.py +40 -215
  136. pulumi_snowflake/task.py +3048 -418
  137. pulumi_snowflake/user.py +3351 -384
  138. pulumi_snowflake/user_authentication_policy_attachment.py +197 -0
  139. pulumi_snowflake/user_password_policy_attachment.py +5 -4
  140. pulumi_snowflake/user_public_keys.py +5 -0
  141. pulumi_snowflake/view.py +466 -215
  142. pulumi_snowflake/warehouse.py +184 -168
  143. {pulumi_snowflake-0.50.3a1710160126.dist-info → pulumi_snowflake-1.2.0a1736849992.dist-info}/METADATA +7 -6
  144. pulumi_snowflake-1.2.0a1736849992.dist-info/RECORD +148 -0
  145. {pulumi_snowflake-0.50.3a1710160126.dist-info → pulumi_snowflake-1.2.0a1736849992.dist-info}/WHEEL +1 -1
  146. pulumi_snowflake/account_grant.py +0 -343
  147. pulumi_snowflake/database_grant.py +0 -495
  148. pulumi_snowflake/external_table_grant.py +0 -690
  149. pulumi_snowflake/failover_group_grant.py +0 -388
  150. pulumi_snowflake/file_format_grant.py +0 -635
  151. pulumi_snowflake/function.py +0 -872
  152. pulumi_snowflake/function_grant.py +0 -745
  153. pulumi_snowflake/get_role.py +0 -121
  154. pulumi_snowflake/get_roles.py +0 -120
  155. pulumi_snowflake/grant_privileges_to_role.py +0 -825
  156. pulumi_snowflake/integration_grant.py +0 -440
  157. pulumi_snowflake/masking_policy_grant.py +0 -542
  158. pulumi_snowflake/materialized_view_grant.py +0 -689
  159. pulumi_snowflake/pipe_grant.py +0 -587
  160. pulumi_snowflake/procedure.py +0 -887
  161. pulumi_snowflake/procedure_grant.py +0 -745
  162. pulumi_snowflake/resource_monitor_grant.py +0 -387
  163. pulumi_snowflake/role.py +0 -273
  164. pulumi_snowflake/role_grants.py +0 -352
  165. pulumi_snowflake/role_ownership_grant.py +0 -338
  166. pulumi_snowflake/row_access_policy_grant.py +0 -540
  167. pulumi_snowflake/schema_grant.py +0 -647
  168. pulumi_snowflake/sequence_grant.py +0 -635
  169. pulumi_snowflake/session_parameter.py +0 -332
  170. pulumi_snowflake/stage_grant.py +0 -635
  171. pulumi_snowflake/stream.py +0 -614
  172. pulumi_snowflake/stream_grant.py +0 -635
  173. pulumi_snowflake/table_grant.py +0 -677
  174. pulumi_snowflake/tag_grant.py +0 -532
  175. pulumi_snowflake/tag_masking_policy_association.py +0 -210
  176. pulumi_snowflake/task_grant.py +0 -635
  177. pulumi_snowflake/user_grant.py +0 -394
  178. pulumi_snowflake/user_ownership_grant.py +0 -286
  179. pulumi_snowflake/view_grant.py +0 -705
  180. pulumi_snowflake/warehouse_grant.py +0 -440
  181. pulumi_snowflake-0.50.3a1710160126.dist-info/RECORD +0 -136
  182. {pulumi_snowflake-0.50.3a1710160126.dist-info → pulumi_snowflake-1.2.0a1736849992.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,63 +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
- <!--Start PulumiCodeChooser -->
493
- ```python
494
- import pulumi
495
- import pulumi_snowflake as snowflake
496
-
497
- monitor = snowflake.ResourceMonitor("monitor",
498
- credit_quota=100,
499
- end_timestamp="2021-12-07 00:00",
500
- frequency="DAILY",
501
- notify_triggers=[
502
- 40,
503
- 50,
504
- ],
505
- notify_users=[
506
- "USERONE",
507
- "USERTWO",
508
- ],
509
- start_timestamp="2020-12-07 00:00",
510
- suspend_immediate_triggers=90,
511
- suspend_triggers=50)
512
- ```
513
- <!--End PulumiCodeChooser -->
514
-
515
373
  ## Import
516
374
 
517
- format is the resource monitor name
518
-
519
375
  ```sh
520
- $ pulumi import snowflake:index/resourceMonitor:ResourceMonitor example 'resourceMonitorName'
376
+ $ pulumi import snowflake:index/resourceMonitor:ResourceMonitor example '"<resource_monitor_name>"'
521
377
  ```
522
378
 
523
379
  :param str resource_name: The name of the resource.
524
380
  :param pulumi.ResourceOptions opts: Options for the resource.
525
- :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.
526
382
  :param pulumi.Input[str] end_timestamp: The date and time when the resource monitor suspends the assigned warehouses.
527
- :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.
528
- :param pulumi.Input[str] name: Identifier for the resource monitor; must be unique for your account.
529
- :param pulumi.Input[Sequence[pulumi.Input[int]]] notify_triggers: A list of percentage thresholds at which to send an alert to subscribed users.
530
- :param pulumi.Input[Sequence[pulumi.Input[str]]] notify_users: Specifies the list of users to receive email notifications on resource monitors.
531
- :param pulumi.Input[bool] set_for_account: Specifies whether the resource monitor should be applied globally to your Snowflake account (defaults to false).
532
- :param pulumi.Input[str] start_timestamp: The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses.
533
- :param pulumi.Input[int] suspend_immediate_trigger: The number that represents the percentage threshold at which to immediately suspend all warehouses.
534
- :param pulumi.Input[Sequence[pulumi.Input[int]]] suspend_immediate_triggers: A list of percentage thresholds at which to suspend all warehouses.
535
- :param pulumi.Input[int] suspend_trigger: The number that represents the percentage threshold at which to suspend all warehouses.
536
- :param pulumi.Input[Sequence[pulumi.Input[int]]] suspend_triggers: A list of percentage thresholds at which to suspend all warehouses.
537
- :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.
538
390
  """
539
391
  ...
540
392
  @overload
@@ -543,37 +395,10 @@ class ResourceMonitor(pulumi.CustomResource):
543
395
  args: Optional[ResourceMonitorArgs] = None,
544
396
  opts: Optional[pulumi.ResourceOptions] = None):
545
397
  """
546
- ## Example Usage
547
-
548
- <!--Start PulumiCodeChooser -->
549
- ```python
550
- import pulumi
551
- import pulumi_snowflake as snowflake
552
-
553
- monitor = snowflake.ResourceMonitor("monitor",
554
- credit_quota=100,
555
- end_timestamp="2021-12-07 00:00",
556
- frequency="DAILY",
557
- notify_triggers=[
558
- 40,
559
- 50,
560
- ],
561
- notify_users=[
562
- "USERONE",
563
- "USERTWO",
564
- ],
565
- start_timestamp="2020-12-07 00:00",
566
- suspend_immediate_triggers=90,
567
- suspend_triggers=50)
568
- ```
569
- <!--End PulumiCodeChooser -->
570
-
571
398
  ## Import
572
399
 
573
- format is the resource monitor name
574
-
575
400
  ```sh
576
- $ pulumi import snowflake:index/resourceMonitor:ResourceMonitor example 'resourceMonitorName'
401
+ $ pulumi import snowflake:index/resourceMonitor:ResourceMonitor example '"<resource_monitor_name>"'
577
402
  ```
578
403
 
579
404
  :param str resource_name: The name of the resource.
@@ -597,13 +422,9 @@ class ResourceMonitor(pulumi.CustomResource):
597
422
  name: Optional[pulumi.Input[str]] = None,
598
423
  notify_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
599
424
  notify_users: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
600
- set_for_account: Optional[pulumi.Input[bool]] = None,
601
425
  start_timestamp: Optional[pulumi.Input[str]] = None,
602
426
  suspend_immediate_trigger: Optional[pulumi.Input[int]] = None,
603
- suspend_immediate_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
604
427
  suspend_trigger: Optional[pulumi.Input[int]] = None,
605
- suspend_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
606
- warehouses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
607
428
  __props__=None):
608
429
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
609
430
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -619,13 +440,11 @@ class ResourceMonitor(pulumi.CustomResource):
619
440
  __props__.__dict__["name"] = name
620
441
  __props__.__dict__["notify_triggers"] = notify_triggers
621
442
  __props__.__dict__["notify_users"] = notify_users
622
- __props__.__dict__["set_for_account"] = set_for_account
623
443
  __props__.__dict__["start_timestamp"] = start_timestamp
624
444
  __props__.__dict__["suspend_immediate_trigger"] = suspend_immediate_trigger
625
- __props__.__dict__["suspend_immediate_triggers"] = suspend_immediate_triggers
626
445
  __props__.__dict__["suspend_trigger"] = suspend_trigger
627
- __props__.__dict__["suspend_triggers"] = suspend_triggers
628
- __props__.__dict__["warehouses"] = warehouses
446
+ __props__.__dict__["fully_qualified_name"] = None
447
+ __props__.__dict__["show_outputs"] = None
629
448
  super(ResourceMonitor, __self__).__init__(
630
449
  'snowflake:index/resourceMonitor:ResourceMonitor',
631
450
  resource_name,
@@ -639,16 +458,14 @@ class ResourceMonitor(pulumi.CustomResource):
639
458
  credit_quota: Optional[pulumi.Input[int]] = None,
640
459
  end_timestamp: Optional[pulumi.Input[str]] = None,
641
460
  frequency: Optional[pulumi.Input[str]] = None,
461
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
642
462
  name: Optional[pulumi.Input[str]] = None,
643
463
  notify_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
644
464
  notify_users: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
645
- set_for_account: Optional[pulumi.Input[bool]] = None,
465
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ResourceMonitorShowOutputArgs', 'ResourceMonitorShowOutputArgsDict']]]]] = None,
646
466
  start_timestamp: Optional[pulumi.Input[str]] = None,
647
467
  suspend_immediate_trigger: Optional[pulumi.Input[int]] = None,
648
- suspend_immediate_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
649
- suspend_trigger: Optional[pulumi.Input[int]] = None,
650
- suspend_triggers: Optional[pulumi.Input[Sequence[pulumi.Input[int]]]] = None,
651
- warehouses: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None) -> 'ResourceMonitor':
468
+ suspend_trigger: Optional[pulumi.Input[int]] = None) -> 'ResourceMonitor':
652
469
  """
653
470
  Get an existing ResourceMonitor resource's state with the given name, id, and optional extra
654
471
  properties used to qualify the lookup.
@@ -656,19 +473,17 @@ class ResourceMonitor(pulumi.CustomResource):
656
473
  :param str resource_name: The unique name of the resulting resource.
657
474
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
658
475
  :param pulumi.ResourceOptions opts: Options for the resource.
659
- :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.
660
477
  :param pulumi.Input[str] end_timestamp: The date and time when the resource monitor suspends the assigned warehouses.
661
- :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.
662
- :param pulumi.Input[str] name: Identifier for the resource monitor; must be unique for your account.
663
- :param pulumi.Input[Sequence[pulumi.Input[int]]] notify_triggers: A list of percentage thresholds at which to send an alert to subscribed users.
664
- :param pulumi.Input[Sequence[pulumi.Input[str]]] notify_users: Specifies the list of users to receive email notifications on resource monitors.
665
- :param pulumi.Input[bool] set_for_account: Specifies whether the resource monitor should be applied globally to your Snowflake account (defaults to false).
666
- :param pulumi.Input[str] start_timestamp: The date and time when the resource monitor starts monitoring credit usage for the assigned warehouses.
667
- :param pulumi.Input[int] suspend_immediate_trigger: The number that represents the percentage threshold at which to immediately suspend all warehouses.
668
- :param pulumi.Input[Sequence[pulumi.Input[int]]] suspend_immediate_triggers: A list of percentage thresholds at which to suspend all warehouses.
669
- :param pulumi.Input[int] suspend_trigger: The number that represents the percentage threshold at which to suspend all warehouses.
670
- :param pulumi.Input[Sequence[pulumi.Input[int]]] suspend_triggers: A list of percentage thresholds at which to suspend all warehouses.
671
- :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.
672
487
  """
673
488
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
674
489
 
@@ -677,23 +492,21 @@ class ResourceMonitor(pulumi.CustomResource):
677
492
  __props__.__dict__["credit_quota"] = credit_quota
678
493
  __props__.__dict__["end_timestamp"] = end_timestamp
679
494
  __props__.__dict__["frequency"] = frequency
495
+ __props__.__dict__["fully_qualified_name"] = fully_qualified_name
680
496
  __props__.__dict__["name"] = name
681
497
  __props__.__dict__["notify_triggers"] = notify_triggers
682
498
  __props__.__dict__["notify_users"] = notify_users
683
- __props__.__dict__["set_for_account"] = set_for_account
499
+ __props__.__dict__["show_outputs"] = show_outputs
684
500
  __props__.__dict__["start_timestamp"] = start_timestamp
685
501
  __props__.__dict__["suspend_immediate_trigger"] = suspend_immediate_trigger
686
- __props__.__dict__["suspend_immediate_triggers"] = suspend_immediate_triggers
687
502
  __props__.__dict__["suspend_trigger"] = suspend_trigger
688
- __props__.__dict__["suspend_triggers"] = suspend_triggers
689
- __props__.__dict__["warehouses"] = warehouses
690
503
  return ResourceMonitor(resource_name, opts=opts, __props__=__props__)
691
504
 
692
505
  @property
693
506
  @pulumi.getter(name="creditQuota")
694
- def credit_quota(self) -> pulumi.Output[int]:
507
+ def credit_quota(self) -> pulumi.Output[Optional[int]]:
695
508
  """
696
- 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.
697
510
  """
698
511
  return pulumi.get(self, "credit_quota")
699
512
 
@@ -707,17 +520,25 @@ class ResourceMonitor(pulumi.CustomResource):
707
520
 
708
521
  @property
709
522
  @pulumi.getter
710
- def frequency(self) -> pulumi.Output[str]:
523
+ def frequency(self) -> pulumi.Output[Optional[str]]:
711
524
  """
712
- 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.
713
526
  """
714
527
  return pulumi.get(self, "frequency")
715
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
+
716
537
  @property
717
538
  @pulumi.getter
718
539
  def name(self) -> pulumi.Output[str]:
719
540
  """
720
- 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: `|`, `.`, `"`.
721
542
  """
722
543
  return pulumi.get(self, "name")
723
544
 
@@ -725,7 +546,7 @@ class ResourceMonitor(pulumi.CustomResource):
725
546
  @pulumi.getter(name="notifyTriggers")
726
547
  def notify_triggers(self) -> pulumi.Output[Optional[Sequence[int]]]:
727
548
  """
728
- 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.
729
550
  """
730
551
  return pulumi.get(self, "notify_triggers")
731
552
 
@@ -733,23 +554,23 @@ class ResourceMonitor(pulumi.CustomResource):
733
554
  @pulumi.getter(name="notifyUsers")
734
555
  def notify_users(self) -> pulumi.Output[Optional[Sequence[str]]]:
735
556
  """
736
- 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.
737
558
  """
738
559
  return pulumi.get(self, "notify_users")
739
560
 
740
561
  @property
741
- @pulumi.getter(name="setForAccount")
742
- def set_for_account(self) -> pulumi.Output[Optional[bool]]:
562
+ @pulumi.getter(name="showOutputs")
563
+ def show_outputs(self) -> pulumi.Output[Sequence['outputs.ResourceMonitorShowOutput']]:
743
564
  """
744
- 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.
745
566
  """
746
- return pulumi.get(self, "set_for_account")
567
+ return pulumi.get(self, "show_outputs")
747
568
 
748
569
  @property
749
570
  @pulumi.getter(name="startTimestamp")
750
- def start_timestamp(self) -> pulumi.Output[str]:
571
+ def start_timestamp(self) -> pulumi.Output[Optional[str]]:
751
572
  """
752
- 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.
753
574
  """
754
575
  return pulumi.get(self, "start_timestamp")
755
576
 
@@ -757,45 +578,15 @@ class ResourceMonitor(pulumi.CustomResource):
757
578
  @pulumi.getter(name="suspendImmediateTrigger")
758
579
  def suspend_immediate_trigger(self) -> pulumi.Output[Optional[int]]:
759
580
  """
760
- 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.
761
582
  """
762
583
  return pulumi.get(self, "suspend_immediate_trigger")
763
584
 
764
- @property
765
- @pulumi.getter(name="suspendImmediateTriggers")
766
- def suspend_immediate_triggers(self) -> pulumi.Output[Optional[Sequence[int]]]:
767
- """
768
- A list of percentage thresholds at which to suspend all warehouses.
769
- """
770
- warnings.warn("""Use suspend_immediate_trigger instead""", DeprecationWarning)
771
- pulumi.log.warn("""suspend_immediate_triggers is deprecated: Use suspend_immediate_trigger instead""")
772
-
773
- return pulumi.get(self, "suspend_immediate_triggers")
774
-
775
585
  @property
776
586
  @pulumi.getter(name="suspendTrigger")
777
587
  def suspend_trigger(self) -> pulumi.Output[Optional[int]]:
778
588
  """
779
- 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.
780
590
  """
781
591
  return pulumi.get(self, "suspend_trigger")
782
592
 
783
- @property
784
- @pulumi.getter(name="suspendTriggers")
785
- def suspend_triggers(self) -> pulumi.Output[Optional[Sequence[int]]]:
786
- """
787
- A list of percentage thresholds at which to suspend all warehouses.
788
- """
789
- warnings.warn("""Use suspend_trigger instead""", DeprecationWarning)
790
- pulumi.log.warn("""suspend_triggers is deprecated: Use suspend_trigger instead""")
791
-
792
- return pulumi.get(self, "suspend_triggers")
793
-
794
- @property
795
- @pulumi.getter
796
- def warehouses(self) -> pulumi.Output[Optional[Sequence[str]]]:
797
- """
798
- A list of warehouses to apply the resource monitor to.
799
- """
800
- return pulumi.get(self, "warehouses")
801
-