pulumi-minio 0.15.3a1710156563__py3-none-any.whl → 0.17.0a1736834116__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.
pulumi_minio/_inputs.py CHANGED
@@ -4,19 +4,45 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
 
12
17
  __all__ = [
13
18
  'IlmPolicyRuleArgs',
19
+ 'IlmPolicyRuleArgsDict',
14
20
  'S3BucketNotificationQueueArgs',
21
+ 'S3BucketNotificationQueueArgsDict',
15
22
  'S3BucketVersioningVersioningConfigurationArgs',
23
+ 'S3BucketVersioningVersioningConfigurationArgsDict',
16
24
  'GetIamPolicyDocumentStatementArgs',
25
+ 'GetIamPolicyDocumentStatementArgsDict',
17
26
  'GetIamPolicyDocumentStatementConditionArgs',
27
+ 'GetIamPolicyDocumentStatementConditionArgsDict',
18
28
  ]
19
29
 
30
+ MYPY = False
31
+
32
+ if not MYPY:
33
+ class IlmPolicyRuleArgsDict(TypedDict):
34
+ id: pulumi.Input[str]
35
+ """
36
+ The ID of this resource.
37
+ """
38
+ expiration: NotRequired[pulumi.Input[str]]
39
+ filter: NotRequired[pulumi.Input[str]]
40
+ noncurrent_version_expiration_days: NotRequired[pulumi.Input[int]]
41
+ status: NotRequired[pulumi.Input[str]]
42
+ tags: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]]
43
+ elif False:
44
+ IlmPolicyRuleArgsDict: TypeAlias = Mapping[str, Any]
45
+
20
46
  @pulumi.input_type
21
47
  class IlmPolicyRuleArgs:
22
48
  def __init__(__self__, *,
@@ -25,7 +51,7 @@ class IlmPolicyRuleArgs:
25
51
  filter: Optional[pulumi.Input[str]] = None,
26
52
  noncurrent_version_expiration_days: Optional[pulumi.Input[int]] = None,
27
53
  status: Optional[pulumi.Input[str]] = None,
28
- tags: Optional[pulumi.Input[Mapping[str, Any]]] = None):
54
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None):
29
55
  """
30
56
  :param pulumi.Input[str] id: The ID of this resource.
31
57
  """
@@ -91,14 +117,27 @@ class IlmPolicyRuleArgs:
91
117
 
92
118
  @property
93
119
  @pulumi.getter
94
- def tags(self) -> Optional[pulumi.Input[Mapping[str, Any]]]:
120
+ def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
95
121
  return pulumi.get(self, "tags")
96
122
 
97
123
  @tags.setter
98
- def tags(self, value: Optional[pulumi.Input[Mapping[str, Any]]]):
124
+ def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
99
125
  pulumi.set(self, "tags", value)
100
126
 
101
127
 
128
+ if not MYPY:
129
+ class S3BucketNotificationQueueArgsDict(TypedDict):
130
+ events: pulumi.Input[Sequence[pulumi.Input[str]]]
131
+ queue_arn: pulumi.Input[str]
132
+ filter_prefix: NotRequired[pulumi.Input[str]]
133
+ filter_suffix: NotRequired[pulumi.Input[str]]
134
+ id: NotRequired[pulumi.Input[str]]
135
+ """
136
+ The ID of this resource.
137
+ """
138
+ elif False:
139
+ S3BucketNotificationQueueArgsDict: TypeAlias = Mapping[str, Any]
140
+
102
141
  @pulumi.input_type
103
142
  class S3BucketNotificationQueueArgs:
104
143
  def __init__(__self__, *,
@@ -168,6 +207,14 @@ class S3BucketNotificationQueueArgs:
168
207
  pulumi.set(self, "id", value)
169
208
 
170
209
 
210
+ if not MYPY:
211
+ class S3BucketVersioningVersioningConfigurationArgsDict(TypedDict):
212
+ status: pulumi.Input[str]
213
+ exclude_folders: NotRequired[pulumi.Input[bool]]
214
+ excluded_prefixes: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
215
+ elif False:
216
+ S3BucketVersioningVersioningConfigurationArgsDict: TypeAlias = Mapping[str, Any]
217
+
171
218
  @pulumi.input_type
172
219
  class S3BucketVersioningVersioningConfigurationArgs:
173
220
  def __init__(__self__, *,
@@ -208,6 +255,17 @@ class S3BucketVersioningVersioningConfigurationArgs:
208
255
  pulumi.set(self, "excluded_prefixes", value)
209
256
 
210
257
 
258
+ if not MYPY:
259
+ class GetIamPolicyDocumentStatementArgsDict(TypedDict):
260
+ actions: NotRequired[Sequence[str]]
261
+ conditions: NotRequired[Sequence['GetIamPolicyDocumentStatementConditionArgsDict']]
262
+ effect: NotRequired[str]
263
+ principal: NotRequired[str]
264
+ resources: NotRequired[Sequence[str]]
265
+ sid: NotRequired[str]
266
+ elif False:
267
+ GetIamPolicyDocumentStatementArgsDict: TypeAlias = Mapping[str, Any]
268
+
211
269
  @pulumi.input_type
212
270
  class GetIamPolicyDocumentStatementArgs:
213
271
  def __init__(__self__, *,
@@ -285,6 +343,14 @@ class GetIamPolicyDocumentStatementArgs:
285
343
  pulumi.set(self, "sid", value)
286
344
 
287
345
 
346
+ if not MYPY:
347
+ class GetIamPolicyDocumentStatementConditionArgsDict(TypedDict):
348
+ test: str
349
+ values: Sequence[str]
350
+ variable: str
351
+ elif False:
352
+ GetIamPolicyDocumentStatementConditionArgsDict: TypeAlias = Mapping[str, Any]
353
+
288
354
  @pulumi.input_type
289
355
  class GetIamPolicyDocumentStatementConditionArgs:
290
356
  def __init__(__self__, *,
@@ -4,6 +4,7 @@
4
4
 
5
5
 
6
6
  import asyncio
7
+ import functools
7
8
  import importlib.metadata
8
9
  import importlib.util
9
10
  import inspect
@@ -11,14 +12,19 @@ import json
11
12
  import os
12
13
  import sys
13
14
  import typing
15
+ import warnings
16
+ import base64
14
17
 
15
18
  import pulumi
16
19
  import pulumi.runtime
17
20
  from pulumi.runtime.sync_await import _sync_await
21
+ from pulumi.runtime.proto import resource_pb2
18
22
 
19
23
  from semver import VersionInfo as SemverVersion
20
24
  from parver import Version as PEP440Version
21
25
 
26
+ C = typing.TypeVar("C", bound=typing.Callable)
27
+
22
28
 
23
29
  def get_env(*args):
24
30
  for v in args:
@@ -96,10 +102,6 @@ def _get_semver_version():
96
102
  _version = _get_semver_version()
97
103
  _version_str = str(_version)
98
104
 
99
-
100
- def get_version():
101
- return _version_str
102
-
103
105
  def get_resource_opts_defaults() -> pulumi.ResourceOptions:
104
106
  return pulumi.ResourceOptions(
105
107
  version=get_version(),
@@ -262,7 +264,7 @@ def call_plain(
262
264
  output = pulumi.runtime.call(tok, props, res, typ)
263
265
 
264
266
  # Ingoring deps silently. They are typically non-empty, r.f() calls include r as a dependency.
265
- result, known, secret, _ = _sync_await(asyncio.ensure_future(_await_output(output)))
267
+ result, known, secret, _ = _sync_await(asyncio.create_task(_await_output(output)))
266
268
 
267
269
  problem = None
268
270
  if not known:
@@ -287,5 +289,39 @@ async def _await_output(o: pulumi.Output[typing.Any]) -> typing.Tuple[object, bo
287
289
  await o._resources,
288
290
  )
289
291
 
292
+
293
+ # This is included to provide an upgrade path for users who are using a version
294
+ # of the Pulumi SDK (<3.121.0) that does not include the `deprecated` decorator.
295
+ def deprecated(message: str) -> typing.Callable[[C], C]:
296
+ """
297
+ Decorator to indicate a function is deprecated.
298
+
299
+ As well as inserting appropriate statements to indicate that the function is
300
+ deprecated, this decorator also tags the function with a special attribute
301
+ so that Pulumi code can detect that it is deprecated and react appropriately
302
+ in certain situations.
303
+
304
+ message is the deprecation message that should be printed if the function is called.
305
+ """
306
+
307
+ def decorator(fn: C) -> C:
308
+ if not callable(fn):
309
+ raise TypeError("Expected fn to be callable")
310
+
311
+ @functools.wraps(fn)
312
+ def deprecated_fn(*args, **kwargs):
313
+ warnings.warn(message)
314
+ pulumi.warn(f"{fn.__name__} is deprecated: {message}")
315
+
316
+ return fn(*args, **kwargs)
317
+
318
+ deprecated_fn.__dict__["_pulumi_deprecated_callable"] = fn
319
+ return typing.cast(C, deprecated_fn)
320
+
321
+ return decorator
322
+
290
323
  def get_plugin_download_url():
291
324
  return None
325
+
326
+ def get_version():
327
+ return _version_str
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from .. import _utilities
11
16
 
12
17
  minioAccessKey: Optional[str]
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from .. import _utilities
11
16
 
12
17
  import types
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
  from . import outputs
12
17
  from ._inputs import *
@@ -103,49 +108,49 @@ class AwaitableGetIamPolicyDocumentResult(GetIamPolicyDocumentResult):
103
108
  def get_iam_policy_document(override_json: Optional[str] = None,
104
109
  policy_id: Optional[str] = None,
105
110
  source_json: Optional[str] = None,
106
- statements: Optional[Sequence[pulumi.InputType['GetIamPolicyDocumentStatementArgs']]] = None,
111
+ statements: Optional[Sequence[Union['GetIamPolicyDocumentStatementArgs', 'GetIamPolicyDocumentStatementArgsDict']]] = None,
107
112
  version: Optional[str] = None,
108
113
  opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetIamPolicyDocumentResult:
109
114
  """
110
115
  ## Example Usage
111
116
 
112
- <!--Start PulumiCodeChooser -->
113
117
  ```python
114
118
  import pulumi
115
119
  import pulumi_minio as minio
116
120
 
117
121
  example = minio.get_iam_policy_document(statements=[
118
- minio.GetIamPolicyDocumentStatementArgs(
119
- sid="1",
120
- actions=[
122
+ {
123
+ "sid": "1",
124
+ "actions": [
121
125
  "s3:ListAllMyBuckets",
122
126
  "s3:GetBucketLocation",
123
127
  ],
124
- resources=["arn:aws:s3:::*"],
125
- ),
126
- minio.GetIamPolicyDocumentStatementArgs(
127
- actions=["s3:ListBucket"],
128
- resources=["arn:aws:s3:::state-terraform-s3"],
129
- conditions=[minio.GetIamPolicyDocumentStatementConditionArgs(
130
- test="StringLike",
131
- variable="s3:prefix",
132
- values=[
128
+ "resources": ["arn:aws:s3:::*"],
129
+ },
130
+ {
131
+ "actions": ["s3:ListBucket"],
132
+ "resources": ["arn:aws:s3:::state-terraform-s3"],
133
+ "conditions": [{
134
+ "test": "StringLike",
135
+ "variable": "s3:prefix",
136
+ "values": [
133
137
  "",
134
138
  "home/",
135
139
  ],
136
- )],
137
- ),
138
- minio.GetIamPolicyDocumentStatementArgs(
139
- actions=["s3:PutObject"],
140
- resources=[
140
+ }],
141
+ },
142
+ {
143
+ "actions": ["s3:PutObject"],
144
+ "resources": [
141
145
  "arn:aws:s3:::state-terraform-s3",
142
146
  "arn:aws:s3:::state-terraform-s3/*",
143
147
  ],
144
- ),
148
+ },
145
149
  ])
146
- test_policy = minio.IamPolicy("testPolicy", policy=example.json)
150
+ test_policy = minio.IamPolicy("test_policy",
151
+ name="state-terraform-s3",
152
+ policy=example.json)
147
153
  ```
148
- <!--End PulumiCodeChooser -->
149
154
  """
150
155
  __args__ = dict()
151
156
  __args__['overrideJson'] = override_json
@@ -164,54 +169,66 @@ def get_iam_policy_document(override_json: Optional[str] = None,
164
169
  source_json=pulumi.get(__ret__, 'source_json'),
165
170
  statements=pulumi.get(__ret__, 'statements'),
166
171
  version=pulumi.get(__ret__, 'version'))
167
-
168
-
169
- @_utilities.lift_output_func(get_iam_policy_document)
170
172
  def get_iam_policy_document_output(override_json: Optional[pulumi.Input[Optional[str]]] = None,
171
173
  policy_id: Optional[pulumi.Input[Optional[str]]] = None,
172
174
  source_json: Optional[pulumi.Input[Optional[str]]] = None,
173
- statements: Optional[pulumi.Input[Optional[Sequence[pulumi.InputType['GetIamPolicyDocumentStatementArgs']]]]] = None,
175
+ statements: Optional[pulumi.Input[Optional[Sequence[Union['GetIamPolicyDocumentStatementArgs', 'GetIamPolicyDocumentStatementArgsDict']]]]] = None,
174
176
  version: Optional[pulumi.Input[Optional[str]]] = None,
175
- opts: Optional[pulumi.InvokeOptions] = None) -> pulumi.Output[GetIamPolicyDocumentResult]:
177
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetIamPolicyDocumentResult]:
176
178
  """
177
179
  ## Example Usage
178
180
 
179
- <!--Start PulumiCodeChooser -->
180
181
  ```python
181
182
  import pulumi
182
183
  import pulumi_minio as minio
183
184
 
184
185
  example = minio.get_iam_policy_document(statements=[
185
- minio.GetIamPolicyDocumentStatementArgs(
186
- sid="1",
187
- actions=[
186
+ {
187
+ "sid": "1",
188
+ "actions": [
188
189
  "s3:ListAllMyBuckets",
189
190
  "s3:GetBucketLocation",
190
191
  ],
191
- resources=["arn:aws:s3:::*"],
192
- ),
193
- minio.GetIamPolicyDocumentStatementArgs(
194
- actions=["s3:ListBucket"],
195
- resources=["arn:aws:s3:::state-terraform-s3"],
196
- conditions=[minio.GetIamPolicyDocumentStatementConditionArgs(
197
- test="StringLike",
198
- variable="s3:prefix",
199
- values=[
192
+ "resources": ["arn:aws:s3:::*"],
193
+ },
194
+ {
195
+ "actions": ["s3:ListBucket"],
196
+ "resources": ["arn:aws:s3:::state-terraform-s3"],
197
+ "conditions": [{
198
+ "test": "StringLike",
199
+ "variable": "s3:prefix",
200
+ "values": [
200
201
  "",
201
202
  "home/",
202
203
  ],
203
- )],
204
- ),
205
- minio.GetIamPolicyDocumentStatementArgs(
206
- actions=["s3:PutObject"],
207
- resources=[
204
+ }],
205
+ },
206
+ {
207
+ "actions": ["s3:PutObject"],
208
+ "resources": [
208
209
  "arn:aws:s3:::state-terraform-s3",
209
210
  "arn:aws:s3:::state-terraform-s3/*",
210
211
  ],
211
- ),
212
+ },
212
213
  ])
213
- test_policy = minio.IamPolicy("testPolicy", policy=example.json)
214
+ test_policy = minio.IamPolicy("test_policy",
215
+ name="state-terraform-s3",
216
+ policy=example.json)
214
217
  ```
215
- <!--End PulumiCodeChooser -->
216
218
  """
217
- ...
219
+ __args__ = dict()
220
+ __args__['overrideJson'] = override_json
221
+ __args__['policyId'] = policy_id
222
+ __args__['sourceJson'] = source_json
223
+ __args__['statements'] = statements
224
+ __args__['version'] = version
225
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
226
+ __ret__ = pulumi.runtime.invoke_output('minio:index/getIamPolicyDocument:getIamPolicyDocument', __args__, opts=opts, typ=GetIamPolicyDocumentResult)
227
+ return __ret__.apply(lambda __response__: GetIamPolicyDocumentResult(
228
+ id=pulumi.get(__response__, 'id'),
229
+ json=pulumi.get(__response__, 'json'),
230
+ override_json=pulumi.get(__response__, 'override_json'),
231
+ policy_id=pulumi.get(__response__, 'policy_id'),
232
+ source_json=pulumi.get(__response__, 'source_json'),
233
+ statements=pulumi.get(__response__, 'statements'),
234
+ version=pulumi.get(__response__, 'version')))
pulumi_minio/iam_group.py CHANGED
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
 
12
17
  __all__ = ['IamGroupArgs', 'IamGroup']
@@ -20,7 +25,6 @@ class IamGroupArgs:
20
25
  """
21
26
  The set of arguments for constructing a IamGroup resource.
22
27
  :param pulumi.Input[bool] disable_group: Disable group
23
- :param pulumi.Input[bool] force_destroy: Delete group even if it has non-Terraform-managed members
24
28
  """
25
29
  if disable_group is not None:
26
30
  pulumi.set(__self__, "disable_group", disable_group)
@@ -44,9 +48,6 @@ class IamGroupArgs:
44
48
  @property
45
49
  @pulumi.getter(name="forceDestroy")
46
50
  def force_destroy(self) -> Optional[pulumi.Input[bool]]:
47
- """
48
- Delete group even if it has non-Terraform-managed members
49
- """
50
51
  return pulumi.get(self, "force_destroy")
51
52
 
52
53
  @force_destroy.setter
@@ -73,7 +74,6 @@ class _IamGroupState:
73
74
  """
74
75
  Input properties used for looking up and filtering IamGroup resources.
75
76
  :param pulumi.Input[bool] disable_group: Disable group
76
- :param pulumi.Input[bool] force_destroy: Delete group even if it has non-Terraform-managed members
77
77
  """
78
78
  if disable_group is not None:
79
79
  pulumi.set(__self__, "disable_group", disable_group)
@@ -99,9 +99,6 @@ class _IamGroupState:
99
99
  @property
100
100
  @pulumi.getter(name="forceDestroy")
101
101
  def force_destroy(self) -> Optional[pulumi.Input[bool]]:
102
- """
103
- Delete group even if it has non-Terraform-managed members
104
- """
105
102
  return pulumi.get(self, "force_destroy")
106
103
 
107
104
  @force_destroy.setter
@@ -139,20 +136,17 @@ class IamGroup(pulumi.CustomResource):
139
136
  """
140
137
  ## Example Usage
141
138
 
142
- <!--Start PulumiCodeChooser -->
143
139
  ```python
144
140
  import pulumi
145
141
  import pulumi_minio as minio
146
142
 
147
- developer = minio.IamGroup("developer")
143
+ developer = minio.IamGroup("developer", name="developer")
148
144
  pulumi.export("minioUserGroup", developer.group_name)
149
145
  ```
150
- <!--End PulumiCodeChooser -->
151
146
 
152
147
  :param str resource_name: The name of the resource.
153
148
  :param pulumi.ResourceOptions opts: Options for the resource.
154
149
  :param pulumi.Input[bool] disable_group: Disable group
155
- :param pulumi.Input[bool] force_destroy: Delete group even if it has non-Terraform-managed members
156
150
  """
157
151
  ...
158
152
  @overload
@@ -163,15 +157,13 @@ class IamGroup(pulumi.CustomResource):
163
157
  """
164
158
  ## Example Usage
165
159
 
166
- <!--Start PulumiCodeChooser -->
167
160
  ```python
168
161
  import pulumi
169
162
  import pulumi_minio as minio
170
163
 
171
- developer = minio.IamGroup("developer")
164
+ developer = minio.IamGroup("developer", name="developer")
172
165
  pulumi.export("minioUserGroup", developer.group_name)
173
166
  ```
174
- <!--End PulumiCodeChooser -->
175
167
 
176
168
  :param str resource_name: The name of the resource.
177
169
  :param IamGroupArgs args: The arguments to use to populate this resource's properties.
@@ -226,7 +218,6 @@ class IamGroup(pulumi.CustomResource):
226
218
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
227
219
  :param pulumi.ResourceOptions opts: Options for the resource.
228
220
  :param pulumi.Input[bool] disable_group: Disable group
229
- :param pulumi.Input[bool] force_destroy: Delete group even if it has non-Terraform-managed members
230
221
  """
231
222
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
232
223
 
@@ -249,9 +240,6 @@ class IamGroup(pulumi.CustomResource):
249
240
  @property
250
241
  @pulumi.getter(name="forceDestroy")
251
242
  def force_destroy(self) -> pulumi.Output[Optional[bool]]:
252
- """
253
- Delete group even if it has non-Terraform-managed members
254
- """
255
243
  return pulumi.get(self, "force_destroy")
256
244
 
257
245
  @property
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
 
12
17
  __all__ = ['IamGroupMembershipArgs', 'IamGroupMembership']
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
 
12
17
  __all__ = ['IamGroupPolicyArgs', 'IamGroupPolicy']
@@ -134,13 +139,13 @@ class IamGroupPolicy(pulumi.CustomResource):
134
139
  """
135
140
  ## Example Usage
136
141
 
137
- <!--Start PulumiCodeChooser -->
138
142
  ```python
139
143
  import pulumi
140
144
  import pulumi_minio as minio
141
145
 
142
- developer = minio.IamGroup("developer")
143
- test_policy = minio.IamGroupPolicy("testPolicy",
146
+ developer = minio.IamGroup("developer", name="developer")
147
+ test_policy = minio.IamGroupPolicy("test_policy",
148
+ name="state-terraform-s3",
144
149
  group=developer.id,
145
150
  policy=\"\"\"{
146
151
  "Version":"2012-10-17",
@@ -154,13 +159,11 @@ class IamGroupPolicy(pulumi.CustomResource):
154
159
  }
155
160
  ]
156
161
  }
157
-
158
162
  \"\"\")
159
- pulumi.export("minioName", minio_iam_group_membership["developer"]["id"])
160
- pulumi.export("minioPolicy", minio_iam_group_membership["developer"]["policy"])
161
- pulumi.export("minioGroup", minio_iam_group_membership["developer"]["group"])
163
+ pulumi.export("minioName", developer_minio_iam_group_membership["id"])
164
+ pulumi.export("minioPolicy", developer_minio_iam_group_membership["policy"])
165
+ pulumi.export("minioGroup", developer_minio_iam_group_membership["group"])
162
166
  ```
163
- <!--End PulumiCodeChooser -->
164
167
 
165
168
  :param str resource_name: The name of the resource.
166
169
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -174,13 +177,13 @@ class IamGroupPolicy(pulumi.CustomResource):
174
177
  """
175
178
  ## Example Usage
176
179
 
177
- <!--Start PulumiCodeChooser -->
178
180
  ```python
179
181
  import pulumi
180
182
  import pulumi_minio as minio
181
183
 
182
- developer = minio.IamGroup("developer")
183
- test_policy = minio.IamGroupPolicy("testPolicy",
184
+ developer = minio.IamGroup("developer", name="developer")
185
+ test_policy = minio.IamGroupPolicy("test_policy",
186
+ name="state-terraform-s3",
184
187
  group=developer.id,
185
188
  policy=\"\"\"{
186
189
  "Version":"2012-10-17",
@@ -194,13 +197,11 @@ class IamGroupPolicy(pulumi.CustomResource):
194
197
  }
195
198
  ]
196
199
  }
197
-
198
200
  \"\"\")
199
- pulumi.export("minioName", minio_iam_group_membership["developer"]["id"])
200
- pulumi.export("minioPolicy", minio_iam_group_membership["developer"]["policy"])
201
- pulumi.export("minioGroup", minio_iam_group_membership["developer"]["group"])
201
+ pulumi.export("minioName", developer_minio_iam_group_membership["id"])
202
+ pulumi.export("minioPolicy", developer_minio_iam_group_membership["policy"])
203
+ pulumi.export("minioGroup", developer_minio_iam_group_membership["group"])
202
204
  ```
203
- <!--End PulumiCodeChooser -->
204
205
 
205
206
  :param str resource_name: The name of the resource.
206
207
  :param IamGroupPolicyArgs args: The arguments to use to populate this resource's properties.
@@ -4,9 +4,14 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
 
12
17
  __all__ = ['IamGroupPolicyAttachmentArgs', 'IamGroupPolicyAttachment']