pulumi-snowflake 0.50.3a1710160126__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 +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.0a1736835738.dist-info}/METADATA +7 -6
  144. pulumi_snowflake-1.2.0a1736835738.dist-info/RECORD +148 -0
  145. {pulumi_snowflake-0.50.3a1710160126.dist-info → pulumi_snowflake-1.2.0a1736835738.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.0a1736835738.dist-info}/top_level.txt +0 -0
@@ -4,24 +4,29 @@
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
11
16
 
12
- __all__ = ['UnsafeExecuteArgs', 'UnsafeExecute']
17
+ __all__ = ['ExecuteArgs', 'Execute']
13
18
 
14
19
  @pulumi.input_type
15
- class UnsafeExecuteArgs:
20
+ class ExecuteArgs:
16
21
  def __init__(__self__, *,
17
22
  execute: pulumi.Input[str],
18
23
  revert: pulumi.Input[str],
19
24
  query: Optional[pulumi.Input[str]] = None):
20
25
  """
21
- The set of arguments for constructing a UnsafeExecute resource.
26
+ The set of arguments for constructing a Execute resource.
22
27
  :param pulumi.Input[str] execute: SQL statement to execute. Forces recreation of resource on change.
23
28
  :param pulumi.Input[str] revert: SQL statement to revert the execute statement. Invoked when resource is being destroyed.
24
- :param pulumi.Input[str] query: Optional SQL statement to do a read. Invoked after creation and every time it is changed.
29
+ :param pulumi.Input[str] query: Optional SQL statement to do a read. Invoked on every resource refresh and every time it is changed.
25
30
  """
26
31
  pulumi.set(__self__, "execute", execute)
27
32
  pulumi.set(__self__, "revert", revert)
@@ -56,7 +61,7 @@ class UnsafeExecuteArgs:
56
61
  @pulumi.getter
57
62
  def query(self) -> Optional[pulumi.Input[str]]:
58
63
  """
59
- Optional SQL statement to do a read. Invoked after creation and every time it is changed.
64
+ Optional SQL statement to do a read. Invoked on every resource refresh and every time it is changed.
60
65
  """
61
66
  return pulumi.get(self, "query")
62
67
 
@@ -66,16 +71,16 @@ class UnsafeExecuteArgs:
66
71
 
67
72
 
68
73
  @pulumi.input_type
69
- class _UnsafeExecuteState:
74
+ class _ExecuteState:
70
75
  def __init__(__self__, *,
71
76
  execute: Optional[pulumi.Input[str]] = None,
72
77
  query: Optional[pulumi.Input[str]] = None,
73
78
  query_results: Optional[pulumi.Input[Sequence[pulumi.Input[Mapping[str, pulumi.Input[str]]]]]] = None,
74
79
  revert: Optional[pulumi.Input[str]] = None):
75
80
  """
76
- Input properties used for looking up and filtering UnsafeExecute resources.
81
+ Input properties used for looking up and filtering Execute resources.
77
82
  :param pulumi.Input[str] execute: SQL statement to execute. Forces recreation of resource on change.
78
- :param pulumi.Input[str] query: Optional SQL statement to do a read. Invoked after creation and every time it is changed.
83
+ :param pulumi.Input[str] query: Optional SQL statement to do a read. Invoked on every resource refresh and every time it is changed.
79
84
  :param pulumi.Input[Sequence[pulumi.Input[Mapping[str, pulumi.Input[str]]]]] query_results: List of key-value maps (text to text) retrieved after executing read query. Will be empty if the query results in an error.
80
85
  :param pulumi.Input[str] revert: SQL statement to revert the execute statement. Invoked when resource is being destroyed.
81
86
  """
@@ -104,7 +109,7 @@ class _UnsafeExecuteState:
104
109
  @pulumi.getter
105
110
  def query(self) -> Optional[pulumi.Input[str]]:
106
111
  """
107
- Optional SQL statement to do a read. Invoked after creation and every time it is changed.
112
+ Optional SQL statement to do a read. Invoked on every resource refresh and every time it is changed.
108
113
  """
109
114
  return pulumi.get(self, "query")
110
115
 
@@ -137,7 +142,7 @@ class _UnsafeExecuteState:
137
142
  pulumi.set(self, "revert", value)
