pulumi-snowflake 0.58.0__py3-none-any.whl → 0.58.0a1722527984__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pulumi-snowflake might be problematic. Click here for more details.

Files changed (92) hide show
  1. pulumi_snowflake/_inputs.py +125 -5857
  2. pulumi_snowflake/account.py +50 -28
  3. pulumi_snowflake/account_parameter.py +28 -0
  4. pulumi_snowflake/account_password_policy_attachment.py +30 -2
  5. pulumi_snowflake/account_role.py +32 -51
  6. pulumi_snowflake/alert.py +45 -33
  7. pulumi_snowflake/api_authentication_integration_with_authorization_code_grant.py +19 -39
  8. pulumi_snowflake/api_authentication_integration_with_client_credentials.py +19 -39
  9. pulumi_snowflake/api_authentication_integration_with_jwt_bearer.py +19 -39
  10. pulumi_snowflake/api_integration.py +54 -28
  11. pulumi_snowflake/cortex_search_service.py +0 -28
  12. pulumi_snowflake/database.py +148 -97
  13. pulumi_snowflake/database_old.py +77 -5
  14. pulumi_snowflake/database_role.py +42 -76
  15. pulumi_snowflake/dynamic_table.py +43 -33
  16. pulumi_snowflake/email_notification_integration.py +26 -28
  17. pulumi_snowflake/external_function.py +62 -38
  18. pulumi_snowflake/external_oauth_integration.py +21 -41
  19. pulumi_snowflake/external_table.py +58 -38
  20. pulumi_snowflake/failover_group.py +82 -38
  21. pulumi_snowflake/file_format.py +26 -28
  22. pulumi_snowflake/function.py +9 -33
  23. pulumi_snowflake/get_cortex_search_services.py +16 -16
  24. pulumi_snowflake/get_database_roles.py +38 -61
  25. pulumi_snowflake/get_databases.py +6 -6
  26. pulumi_snowflake/get_dynamic_tables.py +12 -12
  27. pulumi_snowflake/get_grants.py +138 -138
  28. pulumi_snowflake/get_network_policies.py +2 -2
  29. pulumi_snowflake/get_roles.py +2 -2
  30. pulumi_snowflake/get_schemas.py +8 -12
  31. pulumi_snowflake/get_security_integrations.py +2 -2
  32. pulumi_snowflake/get_streamlits.py +10 -10
  33. pulumi_snowflake/get_users.py +33 -96
  34. pulumi_snowflake/get_views.py +53 -92
  35. pulumi_snowflake/get_warehouses.py +2 -2
  36. pulumi_snowflake/grant_account_role.py +4 -0
  37. pulumi_snowflake/grant_application_role.py +4 -0
  38. pulumi_snowflake/grant_database_role.py +4 -0
  39. pulumi_snowflake/grant_ownership.py +5 -5
  40. pulumi_snowflake/grant_privileges_to_account_role.py +15 -15
  41. pulumi_snowflake/grant_privileges_to_database_role.py +12 -16
  42. pulumi_snowflake/grant_privileges_to_share.py +0 -47
  43. pulumi_snowflake/managed_account.py +4 -28
  44. pulumi_snowflake/masking_policy.py +89 -33
  45. pulumi_snowflake/materialized_view.py +39 -33
  46. pulumi_snowflake/network_policy.py +49 -47
  47. pulumi_snowflake/network_policy_attachment.py +30 -0
  48. pulumi_snowflake/network_rule.py +66 -28
  49. pulumi_snowflake/notification_integration.py +34 -28
  50. pulumi_snowflake/oauth_integration.py +34 -0
  51. pulumi_snowflake/oauth_integration_for_custom_clients.py +105 -39
  52. pulumi_snowflake/oauth_integration_for_partner_applications.py +19 -39
  53. pulumi_snowflake/object_parameter.py +103 -5
  54. pulumi_snowflake/outputs.py +4207 -12013
  55. pulumi_snowflake/password_policy.py +28 -28
  56. pulumi_snowflake/pipe.py +4 -28
  57. pulumi_snowflake/procedure.py +9 -33
  58. pulumi_snowflake/provider.py +16 -16
  59. pulumi_snowflake/pulumi-plugin.json +1 -1
  60. pulumi_snowflake/resource_monitor.py +48 -28
  61. pulumi_snowflake/role.py +32 -51
  62. pulumi_snowflake/row_access_policy.py +34 -28
  63. pulumi_snowflake/saml2_integration.py +19 -39
  64. pulumi_snowflake/saml_integration.py +34 -0
  65. pulumi_snowflake/schema.py +28 -52
  66. pulumi_snowflake/scim_integration.py +19 -39
  67. pulumi_snowflake/secondary_database.py +19 -35
  68. pulumi_snowflake/sequence.py +36 -4
  69. pulumi_snowflake/session_parameter.py +32 -0
  70. pulumi_snowflake/share.py +28 -28
  71. pulumi_snowflake/shared_database.py +15 -35
  72. pulumi_snowflake/stage.py +33 -33
  73. pulumi_snowflake/storage_integration.py +4 -28
  74. pulumi_snowflake/stream.py +4 -28
  75. pulumi_snowflake/streamlit.py +19 -39
  76. pulumi_snowflake/table.py +47 -43
  77. pulumi_snowflake/table_column_masking_policy_application.py +14 -2
  78. pulumi_snowflake/table_constraint.py +157 -5
  79. pulumi_snowflake/tag.py +40 -28
  80. pulumi_snowflake/tag_association.py +125 -5
  81. pulumi_snowflake/tag_masking_policy_association.py +4 -0
  82. pulumi_snowflake/task.py +92 -28
  83. pulumi_snowflake/unsafe_execute.py +20 -2
  84. pulumi_snowflake/user.py +373 -3346
  85. pulumi_snowflake/user_password_policy_attachment.py +36 -0
  86. pulumi_snowflake/view.py +185 -465
  87. pulumi_snowflake/warehouse.py +43 -39
  88. {pulumi_snowflake-0.58.0.dist-info → pulumi_snowflake-0.58.0a1722527984.dist-info}/METADATA +1 -1
  89. pulumi_snowflake-0.58.0a1722527984.dist-info/RECORD +129 -0
  90. {pulumi_snowflake-0.58.0.dist-info → pulumi_snowflake-0.58.0a1722527984.dist-info}/WHEEL +1 -1
  91. pulumi_snowflake-0.58.0.dist-info/RECORD +0 -129
  92. {pulumi_snowflake-0.58.0.dist-info → pulumi_snowflake-0.58.0a1722527984.dist-info}/top_level.txt +0 -0
