pulumi-snowflake 0.58.0a1726035035__py3-none-any.whl → 0.59.0__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 (83) hide show
  1. pulumi_snowflake/_inputs.py +8587 -2022
  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 +63 -36
  24. pulumi_snowflake/get_masking_policies.py +73 -48
  25. pulumi_snowflake/get_resource_monitors.py +28 -16
  26. pulumi_snowflake/get_row_access_policies.py +73 -48
  27. pulumi_snowflake/get_users.py +96 -33
  28. pulumi_snowflake/get_views.py +94 -51
  29. pulumi_snowflake/grant_account_role.py +0 -4
  30. pulumi_snowflake/grant_application_role.py +0 -4
  31. pulumi_snowflake/grant_database_role.py +0 -4
  32. pulumi_snowflake/grant_privileges_to_account_role.py +4 -4
  33. pulumi_snowflake/grant_privileges_to_database_role.py +6 -2
  34. pulumi_snowflake/grant_privileges_to_share.py +49 -2
  35. pulumi_snowflake/managed_account.py +28 -4
  36. pulumi_snowflake/masking_policy.py +208 -306
  37. pulumi_snowflake/materialized_view.py +28 -34
  38. pulumi_snowflake/network_policy.py +35 -15
  39. pulumi_snowflake/network_policy_attachment.py +0 -30
  40. pulumi_snowflake/network_rule.py +28 -66
  41. pulumi_snowflake/notification_integration.py +28 -34
  42. pulumi_snowflake/oauth_integration.py +0 -34
  43. pulumi_snowflake/oauth_integration_for_custom_clients.py +35 -101
  44. pulumi_snowflake/oauth_integration_for_partner_applications.py +35 -15
  45. pulumi_snowflake/object_parameter.py +0 -98
  46. pulumi_snowflake/outputs.py +13035 -4202
  47. pulumi_snowflake/password_policy.py +28 -28
  48. pulumi_snowflake/pipe.py +28 -4
  49. pulumi_snowflake/procedure.py +28 -4
  50. pulumi_snowflake/pulumi-plugin.json +1 -1
  51. pulumi_snowflake/resource_monitor.py +111 -307
  52. pulumi_snowflake/role.py +41 -36
  53. pulumi_snowflake/row_access_policy.py +195 -147
  54. pulumi_snowflake/saml2_integration.py +35 -15
  55. pulumi_snowflake/saml_integration.py +0 -34
  56. pulumi_snowflake/schema.py +39 -19
  57. pulumi_snowflake/scim_integration.py +35 -15
  58. pulumi_snowflake/secondary_database.py +35 -19
  59. pulumi_snowflake/sequence.py +4 -36
  60. pulumi_snowflake/session_parameter.py +0 -32
  61. pulumi_snowflake/share.py +28 -28
  62. pulumi_snowflake/shared_database.py +35 -15
  63. pulumi_snowflake/stage.py +28 -28
  64. pulumi_snowflake/storage_integration.py +28 -4
  65. pulumi_snowflake/stream.py +28 -4
  66. pulumi_snowflake/streamlit.py +36 -16
  67. pulumi_snowflake/table.py +28 -32
  68. pulumi_snowflake/table_column_masking_policy_application.py +2 -14
  69. pulumi_snowflake/table_constraint.py +0 -152
  70. pulumi_snowflake/tag.py +28 -40
  71. pulumi_snowflake/tag_association.py +0 -120
  72. pulumi_snowflake/tag_masking_policy_association.py +0 -4
  73. pulumi_snowflake/task.py +28 -92
  74. pulumi_snowflake/unsafe_execute.py +2 -20
  75. pulumi_snowflake/user.py +3341 -368
  76. pulumi_snowflake/user_password_policy_attachment.py +0 -46
  77. pulumi_snowflake/view.py +465 -185
  78. pulumi_snowflake/warehouse.py +39 -43
  79. {pulumi_snowflake-0.58.0a1726035035.dist-info → pulumi_snowflake-0.59.0.dist-info}/METADATA +1 -1
  80. pulumi_snowflake-0.59.0.dist-info/RECORD +129 -0
  81. {pulumi_snowflake-0.58.0a1726035035.dist-info → pulumi_snowflake-0.59.0.dist-info}/WHEEL +1 -1
  82. pulumi_snowflake-0.58.0a1726035035.dist-info/RECORD +0 -129
  83. {pulumi_snowflake-0.58.0a1726035035.dist-info → pulumi_snowflake-0.59.0.dist-info}/top_level.txt +0 -0
@@ -22,10 +22,13 @@ class GetResourceMonitorsResult:
22
22
  """
23
23
  A collection of values returned by getResourceMonitors.
24
24
  """
