pulumi-snowflake 0.58.0a1726035035__py3-none-any.whl → 0.58.0a1726066221__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 (80) hide show
  1. pulumi_snowflake/_inputs.py +5859 -127
  2. pulumi_snowflake/account.py +28 -50
  3. pulumi_snowflake/account_parameter.py +0 -28
  4. pulumi_snowflake/account_password_policy_attachment.py +2 -30
  5. pulumi_snowflake/account_role.py +41 -36
  6. pulumi_snowflake/alert.py +28 -40
  7. pulumi_snowflake/api_authentication_integration_with_authorization_code_grant.py +35 -15
  8. pulumi_snowflake/api_authentication_integration_with_client_credentials.py +35 -15
  9. pulumi_snowflake/api_authentication_integration_with_jwt_bearer.py +35 -15
  10. pulumi_snowflake/api_integration.py +28 -54
  11. pulumi_snowflake/cortex_search_service.py +28 -76
  12. pulumi_snowflake/database.py +82 -15
  13. pulumi_snowflake/database_old.py +0 -72
  14. pulumi_snowflake/database_role.py +76 -42
  15. pulumi_snowflake/dynamic_table.py +28 -38
  16. pulumi_snowflake/email_notification_integration.py +28 -26
  17. pulumi_snowflake/external_function.py +28 -52
  18. pulumi_snowflake/external_oauth_integration.py +35 -15
  19. pulumi_snowflake/external_table.py +28 -48
  20. pulumi_snowflake/failover_group.py +28 -72
  21. pulumi_snowflake/file_format.py +28 -26
  22. pulumi_snowflake/function.py +28 -4
  23. pulumi_snowflake/get_database_roles.py +61 -38
  24. pulumi_snowflake/get_users.py +96 -33
  25. pulumi_snowflake/get_views.py +92 -53
  26. pulumi_snowflake/grant_account_role.py +0 -4
  27. pulumi_snowflake/grant_application_role.py +0 -4
  28. pulumi_snowflake/grant_database_role.py +0 -4
  29. pulumi_snowflake/grant_privileges_to_account_role.py +4 -4
  30. pulumi_snowflake/grant_privileges_to_database_role.py +6 -2
  31. pulumi_snowflake/grant_privileges_to_share.py +49 -2
  32. pulumi_snowflake/managed_account.py +28 -4
  33. pulumi_snowflake/masking_policy.py +28 -84
  34. pulumi_snowflake/materialized_view.py +28 -34
  35. pulumi_snowflake/network_policy.py +35 -15
  36. pulumi_snowflake/network_policy_attachment.py +0 -30
  37. pulumi_snowflake/network_rule.py +28 -66
  38. pulumi_snowflake/notification_integration.py +28 -34
  39. pulumi_snowflake/oauth_integration.py +0 -34
  40. pulumi_snowflake/oauth_integration_for_custom_clients.py +35 -101
  41. pulumi_snowflake/oauth_integration_for_partner_applications.py +35 -15
  42. pulumi_snowflake/object_parameter.py +0 -98
  43. pulumi_snowflake/outputs.py +11648 -3842
  44. pulumi_snowflake/password_policy.py +28 -28
  45. pulumi_snowflake/pipe.py +28 -4
  46. pulumi_snowflake/procedure.py +28 -4
  47. pulumi_snowflake/pulumi-plugin.json +1 -1
  48. pulumi_snowflake/resource_monitor.py +28 -48
  49. pulumi_snowflake/role.py +41 -36
  50. pulumi_snowflake/row_access_policy.py +28 -34
  51. pulumi_snowflake/saml2_integration.py +35 -15
  52. pulumi_snowflake/saml_integration.py +0 -34
  53. pulumi_snowflake/schema.py +39 -19
  54. pulumi_snowflake/scim_integration.py +35 -15
  55. pulumi_snowflake/secondary_database.py +35 -19
  56. pulumi_snowflake/sequence.py +4 -36
  57. pulumi_snowflake/session_parameter.py +0 -32
  58. pulumi_snowflake/share.py +28 -28
  59. pulumi_snowflake/shared_database.py +35 -15
  60. pulumi_snowflake/stage.py +28 -28
  61. pulumi_snowflake/storage_integration.py +28 -4
  62. pulumi_snowflake/stream.py +28 -4
  63. pulumi_snowflake/streamlit.py +36 -16
  64. pulumi_snowflake/table.py +28 -32
  65. pulumi_snowflake/table_column_masking_policy_application.py +2 -14
  66. pulumi_snowflake/table_constraint.py +0 -152
  67. pulumi_snowflake/tag.py +28 -40
  68. pulumi_snowflake/tag_association.py +0 -120
  69. pulumi_snowflake/tag_masking_policy_association.py +0 -4
  70. pulumi_snowflake/task.py +28 -92
  71. pulumi_snowflake/unsafe_execute.py +2 -20
  72. pulumi_snowflake/user.py +3341 -368
  73. pulumi_snowflake/user_password_policy_attachment.py +0 -46
  74. pulumi_snowflake/view.py +465 -185
  75. pulumi_snowflake/warehouse.py +35 -39
  76. {pulumi_snowflake-0.58.0a1726035035.dist-info → pulumi_snowflake-0.58.0a1726066221.dist-info}/METADATA +1 -1
  77. pulumi_snowflake-0.58.0a1726066221.dist-info/RECORD +129 -0
  78. pulumi_snowflake-0.58.0a1726035035.dist-info/RECORD +0 -129
  79. {pulumi_snowflake-0.58.0a1726035035.dist-info → pulumi_snowflake-0.58.0a1726066221.dist-info}/WHEEL +0 -0
  80. {pulumi_snowflake-0.58.0a1726035035.dist-info → pulumi_snowflake-0.58.0a1726066221.dist-info}/top_level.txt +0 -0