138
143
 
139
144
 
140
- class UnsafeExecute(pulumi.CustomResource):
145
+ class Execute(pulumi.CustomResource):
141
146
  @overload
142
147
  def __init__(__self__,
143
148
  resource_name: str,
@@ -147,46 +152,38 @@ class UnsafeExecute(pulumi.CustomResource):
147
152
  revert: Optional[pulumi.Input[str]] = None,
148
153
  __props__=None):
149
154
  """
150
- !> **Warning** This is a dangerous resource that allows executing **ANY** SQL statement. It may destroy resources if used incorrectly. It may behave incorrectly combined with other resources. Will be deleted in the upcoming versions. Use at your own risk.
155
+ ## Import
151
156
 
152
- > **Note** It can be theoretically used to manage resource that are not supported by the provider. This is risky and may brake other resources if used incorrectly.
153
-
154
- > **Note** Use `query` parameter with caution. It will fetch **ALL** the results returned by the query provided. Try to limit the number of results by writing query with filters. Query failure does not stop resource creation; it simply results in `query_results` being empty.
155
-
156
- > **Deprecation** Experimental resource. Will be deleted in the upcoming versions. Use at your own risk. <deprecation>
157
-
158
- Experimental resource used for testing purposes only. Allows to execute ANY SQL statement.
157
+ ```sh
158
+ $ pulumi import snowflake:index/execute:Execute example '<random_uuid>'
159
+ ```
159
160
 
160
161
  :param str resource_name: The name of the resource.
161
162
  :param pulumi.ResourceOptions opts: Options for the resource.
162
163
  :param pulumi.Input[str] execute: SQL statement to execute. Forces recreation of resource on change.
163
- :param pulumi.Input[str] query: Optional SQL statement to do a read. Invoked after creation and every time it is changed.
164
+ :param pulumi.Input[str] query: Optional SQL statement to do a read. Invoked on every resource refresh and every time it is changed.
164
165
  :param pulumi.Input[str] revert: SQL statement to revert the execute statement. Invoked when resource is being destroyed.
165
166
  """
166
167
  ...
167
168
  @overload
168
169
  def __init__(__self__,
169
170
  resource_name: str,
170
- args: UnsafeExecuteArgs,
171
+ args: ExecuteArgs,
171
172
  opts: Optional[pulumi.ResourceOptions] = None):
172
173
  """
173
- !> **Warning** This is a dangerous resource that allows executing **ANY** SQL statement. It may destroy resources if used incorrectly. It may behave incorrectly combined with other resources. Will be deleted in the upcoming versions. Use at your own risk.
174
-
175
- > **Note** It can be theoretically used to manage resource that are not supported by the provider. This is risky and may brake other resources if used incorrectly.
176
-
177
- > **Note** Use `query` parameter with caution. It will fetch **ALL** the results returned by the query provided. Try to limit the number of results by writing query with filters. Query failure does not stop resource creation; it simply results in `query_results` being empty.
178
-
179
- > **Deprecation** Experimental resource. Will be deleted in the upcoming versions. Use at your own risk. <deprecation>
174
+ ## Import
180
175
 
181
- Experimental resource used for testing purposes only. Allows to execute ANY SQL statement.
176
+ ```sh
177
+ $ pulumi import snowflake:index/execute:Execute example '<random_uuid>'
178
+ ```
182
179
 
183
180
  :param str resource_name: The name of the resource.
184
- :param UnsafeExecuteArgs args: The arguments to use to populate this resource's properties.
181
+ :param ExecuteArgs args: The arguments to use to populate this resource's properties.
185
182
  :param pulumi.ResourceOptions opts: Options for the resource.
186
183
  """
187
184
  ...
188
185
  def __init__(__self__, resource_name: str, *args, **kwargs):
189
- resource_args, opts = _utilities.get_resource_args_opts(UnsafeExecuteArgs, pulumi.ResourceOptions, *args, **kwargs)
186
+ resource_args, opts = _utilities.get_resource_args_opts(ExecuteArgs, pulumi.ResourceOptions, *args, **kwargs)
190
187
  if resource_args is not None:
191
188
  __self__._internal_init(resource_name, opts, **resource_args.__dict__)
192
189
  else:
@@ -205,7 +202,7 @@ class UnsafeExecute(pulumi.CustomResource):
205
202
  if opts.id is None:
206
203
  if __props__ is not None:
207
204
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
208
- __props__ = UnsafeExecuteArgs.__new__(UnsafeExecuteArgs)
205
+ __props__ = ExecuteArgs.__new__(ExecuteArgs)
209
206
 
210
207
  if execute is None and not opts.urn:
211
208
  raise TypeError("Missing required property 'execute'")
@@ -215,8 +212,8 @@ class UnsafeExecute(pulumi.CustomResource):
215
212
  raise TypeError("Missing required property 'revert'")
216
213
  __props__.__dict__["revert"] = revert
217
214
  __props__.__dict__["query_results"] = None
218
- super(UnsafeExecute, __self__).__init__(
219
- 'snowflake:index/unsafeExecute:UnsafeExecute',
215
+ super(Execute, __self__).__init__(
216
+ 'snowflake:index/execute:Execute',
220
217
  resource_name,
221
218
  __props__,
222
219
  opts)
@@ -228,28 +225,28 @@ class UnsafeExecute(pulumi.CustomResource):
228
225
  execute: Optional[pulumi.Input[str]] = None,
229
226
  query: Optional[pulumi.Input[str]] = None,
230
227
  query_results: Optional[pulumi.Input[Sequence[pulumi.Input[Mapping[str, pulumi.Input[str]]]]]] = None,
231
- revert: Optional[pulumi.Input[str]] = None) -> 'UnsafeExecute':
228
+ revert: Optional[pulumi.Input[str]] = None) -> 'Execute':
232
229
  """
233
- Get an existing UnsafeExecute resource's state with the given name, id, and optional extra
230
+ Get an existing Execute resource's state with the given name, id, and optional extra
234
231
  properties used to qualify the lookup.
235
232
 
236
233
  :param str resource_name: The unique name of the resulting resource.
237
234
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
238
235
  :param pulumi.ResourceOptions opts: Options for the resource.
239
236
  :param pulumi.Input[str] execute: SQL statement to execute. Forces recreation of resource on change.
240
- :param pulumi.Input[str] query: Optional SQL statement to do a read. Invoked after creation and every time it is changed.
237
+ :param pulumi.Input[str] query: Optional SQL statement to do a read. Invoked on every resource refresh and every time it is changed.
241
238
  :param pulumi.Input[Sequence[pulumi.Input[Mapping[str, pulumi.Input[str]]]]] query_results: List of key-value maps (text to text) retrieved after executing read query. Will be empty if the query results in an error.
242
239
  :param pulumi.Input[str] revert: SQL statement to revert the execute statement. Invoked when resource is being destroyed.
243
240
  """
244
241
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
245
242
 
246
- __props__ = _UnsafeExecuteState.__new__(_UnsafeExecuteState)
243
+ __props__ = _ExecuteState.__new__(_ExecuteState)
247
244
 
248
245
  __props__.__dict__["execute"] = execute
249
246
  __props__.__dict__["query"] = query
250
247
  __props__.__dict__["query_results"] = query_results
251
248
  __props__.__dict__["revert"] = revert
252
- return UnsafeExecute(resource_name, opts=opts, __props__=__props__)
249
+ return Execute(resource_name, opts=opts, __props__=__props__)
253
250
 
254
251
  @property
255
252
  @pulumi.getter
@@ -263,7 +260,7 @@ class UnsafeExecute(pulumi.CustomResource):
263
260
  @pulumi.getter
264
261
  def query(self) -> pulumi.Output[Optional[str]]:
265
262
  """
266
- Optional SQL statement to do a read. Invoked after creation and every time it is changed.
263
+ Optional SQL statement to do a read. Invoked on every resource refresh and every time it is changed.
267
264
  """
268
265
  return pulumi.get(self, "query")
269
266
 
@@ -4,9 +4,14 @@
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
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -47,7 +52,7 @@ class ExternalFunctionArgs:
47
52
  :param pulumi.Input[Sequence[pulumi.Input[str]]] context_headers: Binds Snowflake context function results to HTTP headers.
48
53
  :param pulumi.Input[Sequence[pulumi.Input['ExternalFunctionHeaderArgs']]] headers: Allows users to specify key-value metadata that is sent with every request as HTTP headers.
