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
@@ -0,0 +1,632 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
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
15
+ from . import _utilities
16
+ from . import outputs
17
+ from ._inputs import *
18
+
19
+ __all__ = ['StreamOnExternalTableArgs', 'StreamOnExternalTable']
20
+
21
+ @pulumi.input_type
22
+ class StreamOnExternalTableArgs:
23
+ def __init__(__self__, *,
24
+ database: pulumi.Input[str],
25
+ external_table: pulumi.Input[str],
26
+ schema: pulumi.Input[str],
27
+ at: Optional[pulumi.Input['StreamOnExternalTableAtArgs']] = None,
28
+ before: Optional[pulumi.Input['StreamOnExternalTableBeforeArgs']] = None,
29
+ comment: Optional[pulumi.Input[str]] = None,
30
+ copy_grants: Optional[pulumi.Input[bool]] = None,
31
+ insert_only: Optional[pulumi.Input[str]] = None,
32
+ name: Optional[pulumi.Input[str]] = None):
33
+ """
34
+ The set of arguments for constructing a StreamOnExternalTable resource.
35
+ :param pulumi.Input[str] database: The database in which to create the stream. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
36
+ :param pulumi.Input[str] external_table: Specifies an identifier for the external table the stream will monitor. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`. For more information about this resource, see docs.
37
+ :param pulumi.Input[str] schema: The schema in which to create the stream. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
38
+ :param pulumi.Input[str] comment: Specifies a comment for the stream.
39
+ :param pulumi.Input[str] insert_only: Specifies whether this is an insert-only stream. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
40
+ :param pulumi.Input[str] name: Specifies the identifier for the stream; must be unique for the database and schema in which the stream is created. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
41
+ """
42
+ pulumi.set(__self__, "database", database)
43
+ pulumi.set(__self__, "external_table", external_table)
44
+ pulumi.set(__self__, "schema", schema)
45
+ if at is not None:
46
+ pulumi.set(__self__, "at", at)
47
+ if before is not None:
48
+ pulumi.set(__self__, "before", before)
49
+ if comment is not None:
50
+ pulumi.set(__self__, "comment", comment)
51
+ if copy_grants is not None:
52
+ pulumi.set(__self__, "copy_grants", copy_grants)
53
+ if insert_only is not None:
54
+ pulumi.set(__self__, "insert_only", insert_only)
55
+ if name is not None:
56
+ pulumi.set(__self__, "name", name)
57
+
58
+ @property
59
+ @pulumi.getter
60
+ def database(self) -> pulumi.Input[str]:
61
+ """
62
+ The database in which to create the stream. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
63
+ """
64
+ return pulumi.get(self, "database")
65
+
66
+ @database.setter
67
+ def database(self, value: pulumi.Input[str]):
68
+ pulumi.set(self, "database", value)
69
+
70
+ @property
71
+ @pulumi.getter(name="externalTable")
72
+ def external_table(self) -> pulumi.Input[str]:
73
+ """
74
+ Specifies an identifier for the external table the stream will monitor. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`. For more information about this resource, see docs.
75
+ """
76
+ return pulumi.get(self, "external_table")
77
+
78
+ @external_table.setter
79
+ def external_table(self, value: pulumi.Input[str]):
80
+ pulumi.set(self, "external_table", value)
81
+
82
+ @property
83
+ @pulumi.getter
84
+ def schema(self) -> pulumi.Input[str]:
85
+ """
86
+ The schema in which to create the stream. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
87
+ """
88
+ return pulumi.get(self, "schema")
89
+
90
+ @schema.setter
91
+ def schema(self, value: pulumi.Input[str]):
92
+ pulumi.set(self, "schema", value)
93
+
94
+ @property
95
+ @pulumi.getter
96
+ def at(self) -> Optional[pulumi.Input['StreamOnExternalTableAtArgs']]:
97
+ return pulumi.get(self, "at")
98
+
99
+ @at.setter
100
+ def at(self, value: Optional[pulumi.Input['StreamOnExternalTableAtArgs']]):
101
+ pulumi.set(self, "at", value)
102
+
103
+ @property
104
+ @pulumi.getter
105
+ def before(self) -> Optional[pulumi.Input['StreamOnExternalTableBeforeArgs']]:
106
+ return pulumi.get(self, "before")
107
+
108
+ @before.setter
109
+ def before(self, value: Optional[pulumi.Input['StreamOnExternalTableBeforeArgs']]):
110
+ pulumi.set(self, "before", value)
111
+
112
+ @property
113
+ @pulumi.getter
114
+ def comment(self) -> Optional[pulumi.Input[str]]:
115
+ """
116
+ Specifies a comment for the stream.
117
+ """
118
+ return pulumi.get(self, "comment")
119
+
120
+ @comment.setter
121
+ def comment(self, value: Optional[pulumi.Input[str]]):
122
+ pulumi.set(self, "comment", value)
123
+
124
+ @property
125
+ @pulumi.getter(name="copyGrants")
126
+ def copy_grants(self) -> Optional[pulumi.Input[bool]]:
127
+ return pulumi.get(self, "copy_grants")
128
+
129
+ @copy_grants.setter
130
+ def copy_grants(self, value: Optional[pulumi.Input[bool]]):
131
+ pulumi.set(self, "copy_grants", value)
132
+
133
+ @property
134
+ @pulumi.getter(name="insertOnly")
135
+ def insert_only(self) -> Optional[pulumi.Input[str]]:
136
+ """
137
+ Specifies whether this is an insert-only stream. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
138
+ """
139
+ return pulumi.get(self, "insert_only")
140
+
141
+ @insert_only.setter
142
+ def insert_only(self, value: Optional[pulumi.Input[str]]):
143
+ pulumi.set(self, "insert_only", value)
144
+
145
+ @property
146
+ @pulumi.getter
147
+ def name(self) -> Optional[pulumi.Input[str]]:
148
+ """
149
+ Specifies the identifier for the stream; must be unique for the database and schema in which the stream is created. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
150
+ """
151
+ return pulumi.get(self, "name")
152
+
153
+ @name.setter
154
+ def name(self, value: Optional[pulumi.Input[str]]):
155
+ pulumi.set(self, "name", value)
156
+
157
+
158
+ @pulumi.input_type
159
+ class _StreamOnExternalTableState:
160
+ def __init__(__self__, *,
161
+ at: Optional[pulumi.Input['StreamOnExternalTableAtArgs']] = None,
162
+ before: Optional[pulumi.Input['StreamOnExternalTableBeforeArgs']] = None,
163
+ comment: Optional[pulumi.Input[str]] = None,
164
+ copy_grants: Optional[pulumi.Input[bool]] = None,
165
+ database: Optional[pulumi.Input[str]] = None,
166
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['StreamOnExternalTableDescribeOutputArgs']]]] = None,
167
+ external_table: Optional[pulumi.Input[str]] = None,
168
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
169
+ insert_only: Optional[pulumi.Input[str]] = None,
170
+ name: Optional[pulumi.Input[str]] = None,
171
+ schema: Optional[pulumi.Input[str]] = None,
172
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['StreamOnExternalTableShowOutputArgs']]]] = None,
173
+ stale: Optional[pulumi.Input[bool]] = None,
174
+ stream_type: Optional[pulumi.Input[str]] = None):
175
+ """
176
+ Input properties used for looking up and filtering StreamOnExternalTable resources.
177
+ :param pulumi.Input[str] comment: Specifies a comment for the stream.
178
+ :param pulumi.Input[str] database: The database in which to create the stream. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
179
+ :param pulumi.Input[Sequence[pulumi.Input['StreamOnExternalTableDescribeOutputArgs']]] describe_outputs: Outputs the result of `DESCRIBE STREAM` for the given stream.
180
+ :param pulumi.Input[str] external_table: Specifies an identifier for the external table the stream will monitor. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`. For more information about this resource, see docs.
181
+ :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).
182
+ :param pulumi.Input[str] insert_only: Specifies whether this is an insert-only stream. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
183
+ :param pulumi.Input[str] name: Specifies the identifier for the stream; must be unique for the database and schema in which the stream is created. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
184
+ :param pulumi.Input[str] schema: The schema in which to create the stream. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
185
+ :param pulumi.Input[Sequence[pulumi.Input['StreamOnExternalTableShowOutputArgs']]] show_outputs: Outputs the result of `SHOW STREAMS` for the given stream.
186
+ :param pulumi.Input[str] stream_type: Specifies a type for the stream. This field is used for checking external changes and recreating the resources if needed.
187
+ """
188
+ if at is not None:
189
+ pulumi.set(__self__, "at", at)
190
+ if before is not None:
191
+ pulumi.set(__self__, "before", before)
192
+ if comment is not None:
193
+ pulumi.set(__self__, "comment", comment)
194
+ if copy_grants is not None:
195
+ pulumi.set(__self__, "copy_grants", copy_grants)
196
+ if database is not None:
197
+ pulumi.set(__self__, "database", database)
198
+ if describe_outputs is not None:
199
+ pulumi.set(__self__, "describe_outputs", describe_outputs)
200
+ if external_table is not None:
201
+ pulumi.set(__self__, "external_table", external_table)
202
+ if fully_qualified_name is not None:
203
+ pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
204
+ if insert_only is not None:
205
+ pulumi.set(__self__, "insert_only", insert_only)
206
+ if name is not None:
207
+ pulumi.set(__self__, "name", name)
208
+ if schema is not None:
209
+ pulumi.set(__self__, "schema", schema)
210
+ if show_outputs is not None:
211
+ pulumi.set(__self__, "show_outputs", show_outputs)
212
+ if stale is not None:
213
+ pulumi.set(__self__, "stale", stale)
214
+ if stream_type is not None:
215
+ pulumi.set(__self__, "stream_type", stream_type)
216
+
217
+ @property
218
+ @pulumi.getter
219
+ def at(self) -> Optional[pulumi.Input['StreamOnExternalTableAtArgs']]:
220
+ return pulumi.get(self, "at")
221
+
222
+ @at.setter
223
+ def at(self, value: Optional[pulumi.Input['StreamOnExternalTableAtArgs']]):
224
+ pulumi.set(self, "at", value)
225
+
226
+ @property
227
+ @pulumi.getter
228
+ def before(self) -> Optional[pulumi.Input['StreamOnExternalTableBeforeArgs']]:
229
+ return pulumi.get(self, "before")
230
+
231
+ @before.setter
232
+ def before(self, value: Optional[pulumi.Input['StreamOnExternalTableBeforeArgs']]):
233
+ pulumi.set(self, "before", value)
234
+
235
+ @property
236
+ @pulumi.getter
237
+ def comment(self) -> Optional[pulumi.Input[str]]:
238
+ """
239
+ Specifies a comment for the stream.
240
+ """
241
+ return pulumi.get(self, "comment")
242
+
243
+ @comment.setter
244
+ def comment(self, value: Optional[pulumi.Input[str]]):
245
+ pulumi.set(self, "comment", value)
246
+
247
+ @property
248
+ @pulumi.getter(name="copyGrants")
249
+ def copy_grants(self) -> Optional[pulumi.Input[bool]]:
250
+ return pulumi.get(self, "copy_grants")
251
+
252
+ @copy_grants.setter
253
+ def copy_grants(self, value: Optional[pulumi.Input[bool]]):
254
+ pulumi.set(self, "copy_grants", value)
255
+
256
+ @property
257
+ @pulumi.getter
258
+ def database(self) -> Optional[pulumi.Input[str]]:
259
+ """
260
+ The database in which to create the stream. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
261
+ """
262
+ return pulumi.get(self, "database")
263
+
264
+ @database.setter
265
+ def database(self, value: Optional[pulumi.Input[str]]):
266
+ pulumi.set(self, "database", value)
267
+
268
+ @property
269
+ @pulumi.getter(name="describeOutputs")
270
+ def describe_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['StreamOnExternalTableDescribeOutputArgs']]]]:
271
+ """
272
+ Outputs the result of `DESCRIBE STREAM` for the given stream.
273
+ """
274
+ return pulumi.get(self, "describe_outputs")
275
+
276
+ @describe_outputs.setter
277
+ def describe_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['StreamOnExternalTableDescribeOutputArgs']]]]):
278
+ pulumi.set(self, "describe_outputs", value)
279
+
280
+ @property
281
+ @pulumi.getter(name="externalTable")
282
+ def external_table(self) -> Optional[pulumi.Input[str]]:
283
+ """
284
+ Specifies an identifier for the external table the stream will monitor. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`. For more information about this resource, see docs.
285
+ """
286
+ return pulumi.get(self, "external_table")
287
+
288
+ @external_table.setter
289
+ def external_table(self, value: Optional[pulumi.Input[str]]):
290
+ pulumi.set(self, "external_table", value)
291
+
292
+ @property
293
+ @pulumi.getter(name="fullyQualifiedName")
294
+ def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
295
+ """
296
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
297
+ """
298
+ return pulumi.get(self, "fully_qualified_name")
299
+
300
+ @fully_qualified_name.setter
301
+ def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
302
+ pulumi.set(self, "fully_qualified_name", value)
303
+
304
+ @property
305
+ @pulumi.getter(name="insertOnly")
306
+ def insert_only(self) -> Optional[pulumi.Input[str]]:
307
+ """
308
+ Specifies whether this is an insert-only stream. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
309
+ """
310
+ return pulumi.get(self, "insert_only")
311
+
312
+ @insert_only.setter
313
+ def insert_only(self, value: Optional[pulumi.Input[str]]):
314
+ pulumi.set(self, "insert_only", value)
315
+
316
+ @property
317
+ @pulumi.getter
318
+ def name(self) -> Optional[pulumi.Input[str]]:
319
+ """
320
+ Specifies the identifier for the stream; must be unique for the database and schema in which the stream is created. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
321
+ """
322
+ return pulumi.get(self, "name")
323
+
324
+ @name.setter
325
+ def name(self, value: Optional[pulumi.Input[str]]):
326
+ pulumi.set(self, "name", value)
327
+
328
+ @property
329
+ @pulumi.getter
330
+ def schema(self) -> Optional[pulumi.Input[str]]:
331
+ """
332
+ The schema in which to create the stream. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
333
+ """
334
+ return pulumi.get(self, "schema")
335
+
336
+ @schema.setter
337
+ def schema(self, value: Optional[pulumi.Input[str]]):
338
+ pulumi.set(self, "schema", value)
339
+
340
+ @property
341
+ @pulumi.getter(name="showOutputs")
342
+ def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['StreamOnExternalTableShowOutputArgs']]]]:
343
+ """
344
+ Outputs the result of `SHOW STREAMS` for the given stream.
345
+ """
346
+ return pulumi.get(self, "show_outputs")
347
+
348
+ @show_outputs.setter
349
+ def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['StreamOnExternalTableShowOutputArgs']]]]):
350
+ pulumi.set(self, "show_outputs", value)
351
+
352
+ @property
353
+ @pulumi.getter
354
+ def stale(self) -> Optional[pulumi.Input[bool]]:
355
+ return pulumi.get(self, "stale")
356
+
357
+ @stale.setter
358
+ def stale(self, value: Optional[pulumi.Input[bool]]):
359
+ pulumi.set(self, "stale", value)
360
+
361
+ @property
362
+ @pulumi.getter(name="streamType")
363
+ def stream_type(self) -> Optional[pulumi.Input[str]]:
364
+ """
365
+ Specifies a type for the stream. This field is used for checking external changes and recreating the resources if needed.
366
+ """
367
+ return pulumi.get(self, "stream_type")
368
+
369
+ @stream_type.setter
370
+ def stream_type(self, value: Optional[pulumi.Input[str]]):
371
+ pulumi.set(self, "stream_type", value)
372
+
373
+
374
+ class StreamOnExternalTable(pulumi.CustomResource):
375
+ @overload
376
+ def __init__(__self__,
377
+ resource_name: str,
378
+ opts: Optional[pulumi.ResourceOptions] = None,
379
+ at: Optional[pulumi.Input[Union['StreamOnExternalTableAtArgs', 'StreamOnExternalTableAtArgsDict']]] = None,
380
+ before: Optional[pulumi.Input[Union['StreamOnExternalTableBeforeArgs', 'StreamOnExternalTableBeforeArgsDict']]] = None,
381
+ comment: Optional[pulumi.Input[str]] = None,
382
+ copy_grants: Optional[pulumi.Input[bool]] = None,
383
+ database: Optional[pulumi.Input[str]] = None,
384
+ external_table: Optional[pulumi.Input[str]] = None,
385
+ insert_only: Optional[pulumi.Input[str]] = None,
386
+ name: Optional[pulumi.Input[str]] = None,
387
+ schema: Optional[pulumi.Input[str]] = None,
388
+ __props__=None):
389
+ """
390
+ ## Import
391
+
392
+ ```sh
393
+ $ pulumi import snowflake:index/streamOnExternalTable:StreamOnExternalTable example '"<database_name>"."<schema_name>"."<stream_name>"'
394
+ ```
395
+
396
+ :param str resource_name: The name of the resource.
397
+ :param pulumi.ResourceOptions opts: Options for the resource.
398
+ :param pulumi.Input[str] comment: Specifies a comment for the stream.
399
+ :param pulumi.Input[str] database: The database in which to create the stream. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
400
+ :param pulumi.Input[str] external_table: Specifies an identifier for the external table the stream will monitor. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`. For more information about this resource, see docs.
401
+ :param pulumi.Input[str] insert_only: Specifies whether this is an insert-only stream. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
402
+ :param pulumi.Input[str] name: Specifies the identifier for the stream; must be unique for the database and schema in which the stream is created. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
403
+ :param pulumi.Input[str] schema: The schema in which to create the stream. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
404
+ """
405
+ ...
406
+ @overload
407
+ def __init__(__self__,
408
+ resource_name: str,
409
+ args: StreamOnExternalTableArgs,
410
+ opts: Optional[pulumi.ResourceOptions] = None):
411
+ """
412
+ ## Import
413
+
414
+ ```sh
415
+ $ pulumi import snowflake:index/streamOnExternalTable:StreamOnExternalTable example '"<database_name>"."<schema_name>"."<stream_name>"'
416
+ ```
417
+
418
+ :param str resource_name: The name of the resource.
419
+ :param StreamOnExternalTableArgs args: The arguments to use to populate this resource's properties.
420
+ :param pulumi.ResourceOptions opts: Options for the resource.
421
+ """
422
+ ...
423
+ def __init__(__self__, resource_name: str, *args, **kwargs):
424
+ resource_args, opts = _utilities.get_resource_args_opts(StreamOnExternalTableArgs, pulumi.ResourceOptions, *args, **kwargs)
425
+ if resource_args is not None:
426
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
427
+ else:
428
+ __self__._internal_init(resource_name, *args, **kwargs)
429
+
430
+ def _internal_init(__self__,
431
+ resource_name: str,
432
+ opts: Optional[pulumi.ResourceOptions] = None,
433
+ at: Optional[pulumi.Input[Union['StreamOnExternalTableAtArgs', 'StreamOnExternalTableAtArgsDict']]] = None,
434
+ before: Optional[pulumi.Input[Union['StreamOnExternalTableBeforeArgs', 'StreamOnExternalTableBeforeArgsDict']]] = None,
435
+ comment: Optional[pulumi.Input[str]] = None,
436
+ copy_grants: Optional[pulumi.Input[bool]] = None,
437
+ database: Optional[pulumi.Input[str]] = None,
438
+ external_table: Optional[pulumi.Input[str]] = None,
439
+ insert_only: Optional[pulumi.Input[str]] = None,
440
+ name: Optional[pulumi.Input[str]] = None,
441
+ schema: Optional[pulumi.Input[str]] = None,
442
+ __props__=None):
443
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
444
+ if not isinstance(opts, pulumi.ResourceOptions):
445
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
446
+ if opts.id is None:
447
+ if __props__ is not None:
448
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
449
+ __props__ = StreamOnExternalTableArgs.__new__(StreamOnExternalTableArgs)
450
+
451
+ __props__.__dict__["at"] = at
452
+ __props__.__dict__["before"] = before
453
+ __props__.__dict__["comment"] = comment
454
+ __props__.__dict__["copy_grants"] = copy_grants
455
+ if database is None and not opts.urn:
456
+ raise TypeError("Missing required property 'database'")
457
+ __props__.__dict__["database"] = database
458
+ if external_table is None and not opts.urn:
459
+ raise TypeError("Missing required property 'external_table'")
460
+ __props__.__dict__["external_table"] = external_table
461
+ __props__.__dict__["insert_only"] = insert_only
462
+ __props__.__dict__["name"] = name
463
+ if schema is None and not opts.urn:
464
+ raise TypeError("Missing required property 'schema'")
465
+ __props__.__dict__["schema"] = schema
466
+ __props__.__dict__["describe_outputs"] = None
467
+ __props__.__dict__["fully_qualified_name"] = None
468
+ __props__.__dict__["show_outputs"] = None
469
+ __props__.__dict__["stale"] = None
470
+ __props__.__dict__["stream_type"] = None
471
+ super(StreamOnExternalTable, __self__).__init__(
472
+ 'snowflake:index/streamOnExternalTable:StreamOnExternalTable',
473
+ resource_name,
474
+ __props__,
475
+ opts)
476
+
477
+ @staticmethod
478
+ def get(resource_name: str,
479
+ id: pulumi.Input[str],
480
+ opts: Optional[pulumi.ResourceOptions] = None,
481
+ at: Optional[pulumi.Input[Union['StreamOnExternalTableAtArgs', 'StreamOnExternalTableAtArgsDict']]] = None,
482
+ before: Optional[pulumi.Input[Union['StreamOnExternalTableBeforeArgs', 'StreamOnExternalTableBeforeArgsDict']]] = None,
483
+ comment: Optional[pulumi.Input[str]] = None,
484
+ copy_grants: Optional[pulumi.Input[bool]] = None,
485
+ database: Optional[pulumi.Input[str]] = None,
486
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['StreamOnExternalTableDescribeOutputArgs', 'StreamOnExternalTableDescribeOutputArgsDict']]]]] = None,
487
+ external_table: Optional[pulumi.Input[str]] = None,
488
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
489
+ insert_only: Optional[pulumi.Input[str]] = None,
490
+ name: Optional[pulumi.Input[str]] = None,
491
+ schema: Optional[pulumi.Input[str]] = None,
492
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['StreamOnExternalTableShowOutputArgs', 'StreamOnExternalTableShowOutputArgsDict']]]]] = None,
493
+ stale: Optional[pulumi.Input[bool]] = None,
494
+ stream_type: Optional[pulumi.Input[str]] = None) -> 'StreamOnExternalTable':
495
+ """
496
+ Get an existing StreamOnExternalTable resource's state with the given name, id, and optional extra
497
+ properties used to qualify the lookup.
498
+
499
+ :param str resource_name: The unique name of the resulting resource.
500
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
501
+ :param pulumi.ResourceOptions opts: Options for the resource.
502
+ :param pulumi.Input[str] comment: Specifies a comment for the stream.
503
+ :param pulumi.Input[str] database: The database in which to create the stream. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
504
+ :param pulumi.Input[Sequence[pulumi.Input[Union['StreamOnExternalTableDescribeOutputArgs', 'StreamOnExternalTableDescribeOutputArgsDict']]]] describe_outputs: Outputs the result of `DESCRIBE STREAM` for the given stream.
505
+ :param pulumi.Input[str] external_table: Specifies an identifier for the external table the stream will monitor. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`. For more information about this resource, see docs.
506
+ :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).
507
+ :param pulumi.Input[str] insert_only: Specifies whether this is an insert-only stream. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
508
+ :param pulumi.Input[str] name: Specifies the identifier for the stream; must be unique for the database and schema in which the stream is created. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
509
+ :param pulumi.Input[str] schema: The schema in which to create the stream. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
510
+ :param pulumi.Input[Sequence[pulumi.Input[Union['StreamOnExternalTableShowOutputArgs', 'StreamOnExternalTableShowOutputArgsDict']]]] show_outputs: Outputs the result of `SHOW STREAMS` for the given stream.
511
+ :param pulumi.Input[str] stream_type: Specifies a type for the stream. This field is used for checking external changes and recreating the resources if needed.
512
+ """
513
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
514
+
515
+ __props__ = _StreamOnExternalTableState.__new__(_StreamOnExternalTableState)
516
+
517
+ __props__.__dict__["at"] = at
518
+ __props__.__dict__["before"] = before
519
+ __props__.__dict__["comment"] = comment
520
+ __props__.__dict__["copy_grants"] = copy_grants
521
+ __props__.__dict__["database"] = database
522
+ __props__.__dict__["describe_outputs"] = describe_outputs
523
+ __props__.__dict__["external_table"] = external_table
524
+ __props__.__dict__["fully_qualified_name"] = fully_qualified_name
525
+ __props__.__dict__["insert_only"] = insert_only
526
+ __props__.__dict__["name"] = name
527
+ __props__.__dict__["schema"] = schema
528
+ __props__.__dict__["show_outputs"] = show_outputs
529
+ __props__.__dict__["stale"] = stale
530
+ __props__.__dict__["stream_type"] = stream_type
531
+ return StreamOnExternalTable(resource_name, opts=opts, __props__=__props__)
532
+
533
+ @property
534
+ @pulumi.getter
535
+ def at(self) -> pulumi.Output[Optional['outputs.StreamOnExternalTableAt']]:
536
+ return pulumi.get(self, "at")
537
+
538
+ @property
539
+ @pulumi.getter
540
+ def before(self) -> pulumi.Output[Optional['outputs.StreamOnExternalTableBefore']]:
541
+ return pulumi.get(self, "before")
542
+
543
+ @property
544
+ @pulumi.getter
545
+ def comment(self) -> pulumi.Output[Optional[str]]:
546
+ """
547
+ Specifies a comment for the stream.
548
+ """
549
+ return pulumi.get(self, "comment")
550
+
551
+ @property
552
+ @pulumi.getter(name="copyGrants")
553
+ def copy_grants(self) -> pulumi.Output[Optional[bool]]:
554
+ return pulumi.get(self, "copy_grants")
555
+
556
+ @property
557
+ @pulumi.getter
558
+ def database(self) -> pulumi.Output[str]:
559
+ """
560
+ The database in which to create the stream. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
561
+ """
562
+ return pulumi.get(self, "database")
563
+
564
+ @property
565
+ @pulumi.getter(name="describeOutputs")
566
+ def describe_outputs(self) -> pulumi.Output[Sequence['outputs.StreamOnExternalTableDescribeOutput']]:
567
+ """
568
+ Outputs the result of `DESCRIBE STREAM` for the given stream.
569
+ """
570
+ return pulumi.get(self, "describe_outputs")
571
+
572
+ @property
573
+ @pulumi.getter(name="externalTable")
574
+ def external_table(self) -> pulumi.Output[str]:
575
+ """
576
+ Specifies an identifier for the external table the stream will monitor. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`. For more information about this resource, see docs.
577
+ """
578
+ return pulumi.get(self, "external_table")
579
+
580
+ @property
581
+ @pulumi.getter(name="fullyQualifiedName")
582
+ def fully_qualified_name(self) -> pulumi.Output[str]:
583
+ """
584
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
585
+ """
586
+ return pulumi.get(self, "fully_qualified_name")
587
+
588
+ @property
589
+ @pulumi.getter(name="insertOnly")
590
+ def insert_only(self) -> pulumi.Output[Optional[str]]:
591
+ """
592
+ Specifies whether this is an insert-only stream. Available options are: "true" or "false". When the value is not set in the configuration the provider will put "default" there which means to use the Snowflake default for this value.
593
+ """
594
+ return pulumi.get(self, "insert_only")
595
+
596
+ @property
597
+ @pulumi.getter
598
+ def name(self) -> pulumi.Output[str]:
599
+ """
600
+ Specifies the identifier for the stream; must be unique for the database and schema in which the stream is created. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
601
+ """
602
+ return pulumi.get(self, "name")
603
+
604
+ @property
605
+ @pulumi.getter
606
+ def schema(self) -> pulumi.Output[str]:
607
+ """
608
+ The schema in which to create the stream. Due to technical limitations (read more here), avoid using the following characters: `|`, `.`, `"`.
609
+ """
610
+ return pulumi.get(self, "schema")
611
+
612
+ @property
613
+ @pulumi.getter(name="showOutputs")
614
+ def show_outputs(self) -> pulumi.Output[Sequence['outputs.StreamOnExternalTableShowOutput']]:
615
+ """
616
+ Outputs the result of `SHOW STREAMS` for the given stream.
617
+ """
618
+ return pulumi.get(self, "show_outputs")
619
+
620
+ @property
621
+ @pulumi.getter
622
+ def stale(self) -> pulumi.Output[bool]:
623
+ return pulumi.get(self, "stale")
624
+
625
+ @property
626
+ @pulumi.getter(name="streamType")
627
+ def stream_type(self) -> pulumi.Output[str]:
628
+ """
629
+ Specifies a type for the stream. This field is used for checking external changes and recreating the resources if needed.
630
+ """
631
+ return pulumi.get(self, "stream_type")
632
+