@@ -614,6 +614,7 @@ class _FileFormatState:
614
614
  field_optionally_enclosed_by: Optional[pulumi.Input[str]] = None,
615
615
  file_extension: Optional[pulumi.Input[str]] = None,
616
616
  format_type: Optional[pulumi.Input[str]] = None,
617
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
617
618
  ignore_utf8_errors: Optional[pulumi.Input[bool]] = None,
618
619
  name: Optional[pulumi.Input[str]] = None,
619
620
  null_ifs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
@@ -652,6 +653,7 @@ class _FileFormatState:
652
653
  :param pulumi.Input[str] field_optionally_enclosed_by: Character used to enclose strings.
653
654
  :param pulumi.Input[str] file_extension: Specifies the extension for files unloaded to a stage.
654
655
  :param pulumi.Input[str] format_type: Specifies the format of the input files (for data loading) or output files (for data unloading).
656
+ :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).
655
657
  :param pulumi.Input[bool] ignore_utf8_errors: Boolean that specifies whether UTF-8 encoding errors produce error conditions.
656
658
  :param pulumi.Input[str] name: Specifies the identifier for the file format; must be unique for the database and schema in which the file format is created.
657
659
  :param pulumi.Input[Sequence[pulumi.Input[str]]] null_ifs: String used to convert to and from SQL NULL.
@@ -708,6 +710,8 @@ class _FileFormatState:
708
710
  pulumi.set(__self__, "file_extension", file_extension)
709
711
  if format_type is not None:
710
712
  pulumi.set(__self__, "format_type", format_type)
713
+ if fully_qualified_name is not None:
714
+ pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
711
715
  if ignore_utf8_errors is not None:
712
716
  pulumi.set(__self__, "ignore_utf8_errors", ignore_utf8_errors)
713
717
  if name is not None:
@@ -971,6 +975,18 @@ class _FileFormatState:
971
975
  def format_type(self, value: Optional[pulumi.Input[str]]):
972
976
  pulumi.set(self, "format_type", value)
973
977
 
978
+ @property
979
+ @pulumi.getter(name="fullyQualifiedName")
980
+ def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
981
+ """
982
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
983
+ """
984
+ return pulumi.get(self, "fully_qualified_name")
985
+
986
+ @fully_qualified_name.setter
987
+ def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
988
+ pulumi.set(self, "fully_qualified_name", value)
989
+
974
990
  @property
975
991
  @pulumi.getter(name="ignoreUtf8Errors")
976
992
  def ignore_utf8_errors(self) -> Optional[pulumi.Input[bool]]:
@@ -1219,19 +1235,6 @@ class FileFormat(pulumi.CustomResource):
1219
1235
  trim_space: Optional[pulumi.Input[bool]] = None,
1220
1236
  __props__=None):
1221
1237
  """
1222
- ## Example Usage
1223
-
1224
- ```python
1225
- import pulumi
1226
- import pulumi_snowflake as snowflake
1227
-
1228
- example_file_format = snowflake.FileFormat("example_file_format",
1229
- name="EXAMPLE_FILE_FORMAT",
1230
- database="EXAMPLE_DB",
1231
- schema="EXAMPLE_SCHEMA",
1232
- format_type="CSV")
1233
- ```
1234
-
1235
1238
  ## Import
1236
1239
 
1237
1240
  format is database name | schema name | file format name
@@ -1286,19 +1289,6 @@ class FileFormat(pulumi.CustomResource):
1286
1289
  args: FileFormatArgs,
1287
1290
  opts: Optional[pulumi.ResourceOptions] = None):
1288
1291
  """
1289
- ## Example Usage
1290
-
1291
- ```python
1292
- import pulumi
1293
- import pulumi_snowflake as snowflake
1294
-
1295
- example_file_format = snowflake.FileFormat("example_file_format",
1296
- name="EXAMPLE_FILE_FORMAT",
1297
- database="EXAMPLE_DB",
1298
- schema="EXAMPLE_SCHEMA",
1299
- format_type="CSV")
1300
- ```
1301
-
1302
1292
  ## Import