49
54
  :param pulumi.Input[int] max_batch_rows: This specifies the maximum number of rows in each batch sent to the proxy service.
50
- :param pulumi.Input[str] name: Argument name
55
+ :param pulumi.Input[str] name: Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
51
56
  :param pulumi.Input[str] null_input_behavior: Specifies the behavior of the external function when called with null inputs.
52
57
  :param pulumi.Input[str] request_translator: This specifies the name of the request translator function
53
58
  :param pulumi.Input[str] response_translator: This specifies the name of the response translator function.
@@ -230,7 +235,7 @@ class ExternalFunctionArgs:
230
235
  @pulumi.getter
231
236
  def name(self) -> Optional[pulumi.Input[str]]:
232
237
  """
233
- Argument name
238
+ Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
234
239
  """
235
240
  return pulumi.get(self, "name")
236
241
 
@@ -297,6 +302,7 @@ class _ExternalFunctionState:
297
302
  context_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
298
303
  created_on: Optional[pulumi.Input[str]] = None,
299
304
  database: Optional[pulumi.Input[str]] = None,
305
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
300
306
  headers: Optional[pulumi.Input[Sequence[pulumi.Input['ExternalFunctionHeaderArgs']]]] = None,
301
307
  max_batch_rows: Optional[pulumi.Input[int]] = None,
302
308
  name: Optional[pulumi.Input[str]] = None,
@@ -317,9 +323,10 @@ class _ExternalFunctionState:
317
323
  :param pulumi.Input[Sequence[pulumi.Input[str]]] context_headers: Binds Snowflake context function results to HTTP headers.
318
324
  :param pulumi.Input[str] created_on: Date and time when the external function was created.
319
325
  :param pulumi.Input[str] database: The database in which to create the external function.
326
+ :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).
320
327
  :param pulumi.Input[Sequence[pulumi.Input['ExternalFunctionHeaderArgs']]] headers: Allows users to specify key-value metadata that is sent with every request as HTTP headers.
321
328
  :param pulumi.Input[int] max_batch_rows: This specifies the maximum number of rows in each batch sent to the proxy service.
322
- :param pulumi.Input[str] name: Argument name
329
+ :param pulumi.Input[str] name: Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
323
330
  :param pulumi.Input[str] null_input_behavior: Specifies the behavior of the external function when called with null inputs.
324
331
  :param pulumi.Input[str] request_translator: This specifies the name of the request translator function
325
332
  :param pulumi.Input[str] response_translator: This specifies the name of the response translator function.
@@ -343,6 +350,8 @@ class _ExternalFunctionState:
343
350
  pulumi.set(__self__, "created_on", created_on)
344
351
  if database is not None:
345
352
  pulumi.set(__self__, "database", database)
353
+ if fully_qualified_name is not None:
354
+ pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
346
355
  if headers is not None:
347
356
  pulumi.set(__self__, "headers", headers)
348
357
  if max_batch_rows is not None:
@@ -450,6 +459,18 @@ class _ExternalFunctionState:
450
459
  def database(self, value: Optional[pulumi.Input[str]]):
451
460
  pulumi.set(self, "database", value)
452
461
 
462
+ @property
463
+ @pulumi.getter(name="fullyQualifiedName")
464
+ def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
465
+ """
466
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
467
+ """
468
+ return pulumi.get(self, "fully_qualified_name")
469
+
470
+ @fully_qualified_name.setter
471
+ def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
472
+ pulumi.set(self, "fully_qualified_name", value)
473
+
453
474
  @property
454
475
  @pulumi.getter