pulumi_snowflake/table.py CHANGED
@@ -195,10 +195,10 @@ class _TableState:
195
195
  comment: Optional[pulumi.Input[str]] = None,
196
196
  data_retention_time_in_days: Optional[pulumi.Input[int]] = None,
197
197
  database: Optional[pulumi.Input[str]] = None,
198
- fully_qualified_name: Optional[pulumi.Input[str]] = None,
199
198
  name: Optional[pulumi.Input[str]] = None,
200
199
  owner: Optional[pulumi.Input[str]] = None,
201
200
  primary_key: Optional[pulumi.Input['TablePrimaryKeyArgs']] = None,
201
+ qualified_name: Optional[pulumi.Input[str]] = None,
202
202
  schema: Optional[pulumi.Input[str]] = None,
203
203
  tags: Optional[pulumi.Input[Sequence[pulumi.Input['TableTagArgs']]]] = None):
204
204
  """
@@ -209,10 +209,10 @@ class _TableState:
209
209
  :param pulumi.Input[str] comment: Specifies a comment for the table.
210
210
  :param pulumi.Input[int] data_retention_time_in_days: Specifies the retention period for the table so that Time Travel actions (SELECT, CLONE, UNDROP) can be performed on historical data in the table. If you wish to inherit the parent schema setting then pass in the schema attribute to this argument or do not fill this parameter at all; the default value for this field is -1, which is a fallback to use Snowflake default - in this case the schema value
211
211
  :param pulumi.Input[str] database: The database in which to create the table.
212
- :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).
213
212
  :param pulumi.Input[str] name: Specifies the identifier for the table; must be unique for the database and schema in which the table is created.
214
213
  :param pulumi.Input[str] owner: Name of the role that owns the table.
215
214
  :param pulumi.Input['TablePrimaryKeyArgs'] primary_key: Definitions of primary key constraint to create on table
215
+ :param pulumi.Input[str] qualified_name: Qualified name of the table.
216
216
  :param pulumi.Input[str] schema: The schema in which to create the table.
217
217
  :param pulumi.Input[Sequence[pulumi.Input['TableTagArgs']]] tags: Definitions of a tag to associate with the resource.
218
218
  """
@@ -228,8 +228,6 @@ class _TableState:
228
228
  pulumi.set(__self__, "data_retention_time_in_days", data_retention_time_in_days)
229
229
  if database is not None:
230
230
  pulumi.set(__self__, "database", database)
231
- if fully_qualified_name is not None:
232
- pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
233
231
  if name is not None:
234
232
  pulumi.set(__self__, "name", name)
235
233
  if owner is not None:
@@ -239,6 +237,8 @@ class _TableState:
239
237
  pulumi.log.warn("""primary_key is deprecated: Use TableConstraint instead""")
240
238
  if primary_key is not None:
241
239
  pulumi.set(__self__, "primary_key", primary_key)
240
+ if qualified_name is not None:
241
+ pulumi.set(__self__, "qualified_name", qualified_name)
242
242
  if schema is not None:
243
243
  pulumi.set(__self__, "schema", schema)
244
244
  if tags is not None:
@@ -319,18 +319,6 @@ class _TableState:
319
319
  def database(self, value: Optional[pulumi.Input[str]]):
320
320
  pulumi.set(self, "database", value)
321
321
 
322
- @property
323
- @pulumi.getter(name="fullyQualifiedName")
324
- def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
325
- """
326
- Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
327
- """
328
- return pulumi.get(self, "fully_qualified_name")
329
-
330
- @fully_qualified_name.setter
331
- def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
332
- pulumi.set(self, "fully_qualified_name", value)
333
-
334
322
  @property
335
323
  @pulumi.getter
336
324
  def name(self) -> Optional[pulumi.Input[str]]:
@@ -368,6 +356,18 @@ class _TableState:
368
356
  def primary_key(self, value: Optional[pulumi.Input['TablePrimaryKeyArgs']]):
369
357
  pulumi.set(self, "primary_key", value)
370
358
 
359
+ @property
360
+ @pulumi.getter(name="qualifiedName")
361
+ def qualified_name(self) -> Optional[pulumi.Input[str]]:
362
+ """
363
+ Qualified name of the table.
364
+ """
365
+ return pulumi.get(self, "qualified_name")
366
+
367
+ @qualified_name.setter
368
+ def qualified_name(self, value: Optional[pulumi.Input[str]]):
369
+ pulumi.set(self, "qualified_name", value)
370
+
371
371
  @property
372
372
  @pulumi.getter
373
373
  def schema(self) -> Optional[pulumi.Input[str]]:
@@ -401,16 +401,18 @@ class Table(pulumi.CustomResource):
401
401
  opts: Optional[pulumi.ResourceOptions] = None,
402
402
  change_tracking: Optional[pulumi.Input[bool]] = None,
403
403
  cluster_bies: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
404
- columns: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TableColumnArgs', 'TableColumnArgsDict']]]]] = None,
404
+ columns: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['TableColumnArgs']]]]] = None,
405
405
  comment: Optional[pulumi.Input[str]] = None,
406
406
  data_retention_time_in_days: Optional[pulumi.Input[int]] = None,
407
407
  database: Optional[pulumi.Input[str]] = None,
408
408
  name: Optional[pulumi.Input[str]] = None,
409
- primary_key: Optional[pulumi.Input[Union['TablePrimaryKeyArgs', 'TablePrimaryKeyArgsDict']]] = None,
409
+ primary_key: Optional[pulumi.Input[pulumi.InputType['TablePrimaryKeyArgs']]] = None,
410
410
  schema: Optional[pulumi.Input[str]] = None,
411
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TableTagArgs', 'TableTagArgsDict']]]]] = None,
411
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['TableTagArgs']]]]] = None,
412
412
  __props__=None):
413
413
  """
414
+ ## Example Usage
415
+
414
416
  ## Import
415
417
 
416
418
  format is database name | schema name | table name
@@ -423,14 +425,14 @@ class Table(pulumi.CustomResource):
423
425
  :param pulumi.ResourceOptions opts: Options for the resource.
424
426
  :param pulumi.Input[bool] change_tracking: Specifies whether to enable change tracking on the table. Default false.
425
427
  :param pulumi.Input[Sequence[pulumi.Input[str]]] cluster_bies: A list of one or more table columns/expressions to be used as clustering key(s) for the table
426
- :param pulumi.Input[Sequence[pulumi.Input[Union['TableColumnArgs', 'TableColumnArgsDict']]]] columns: Definitions of a column to create in the table. Minimum one required.
428
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['TableColumnArgs']]]] columns: Definitions of a column to create in the table. Minimum one required.
427
429
  :param pulumi.Input[str] comment: Specifies a comment for the table.
428
430
  :param pulumi.Input[int] data_retention_time_in_days: Specifies the retention period for the table so that Time Travel actions (SELECT, CLONE, UNDROP) can be performed on historical data in the table. If you wish to inherit the parent schema setting then pass in the schema attribute to this argument or do not fill this parameter at all; the default value for this field is -1, which is a fallback to use Snowflake default - in this case the schema value
429
431
  :param pulumi.Input[str] database: The database in which to create the table.
430
432
  :param pulumi.Input[str] name: Specifies the identifier for the table; must be unique for the database and schema in which the table is created.
431
- :param pulumi.Input[Union['TablePrimaryKeyArgs', 'TablePrimaryKeyArgsDict']] primary_key: Definitions of primary key constraint to create on table
433
+ :param pulumi.Input[pulumi.InputType['TablePrimaryKeyArgs']] primary_key: Definitions of primary key constraint to create on table
432
434
  :param pulumi.Input[str] schema: The schema in which to create the table.
433
- :param pulumi.Input[Sequence[pulumi.Input[Union['TableTagArgs', 'TableTagArgsDict']]]] tags: Definitions of a tag to associate with the resource.
435
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['TableTagArgs']]]] tags: Definitions of a tag to associate with the resource.
434
436
  """
435
437
  ...
436
438
  @overload
@@ -439,6 +441,8 @@ class Table(pulumi.CustomResource):
439
441
  args: TableArgs,
440
442
  opts: Optional[pulumi.ResourceOptions] = None):