1303
1293
 
1304
1294
  format is database name | schema name | file format name
@@ -1409,6 +1399,7 @@ class FileFormat(pulumi.CustomResource):
1409
1399
  __props__.__dict__["time_format"] = time_format
1410
1400
  __props__.__dict__["timestamp_format"] = timestamp_format
1411
1401
  __props__.__dict__["trim_space"] = trim_space
1402
+ __props__.__dict__["fully_qualified_name"] = None
1412
1403
  super(FileFormat, __self__).__init__(
1413
1404
  'snowflake:index/fileFormat:FileFormat',
1414
1405
  resource_name,
@@ -1438,6 +1429,7 @@ class FileFormat(pulumi.CustomResource):
1438
1429
  field_optionally_enclosed_by: Optional[pulumi.Input[str]] = None,
1439
1430
  file_extension: Optional[pulumi.Input[str]] = None,
1440
1431
  format_type: Optional[pulumi.Input[str]] = None,
1432
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
1441
1433
  ignore_utf8_errors: Optional[pulumi.Input[bool]] = None,
1442
1434
  name: Optional[pulumi.Input[str]] = None,
1443
1435
  null_ifs: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
@@ -1481,6 +1473,7 @@ class FileFormat(pulumi.CustomResource):
1481
1473
  :param pulumi.Input[str] field_optionally_enclosed_by: Character used to enclose strings.
1482
1474
  :param pulumi.Input[str] file_extension: Specifies the extension for files unloaded to a stage.
1483
1475
  :param pulumi.Input[str] format_type: Specifies the format of the input files (for data loading) or output files (for data unloading).
1476
+ :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).
1484
1477
  :param pulumi.Input[bool] ignore_utf8_errors: Boolean that specifies whether UTF-8 encoding errors produce error conditions.
1485
1478
  :param pulumi.Input[str] name: Specifies the identifier for the file format; must be unique for the database and schema in which the file format is created.
1486
1479
  :param pulumi.Input[Sequence[pulumi.Input[str]]] null_ifs: String used to convert to and from SQL NULL.
@@ -1522,6 +1515,7 @@ class FileFormat(pulumi.CustomResource):
1522
1515
  __props__.__dict__["field_optionally_enclosed_by"] = field_optionally_enclosed_by
1523
1516
  __props__.__dict__["file_extension"] = file_extension
1524
1517
  __props__.__dict__["format_type"] = format_type
1518
+ __props__.__dict__["fully_qualified_name"] = fully_qualified_name
1525
1519
  __props__.__dict__["ignore_utf8_errors"] = ignore_utf8_errors
1526
1520
  __props__.__dict__["name"] = name
1527
1521
  __props__.__dict__["null_ifs"] = null_ifs
@@ -1693,6 +1687,14 @@ class FileFormat(pulumi.CustomResource):
1693
1687
  """
1694
1688
  return pulumi.get(self, "format_type")
1695
1689
 
1690
+ @property
1691
+ @pulumi.getter(name="fullyQualifiedName")
1692
+ def fully_qualified_name(self) -> pulumi.Output[str]:
1693
+ """
1694
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
1695
+ """
1696
+ return pulumi.get(self, "fully_qualified_name")
1697
+
1696
1698
  @property
1697
1699
  @pulumi.getter(name="ignoreUtf8Errors")
1698
1700
  def ignore_utf8_errors(self) -> pulumi.Output[Optional[bool]]:
@@ -279,6 +279,7 @@ class _FunctionState:
279
279
  arguments: Optional[pulumi.Input[Sequence[pulumi.Input['FunctionArgumentArgs']]]] = None,
280
280
  comment: Optional[pulumi.Input[str]] = None,
281
281
  database: Optional[pulumi.Input[str]] = None,
282
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
282
283
  handler: Optional[pulumi.Input[str]] = None,
283
284
  imports: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
284
285
  is_secure: Optional[pulumi.Input[bool]] = None,
@@ -297,6 +298,7 @@ class _FunctionState:
297
298
  :param pulumi.Input[Sequence[pulumi.Input['FunctionArgumentArgs']]] arguments: List of the arguments for the function
298
299
  :param pulumi.Input[str] comment: Specifies a comment for the function.
299
300
  :param pulumi.Input[str] database: The database in which to create the function. Don't use the | character.
301
+ :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).
300
302
  :param pulumi.Input[str] handler: The handler method for Java / Python function.
301
303
  :param pulumi.Input[Sequence[pulumi.Input[str]]] imports: Imports for Java / Python functions. For Java this a list of jar files, for Python this is a list of Python files.
302
304
  :param pulumi.Input[bool] is_secure: Specifies that the function is secure.
@@ -317,6 +319,8 @@ class _FunctionState:
317
319
  pulumi.set(__self__, "comment", comment)
318
320
  if database is not None:
319
321
  pulumi.set(__self__, "database", database)
322
+ if fully_qualified_name is not None:
323
+ pulumi.set(__self__, "fully_qualified_name", fully_qualified_name)
320
324
  if handler is not None:
321
325
  pulumi.set(__self__, "handler", handler)
322
326
  if imports is not None:
@@ -380,6 +384,18 @@ class _FunctionState:
380
384
  def database(self, value: Optional[pulumi.Input[str]]):
381
385
  pulumi.set(self, "database", value)
382
386
 
387
+ @property
388
+ @pulumi.getter(name="fullyQualifiedName")
389
+ def fully_qualified_name(self) -> Optional[pulumi.Input[str]]:
390
+ """
391
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
392
+ """
393
+ return pulumi.get(self, "fully_qualified_name")
394
+
395
+ @fully_qualified_name.setter
396
+ def fully_qualified_name(self, value: Optional[pulumi.Input[str]]):
397
+ pulumi.set(self, "fully_qualified_name", value)
398
+
383
399
  @property
384
400
  @pulumi.getter
385
401
  def handler(self) -> Optional[pulumi.Input[str]]:
@@ -560,8 +576,6 @@ class Function(pulumi.CustomResource):
560
576
  target_path: Optional[pulumi.Input[str]] = None,
561
577
  __props__=None):
562
578
  """