455
476
  def headers(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ExternalFunctionHeaderArgs']]]]:
@@ -478,7 +499,7 @@ class _ExternalFunctionState:
478
499
  @pulumi.getter
479
500
  def name(self) -> Optional[pulumi.Input[str]]:
480
501
  """
481
- Argument name
502
+ Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
482
503
  """
483
504
  return pulumi.get(self, "name")
484
505
 
@@ -589,12 +610,12 @@ class ExternalFunction(pulumi.CustomResource):
589
610
  resource_name: str,
590
611
  opts: Optional[pulumi.ResourceOptions] = None,
591
612
  api_integration: Optional[pulumi.Input[str]] = None,
592
- args: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ExternalFunctionArgArgs']]]]] = None,
613
+ args: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ExternalFunctionArgArgs', 'ExternalFunctionArgArgsDict']]]]] = None,
593
614
  comment: Optional[pulumi.Input[str]] = None,
594
615
  compression: Optional[pulumi.Input[str]] = None,
595
616
  context_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
596
617
  database: Optional[pulumi.Input[str]] = None,
597
- headers: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ExternalFunctionHeaderArgs']]]]] = None,
618
+ headers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ExternalFunctionHeaderArgs', 'ExternalFunctionHeaderArgsDict']]]]] = None,
598
619
  max_batch_rows: Optional[pulumi.Input[int]] = None,
599
620
  name: Optional[pulumi.Input[str]] = None,
600
621
  null_input_behavior: Optional[pulumi.Input[str]] = None,
@@ -607,52 +628,25 @@ class ExternalFunction(pulumi.CustomResource):
607
628
  url_of_proxy_and_resource: Optional[pulumi.Input[str]] = None,
608
629
  __props__=None):
609
630
  """
610
- ## Example Usage
611
-
612
- <!--Start PulumiCodeChooser -->
613
- ```python
614
- import pulumi
615
- import pulumi_snowflake as snowflake
616
-
617
- test_ext_func = snowflake.ExternalFunction("testExtFunc",
618
- api_integration="api_integration_name",
619
- args=[
620
- snowflake.ExternalFunctionArgArgs(
621
- name="arg1",
622
- type="varchar",
623
- ),
624
- snowflake.ExternalFunctionArgArgs(
625
- name="arg2",
626
- type="varchar",
627
- ),
628
- ],
629
- database="my_test_db",
630
- return_behavior="IMMUTABLE",
631
- return_type="variant",
632
- schema="my_test_schema",
633
- url_of_proxy_and_resource="https://123456.execute-api.us-west-2.amazonaws.com/prod/test_func")
634
- ```
635
- <!--End PulumiCodeChooser -->
636
-
637
631
  ## Import
638
632
 
639
- format is database name | schema name | external function name | <list of function arg types, separated with '-'>
633
+ format is <database_name>.<schema_name>.<external_function_name>(<arg types, separated with ','>)
640
634
 
641
635
  ```sh
642
- $ pulumi import snowflake:index/externalFunction:ExternalFunction example 'dbName|schemaName|externalFunctionName|varchar-varchar-varchar'
636
+ $ pulumi import snowflake:index/externalFunction:ExternalFunction example 'dbName.schemaName.externalFunctionName(varchar, varchar, varchar)'
643
637
  ```
644
638
 
645
639
  :param str resource_name: The name of the resource.
646
640
  :param pulumi.ResourceOptions opts: Options for the resource.
647
641
  :param pulumi.Input[str] api_integration: The name of the API integration object that should be used to authenticate the call to the proxy service.
648
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ExternalFunctionArgArgs']]]] args: Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
642
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ExternalFunctionArgArgs', 'ExternalFunctionArgArgsDict']]]] args: Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
649
643
  :param pulumi.Input[str] comment: A description of the external function.
650
644
  :param pulumi.Input[str] compression: If specified, the JSON payload is compressed when sent from Snowflake to the proxy service, and when sent back from the proxy service to Snowflake.
651
645
  :param pulumi.Input[Sequence[pulumi.Input[str]]] context_headers: Binds Snowflake context function results to HTTP headers.
652
646
  :param pulumi.Input[str] database: The database in which to create the external function.
653
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ExternalFunctionHeaderArgs']]]] headers: Allows users to specify key-value metadata that is sent with every request as HTTP headers.
647
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ExternalFunctionHeaderArgs', 'ExternalFunctionHeaderArgsDict']]]] headers: Allows users to specify key-value metadata that is sent with every request as HTTP headers.
654
648
  :param pulumi.Input[int] max_batch_rows: This specifies the maximum number of rows in each batch sent to the proxy service.
655
- :param pulumi.Input[str] name: Argument name
649
+ :param pulumi.Input[str] name: Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
656
650
  :param pulumi.Input[str] null_input_behavior: Specifies the behavior of the external function when called with null inputs.
657
651
  :param pulumi.Input[str] request_translator: This specifies the name of the request translator function
658
652
  :param pulumi.Input[str] response_translator: This specifies the name of the response translator function.
@@ -669,39 +663,12 @@ class ExternalFunction(pulumi.CustomResource):
669
663
  args: ExternalFunctionArgs,
670
664
  opts: Optional[pulumi.ResourceOptions] = None):
671
665
  """