25
- def __init__(__self__, id=None, resource_monitors=None):
25
+ def __init__(__self__, id=None, like=None, resource_monitors=None):
26
26
  if id and not isinstance(id, str):
27
27
  raise TypeError("Expected argument 'id' to be a str")
28
28
  pulumi.set(__self__, "id", id)
29
+ if like and not isinstance(like, str):
30
+ raise TypeError("Expected argument 'like' to be a str")
31
+ pulumi.set(__self__, "like", like)
29
32
  if resource_monitors and not isinstance(resource_monitors, list):
30
33
  raise TypeError("Expected argument 'resource_monitors' to be a list")
31
34
  pulumi.set(__self__, "resource_monitors", resource_monitors)
@@ -38,11 +41,19 @@ class GetResourceMonitorsResult:
38
41
  """
39
42
  return pulumi.get(self, "id")
40
43
 
44
+ @property
45
+ @pulumi.getter
46
+ def like(self) -> Optional[str]:
47
+ """
48
+ Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
49
+ """
50
+ return pulumi.get(self, "like")
51
+
41
52
  @property
42
53
  @pulumi.getter(name="resourceMonitors")
43
54
  def resource_monitors(self) -> Sequence['outputs.GetResourceMonitorsResourceMonitorResult']:
44
55
  """
45
- The resource monitors in the database
56
+ Holds the aggregated output of all resource monitor details queries.
46
57
  """
47
58
  return pulumi.get(self, "resource_monitors")
48
59
 
@@ -54,39 +65,40 @@ class AwaitableGetResourceMonitorsResult(GetResourceMonitorsResult):
54
65
  yield self
55
66
  return GetResourceMonitorsResult(
56
67
  id=self.id,
68
+ like=self.like,
57
69
  resource_monitors=self.resource_monitors)
58
70
 
59
71
 
60
- def get_resource_monitors(opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetResourceMonitorsResult:
72
+ def get_resource_monitors(like: Optional[str] = None,
73
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetResourceMonitorsResult:
61
74
  """
