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.
- pulumi_snowflake/__init__.py +224 -172
- pulumi_snowflake/_inputs.py +52857 -1665
- pulumi_snowflake/_utilities.py +41 -5
- pulumi_snowflake/account.py +188 -218
- pulumi_snowflake/account_authentication_policy_attachment.py +149 -0
- pulumi_snowflake/account_parameter.py +21 -48
- pulumi_snowflake/account_password_policy_attachment.py +7 -32
- pulumi_snowflake/account_role.py +250 -0
- pulumi_snowflake/alert.py +38 -47
- 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 +33 -52
- 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 -213
- pulumi_snowflake/database_role.py +81 -44
- pulumi_snowflake/dynamic_table.py +42 -49
- pulumi_snowflake/email_notification_integration.py +33 -28
- pulumi_snowflake/{unsafe_execute.py → execute.py} +36 -39
- pulumi_snowflake/external_function.py +54 -75
- pulumi_snowflake/external_oauth_integration.py +593 -542
- pulumi_snowflake/external_table.py +67 -90
- pulumi_snowflake/external_volume.py +382 -0
- pulumi_snowflake/failover_group.py +57 -98
- pulumi_snowflake/file_format.py +33 -28
- 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 -9
- pulumi_snowflake/get_connections.py +109 -0
- pulumi_snowflake/get_cortex_search_services.py +216 -0
- pulumi_snowflake/get_current_account.py +24 -13
- pulumi_snowflake/get_current_role.py +14 -7
- pulumi_snowflake/get_database.py +25 -9
- pulumi_snowflake/get_database_role.py +162 -0
- pulumi_snowflake/get_database_roles.py +79 -47
- pulumi_snowflake/get_databases.py +91 -73
- pulumi_snowflake/get_dynamic_tables.py +36 -19
- pulumi_snowflake/get_external_functions.py +28 -9
- pulumi_snowflake/get_external_tables.py +28 -9
- pulumi_snowflake/get_failover_groups.py +18 -7
- pulumi_snowflake/get_file_formats.py +28 -9
- pulumi_snowflake/get_functions.py +28 -9
- pulumi_snowflake/get_grants.py +207 -84
- pulumi_snowflake/get_masking_policies.py +91 -51
- pulumi_snowflake/get_materialized_views.py +28 -9
- pulumi_snowflake/get_network_policies.py +129 -0
- pulumi_snowflake/get_parameters.py +38 -15
- pulumi_snowflake/get_pipes.py +28 -9
- pulumi_snowflake/get_procedures.py +28 -9
- pulumi_snowflake/get_resource_monitors.py +37 -24
- pulumi_snowflake/get_row_access_policies.py +91 -51
- pulumi_snowflake/get_schemas.py +145 -41
- pulumi_snowflake/get_secrets.py +200 -0
- pulumi_snowflake/get_security_integrations.py +129 -0
- pulumi_snowflake/get_sequences.py +28 -9
- pulumi_snowflake/get_shares.py +18 -9
- pulumi_snowflake/get_stages.py +28 -9
- pulumi_snowflake/get_storage_integrations.py +16 -9
- pulumi_snowflake/get_streamlits.py +170 -0
- pulumi_snowflake/get_streams.py +114 -54
- pulumi_snowflake/get_system_generate_scim_access_token.py +18 -9
- pulumi_snowflake/get_system_get_aws_sns_iam_policy.py +32 -7
- pulumi_snowflake/get_system_get_private_link_config.py +120 -5
- pulumi_snowflake/get_system_get_snowflake_platform_info.py +15 -7
- pulumi_snowflake/get_tables.py +28 -9
- pulumi_snowflake/get_tags.py +130 -0
- pulumi_snowflake/get_tasks.py +134 -54
- pulumi_snowflake/get_users.py +116 -44
- pulumi_snowflake/get_views.py +114 -54
- pulumi_snowflake/get_warehouses.py +79 -26
- pulumi_snowflake/grant_account_role.py +28 -75
- pulumi_snowflake/grant_application_role.py +257 -0
- pulumi_snowflake/grant_database_role.py +35 -94
- 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 -383
- pulumi_snowflake/grant_privileges_to_share.py +96 -44
- pulumi_snowflake/legacy_service_user.py +3670 -0
- pulumi_snowflake/managed_account.py +40 -11
- pulumi_snowflake/masking_policy.py +213 -310
- pulumi_snowflake/materialized_view.py +62 -71
- pulumi_snowflake/network_policy.py +217 -61
- pulumi_snowflake/network_policy_attachment.py +5 -34
- pulumi_snowflake/network_rule.py +473 -0
- pulumi_snowflake/notification_integration.py +49 -84
- pulumi_snowflake/oauth_integration_for_custom_clients.py +906 -0
- pulumi_snowflake/{oauth_integration.py → oauth_integration_for_partner_applications.py} +191 -192
- pulumi_snowflake/object_parameter.py +10 -101
- pulumi_snowflake/outputs.py +49200 -2928
- pulumi_snowflake/password_policy.py +41 -28
- pulumi_snowflake/pipe.py +33 -4
- 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 -327
- pulumi_snowflake/row_access_policy.py +200 -149
- pulumi_snowflake/{saml_integration.py → saml2_integration.py} +356 -299
- pulumi_snowflake/schema.py +949 -178
- pulumi_snowflake/scim_integration.py +286 -109
- 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 -34
- pulumi_snowflake/service_user.py +3585 -0
- pulumi_snowflake/share.py +33 -28
- pulumi_snowflake/shared_database.py +939 -0
- pulumi_snowflake/stage.py +95 -84
- pulumi_snowflake/storage_integration.py +46 -4
- 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 -97
- pulumi_snowflake/table_column_masking_policy_application.py +7 -14
- pulumi_snowflake/table_constraint.py +29 -172
- pulumi_snowflake/tag.py +142 -74
- pulumi_snowflake/tag_association.py +40 -215
- pulumi_snowflake/task.py +3048 -418
- pulumi_snowflake/user.py +3351 -384
- pulumi_snowflake/user_authentication_policy_attachment.py +197 -0
- pulumi_snowflake/user_password_policy_attachment.py +5 -4
- pulumi_snowflake/user_public_keys.py +5 -0
- pulumi_snowflake/view.py +466 -215
- pulumi_snowflake/warehouse.py +184 -168
- {pulumi_snowflake-0.50.3a1710160126.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.3a1710160126.dist-info → pulumi_snowflake-1.2.0a1736835738.dist-info}/WHEEL +1 -1
- pulumi_snowflake/account_grant.py +0 -343
- pulumi_snowflake/database_grant.py +0 -495
- pulumi_snowflake/external_table_grant.py +0 -690
- pulumi_snowflake/failover_group_grant.py +0 -388
- pulumi_snowflake/file_format_grant.py +0 -635
- pulumi_snowflake/function.py +0 -872
- pulumi_snowflake/function_grant.py +0 -745
- pulumi_snowflake/get_role.py +0 -121
- pulumi_snowflake/get_roles.py +0 -120
- pulumi_snowflake/grant_privileges_to_role.py +0 -825
- pulumi_snowflake/integration_grant.py +0 -440
- pulumi_snowflake/masking_policy_grant.py +0 -542
- pulumi_snowflake/materialized_view_grant.py +0 -689
- pulumi_snowflake/pipe_grant.py +0 -587
- pulumi_snowflake/procedure.py +0 -887
- pulumi_snowflake/procedure_grant.py +0 -745
- pulumi_snowflake/resource_monitor_grant.py +0 -387
- pulumi_snowflake/role.py +0 -273
- pulumi_snowflake/role_grants.py +0 -352
- pulumi_snowflake/role_ownership_grant.py +0 -338
- pulumi_snowflake/row_access_policy_grant.py +0 -540
- pulumi_snowflake/schema_grant.py +0 -647
- pulumi_snowflake/sequence_grant.py +0 -635
- pulumi_snowflake/session_parameter.py +0 -332
- pulumi_snowflake/stage_grant.py +0 -635
- pulumi_snowflake/stream.py +0 -614
- pulumi_snowflake/stream_grant.py +0 -635
- pulumi_snowflake/table_grant.py +0 -677
- pulumi_snowflake/tag_grant.py +0 -532
- pulumi_snowflake/tag_masking_policy_association.py +0 -210
- pulumi_snowflake/task_grant.py +0 -635
- pulumi_snowflake/user_grant.py +0 -394
- pulumi_snowflake/user_ownership_grant.py +0 -286
- pulumi_snowflake/view_grant.py +0 -705
- pulumi_snowflake/warehouse_grant.py +0 -440
- pulumi_snowflake-0.50.3a1710160126.dist-info/RECORD +0 -136
- {pulumi_snowflake-0.50.3a1710160126.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,31 +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
|
-
<!--Start PulumiCodeChooser -->
|
|
498
|
-
```python
|
|
499
|
-
import pulumi
|
|
500
|
-
import pulumi_snowflake as snowflake
|
|
501
|
-
|
|
502
|
-
example_stage = snowflake.Stage("exampleStage",
|
|
503
|
-
url="s3://com.example.bucket/prefix",
|
|
504
|
-
database="EXAMPLE_DB",
|
|
505
|
-
schema="EXAMPLE_SCHEMA",
|
|
506
|
-
credentials=f"AWS_KEY_ID='{var['example_aws_key_id']}' AWS_SECRET_KEY='{var['example_aws_secret_key']}'")
|
|
507
|
-
grant_example_stage = snowflake.StageGrant("grantExampleStage",
|
|
508
|
-
database_name=example_stage.database,
|
|
509
|
-
schema_name=example_stage.schema,
|
|
510
|
-
roles=["LOADER"],
|
|
511
|
-
privilege="OWNERSHIP",
|
|
512
|
-
stage_name=example_stage.name)
|
|
513
|
-
```
|
|
514
|
-
<!--End PulumiCodeChooser -->
|
|
515
|
-
|
|
516
528
|
## Import
|
|
517
529
|
|
|
518
530
|
format is database name | schema name | stage name
|
|
@@ -523,17 +535,19 @@ class Stage(pulumi.CustomResource):
|
|
|
523
535
|
|
|
524
536
|
:param str resource_name: The name of the resource.
|
|
525
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>
|
|
526
539
|
:param pulumi.Input[str] comment: Specifies a comment for the stage.
|
|
527
540
|
:param pulumi.Input[str] copy_options: Specifies the copy options for the stage.
|
|
528
541
|
:param pulumi.Input[str] credentials: Specifies the credentials for the stage.
|
|
529
|
-
:param pulumi.Input[str] database:
|
|
542
|
+
:param pulumi.Input[str] database: The database in which to create the stage.
|
|
530
543
|
:param pulumi.Input[str] directory: Specifies the directory settings for the stage.
|
|
531
544
|
:param pulumi.Input[str] encryption: Specifies the encryption settings for the stage.
|
|
532
|
-
:param pulumi.Input[str] file_format: Specifies the file format for the stage.
|
|
533
|
-
:param pulumi.Input[str] name:
|
|
534
|
-
: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.
|
|
535
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.
|
|
536
|
-
: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.
|
|
537
551
|
:param pulumi.Input[str] url: Specifies the URL for the stage.
|
|
538
552
|
"""
|
|
539
553
|
...
|
|
@@ -543,27 +557,6 @@ class Stage(pulumi.CustomResource):
|
|
|
543
557
|
args: StageArgs,
|
|
544
558
|
opts: Optional[pulumi.ResourceOptions] = None):
|
|
545
559
|
"""
|
|
546
|
-
## Example Usage
|
|
547
|
-
|
|
548
|
-
<!--Start PulumiCodeChooser -->
|
|
549
|
-
```python
|
|
550
|
-
import pulumi
|
|
551
|
-
import pulumi_snowflake as snowflake
|
|
552
|
-
|
|
553
|
-
example_stage = snowflake.Stage("exampleStage",
|
|
554
|
-
url="s3://com.example.bucket/prefix",
|
|
555
|
-
database="EXAMPLE_DB",
|
|
556
|
-
schema="EXAMPLE_SCHEMA",
|
|
557
|
-
credentials=f"AWS_KEY_ID='{var['example_aws_key_id']}' AWS_SECRET_KEY='{var['example_aws_secret_key']}'")
|
|
558
|
-
grant_example_stage = snowflake.StageGrant("grantExampleStage",
|
|
559
|
-
database_name=example_stage.database,
|
|
560
|
-
schema_name=example_stage.schema,
|
|
561
|
-
roles=["LOADER"],
|
|
562
|
-
privilege="OWNERSHIP",
|
|
563
|
-
stage_name=example_stage.name)
|
|
564
|
-
```
|
|
565
|
-
<!--End PulumiCodeChooser -->
|
|
566
|
-
|
|
567
560
|
## Import
|
|
568
561
|
|
|
569
562
|
format is database name | schema name | stage name
|
|
@@ -599,7 +592,7 @@ class Stage(pulumi.CustomResource):
|
|
|
599
592
|
schema: Optional[pulumi.Input[str]] = None,
|
|
600
593
|
snowflake_iam_user: Optional[pulumi.Input[str]] = None,
|
|
601
594
|
storage_integration: Optional[pulumi.Input[str]] = None,
|
|
602
|
-
tags: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
595
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['StageTagArgs', 'StageTagArgsDict']]]]] = None,
|
|
603
596
|
url: Optional[pulumi.Input[str]] = None,
|
|
604
597
|
__props__=None):
|
|
605
598
|
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
@@ -628,6 +621,7 @@ class Stage(pulumi.CustomResource):
|
|
|
628
621
|
__props__.__dict__["storage_integration"] = storage_integration
|
|
629
622
|
__props__.__dict__["tags"] = tags
|
|
630
623
|
__props__.__dict__["url"] = url
|
|
624
|
+
__props__.__dict__["fully_qualified_name"] = None
|
|
631
625
|
secret_opts = pulumi.ResourceOptions(additional_secret_outputs=["credentials"])
|
|
632
626
|
opts = pulumi.ResourceOptions.merge(opts, secret_opts)
|
|
633
627
|
super(Stage, __self__).__init__(
|
|
@@ -648,11 +642,12 @@ class Stage(pulumi.CustomResource):
|
|
|
648
642
|
directory: Optional[pulumi.Input[str]] = None,
|
|
649
643
|
encryption: Optional[pulumi.Input[str]] = None,
|
|
650
644
|
file_format: Optional[pulumi.Input[str]] = None,
|
|
645
|
+
fully_qualified_name: Optional[pulumi.Input[str]] = None,
|
|
651
646
|
name: Optional[pulumi.Input[str]] = None,
|
|
652
647
|
schema: Optional[pulumi.Input[str]] = None,
|
|
653
648
|
snowflake_iam_user: Optional[pulumi.Input[str]] = None,
|
|
654
649
|
storage_integration: Optional[pulumi.Input[str]] = None,
|
|
655
|
-
tags: Optional[pulumi.Input[Sequence[pulumi.Input[
|
|
650
|
+
tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['StageTagArgs', 'StageTagArgsDict']]]]] = None,
|
|
656
651
|
url: Optional[pulumi.Input[str]] = None) -> 'Stage':
|
|
657
652
|
"""
|
|
658
653
|
Get an existing Stage resource's state with the given name, id, and optional extra
|
|
@@ -661,17 +656,20 @@ class Stage(pulumi.CustomResource):
|
|
|
661
656
|
:param str resource_name: The unique name of the resulting resource.
|
|
662
657
|
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
663
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>
|
|
664
660
|
:param pulumi.Input[str] comment: Specifies a comment for the stage.
|
|
665
661
|
:param pulumi.Input[str] copy_options: Specifies the copy options for the stage.
|
|
666
662
|
:param pulumi.Input[str] credentials: Specifies the credentials for the stage.
|
|
667
|
-
:param pulumi.Input[str] database:
|
|
663
|
+
:param pulumi.Input[str] database: The database in which to create the stage.
|
|
668
664
|
:param pulumi.Input[str] directory: Specifies the directory settings for the stage.
|
|
669
665
|
:param pulumi.Input[str] encryption: Specifies the encryption settings for the stage.
|
|
670
|
-
:param pulumi.Input[str] file_format: Specifies the file format for the stage.
|
|
671
|
-
:param pulumi.Input[str]
|
|
672
|
-
: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.
|
|
673
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.
|
|
674
|
-
: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.
|
|
675
673
|
:param pulumi.Input[str] url: Specifies the URL for the stage.
|
|
676
674
|
"""
|
|
677
675
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
@@ -686,6 +684,7 @@ class Stage(pulumi.CustomResource):
|
|
|
686
684
|
__props__.__dict__["directory"] = directory
|
|
687
685
|
__props__.__dict__["encryption"] = encryption
|
|
688
686
|
__props__.__dict__["file_format"] = file_format
|
|
687
|
+
__props__.__dict__["fully_qualified_name"] = fully_qualified_name
|
|
689
688
|
__props__.__dict__["name"] = name
|
|
690
689
|
__props__.__dict__["schema"] = schema
|
|
691
690
|
__props__.__dict__["snowflake_iam_user"] = snowflake_iam_user
|
|
@@ -697,6 +696,9 @@ class Stage(pulumi.CustomResource):
|
|
|
697
696
|
@property
|
|
698
697
|
@pulumi.getter(name="awsExternalId")
|
|
699
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
|
+
"""
|
|
700
702
|
return pulumi.get(self, "aws_external_id")
|
|
701
703
|
|
|
702
704
|
@property
|
|
@@ -727,7 +729,7 @@ class Stage(pulumi.CustomResource):
|
|
|
727
729
|
@pulumi.getter
|
|
728
730
|
def database(self) -> pulumi.Output[str]:
|
|
729
731
|
"""
|
|
730
|
-
|
|
732
|
+
The database in which to create the stage.
|
|
731
733
|
"""
|
|
732
734
|
return pulumi.get(self, "database")
|
|
733
735
|
|
|
@@ -751,15 +753,23 @@ class Stage(pulumi.CustomResource):
|
|
|
751
753
|
@pulumi.getter(name="fileFormat")
|
|
752
754
|
def file_format(self) -> pulumi.Output[Optional[str]]:
|
|
753
755
|
"""
|
|
754
|
-
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.
|
|
755
757
|
"""
|
|
756
758
|
return pulumi.get(self, "file_format")
|
|
757
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
|
+
|
|
758
768
|
@property
|
|
759
769
|
@pulumi.getter
|
|
760
770
|
def name(self) -> pulumi.Output[str]:
|
|
761
771
|
"""
|
|
762
|
-
|
|
772
|
+
Specifies the identifier for the stage; must be unique for the database and schema in which the stage is created.
|
|
763
773
|
"""
|
|
764
774
|
return pulumi.get(self, "name")
|
|
765
775
|
|
|
@@ -767,13 +777,16 @@ class Stage(pulumi.CustomResource):
|
|
|
767
777
|
@pulumi.getter
|
|
768
778
|
def schema(self) -> pulumi.Output[str]:
|
|
769
779
|
"""
|
|
770
|
-
|
|
780
|
+
The schema in which to create the stage.
|
|
771
781
|
"""
|
|
772
782
|
return pulumi.get(self, "schema")
|
|
773
783
|
|
|
774
784
|
@property
|
|
775
785
|
@pulumi.getter(name="snowflakeIamUser")
|
|
776
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
|
+
"""
|
|
777
790
|
return pulumi.get(self, "snowflake_iam_user")
|
|
778
791
|
|
|
779
792
|
@property
|
|
@@ -786,13 +799,11 @@ class Stage(pulumi.CustomResource):
|
|
|
786
799
|
|
|
787
800
|
@property
|
|
788
801
|
@pulumi.getter
|
|
802
|
+
@_utilities.deprecated("""Use the 'snowflake_tag_association' resource instead.""")
|
|
789
803
|
def tags(self) -> pulumi.Output[Optional[Sequence['outputs.StageTag']]]:
|
|
790
804
|
"""
|
|
791
805
|
Definitions of a tag to associate with the resource.
|
|
792
806
|
"""
|
|
793
|
-
warnings.warn("""Use the 'snowflake_tag_association' resource instead.""", DeprecationWarning)
|
|
794
|
-
pulumi.log.warn("""tags is deprecated: Use the 'snowflake_tag_association' resource instead.""")
|
|
795
|
-
|
|
796
807
|
return pulumi.get(self, "tags")
|
|
797
808
|
|
|
798
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
|
|
@@ -402,8 +431,6 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
402
431
|
type: Optional[pulumi.Input[str]] = None,
|
|
403
432
|
__props__=None):
|
|
404
433
|
"""
|
|
405
|
-
## Example Usage
|
|
406
|
-
|
|
407
434
|
## Import
|
|
408
435
|
|
|
409
436
|
```sh
|
|
@@ -415,6 +442,7 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
415
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.
|
|
416
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.
|
|
417
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`
|
|
418
446
|
"""
|
|
419
447
|
...
|
|
420
448
|
@overload
|
|
@@ -423,8 +451,6 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
423
451
|
args: StorageIntegrationArgs,
|
|
424
452
|
opts: Optional[pulumi.ResourceOptions] = None):
|
|
425
453
|
"""
|
|
426
|
-
## Example Usage
|
|
427
|
-
|
|
428
454
|
## Import
|
|
429
455
|
|
|
430
456
|
```sh
|
|
@@ -482,6 +508,7 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
482
508
|
__props__.__dict__["azure_consent_url"] = None
|
|
483
509
|
__props__.__dict__["azure_multi_tenant_app_name"] = None
|
|
484
510
|
__props__.__dict__["created_on"] = None
|
|
511
|
+
__props__.__dict__["fully_qualified_name"] = None
|
|
485
512
|
__props__.__dict__["storage_aws_external_id"] = None
|
|
486
513
|
__props__.__dict__["storage_aws_iam_user_arn"] = None
|
|
487
514
|
__props__.__dict__["storage_gcp_service_account"] = None
|
|
@@ -501,6 +528,7 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
501
528
|
comment: Optional[pulumi.Input[str]] = None,
|
|
502
529
|
created_on: Optional[pulumi.Input[str]] = None,
|
|
503
530
|
enabled: Optional[pulumi.Input[bool]] = None,
|
|
531
|
+
fully_qualified_name: Optional[pulumi.Input[str]] = None,
|
|
504
532
|
name: Optional[pulumi.Input[str]] = None,
|
|
505
533
|
storage_allowed_locations: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
|
|
506
534
|
storage_aws_external_id: Optional[pulumi.Input[str]] = None,
|
|
@@ -521,12 +549,14 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
521
549
|
:param pulumi.Input[str] azure_consent_url: The consent URL that is used to create an Azure Snowflake service principle inside your tenant.
|
|
522
550
|
:param pulumi.Input[str] azure_multi_tenant_app_name: This is the name of the Snowflake client application created for your account.
|
|
523
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).
|
|
524
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.
|
|
525
554
|
:param pulumi.Input[str] storage_aws_external_id: The external ID that Snowflake will use when assuming the AWS role.
|
|
526
555
|
:param pulumi.Input[str] storage_aws_iam_user_arn: The Snowflake user that will attempt to assume the AWS role.
|
|
527
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.
|
|
528
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.
|
|
529
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`
|
|
530
560
|
"""
|
|
531
561
|
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
532
562
|
|
|
@@ -538,6 +568,7 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
538
568
|
__props__.__dict__["comment"] = comment
|
|
539
569
|
__props__.__dict__["created_on"] = created_on
|
|
540
570
|
__props__.__dict__["enabled"] = enabled
|
|
571
|
+
__props__.__dict__["fully_qualified_name"] = fully_qualified_name
|
|
541
572
|
__props__.__dict__["name"] = name
|
|
542
573
|
__props__.__dict__["storage_allowed_locations"] = storage_allowed_locations
|
|
543
574
|
__props__.__dict__["storage_aws_external_id"] = storage_aws_external_id
|
|
@@ -589,6 +620,14 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
589
620
|
def enabled(self) -> pulumi.Output[Optional[bool]]:
|
|
590
621
|
return pulumi.get(self, "enabled")
|
|
591
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
|
+
|
|
592
631
|
@property
|
|
593
632
|
@pulumi.getter
|
|
594
633
|
def name(self) -> pulumi.Output[str]:
|
|
@@ -650,6 +689,9 @@ class StorageIntegration(pulumi.CustomResource):
|
|
|
650
689
|
@property
|
|
651
690
|
@pulumi.getter(name="storageProvider")
|
|
652
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
|
+
"""
|
|
653
695
|
return pulumi.get(self, "storage_provider")
|
|
654
696
|
|
|
655
697
|
@property
|