672
- ## Example Usage
673
-
674
- <!--Start PulumiCodeChooser -->
675
- ```python
676
- import pulumi
677
- import pulumi_snowflake as snowflake
678
-
679
- test_ext_func = snowflake.ExternalFunction("testExtFunc",
680
- api_integration="api_integration_name",
681
- args=[
682
- snowflake.ExternalFunctionArgArgs(
683
- name="arg1",
684
- type="varchar",
685
- ),
686
- snowflake.ExternalFunctionArgArgs(
687
- name="arg2",
688
- type="varchar",
689
- ),
690
- ],
691
- database="my_test_db",
692
- return_behavior="IMMUTABLE",
693
- return_type="variant",
694
- schema="my_test_schema",
695
- url_of_proxy_and_resource="https://123456.execute-api.us-west-2.amazonaws.com/prod/test_func")
696
- ```
697
- <!--End PulumiCodeChooser -->
698
-
699
666
  ## Import
700
667
 
701
- format is database name | schema name | external function name | <list of function arg types, separated with '-'>
668
+ format is <database_name>.<schema_name>.<external_function_name>(<arg types, separated with ','>)
702
669
 
703
670
  ```sh
704
- $ pulumi import snowflake:index/externalFunction:ExternalFunction example 'dbName|schemaName|externalFunctionName|varchar-varchar-varchar'
671
+ $ pulumi import snowflake:index/externalFunction:ExternalFunction example 'dbName.schemaName.externalFunctionName(varchar, varchar, varchar)'
705
672
  ```
706
673
 
707
674
  :param str resource_name: The name of the resource.
@@ -720,12 +687,12 @@ class ExternalFunction(pulumi.CustomResource):
720
687
  resource_name: str,
721
688
  opts: Optional[pulumi.ResourceOptions] = None,
722
689
  api_integration: Optional[pulumi.Input[str]] = None,
723
- args: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ExternalFunctionArgArgs']]]]] = None,
690
+ args: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ExternalFunctionArgArgs', 'ExternalFunctionArgArgsDict']]]]] = None,
724
691
  comment: Optional[pulumi.Input[str]] = None,
725
692
  compression: Optional[pulumi.Input[str]] = None,
726
693
  context_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
727
694
  database: Optional[pulumi.Input[str]] = None,
728
- headers: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ExternalFunctionHeaderArgs']]]]] = None,
695
+ headers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ExternalFunctionHeaderArgs', 'ExternalFunctionHeaderArgsDict']]]]] = None,
729
696
  max_batch_rows: Optional[pulumi.Input[int]] = None,
730
697
  name: Optional[pulumi.Input[str]] = None,
731
698
  null_input_behavior: Optional[pulumi.Input[str]] = None,
@@ -775,6 +742,7 @@ class ExternalFunction(pulumi.CustomResource):
775
742
  raise TypeError("Missing required property 'url_of_proxy_and_resource'")
776
743
  __props__.__dict__["url_of_proxy_and_resource"] = url_of_proxy_and_resource
777
744
  __props__.__dict__["created_on"] = None
