pulumi-alicloud 3.77.0a1746163013__py3-none-any.whl → 3.78.0a1746422202__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.
- pulumi_alicloud/__init__.py +72 -0
- pulumi_alicloud/_inputs.py +13 -0
- pulumi_alicloud/adb/db_cluster_lake_version.py +94 -0
- pulumi_alicloud/alb/_inputs.py +6 -3
- pulumi_alicloud/alb/outputs.py +4 -2
- pulumi_alicloud/apig/environment.py +2 -2
- pulumi_alicloud/apig/http_api.py +2 -2
- pulumi_alicloud/arms/grafana_workspace.py +56 -14
- pulumi_alicloud/cloudfirewall/instance_member.py +4 -4
- pulumi_alicloud/cloudfirewall/vpc_cen_tr_firewall.py +2 -2
- pulumi_alicloud/cloudsso/_inputs.py +697 -7
- pulumi_alicloud/cloudsso/directory.py +345 -65
- pulumi_alicloud/cloudsso/outputs.py +557 -8
- pulumi_alicloud/config/outputs.py +8 -0
- pulumi_alicloud/cs/_inputs.py +18 -18
- pulumi_alicloud/cs/edge_kubernetes.py +136 -100
- pulumi_alicloud/cs/get_kubernetes_node_pools.py +21 -1
- pulumi_alicloud/cs/kubernetes.py +118 -39
- pulumi_alicloud/cs/managed_kubernetes.py +125 -46
- pulumi_alicloud/cs/outputs.py +14 -14
- pulumi_alicloud/cs/serverless_kubernetes.py +66 -73
- pulumi_alicloud/ddos/ddos_coo_instance.py +175 -25
- pulumi_alicloud/dns/ddos_coo_instance.py +175 -25
- pulumi_alicloud/dts/job_monitor_rule.py +2 -2
- pulumi_alicloud/dts/synchronization_job.py +2 -2
- pulumi_alicloud/ecs/get_instance_types.py +4 -4
- pulumi_alicloud/ecs/instance.py +28 -28
- pulumi_alicloud/ecs/outputs.py +2 -2
- pulumi_alicloud/ecs/security_group_rule.py +32 -4
- pulumi_alicloud/eflo/__init__.py +3 -0
- pulumi_alicloud/eflo/_inputs.py +623 -0
- pulumi_alicloud/eflo/experiment_plan.py +573 -0
- pulumi_alicloud/eflo/experiment_plan_template.py +464 -0
- pulumi_alicloud/eflo/outputs.py +476 -0
- pulumi_alicloud/eflo/resource.py +388 -0
- pulumi_alicloud/ens/disk.py +120 -69
- pulumi_alicloud/ens/eip.py +45 -41
- pulumi_alicloud/esa/__init__.py +2 -0
- pulumi_alicloud/esa/scheduled_preload_execution.py +479 -0
- pulumi_alicloud/esa/scheduled_preload_job.py +467 -0
- pulumi_alicloud/gwlb/listener.py +2 -2
- pulumi_alicloud/gwlb/load_balancer.py +2 -2
- pulumi_alicloud/gwlb/server_group.py +2 -2
- pulumi_alicloud/ims/__init__.py +2 -0
- pulumi_alicloud/ims/get_oidc_providers.py +216 -0
- pulumi_alicloud/ims/outputs.py +138 -0
- pulumi_alicloud/mongodb/__init__.py +2 -0
- pulumi_alicloud/mongodb/_inputs.py +154 -0
- pulumi_alicloud/mongodb/instance.py +7 -7
- pulumi_alicloud/mongodb/outputs.py +121 -0
- pulumi_alicloud/mongodb/public_network_address.py +275 -0
- pulumi_alicloud/mongodb/replica_set_role.py +533 -0
- pulumi_alicloud/nas/_inputs.py +252 -18
- pulumi_alicloud/nas/file_system.py +649 -264
- pulumi_alicloud/nas/outputs.py +198 -12
- pulumi_alicloud/nlb/server_group_server_attachment.py +4 -0
- pulumi_alicloud/pai/__init__.py +1 -0
- pulumi_alicloud/pai/flow_pipeline.py +491 -0
- pulumi_alicloud/pulumi-plugin.json +1 -1
- pulumi_alicloud/ram/__init__.py +1 -0
- pulumi_alicloud/ram/get_role_policy_attachments.py +272 -0
- pulumi_alicloud/ram/outputs.py +63 -0
- pulumi_alicloud/ram/security_preference.py +496 -110
- pulumi_alicloud/rdc/organization.py +2 -2
- pulumi_alicloud/rds/instance.py +1 -1
- pulumi_alicloud/sae/application_scaling_rule.py +2 -2
- pulumi_alicloud/sae/ingress.py +2 -2
- pulumi_alicloud/schedulerx/app_group.py +2 -2
- pulumi_alicloud/schedulerx/job.py +2 -2
- pulumi_alicloud/selectdb/db_cluster.py +2 -0
- pulumi_alicloud/selectdb/db_instance.py +43 -13
- pulumi_alicloud/selectdb/get_db_clusters.py +2 -0
- pulumi_alicloud/selectdb/get_db_instances.py +2 -0
- pulumi_alicloud/selectdb/outputs.py +3 -3
- pulumi_alicloud/sls/__init__.py +1 -0
- pulumi_alicloud/sls/_inputs.py +295 -0
- pulumi_alicloud/sls/etl.py +516 -0
- pulumi_alicloud/sls/outputs.py +209 -0
- pulumi_alicloud/vpc/network.py +156 -88
- {pulumi_alicloud-3.77.0a1746163013.dist-info → pulumi_alicloud-3.78.0a1746422202.dist-info}/METADATA +1 -1
- {pulumi_alicloud-3.77.0a1746163013.dist-info → pulumi_alicloud-3.78.0a1746422202.dist-info}/RECORD +83 -71
- {pulumi_alicloud-3.77.0a1746163013.dist-info → pulumi_alicloud-3.78.0a1746422202.dist-info}/WHEEL +1 -1
- {pulumi_alicloud-3.77.0a1746163013.dist-info → pulumi_alicloud-3.78.0a1746422202.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,464 @@
|
|
|
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 builtins
|
|
6
|
+
import copy
|
|
7
|
+
import warnings
|
|
8
|
+
import sys
|
|
9
|
+
import pulumi
|
|
10
|
+
import pulumi.runtime
|
|
11
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
|
12
|
+
if sys.version_info >= (3, 11):
|
|
13
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
|
14
|
+
else:
|
|
15
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
|
16
|
+
from .. import _utilities
|
|
17
|
+
from . import outputs
|
|
18
|
+
from ._inputs import *
|
|
19
|
+
|
|
20
|
+
__all__ = ['ExperimentPlanTemplateArgs', 'ExperimentPlanTemplate']
|
|
21
|
+
|
|
22
|
+
@pulumi.input_type
|
|
23
|
+
class ExperimentPlanTemplateArgs:
|
|
24
|
+
def __init__(__self__, *,
|
|
25
|
+
privacy_level: pulumi.Input[builtins.str],
|
|
26
|
+
template_name: pulumi.Input[builtins.str],
|
|
27
|
+
template_pipelines: pulumi.Input[Sequence[pulumi.Input['ExperimentPlanTemplateTemplatePipelineArgs']]],
|
|
28
|
+
template_description: Optional[pulumi.Input[builtins.str]] = None):
|
|
29
|
+
"""
|
|
30
|
+
The set of arguments for constructing a ExperimentPlanTemplate resource.
|
|
31
|
+
:param pulumi.Input[builtins.str] privacy_level: Used to indicate the privacy level of the content or information. It can have the following optional parameters:
|
|
32
|
+
- private: Indicates that the content is private and restricted to specific users or permission groups. Private content is usually not publicly displayed, and only authorized users can view or edit it.
|
|
33
|
+
- public: Indicates that the content is public and can be accessed by anyone. Public content is usually viewable by all users and is suitable for sharing information or resources
|
|
34
|
+
:param pulumi.Input[builtins.str] template_name: Help users identify and select specific templates.
|
|
35
|
+
:param pulumi.Input[Sequence[pulumi.Input['ExperimentPlanTemplateTemplatePipelineArgs']]] template_pipelines: Representative Template Pipeline. See `template_pipeline` below.
|
|
36
|
+
:param pulumi.Input[builtins.str] template_description: Describe the purpose of this template.
|
|
37
|
+
"""
|
|
38
|
+
pulumi.set(__self__, "privacy_level", privacy_level)
|
|
39
|
+
pulumi.set(__self__, "template_name", template_name)
|
|
40
|
+
pulumi.set(__self__, "template_pipelines", template_pipelines)
|
|
41
|
+
if template_description is not None:
|
|
42
|
+
pulumi.set(__self__, "template_description", template_description)
|
|
43
|
+
|
|
44
|
+
@property
|
|
45
|
+
@pulumi.getter(name="privacyLevel")
|
|
46
|
+
def privacy_level(self) -> pulumi.Input[builtins.str]:
|
|
47
|
+
"""
|
|
48
|
+
Used to indicate the privacy level of the content or information. It can have the following optional parameters:
|
|
49
|
+
- private: Indicates that the content is private and restricted to specific users or permission groups. Private content is usually not publicly displayed, and only authorized users can view or edit it.
|
|
50
|
+
- public: Indicates that the content is public and can be accessed by anyone. Public content is usually viewable by all users and is suitable for sharing information or resources
|
|
51
|
+
"""
|
|
52
|
+
return pulumi.get(self, "privacy_level")
|
|
53
|
+
|
|
54
|
+
@privacy_level.setter
|
|
55
|
+
def privacy_level(self, value: pulumi.Input[builtins.str]):
|
|
56
|
+
pulumi.set(self, "privacy_level", value)
|
|
57
|
+
|
|
58
|
+
@property
|
|
59
|
+
@pulumi.getter(name="templateName")
|
|
60
|
+
def template_name(self) -> pulumi.Input[builtins.str]:
|
|
61
|
+
"""
|
|
62
|
+
Help users identify and select specific templates.
|
|
63
|
+
"""
|
|
64
|
+
return pulumi.get(self, "template_name")
|
|
65
|
+
|
|
66
|
+
@template_name.setter
|
|
67
|
+
def template_name(self, value: pulumi.Input[builtins.str]):
|
|
68
|
+
pulumi.set(self, "template_name", value)
|
|
69
|
+
|
|
70
|
+
@property
|
|
71
|
+
@pulumi.getter(name="templatePipelines")
|
|
72
|
+
def template_pipelines(self) -> pulumi.Input[Sequence[pulumi.Input['ExperimentPlanTemplateTemplatePipelineArgs']]]:
|
|
73
|
+
"""
|
|
74
|
+
Representative Template Pipeline. See `template_pipeline` below.
|
|
75
|
+
"""
|
|
76
|
+
return pulumi.get(self, "template_pipelines")
|
|
77
|
+
|
|
78
|
+
@template_pipelines.setter
|
|
79
|
+
def template_pipelines(self, value: pulumi.Input[Sequence[pulumi.Input['ExperimentPlanTemplateTemplatePipelineArgs']]]):
|
|
80
|
+
pulumi.set(self, "template_pipelines", value)
|
|
81
|
+
|
|
82
|
+
@property
|
|
83
|
+
@pulumi.getter(name="templateDescription")
|
|
84
|
+
def template_description(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
85
|
+
"""
|
|
86
|
+
Describe the purpose of this template.
|
|
87
|
+
"""
|
|
88
|
+
return pulumi.get(self, "template_description")
|
|
89
|
+
|
|
90
|
+
@template_description.setter
|
|
91
|
+
def template_description(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
92
|
+
pulumi.set(self, "template_description", value)
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
@pulumi.input_type
|
|
96
|
+
class _ExperimentPlanTemplateState:
|
|
97
|
+
def __init__(__self__, *,
|
|
98
|
+
create_time: Optional[pulumi.Input[builtins.str]] = None,
|
|
99
|
+
privacy_level: Optional[pulumi.Input[builtins.str]] = None,
|
|
100
|
+
template_description: Optional[pulumi.Input[builtins.str]] = None,
|
|
101
|
+
template_id: Optional[pulumi.Input[builtins.str]] = None,
|
|
102
|
+
template_name: Optional[pulumi.Input[builtins.str]] = None,
|
|
103
|
+
template_pipelines: Optional[pulumi.Input[Sequence[pulumi.Input['ExperimentPlanTemplateTemplatePipelineArgs']]]] = None):
|
|
104
|
+
"""
|
|
105
|
+
Input properties used for looking up and filtering ExperimentPlanTemplate resources.
|
|
106
|
+
:param pulumi.Input[builtins.str] create_time: The creation time of the resource.
|
|
107
|
+
:param pulumi.Input[builtins.str] privacy_level: Used to indicate the privacy level of the content or information. It can have the following optional parameters:
|
|
108
|
+
- private: Indicates that the content is private and restricted to specific users or permission groups. Private content is usually not publicly displayed, and only authorized users can view or edit it.
|
|
109
|
+
- public: Indicates that the content is public and can be accessed by anyone. Public content is usually viewable by all users and is suitable for sharing information or resources
|
|
110
|
+
:param pulumi.Input[builtins.str] template_description: Describe the purpose of this template.
|
|
111
|
+
:param pulumi.Input[builtins.str] template_id: The ID of the template.
|
|
112
|
+
:param pulumi.Input[builtins.str] template_name: Help users identify and select specific templates.
|
|
113
|
+
:param pulumi.Input[Sequence[pulumi.Input['ExperimentPlanTemplateTemplatePipelineArgs']]] template_pipelines: Representative Template Pipeline. See `template_pipeline` below.
|
|
114
|
+
"""
|
|
115
|
+
if create_time is not None:
|
|
116
|
+
pulumi.set(__self__, "create_time", create_time)
|
|
117
|
+
if privacy_level is not None:
|
|
118
|
+
pulumi.set(__self__, "privacy_level", privacy_level)
|
|
119
|
+
if template_description is not None:
|
|
120
|
+
pulumi.set(__self__, "template_description", template_description)
|
|
121
|
+
if template_id is not None:
|
|
122
|
+
pulumi.set(__self__, "template_id", template_id)
|
|
123
|
+
if template_name is not None:
|
|
124
|
+
pulumi.set(__self__, "template_name", template_name)
|
|
125
|
+
if template_pipelines is not None:
|
|
126
|
+
pulumi.set(__self__, "template_pipelines", template_pipelines)
|
|
127
|
+
|
|
128
|
+
@property
|
|
129
|
+
@pulumi.getter(name="createTime")
|
|
130
|
+
def create_time(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
131
|
+
"""
|
|
132
|
+
The creation time of the resource.
|
|
133
|
+
"""
|
|
134
|
+
return pulumi.get(self, "create_time")
|
|
135
|
+
|
|
136
|
+
@create_time.setter
|
|
137
|
+
def create_time(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
138
|
+
pulumi.set(self, "create_time", value)
|
|
139
|
+
|
|
140
|
+
@property
|
|
141
|
+
@pulumi.getter(name="privacyLevel")
|
|
142
|
+
def privacy_level(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
143
|
+
"""
|
|
144
|
+
Used to indicate the privacy level of the content or information. It can have the following optional parameters:
|
|
145
|
+
- private: Indicates that the content is private and restricted to specific users or permission groups. Private content is usually not publicly displayed, and only authorized users can view or edit it.
|
|
146
|
+
- public: Indicates that the content is public and can be accessed by anyone. Public content is usually viewable by all users and is suitable for sharing information or resources
|
|
147
|
+
"""
|
|
148
|
+
return pulumi.get(self, "privacy_level")
|
|
149
|
+
|
|
150
|
+
@privacy_level.setter
|
|
151
|
+
def privacy_level(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
152
|
+
pulumi.set(self, "privacy_level", value)
|
|
153
|
+
|
|
154
|
+
@property
|
|
155
|
+
@pulumi.getter(name="templateDescription")
|
|
156
|
+
def template_description(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
157
|
+
"""
|
|
158
|
+
Describe the purpose of this template.
|
|
159
|
+
"""
|
|
160
|
+
return pulumi.get(self, "template_description")
|
|
161
|
+
|
|
162
|
+
@template_description.setter
|
|
163
|
+
def template_description(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
164
|
+
pulumi.set(self, "template_description", value)
|
|
165
|
+
|
|
166
|
+
@property
|
|
167
|
+
@pulumi.getter(name="templateId")
|
|
168
|
+
def template_id(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
169
|
+
"""
|
|
170
|
+
The ID of the template.
|
|
171
|
+
"""
|
|
172
|
+
return pulumi.get(self, "template_id")
|
|
173
|
+
|
|
174
|
+
@template_id.setter
|
|
175
|
+
def template_id(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
176
|
+
pulumi.set(self, "template_id", value)
|
|
177
|
+
|
|
178
|
+
@property
|
|
179
|
+
@pulumi.getter(name="templateName")
|
|
180
|
+
def template_name(self) -> Optional[pulumi.Input[builtins.str]]:
|
|
181
|
+
"""
|
|
182
|
+
Help users identify and select specific templates.
|
|
183
|
+
"""
|
|
184
|
+
return pulumi.get(self, "template_name")
|
|
185
|
+
|
|
186
|
+
@template_name.setter
|
|
187
|
+
def template_name(self, value: Optional[pulumi.Input[builtins.str]]):
|
|
188
|
+
pulumi.set(self, "template_name", value)
|
|
189
|
+
|
|
190
|
+
@property
|
|
191
|
+
@pulumi.getter(name="templatePipelines")
|
|
192
|
+
def template_pipelines(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ExperimentPlanTemplateTemplatePipelineArgs']]]]:
|
|
193
|
+
"""
|
|
194
|
+
Representative Template Pipeline. See `template_pipeline` below.
|
|
195
|
+
"""
|
|
196
|
+
return pulumi.get(self, "template_pipelines")
|
|
197
|
+
|
|
198
|
+
@template_pipelines.setter
|
|
199
|
+
def template_pipelines(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['ExperimentPlanTemplateTemplatePipelineArgs']]]]):
|
|
200
|
+
pulumi.set(self, "template_pipelines", value)
|
|
201
|
+
|
|
202
|
+
|
|
203
|
+
class ExperimentPlanTemplate(pulumi.CustomResource):
|
|
204
|
+
|
|
205
|
+
pulumi_type = "alicloud:eflo/experimentPlanTemplate:ExperimentPlanTemplate"
|
|
206
|
+
|
|
207
|
+
@overload
|
|
208
|
+
def __init__(__self__,
|
|
209
|
+
resource_name: str,
|
|
210
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
211
|
+
privacy_level: Optional[pulumi.Input[builtins.str]] = None,
|
|
212
|
+
template_description: Optional[pulumi.Input[builtins.str]] = None,
|
|
213
|
+
template_name: Optional[pulumi.Input[builtins.str]] = None,
|
|
214
|
+
template_pipelines: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ExperimentPlanTemplateTemplatePipelineArgs', 'ExperimentPlanTemplateTemplatePipelineArgsDict']]]]] = None,
|
|
215
|
+
__props__=None):
|
|
216
|
+
"""
|
|
217
|
+
Provides a Eflo Experiment Plan Template resource.
|
|
218
|
+
|
|
219
|
+
For information about Eflo Experiment Plan Template and how to use it, see [What is Experiment Plan Template](https://www.alibabacloud.com/help/en/pai/developer-reference/api-eflo-cnp-2023-08-28-createexperimentplantemplate).
|
|
220
|
+
|
|
221
|
+
> **NOTE:** Available since v1.248.0.
|
|
222
|
+
|
|
223
|
+
## Example Usage
|
|
224
|
+
|
|
225
|
+
Basic Usage
|
|
226
|
+
|
|
227
|
+
```python
|
|
228
|
+
import pulumi
|
|
229
|
+
import pulumi_alicloud as alicloud
|
|
230
|
+
|
|
231
|
+
config = pulumi.Config()
|
|
232
|
+
name = config.get("name")
|
|
233
|
+
if name is None:
|
|
234
|
+
name = "terraform-example"
|
|
235
|
+
default = alicloud.eflo.ExperimentPlanTemplate("default",
|
|
236
|
+
template_pipelines=[{
|
|
237
|
+
"workload_id": 2,
|
|
238
|
+
"workload_name": "MatMul",
|
|
239
|
+
"env_params": {
|
|
240
|
+
"cpu_per_worker": 90,
|
|
241
|
+
"gpu_per_worker": 8,
|
|
242
|
+
"memory_per_worker": 500,
|
|
243
|
+
"share_memory": 500,
|
|
244
|
+
"worker_num": 1,
|
|
245
|
+
"py_torch_version": "1",
|
|
246
|
+
"gpu_driver_version": "1",
|
|
247
|
+
"cuda_version": "1",
|
|
248
|
+
"nccl_version": "1",
|
|
249
|
+
},
|
|
250
|
+
"pipeline_order": 1,
|
|
251
|
+
"scene": "baseline",
|
|
252
|
+
}],
|
|
253
|
+
privacy_level="private",
|
|
254
|
+
template_name=name,
|
|
255
|
+
template_description=name)
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
## Import
|
|
259
|
+
|
|
260
|
+
Eflo Experiment Plan Template can be imported using the id, e.g.
|
|
261
|
+
|
|
262
|
+
```sh
|
|
263
|
+
$ pulumi import alicloud:eflo/experimentPlanTemplate:ExperimentPlanTemplate example <id>
|
|
264
|
+
```
|
|
265
|
+
|
|
266
|
+
:param str resource_name: The name of the resource.
|
|
267
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
268
|
+
:param pulumi.Input[builtins.str] privacy_level: Used to indicate the privacy level of the content or information. It can have the following optional parameters:
|
|
269
|
+
- private: Indicates that the content is private and restricted to specific users or permission groups. Private content is usually not publicly displayed, and only authorized users can view or edit it.
|
|
270
|
+
- public: Indicates that the content is public and can be accessed by anyone. Public content is usually viewable by all users and is suitable for sharing information or resources
|
|
271
|
+
:param pulumi.Input[builtins.str] template_description: Describe the purpose of this template.
|
|
272
|
+
:param pulumi.Input[builtins.str] template_name: Help users identify and select specific templates.
|
|
273
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['ExperimentPlanTemplateTemplatePipelineArgs', 'ExperimentPlanTemplateTemplatePipelineArgsDict']]]] template_pipelines: Representative Template Pipeline. See `template_pipeline` below.
|
|
274
|
+
"""
|
|
275
|
+
...
|
|
276
|
+
@overload
|
|
277
|
+
def __init__(__self__,
|
|
278
|
+
resource_name: str,
|
|
279
|
+
args: ExperimentPlanTemplateArgs,
|
|
280
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
281
|
+
"""
|
|
282
|
+
Provides a Eflo Experiment Plan Template resource.
|
|
283
|
+
|
|
284
|
+
For information about Eflo Experiment Plan Template and how to use it, see [What is Experiment Plan Template](https://www.alibabacloud.com/help/en/pai/developer-reference/api-eflo-cnp-2023-08-28-createexperimentplantemplate).
|
|
285
|
+
|
|
286
|
+
> **NOTE:** Available since v1.248.0.
|
|
287
|
+
|
|
288
|
+
## Example Usage
|
|
289
|
+
|
|
290
|
+
Basic Usage
|
|
291
|
+
|
|
292
|
+
```python
|
|
293
|
+
import pulumi
|
|
294
|
+
import pulumi_alicloud as alicloud
|
|
295
|
+
|
|
296
|
+
config = pulumi.Config()
|
|
297
|
+
name = config.get("name")
|
|
298
|
+
if name is None:
|
|
299
|
+
name = "terraform-example"
|
|
300
|
+
default = alicloud.eflo.ExperimentPlanTemplate("default",
|
|
301
|
+
template_pipelines=[{
|
|
302
|
+
"workload_id": 2,
|
|
303
|
+
"workload_name": "MatMul",
|
|
304
|
+
"env_params": {
|
|
305
|
+
"cpu_per_worker": 90,
|
|
306
|
+
"gpu_per_worker": 8,
|
|
307
|
+
"memory_per_worker": 500,
|
|
308
|
+
"share_memory": 500,
|
|
309
|
+
"worker_num": 1,
|
|
310
|
+
"py_torch_version": "1",
|
|
311
|
+
"gpu_driver_version": "1",
|
|
312
|
+
"cuda_version": "1",
|
|
313
|
+
"nccl_version": "1",
|
|
314
|
+
},
|
|
315
|
+
"pipeline_order": 1,
|
|
316
|
+
"scene": "baseline",
|
|
317
|
+
}],
|
|
318
|
+
privacy_level="private",
|
|
319
|
+
template_name=name,
|
|
320
|
+
template_description=name)
|
|
321
|
+
```
|
|
322
|
+
|
|
323
|
+
## Import
|
|
324
|
+
|
|
325
|
+
Eflo Experiment Plan Template can be imported using the id, e.g.
|
|
326
|
+
|
|
327
|
+
```sh
|
|
328
|
+
$ pulumi import alicloud:eflo/experimentPlanTemplate:ExperimentPlanTemplate example <id>
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
:param str resource_name: The name of the resource.
|
|
332
|
+
:param ExperimentPlanTemplateArgs args: The arguments to use to populate this resource's properties.
|
|
333
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
334
|
+
"""
|
|
335
|
+
...
|
|
336
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
337
|
+
resource_args, opts = _utilities.get_resource_args_opts(ExperimentPlanTemplateArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
338
|
+
if resource_args is not None:
|
|
339
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
340
|
+
else:
|
|
341
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
342
|
+
|
|
343
|
+
def _internal_init(__self__,
|
|
344
|
+
resource_name: str,
|
|
345
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
346
|
+
privacy_level: Optional[pulumi.Input[builtins.str]] = None,
|
|
347
|
+
template_description: Optional[pulumi.Input[builtins.str]] = None,
|
|
348
|
+
template_name: Optional[pulumi.Input[builtins.str]] = None,
|
|
349
|
+
template_pipelines: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ExperimentPlanTemplateTemplatePipelineArgs', 'ExperimentPlanTemplateTemplatePipelineArgsDict']]]]] = None,
|
|
350
|
+
__props__=None):
|
|
351
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
352
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
353
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
354
|
+
if opts.id is None:
|
|
355
|
+
if __props__ is not None:
|
|
356
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
357
|
+
__props__ = ExperimentPlanTemplateArgs.__new__(ExperimentPlanTemplateArgs)
|
|
358
|
+
|
|
359
|
+
if privacy_level is None and not opts.urn:
|
|
360
|
+
raise TypeError("Missing required property 'privacy_level'")
|
|
361
|
+
__props__.__dict__["privacy_level"] = privacy_level
|
|
362
|
+
__props__.__dict__["template_description"] = template_description
|
|
363
|
+
if template_name is None and not opts.urn:
|
|
364
|
+
raise TypeError("Missing required property 'template_name'")
|
|
365
|
+
__props__.__dict__["template_name"] = template_name
|
|
366
|
+
if template_pipelines is None and not opts.urn:
|
|
367
|
+
raise TypeError("Missing required property 'template_pipelines'")
|
|
368
|
+
__props__.__dict__["template_pipelines"] = template_pipelines
|
|
369
|
+
__props__.__dict__["create_time"] = None
|
|
370
|
+
__props__.__dict__["template_id"] = None
|
|
371
|
+
super(ExperimentPlanTemplate, __self__).__init__(
|
|
372
|
+
'alicloud:eflo/experimentPlanTemplate:ExperimentPlanTemplate',
|
|
373
|
+
resource_name,
|
|
374
|
+
__props__,
|
|
375
|
+
opts)
|
|
376
|
+
|
|
377
|
+
@staticmethod
|
|
378
|
+
def get(resource_name: str,
|
|
379
|
+
id: pulumi.Input[str],
|
|
380
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
381
|
+
create_time: Optional[pulumi.Input[builtins.str]] = None,
|
|
382
|
+
privacy_level: Optional[pulumi.Input[builtins.str]] = None,
|
|
383
|
+
template_description: Optional[pulumi.Input[builtins.str]] = None,
|
|
384
|
+
template_id: Optional[pulumi.Input[builtins.str]] = None,
|
|
385
|
+
template_name: Optional[pulumi.Input[builtins.str]] = None,
|
|
386
|
+
template_pipelines: Optional[pulumi.Input[Sequence[pulumi.Input[Union['ExperimentPlanTemplateTemplatePipelineArgs', 'ExperimentPlanTemplateTemplatePipelineArgsDict']]]]] = None) -> 'ExperimentPlanTemplate':
|
|
387
|
+
"""
|
|
388
|
+
Get an existing ExperimentPlanTemplate resource's state with the given name, id, and optional extra
|
|
389
|
+
properties used to qualify the lookup.
|
|
390
|
+
|
|
391
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
392
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
393
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
394
|
+
:param pulumi.Input[builtins.str] create_time: The creation time of the resource.
|
|
395
|
+
:param pulumi.Input[builtins.str] privacy_level: Used to indicate the privacy level of the content or information. It can have the following optional parameters:
|
|
396
|
+
- private: Indicates that the content is private and restricted to specific users or permission groups. Private content is usually not publicly displayed, and only authorized users can view or edit it.
|
|
397
|
+
- public: Indicates that the content is public and can be accessed by anyone. Public content is usually viewable by all users and is suitable for sharing information or resources
|
|
398
|
+
:param pulumi.Input[builtins.str] template_description: Describe the purpose of this template.
|
|
399
|
+
:param pulumi.Input[builtins.str] template_id: The ID of the template.
|
|
400
|
+
:param pulumi.Input[builtins.str] template_name: Help users identify and select specific templates.
|
|
401
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['ExperimentPlanTemplateTemplatePipelineArgs', 'ExperimentPlanTemplateTemplatePipelineArgsDict']]]] template_pipelines: Representative Template Pipeline. See `template_pipeline` below.
|
|
402
|
+
"""
|
|
403
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
404
|
+
|
|
405
|
+
__props__ = _ExperimentPlanTemplateState.__new__(_ExperimentPlanTemplateState)
|
|
406
|
+
|
|
407
|
+
__props__.__dict__["create_time"] = create_time
|
|
408
|
+
__props__.__dict__["privacy_level"] = privacy_level
|
|
409
|
+
__props__.__dict__["template_description"] = template_description
|
|
410
|
+
__props__.__dict__["template_id"] = template_id
|
|
411
|
+
__props__.__dict__["template_name"] = template_name
|
|
412
|
+
__props__.__dict__["template_pipelines"] = template_pipelines
|
|
413
|
+
return ExperimentPlanTemplate(resource_name, opts=opts, __props__=__props__)
|
|
414
|
+
|
|
415
|
+
@property
|
|
416
|
+
@pulumi.getter(name="createTime")
|
|
417
|
+
def create_time(self) -> pulumi.Output[builtins.str]:
|
|
418
|
+
"""
|
|
419
|
+
The creation time of the resource.
|
|
420
|
+
"""
|
|
421
|
+
return pulumi.get(self, "create_time")
|
|
422
|
+
|
|
423
|
+
@property
|
|
424
|
+
@pulumi.getter(name="privacyLevel")
|
|
425
|
+
def privacy_level(self) -> pulumi.Output[builtins.str]:
|
|
426
|
+
"""
|
|
427
|
+
Used to indicate the privacy level of the content or information. It can have the following optional parameters:
|
|
428
|
+
- private: Indicates that the content is private and restricted to specific users or permission groups. Private content is usually not publicly displayed, and only authorized users can view or edit it.
|
|
429
|
+
- public: Indicates that the content is public and can be accessed by anyone. Public content is usually viewable by all users and is suitable for sharing information or resources
|
|
430
|
+
"""
|
|
431
|
+
return pulumi.get(self, "privacy_level")
|
|
432
|
+
|
|
433
|
+
@property
|
|
434
|
+
@pulumi.getter(name="templateDescription")
|
|
435
|
+
def template_description(self) -> pulumi.Output[Optional[builtins.str]]:
|
|
436
|
+
"""
|
|
437
|
+
Describe the purpose of this template.
|
|
438
|
+
"""
|
|
439
|
+
return pulumi.get(self, "template_description")
|
|
440
|
+
|
|
441
|
+
@property
|
|
442
|
+
@pulumi.getter(name="templateId")
|
|
443
|
+
def template_id(self) -> pulumi.Output[builtins.str]:
|
|
444
|
+
"""
|
|
445
|
+
The ID of the template.
|
|
446
|
+
"""
|
|
447
|
+
return pulumi.get(self, "template_id")
|
|
448
|
+
|
|
449
|
+
@property
|
|
450
|
+
@pulumi.getter(name="templateName")
|
|
451
|
+
def template_name(self) -> pulumi.Output[builtins.str]:
|
|
452
|
+
"""
|
|
453
|
+
Help users identify and select specific templates.
|
|
454
|
+
"""
|
|
455
|
+
return pulumi.get(self, "template_name")
|
|
456
|
+
|
|
457
|
+
@property
|
|
458
|
+
@pulumi.getter(name="templatePipelines")
|
|
459
|
+
def template_pipelines(self) -> pulumi.Output[Sequence['outputs.ExperimentPlanTemplateTemplatePipeline']]:
|
|
460
|
+
"""
|
|
461
|
+
Representative Template Pipeline. See `template_pipeline` below.
|
|
462
|
+
"""
|
|
463
|
+
return pulumi.get(self, "template_pipelines")
|
|
464
|
+
|