441
443
  """
444
+ ## Example Usage
445
+
442
446
  ## Import
443
447
 
444
448
  format is database name | schema name | table name
@@ -464,14 +468,14 @@ class Table(pulumi.CustomResource):
464
468
  opts: Optional[pulumi.ResourceOptions] = None,
465
469
  change_tracking: Optional[pulumi.Input[bool]] = None,
466
470
  cluster_bies: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
467
- columns: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TableColumnArgs', 'TableColumnArgsDict']]]]] = None,
471
+ columns: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['TableColumnArgs']]]]] = None,
468
472
  comment: Optional[pulumi.Input[str]] = None,
469
473
  data_retention_time_in_days: Optional[pulumi.Input[int]] = None,
470
474
  database: Optional[pulumi.Input[str]] = None,
471
475
  name: Optional[pulumi.Input[str]] = None,
472
- primary_key: Optional[pulumi.Input[Union['TablePrimaryKeyArgs', 'TablePrimaryKeyArgsDict']]] = None,
476
+ primary_key: Optional[pulumi.Input[pulumi.InputType['TablePrimaryKeyArgs']]] = None,
473
477
  schema: Optional[pulumi.Input[str]] = None,
474
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TableTagArgs', 'TableTagArgsDict']]]]] = None,
478
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['TableTagArgs']]]]] = None,
475
479
  __props__=None):
476
480
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
477
481
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -497,8 +501,8 @@ class Table(pulumi.CustomResource):
497
501
  raise TypeError("Missing required property 'schema'")
498
502
  __props__.__dict__["schema"] = schema
499
503
  __props__.__dict__["tags"] = tags
500
- __props__.__dict__["fully_qualified_name"] = None
501
504
  __props__.__dict__["owner"] = None
505
+ __props__.__dict__["qualified_name"] = None
502
506
  super(Table, __self__).__init__(
503
507
  'snowflake:index/table:Table',
504
508
  resource_name,
@@ -511,16 +515,16 @@ class Table(pulumi.CustomResource):
511
515
  opts: Optional[pulumi.ResourceOptions] = None,
512
516
  change_tracking: Optional[pulumi.Input[bool]] = None,
513
517
  cluster_bies: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
514
- columns: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TableColumnArgs', 'TableColumnArgsDict']]]]] = None,
518
+ columns: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['TableColumnArgs']]]]] = None,
515
519
  comment: Optional[pulumi.Input[str]] = None,
516
520
  data_retention_time_in_days: Optional[pulumi.Input[int]] = None,
517
521
  database: Optional[pulumi.Input[str]] = None,
518
- fully_qualified_name: Optional[pulumi.Input[str]] = None,
519
522
  name: Optional[pulumi.Input[str]] = None,
520
523
  owner: Optional[pulumi.Input[str]] = None,
521
- primary_key: Optional[pulumi.Input[Union['TablePrimaryKeyArgs', 'TablePrimaryKeyArgsDict']]] = None,
524
+ primary_key: Optional[pulumi.Input[pulumi.InputType['TablePrimaryKeyArgs']]] = None,
525
+ qualified_name: Optional[pulumi.Input[str]] = None,
522
526
  schema: Optional[pulumi.Input[str]] = None,
523
- tags: Optional[pulumi.Input[Sequence[pulumi.Input[Union['TableTagArgs', 'TableTagArgsDict']]]]] = None) -> 'Table':
527
+ tags: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['TableTagArgs']]]]] = None) -> 'Table':
524
528
  """
525
529
  Get an existing Table resource's state with the given name, id, and optional extra
526
530
  properties used to qualify the lookup.
@@ -530,16 +534,16 @@ class Table(pulumi.CustomResource):
530
534
  :param pulumi.ResourceOptions opts: Options for the resource.
531
535
  :param pulumi.Input[bool] change_tracking: Specifies whether to enable change tracking on the table. Default false.
532
536
  :param pulumi.Input[Sequence[pulumi.Input[str]]] cluster_bies: A list of one or more table columns/expressions to be used as clustering key(s) for the table
533
- :param pulumi.Input[Sequence[pulumi.Input[Union['TableColumnArgs', 'TableColumnArgsDict']]]] columns: Definitions of a column to create in the table. Minimum one required.
537
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['TableColumnArgs']]]] columns: Definitions of a column to create in the table. Minimum one required.
534
538
  :param pulumi.Input[str] comment: Specifies a comment for the table.
535
539
  :param pulumi.Input[int] data_retention_time_in_days: Specifies the retention period for the table so that Time Travel actions (SELECT, CLONE, UNDROP) can be performed on historical data in the table. If you wish to inherit the parent schema setting then pass in the schema attribute to this argument or do not fill this parameter at all; the default value for this field is -1, which is a fallback to use Snowflake default - in this case the schema value
536
540
  :param pulumi.Input[str] database: The database in which to create the table.
537
- :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).
538
541
  :param pulumi.Input[str] name: Specifies the identifier for the table; must be unique for the database and schema in which the table is created.
539
542
  :param pulumi.Input[str] owner: Name of the role that owns the table.
540
- :param pulumi.Input[Union['TablePrimaryKeyArgs', 'TablePrimaryKeyArgsDict']] primary_key: Definitions of primary key constraint to create on table
543
+ :param pulumi.Input[pulumi.InputType['TablePrimaryKeyArgs']] primary_key: Definitions of primary key constraint to create on table
544
+ :param pulumi.Input[str] qualified_name: Qualified name of the table.
541
545
  :param pulumi.Input[str] schema: The schema in which to create the table.
