pulumi-snowflake 0.56.0a1721327760__py3-none-any.whl → 0.57.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.
Files changed (74) hide show
  1. pulumi_snowflake/__init__.py +78 -209
  2. pulumi_snowflake/_inputs.py +12188 -1362
  3. pulumi_snowflake/_utilities.py +2 -0
  4. pulumi_snowflake/account_role.py +226 -0
  5. pulumi_snowflake/api_authentication_integration_with_authorization_code_grant.py +692 -0
  6. pulumi_snowflake/api_authentication_integration_with_client_credentials.py +645 -0
  7. pulumi_snowflake/api_authentication_integration_with_jwt_bearer.py +680 -0
  8. pulumi_snowflake/cortex_search_service.py +563 -0
  9. pulumi_snowflake/database.py +854 -232
  10. pulumi_snowflake/database_old.py +556 -0
  11. pulumi_snowflake/external_oauth_integration.py +562 -534
  12. pulumi_snowflake/failover_group.py +2 -2
  13. pulumi_snowflake/get_cortex_search_services.py +197 -0
  14. pulumi_snowflake/get_databases.py +71 -62
  15. pulumi_snowflake/get_network_policies.py +122 -0
  16. pulumi_snowflake/get_roles.py +37 -31
  17. pulumi_snowflake/get_schemas.py +115 -38
  18. pulumi_snowflake/get_security_integrations.py +122 -0
  19. pulumi_snowflake/get_streamlits.py +159 -0
  20. pulumi_snowflake/get_warehouses.py +66 -18
  21. pulumi_snowflake/grant_privileges_to_database_role.py +0 -4
  22. pulumi_snowflake/managed_account.py +7 -7
  23. pulumi_snowflake/network_policy.py +103 -19
  24. pulumi_snowflake/oauth_integration.py +4 -0
  25. pulumi_snowflake/oauth_integration_for_custom_clients.py +940 -0
  26. pulumi_snowflake/oauth_integration_for_partner_applications.py +584 -0
  27. pulumi_snowflake/outputs.py +16178 -2927
  28. pulumi_snowflake/pulumi-plugin.json +1 -1
  29. pulumi_snowflake/role.py +44 -72
  30. pulumi_snowflake/saml2_integration.py +975 -0
  31. pulumi_snowflake/saml_integration.py +4 -0
  32. pulumi_snowflake/schema.py +905 -151
  33. pulumi_snowflake/scim_integration.py +257 -103
  34. pulumi_snowflake/secondary_database.py +1059 -0
  35. pulumi_snowflake/sequence.py +6 -6
  36. pulumi_snowflake/shared_database.py +914 -0
  37. pulumi_snowflake/streamlit.py +650 -0
  38. pulumi_snowflake/table.py +0 -120
  39. pulumi_snowflake/table_constraint.py +2 -2
  40. pulumi_snowflake/tag_association.py +38 -38
  41. pulumi_snowflake/unsafe_execute.py +8 -8
  42. pulumi_snowflake/user_password_policy_attachment.py +32 -0
  43. pulumi_snowflake/warehouse.py +143 -120
  44. {pulumi_snowflake-0.56.0a1721327760.dist-info → pulumi_snowflake-0.57.0.dist-info}/METADATA +1 -1
  45. {pulumi_snowflake-0.56.0a1721327760.dist-info → pulumi_snowflake-0.57.0.dist-info}/RECORD +47 -58
  46. {pulumi_snowflake-0.56.0a1721327760.dist-info → pulumi_snowflake-0.57.0.dist-info}/WHEEL +1 -1
  47. pulumi_snowflake/account_grant.py +0 -319
  48. pulumi_snowflake/database_grant.py +0 -471
  49. pulumi_snowflake/external_table_grant.py +0 -666
  50. pulumi_snowflake/failover_group_grant.py +0 -368
  51. pulumi_snowflake/file_format_grant.py +0 -611
  52. pulumi_snowflake/function_grant.py +0 -721
  53. pulumi_snowflake/grant_privileges_to_role.py +0 -821
  54. pulumi_snowflake/integration_grant.py +0 -416
  55. pulumi_snowflake/masking_policy_grant.py +0 -518
  56. pulumi_snowflake/materialized_view_grant.py +0 -665
  57. pulumi_snowflake/pipe_grant.py +0 -563
  58. pulumi_snowflake/procedure_grant.py +0 -721
  59. pulumi_snowflake/resource_monitor_grant.py +0 -363
  60. pulumi_snowflake/role_grants.py +0 -340
  61. pulumi_snowflake/role_ownership_grant.py +0 -329
  62. pulumi_snowflake/row_access_policy_grant.py +0 -516
  63. pulumi_snowflake/schema_grant.py +0 -603
  64. pulumi_snowflake/sequence_grant.py +0 -611
  65. pulumi_snowflake/stage_grant.py +0 -611
  66. pulumi_snowflake/stream_grant.py +0 -611
  67. pulumi_snowflake/table_grant.py +0 -653
  68. pulumi_snowflake/tag_grant.py +0 -508
  69. pulumi_snowflake/task_grant.py +0 -611
  70. pulumi_snowflake/user_grant.py +0 -370
  71. pulumi_snowflake/user_ownership_grant.py +0 -275
  72. pulumi_snowflake/view_grant.py +0 -685
  73. pulumi_snowflake/warehouse_grant.py +0 -416
  74. {pulumi_snowflake-0.56.0a1721327760.dist-info → pulumi_snowflake-0.57.0.dist-info}/top_level.txt +0 -0
