pulumi-alicloud 3.56.0a1717132537__py3-none-any.whl → 3.56.0a1717175543__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-alicloud might be problematic. Click here for more details.

Files changed (43) hide show
  1. pulumi_alicloud/__init__.py +96 -0
  2. pulumi_alicloud/alikafka/instance.py +47 -0
  3. pulumi_alicloud/apigateway/__init__.py +1 -0
  4. pulumi_alicloud/apigateway/_inputs.py +40 -0
  5. pulumi_alicloud/apigateway/access_control_list.py +322 -0
  6. pulumi_alicloud/apigateway/get_apis.py +96 -23
  7. pulumi_alicloud/apigateway/outputs.py +72 -14
  8. pulumi_alicloud/apigateway/plugin.py +225 -73
  9. pulumi_alicloud/cen/get_transit_router_vpc_attachments.py +171 -18
  10. pulumi_alicloud/cen/outputs.py +51 -22
  11. pulumi_alicloud/cloudfirewall/__init__.py +2 -0
  12. pulumi_alicloud/cloudfirewall/_inputs.py +68 -0
  13. pulumi_alicloud/cloudfirewall/nat_firewall.py +811 -0
  14. pulumi_alicloud/cloudfirewall/nat_firewall_control_policy.py +1589 -0
  15. pulumi_alicloud/cloudfirewall/outputs.py +75 -0
  16. pulumi_alicloud/ecs/security_group_rule.py +75 -53
  17. pulumi_alicloud/ess/_inputs.py +56 -0
  18. pulumi_alicloud/ess/outputs.py +61 -0
  19. pulumi_alicloud/ess/scaling_group.py +101 -7
  20. pulumi_alicloud/kms/key.py +251 -333
  21. pulumi_alicloud/kms/secret.py +210 -125
  22. pulumi_alicloud/nas/__init__.py +2 -0
  23. pulumi_alicloud/nas/_inputs.py +126 -0
  24. pulumi_alicloud/nas/access_point.py +743 -0
  25. pulumi_alicloud/nas/outputs.py +128 -0
  26. pulumi_alicloud/oss/__init__.py +7 -0
  27. pulumi_alicloud/oss/account_public_access_block.py +200 -0
  28. pulumi_alicloud/oss/bucket_access_monitor.py +206 -0
  29. pulumi_alicloud/oss/bucket_data_redundancy_transition.py +290 -0
  30. pulumi_alicloud/oss/bucket_meta_query.py +270 -0
  31. pulumi_alicloud/oss/bucket_public_access_block.py +258 -0
  32. pulumi_alicloud/oss/bucket_transfer_acceleration.py +205 -0
  33. pulumi_alicloud/oss/bucket_user_defined_log_fields.py +328 -0
  34. pulumi_alicloud/pulumi-plugin.json +1 -1
  35. pulumi_alicloud/redis/tair_instance.py +188 -0
  36. pulumi_alicloud/sls/__init__.py +1 -0
  37. pulumi_alicloud/sls/_inputs.py +384 -0
  38. pulumi_alicloud/sls/outputs.py +358 -0
  39. pulumi_alicloud/sls/scheduled_sql.py +523 -0
  40. {pulumi_alicloud-3.56.0a1717132537.dist-info → pulumi_alicloud-3.56.0a1717175543.dist-info}/METADATA +1 -1
  41. {pulumi_alicloud-3.56.0a1717132537.dist-info → pulumi_alicloud-3.56.0a1717175543.dist-info}/RECORD +43 -30
  42. {pulumi_alicloud-3.56.0a1717132537.dist-info → pulumi_alicloud-3.56.0a1717175543.dist-info}/WHEEL +0 -0
  43. {pulumi_alicloud-3.56.0a1717132537.dist-info → pulumi_alicloud-3.56.0a1717175543.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,743 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import copy
6
+ import warnings
7
+ import pulumi
8
+ import pulumi.runtime
9
+ from typing import Any, Mapping, Optional, Sequence, Union, overload
10
+ from .. import _utilities
11
+ from . import outputs
12
+ from ._inputs import *
13
+
14
+ __all__ = ['AccessPointArgs', 'AccessPoint']
15
+
16
+ @pulumi.input_type
17
+ class AccessPointArgs:
18
+ def __init__(__self__, *,
19
+ access_group: pulumi.Input[str],
20
+ file_system_id: pulumi.Input[str],
21
+ vpc_id: pulumi.Input[str],
22
+ vswitch_id: pulumi.Input[str],
23
+ access_point_name: Optional[pulumi.Input[str]] = None,
24
+ enabled_ram: Optional[pulumi.Input[bool]] = None,
25
+ posix_user: Optional[pulumi.Input['AccessPointPosixUserArgs']] = None,
26
+ root_path: Optional[pulumi.Input[str]] = None,
27
+ root_path_permission: Optional[pulumi.Input['AccessPointRootPathPermissionArgs']] = None):
28
+ """
29
+ The set of arguments for constructing a AccessPoint resource.
30
+ :param pulumi.Input[str] access_group: The permission group name.
31
+ :param pulumi.Input[str] file_system_id: The ID of the file system.
32
+ :param pulumi.Input[str] vpc_id: The ID of the VPC.
33
+ :param pulumi.Input[str] vswitch_id: The vSwitch ID.
34
+ :param pulumi.Input[str] access_point_name: The Access Point Name.
35
+ :param pulumi.Input[bool] enabled_ram: Whether to enable the RAM policy.
36
+ :param pulumi.Input['AccessPointPosixUserArgs'] posix_user: The Posix user. See `posix_user` below.
37
+ :param pulumi.Input[str] root_path: The root directory.
38
+ :param pulumi.Input['AccessPointRootPathPermissionArgs'] root_path_permission: Root permissions. See `root_path_permission` below.
39
+ """
40
+ pulumi.set(__self__, "access_group", access_group)
41
+ pulumi.set(__self__, "file_system_id", file_system_id)
42
+ pulumi.set(__self__, "vpc_id", vpc_id)
43
+ pulumi.set(__self__, "vswitch_id", vswitch_id)
44
+ if access_point_name is not None:
45
+ pulumi.set(__self__, "access_point_name", access_point_name)
46
+ if enabled_ram is not None:
47
+ pulumi.set(__self__, "enabled_ram", enabled_ram)
48
+ if posix_user is not None:
49
+ pulumi.set(__self__, "posix_user", posix_user)
50
+ if root_path is not None:
51
+ pulumi.set(__self__, "root_path", root_path)
52
+ if root_path_permission is not None:
53
+ pulumi.set(__self__, "root_path_permission", root_path_permission)
54
+
55
+ @property
56
+ @pulumi.getter(name="accessGroup")
57
+ def access_group(self) -> pulumi.Input[str]:
58
+ """
59
+ The permission group name.
60
+ """
61
+ return pulumi.get(self, "access_group")
62
+
63
+ @access_group.setter
64
+ def access_group(self, value: pulumi.Input[str]):
65
+ pulumi.set(self, "access_group", value)
66
+
67
+ @property
68
+ @pulumi.getter(name="fileSystemId")
69
+ def file_system_id(self) -> pulumi.Input[str]:
70
+ """
71
+ The ID of the file system.
72
+ """
73
+ return pulumi.get(self, "file_system_id")
74
+
75
+ @file_system_id.setter
76
+ def file_system_id(self, value: pulumi.Input[str]):
77
+ pulumi.set(self, "file_system_id", value)
78
+
79
+ @property
80
+ @pulumi.getter(name="vpcId")
81
+ def vpc_id(self) -> pulumi.Input[str]:
82
+ """
83
+ The ID of the VPC.
84
+ """
85
+ return pulumi.get(self, "vpc_id")
86
+
87
+ @vpc_id.setter
88
+ def vpc_id(self, value: pulumi.Input[str]):
89
+ pulumi.set(self, "vpc_id", value)
90
+
91
+ @property
92
+ @pulumi.getter(name="vswitchId")
93
+ def vswitch_id(self) -> pulumi.Input[str]:
94
+ """
95
+ The vSwitch ID.
96
+ """
97
+ return pulumi.get(self, "vswitch_id")
98
+
99
+ @vswitch_id.setter
100
+ def vswitch_id(self, value: pulumi.Input[str]):
101
+ pulumi.set(self, "vswitch_id", value)
102
+
103
+ @property
104
+ @pulumi.getter(name="accessPointName")
105
+ def access_point_name(self) -> Optional[pulumi.Input[str]]:
106
+ """
107
+ The Access Point Name.
108
+ """
109
+ return pulumi.get(self, "access_point_name")
110
+
111
+ @access_point_name.setter
112
+ def access_point_name(self, value: Optional[pulumi.Input[str]]):
113
+ pulumi.set(self, "access_point_name", value)
114
+
115
+ @property
116
+ @pulumi.getter(name="enabledRam")
117
+ def enabled_ram(self) -> Optional[pulumi.Input[bool]]:
118
+ """
119
+ Whether to enable the RAM policy.
120
+ """
121
+ return pulumi.get(self, "enabled_ram")
122
+
123
+ @enabled_ram.setter
124
+ def enabled_ram(self, value: Optional[pulumi.Input[bool]]):
125
+ pulumi.set(self, "enabled_ram", value)
126
+
127
+ @property
128
+ @pulumi.getter(name="posixUser")
129
+ def posix_user(self) -> Optional[pulumi.Input['AccessPointPosixUserArgs']]:
130
+ """
131
+ The Posix user. See `posix_user` below.
132
+ """
133
+ return pulumi.get(self, "posix_user")
134
+
135
+ @posix_user.setter
136
+ def posix_user(self, value: Optional[pulumi.Input['AccessPointPosixUserArgs']]):
137
+ pulumi.set(self, "posix_user", value)
138
+
139
+ @property
140
+ @pulumi.getter(name="rootPath")
141
+ def root_path(self) -> Optional[pulumi.Input[str]]:
142
+ """
143
+ The root directory.
144
+ """
145
+ return pulumi.get(self, "root_path")
146
+
147
+ @root_path.setter
148
+ def root_path(self, value: Optional[pulumi.Input[str]]):
149
+ pulumi.set(self, "root_path", value)
150
+
151
+ @property
152
+ @pulumi.getter(name="rootPathPermission")
153
+ def root_path_permission(self) -> Optional[pulumi.Input['AccessPointRootPathPermissionArgs']]:
154
+ """
155
+ Root permissions. See `root_path_permission` below.
156
+ """
157
+ return pulumi.get(self, "root_path_permission")
158
+
159
+ @root_path_permission.setter
160
+ def root_path_permission(self, value: Optional[pulumi.Input['AccessPointRootPathPermissionArgs']]):
161
+ pulumi.set(self, "root_path_permission", value)
162
+
163
+
164
+ @pulumi.input_type
165
+ class _AccessPointState:
166
+ def __init__(__self__, *,
167
+ access_group: Optional[pulumi.Input[str]] = None,
168
+ access_point_id: Optional[pulumi.Input[str]] = None,
169
+ access_point_name: Optional[pulumi.Input[str]] = None,
170
+ create_time: Optional[pulumi.Input[str]] = None,
171
+ enabled_ram: Optional[pulumi.Input[bool]] = None,
172
+ file_system_id: Optional[pulumi.Input[str]] = None,
173
+ posix_user: Optional[pulumi.Input['AccessPointPosixUserArgs']] = None,
174
+ root_path: Optional[pulumi.Input[str]] = None,
175
+ root_path_permission: Optional[pulumi.Input['AccessPointRootPathPermissionArgs']] = None,
176
+ status: Optional[pulumi.Input[str]] = None,
177
+ vpc_id: Optional[pulumi.Input[str]] = None,
178
+ vswitch_id: Optional[pulumi.Input[str]] = None):
179
+ """
180
+ Input properties used for looking up and filtering AccessPoint resources.
181
+ :param pulumi.Input[str] access_group: The permission group name.
182
+ :param pulumi.Input[str] access_point_id: Access point ID.
183
+ :param pulumi.Input[str] access_point_name: The Access Point Name.
184
+ :param pulumi.Input[str] create_time: Creation time.
185
+ :param pulumi.Input[bool] enabled_ram: Whether to enable the RAM policy.
186
+ :param pulumi.Input[str] file_system_id: The ID of the file system.
187
+ :param pulumi.Input['AccessPointPosixUserArgs'] posix_user: The Posix user. See `posix_user` below.
188
+ :param pulumi.Input[str] root_path: The root directory.
189
+ :param pulumi.Input['AccessPointRootPathPermissionArgs'] root_path_permission: Root permissions. See `root_path_permission` below.
190
+ :param pulumi.Input[str] status: Current access point state.
191
+ :param pulumi.Input[str] vpc_id: The ID of the VPC.
192
+ :param pulumi.Input[str] vswitch_id: The vSwitch ID.
193
+ """
194
+ if access_group is not None:
195
+ pulumi.set(__self__, "access_group", access_group)
196
+ if access_point_id is not None:
197
+ pulumi.set(__self__, "access_point_id", access_point_id)
198
+ if access_point_name is not None:
199
+ pulumi.set(__self__, "access_point_name", access_point_name)
200
+ if create_time is not None:
201
+ pulumi.set(__self__, "create_time", create_time)
202
+ if enabled_ram is not None:
203
+ pulumi.set(__self__, "enabled_ram", enabled_ram)
204
+ if file_system_id is not None:
205
+ pulumi.set(__self__, "file_system_id", file_system_id)
206
+ if posix_user is not None:
207
+ pulumi.set(__self__, "posix_user", posix_user)
208
+ if root_path is not None:
209
+ pulumi.set(__self__, "root_path", root_path)
210
+ if root_path_permission is not None:
211
+ pulumi.set(__self__, "root_path_permission", root_path_permission)
212
+ if status is not None:
213
+ pulumi.set(__self__, "status", status)
214
+ if vpc_id is not None:
215
+ pulumi.set(__self__, "vpc_id", vpc_id)
216
+ if vswitch_id is not None:
217
+ pulumi.set(__self__, "vswitch_id", vswitch_id)
218
+
219
+ @property
220
+ @pulumi.getter(name="accessGroup")
221
+ def access_group(self) -> Optional[pulumi.Input[str]]:
222
+ """
223
+ The permission group name.
224
+ """
225
+ return pulumi.get(self, "access_group")
226
+
227
+ @access_group.setter
228
+ def access_group(self, value: Optional[pulumi.Input[str]]):
229
+ pulumi.set(self, "access_group", value)
230
+
231
+ @property
232
+ @pulumi.getter(name="accessPointId")
233
+ def access_point_id(self) -> Optional[pulumi.Input[str]]:
234
+ """
235
+ Access point ID.
236
+ """
237
+ return pulumi.get(self, "access_point_id")
238
+
239
+ @access_point_id.setter
240
+ def access_point_id(self, value: Optional[pulumi.Input[str]]):
241
+ pulumi.set(self, "access_point_id", value)
242
+
243
+ @property
244
+ @pulumi.getter(name="accessPointName")
245
+ def access_point_name(self) -> Optional[pulumi.Input[str]]:
246
+ """
247
+ The Access Point Name.
248
+ """
249
+ return pulumi.get(self, "access_point_name")
250
+
251
+ @access_point_name.setter
252
+ def access_point_name(self, value: Optional[pulumi.Input[str]]):
253
+ pulumi.set(self, "access_point_name", value)
254
+
255
+ @property
256
+ @pulumi.getter(name="createTime")
257
+ def create_time(self) -> Optional[pulumi.Input[str]]:
258
+ """
259
+ Creation time.
260
+ """
261
+ return pulumi.get(self, "create_time")
262
+
263
+ @create_time.setter
264
+ def create_time(self, value: Optional[pulumi.Input[str]]):
265
+ pulumi.set(self, "create_time", value)
266
+
267
+ @property
268
+ @pulumi.getter(name="enabledRam")
269
+ def enabled_ram(self) -> Optional[pulumi.Input[bool]]:
270
+ """
271
+ Whether to enable the RAM policy.
272
+ """
273
+ return pulumi.get(self, "enabled_ram")
274
+
275
+ @enabled_ram.setter
276
+ def enabled_ram(self, value: Optional[pulumi.Input[bool]]):
277
+ pulumi.set(self, "enabled_ram", value)
278
+
279
+ @property
280
+ @pulumi.getter(name="fileSystemId")
281
+ def file_system_id(self) -> Optional[pulumi.Input[str]]:
282
+ """
283
+ The ID of the file system.
284
+ """
285
+ return pulumi.get(self, "file_system_id")
286
+
287
+ @file_system_id.setter
288
+ def file_system_id(self, value: Optional[pulumi.Input[str]]):
289
+ pulumi.set(self, "file_system_id", value)
290
+
291
+ @property
292
+ @pulumi.getter(name="posixUser")
293
+ def posix_user(self) -> Optional[pulumi.Input['AccessPointPosixUserArgs']]:
294
+ """
295
+ The Posix user. See `posix_user` below.
296
+ """
297
+ return pulumi.get(self, "posix_user")
298
+
299
+ @posix_user.setter
300
+ def posix_user(self, value: Optional[pulumi.Input['AccessPointPosixUserArgs']]):
301
+ pulumi.set(self, "posix_user", value)
302
+
303
+ @property
304
+ @pulumi.getter(name="rootPath")
305
+ def root_path(self) -> Optional[pulumi.Input[str]]:
306
+ """
307
+ The root directory.
308
+ """
309
+ return pulumi.get(self, "root_path")
310
+
311
+ @root_path.setter
312
+ def root_path(self, value: Optional[pulumi.Input[str]]):
313
+ pulumi.set(self, "root_path", value)
314
+
315
+ @property
316
+ @pulumi.getter(name="rootPathPermission")
317
+ def root_path_permission(self) -> Optional[pulumi.Input['AccessPointRootPathPermissionArgs']]:
318
+ """
319
+ Root permissions. See `root_path_permission` below.
320
+ """
321
+ return pulumi.get(self, "root_path_permission")
322
+
323
+ @root_path_permission.setter
324
+ def root_path_permission(self, value: Optional[pulumi.Input['AccessPointRootPathPermissionArgs']]):
325
+ pulumi.set(self, "root_path_permission", value)
326
+
327
+ @property
328
+ @pulumi.getter
329
+ def status(self) -> Optional[pulumi.Input[str]]:
330
+ """
331
+ Current access point state.
332
+ """
333
+ return pulumi.get(self, "status")
334
+
335
+ @status.setter
336
+ def status(self, value: Optional[pulumi.Input[str]]):
337
+ pulumi.set(self, "status", value)
338
+
339
+ @property
340
+ @pulumi.getter(name="vpcId")
341
+ def vpc_id(self) -> Optional[pulumi.Input[str]]:
342
+ """
343
+ The ID of the VPC.
344
+ """
345
+ return pulumi.get(self, "vpc_id")
346
+
347
+ @vpc_id.setter
348
+ def vpc_id(self, value: Optional[pulumi.Input[str]]):
349
+ pulumi.set(self, "vpc_id", value)
350
+
351
+ @property
352
+ @pulumi.getter(name="vswitchId")
353
+ def vswitch_id(self) -> Optional[pulumi.Input[str]]:
354
+ """
355
+ The vSwitch ID.
356
+ """
357
+ return pulumi.get(self, "vswitch_id")
358
+
359
+ @vswitch_id.setter
360
+ def vswitch_id(self, value: Optional[pulumi.Input[str]]):
361
+ pulumi.set(self, "vswitch_id", value)
362
+
363
+
364
+ class AccessPoint(pulumi.CustomResource):
365
+ @overload
366
+ def __init__(__self__,
367
+ resource_name: str,
368
+ opts: Optional[pulumi.ResourceOptions] = None,
369
+ access_group: Optional[pulumi.Input[str]] = None,
370
+ access_point_name: Optional[pulumi.Input[str]] = None,
371
+ enabled_ram: Optional[pulumi.Input[bool]] = None,
372
+ file_system_id: Optional[pulumi.Input[str]] = None,
373
+ posix_user: Optional[pulumi.Input[pulumi.InputType['AccessPointPosixUserArgs']]] = None,
374
+ root_path: Optional[pulumi.Input[str]] = None,
375
+ root_path_permission: Optional[pulumi.Input[pulumi.InputType['AccessPointRootPathPermissionArgs']]] = None,
376
+ vpc_id: Optional[pulumi.Input[str]] = None,
377
+ vswitch_id: Optional[pulumi.Input[str]] = None,
378
+ __props__=None):
379
+ """
380
+ Provides a NAS Access Point resource.
381
+
382
+ For information about NAS Access Point and how to use it, see [What is Access Point](https://www.alibabacloud.com/help/zh/nas/developer-reference/api-nas-2017-06-26-createaccesspoint).
383
+
384
+ > **NOTE:** Available since v1.224.0.
385
+
386
+ ## Example Usage
387
+
388
+ Basic Usage
389
+
390
+ ```python
391
+ import pulumi
392
+ import pulumi_alicloud as alicloud
393
+
394
+ config = pulumi.Config()
395
+ name = config.get("name")
396
+ if name is None:
397
+ name = "terraform-example"
398
+ region_id = config.get("regionId")
399
+ if region_id is None:
400
+ region_id = "cn-hangzhou"
401
+ azone = config.get("azone")
402
+ if azone is None:
403
+ azone = "cn-hangzhou-g"
404
+ default = alicloud.get_zones(available_resource_creation="VSwitch")
405
+ defaultky_vc70 = alicloud.vpc.Network("defaultkyVC70",
406
+ cidr_block="172.16.0.0/12",
407
+ description="接入点测试noRootDirectory")
408
+ defaulto_za_pm_o = alicloud.vpc.Switch("defaultoZAPmO",
409
+ vpc_id=defaultky_vc70.id,
410
+ zone_id=default.zones[0].id,
411
+ cidr_block="172.16.0.0/24")
412
+ default_bbc7ev = alicloud.nas.AccessGroup("defaultBbc7ev",
413
+ access_group_type="Vpc",
414
+ access_group_name=name,
415
+ file_system_type="standard")
416
+ default_vt_up_dh = alicloud.nas.FileSystem("defaultVtUpDh",
417
+ storage_type="Performance",
418
+ zone_id=azone,
419
+ encrypt_type=0,
420
+ protocol_type="NFS",
421
+ file_system_type="standard",
422
+ description="AccessPointnoRootDirectory")
423
+ default_access_point = alicloud.nas.AccessPoint("default",
424
+ vpc_id=defaultky_vc70.id,
425
+ access_group=default_bbc7ev.access_group_name,
426
+ vswitch_id=defaulto_za_pm_o.id,
427
+ file_system_id=default_vt_up_dh.id,
428
+ access_point_name=name,
429
+ posix_user=alicloud.nas.AccessPointPosixUserArgs(
430
+ posix_group_id=123,
431
+ posix_user_id=123,
432
+ ),
433
+ root_path_permission=alicloud.nas.AccessPointRootPathPermissionArgs(
434
+ owner_group_id=1,
435
+ owner_user_id=1,
436
+ permission="0777",
437
+ ))
438
+ ```
439
+
440
+ ## Import
441
+
442
+ NAS Access Point can be imported using the id, e.g.
443
+
444
+ ```sh
445
+ $ pulumi import alicloud:nas/accessPoint:AccessPoint example <file_system_id>:<access_point_id>
446
+ ```
447
+
448
+ :param str resource_name: The name of the resource.
449
+ :param pulumi.ResourceOptions opts: Options for the resource.
450
+ :param pulumi.Input[str] access_group: The permission group name.
451
+ :param pulumi.Input[str] access_point_name: The Access Point Name.
452
+ :param pulumi.Input[bool] enabled_ram: Whether to enable the RAM policy.
453
+ :param pulumi.Input[str] file_system_id: The ID of the file system.
454
+ :param pulumi.Input[pulumi.InputType['AccessPointPosixUserArgs']] posix_user: The Posix user. See `posix_user` below.
455
+ :param pulumi.Input[str] root_path: The root directory.
456
+ :param pulumi.Input[pulumi.InputType['AccessPointRootPathPermissionArgs']] root_path_permission: Root permissions. See `root_path_permission` below.
457
+ :param pulumi.Input[str] vpc_id: The ID of the VPC.
458
+ :param pulumi.Input[str] vswitch_id: The vSwitch ID.
459
+ """
460
+ ...
461
+ @overload
462
+ def __init__(__self__,
463
+ resource_name: str,
464
+ args: AccessPointArgs,
465
+ opts: Optional[pulumi.ResourceOptions] = None):
466
+ """
467
+ Provides a NAS Access Point resource.
468
+
469
+ For information about NAS Access Point and how to use it, see [What is Access Point](https://www.alibabacloud.com/help/zh/nas/developer-reference/api-nas-2017-06-26-createaccesspoint).
470
+
471
+ > **NOTE:** Available since v1.224.0.
472
+
473
+ ## Example Usage
474
+
475
+ Basic Usage
476
+
477
+ ```python
478
+ import pulumi
479
+ import pulumi_alicloud as alicloud
480
+
481
+ config = pulumi.Config()
482
+ name = config.get("name")
483
+ if name is None:
484
+ name = "terraform-example"
485
+ region_id = config.get("regionId")
486
+ if region_id is None:
487
+ region_id = "cn-hangzhou"
488
+ azone = config.get("azone")
489
+ if azone is None:
490
+ azone = "cn-hangzhou-g"
491
+ default = alicloud.get_zones(available_resource_creation="VSwitch")
492
+ defaultky_vc70 = alicloud.vpc.Network("defaultkyVC70",
493
+ cidr_block="172.16.0.0/12",
494
+ description="接入点测试noRootDirectory")
495
+ defaulto_za_pm_o = alicloud.vpc.Switch("defaultoZAPmO",
496
+ vpc_id=defaultky_vc70.id,
497
+ zone_id=default.zones[0].id,
498
+ cidr_block="172.16.0.0/24")
499
+ default_bbc7ev = alicloud.nas.AccessGroup("defaultBbc7ev",
500
+ access_group_type="Vpc",
501
+ access_group_name=name,
502
+ file_system_type="standard")
503
+ default_vt_up_dh = alicloud.nas.FileSystem("defaultVtUpDh",
504
+ storage_type="Performance",
505
+ zone_id=azone,
506
+ encrypt_type=0,
507
+ protocol_type="NFS",
508
+ file_system_type="standard",
509
+ description="AccessPointnoRootDirectory")
510
+ default_access_point = alicloud.nas.AccessPoint("default",
511
+ vpc_id=defaultky_vc70.id,
512
+ access_group=default_bbc7ev.access_group_name,
513
+ vswitch_id=defaulto_za_pm_o.id,
514
+ file_system_id=default_vt_up_dh.id,
515
+ access_point_name=name,
516
+ posix_user=alicloud.nas.AccessPointPosixUserArgs(
517
+ posix_group_id=123,
518
+ posix_user_id=123,
519
+ ),
520
+ root_path_permission=alicloud.nas.AccessPointRootPathPermissionArgs(
521
+ owner_group_id=1,
522
+ owner_user_id=1,
523
+ permission="0777",
524
+ ))
525
+ ```
526
+
527
+ ## Import
528
+
529
+ NAS Access Point can be imported using the id, e.g.
530
+
531
+ ```sh
532
+ $ pulumi import alicloud:nas/accessPoint:AccessPoint example <file_system_id>:<access_point_id>
533
+ ```
534
+
535
+ :param str resource_name: The name of the resource.
536
+ :param AccessPointArgs args: The arguments to use to populate this resource's properties.
537
+ :param pulumi.ResourceOptions opts: Options for the resource.
538
+ """
539
+ ...
540
+ def __init__(__self__, resource_name: str, *args, **kwargs):
541
+ resource_args, opts = _utilities.get_resource_args_opts(AccessPointArgs, pulumi.ResourceOptions, *args, **kwargs)
542
+ if resource_args is not None:
543
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
544
+ else:
545
+ __self__._internal_init(resource_name, *args, **kwargs)
546
+
547
+ def _internal_init(__self__,
548
+ resource_name: str,
549
+ opts: Optional[pulumi.ResourceOptions] = None,
550
+ access_group: Optional[pulumi.Input[str]] = None,
551
+ access_point_name: Optional[pulumi.Input[str]] = None,
552
+ enabled_ram: Optional[pulumi.Input[bool]] = None,
553
+ file_system_id: Optional[pulumi.Input[str]] = None,
554
+ posix_user: Optional[pulumi.Input[pulumi.InputType['AccessPointPosixUserArgs']]] = None,
555
+ root_path: Optional[pulumi.Input[str]] = None,
556
+ root_path_permission: Optional[pulumi.Input[pulumi.InputType['AccessPointRootPathPermissionArgs']]] = None,
557
+ vpc_id: Optional[pulumi.Input[str]] = None,
558
+ vswitch_id: Optional[pulumi.Input[str]] = None,
559
+ __props__=None):
560
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
561
+ if not isinstance(opts, pulumi.ResourceOptions):
562
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
563
+ if opts.id is None:
564
+ if __props__ is not None:
565
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
566
+ __props__ = AccessPointArgs.__new__(AccessPointArgs)
567
+
568
+ if access_group is None and not opts.urn:
569
+ raise TypeError("Missing required property 'access_group'")
570
+ __props__.__dict__["access_group"] = access_group
571
+ __props__.__dict__["access_point_name"] = access_point_name
572
+ __props__.__dict__["enabled_ram"] = enabled_ram
573
+ if file_system_id is None and not opts.urn:
574
+ raise TypeError("Missing required property 'file_system_id'")
575
+ __props__.__dict__["file_system_id"] = file_system_id
576
+ __props__.__dict__["posix_user"] = posix_user
577
+ __props__.__dict__["root_path"] = root_path
578
+ __props__.__dict__["root_path_permission"] = root_path_permission
579
+ if vpc_id is None and not opts.urn:
580
+ raise TypeError("Missing required property 'vpc_id'")
581
+ __props__.__dict__["vpc_id"] = vpc_id
582
+ if vswitch_id is None and not opts.urn:
583
+ raise TypeError("Missing required property 'vswitch_id'")
584
+ __props__.__dict__["vswitch_id"] = vswitch_id
585
+ __props__.__dict__["access_point_id"] = None
586
+ __props__.__dict__["create_time"] = None
587
+ __props__.__dict__["status"] = None
588
+ super(AccessPoint, __self__).__init__(
589
+ 'alicloud:nas/accessPoint:AccessPoint',
590
+ resource_name,
591
+ __props__,
592
+ opts)
593
+
594
+ @staticmethod
595
+ def get(resource_name: str,
596
+ id: pulumi.Input[str],
597
+ opts: Optional[pulumi.ResourceOptions] = None,
598
+ access_group: Optional[pulumi.Input[str]] = None,
599
+ access_point_id: Optional[pulumi.Input[str]] = None,
600
+ access_point_name: Optional[pulumi.Input[str]] = None,
601
+ create_time: Optional[pulumi.Input[str]] = None,
602
+ enabled_ram: Optional[pulumi.Input[bool]] = None,
603
+ file_system_id: Optional[pulumi.Input[str]] = None,
604
+ posix_user: Optional[pulumi.Input[pulumi.InputType['AccessPointPosixUserArgs']]] = None,
605
+ root_path: Optional[pulumi.Input[str]] = None,
606
+ root_path_permission: Optional[pulumi.Input[pulumi.InputType['AccessPointRootPathPermissionArgs']]] = None,
607
+ status: Optional[pulumi.Input[str]] = None,
608
+ vpc_id: Optional[pulumi.Input[str]] = None,
609
+ vswitch_id: Optional[pulumi.Input[str]] = None) -> 'AccessPoint':
610
+ """
611
+ Get an existing AccessPoint resource's state with the given name, id, and optional extra
612
+ properties used to qualify the lookup.
613
+
614
+ :param str resource_name: The unique name of the resulting resource.
615
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
616
+ :param pulumi.ResourceOptions opts: Options for the resource.
617
+ :param pulumi.Input[str] access_group: The permission group name.
618
+ :param pulumi.Input[str] access_point_id: Access point ID.
619
+ :param pulumi.Input[str] access_point_name: The Access Point Name.
620
+ :param pulumi.Input[str] create_time: Creation time.
621
+ :param pulumi.Input[bool] enabled_ram: Whether to enable the RAM policy.
622
+ :param pulumi.Input[str] file_system_id: The ID of the file system.
623
+ :param pulumi.Input[pulumi.InputType['AccessPointPosixUserArgs']] posix_user: The Posix user. See `posix_user` below.
624
+ :param pulumi.Input[str] root_path: The root directory.
625
+ :param pulumi.Input[pulumi.InputType['AccessPointRootPathPermissionArgs']] root_path_permission: Root permissions. See `root_path_permission` below.
626
+ :param pulumi.Input[str] status: Current access point state.
627
+ :param pulumi.Input[str] vpc_id: The ID of the VPC.
628
+ :param pulumi.Input[str] vswitch_id: The vSwitch ID.
629
+ """
630
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
631
+
632
+ __props__ = _AccessPointState.__new__(_AccessPointState)
633
+
634
+ __props__.__dict__["access_group"] = access_group
635
+ __props__.__dict__["access_point_id"] = access_point_id
636
+ __props__.__dict__["access_point_name"] = access_point_name
637
+ __props__.__dict__["create_time"] = create_time
638
+ __props__.__dict__["enabled_ram"] = enabled_ram
639
+ __props__.__dict__["file_system_id"] = file_system_id
640
+ __props__.__dict__["posix_user"] = posix_user
641
+ __props__.__dict__["root_path"] = root_path
642
+ __props__.__dict__["root_path_permission"] = root_path_permission
643
+ __props__.__dict__["status"] = status
644
+ __props__.__dict__["vpc_id"] = vpc_id
645
+ __props__.__dict__["vswitch_id"] = vswitch_id
646
+ return AccessPoint(resource_name, opts=opts, __props__=__props__)
647
+
648
+ @property
649
+ @pulumi.getter(name="accessGroup")
650
+ def access_group(self) -> pulumi.Output[str]:
651
+ """
652
+ The permission group name.
653
+ """
654
+ return pulumi.get(self, "access_group")
655
+
656
+ @property
657
+ @pulumi.getter(name="accessPointId")
658
+ def access_point_id(self) -> pulumi.Output[str]:
659
+ """
660
+ Access point ID.
661
+ """
662
+ return pulumi.get(self, "access_point_id")
663
+
664
+ @property
665
+ @pulumi.getter(name="accessPointName")
666
+ def access_point_name(self) -> pulumi.Output[Optional[str]]:
667
+ """
668
+ The Access Point Name.
669
+ """
670
+ return pulumi.get(self, "access_point_name")
671
+
672
+ @property
673
+ @pulumi.getter(name="createTime")
674
+ def create_time(self) -> pulumi.Output[str]:
675
+ """
676
+ Creation time.
677
+ """
678
+ return pulumi.get(self, "create_time")
679
+
680
+ @property
681
+ @pulumi.getter(name="enabledRam")
682
+ def enabled_ram(self) -> pulumi.Output[Optional[bool]]:
683
+ """
684
+ Whether to enable the RAM policy.
685
+ """
686
+ return pulumi.get(self, "enabled_ram")
687
+
688
+ @property
689
+ @pulumi.getter(name="fileSystemId")
690
+ def file_system_id(self) -> pulumi.Output[str]:
691
+ """
692
+ The ID of the file system.
693
+ """
694
+ return pulumi.get(self, "file_system_id")
695
+
696
+ @property
697
+ @pulumi.getter(name="posixUser")
698
+ def posix_user(self) -> pulumi.Output['outputs.AccessPointPosixUser']:
699
+ """
700
+ The Posix user. See `posix_user` below.
701
+ """
702
+ return pulumi.get(self, "posix_user")
703
+
704
+ @property
705
+ @pulumi.getter(name="rootPath")
706
+ def root_path(self) -> pulumi.Output[str]:
707
+ """
708
+ The root directory.
709
+ """
710
+ return pulumi.get(self, "root_path")
711
+
712
+ @property
713
+ @pulumi.getter(name="rootPathPermission")
714
+ def root_path_permission(self) -> pulumi.Output['outputs.AccessPointRootPathPermission']:
715
+ """
716
+ Root permissions. See `root_path_permission` below.
717
+ """
718
+ return pulumi.get(self, "root_path_permission")
719
+
720
+ @property
721
+ @pulumi.getter
722
+ def status(self) -> pulumi.Output[str]:
723
+ """
724
+ Current access point state.
725
+ """
726
+ return pulumi.get(self, "status")
727
+
728
+ @property
729
+ @pulumi.getter(name="vpcId")
730
+ def vpc_id(self) -> pulumi.Output[str]:
731
+ """
732
+ The ID of the VPC.
733
+ """
734
+ return pulumi.get(self, "vpc_id")
735
+
736
+ @property
737
+ @pulumi.getter(name="vswitchId")
738
+ def vswitch_id(self) -> pulumi.Output[str]:
739
+ """
740
+ The vSwitch ID.
741
+ """
742
+ return pulumi.get(self, "vswitch_id")
743
+