542
- :param pulumi.Input[Sequence[pulumi.Input[Union['TableTagArgs', 'TableTagArgsDict']]]] tags: Definitions of a tag to associate with the resource.
546
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['TableTagArgs']]]] tags: Definitions of a tag to associate with the resource.
543
547
  """
544
548
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
545
549
 
@@ -551,10 +555,10 @@ class Table(pulumi.CustomResource):
551
555
  __props__.__dict__["comment"] = comment
552
556
  __props__.__dict__["data_retention_time_in_days"] = data_retention_time_in_days
553
557
  __props__.__dict__["database"] = database
554
- __props__.__dict__["fully_qualified_name"] = fully_qualified_name
555
558
  __props__.__dict__["name"] = name
556
559
  __props__.__dict__["owner"] = owner
557
560
  __props__.__dict__["primary_key"] = primary_key
561
+ __props__.__dict__["qualified_name"] = qualified_name
558
562
  __props__.__dict__["schema"] = schema
559
563
  __props__.__dict__["tags"] = tags
560
564
  return Table(resource_name, opts=opts, __props__=__props__)
@@ -607,14 +611,6 @@ class Table(pulumi.CustomResource):
607
611
  """
608
612
  return pulumi.get(self, "database")
609
613
 
610
- @property
611
- @pulumi.getter(name="fullyQualifiedName")
612
- def fully_qualified_name(self) -> pulumi.Output[str]:
613
- """
614
- Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
615
- """
616
- return pulumi.get(self, "fully_qualified_name")
617
-
618
614
  @property
619
615
  @pulumi.getter
620
616
  def name(self) -> pulumi.Output[str]:
@@ -640,6 +636,14 @@ class Table(pulumi.CustomResource):
640
636
  """
641
637
  return pulumi.get(self, "primary_key")
642
638
 
639
+ @property
640
+ @pulumi.getter(name="qualifiedName")
641
+ def qualified_name(self) -> pulumi.Output[str]:
642
+ """
643
+ Qualified name of the table.
644
+ """
645
+ return pulumi.get(self, "qualified_name")
646
+
643
647
  @property
644
648
  @pulumi.getter
645
649
  def schema(self) -> pulumi.Output[str]:
@@ -130,7 +130,13 @@ class TableColumnMaskingPolicyApplication(pulumi.CustomResource):
130
130
  table: Optional[pulumi.Input[str]] = None,
131
131
  __props__=None):
132
132
  """
133
- Create a TableColumnMaskingPolicyApplication resource with the given unique name, props, and options.
133
+ Applies a masking policy to a table column.
134
+
135
+ Only one masking policy may be applied per table column, hence only one `TableColumnMaskingPolicyApplication` resources may be present per table column.
136
+ Using two or more `TableColumnMaskingPolicyApplication` resources for the same table column will result in the last one overriding any previously applied masking policies and unresolvable diffs in pulumi preview.
137
+
138
+ When using this resource to manage a table column's masking policy make sure to ignore changes to the column's masking policy in the table definition, otherwise the two resources would conflict. See example below.
139
+
134
140
  :param str resource_name: The name of the resource.
135
141
  :param pulumi.ResourceOptions opts: Options for the resource.
136
142
  :param pulumi.Input[str] column: The column to apply the masking policy to.
@@ -144,7 +150,13 @@ class TableColumnMaskingPolicyApplication(pulumi.CustomResource):
144
150
  args: TableColumnMaskingPolicyApplicationArgs,
145
151
  opts: Optional[pulumi.ResourceOptions] = None):
146
152
  """
147
- Create a TableColumnMaskingPolicyApplication resource with the given unique name, props, and options.
153
+ Applies a masking policy to a table column.
154
+
155
+ Only one masking policy may be applied per table column, hence only one `TableColumnMaskingPolicyApplication` resources may be present per table column.
156
+ Using two or more `TableColumnMaskingPolicyApplication` resources for the same table column will result in the last one overriding any previously applied masking policies and unresolvable diffs in pulumi preview.
157
+
158
+ When using this resource to manage a table column's masking policy make sure to ignore changes to the column's masking policy in the table definition, otherwise the two resources would conflict. See example below.
159
+
148
160
  :param str resource_name: The name of the resource.
149
161
  :param TableColumnMaskingPolicyApplicationArgs args: The arguments to use to populate this resource's properties.
150
162
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -428,7 +428,7 @@ class TableConstraint(pulumi.CustomResource):
428
428
  deferrable: Optional[pulumi.Input[bool]] = None,
429
429
  enable: Optional[pulumi.Input[bool]] = None,
430
430
  enforced: Optional[pulumi.Input[bool]] = None,
431
- foreign_key_properties: Optional[pulumi.Input[Union['TableConstraintForeignKeyPropertiesArgs', 'TableConstraintForeignKeyPropertiesArgsDict']]] = None,
431
+ foreign_key_properties: Optional[pulumi.Input[pulumi.InputType['TableConstraintForeignKeyPropertiesArgs']]] = None,
432
432
  initially: Optional[pulumi.Input[str]] = None,
433
433
  name: Optional[pulumi.Input[str]] = None,
434
434
  rely: Optional[pulumi.Input[bool]] = None,
@@ -437,6 +437,82 @@ class TableConstraint(pulumi.CustomResource):
437
437
  validate: Optional[pulumi.Input[bool]] = None,
438
438
  __props__=None):
439
439
  """