@@ -22,13 +22,22 @@ class GetWarehousesResult:
22
22
  """
23
23
  A collection of values returned by getWarehouses.
24
24
  """
25
- def __init__(__self__, id=None, warehouses=None):
25
+ def __init__(__self__, id=None, like=None, warehouses=None, with_describe=None, with_parameters=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 warehouses and not isinstance(warehouses, list):
30
33
  raise TypeError("Expected argument 'warehouses' to be a list")
31
34
  pulumi.set(__self__, "warehouses", warehouses)
35
+ if with_describe and not isinstance(with_describe, bool):
36
+ raise TypeError("Expected argument 'with_describe' to be a bool")
37
+ pulumi.set(__self__, "with_describe", with_describe)
38
+ if with_parameters and not isinstance(with_parameters, bool):
39
+ raise TypeError("Expected argument 'with_parameters' to be a bool")
40
+ pulumi.set(__self__, "with_parameters", with_parameters)
32
41
 
33
42
  @property
34
43
  @pulumi.getter
@@ -38,14 +47,38 @@ class GetWarehousesResult:
38
47
  """
39
48
  return pulumi.get(self, "id")
40
49
 
50
+ @property
51
+ @pulumi.getter
52
+ def like(self) -> Optional[str]:
53
+ """
54
+ Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
55
+ """
56
+ return pulumi.get(self, "like")
57
+
41
58
  @property
42
59
  @pulumi.getter
43
60
  def warehouses(self) -> Sequence['outputs.GetWarehousesWarehouseResult']:
44
61
  """
45
- The warehouses in the database
62
+ Holds the aggregated output of all warehouse details queries.
46
63
  """
47
64
  return pulumi.get(self, "warehouses")
48
65
 
66
+ @property
67
+ @pulumi.getter(name="withDescribe")
68
+ def with_describe(self) -> Optional[bool]:
69
+ """
70
+ Runs DESC WAREHOUSE for each warehouse returned by SHOW WAREHOUSES. The output of describe is saved to the description field. By default this value is set to true.
71
+ """
72
+ return pulumi.get(self, "with_describe")
73
+
74
+ @property
75
+ @pulumi.getter(name="withParameters")
76
+ def with_parameters(self) -> Optional[bool]:
77
+ """
78
+ Runs SHOW PARAMETERS FOR WAREHOUSE for each warehouse returned by SHOW WAREHOUSES. The output of describe is saved to the parameters field as a map. By default this value is set to true.
79
+ """
80
+ return pulumi.get(self, "with_parameters")
81
+
49
82
 
50
83
  class AwaitableGetWarehousesResult(GetWarehousesResult):
51
84
  # pylint: disable=using-constant-test
@@ -54,39 +87,54 @@ class AwaitableGetWarehousesResult(GetWarehousesResult):
54
87
  yield self
55
88
  return GetWarehousesResult(
56
89
  id=self.id,
57
- warehouses=self.warehouses)
90
+ like=self.like,
91
+ warehouses=self.warehouses,
92
+ with_describe=self.with_describe,
93
+ with_parameters=self.with_parameters)
58
94
 
59
95
 
60
- def get_warehouses(opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetWarehousesResult:
96
+ def get_warehouses(like: Optional[str] = None,
97
+ with_describe: Optional[bool] = None,
98
+ with_parameters: Optional[bool] = None,
99
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetWarehousesResult:
61
100
  """
62
- ## Example Usage
101
+ !> **V1 release candidate** This resource 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 resource if needed. Any errors reported will be resolved with a higher priority. We encourage checking this resource out before the V1 release. Please follow the migration guide to use it.
102
+
103
+ Datasource used to get details of filtered warehouses. Filtering is aligned with the current possibilities for [SHOW WAREHOUSES](https://docs.snowflake.com/en/sql-reference/sql/show-warehouses) query (only `like` is supported). The results of SHOW, DESCRIBE, and SHOW PARAMETERS IN are encapsulated in one output collection.
63
104
 
64
- ```python
65
- import pulumi
66
- import pulumi_snowflake as snowflake
67
105
 
68
- current = snowflake.get_warehouses()
69
- ```
106
+ :param str like: Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
107
+ :param bool with_describe: Runs DESC WAREHOUSE for each warehouse returned by SHOW WAREHOUSES. The output of describe is saved to the description field. By default this value is set to true.
108
+ :param bool with_parameters: Runs SHOW PARAMETERS FOR WAREHOUSE for each warehouse returned by SHOW WAREHOUSES. The output of describe is saved to the parameters field as a map. By default this value is set to true.
70
109
  """
71
110
  __args__ = dict()
111
+ __args__['like'] = like
112
+ __args__['withDescribe'] = with_describe
113
+ __args__['withParameters'] = with_parameters
72
114
  opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
73
115
  __ret__ = pulumi.runtime.invoke('snowflake:index/getWarehouses:getWarehouses', __args__, opts=opts, typ=GetWarehousesResult).value
74
116
 
75
117
  return AwaitableGetWarehousesResult(
76
118
  id=pulumi.get(__ret__, 'id'),
77
- warehouses=pulumi.get(__ret__, 'warehouses'))
119
+ like=pulumi.get(__ret__, 'like'),
120
+ warehouses=pulumi.get(__ret__, 'warehouses'),
121
+ with_describe=pulumi.get(__ret__, 'with_describe'),
122
+ with_parameters=pulumi.get(__ret__, 'with_parameters'))
78
123
 
79
124
 
80
125
  @_utilities.lift_output_func(get_warehouses)
81
- def get_warehouses_output(opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetWarehousesResult]:
126
+ def get_warehouses_output(like: Optional[pulumi.Input[Optional[str]]] = None,
127
+ with_describe: Optional[pulumi.Input[Optional[bool]]] = None,
128
+ with_parameters: Optional[pulumi.Input[Optional[bool]]] = None,
129
+ opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetWarehousesResult]:
82
130
  """
83
- ## Example Usage
131
+ !> **V1 release candidate** This resource 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 resource if needed. Any errors reported will be resolved with a higher priority. We encourage checking this resource out before the V1 release. Please follow the migration guide to use it.
132
+
133
+ Datasource used to get details of filtered warehouses. Filtering is aligned with the current possibilities for [SHOW WAREHOUSES](https://docs.snowflake.com/en/sql-reference/sql/show-warehouses) query (only `like` is supported). The results of SHOW, DESCRIBE, and SHOW PARAMETERS IN are encapsulated in one output collection.
84
134
 
85
- ```python
86
- import pulumi
87
- import pulumi_snowflake as snowflake
88
135
 
89
- current = snowflake.get_warehouses()
90
- ```
136
+ :param str like: Filters the output with **case-insensitive** pattern, with support for SQL wildcard characters (`%` and `_`).
137
+ :param bool with_describe: Runs DESC WAREHOUSE for each warehouse returned by SHOW WAREHOUSES. The output of describe is saved to the description field. By default this value is set to true.
138
+ :param bool with_parameters: Runs SHOW PARAMETERS FOR WAREHOUSE for each warehouse returned by SHOW WAREHOUSES. The output of describe is saved to the parameters field as a map. By default this value is set to true.
91
139
  """
92
140
  ...
@@ -324,8 +324,6 @@ class GrantPrivilegesToDatabaseRole(pulumi.CustomResource):
324
324
  with_grant_option: Optional[pulumi.Input[bool]] = None,
325
325
  __props__=None):
326
326
  """
327
- > **Note** This is a preview resource. It's ready for general use. In case of any errors, please file an issue in our GitHub repository.
328
-
329
327
  !> **Warning** Be careful when using `always_apply` field. It will always produce a plan (even when no changes were made) and can be harmful in some setups. For more details why we decided to introduce it to go our document explaining those design decisions (coming soon).
330
328
 
331
329
  #### Grant all privileges OnDatabase
@@ -370,8 +368,6 @@ class GrantPrivilegesToDatabaseRole(pulumi.CustomResource):
370
368
  args: GrantPrivilegesToDatabaseRoleArgs,
371
369
  opts: Optional[pulumi.ResourceOptions] = None):
372
370
  """
373
- > **Note** This is a preview resource. It's ready for general use. In case of any errors, please file an issue in our GitHub repository.
374
-
375
371
  !> **Warning** Be careful when using `always_apply` field. It will always produce a plan (even when no changes were made) and can be harmful in some setups. For more details why we decided to introduce it to go our document explaining those design decisions (coming soon).
376
372
 
377
373
  #### Grant all privileges OnDatabase
@@ -22,7 +22,7 @@ class ManagedAccountArgs:
22
22
  """
23
23
  The set of arguments for constructing a ManagedAccount resource.
24
24
  :param pulumi.Input[str] admin_name: Identifier, as well as login name, for the initial user in the managed account. This user serves as the account administrator for the account.
25
- :param pulumi.Input[str] admin_password: Password for the initial user in the managed account.
25
+ :param pulumi.Input[str] admin_password: Password for the initial user in the managed account. Check [Snowflake-provided password policy](https://docs.snowflake.com/en/user-guide/admin-user-management#snowflake-provided-password-policy).
26
26
  :param pulumi.Input[str] comment: Specifies a comment for the managed account.
27
27
  :param pulumi.Input[str] name: Identifier for the managed account; must be unique for your account.
28
28
  :param pulumi.Input[str] type: Specifies the type of managed account.
@@ -52,7 +52,7 @@ class ManagedAccountArgs:
52
52
  @pulumi.getter(name="adminPassword")
53
53
  def admin_password(self) -> pulumi.Input[str]:
54
54
  """
55
- Password for the initial user in the managed account.
55
+ Password for the initial user in the managed account. Check [Snowflake-provided password policy](https://docs.snowflake.com/en/user-guide/admin-user-management#snowflake-provided-password-policy).
56
56
  """
57
57
  return pulumi.get(self, "admin_password")
58
58
 
@@ -113,7 +113,7 @@ class _ManagedAccountState:
113
113
  """
114
114
  Input properties used for looking up and filtering ManagedAccount resources.
115
115
  :param pulumi.Input[str] admin_name: Identifier, as well as login name, for the initial user in the managed account. This user serves as the account administrator for the account.
116
- :param pulumi.Input[str] admin_password: Password for the initial user in the managed account.
116
+ :param pulumi.Input[str] admin_password: Password for the initial user in the managed account. Check [Snowflake-provided password policy](https://docs.snowflake.com/en/user-guide/admin-user-management#snowflake-provided-password-policy).
117
117
  :param pulumi.Input[str] cloud: Cloud in which the managed account is located.
118
118
  :param pulumi.Input[str] comment: Specifies a comment for the managed account.
119
119
  :param pulumi.Input[str] created_on: Date and time when the managed account was created.
@@ -160,7 +160,7 @@ class _ManagedAccountState:
160
160
  @pulumi.getter(name="adminPassword")
161
161
  def admin_password(self) -> Optional[pulumi.Input[str]]:
162
162
  """
163
- Password for the initial user in the managed account.
163
+ Password for the initial user in the managed account. Check [Snowflake-provided password policy](https://docs.snowflake.com/en/user-guide/admin-user-management#snowflake-provided-password-policy).
164
164
  """
165
165
  return pulumi.get(self, "admin_password")
166
166
 
@@ -288,7 +288,7 @@ class ManagedAccount(pulumi.CustomResource):
288
288
  :param str resource_name: The name of the resource.
289
289
  :param pulumi.ResourceOptions opts: Options for the resource.
290
290
  :param pulumi.Input[str] admin_name: Identifier, as well as login name, for the initial user in the managed account. This user serves as the account administrator for the account.
291
- :param pulumi.Input[str] admin_password: Password for the initial user in the managed account.
291
+ :param pulumi.Input[str] admin_password: Password for the initial user in the managed account. Check [Snowflake-provided password policy](https://docs.snowflake.com/en/user-guide/admin-user-management#snowflake-provided-password-policy).
292
292
  :param pulumi.Input[str] comment: Specifies a comment for the managed account.
293
293
  :param pulumi.Input[str] name: Identifier for the managed account; must be unique for your account.
294
294
  :param pulumi.Input[str] type: Specifies the type of managed account.
@@ -381,7 +381,7 @@ class ManagedAccount(pulumi.CustomResource):
381
381
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
382
382
  :param pulumi.ResourceOptions opts: Options for the resource.
383
383
  :param pulumi.Input[str] admin_name: Identifier, as well as login name, for the initial user in the managed account. This user serves as the account administrator for the account.
384
- :param pulumi.Input[str] admin_password: Password for the initial user in the managed account.
384
+ :param pulumi.Input[str] admin_password: Password for the initial user in the managed account. Check [Snowflake-provided password policy](https://docs.snowflake.com/en/user-guide/admin-user-management#snowflake-provided-password-policy).
385
385
  :param pulumi.Input[str] cloud: Cloud in which the managed account is located.
386
386
  :param pulumi.Input[str] comment: Specifies a comment for the managed account.
387
387
  :param pulumi.Input[str] created_on: Date and time when the managed account was created.
@@ -419,7 +419,7 @@ class ManagedAccount(pulumi.CustomResource):
419
419
  @pulumi.getter(name="adminPassword")
420
420
  def admin_password(self) -> pulumi.Output[str]:
421
421
  """
422
- Password for the initial user in the managed account.
422
+ Password for the initial user in the managed account. Check [Snowflake-provided password policy](https://docs.snowflake.com/en/user-guide/admin-user-management#snowflake-provided-password-policy).
423
423
  """
424
424
  return pulumi.get(self, "admin_password")
425
425
 
@@ -8,6 +8,8 @@ import pulumi
8
8
  import pulumi.runtime
9
9
  from typing import Any, Mapping, Optional, Sequence, Union, overload
10
10
  from . import _utilities
11
+ from . import outputs
12
+ from ._inputs import *
11
13
 
12
14
  __all__ = ['NetworkPolicyArgs', 'NetworkPolicy']
13
15
 
@@ -24,7 +26,7 @@ class NetworkPolicyArgs:
24
26
  The set of arguments for constructing a NetworkPolicy resource.
25
27
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_ip_lists: Specifies one or more IPv4 addresses (CIDR notation) that are allowed access to your Snowflake account.
26
28
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_network_rule_lists: Specifies a list of fully qualified network rules that contain the network identifiers that are allowed access to Snowflake.
27
- :param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_ip_lists: Specifies one or more IPv4 addresses (CIDR notation) that are denied access to your Snowflake account\\n\\n\\n\\n**Do not** add `0.0.0.0/0` to `blocked_ip_list`.
29
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_ip_lists: Specifies one or more IPv4 addresses (CIDR notation) that are denied access to your Snowflake account. **Do not** add `0.0.0.0/0` to `blocked_ip_list`, in order to block all IP addresses except a select list, you only need to add IP addresses to `allowed_ip_list`.
28
30
  :param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_network_rule_lists: Specifies a list of fully qualified network rules that contain the network identifiers that are denied access to Snowflake.
29
31
  :param pulumi.Input[str] comment: Specifies a comment for the network policy.
30
32
  :param pulumi.Input[str] name: Specifies the identifier for the network policy; must be unique for the account in which the network policy is created.
@@ -70,7 +72,7 @@ class NetworkPolicyArgs:
70
72
  @pulumi.getter(name="blockedIpLists")
71
73
  def blocked_ip_lists(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
72
74
  """
73
- Specifies one or more IPv4 addresses (CIDR notation) that are denied access to your Snowflake account\\n\\n\\n\\n**Do not** add `0.0.0.0/0` to `blocked_ip_list`.
75
+ Specifies one or more IPv4 addresses (CIDR notation) that are denied access to your Snowflake account. **Do not** add `0.0.0.0/0` to `blocked_ip_list`, in order to block all IP addresses except a select list, you only need to add IP addresses to `allowed_ip_list`.
74
76
  """
75
77
  return pulumi.get(self, "blocked_ip_lists")
76
78
 
@@ -123,15 +125,19 @@ class _NetworkPolicyState:
123
125
  blocked_ip_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
124
126
  blocked_network_rule_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
125
127
  comment: Optional[pulumi.Input[str]] = None,
126
- name: Optional[pulumi.Input[str]] = None):
128
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkPolicyDescribeOutputArgs']]]] = None,
129
+ name: Optional[pulumi.Input[str]] = None,
130
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkPolicyShowOutputArgs']]]] = None):
127
131
  """
128
132
  Input properties used for looking up and filtering NetworkPolicy resources.
129
133
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_ip_lists: Specifies one or more IPv4 addresses (CIDR notation) that are allowed access to your Snowflake account.
130
134
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_network_rule_lists: Specifies a list of fully qualified network rules that contain the network identifiers that are allowed access to Snowflake.
131
- :param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_ip_lists: Specifies one or more IPv4 addresses (CIDR notation) that are denied access to your Snowflake account\\n\\n\\n\\n**Do not** add `0.0.0.0/0` to `blocked_ip_list`.
135
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_ip_lists: Specifies one or more IPv4 addresses (CIDR notation) that are denied access to your Snowflake account. **Do not** add `0.0.0.0/0` to `blocked_ip_list`, in order to block all IP addresses except a select list, you only need to add IP addresses to `allowed_ip_list`.
132
136
  :param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_network_rule_lists: Specifies a list of fully qualified network rules that contain the network identifiers that are denied access to Snowflake.
133
137
  :param pulumi.Input[str] comment: Specifies a comment for the network policy.
138
+ :param pulumi.Input[Sequence[pulumi.Input['NetworkPolicyDescribeOutputArgs']]] describe_outputs: Outputs the result of `DESCRIBE NETWORK POLICY` for the given network policy.
134
139
  :param pulumi.Input[str] name: Specifies the identifier for the network policy; must be unique for the account in which the network policy is created.
140
+ :param pulumi.Input[Sequence[pulumi.Input['NetworkPolicyShowOutputArgs']]] show_outputs: Outputs the result of `SHOW NETWORK POLICIES` for the given network policy.
135
141
  """
136
142
  if allowed_ip_lists is not None:
137
143
  pulumi.set(__self__, "allowed_ip_lists", allowed_ip_lists)
@@ -143,8 +149,12 @@ class _NetworkPolicyState:
143
149
  pulumi.set(__self__, "blocked_network_rule_lists", blocked_network_rule_lists)
144
150
  if comment is not None:
145
151
  pulumi.set(__self__, "comment", comment)
152
+ if describe_outputs is not None:
153
+ pulumi.set(__self__, "describe_outputs", describe_outputs)
146
154
  if name is not None:
147
155
  pulumi.set(__self__, "name", name)
156
+ if show_outputs is not None:
157
+ pulumi.set(__self__, "show_outputs", show_outputs)
148
158
 
149
159
  @property
150
160
  @pulumi.getter(name="allowedIpLists")
@@ -174,7 +184,7 @@ class _NetworkPolicyState:
174
184
  @pulumi.getter(name="blockedIpLists")
175
185
  def blocked_ip_lists(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
176
186
  """
177
- Specifies one or more IPv4 addresses (CIDR notation) that are denied access to your Snowflake account\\n\\n\\n\\n**Do not** add `0.0.0.0/0` to `blocked_ip_list`.
187
+ Specifies one or more IPv4 addresses (CIDR notation) that are denied access to your Snowflake account. **Do not** add `0.0.0.0/0` to `blocked_ip_list`, in order to block all IP addresses except a select list, you only need to add IP addresses to `allowed_ip_list`.
178
188
  """
179
189
  return pulumi.get(self, "blocked_ip_lists")
180
190
 
@@ -206,6 +216,18 @@ class _NetworkPolicyState:
206
216
  def comment(self, value: Optional[pulumi.Input[str]]):
207
217
  pulumi.set(self, "comment", value)
208
218
 
219
+ @property
220
+ @pulumi.getter(name="describeOutputs")
221
+ def describe_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworkPolicyDescribeOutputArgs']]]]:
222
+ """
223
+ Outputs the result of `DESCRIBE NETWORK POLICY` for the given network policy.
224
+ """
225
+ return pulumi.get(self, "describe_outputs")
226
+
227
+ @describe_outputs.setter
228
+ def describe_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkPolicyDescribeOutputArgs']]]]):
229
+ pulumi.set(self, "describe_outputs", value)
230
+
209
231
  @property
210
232
  @pulumi.getter
211
233
  def name(self) -> Optional[pulumi.Input[str]]:
@@ -218,6 +240,18 @@ class _NetworkPolicyState:
218
240
  def name(self, value: Optional[pulumi.Input[str]]):
219
241
  pulumi.set(self, "name", value)
220
242
 
243
+ @property
244
+ @pulumi.getter(name="showOutputs")
245
+ def show_outputs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['NetworkPolicyShowOutputArgs']]]]:
246
+ """
247
+ Outputs the result of `SHOW NETWORK POLICIES` for the given network policy.
248
+ """
249
+ return pulumi.get(self, "show_outputs")
250
+
251
+ @show_outputs.setter
252
+ def show_outputs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['NetworkPolicyShowOutputArgs']]]]):
253
+ pulumi.set(self, "show_outputs", value)
254
+
221
255
 
222
256
  class NetworkPolicy(pulumi.CustomResource):
223
257
  @overload
@@ -232,19 +266,32 @@ class NetworkPolicy(pulumi.CustomResource):
232
266
  name: Optional[pulumi.Input[str]] = None,
233
267
  __props__=None):
234
268
  """
235
- ## Example Usage
269
+ !> **V1 release candidate** This resource 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 resource if needed. Any errors reported will be resolved with a higher priority. We encourage checking this resource out before the V1 release. Please follow the migration guide to use it.
270
+
271
+ Resource used to control network traffic. For more information, check an [official guide](https://docs.snowflake.com/en/user-guide/network-policies) on controlling network traffic with network policies.
236
272
 
237
- ## Import
273
+ ## Minimal
238
274
 
239
- ```sh
240
- $ pulumi import snowflake:index/networkPolicy:NetworkPolicy example policyname
241
- ```
275
+ resource "NetworkPolicy" "basic" {
276
+ name = "network_policy_name"
277
+ }
278
+
279
+ ## Complete (with every optional set)
280
+
281
+ resource "NetworkPolicy" "basic" {
282
+ name = "network_policy_name"
283
+ allowed_network_rule_list = ["<fully qualified network rule id>"]
284
+ blocked_network_rule_list = ["<fully qualified network rule id>"]
285
+ allowed_ip_list = ["192.168.1.0/24"]
286
+ blocked_ip_list = ["192.168.1.99"]
287
+ comment = "my network policy"
288
+ }
242
289
 
243
290
  :param str resource_name: The name of the resource.
244
291
  :param pulumi.ResourceOptions opts: Options for the resource.
245
292
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_ip_lists: Specifies one or more IPv4 addresses (CIDR notation) that are allowed access to your Snowflake account.
246
293
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_network_rule_lists: Specifies a list of fully qualified network rules that contain the network identifiers that are allowed access to Snowflake.
247
- :param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_ip_lists: Specifies one or more IPv4 addresses (CIDR notation) that are denied access to your Snowflake account\\n\\n\\n\\n**Do not** add `0.0.0.0/0` to `blocked_ip_list`.
294
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_ip_lists: Specifies one or more IPv4 addresses (CIDR notation) that are denied access to your Snowflake account. **Do not** add `0.0.0.0/0` to `blocked_ip_list`, in order to block all IP addresses except a select list, you only need to add IP addresses to `allowed_ip_list`.
248
295
  :param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_network_rule_lists: Specifies a list of fully qualified network rules that contain the network identifiers that are denied access to Snowflake.
249
296
  :param pulumi.Input[str] comment: Specifies a comment for the network policy.
250
297
  :param pulumi.Input[str] name: Specifies the identifier for the network policy; must be unique for the account in which the network policy is created.
@@ -256,13 +303,26 @@ class NetworkPolicy(pulumi.CustomResource):
256
303
  args: Optional[NetworkPolicyArgs] = None,
257
304
  opts: Optional[pulumi.ResourceOptions] = None):
258
305
  """
259
- ## Example Usage
306
+ !> **V1 release candidate** This resource 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 resource if needed. Any errors reported will be resolved with a higher priority. We encourage checking this resource out before the V1 release. Please follow the migration guide to use it.
307
+
308
+ Resource used to control network traffic. For more information, check an [official guide](https://docs.snowflake.com/en/user-guide/network-policies) on controlling network traffic with network policies.
309
+
310
+ ## Minimal
260
311
 
261
- ## Import
312
+ resource "NetworkPolicy" "basic" {
313
+ name = "network_policy_name"
314
+ }
262
315
 
263
- ```sh
264
- $ pulumi import snowflake:index/networkPolicy:NetworkPolicy example policyname
265
- ```
316
+ ## Complete (with every optional set)
317
+
318
+ resource "NetworkPolicy" "basic" {
319
+ name = "network_policy_name"
320
+ allowed_network_rule_list = ["<fully qualified network rule id>"]
321
+ blocked_network_rule_list = ["<fully qualified network rule id>"]
322
+ allowed_ip_list = ["192.168.1.0/24"]
323
+ blocked_ip_list = ["192.168.1.99"]
324
+ comment = "my network policy"
325
+ }
266
326
 
267
327
  :param str resource_name: The name of the resource.
268
328
  :param NetworkPolicyArgs args: The arguments to use to populate this resource's properties.
@@ -300,6 +360,8 @@ class NetworkPolicy(pulumi.CustomResource):
300
360
  __props__.__dict__["blocked_network_rule_lists"] = blocked_network_rule_lists
301
361
  __props__.__dict__["comment"] = comment
302
362
  __props__.__dict__["name"] = name
363
+ __props__.__dict__["describe_outputs"] = None
364
+ __props__.__dict__["show_outputs"] = None
303
365
  super(NetworkPolicy, __self__).__init__(
304
366
  'snowflake:index/networkPolicy:NetworkPolicy',
305
367
  resource_name,
@@ -315,7 +377,9 @@ class NetworkPolicy(pulumi.CustomResource):
315
377
  blocked_ip_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
316
378
  blocked_network_rule_lists: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
317
379
  comment: Optional[pulumi.Input[str]] = None,
318
- name: Optional[pulumi.Input[str]] = None) -> 'NetworkPolicy':
380
+ describe_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NetworkPolicyDescribeOutputArgs']]]]] = None,
381
+ name: Optional[pulumi.Input[str]] = None,
382
+ show_outputs: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NetworkPolicyShowOutputArgs']]]]] = None) -> 'NetworkPolicy':
319
383
  """
320
384
  Get an existing NetworkPolicy resource's state with the given name, id, and optional extra
321
385
  properties used to qualify the lookup.
@@ -325,10 +389,12 @@ class NetworkPolicy(pulumi.CustomResource):
325
389
  :param pulumi.ResourceOptions opts: Options for the resource.
326
390
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_ip_lists: Specifies one or more IPv4 addresses (CIDR notation) that are allowed access to your Snowflake account.
327
391
  :param pulumi.Input[Sequence[pulumi.Input[str]]] allowed_network_rule_lists: Specifies a list of fully qualified network rules that contain the network identifiers that are allowed access to Snowflake.
328
- :param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_ip_lists: Specifies one or more IPv4 addresses (CIDR notation) that are denied access to your Snowflake account\\n\\n\\n\\n**Do not** add `0.0.0.0/0` to `blocked_ip_list`.
392
+ :param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_ip_lists: Specifies one or more IPv4 addresses (CIDR notation) that are denied access to your Snowflake account. **Do not** add `0.0.0.0/0` to `blocked_ip_list`, in order to block all IP addresses except a select list, you only need to add IP addresses to `allowed_ip_list`.
329
393
  :param pulumi.Input[Sequence[pulumi.Input[str]]] blocked_network_rule_lists: Specifies a list of fully qualified network rules that contain the network identifiers that are denied access to Snowflake.
330
394
  :param pulumi.Input[str] comment: Specifies a comment for the network policy.
395
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NetworkPolicyDescribeOutputArgs']]]] describe_outputs: Outputs the result of `DESCRIBE NETWORK POLICY` for the given network policy.
331
396
  :param pulumi.Input[str] name: Specifies the identifier for the network policy; must be unique for the account in which the network policy is created.
397
+ :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['NetworkPolicyShowOutputArgs']]]] show_outputs: Outputs the result of `SHOW NETWORK POLICIES` for the given network policy.
332
398
  """
333
399
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
334
400
 
@@ -339,7 +405,9 @@ class NetworkPolicy(pulumi.CustomResource):
339
405
  __props__.__dict__["blocked_ip_lists"] = blocked_ip_lists
340
406
  __props__.__dict__["blocked_network_rule_lists"] = blocked_network_rule_lists
341
407
  __props__.__dict__["comment"] = comment
408
+ __props__.__dict__["describe_outputs"] = describe_outputs
342
409
  __props__.__dict__["name"] = name
410
+ __props__.__dict__["show_outputs"] = show_outputs
343
411
  return NetworkPolicy(resource_name, opts=opts, __props__=__props__)
344
412
 
345
413
  @property
@@ -362,7 +430,7 @@ class NetworkPolicy(pulumi.CustomResource):
362
430
  @pulumi.getter(name="blockedIpLists")
363
431
  def blocked_ip_lists(self) -> pulumi.Output[Optional[Sequence[str]]]:
364
432
  """
365
- Specifies one or more IPv4 addresses (CIDR notation) that are denied access to your Snowflake account\\n\\n\\n\\n**Do not** add `0.0.0.0/0` to `blocked_ip_list`.
433
+ Specifies one or more IPv4 addresses (CIDR notation) that are denied access to your Snowflake account. **Do not** add `0.0.0.0/0` to `blocked_ip_list`, in order to block all IP addresses except a select list, you only need to add IP addresses to `allowed_ip_list`.
366
434
  """
367
435
  return pulumi.get(self, "blocked_ip_lists")
368
436
 
@@ -382,6 +450,14 @@ class NetworkPolicy(pulumi.CustomResource):
382
450
  """
383
451
  return pulumi.get(self, "comment")
384
452
 
453
+ @property
454
+ @pulumi.getter(name="describeOutputs")
455
+ def describe_outputs(self) -> pulumi.Output[Sequence['outputs.NetworkPolicyDescribeOutput']]:
456
+ """
457
+ Outputs the result of `DESCRIBE NETWORK POLICY` for the given network policy.
458
+ """
459
+ return pulumi.get(self, "describe_outputs")
460
+
385
461
  @property
386
462
  @pulumi.getter
387
463
  def name(self) -> pulumi.Output[str]:
@@ -390,3 +466,11 @@ class NetworkPolicy(pulumi.CustomResource):
390
466
  """
391
467
  return pulumi.get(self, "name")
392
468
 
469
+ @property
470
+ @pulumi.getter(name="showOutputs")
471
+ def show_outputs(self) -> pulumi.Output[Sequence['outputs.NetworkPolicyShowOutput']]:
472
+ """
473
+ Outputs the result of `SHOW NETWORK POLICIES` for the given network policy.
474
+ """
475
+ return pulumi.get(self, "show_outputs")
476
+
@@ -379,6 +379,8 @@ class OauthIntegration(pulumi.CustomResource):
379
379
  oauth_use_secondary_roles: Optional[pulumi.Input[str]] = None,
380
380
  __props__=None):
381
381
  """
382
+ > **Deprecation** This resource is deprecated and will be removed in a future major version release. Please use OauthIntegrationForCustomClients or OauthIntegrationForPartnerApplications instead. <deprecation>
383
+
382
384
  ## Example Usage
383
385
 
384
386
  ```python
@@ -420,6 +422,8 @@ class OauthIntegration(pulumi.CustomResource):
420
422
  args: OauthIntegrationArgs,
421
423
  opts: Optional[pulumi.ResourceOptions] = None):
422
424
  """
425
+ > **Deprecation** This resource is deprecated and will be removed in a future major version release. Please use OauthIntegrationForCustomClients or OauthIntegrationForPartnerApplications instead. <deprecation>
426
+
423
427
  ## Example Usage
424
428
 
425
429
  ```python