563
- ## Example Usage
564
-
565
579
  ## Import
566
580
 
567
581
  format is <database_name>.<schema_name>.<function_name>(<arg types, separated with ','>)
@@ -596,8 +610,6 @@ class Function(pulumi.CustomResource):
596
610
  args: FunctionArgs,
597
611
  opts: Optional[pulumi.ResourceOptions] = None):
598
612
  """
599
- ## Example Usage
600
-
601
613
  ## Import
602
614
 
603
615
  format is <database_name>.<schema_name>.<function_name>(<arg types, separated with ','>)
@@ -670,6 +682,7 @@ class Function(pulumi.CustomResource):
670
682
  raise TypeError("Missing required property 'statement'")
671
683
  __props__.__dict__["statement"] = statement
672
684
  __props__.__dict__["target_path"] = target_path
685
+ __props__.__dict__["fully_qualified_name"] = None
673
686
  super(Function, __self__).__init__(
674
687
  'snowflake:index/function:Function',
675
688
  resource_name,
@@ -683,6 +696,7 @@ class Function(pulumi.CustomResource):
683
696
  arguments: Optional[pulumi.Input[Sequence[pulumi.Input[Union['FunctionArgumentArgs', 'FunctionArgumentArgsDict']]]]] = None,
684
697
  comment: Optional[pulumi.Input[str]] = None,
685
698
  database: Optional[pulumi.Input[str]] = None,
699
+ fully_qualified_name: Optional[pulumi.Input[str]] = None,
686
700
  handler: Optional[pulumi.Input[str]] = None,
687
701
  imports: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
688
702
  is_secure: Optional[pulumi.Input[bool]] = None,
@@ -706,6 +720,7 @@ class Function(pulumi.CustomResource):
706
720
  :param pulumi.Input[Sequence[pulumi.Input[Union['FunctionArgumentArgs', 'FunctionArgumentArgsDict']]]] arguments: List of the arguments for the function
707
721
  :param pulumi.Input[str] comment: Specifies a comment for the function.
708
722
  :param pulumi.Input[str] database: The database in which to create the function. Don't use the | character.
723
+ :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).
709
724
  :param pulumi.Input[str] handler: The handler method for Java / Python function.
710
725
  :param pulumi.Input[Sequence[pulumi.Input[str]]] imports: Imports for Java / Python functions. For Java this a list of jar files, for Python this is a list of Python files.
711
726
  :param pulumi.Input[bool] is_secure: Specifies that the function is secure.
@@ -727,6 +742,7 @@ class Function(pulumi.CustomResource):
727
742
  __props__.__dict__["arguments"] = arguments
728
743
  __props__.__dict__["comment"] = comment
729
744
  __props__.__dict__["database"] = database
745
+ __props__.__dict__["fully_qualified_name"] = fully_qualified_name
730
746
  __props__.__dict__["handler"] = handler
731
747
  __props__.__dict__["imports"] = imports
732
748
  __props__.__dict__["is_secure"] = is_secure
@@ -766,6 +782,14 @@ class Function(pulumi.CustomResource):
766
782
  """
767
783
  return pulumi.get(self, "database")
768
784
 
785
+ @property
786
+ @pulumi.getter(name="fullyQualifiedName")
787
+ def fully_qualified_name(self) -> pulumi.Output[str]:
788
+ """
789
+ Fully qualified name of the resource. For more information, see [object name resolution](https://docs.snowflake.com/en/sql-reference/name-resolution).
790
+ """
791
+ return pulumi.get(self, "fully_qualified_name")
792
+
769
793
  @property
770
794
  @pulumi.getter
771
795
  def handler(self) -> pulumi.Output[Optional[str]]:
@@ -9,6 +9,7 @@ import pulumi.runtime
9
9
  from typing import Any, Mapping, Optional, Sequence, Union, overload