440
+ ## Example Usage
441
+
442
+ ```python
443
+ import pulumi
444
+ import pulumi_snowflake as snowflake
445
+
446
+ d = snowflake.Database("d", name="some_db")
447
+ s = snowflake.Schema("s",
448
+ name="some_schema",
449
+ database=d.name)
450
+ t = snowflake.Table("t",
451
+ database=d.name,
452
+ schema=s.name,
453
+ name="some_table",
454
+ columns=[
455
+ snowflake.TableColumnArgs(
456
+ name="col1",
457
+ type="text",
458
+ nullable=False,
459
+ ),
460
+ snowflake.TableColumnArgs(
461
+ name="col2",
462
+ type="text",
463
+ nullable=False,
464
+ ),
465
+ snowflake.TableColumnArgs(
466
+ name="col3",
467
+ type="text",
468
+ nullable=False,
469
+ ),
470
+ ])
471
+ fk_t = snowflake.Table("fk_t",
472
+ database=d.name,
473
+ schema=s.name,
474
+ name="fk_table",
475
+ columns=[
476
+ snowflake.TableColumnArgs(
477
+ name="fk_col1",
478
+ type="text",
479
+ nullable=False,
480
+ ),
481
+ snowflake.TableColumnArgs(
482
+ name="fk_col2",
483
+ type="text",
484
+ nullable=False,
485
+ ),
486
+ ])
487
+ primary_key = snowflake.TableConstraint("primary_key",
488
+ name="myconstraint",
489
+ type="PRIMARY KEY",
490
+ table_id=t.qualified_name,
491
+ columns=["col1"],
492
+ comment="hello world")
493
+ foreign_key = snowflake.TableConstraint("foreign_key",
494
+ name="myconstraintfk",
495
+ type="FOREIGN KEY",
496
+ table_id=t.qualified_name,
497
+ columns=["col2"],
498
+ foreign_key_properties=snowflake.TableConstraintForeignKeyPropertiesArgs(
499
+ references=snowflake.TableConstraintForeignKeyPropertiesReferencesArgs(
500
+ table_id=fk_t.qualified_name,
501
+ columns=["fk_col1"],
502
+ ),
503
+ ),
504
+ enforced=False,
505
+ deferrable=False,
506
+ initially="IMMEDIATE",
507
+ comment="hello fk")
508
+ unique = snowflake.TableConstraint("unique",
509
+ name="unique",
510
+ type="UNIQUE",
511
+ table_id=t.qualified_name,
512
+ columns=["col3"],
513
+ comment="hello unique")
514
+ ```
515
+
440
516
  ## Import
441
517
 
442
518
  ```sh
@@ -450,7 +526,7 @@ class TableConstraint(pulumi.CustomResource):
450
526
  :param pulumi.Input[bool] deferrable: Whether the constraint is deferrable
451
527
  :param pulumi.Input[bool] enable: Specifies whether the constraint is enabled or disabled. These properties are provided for compatibility with Oracle.
452
528
  :param pulumi.Input[bool] enforced: Whether the constraint is enforced
453
- :param pulumi.Input[Union['TableConstraintForeignKeyPropertiesArgs', 'TableConstraintForeignKeyPropertiesArgsDict']] foreign_key_properties: Additional properties when type is set to foreign key. Not applicable for primary/unique keys
529
+ :param pulumi.Input[pulumi.InputType['TableConstraintForeignKeyPropertiesArgs']] foreign_key_properties: Additional properties when type is set to foreign key. Not applicable for primary/unique keys
454
530
  :param pulumi.Input[str] initially: Whether the constraint is initially deferred or immediate
455
531
  :param pulumi.Input[str] name: Name of constraint
456
532
  :param pulumi.Input[bool] rely: Specifies whether a constraint in NOVALIDATE mode is taken into account during query rewrite.
@@ -465,6 +541,82 @@ class TableConstraint(pulumi.CustomResource):
465
541
  args: TableConstraintArgs,
466
542
  opts: Optional[pulumi.ResourceOptions] = None):
467
543
  """
544
+ ## Example Usage
545
+
546
+ ```python
547
+ import pulumi
548
+ import pulumi_snowflake as snowflake
549
+
550
+ d = snowflake.Database("d", name="some_db")
551
+ s = snowflake.Schema("s",
552
+ name="some_schema",
553
+ database=d.name)
554
+ t = snowflake.Table("t",
555
+ database=d.name,
556
+ schema=s.name,
557
+ name="some_table",
558
+ columns=[
559
+ snowflake.TableColumnArgs(
560
+ name="col1",
561
+ type="text",
562
+ nullable=False,
563
+ ),
564
+ snowflake.TableColumnArgs(
565
+ name="col2",
566
+ type="text",
567
+ nullable=False,
568
+ ),
569
+ snowflake.TableColumnArgs(
570
+ name="col3",
571
+ type="text",
572
+ nullable=False,
573
+ ),
574
+ ])
575
+ fk_t = snowflake.Table("fk_t",
576
+ database=d.name,
577
+ schema=s.name,
578
+ name="fk_table",
579
+ columns=[
580
+ snowflake.TableColumnArgs(
581
+ name="fk_col1",
582
+ type="text",
583
+ nullable=False,
584
+ ),
585
+ snowflake.TableColumnArgs(
586
+ name="fk_col2",
587
+ type="text",
588
+ nullable=False,
589
+ ),
590
+ ])
591
+ primary_key = snowflake.TableConstraint("primary_key",
592
+ name="myconstraint",
593
+ type="PRIMARY KEY",
594
+ table_id=t.qualified_name,
595
+ columns=["col1"],
596
+ comment="hello world")
597
+ foreign_key = snowflake.TableConstraint("foreign_key",
598
+ name="myconstraintfk",
599
+ type="FOREIGN KEY",
600
+ table_id=t.qualified_name,
601
+ columns=["col2"],
602
+ foreign_key_properties=snowflake.TableConstraintForeignKeyPropertiesArgs(
603
+ references=snowflake.TableConstraintForeignKeyPropertiesReferencesArgs(
604
+ table_id=fk_t.qualified_name,
605
+ columns=["fk_col1"],
606
+ ),
607
+ ),
608
+ enforced=False,
609
+ deferrable=False,
610
+ initially="IMMEDIATE",
611
+ comment="hello fk")
612
+ unique = snowflake.TableConstraint("unique",
613
+ name="unique",
614
+ type="UNIQUE",
615
+ table_id=t.qualified_name,
616
+ columns=["col3"],
617
+ comment="hello unique")
618
+ ```
619
+
468
620
  ## Import
469
621
 
470
622
  ```sh
