pulumi-snowflake 0.50.2a1709892015__py3-none-any.whl → 1.2.0a1736835738__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of pulumi-snowflake might be problematic. Click here for more details.
- pulumi_snowflake/__init__.py +224 -172
- pulumi_snowflake/_inputs.py +52854 -1662
- pulumi_snowflake/_utilities.py +41 -5
- pulumi_snowflake/account.py +188 -214
- pulumi_snowflake/account_authentication_policy_attachment.py +149 -0
- pulumi_snowflake/account_parameter.py +21 -44
- pulumi_snowflake/account_password_policy_attachment.py +7 -28
- pulumi_snowflake/account_role.py +250 -0
- pulumi_snowflake/alert.py +38 -43
- pulumi_snowflake/api_authentication_integration_with_authorization_code_grant.py +704 -0
- pulumi_snowflake/api_authentication_integration_with_client_credentials.py +657 -0
- pulumi_snowflake/api_authentication_integration_with_jwt_bearer.py +692 -0
- pulumi_snowflake/api_integration.py +35 -50
- pulumi_snowflake/authentication_policy.py +622 -0
- pulumi_snowflake/config/__init__.pyi +76 -99
- pulumi_snowflake/config/outputs.py +5 -0
- pulumi_snowflake/config/vars.py +93 -124
- pulumi_snowflake/cortex_search_service.py +596 -0
- pulumi_snowflake/database.py +819 -209
- pulumi_snowflake/database_role.py +81 -40
- pulumi_snowflake/dynamic_table.py +44 -47
- pulumi_snowflake/email_notification_integration.py +35 -26
- pulumi_snowflake/{unsafe_execute.py → execute.py} +36 -139
- pulumi_snowflake/external_function.py +54 -71
- pulumi_snowflake/external_oauth_integration.py +593 -538
- pulumi_snowflake/external_table.py +67 -86
- pulumi_snowflake/external_volume.py +382 -0
- pulumi_snowflake/failover_group.py +59 -96
- pulumi_snowflake/file_format.py +33 -24
- pulumi_snowflake/function_java.py +1211 -0
- pulumi_snowflake/function_javascript.py +882 -0
- pulumi_snowflake/function_python.py +1212 -0
- pulumi_snowflake/function_scala.py +1212 -0
- pulumi_snowflake/function_sql.py +835 -0
- pulumi_snowflake/get_account_roles.py +129 -0
- pulumi_snowflake/get_accounts.py +53 -22
- pulumi_snowflake/get_alerts.py +22 -5
- pulumi_snowflake/get_connections.py +109 -0
- pulumi_snowflake/get_cortex_search_services.py +216 -0
- pulumi_snowflake/get_current_account.py +24 -9
- pulumi_snowflake/get_current_role.py +14 -7
- pulumi_snowflake/get_database.py +25 -5
- pulumi_snowflake/get_database_role.py +162 -0
- pulumi_snowflake/get_database_roles.py +79 -43
- pulumi_snowflake/get_databases.py +91 -69
- pulumi_snowflake/get_dynamic_tables.py +36 -19
- pulumi_snowflake/get_external_functions.py +28 -5
- pulumi_snowflake/get_external_tables.py +28 -5
- pulumi_snowflake/get_failover_groups.py +18 -7
- pulumi_snowflake/get_file_formats.py +28 -5
- pulumi_snowflake/get_functions.py +28 -5
- pulumi_snowflake/get_grants.py +207 -80
- pulumi_snowflake/get_masking_policies.py +91 -47
- pulumi_snowflake/get_materialized_views.py +28 -5
- pulumi_snowflake/get_network_policies.py +129 -0
- pulumi_snowflake/get_parameters.py +38 -11
- pulumi_snowflake/get_pipes.py +28 -5
- pulumi_snowflake/get_procedures.py +28 -5
- pulumi_snowflake/get_resource_monitors.py +37 -20
- pulumi_snowflake/get_row_access_policies.py +91 -47
- pulumi_snowflake/get_schemas.py +145 -37
- pulumi_snowflake/get_secrets.py +200 -0
- pulumi_snowflake/get_security_integrations.py +129 -0
- pulumi_snowflake/get_sequences.py +28 -5
- pulumi_snowflake/get_shares.py +18 -5
- pulumi_snowflake/get_stages.py +28 -5
- pulumi_snowflake/get_storage_integrations.py +16 -5
- pulumi_snowflake/get_streamlits.py +170 -0
- pulumi_snowflake/get_streams.py +114 -50
- pulumi_snowflake/get_system_generate_scim_access_token.py +18 -5
- pulumi_snowflake/get_system_get_aws_sns_iam_policy.py +32 -7
- pulumi_snowflake/get_system_get_private_link_config.py +121 -6
- pulumi_snowflake/get_system_get_snowflake_platform_info.py +15 -7
- pulumi_snowflake/get_tables.py +28 -5
- pulumi_snowflake/get_tags.py +130 -0
- pulumi_snowflake/get_tasks.py +134 -50
- pulumi_snowflake/get_users.py +116 -40
- pulumi_snowflake/get_views.py +114 -50
- pulumi_snowflake/get_warehouses.py +79 -22
- pulumi_snowflake/grant_account_role.py +28 -61
- pulumi_snowflake/grant_application_role.py +257 -0
- pulumi_snowflake/grant_database_role.py +35 -108
- pulumi_snowflake/grant_ownership.py +382 -0
- pulumi_snowflake/grant_privileges_to_account_role.py +42 -78
- pulumi_snowflake/grant_privileges_to_database_role.py +37 -223
- pulumi_snowflake/grant_privileges_to_share.py +96 -44
- pulumi_snowflake/legacy_service_user.py +3670 -0
- pulumi_snowflake/managed_account.py +42 -9
- pulumi_snowflake/masking_policy.py +213 -306
- pulumi_snowflake/materialized_view.py +62 -67
- pulumi_snowflake/network_policy.py +217 -57
- pulumi_snowflake/network_policy_attachment.py +7 -32
- pulumi_snowflake/network_rule.py +473 -0
- pulumi_snowflake/notification_integration.py +51 -82
- pulumi_snowflake/oauth_integration_for_custom_clients.py +906 -0
- pulumi_snowflake/{oauth_integration.py → oauth_integration_for_partner_applications.py} +191 -188
- pulumi_snowflake/object_parameter.py +12 -99
- pulumi_snowflake/outputs.py +49200 -2928
- pulumi_snowflake/password_policy.py +41 -28
- pulumi_snowflake/pipe.py +33 -0
- pulumi_snowflake/primary_connection.py +330 -0
- pulumi_snowflake/procedure_java.py +1273 -0
- pulumi_snowflake/procedure_javascript.py +895 -0
- pulumi_snowflake/procedure_python.py +1226 -0
- pulumi_snowflake/procedure_scala.py +1273 -0
- pulumi_snowflake/procedure_sql.py +895 -0
- pulumi_snowflake/provider.py +378 -613
- pulumi_snowflake/pulumi-plugin.json +2 -1
- pulumi_snowflake/resource_monitor.py +118 -323
- pulumi_snowflake/row_access_policy.py +200 -145
- pulumi_snowflake/{saml_integration.py → saml2_integration.py} +356 -295
- pulumi_snowflake/schema.py +949 -174
- pulumi_snowflake/scim_integration.py +286 -105
- pulumi_snowflake/secondary_connection.py +339 -0
- pulumi_snowflake/secondary_database.py +1080 -0
- pulumi_snowflake/secret_with_authorization_code_grant.py +548 -0
- pulumi_snowflake/secret_with_basic_authentication.py +500 -0
- pulumi_snowflake/secret_with_client_credentials.py +511 -0
- pulumi_snowflake/secret_with_generic_string.py +452 -0
- pulumi_snowflake/sequence.py +9 -30
- pulumi_snowflake/service_user.py +3585 -0
- pulumi_snowflake/share.py +35 -26
- pulumi_snowflake/shared_database.py +939 -0
- pulumi_snowflake/stage.py +95 -80
- pulumi_snowflake/storage_integration.py +48 -2
- pulumi_snowflake/stream_on_directory_table.py +517 -0
- pulumi_snowflake/stream_on_external_table.py +632 -0
- pulumi_snowflake/stream_on_table.py +666 -0
- pulumi_snowflake/stream_on_view.py +666 -0
- pulumi_snowflake/streamlit.py +671 -0
- pulumi_snowflake/table.py +86 -93
- pulumi_snowflake/table_column_masking_policy_application.py +7 -14
- pulumi_snowflake/table_constraint.py +29 -168
- pulumi_snowflake/tag.py +142 -70
- pulumi_snowflake/tag_association.py +40 -211
- pulumi_snowflake/task.py +3048 -414
- pulumi_snowflake/user.py +3351 -380
- pulumi_snowflake/user_authentication_policy_attachment.py +197 -0
- pulumi_snowflake/user_password_policy_attachment.py +7 -6
- pulumi_snowflake/user_public_keys.py +5 -0
- pulumi_snowflake/view.py +466 -211
- pulumi_snowflake/warehouse.py +184 -164
- {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/METADATA +7 -6
- pulumi_snowflake-1.2.0a1736835738.dist-info/RECORD +148 -0
- {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/WHEEL +1 -1
- pulumi_snowflake/account_grant.py +0 -339
- pulumi_snowflake/database_grant.py +0 -491
- pulumi_snowflake/external_table_grant.py +0 -686
- pulumi_snowflake/failover_group_grant.py +0 -388
- pulumi_snowflake/file_format_grant.py +0 -631
- pulumi_snowflake/function.py +0 -868
- pulumi_snowflake/function_grant.py +0 -741
- pulumi_snowflake/get_role.py +0 -117
- pulumi_snowflake/get_roles.py +0 -116
- pulumi_snowflake/grant_privileges_to_role.py +0 -667
- pulumi_snowflake/integration_grant.py +0 -436
- pulumi_snowflake/masking_policy_grant.py +0 -538
- pulumi_snowflake/materialized_view_grant.py +0 -685
- pulumi_snowflake/pipe_grant.py +0 -583
- pulumi_snowflake/procedure.py +0 -883
- pulumi_snowflake/procedure_grant.py +0 -741
- pulumi_snowflake/resource_monitor_grant.py +0 -383
- pulumi_snowflake/role.py +0 -269
- pulumi_snowflake/role_grants.py +0 -348
- pulumi_snowflake/role_ownership_grant.py +0 -334
- pulumi_snowflake/row_access_policy_grant.py +0 -536
- pulumi_snowflake/schema_grant.py +0 -643
- pulumi_snowflake/sequence_grant.py +0 -631
- pulumi_snowflake/session_parameter.py +0 -328
- pulumi_snowflake/stage_grant.py +0 -631
- pulumi_snowflake/stream.py +0 -610
- pulumi_snowflake/stream_grant.py +0 -631
- pulumi_snowflake/table_grant.py +0 -673
- pulumi_snowflake/tag_grant.py +0 -528
- pulumi_snowflake/tag_masking_policy_association.py +0 -210
- pulumi_snowflake/task_grant.py +0 -631
- pulumi_snowflake/user_grant.py +0 -390
- pulumi_snowflake/user_ownership_grant.py +0 -286
- pulumi_snowflake/view_grant.py +0 -701
- pulumi_snowflake/warehouse_grant.py +0 -436
- pulumi_snowflake-0.50.2a1709892015.dist-info/RECORD +0 -136
- {pulumi_snowflake-0.50.2a1709892015.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/top_level.txt +0 -0
pulumi_snowflake/stage.py
CHANGED
|
@@ -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 *
|
|
@@ -32,15 +37,17 @@ class StageArgs:
|
|
|
32
37
|
url: Optional[pulumi.Input[str]] = None):
|
|
33
38
|
"""
|
|
34
39
|
The set of arguments for constructing a Stage resource.
|
|
35
|
-
:param pulumi.Input[str] database:
|
|
36
|
-
:param pulumi.Input[str] schema:
|
|
40
|
+
:param pulumi.Input[str] database: The database in which to create the stage.
|
|
41
|
+
:param pulumi.Input[str] schema: The schema in which to create the stage.
|
|
42
|
+
:param pulumi.Input[str] aws_external_id: A unique ID assigned to the specific stage. The ID has the following format: <snowflakeAccount>*SFCRole=<snowflakeRoleId>*<randomId>
|
|
37
43
|
:param pulumi.Input[str] comment: Specifies a comment for the stage.
|
|
38
44
|
:param pulumi.Input[str] copy_options: Specifies the copy options for the stage.
|
|
39
45
|
:param pulumi.Input[str] credentials: Specifies the credentials for the stage.
|
|
40
46
|
:param pulumi.Input[str] directory: Specifies the directory settings for the stage.
|
|
41
47
|
:param pulumi.Input[str] encryption: Specifies the encryption settings for the stage.
|
|
42
|
-
:param pulumi.Input[str] file_format: Specifies the file format for the stage.
|
|
43
|
-
:param pulumi.Input[str] name:
|
|
48
|
+
:param pulumi.Input[str] file_format: Specifies the file format for the stage. Specifying the default Snowflake value (e.g. TYPE = CSV) will currently result in a permadiff (check #2679). For now, omit the default values; it will be fixed in the upcoming provider versions.
|
|
49
|
+
:param pulumi.Input[str] name: Specifies the identifier for the stage; must be unique for the database and schema in which the stage is created.
|
|
50
|
+
:param pulumi.Input[str] snowflake_iam_user: An AWS IAM user created for your Snowflake account. This user is the same for every external S3 stage created in your account.
|
|
44
51
|
:param pulumi.Input[str] storage_integration: Specifies the name of the storage integration used to delegate authentication responsibility for external cloud storage to a Snowflake identity and access management (IAM) entity.
|
|
45
52
|
:param pulumi.Input[Sequence[pulumi.Input['StageTagArgs']]] tags: Definitions of a tag to associate with the resource.
|
|
46
53
|
:param pulumi.Input[str] url: Specifies the URL for the stage.
|
|
@@ -79,7 +86,7 @@ class StageArgs:
|
|
|
79
86
|
@pulumi.getter
|
|
80
87
|
def database(self) -> pulumi.Input[str]:
|
|
81
88
|
"""
|
|
82
|
-
|
|
89
|
+
The database in which to create the stage.
|
|
83
90
|
"""
|
|
84
91
|
return pulumi.get(self, "database")
|
|
85
92
|
|
|
@@ -91,7 +98,7 @@ class StageArgs:
|
|
|
91
98
|
@pulumi.getter
|
|
92
99
|
def schema(self) -> pulumi.Input[str]:
|
|
93
100
|
"""
|
|
94
|
-
|
|
101
|
+
The schema in which to create the stage.
|
|
95
102
|
"""
|
|
96
103
|
return pulumi.get(self, "schema")
|
|
97
104
|
|
|
@@ -102,6 +109,9 @@ class StageArgs:
|
|
|
102
109
|
@property
|
|
103
110
|
@pulumi.getter(name="awsExternalId")
|
|
104
111
|
def aws_external_id(self) -> Optional[pulumi.Input[str]]:
|
|
112
|
+
"""
|
|
113
|
+
A unique ID assigned to the specific stage. The ID has the following format: <snowflakeAccount>*SFCRole=<snowflakeRoleId>*<randomId>
|
|
114
|
+
"""
|
|
105
115
|
return pulumi.get(self, "aws_external_id")
|
|
106
116
|
|
|
107
117
|
@aws_external_id.setter
|
|
@@ -172,7 +182,7 @@ class StageArgs:
|
|
|
172
182
|
@pulumi.getter(name="fileFormat")
|
|
173
183
|
def file_format(self) -> Optional[pulumi.Input[str]]:
|
|
174
184
|
"""
|
|
175
|
-
Specifies the file format for the stage.
|
|
185
|
+
Specifies the file format for the stage. Specifying the default Snowflake value (e.g. TYPE = CSV) will currently result in a permadiff (check #2679). For now, omit the default values; it will be fixed in the upcoming provider versions.
|
|
176
186
|
"""
|
|
177
187
|
return pulumi.get(self, "file_format")
|
|
178
188
|
|
|
@@ -184,7 +194,7 @@ class StageArgs:
|
|
|
184
194
|
@pulumi.getter
|
|
185
195
|
def name(self) -> Optional[pulumi.Input[str]]:
|
|
186
196
|
"""
|
|
187
|
-
|
|
197
|
+
Specifies the identifier for the stage; must be unique for the database and schema in which the stage is created.
|
|
188
198
|
"""
|
|
189
199
|
return pulumi.get(self, "name")
|
|
190
200
|
|
|
@@ -195,6 +205,9 @@ class StageArgs:
|
|
|
195
205
|
@property
|
|
196
206
|
@pulumi.getter(name="snowflakeIamUser")
|
|
197
207
|
def snowflake_iam_user(self) -> Optional[pulumi.Input[str]]:
|
|
208
|
+
"""
|
|
209
|
+
An AWS IAM user created for your Snowflake account. This user is the same for every external S3 stage created in your account.
|
|
210
|
+
"""
|
|
198
211
|
return pulumi.get(self, "snowflake_iam_user")
|
|
199
212
|
|
|
200
213
|
@snowflake_iam_user.setter
|
|
@@ -215,13 +228,11 @@ class StageArgs:
|
|
|
215
228
|
|
|
216
229
|
@property
|
|
217
230
|
@pulumi.getter
|
|
231
|
+
@_utilities.deprecated("""Use the 'snowflake_tag_association' resource instead.""")
|
|
218
232
|
def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['StageTagArgs']]]]:
|
|
219
233
|
"""
|
|
220
234
|
Definitions of a tag to associate with the resource.
|
|
221
235
|
"""
|
|
222
|
-
warnings.warn("""Use the 'snowflake_tag_association' resource instead.""", DeprecationWarning)
|
|
223
|
-
pulumi.log.warn("""tags is deprecated: Use the 'snowflake_tag_association' resource instead.""")
|
|
224
|
-
|
|
225
236
|
return pulumi.get(self, "tags")
|
|
226
237
|
|
|
227
238
|
@tags.setter
|
|
@@ -252,6 +263,7 @@ class _StageState:
|
|
|
252
263
|
directory: Optional[pulumi.Input[str]] = None,
|
|
253
264
|
encryption: Optional[pulumi.Input[str]] = None,
|
|
254
265
|
file_format: Optional[pulumi.Input[str]] = None,
|
|
266
|
+
fully_qualified_name: Optional[pulumi.Input[str]] = None,
|
|
255
267
|
name: Optional[pulumi.Input[str]] = None,
|
|
256
268
|
schema: Optional[pulumi.Input[str]] = None,
|
|
257
269
|
snowflake_iam_user: Optional[pulumi.Input[str]] = None,
|
|
@@ -260,15 +272,18 @@ class _StageState:
|
|
|
260
272
|
url: Optional[pulumi.Input[str]] = None):
|
|
261
273
|
"""
|
|
262
274
|
Input properties used for looking up and filtering Stage resources.
|
|
275
|
+
:param pulumi.Input[str] aws_external_id: A unique ID assigned to the specific stage. The ID has the following format: <snowflakeAccount>*SFCRole=<snowflakeRoleId>*<randomId>
|
|
263
276
|
:param pulumi.Input[str] comment: Specifies a comment for the stage.
|
|
264
277
|
:param pulumi.Input[str] copy_options: Specifies the copy options for the stage.
|
|
265
278
|
:param pulumi.Input[str] credentials: Specifies the credentials for the stage.
|
|
266
|
-
:param pulumi.Input[str] database:
|
|
279
|
+
:param pulumi.Input[str] database: The database in which to create the stage.
|
|
267
280
|
:param pulumi.Input[str] directory: Specifies the directory settings for the stage.
|
|
268
281
|
:param pulumi.Input[str] encryption: Specifies the encryption settings for the stage.
|
|
269
|
-
:param pulumi.Input[str] file_format: Specifies the file format for the stage.
|
|
270
|
-
:param pulumi.Input[str]
|
|
271
|
-
:param pulumi.Input[str]
|
|
282
|
+
:param pulumi.Input[str] file_format: Specifies the file format for the stage. Specifying the default Snowflake value (e.g. TYPE = CSV) will currently result in a permadiff (check #2679). For now, omit the default values; it will be fixed in the upcoming provider versions.
|
|
283
|
+
: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).
|
|
284
|
+
:param pulumi.Input[str] name: Specifies the identifier for the stage; must be unique for the database and schema in which the stage is created.
|
|
285
|
+
:param pulumi.Input[str] schema: The schema in which to create the stage.
|
|
286
|
+
:param pulumi.Input[str] snowflake_iam_user: An AWS IAM user created for your Snowflake account. This user is the same for every external S3 stage created in your account.
|
|
272
287
|
:param pulumi.Input[str] storage_integration: Specifies the name of the storage integration used to delegate authentication responsibility for external cloud storage to a Snowflake identity and access management (IAM) entity.
|
|
273
288
|
:param pulumi.Input[Sequence[pulumi.Input['StageTagArgs']]] tags: Definitions of a tag to associate with the resource.
|
|
274
289
|
:param pulumi.Input[str] url: Specifies the URL for the stage.
|
|
@@ -289,6 +304,8 @@ class _StageState:
|
|
|
289
304
|
pulumi.set(__self__, "encryption", encryption)
|
|
290
305
|
if file_format is not None:
|
|
291
306
|
pulumi.set(__self__, "file_format", file_format)
|
|
307
|
+
if fully_qualified_name is not None:
|
|
308
|
+
pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
|
|
292
309
|
if name is not None:
|
|
293
310
|
pulumi.set(__self__, "name", name)
|
|
294
311
|
if schema is not None:
|
|
@@ -308,6 +325,9 @@ class _StageState:
|
|
|
308
325
|
@property
|
|
309
326
|
@pulumi.getter(name="awsExternalId")
|
|
310
327
|
def aws_external_id(self) -> Optional[pulumi.Input[str]]:
|
|
328
|
+
"""
|
|
329
|
+
A unique ID assigned to the specific stage. The ID has the following format: <snowflakeAccount>*SFCRole=<snowflakeRoleId>*<randomId>
|
|
330
|
+
"""
|
|
311
331
|
return pulumi.get(self, "aws_external_id")
|
|
312
332
|
|
|
313
333
|
@aws_external_id.setter
|
|
@@ -354,7 +374,7 @@ class _StageState:
|
|
|
354
374
|
@pulumi.getter
|
|
355
375
|
def database(self) -> Optional[pulumi.Input[str]]:
|
|
356
376
|
"""
|
|
357
|
-
|
|
377
|
+
The database in which to create the stage.
|
|
358
378
|
"""
|
|
359
379
|
return pulumi.get(self, "database")
|
|
360
380
|
|
|
@@ -390,7 +410,7 @@ class _StageState:
|
|
|
390
410
|
@pulumi.getter(name="fileFormat")
|
|
391
411
|
def file_format(self) -> Optional[pulumi.Input[str]]:
|
|
392
412
|
"""
|
|
393
|
-
Specifies the file format for the stage.
|
|
413
|
+
Specifies the file format for the stage. Specifying the default Snowflake value (e.g. TYPE = CSV) will currently result in a permadiff (check #2679). For now, omit the default values; it will be fixed in the upcoming provider versions.
|
|
394
414
|
"""
|
|
395
415
|
return pulumi.get(self, "file_format")
|
|
396
416
|
|
|
@@ -398,11 +418,23 @@ class _StageState:
|
|
|
398
418
|
def file_format(self, value: Optional[pulumi.Input[str]]):
|
|
399
419
|
pulumi.set(self, "file_format", value)
|
|
400
420
|
|
|
421
|
+
@property
|
|
422
|
+
@pulumi.getter(name="fullyQualifiedName")
|
|
423
|
+
def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
|
|
424
|
+
"""
|
|
425
|
+
Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
426
|
+
"""
|
|
427
|
+
return pulumi.get(self, "fully_qualified_name")
|
|
428
|
+
|
|
429
|
+
@fully_qualified_name.setter
|
|
430
|
+
def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
|
|
431
|
+
pulumi.set(self, "fully_qualified_name", value)
|
|
432
|
+
|
|
401
433
|
@property
|
|
402
434
|
@pulumi.getter
|
|
403
435
|
def name(self) -> Optional[pulumi.Input[str]]:
|
|
404
436
|
"""
|
|
405
|
-
|
|
437
|
+
Specifies the identifier for the stage; must be unique for the database and schema in which the stage is created.
|
|
406
438
|
"""
|
|
407
439
|
return pulumi.get(self, "name")
|
|
408
440
|
|
|
@@ -414,7 +446,7 @@ class _StageState:
|
|
|
414
446
|
@pulumi.getter
|
|
415
447
|
def schema(self) -> Optional[pulumi.Input[str]]:
|
|
416
448
|
"""
|
|
417
|
-
|
|
449
|
+
The schema in which to create the stage.
|
|
418
450
|
"""
|
|
419
451
|
return pulumi.get(self, "schema")
|
|
420
452
|
|
|
@@ -425,6 +457,9 @@ class _StageState:
|
|
|
425
457
|
@property
|
|
426
458
|
@pulumi.getter(name="snowflakeIamUser")
|
|
427
459
|
def snowflake_iam_user(self) -> Optional[pulumi.Input[str]]:
|
|
460
|
+
"""
|
|
461
|
+
An AWS IAM user created for your Snowflake account. This user is the same for every external S3 stage created in your account.
|
|
462
|
+
"""
|
|
428
463
|
return pulumi.get(self, "snowflake_iam_user")
|
|
429
464
|
|
|
430
465
|
@snowflake_iam_user.setter
|
|
@@ -445,13 +480,11 @@ class _StageState:
|
|
|
445
480
|
|
|
446
481
|
@property
|
|
447
482
|
@pulumi.getter
|
|
483
|
+
@_utilities.deprecated("""Use the 'snowflake_tag_association' resource instead.""")
|
|
448
484
|
def tags(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['StageTagArgs']]]]:
|
|
449
485
|
"""
|
|
450
486
|
Definitions of a tag to associate with the resource.
|
|
451
487
|
"""
|
|
452
|
-
warnings.warn("""Use the 'snowflake_tag_association' resource instead.""", DeprecationWarning)
|
|
453
|
-
pulumi.log.warn("""tags is deprecated: Use the 'snowflake_tag_association' resource instead.""")
|
|
454
|
-
|
|
455
488
|
return pulumi.get(self, "tags")
|
|
456
489
|
|
|
457
490
|
@tags.setter
|
|
@@ -488,29 +521,10 @@ class Stage(pulumi.CustomResource):
|
|
|
488
521
|
schema: Optional[pulumi.Input[str]] = None,
|
|
489
522
|
snowflake_iam_user: Optional[pulumi.Input[str]] = None,
|
|
490
523
|
storage_integration: Optional[pulumi.Input[str]] = None,
|
|
491
|
-
tags: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
524
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['StageTagArgs', 'StageTagArgsDict']]]]] = None,
|
|
492
525
|
url: Optional[pulumi.Input[str]] = None,
|
|
493
526
|
__props__=None):
|
|
494
527
|
"""
|
|
495
|
-
## Example Usage
|
|
496
|
-
|
|
497
|
-
```python
|
|
498
|
-
import pulumi
|
|
499
|
-
import pulumi_snowflake as snowflake
|
|
500
|
-
|
|
501
|
-
example_stage = snowflake.Stage("exampleStage",
|
|
502
|
-
url="s3://com.example.bucket/prefix",
|
|
503
|
-
database="EXAMPLE_DB",
|
|
504
|
-
schema="EXAMPLE_SCHEMA",
|
|
505
|
-
credentials=f"AWS_KEY_ID='{var['example_aws_key_id']}' AWS_SECRET_KEY='{var['example_aws_secret_key']}'")
|
|
506
|
-
grant_example_stage = snowflake.StageGrant("grantExampleStage",
|
|
507
|
-
database_name=example_stage.database,
|
|
508
|
-
schema_name=example_stage.schema,
|
|
509
|
-
roles=["LOADER"],
|
|
510
|
-
privilege="OWNERSHIP",
|
|
511
|
-
stage_name=example_stage.name)
|
|
512
|
-
```
|
|
513
|
-
|
|
514
528
|
## Import
|
|
515
529
|
|
|
516
530
|
format is database name | schema name | stage name
|
|
@@ -521,17 +535,19 @@ class Stage(pulumi.CustomResource):
|
|
|
521
535
|
|
|
522
536
|
:param str resource_name: The name of the resource.
|
|
523
537
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
538
|
+
:param pulumi.Input[str] aws_external_id: A unique ID assigned to the specific stage. The ID has the following format: <snowflakeAccount>*SFCRole=<snowflakeRoleId>*<randomId>
|
|
524
539
|
:param pulumi.Input[str] comment: Specifies a comment for the stage.
|
|
525
540
|
:param pulumi.Input[str] copy_options: Specifies the copy options for the stage.
|
|
526
541
|
:param pulumi.Input[str] credentials: Specifies the credentials for the stage.
|
|
527
|
-
:param pulumi.Input[str] database:
|
|
542
|
+
:param pulumi.Input[str] database: The database in which to create the stage.
|
|
528
543
|
:param pulumi.Input[str] directory: Specifies the directory settings for the stage.
|
|
529
544
|
:param pulumi.Input[str] encryption: Specifies the encryption settings for the stage.
|
|
530
|
-
:param pulumi.Input[str] file_format: Specifies the file format for the stage.
|
|
531
|
-
:param pulumi.Input[str] name:
|
|
532
|
-
:param pulumi.Input[str] schema:
|
|
545
|
+
:param pulumi.Input[str] file_format: Specifies the file format for the stage. Specifying the default Snowflake value (e.g. TYPE = CSV) will currently result in a permadiff (check #2679). For now, omit the default values; it will be fixed in the upcoming provider versions.
|
|
546
|
+
:param pulumi.Input[str] name: Specifies the identifier for the stage; must be unique for the database and schema in which the stage is created.
|
|
547
|
+
:param pulumi.Input[str] schema: The schema in which to create the stage.
|
|
548
|
+
:param pulumi.Input[str] snowflake_iam_user: An AWS IAM user created for your Snowflake account. This user is the same for every external S3 stage created in your account.
|
|
533
549
|
:param pulumi.Input[str] storage_integration: Specifies the name of the storage integration used to delegate authentication responsibility for external cloud storage to a Snowflake identity and access management (IAM) entity.
|
|
534
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
|
550
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['StageTagArgs', 'StageTagArgsDict']]]] tags: Definitions of a tag to associate with the resource.
|
|
535
551
|
:param pulumi.Input[str] url: Specifies the URL for the stage.
|
|
536
552
|
"""
|
|
537
553
|
...
|
|
@@ -541,25 +557,6 @@ class Stage(pulumi.CustomResource):
|
|
|
541
557
|
args: StageArgs,
|
|
542
558
|
opts: Optional[pulumi.ResourceOptions] = None):
|
|
543
559
|
"""
|
|
544
|
-
## Example Usage
|
|
545
|
-
|
|
546
|
-
```python
|
|
547
|
-
import pulumi
|
|
548
|
-
import pulumi_snowflake as snowflake
|
|
549
|
-
|
|
550
|
-
example_stage = snowflake.Stage("exampleStage",
|
|
551
|
-
url="s3://com.example.bucket/prefix",
|
|
552
|
-
database="EXAMPLE_DB",
|
|
553
|
-
schema="EXAMPLE_SCHEMA",
|
|
554
|
-
credentials=f"AWS_KEY_ID='{var['example_aws_key_id']}' AWS_SECRET_KEY='{var['example_aws_secret_key']}'")
|
|
555
|
-
grant_example_stage = snowflake.StageGrant("grantExampleStage",
|
|
556
|
-
database_name=example_stage.database,
|
|
557
|
-
schema_name=example_stage.schema,
|
|
558
|
-
roles=["LOADER"],
|
|
559
|
-
privilege="OWNERSHIP",
|
|
560
|
-
stage_name=example_stage.name)
|
|
561
|
-
```
|
|
562
|
-
|
|
563
560
|
## Import
|
|
564
561
|
|
|
565
562
|
format is database name | schema name | stage name
|
|
@@ -595,7 +592,7 @@ class Stage(pulumi.CustomResource):
|
|
|
595
592
|
schema: Optional[pulumi.Input[str]] = None,
|
|
596
593
|
snowflake_iam_user: Optional[pulumi.Input[str]] = None,
|
|
597
594
|
storage_integration: Optional[pulumi.Input[str]] = None,
|
|
598
|
-
tags: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
595
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['StageTagArgs', 'StageTagArgsDict']]]]] = None,
|
|
599
596
|
url: Optional[pulumi.Input[str]] = None,
|
|
600
597
|
__props__=None):
|
|
601
598
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
@@ -624,6 +621,7 @@ class Stage(pulumi.CustomResource):
|
|
|
624
621
|
__props__.__dict__["storage_integration"] = storage_integration
|
|
625
622
|
__props__.__dict__["tags"] = tags
|
|
626
623
|
__props__.__dict__["url"] = url
|
|
624
|
+
__props__.__dict__["fully_qualified_name"] = None
|
|
627
625
|
secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["credentials"])
|
|
628
626
|
opts = pulumi.ResourceOptions.merge(opts, secret_opts)
|
|
629
627
|
super(Stage, __self__).__init__(
|
|
@@ -644,11 +642,12 @@ class Stage(pulumi.CustomResource):
|
|
|
644
642
|
directory: Optional[pulumi.Input[str]] = None,
|
|
645
643
|
encryption: Optional[pulumi.Input[str]] = None,
|
|
646
644
|
file_format: Optional[pulumi.Input[str]] = None,
|
|
645
|
+
fully_qualified_name: Optional[pulumi.Input[str]] = None,
|
|
647
646
|
name: Optional[pulumi.Input[str]] = None,
|
|
648
647
|
schema: Optional[pulumi.Input[str]] = None,
|
|
649
648
|
snowflake_iam_user: Optional[pulumi.Input[str]] = None,
|
|
650
649
|
storage_integration: Optional[pulumi.Input[str]] = None,
|
|
651
|
-
tags: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
650
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['StageTagArgs', 'StageTagArgsDict']]]]] = None,
|
|
652
651
|
url: Optional[pulumi.Input[str]] = None) -> 'Stage':
|
|
653
652
|
"""
|
|
654
653
|
Get an existing Stage resource's state with the given name, id, and optional extra
|
|
@@ -657,17 +656,20 @@ class Stage(pulumi.CustomResource):
|
|
|
657
656
|
:param str resource_name: The unique name of the resulting resource.
|
|
658
657
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
659
658
|
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
659
|
+
:param pulumi.Input[str] aws_external_id: A unique ID assigned to the specific stage. The ID has the following format: <snowflakeAccount>*SFCRole=<snowflakeRoleId>*<randomId>
|
|
660
660
|
:param pulumi.Input[str] comment: Specifies a comment for the stage.
|
|
661
661
|
:param pulumi.Input[str] copy_options: Specifies the copy options for the stage.
|
|
662
662
|
:param pulumi.Input[str] credentials: Specifies the credentials for the stage.
|
|
663
|
-
:param pulumi.Input[str] database:
|
|
663
|
+
:param pulumi.Input[str] database: The database in which to create the stage.
|
|
664
664
|
:param pulumi.Input[str] directory: Specifies the directory settings for the stage.
|
|
665
665
|
:param pulumi.Input[str] encryption: Specifies the encryption settings for the stage.
|
|
666
|
-
:param pulumi.Input[str] file_format: Specifies the file format for the stage.
|
|
667
|
-
:param pulumi.Input[str]
|
|
668
|
-
:param pulumi.Input[str]
|
|
666
|
+
:param pulumi.Input[str] file_format: Specifies the file format for the stage. Specifying the default Snowflake value (e.g. TYPE = CSV) will currently result in a permadiff (check #2679). For now, omit the default values; it will be fixed in the upcoming provider versions.
|
|
667
|
+
: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).
|
|
668
|
+
:param pulumi.Input[str] name: Specifies the identifier for the stage; must be unique for the database and schema in which the stage is created.
|
|
669
|
+
:param pulumi.Input[str] schema: The schema in which to create the stage.
|
|
670
|
+
:param pulumi.Input[str] snowflake_iam_user: An AWS IAM user created for your Snowflake account. This user is the same for every external S3 stage created in your account.
|
|
669
671
|
:param pulumi.Input[str] storage_integration: Specifies the name of the storage integration used to delegate authentication responsibility for external cloud storage to a Snowflake identity and access management (IAM) entity.
|
|
670
|
-
:param pulumi.Input[Sequence[pulumi.Input[
|
|
672
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['StageTagArgs', 'StageTagArgsDict']]]] tags: Definitions of a tag to associate with the resource.
|
|
671
673
|
:param pulumi.Input[str] url: Specifies the URL for the stage.
|
|
672
674
|
"""
|
|
673
675
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
@@ -682,6 +684,7 @@ class Stage(pulumi.CustomResource):
|
|
|
682
684
|
__props__.__dict__["directory"] = directory
|
|
683
685
|
__props__.__dict__["encryption"] = encryption
|
|
684
686
|
__props__.__dict__["file_format"] = file_format
|
|
687
|
+
__props__.__dict__["fully_qualified_name"] = fully_qualified_name
|
|
685
688
|
__props__.__dict__["name"] = name
|
|
686
689
|
__props__.__dict__["schema"] = schema
|
|
687
690
|
__props__.__dict__["snowflake_iam_user"] = snowflake_iam_user
|
|
@@ -693,6 +696,9 @@ class Stage(pulumi.CustomResource):
|
|
|
693
696
|
@property
|
|
694
697
|
@pulumi.getter(name="awsExternalId")
|
|
695
698
|
def aws_external_id(self) -> pulumi.Output[str]:
|
|
699
|
+
"""
|
|
700
|
+
A unique ID assigned to the specific stage. The ID has the following format: <snowflakeAccount>*SFCRole=<snowflakeRoleId>*<randomId>
|
|
701
|
+
"""
|
|
696
702
|
return pulumi.get(self, "aws_external_id")
|
|
697
703
|
|
|
698
704
|
@property
|
|
@@ -723,7 +729,7 @@ class Stage(pulumi.CustomResource):
|
|
|
723
729
|
@pulumi.getter
|
|
724
730
|
def database(self) -> pulumi.Output[str]:
|
|
725
731
|
"""
|
|
726
|
-
|
|
732
|
+
The database in which to create the stage.
|
|
727
733
|
"""
|
|
728
734
|
return pulumi.get(self, "database")
|
|
729
735
|
|
|
@@ -747,15 +753,23 @@ class Stage(pulumi.CustomResource):
|
|
|
747
753
|
@pulumi.getter(name="fileFormat")
|
|
748
754
|
def file_format(self) -> pulumi.Output[Optional[str]]:
|
|
749
755
|
"""
|
|
750
|
-
Specifies the file format for the stage.
|
|
756
|
+
Specifies the file format for the stage. Specifying the default Snowflake value (e.g. TYPE = CSV) will currently result in a permadiff (check #2679). For now, omit the default values; it will be fixed in the upcoming provider versions.
|
|
751
757
|
"""
|
|
752
758
|
return pulumi.get(self, "file_format")
|
|
753
759
|
|
|
760
|
+
@property
|
|
761
|
+
@pulumi.getter(name="fullyQualifiedName")
|
|
762
|
+
def fully_qualified_name(self) -> pulumi.Output[str]:
|
|
763
|
+
"""
|
|
764
|
+
Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
765
|
+
"""
|
|
766
|
+
return pulumi.get(self, "fully_qualified_name")
|
|
767
|
+
|
|
754
768
|
@property
|
|
755
769
|
@pulumi.getter
|
|
756
770
|
def name(self) -> pulumi.Output[str]:
|
|
757
771
|
"""
|
|
758
|
-
|
|
772
|
+
Specifies the identifier for the stage; must be unique for the database and schema in which the stage is created.
|
|
759
773
|
"""
|
|
760
774
|
return pulumi.get(self, "name")
|
|
761
775
|
|
|
@@ -763,13 +777,16 @@ class Stage(pulumi.CustomResource):
|
|
|
763
777
|
@pulumi.getter
|
|
764
778
|
def schema(self) -> pulumi.Output[str]:
|
|
765
779
|
"""
|
|
766
|
-
|
|
780
|
+
The schema in which to create the stage.
|
|
767
781
|
"""
|
|
768
782
|
return pulumi.get(self, "schema")
|
|
769
783
|
|
|
770
784
|
@property
|
|
771
785
|
@pulumi.getter(name="snowflakeIamUser")
|
|
772
786
|
def snowflake_iam_user(self) -> pulumi.Output[str]:
|
|
787
|
+
"""
|
|
788
|
+
An AWS IAM user created for your Snowflake account. This user is the same for every external S3 stage created in your account.
|
|
789
|
+
"""
|
|
773
790
|
return pulumi.get(self, "snowflake_iam_user")
|
|
774
791
|
|
|
775
792
|
@property
|
|
@@ -782,13 +799,11 @@ class Stage(pulumi.CustomResource):
|
|
|
782
799
|
|
|
783
800
|
@property
|
|
784
801
|
@pulumi.getter
|
|
802
|
+
@_utilities.deprecated("""Use the 'snowflake_tag_association' resource instead.""")
|
|
785
803
|
def tags(self) -> pulumi.Output[Optional[Sequence['outputs.StageTag']]]:
|
|
786
804
|
"""
|
|
787
805
|
Definitions of a tag to associate with the resource.
|
|
788
806
|
"""
|
|
789
|
-
warnings.warn("""Use the 'snowflake_tag_association' resource instead.""", DeprecationWarning)
|
|
790
|
-
pulumi.log.warn("""tags is deprecated: Use the 'snowflake_tag_association' resource instead.""")
|
|
791
|
-
|
|
792
807
|
return pulumi.get(self, "tags")
|
|
793
808
|
|
|
794
809
|
@property
|
|
@@ -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
|
|
|
12
17
|
__all__ = ['StorageIntegrationArgs', 'StorageIntegration']
|
|
@@ -27,6 +32,7 @@ class StorageIntegrationArgs:
|
|
|
27
32
|
"""
|
|
28
33
|
The set of arguments for constructing a StorageIntegration resource.
|
|
29
34
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] storage_allowed_locations: Explicitly limits external stages that use the integration to reference one or more storage locations.
|
|
35
|
+
:param pulumi.Input[str] storage_provider: Specifies the storage provider for the integration. Valid options are: `S3` | `S3GOV` | `S3CHINA` | `GCS` | `AZURE`
|
|
30
36
|
:param pulumi.Input[str] storage_aws_object_acl: "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
|
|
31
37
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] storage_blocked_locations: Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
|
|
32
38
|
"""
|
|
@@ -64,6 +70,9 @@ class StorageIntegrationArgs:
|
|
|
64
70
|
@property
|
|
65
71
|
@pulumi.getter(name="storageProvider")
|
|
66
72
|
def storage_provider(self) -> pulumi.Input[str]:
|
|
73
|
+
"""
|
|
74
|
+
Specifies the storage provider for the integration. Valid options are: `S3` | `S3GOV` | `S3CHINA` | `GCS` | `AZURE`
|
|
75
|
+
"""
|
|
67
76
|
return pulumi.get(self, "storage_provider")
|
|
68
77
|
|
|
69
78
|
@storage_provider.setter
|
|
@@ -158,6 +167,7 @@ class _StorageIntegrationState:
|
|
|
158
167
|
comment: Optional[pulumi.Input[str]] = None,
|
|
159
168
|
created_on: Optional[pulumi.Input[str]] = None,
|
|
160
169
|
enabled: Optional[pulumi.Input[bool]] = None,
|
|
170
|
+
fully_qualified_name: Optional[pulumi.Input[str]] = None,
|
|
161
171
|
name: Optional[pulumi.Input[str]] = None,
|
|
162
172
|
storage_allowed_locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
163
173
|
storage_aws_external_id: Optional[pulumi.Input[str]] = None,
|
|
@@ -173,12 +183,14 @@ class _StorageIntegrationState:
|
|
|
173
183
|
:param pulumi.Input[str] azure_consent_url: The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
|
|
174
184
|
:param pulumi.Input[str] azure_multi_tenant_app_name: This is the name of the Snowflake client application created for your account.
|
|
175
185
|
:param pulumi.Input[str] created_on: Date and time when the storage integration was created.
|
|
186
|
+
: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).
|
|
176
187
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] storage_allowed_locations: Explicitly limits external stages that use the integration to reference one or more storage locations.
|
|
177
188
|
:param pulumi.Input[str] storage_aws_external_id: The external ID that Snowflake will use when assuming the AWS role.
|
|
178
189
|
:param pulumi.Input[str] storage_aws_iam_user_arn: The Snowflake user that will attempt to assume the AWS role.
|
|
179
190
|
:param pulumi.Input[str] storage_aws_object_acl: "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
|
|
180
191
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] storage_blocked_locations: Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
|
|
181
192
|
:param pulumi.Input[str] storage_gcp_service_account: This is the name of the Snowflake Google Service Account created for your account.
|
|
193
|
+
:param pulumi.Input[str] storage_provider: Specifies the storage provider for the integration. Valid options are: `S3` | `S3GOV` | `S3CHINA` | `GCS` | `AZURE`
|
|
182
194
|
"""
|
|
183
195
|
if azure_consent_url is not None:
|
|
184
196
|
pulumi.set(__self__, "azure_consent_url", azure_consent_url)
|
|
@@ -192,6 +204,8 @@ class _StorageIntegrationState:
|
|
|
192
204
|
pulumi.set(__self__, "created_on", created_on)
|
|
193
205
|
if enabled is not None:
|
|
194
206
|
pulumi.set(__self__, "enabled", enabled)
|
|
207
|
+
if fully_qualified_name is not None:
|
|
208
|
+
pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
|
|
195
209
|
if name is not None:
|
|
196
210
|
pulumi.set(__self__, "name", name)
|
|
197
211
|
if storage_allowed_locations is not None:
|
|
@@ -276,6 +290,18 @@ class _StorageIntegrationState:
|
|
|
276
290
|
def enabled(self, value: Optional[pulumi.Input[bool]]):
|
|
277
291
|
pulumi.set(self, "enabled", value)
|
|
278
292
|
|
|
293
|
+
@property
|
|
294
|
+
@pulumi.getter(name="fullyQualifiedName")
|
|
295
|
+
def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
|
|
296
|
+
"""
|
|
297
|
+
Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
298
|
+
"""
|
|
299
|
+
return pulumi.get(self, "fully_qualified_name")
|
|
300
|
+
|
|
301
|
+
@fully_qualified_name.setter
|
|
302
|
+
def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
|
|
303
|
+
pulumi.set(self, "fully_qualified_name", value)
|
|
304
|
+
|
|
279
305
|
@property
|
|
280
306
|
@pulumi.getter
|
|
281
307
|
def name(self) -> Optional[pulumi.Input[str]]:
|
|
@@ -369,6 +395,9 @@ class _StorageIntegrationState:
|
|
|
369
395
|
@property
|
|
370
396
|
@pulumi.getter(name="storageProvider")
|
|
371
397
|
def storage_provider(self) -> Optional[pulumi.Input[str]]:
|
|
398
|
+
"""
|
|
399
|
+
Specifies the storage provider for the integration. Valid options are: `S3` | `S3GOV` | `S3CHINA` | `GCS` | `AZURE`
|
|
400
|
+
"""
|
|
372
401
|
return pulumi.get(self, "storage_provider")
|
|
373
402
|
|
|
374
403
|
@storage_provider.setter
|
|
@@ -405,7 +434,7 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
405
434
|
## Import
|
|
406
435
|
|
|
407
436
|
```sh
|
|
408
|
-
|
|
437
|
+
$ pulumi import snowflake:index/storageIntegration:StorageIntegration example name
|
|
409
438
|
```
|
|
410
439
|
|
|
411
440
|
:param str resource_name: The name of the resource.
|
|
@@ -413,6 +442,7 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
413
442
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] storage_allowed_locations: Explicitly limits external stages that use the integration to reference one or more storage locations.
|
|
414
443
|
:param pulumi.Input[str] storage_aws_object_acl: "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
|
|
415
444
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] storage_blocked_locations: Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
|
|
445
|
+
:param pulumi.Input[str] storage_provider: Specifies the storage provider for the integration. Valid options are: `S3` | `S3GOV` | `S3CHINA` | `GCS` | `AZURE`
|
|
416
446
|
"""
|
|
417
447
|
...
|
|
418
448
|
@overload
|
|
@@ -424,7 +454,7 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
424
454
|
## Import
|
|
425
455
|
|
|
426
456
|
```sh
|
|
427
|
-
|
|
457
|
+
$ pulumi import snowflake:index/storageIntegration:StorageIntegration example name
|
|
428
458
|
```
|
|
429
459
|
|
|
430
460
|
:param str resource_name: The name of the resource.
|
|
@@ -478,6 +508,7 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
478
508
|
__props__.__dict__["azure_consent_url"] = None
|
|
479
509
|
__props__.__dict__["azure_multi_tenant_app_name"] = None
|
|
480
510
|
__props__.__dict__["created_on"] = None
|
|
511
|
+
__props__.__dict__["fully_qualified_name"] = None
|
|
481
512
|
__props__.__dict__["storage_aws_external_id"] = None
|
|
482
513
|
__props__.__dict__["storage_aws_iam_user_arn"] = None
|
|
483
514
|
__props__.__dict__["storage_gcp_service_account"] = None
|
|
@@ -497,6 +528,7 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
497
528
|
comment: Optional[pulumi.Input[str]] = None,
|
|
498
529
|
created_on: Optional[pulumi.Input[str]] = None,
|
|
499
530
|
enabled: Optional[pulumi.Input[bool]] = None,
|
|
531
|
+
fully_qualified_name: Optional[pulumi.Input[str]] = None,
|
|
500
532
|
name: Optional[pulumi.Input[str]] = None,
|
|
501
533
|
storage_allowed_locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
502
534
|
storage_aws_external_id: Optional[pulumi.Input[str]] = None,
|
|
@@ -517,12 +549,14 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
517
549
|
:param pulumi.Input[str] azure_consent_url: The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
|
|
518
550
|
:param pulumi.Input[str] azure_multi_tenant_app_name: This is the name of the Snowflake client application created for your account.
|
|
519
551
|
:param pulumi.Input[str] created_on: Date and time when the storage integration was created.
|
|
552
|
+
: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).
|
|
520
553
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] storage_allowed_locations: Explicitly limits external stages that use the integration to reference one or more storage locations.
|
|
521
554
|
:param pulumi.Input[str] storage_aws_external_id: The external ID that Snowflake will use when assuming the AWS role.
|
|
522
555
|
:param pulumi.Input[str] storage_aws_iam_user_arn: The Snowflake user that will attempt to assume the AWS role.
|
|
523
556
|
:param pulumi.Input[str] storage_aws_object_acl: "bucket-owner-full-control" Enables support for AWS access control lists (ACLs) to grant the bucket owner full control.
|
|
524
557
|
:param pulumi.Input[Sequence[pulumi.Input[str]]] storage_blocked_locations: Explicitly prohibits external stages that use the integration from referencing one or more storage locations.
|
|
525
558
|
:param pulumi.Input[str] storage_gcp_service_account: This is the name of the Snowflake Google Service Account created for your account.
|
|
559
|
+
:param pulumi.Input[str] storage_provider: Specifies the storage provider for the integration. Valid options are: `S3` | `S3GOV` | `S3CHINA` | `GCS` | `AZURE`
|
|
526
560
|
"""
|
|
527
561
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
528
562
|
|
|
@@ -534,6 +568,7 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
534
568
|
__props__.__dict__["comment"] = comment
|
|
535
569
|
__props__.__dict__["created_on"] = created_on
|
|
536
570
|
__props__.__dict__["enabled"] = enabled
|
|
571
|
+
__props__.__dict__["fully_qualified_name"] = fully_qualified_name
|
|
537
572
|
__props__.__dict__["name"] = name
|
|
538
573
|
__props__.__dict__["storage_allowed_locations"] = storage_allowed_locations
|
|
539
574
|
__props__.__dict__["storage_aws_external_id"] = storage_aws_external_id
|
|
@@ -585,6 +620,14 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
585
620
|
def enabled(self) -> pulumi.Output[Optional[bool]]:
|
|
586
621
|
return pulumi.get(self, "enabled")
|
|
587
622
|
|
|
623
|
+
@property
|
|
624
|
+
@pulumi.getter(name="fullyQualifiedName")
|
|
625
|
+
def fully_qualified_name(self) -> pulumi.Output[str]:
|
|
626
|
+
"""
|
|
627
|
+
Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
|
|
628
|
+
"""
|
|
629
|
+
return pulumi.get(self, "fully_qualified_name")
|
|
630
|
+
|
|
588
631
|
@property
|
|
589
632
|
@pulumi.getter
|
|
590
633
|
def name(self) -> pulumi.Output[str]:
|
|
@@ -646,6 +689,9 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
646
689
|
@property
|
|
647
690
|
@pulumi.getter(name="storageProvider")
|
|
648
691
|
def storage_provider(self) -> pulumi.Output[str]:
|
|
692
|
+
"""
|
|
693
|
+
Specifies the storage provider for the integration. Valid options are: `S3` | `S3GOV` | `S3CHINA` | `GCS` | `AZURE`
|
|
694
|
+
"""
|
|
649
695
|
return pulumi.get(self, "storage_provider")
|
|
650
696
|
|
|
651
697
|
@property
|