62
- ## Example Usage
75
+ !> **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
+
77
+ Datasource used to get details of filtered resource monitors. Filtering is aligned with the current possibilities for [SHOW RESOURCE MONITORS](https://docs.snowflake.com/en/sql-reference/sql/show-resource-monitors) query (`like` is supported). The results of SHOW is encapsulated in show_output collection.
63
78
 
64
- ```python
65
- import pulumi
66
- import pulumi_snowflake as snowflake
67
79
 
68
- current = snowflake.get_resource_monitors()
69
- ```
80
+ :param str like: Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
70
81
  """
71
82
  __args__ = dict()
83
+ __args__['like'] = like
72
84
  opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
73
85
  __ret__ = pulumi.runtime.invoke('snowflake:index/getResourceMonitors:getResourceMonitors', __args__, opts=opts, typ=GetResourceMonitorsResult).value
74
86
 
75
87
  return AwaitableGetResourceMonitorsResult(
76
88
  id=pulumi.get(__ret__, 'id'),
89
+ like=pulumi.get(__ret__, 'like'),
77
90
  resource_monitors=pulumi.get(__ret__, 'resource_monitors'))
78
91
 
79
92
 
80
93
  @_utilities.lift_output_func(get_resource_monitors)
81
- def get_resource_monitors_output(opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetResourceMonitorsResult]:
94
+ def get_resource_monitors_output(like: Optional[pulumi.Input[Optional[str]]] = None,
95
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetResourceMonitorsResult]:
82
96
  """
83
- ## Example Usage
97
+ !> **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.
98
+
99
+ Datasource used to get details of filtered resource monitors. Filtering is aligned with the current possibilities for [SHOW RESOURCE MONITORS](https://docs.snowflake.com/en/sql-reference/sql/show-resource-monitors) query (`like` is supported). The results of SHOW is encapsulated in show_output collection.
84
100
 
85
- ```python
86
- import pulumi
87
- import pulumi_snowflake as snowflake
88
101
 
89
- current = snowflake.get_resource_monitors()
90
- ```
102
+ :param str like: Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
91
103
  """
92
104
  ...
@@ -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
  'GetRowAccessPoliciesResult',
@@ -22,51 +23,73 @@ class GetRowAccessPoliciesResult:
22
23
  """
23
24
  A collection of values returned by getRowAccessPolicies.
24
25
  """
25
- def __init__(__self__, database=None, id=None, row_access_policies=None, schema=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__, id=None, in_=None, like=None, limit=None, row_access_policies=None, with_describe=None):
29
27
  if id and not isinstance(id, str):
30
28
  raise TypeError("Expected argument 'id' to be a str")
31
29
  pulumi.set(__self__, "id", id)
30
+ if in_ and not isinstance(in_, dict):
31
+ raise TypeError("Expected argument 'in_' to be a dict")
32
+ pulumi.set(__self__, "in_", in_)
33
+ if like and not isinstance(like, str):
34
+ raise TypeError("Expected argument 'like' to be a str")
35
+ pulumi.set(__self__, "like", like)
36
+ if limit and not isinstance(limit, dict):
37
+ raise TypeError("Expected argument 'limit' to be a dict")
38
+ pulumi.set(__self__, "limit", limit)
32
39
  if row_access_policies and not isinstance(row_access_policies, list):
33
40
  raise TypeError("Expected argument 'row_access_policies' to be a list")
34
41
  pulumi.set(__self__, "row_access_policies", row_access_policies)
35
- if schema and not isinstance(schema, str):
36
- raise TypeError("Expected argument 'schema' to be a str")
37
- pulumi.set(__self__, "schema", schema)
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)
38
45
 
39
46
  @property
40
47
  @pulumi.getter
41
- def database(self) -> str:
48
+ def id(self) -> str:
42
49
  """
43
- The database from which to return the schemas from.
50
+ The provider-assigned unique ID for this managed resource.
44
51
  """
45
- return pulumi.get(self, "database")
52
+ return pulumi.get(self, "id")
53
+
54
+ @property
55
+ @pulumi.getter(name="in")
56
+ def in_(self) -> Optional['outputs.GetRowAccessPoliciesInResult']:
57
+ """
58
+ IN clause to filter the list of row access policies
59
+ """
60
+ return pulumi.get(self, "in_")
46
61
 
47
62
  @property
48
63
  @pulumi.getter
49
- def id(self) -> str:
64
+ def like(self) -> Optional[str]:
50
65
  """
51
- The provider-assigned unique ID for this managed resource.
66
+ Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
52
67
  """
53
- return pulumi.get(self, "id")
68
+ return pulumi.get(self, "like")
69
+
70
+ @property
71
+ @pulumi.getter
72
+ def limit(self) -> Optional['outputs.GetRowAccessPoliciesLimitResult']:
73
+ """
74
+ 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`.
75
+ """
76
+ return pulumi.get(self, "limit")
54
77
 
55
78
  @property
56
79
  @pulumi.getter(name="rowAccessPolicies")
57
80
  def row_access_policies(self) -> Sequence['outputs.GetRowAccessPoliciesRowAccessPolicyResult']:
58
81
  """
59
- The row access policy in the schema
82
+ Holds the aggregated output of all views details queries.
60
83
  """
61
84
  return pulumi.get(self, "row_access_policies")
62
85
 
63
86
  @property
64
- @pulumi.getter
65
- def schema(self) -> str:
87
+ @pulumi.getter(name="withDescribe")
88
+ def with_describe(self) -> Optional[bool]:
66
89
  """
67
- The schema from which to return the row access policy from.
90
+ Runs DESC ROW ACCESS POLICY for each row access policy returned by SHOW ROW ACCESS POLICIES. The output of describe is saved to the description field. By default this value is set to true.
68
91
  """
69
- return pulumi.get(self, "schema")
92
+ return pulumi.get(self, "with_describe")
70
93
 
71
94
 
72
95
  class AwaitableGetRowAccessPoliciesResult(GetRowAccessPoliciesResult):
@@ -75,60 +98,62 @@ class AwaitableGetRowAccessPoliciesResult(GetRowAccessPoliciesResult):
75
98
  if False:
76
99
  yield self
77
100
  return GetRowAccessPoliciesResult(
78
- database=self.database,
79
101
  id=self.id,
102
+ in_=self.in_,
103
+ like=self.like,
104
+ limit=self.limit,
80
105
  row_access_policies=self.row_access_policies,
81
- schema=self.schema)
106
+ with_describe=self.with_describe)
82
107
 
83
108
 
84
- def get_row_access_policies(database: Optional[str] = None,
85
- schema: Optional[str] = None,
109
+ def get_row_access_policies(in_: Optional[Union['GetRowAccessPoliciesInArgs', 'GetRowAccessPoliciesInArgsDict']] = None,
110
+ like: Optional[str] = None,
111
+ limit: Optional[Union['GetRowAccessPoliciesLimitArgs', 'GetRowAccessPoliciesLimitArgsDict']] = None,
112
+ with_describe: Optional[bool] = None,
86
113
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetRowAccessPoliciesResult:
87
114
  """
88
- ## Example Usage
115
+ !> **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.
89
116
 
90
- ```python
91
- import pulumi
92
- import pulumi_snowflake as snowflake
117
+ Datasource used to get details of filtered row access policies. Filtering is aligned with the current possibilities for [SHOW ROW ACCESS POLICIES](https://docs.snowflake.com/en/sql-reference/sql/show-row-access-policies) query. The results of SHOW and DESCRIBE are encapsulated in one output collection `row_access_policies`.
93
118
 
94
- current = snowflake.get_row_access_policies(database="MYDB",
95
- schema="MYSCHEMA")
96
- ```
97
119
 
98
-
99
- :param str database: The database from which to return the schemas from.
100
- :param str schema: The schema from which to return the row access policy from.
120
+ :param Union['GetRowAccessPoliciesInArgs', 'GetRowAccessPoliciesInArgsDict'] in_: IN clause to filter the list of row access policies
121
+ :param str like: Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
122
+ :param Union['GetRowAccessPoliciesLimitArgs', 'GetRowAccessPoliciesLimitArgsDict'] 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`.
123
+ :param bool with_describe: Runs DESC ROW ACCESS POLICY for each row access policy returned by SHOW ROW ACCESS POLICIES. The output of describe is saved to the description field. By default this value is set to true.
101
124
  """
102
125
  __args__ = dict()
103
- __args__['database'] = database
104
- __args__['schema'] = schema
126
+ __args__['in'] = in_
127
+ __args__['like'] = like
128
+ __args__['limit'] = limit
129
+ __args__['withDescribe'] = with_describe
105
130
  opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
106
131
  __ret__ = pulumi.runtime.invoke('snowflake:index/getRowAccessPolicies:getRowAccessPolicies', __args__, opts=opts, typ=GetRowAccessPoliciesResult).value
107
132
 
108
133
  return AwaitableGetRowAccessPoliciesResult(
109
- database=pulumi.get(__ret__, 'database'),
110
134
  id=pulumi.get(__ret__, 'id'),
135
+ in_=pulumi.get(__ret__, 'in_'),
136
+ like=pulumi.get(__ret__, 'like'),
137
+ limit=pulumi.get(__ret__, 'limit'),
111
138
  row_access_policies=pulumi.get(__ret__, 'row_access_policies'),
112
- schema=pulumi.get(__ret__, 'schema'))
139
+ with_describe=pulumi.get(__ret__, 'with_describe'))
113
140
 
114
141
 
115
142
  @_utilities.lift_output_func(get_row_access_policies)
116
- def get_row_access_policies_output(database: Optional[pulumi.Input[str]] = None,
117
- schema: Optional[pulumi.Input[str]] = None,
143
+ def get_row_access_policies_output(in_: Optional[pulumi.Input[Optional[Union['GetRowAccessPoliciesInArgs', 'GetRowAccessPoliciesInArgsDict']]]] = None,
144
+ like: Optional[pulumi.Input[Optional[str]]] = None,
145
+ limit: Optional[pulumi.Input[Optional[Union['GetRowAccessPoliciesLimitArgs', 'GetRowAccessPoliciesLimitArgsDict']]]] = None,
146
+ with_describe: Optional[pulumi.Input[Optional[bool]]] = None,
118
147
  opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetRowAccessPoliciesResult]:
119
148
  """
120
- ## Example Usage
121
-
122
- ```python
123
- import pulumi
124
- import pulumi_snowflake as snowflake
149
+ !> **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.
125
150
 
126
- current = snowflake.get_row_access_policies(database="MYDB",
127
- schema="MYSCHEMA")
128
- ```
151
+ Datasource used to get details of filtered row access policies. Filtering is aligned with the current possibilities for [SHOW ROW ACCESS POLICIES](https://docs.snowflake.com/en/sql-reference/sql/show-row-access-policies) query. The results of SHOW and DESCRIBE are encapsulated in one output collection `row_access_policies`.
129
152
 
130
153
 
131
- :param str database: The database from which to return the schemas from.
132
- :param str schema: The schema from which to return the row access policy from.
154
+ :param Union['GetRowAccessPoliciesInArgs', 'GetRowAccessPoliciesInArgsDict'] in_: IN clause to filter the list of row access policies
155
+ :param str like: Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
156
+ :param Union['GetRowAccessPoliciesLimitArgs', 'GetRowAccessPoliciesLimitArgsDict'] 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`.
157
+ :param bool with_describe: Runs DESC ROW ACCESS POLICY for each row access policy returned by SHOW ROW ACCESS POLICIES. The output of describe is saved to the description field. By default this value is set to true.
133
158
  """
134
159
  ...
@@ -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
  ...