745
+ __props__.__dict__["fully_qualified_name"] = None
778
746
  super(ExternalFunction, __self__).__init__(
779
747
  'snowflake:index/externalFunction:ExternalFunction',
780
748
  resource_name,
@@ -786,13 +754,14 @@ class ExternalFunction(pulumi.CustomResource):
786
754
  id: pulumi.Input[str],
787
755
  opts: Optional[pulumi.ResourceOptions] = None,
788
756
  api_integration: Optional[pulumi.Input[str]] = None,
789
- args: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ExternalFunctionArgArgs']]]]] = None,
757
+ args: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ExternalFunctionArgArgs', 'ExternalFunctionArgArgsDict']]]]] = None,
790
758
  comment: Optional[pulumi.Input[str]] = None,
791
759
  compression: Optional[pulumi.Input[str]] = None,
792
760
  context_headers: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
793
761
  created_on: Optional[pulumi.Input[str]] = None,
794
762
  database: Optional[pulumi.Input[str]] = None,
795
- headers: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ExternalFunctionHeaderArgs']]]]] = None,
763
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
764
+ headers: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ExternalFunctionHeaderArgs', 'ExternalFunctionHeaderArgsDict']]]]] = None,
796
765
  max_batch_rows: Optional[pulumi.Input[int]] = None,
797
766
  name: Optional[pulumi.Input[str]] = None,
798
767
  null_input_behavior: Optional[pulumi.Input[str]] = None,
@@ -811,15 +780,16 @@ class ExternalFunction(pulumi.CustomResource):
811
780
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
812
781
  :param pulumi.ResourceOptions opts: Options for the resource.
813
782
  :param pulumi.Input[str] api_integration: The name of the API integration object that should be used to authenticate the call to the proxy service.
814
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ExternalFunctionArgArgs']]]] args: Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
783
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ExternalFunctionArgArgs', 'ExternalFunctionArgArgsDict']]]] args: Specifies the arguments/inputs for the external function. These should correspond to the arguments that the remote service expects.
815
784
  :param pulumi.Input[str] comment: A description of the external function.
816
785
  :param pulumi.Input[str] compression: If specified, the JSON payload is compressed when sent from Snowflake to the proxy service, and when sent back from the proxy service to Snowflake.
817
786
  :param pulumi.Input[Sequence[pulumi.Input[str]]] context_headers: Binds Snowflake context function results to HTTP headers.
818
787
  :param pulumi.Input[str] created_on: Date and time when the external function was created.
819
788
  :param pulumi.Input[str] database: The database in which to create the external function.
820
- :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['ExternalFunctionHeaderArgs']]]] headers: Allows users to specify key-value metadata that is sent with every request as HTTP headers.
789
+ :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).
790
+ :param pulumi.Input[Sequence[pulumi.Input[Union['ExternalFunctionHeaderArgs', 'ExternalFunctionHeaderArgsDict']]]] headers: Allows users to specify key-value metadata that is sent with every request as HTTP headers.
821
791
  :param pulumi.Input[int] max_batch_rows: This specifies the maximum number of rows in each batch sent to the proxy service.
822
- :param pulumi.Input[str] name: Argument name
792
+ :param pulumi.Input[str] name: Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
823
793
  :param pulumi.Input[str] null_input_behavior: Specifies the behavior of the external function when called with null inputs.
824
794
  :param pulumi.Input[str] request_translator: This specifies the name of the request translator function
825
795
  :param pulumi.Input[str] response_translator: This specifies the name of the response translator function.
@@ -840,6 +810,7 @@ class ExternalFunction(pulumi.CustomResource):
840
810
  __props__.__dict__["context_headers"] = context_headers
841
811
  __props__.__dict__["created_on"] = created_on
842
812
  __props__.__dict__["database"] = database
813
+ __props__.__dict__["fully_qualified_name"] = fully_qualified_name
843
814
  __props__.__dict__["headers"] = headers
844
815
  __props__.__dict__["max_batch_rows"] = max_batch_rows
845
816
  __props__.__dict__["name"] = name
@@ -909,6 +880,14 @@ class ExternalFunction(pulumi.CustomResource):
909
880
  """
910
881
  return pulumi.get(self, "database")
911
882
 
883
+ @property
884
+ @pulumi.getter(name="fullyQualifiedName")
885
+ def fully_qualified_name(self) -> pulumi.Output[str]:
886
+ """
887
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
888
+ """
889
+ return pulumi.get(self, "fully_qualified_name")
890
+
912
891
  @property
913
892
  @pulumi.getter
914
893
  def headers(self) -> pulumi.Output[Optional[Sequence['outputs.ExternalFunctionHeader']]]:
@@ -929,7 +908,7 @@ class ExternalFunction(pulumi.CustomResource):
929
908
  @pulumi.getter
930
909
  def name(self) -> pulumi.Output[str]:
931
910
  """
932
- Argument name
911
+ Specifies the identifier for the external function. The identifier can contain the schema name and database name, as well as the function name. The function's signature (name and argument data types) must be unique within the schema.
933
912
  """
934
913
  return pulumi.get(self, "name")
935
914