10
10
  from . import _utilities
11
11
  from . import outputs
12
+ from ._inputs import *
12
13
 
13
14
  __all__ = [
14
15
  'GetDatabaseRolesResult',
@@ -22,30 +23,28 @@ class GetDatabaseRolesResult:
22
23
  """
23
24
  A collection of values returned by getDatabaseRoles.
24
25
  """
25
- def __init__(__self__, database=None, database_roles=None, id=None):
26
- if database and not isinstance(database, str):
27
- raise TypeError("Expected argument 'database' to be a str")
28
- pulumi.set(__self__, "database", database)
26
+ def __init__(__self__, database_roles=None, id=None, in_database=None, like=None, limit=None):
29
27
  if database_roles and not isinstance(database_roles, list):
30
28
  raise TypeError("Expected argument 'database_roles' to be a list")
31
29
  pulumi.set(__self__, "database_roles", database_roles)
32
30
  if id and not isinstance(id, str):
33
31
  raise TypeError("Expected argument 'id' to be a str")
34
32
  pulumi.set(__self__, "id", id)
35
-
36
- @property
37
- @pulumi.getter
38
- def database(self) -> str:
39
- """
40
- The database from which to return the database roles from.
41
- """
42
- return pulumi.get(self, "database")
33
+ if in_database and not isinstance(in_database, str):
34
+ raise TypeError("Expected argument 'in_database' to be a str")
35
+ pulumi.set(__self__, "in_database", in_database)
36
+ if like and not isinstance(like, str):
37
+ raise TypeError("Expected argument 'like' to be a str")
38
+ pulumi.set(__self__, "like", like)
39
+ if limit and not isinstance(limit, dict):
40
+ raise TypeError("Expected argument 'limit' to be a dict")
41
+ pulumi.set(__self__, "limit", limit)
43
42
 
44
43
  @property
45
44
  @pulumi.getter(name="databaseRoles")
46
45
  def database_roles(self) -> Sequence['outputs.GetDatabaseRolesDatabaseRoleResult']:
47
46
  """
48
- Lists all the database roles in a specified database.
47
+ Holds the aggregated output of all database role details queries.
49
48
  """
50
49
  return pulumi.get(self, "database_roles")
51
50
 
@@ -57,6 +56,30 @@ class GetDatabaseRolesResult:
57
56
  """
58
57
  return pulumi.get(self, "id")
59
58
 
59
+ @property
60
+ @pulumi.getter(name="inDatabase")
61
+ def in_database(self) -> str:
62
+ """
63
+ The database from which to return the database roles from.
64
+ """
65
+ return pulumi.get(self, "in_database")
66
+
67
+ @property
68
+ @pulumi.getter
69
+ def like(self) -> Optional[str]:
70
+ """
71
+ Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
72
+ """
73
+ return pulumi.get(self, "like")
74
+
75
+ @property
76
+ @pulumi.getter
77
+ def limit(self) -> Optional['outputs.GetDatabaseRolesLimitResult']:
78
+ """
79
+ Limits the number of rows returned. If the `limit.from` is set, then the limit wll start from the first element matched by the expression. The expression is only used to match with the first element, later on the elements are not matched by the prefix, but you can enforce a certain pattern with `starts_with` or `like`.
80
+ """
81
+ return pulumi.get(self, "limit")
82
+
60
83
 
61
84
  class AwaitableGetDatabaseRolesResult(GetDatabaseRolesResult):
62
85
  # pylint: disable=using-constant-test
@@ -64,51 +87,51 @@ class AwaitableGetDatabaseRolesResult(GetDatabaseRolesResult):
64
87
  if False:
65
88
  yield self
66
89
  return GetDatabaseRolesResult(
67
- database=self.database,
68
90
  database_roles=self.database_roles,
69
- id=self.id)
91
+ id=self.id,
92
+ in_database=self.in_database,
93
+ like=self.like,
94
+ limit=self.limit)
70
95
 
71
96
 
72
- def get_database_roles(database: Optional[str] = None,
97
+ def get_database_roles(in_database: Optional[str] = None,
98
+ like: Optional[str] = None,
99
+ limit: Optional[Union['GetDatabaseRolesLimitArgs', 'GetDatabaseRolesLimitArgsDict']] = None,
73
100
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetDatabaseRolesResult:
74
101
  """
75
- ## Example Usage
76
-
77
- ```python
78
- import pulumi
79
- import pulumi_snowflake as snowflake
102
+ !> **V1 release candidate** This data source was reworked and is a release candidate for the V1. We do not expect significant changes in it before the V1. We will welcome any feedback and adjust the data source if needed. Any errors reported will be resolved with a higher priority. We encourage checking this data source out before the V1 release. Please follow the migration guide to use it.
80
103
 
81
- db_roles = snowflake.get_database_roles(database="MYDB")
82
- ```
83
104
 
84
-
85
- :param str database: The database from which to return the database roles from.
105
+ :param str in_database: The database from which to return the database roles from.
106
+ :param str like: Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
107
+ :param Union['GetDatabaseRolesLimitArgs', 'GetDatabaseRolesLimitArgsDict'] limit: Limits the number of rows returned. If the `limit.from` is set, then the limit wll start from the first element matched by the expression. The expression is only used to match with the first element, later on the elements are not matched by the prefix, but you can enforce a certain pattern with `starts_with` or `like`.
86
108
  """
87
109
  __args__ = dict()
88
- __args__['database'] = database
110
+ __args__['inDatabase'] = in_database
111
+ __args__['like'] = like
112
+ __args__['limit'] = limit
89
113
  opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
90
114
  __ret__ = pulumi.runtime.invoke('snowflake:index/getDatabaseRoles:getDatabaseRoles', __args__, opts=opts, typ=GetDatabaseRolesResult).value
91
115
 
92
116
  return AwaitableGetDatabaseRolesResult(
93
- database=pulumi.get(__ret__, 'database'),
94
117
  database_roles=pulumi.get(__ret__, 'database_roles'),
95
- id=pulumi.get(__ret__, 'id'))
118
+ id=pulumi.get(__ret__, 'id'),
119
+ in_database=pulumi.get(__ret__, 'in_database'),
120
+ like=pulumi.get(__ret__, 'like'),
121
+ limit=pulumi.get(__ret__, 'limit'))
96
122
 
97
123
 
98
124
  @_utilities.lift_output_func(get_database_roles)
99
- def get_database_roles_output(database: Optional[pulumi.Input[str]] = None,
125
+ def get_database_roles_output(in_database: Optional[pulumi.Input[str]] = None,
126
+ like: Optional[pulumi.Input[Optional[str]]] = None,
127
+ limit: Optional[pulumi.Input[Optional[Union['GetDatabaseRolesLimitArgs', 'GetDatabaseRolesLimitArgsDict']]]] = None,
100
128
  opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetDatabaseRolesResult]:
101
129
  """
102
- ## Example Usage
103
-
104
- ```python
105
- import pulumi
106
- import pulumi_snowflake as snowflake
107
-
108
- db_roles = snowflake.get_database_roles(database="MYDB")
109
- ```
130
+ !> **V1 release candidate** This data source was reworked and is a release candidate for the V1. We do not expect significant changes in it before the V1. We will welcome any feedback and adjust the data source if needed. Any errors reported will be resolved with a higher priority. We encourage checking this data source out before the V1 release. Please follow the migration guide to use it.
110
131
 
111
132
 
112
- :param str database: The database from which to return the database roles from.
133
+ :param str in_database: The database from which to return the database roles from.
134
+ :param str like: Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
135
+ :param Union['GetDatabaseRolesLimitArgs', 'GetDatabaseRolesLimitArgsDict'] limit: Limits the number of rows returned. If the `limit.from` is set, then the limit wll start from the first element matched by the expression. The expression is only used to match with the first element, later on the elements are not matched by the prefix, but you can enforce a certain pattern with `starts_with` or `like`.
113
136
  """
114
137
  ...
@@ -9,6 +9,7 @@ import pulumi.runtime
9
9
  from typing import Any, Mapping, Optional, Sequence, Union, overload
10
10
  from . import _utilities
11
11
  from . import outputs
12
+ from ._inputs import *
12
13
 
13
14
  __all__ = [
14
15
  'GetUsersResult',
@@ -22,16 +23,28 @@ class GetUsersResult:
22
23
  """
23
24
  A collection of values returned by getUsers.
24
25
  """
25
- def __init__(__self__, id=None, pattern=None, users=None):
26
+ def __init__(__self__, id=None, like=None, limit=None, starts_with=None, users=None, with_describe=None, with_parameters=None):
26
27
  if id and not isinstance(id, str):
27
28
  raise TypeError("Expected argument 'id' to be a str")
28
29
  pulumi.set(__self__, "id", id)
29
- if pattern and not isinstance(pattern, str):
30
- raise TypeError("Expected argument 'pattern' to be a str")
31
- pulumi.set(__self__, "pattern", pattern)
30
+ if like and not isinstance(like, str):
31
+ raise TypeError("Expected argument 'like' to be a str")
32
+ pulumi.set(__self__, "like", like)
33
+ if limit and not isinstance(limit, dict):
34
+ raise TypeError("Expected argument 'limit' to be a dict")
35
+ pulumi.set(__self__, "limit", limit)
36
+ if starts_with and not isinstance(starts_with, str):
37
+ raise TypeError("Expected argument 'starts_with' to be a str")
38
+ pulumi.set(__self__, "starts_with", starts_with)
32
39
  if users and not isinstance(users, list):
33
40
  raise TypeError("Expected argument 'users' to be a list")
34
41
  pulumi.set(__self__, "users", users)
42
+ if with_describe and not isinstance(with_describe, bool):
43
+ raise TypeError("Expected argument 'with_describe' to be a bool")
44
+ pulumi.set(__self__, "with_describe", with_describe)
45
+ if with_parameters and not isinstance(with_parameters, bool):
46
+ raise TypeError("Expected argument 'with_parameters' to be a bool")
47
+ pulumi.set(__self__, "with_parameters", with_parameters)
35
48
 
36
49
  @property
37
50
  @pulumi.getter
@@ -43,20 +56,52 @@ class GetUsersResult:
43
56
 
44
57
  @property
45
58
  @pulumi.getter
46
- def pattern(self) -> str:
59
+ def like(self) -> Optional[str]:
47
60
  """
48
- Users pattern for which to return metadata. Please refer to LIKE keyword from snowflake documentation : https://docs.snowflake.com/en/sql-reference/sql/show-users.html#parameters
61
+ Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
49
62
  """
50
- return pulumi.get(self, "pattern")
63
+ return pulumi.get(self, "like")
64
+
65
+ @property
66
+ @pulumi.getter
67
+ def limit(self) -> Optional['outputs.GetUsersLimitResult']:
68
+ """
69
+ Limits the number of rows returned. If the `limit.from` is set, then the limit wll start from the first element matched by the expression. The expression is only used to match with the first element, later on the elements are not matched by the prefix, but you can enforce a certain pattern with `starts_with` or `like`.
70
+ """
71
+ return pulumi.get(self, "limit")
72
+
73
+ @property
74
+ @pulumi.getter(name="startsWith")
75
+ def starts_with(self) -> Optional[str]:
76
+ """
77
+ Filters the output with **case-sensitive** characters indicating the beginning of the object name.
78
+ """
79
+ return pulumi.get(self, "starts_with")
51
80
 
52
81
  @property
53
82
  @pulumi.getter
54
83
  def users(self) -> Sequence['outputs.GetUsersUserResult']:
55
84
  """
56
- The users in the database
85
+ Holds the aggregated output of all user details queries.
57
86
  """
58
87
  return pulumi.get(self, "users")
59
88
 
89
+ @property
90
+ @pulumi.getter(name="withDescribe")
91
+ def with_describe(self) -> Optional[bool]:
92
+ """
93
+ Runs DESC USER for each user returned by SHOW USERS. The output of describe is saved to the description field. By default this value is set to true.
94
+ """
95
+ return pulumi.get(self, "with_describe")
96
+
97
+ @property
98
+ @pulumi.getter(name="withParameters")
99
+ def with_parameters(self) -> Optional[bool]:
100
+ """
101
+ Runs SHOW PARAMETERS FOR USER for each user returned by SHOW USERS. The output of describe is saved to the parameters field as a map. By default this value is set to true.
102
+ """
103
+ return pulumi.get(self, "with_parameters")
104
+
60
105
 
61
106
  class AwaitableGetUsersResult(GetUsersResult):
62
107
  # pylint: disable=using-constant-test
@@ -65,50 +110,68 @@ class AwaitableGetUsersResult(GetUsersResult):
65
110
  yield self
66
111
  return GetUsersResult(
67
112
  id=self.id,
68
- pattern=self.pattern,
69
- users=self.users)
70
-
71
-
72
- def get_users(pattern: Optional[str] = None,
113
+ like=self.like,
114
+ limit=self.limit,
115
+ starts_with=self.starts_with,
116
+ users=self.users,
117
+ with_describe=self.with_describe,
118
+ with_parameters=self.with_parameters)
119
+
120
+
121
+ def get_users(like: Optional[str] = None,
122
+ limit: Optional[Union['GetUsersLimitArgs', 'GetUsersLimitArgsDict']] = None,
123
+ starts_with: Optional[str] = None,
124
+ with_describe: Optional[bool] = None,
125
+ with_parameters: Optional[bool] = None,
73
126
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetUsersResult:
74
127
  """
75
- ## Example Usage
128
+ !> **V1 release candidate** This data source was reworked and is a release candidate for the V1. We do not expect significant changes in it before the V1. We will welcome any feedback and adjust the data source if needed. Any errors reported will be resolved with a higher priority. We encourage checking this data source out before the V1 release. Please follow the migration guide to use it.
76
129
 
77
- ```python
78
- import pulumi
79
- import pulumi_snowflake as snowflake
130
+ Datasource used to get details of filtered users. Filtering is aligned with the current possibilities for [SHOW USERS](https://docs.snowflake.com/en/sql-reference/sql/show-users) query. The results of SHOW, DESCRIBE, and SHOW PARAMETERS IN are encapsulated in one output collection. Important note is that when querying users you don't have permissions to, the querying options are limited. You won't get almost any field in `show_output` (only empty or default values), the DESCRIBE command cannot be called, so you have to set `with_describe = false`. Only `parameters` output is not affected by the lack of privileges.
80
131
 
81
- current = snowflake.get_users(pattern="user1")
82
- ```
83
132
 
84
-
85
- :param str pattern: Users pattern for which to return metadata. Please refer to LIKE keyword from snowflake documentation : https://docs.snowflake.com/en/sql-reference/sql/show-users.html#parameters
133
+ :param str like: Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
134
+ :param Union['GetUsersLimitArgs', 'GetUsersLimitArgsDict'] limit: Limits the number of rows returned. If the `limit.from` is set, then the limit wll start from the first element matched by the expression. The expression is only used to match with the first element, later on the elements are not matched by the prefix, but you can enforce a certain pattern with `starts_with` or `like`.
135
+ :param str starts_with: Filters the output with **case-sensitive** characters indicating the beginning of the object name.
136
+ :param bool with_describe: Runs DESC USER for each user returned by SHOW USERS. The output of describe is saved to the description field. By default this value is set to true.
137
+ :param bool with_parameters: Runs SHOW PARAMETERS FOR USER for each user returned by SHOW USERS. The output of describe is saved to the parameters field as a map. By default this value is set to true.
86
138
  """
87
139
  __args__ = dict()
88
- __args__['pattern'] = pattern
140
+ __args__['like'] = like
141
+ __args__['limit'] = limit
142
+ __args__['startsWith'] = starts_with
143
+ __args__['withDescribe'] = with_describe
144
+ __args__['withParameters'] = with_parameters
89
145
  opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
90
146
  __ret__ = pulumi.runtime.invoke('snowflake:index/getUsers:getUsers', __args__, opts=opts, typ=GetUsersResult).value
91
147
 
92
148
  return AwaitableGetUsersResult(
93
149
  id=pulumi.get(__ret__, 'id'),
94
- pattern=pulumi.get(__ret__, 'pattern'),
95
- users=pulumi.get(__ret__, 'users'))
150
+ like=pulumi.get(__ret__, 'like'),
151
+ limit=pulumi.get(__ret__, 'limit'),
152
+ starts_with=pulumi.get(__ret__, 'starts_with'),
153
+ users=pulumi.get(__ret__, 'users'),
154
+ with_describe=pulumi.get(__ret__, 'with_describe'),
155
+ with_parameters=pulumi.get(__ret__, 'with_parameters'))
96
156
 
97
157
 
98
158
  @_utilities.lift_output_func(get_users)
99
- def get_users_output(pattern: Optional[pulumi.Input[str]] = None,
159
+ def get_users_output(like: Optional[pulumi.Input[Optional[str]]] = None,
160
+ limit: Optional[pulumi.Input[Optional[Union['GetUsersLimitArgs', 'GetUsersLimitArgsDict']]]] = None,
161
+ starts_with: Optional[pulumi.Input[Optional[str]]] = None,
162
+ with_describe: Optional[pulumi.Input[Optional[bool]]] = None,
163
+ with_parameters: Optional[pulumi.Input[Optional[bool]]] = None,
100
164
  opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetUsersResult]:
101
165
  """
102
- ## Example Usage
103
-
104
- ```python
105
- import pulumi
106
- import pulumi_snowflake as snowflake
166
+ !> **V1 release candidate** This data source was reworked and is a release candidate for the V1. We do not expect significant changes in it before the V1. We will welcome any feedback and adjust the data source if needed. Any errors reported will be resolved with a higher priority. We encourage checking this data source out before the V1 release. Please follow the migration guide to use it.
107
167
 
108
- current = snowflake.get_users(pattern="user1")
109
- ```
168
+ Datasource used to get details of filtered users. Filtering is aligned with the current possibilities for [SHOW USERS](https://docs.snowflake.com/en/sql-reference/sql/show-users) query. The results of SHOW, DESCRIBE, and SHOW PARAMETERS IN are encapsulated in one output collection. Important note is that when querying users you don't have permissions to, the querying options are limited. You won't get almost any field in `show_output` (only empty or default values), the DESCRIBE command cannot be called, so you have to set `with_describe = false`. Only `parameters` output is not affected by the lack of privileges.
110
169
 
111
170
 
112
- :param str pattern: Users pattern for which to return metadata. Please refer to LIKE keyword from snowflake documentation : https://docs.snowflake.com/en/sql-reference/sql/show-users.html#parameters
171
+ :param str like: Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
172
+ :param Union['GetUsersLimitArgs', 'GetUsersLimitArgsDict'] limit: Limits the number of rows returned. If the `limit.from` is set, then the limit wll start from the first element matched by the expression. The expression is only used to match with the first element, later on the elements are not matched by the prefix, but you can enforce a certain pattern with `starts_with` or `like`.
173
+ :param str starts_with: Filters the output with **case-sensitive** characters indicating the beginning of the object name.
174
+ :param bool with_describe: Runs DESC USER for each user returned by SHOW USERS. The output of describe is saved to the description field. By default this value is set to true.
175
+ :param bool with_parameters: Runs SHOW PARAMETERS FOR USER for each user returned by SHOW USERS. The output of describe is saved to the parameters field as a map. By default this value is set to true.
113
176
  """
114
177
  ...