@@ -491,7 +643,7 @@ class TableConstraint(pulumi.CustomResource):
491
643
  deferrable: Optional[pulumi.Input[bool]] = None,
492
644
  enable: Optional[pulumi.Input[bool]] = None,
493
645
  enforced: Optional[pulumi.Input[bool]] = None,
494
- foreign_key_properties: Optional[pulumi.Input[Union['TableConstraintForeignKeyPropertiesArgs', 'TableConstraintForeignKeyPropertiesArgsDict']]] = None,
646
+ foreign_key_properties: Optional[pulumi.Input[pulumi.InputType['TableConstraintForeignKeyPropertiesArgs']]] = None,
495
647
  initially: Optional[pulumi.Input[str]] = None,
496
648
  name: Optional[pulumi.Input[str]] = None,
497
649
  rely: Optional[pulumi.Input[bool]] = None,
@@ -540,7 +692,7 @@ class TableConstraint(pulumi.CustomResource):
540
692
  deferrable: Optional[pulumi.Input[bool]] = None,
541
693
  enable: Optional[pulumi.Input[bool]] = None,
542
694
  enforced: Optional[pulumi.Input[bool]] = None,
543
- foreign_key_properties: Optional[pulumi.Input[Union['TableConstraintForeignKeyPropertiesArgs', 'TableConstraintForeignKeyPropertiesArgsDict']]] = None,
695
+ foreign_key_properties: Optional[pulumi.Input[pulumi.InputType['TableConstraintForeignKeyPropertiesArgs']]] = None,
544
696
  initially: Optional[pulumi.Input[str]] = None,
545
697
  name: Optional[pulumi.Input[str]] = None,
546
698
  rely: Optional[pulumi.Input[bool]] = None,
@@ -559,7 +711,7 @@ class TableConstraint(pulumi.CustomResource):
559
711
  :param pulumi.Input[bool] deferrable: Whether the constraint is deferrable
560
712
  :param pulumi.Input[bool] enable: Specifies whether the constraint is enabled or disabled. These properties are provided for compatibility with Oracle.
561
713
  :param pulumi.Input[bool] enforced: Whether the constraint is enforced
562
- :param pulumi.Input[Union['TableConstraintForeignKeyPropertiesArgs', 'TableConstraintForeignKeyPropertiesArgsDict']] foreign_key_properties: Additional properties when type is set to foreign key. Not applicable for primary/unique keys
714
+ :param pulumi.Input[pulumi.InputType['TableConstraintForeignKeyPropertiesArgs']] foreign_key_properties: Additional properties when type is set to foreign key. Not applicable for primary/unique keys
563
715
  :param pulumi.Input[str] initially: Whether the constraint is initially deferred or immediate
564
716
  :param pulumi.Input[str] name: Name of constraint
565
717
  :param pulumi.Input[bool] rely: Specifies whether a constraint in NOVALIDATE mode is taken into account during query rewrite.
pulumi_snowflake/tag.py CHANGED
@@ -103,7 +103,6 @@ class _TagState:
103
103
  allowed_values: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
104
104
  comment: Optional[pulumi.Input[str]] = None,
105
105
  database: Optional[pulumi.Input[str]] = None,
106
- fully_qualified_name: Optional[pulumi.Input[str]] = None,
107
106
  name: Optional[pulumi.Input[str]] = None,
108
107
  schema: Optional[pulumi.Input[str]] = None):
109
108
  """
@@ -111,7 +110,6 @@ class _TagState:
111
110
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_values: List of allowed values for the tag.
112
111
  :param pulumi.Input[str] comment: Specifies a comment for the tag.
113
112
  :param pulumi.Input[str] database: The database in which to create the tag.
114
- :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).
115
113
  :param pulumi.Input[str] name: Specifies the identifier for the tag; must be unique for the database in which the tag is created.
116
114
  :param pulumi.Input[str] schema: The schema in which to create the tag.
117
115
  """
@@ -121,8 +119,6 @@ class _TagState:
121
119
  pulumi.set(__self__, "comment", comment)
122
120
  if database is not None:
123
121
  pulumi.set(__self__, "database", database)
124
- if fully_qualified_name is not None:
125
- pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
126
122
  if name is not None:
127
123
  pulumi.set(__self__, "name", name)
128
124
  if schema is not None:
@@ -164,18 +160,6 @@ class _TagState:
164
160
  def database(self, value: Optional[pulumi.Input[str]]):
165
161
  pulumi.set(self, "database", value)
166
162
 
167
- @property
168
- @pulumi.getter(name="fullyQualifiedName")
169
- def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
170
- """
171
- Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
172
- """
173
- return pulumi.get(self, "fully_qualified_name")
174
-
175
- @fully_qualified_name.setter
176
- def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
177
- pulumi.set(self, "fully_qualified_name", value)
178
-
179
163
  @property
180
164
  @pulumi.getter
181
165
  def name(self) -> Optional[pulumi.Input[str]]:
@@ -213,6 +197,26 @@ class Tag(pulumi.CustomResource):
213
197
  schema: Optional[pulumi.Input[str]] = None,
214
198
  __props__=None):
215
199
  """
200
+ ## Example Usage
201
+
202
+ ```python
203
+ import pulumi
204
+ import pulumi_snowflake as snowflake
205
+
206
+ database = snowflake.Database("database", name="database")
207
+ schema = snowflake.Schema("schema",
208
+ name="schema",
209
+ database=database.name)
210
+ tag = snowflake.Tag("tag",
211
+ name="cost_center",
212
+ database=database.name,
213
+ schema=schema.name,
214
+ allowed_values=[
215
+ "finance",
216
+ "engineering",
217
+ ])
218
+ ```
219
+
216
220
  ## Import
217
221
 
218
222
  format is database name | schema name | tag name
@@ -236,6 +240,26 @@ class Tag(pulumi.CustomResource):
236
240
  args: TagArgs,
237
241
  opts: Optional[pulumi.ResourceOptions] = None):
238
242
  """
243
+ ## Example Usage
244
+
245
+ ```python
246
+ import pulumi
247
+ import pulumi_snowflake as snowflake
248
+
249
+ database = snowflake.Database("database", name="database")
250
+ schema = snowflake.Schema("schema",
251
+ name="schema",
252
+ database=database.name)
253
+ tag = snowflake.Tag("tag",
254
+ name="cost_center",
255
+ database=database.name,
256
+ schema=schema.name,
257
+ allowed_values=[
258
+ "finance",
259
+ "engineering",
260
+ ])
261
+ ```
262
+
239
263
  ## Import
240
264
 
241
265
  format is database name | schema name | tag name
@@ -282,7 +306,6 @@ class Tag(pulumi.CustomResource):
282
306
  if schema is None and not opts.urn:
283
307
  raise TypeError("Missing required property 'schema'")
284
308
  __props__.__dict__["schema"] = schema
285
- __props__.__dict__["fully_qualified_name"] = None
286
309
  super(Tag, __self__).__init__(
287
310
  'snowflake:index/tag:Tag',
288
311
  resource_name,
@@ -296,7 +319,6 @@ class Tag(pulumi.CustomResource):
296
319
  allowed_values: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
297
320
  comment: Optional[pulumi.Input[str]] = None,
298
321
  database: Optional[pulumi.Input[str]] = None,
299
- fully_qualified_name: Optional[pulumi.Input[str]] = None,
300
322
  name: Optional[pulumi.Input[str]] = None,
301
323
  schema: Optional[pulumi.Input[str]] = None) -> 'Tag':
302
324
  """
@@ -309,7 +331,6 @@ class Tag(pulumi.CustomResource):
309
331
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_values: List of allowed values for the tag.
310
332
  :param pulumi.Input[str] comment: Specifies a comment for the tag.
311
333
  :param pulumi.Input[str] database: The database in which to create the tag.
312
- :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).
313
334
  :param pulumi.Input[str] name: Specifies the identifier for the tag; must be unique for the database in which the tag is created.
314
335
  :param pulumi.Input[str] schema: The schema in which to create the tag.
315
336
  """
@@ -320,7 +341,6 @@ class Tag(pulumi.CustomResource):
320
341
  __props__.__dict__["allowed_values"] = allowed_values
321
342
  __props__.__dict__["comment"] = comment
322
343
  __props__.__dict__["database"] = database
323
- __props__.__dict__["fully_qualified_name"] = fully_qualified_name
324
344
  __props__.__dict__["name"] = name
325
345
  __props__.__dict__["schema"] = schema
326
346
  return Tag(resource_name, opts=opts, __props__=__props__)
@@ -349,14 +369,6 @@ class Tag(pulumi.CustomResource):
349
369
  """
350
370
  return pulumi.get(self, "database")
351
371
 
352
- @property
353
- @pulumi.getter(name="fullyQualifiedName")
354
- def fully_qualified_name(self) -> pulumi.Output[str]:
355
- """
356
- Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
357
- """
358
- return pulumi.get(self, "fully_qualified_name")
359
-
360
372
  @property
361
373
  @pulumi.getter
362
374
  def name(self) -> pulumi.Output[str]: