pulumi-alicloud 3.84.0a1757017465__py3-none-any.whl → 3.85.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pulumi-alicloud might be problematic. Click here for more details.

Files changed (54) hide show
  1. pulumi_alicloud/__init__.py +64 -0
  2. pulumi_alicloud/amqp/get_instances.py +49 -20
  3. pulumi_alicloud/amqp/outputs.py +20 -20
  4. pulumi_alicloud/amqp/virtual_host.py +46 -20
  5. pulumi_alicloud/cloudsso/__init__.py +1 -0
  6. pulumi_alicloud/cloudsso/delegate_account.py +218 -0
  7. pulumi_alicloud/cs/node_pool.py +7 -0
  8. pulumi_alicloud/ddos/bgp_ip.py +57 -48
  9. pulumi_alicloud/ddos/ddos_bgp_instance.py +246 -106
  10. pulumi_alicloud/dms/__init__.py +1 -0
  11. pulumi_alicloud/dms/enterprise_workspace.py +354 -0
  12. pulumi_alicloud/dns/ddos_bgp_instance.py +246 -106
  13. pulumi_alicloud/eflo/node.py +54 -7
  14. pulumi_alicloud/esa/__init__.py +3 -0
  15. pulumi_alicloud/esa/kv_account.py +145 -0
  16. pulumi_alicloud/esa/routine_related_record.py +226 -0
  17. pulumi_alicloud/esa/url_observation.py +352 -0
  18. pulumi_alicloud/fc/get_service.py +2 -2
  19. pulumi_alicloud/hologram/instance.py +35 -0
  20. pulumi_alicloud/kms/instance.py +47 -0
  21. pulumi_alicloud/log/oss_export.py +6 -0
  22. pulumi_alicloud/message/service_subscription.py +48 -1
  23. pulumi_alicloud/mongodb/sharding_instance.py +338 -0
  24. pulumi_alicloud/nlb/server_group.py +28 -21
  25. pulumi_alicloud/oss/bucket.py +56 -0
  26. pulumi_alicloud/privatelink/vpc_endpoint.py +21 -7
  27. pulumi_alicloud/pulumi-plugin.json +1 -1
  28. pulumi_alicloud/resourcemanager/__init__.py +1 -0
  29. pulumi_alicloud/resourcemanager/delegated_administrator.py +22 -50
  30. pulumi_alicloud/resourcemanager/folder.py +106 -29
  31. pulumi_alicloud/resourcemanager/get_accounts.py +35 -18
  32. pulumi_alicloud/resourcemanager/message_contact.py +572 -0
  33. pulumi_alicloud/resourcemanager/outputs.py +31 -20
  34. pulumi_alicloud/resourcemanager/resource_directory.py +137 -46
  35. pulumi_alicloud/resourcemanager/shared_resource.py +81 -45
  36. pulumi_alicloud/resourcemanager/shared_target.py +60 -24
  37. pulumi_alicloud/sls/__init__.py +4 -0
  38. pulumi_alicloud/sls/_inputs.py +128 -0
  39. pulumi_alicloud/sls/get_logtail_configs.py +395 -0
  40. pulumi_alicloud/sls/get_machine_groups.py +229 -0
  41. pulumi_alicloud/sls/logtail_config.py +692 -0
  42. pulumi_alicloud/sls/machine_group.py +502 -0
  43. pulumi_alicloud/sls/outputs.py +172 -0
  44. pulumi_alicloud/vpc/_inputs.py +87 -54
  45. pulumi_alicloud/vpc/dhcp_options_set.py +97 -58
  46. pulumi_alicloud/vpc/flow_log.py +25 -25
  47. pulumi_alicloud/vpc/ha_vip_attachment.py +41 -60
  48. pulumi_alicloud/vpc/ha_vipv2.py +100 -88
  49. pulumi_alicloud/vpc/network_acl.py +34 -23
  50. pulumi_alicloud/vpc/outputs.py +58 -36
  51. {pulumi_alicloud-3.84.0a1757017465.dist-info → pulumi_alicloud-3.85.0.dist-info}/METADATA +1 -1
  52. {pulumi_alicloud-3.84.0a1757017465.dist-info → pulumi_alicloud-3.85.0.dist-info}/RECORD +54 -44
  53. {pulumi_alicloud-3.84.0a1757017465.dist-info → pulumi_alicloud-3.85.0.dist-info}/WHEEL +0 -0
  54. {pulumi_alicloud-3.84.0a1757017465.dist-info → pulumi_alicloud-3.85.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,395 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
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
15
+ from .. import _utilities
16
+ from . import outputs
17
+
18
+ __all__ = [
19
+ 'GetLogtailConfigsResult',
20
+ 'AwaitableGetLogtailConfigsResult',
21
+ 'get_logtail_configs',
22
+ 'get_logtail_configs_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetLogtailConfigsResult:
27
+ """
28
+ A collection of values returned by getLogtailConfigs.
29
+ """
30
+ def __init__(__self__, configs=None, id=None, ids=None, logstore_name=None, logtail_config_name=None, name_regex=None, names=None, offset=None, output_file=None, project_name=None, size=None):
31
+ if configs and not isinstance(configs, list):
32
+ raise TypeError("Expected argument 'configs' to be a list")
33
+ pulumi.set(__self__, "configs", configs)
34
+ if id and not isinstance(id, str):
35
+ raise TypeError("Expected argument 'id' to be a str")
36
+ pulumi.set(__self__, "id", id)
37
+ if ids and not isinstance(ids, list):
38
+ raise TypeError("Expected argument 'ids' to be a list")
39
+ pulumi.set(__self__, "ids", ids)
40
+ if logstore_name and not isinstance(logstore_name, str):
41
+ raise TypeError("Expected argument 'logstore_name' to be a str")
42
+ pulumi.set(__self__, "logstore_name", logstore_name)
43
+ if logtail_config_name and not isinstance(logtail_config_name, str):
44
+ raise TypeError("Expected argument 'logtail_config_name' to be a str")
45
+ pulumi.set(__self__, "logtail_config_name", logtail_config_name)
46
+ if name_regex and not isinstance(name_regex, str):
47
+ raise TypeError("Expected argument 'name_regex' to be a str")
48
+ pulumi.set(__self__, "name_regex", name_regex)
49
+ if names and not isinstance(names, list):
50
+ raise TypeError("Expected argument 'names' to be a list")
51
+ pulumi.set(__self__, "names", names)
52
+ if offset and not isinstance(offset, int):
53
+ raise TypeError("Expected argument 'offset' to be a int")
54
+ pulumi.set(__self__, "offset", offset)
55
+ if output_file and not isinstance(output_file, str):
56
+ raise TypeError("Expected argument 'output_file' to be a str")
57
+ pulumi.set(__self__, "output_file", output_file)
58
+ if project_name and not isinstance(project_name, str):
59
+ raise TypeError("Expected argument 'project_name' to be a str")
60
+ pulumi.set(__self__, "project_name", project_name)
61
+ if size and not isinstance(size, int):
62
+ raise TypeError("Expected argument 'size' to be a int")
63
+ pulumi.set(__self__, "size", size)
64
+
65
+ @_builtins.property
66
+ @pulumi.getter
67
+ def configs(self) -> Sequence['outputs.GetLogtailConfigsConfigResult']:
68
+ """
69
+ A list of Logtail Config Entries. Each element contains the following attributes:
70
+ """
71
+ return pulumi.get(self, "configs")
72
+
73
+ @_builtins.property
74
+ @pulumi.getter
75
+ def id(self) -> _builtins.str:
76
+ """
77
+ The provider-assigned unique ID for this managed resource.
78
+ """
79
+ return pulumi.get(self, "id")
80
+
81
+ @_builtins.property
82
+ @pulumi.getter
83
+ def ids(self) -> Sequence[_builtins.str]:
84
+ """
85
+ A list of Logtail Config IDs.
86
+ """
87
+ return pulumi.get(self, "ids")
88
+
89
+ @_builtins.property
90
+ @pulumi.getter(name="logstoreName")
91
+ def logstore_name(self) -> _builtins.str:
92
+ return pulumi.get(self, "logstore_name")
93
+
94
+ @_builtins.property
95
+ @pulumi.getter(name="logtailConfigName")
96
+ def logtail_config_name(self) -> Optional[_builtins.str]:
97
+ """
98
+ The name of the resource
99
+ """
100
+ return pulumi.get(self, "logtail_config_name")
101
+
102
+ @_builtins.property
103
+ @pulumi.getter(name="nameRegex")
104
+ def name_regex(self) -> Optional[_builtins.str]:
105
+ return pulumi.get(self, "name_regex")
106
+
107
+ @_builtins.property
108
+ @pulumi.getter
109
+ def names(self) -> Sequence[_builtins.str]:
110
+ """
111
+ A list of name of Logtail Configs.
112
+ """
113
+ return pulumi.get(self, "names")
114
+
115
+ @_builtins.property
116
+ @pulumi.getter
117
+ def offset(self) -> _builtins.int:
118
+ return pulumi.get(self, "offset")
119
+
120
+ @_builtins.property
121
+ @pulumi.getter(name="outputFile")
122
+ def output_file(self) -> Optional[_builtins.str]:
123
+ return pulumi.get(self, "output_file")
124
+
125
+ @_builtins.property
126
+ @pulumi.getter(name="projectName")
127
+ def project_name(self) -> _builtins.str:
128
+ return pulumi.get(self, "project_name")
129
+
130
+ @_builtins.property
131
+ @pulumi.getter
132
+ def size(self) -> _builtins.int:
133
+ return pulumi.get(self, "size")
134
+
135
+
136
+ class AwaitableGetLogtailConfigsResult(GetLogtailConfigsResult):
137
+ # pylint: disable=using-constant-test
138
+ def __await__(self):
139
+ if False:
140
+ yield self
141
+ return GetLogtailConfigsResult(
142
+ configs=self.configs,
143
+ id=self.id,
144
+ ids=self.ids,
145
+ logstore_name=self.logstore_name,
146
+ logtail_config_name=self.logtail_config_name,
147
+ name_regex=self.name_regex,
148
+ names=self.names,
149
+ offset=self.offset,
150
+ output_file=self.output_file,
151
+ project_name=self.project_name,
152
+ size=self.size)
153
+
154
+
155
+ def get_logtail_configs(ids: Optional[Sequence[_builtins.str]] = None,
156
+ logstore_name: Optional[_builtins.str] = None,
157
+ logtail_config_name: Optional[_builtins.str] = None,
158
+ name_regex: Optional[_builtins.str] = None,
159
+ offset: Optional[_builtins.int] = None,
160
+ output_file: Optional[_builtins.str] = None,
161
+ project_name: Optional[_builtins.str] = None,
162
+ size: Optional[_builtins.int] = None,
163
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetLogtailConfigsResult:
164
+ """
165
+ This data source provides Sls Logtail Config available to the user.[What is Logtail Config](https://next.api.alibabacloud.com/document/Sls/2020-12-30/CreateConfig)
166
+
167
+ > **NOTE:** Available since v1.259.0.
168
+
169
+ ## Example Usage
170
+
171
+ ```python
172
+ import pulumi
173
+ import json
174
+ import pulumi_alicloud as alicloud
175
+ import pulumi_random as random
176
+
177
+ default_integer = random.index.Integer("default",
178
+ max=99999,
179
+ min=10000)
180
+ config = pulumi.Config()
181
+ name = config.get("name")
182
+ if name is None:
183
+ name = "tfaccsls62147"
184
+ project_name = config.get("projectName")
185
+ if project_name is None:
186
+ project_name = "project-for-logtail-terraform"
187
+ defaultu_a28z_s = alicloud.log.Project("defaultuA28zS", project_name=project_name)
188
+ default_logtail_config = alicloud.sls.LogtailConfig("default",
189
+ project_name=defaultu_a28z_s.project_name,
190
+ output_detail={
191
+ "endpoint": "cn-hangzhou-intranet.log.aliyuncs.com",
192
+ "region": "cn-hangzhou",
193
+ "logstore_name": "example",
194
+ },
195
+ output_type="LogService",
196
+ input_detail=json.dumps({
197
+ "adjustTimezone": False,
198
+ "delayAlarmBytes": 0,
199
+ "delaySkipBytes": 0,
200
+ "discardNonUtf8": False,
201
+ "discardUnmatch": True,
202
+ "dockerFile": False,
203
+ "enableRawLog": False,
204
+ "enableTag": False,
205
+ "fileEncoding": "utf8",
206
+ "filePattern": "access*.log",
207
+ "filterKey": ["key1"],
208
+ "filterRegex": ["regex1"],
209
+ "key": [
210
+ "key1",
211
+ "key2",
212
+ ],
213
+ "localStorage": True,
214
+ "logBeginRegex": ".*",
215
+ "logPath": "/var/log/httpd",
216
+ "logTimezone": "",
217
+ "logType": "common_reg_log",
218
+ "maxDepth": 1000,
219
+ "maxSendRate": -1,
220
+ "mergeType": "topic",
221
+ "preserve": True,
222
+ "preserveDepth": 0,
223
+ "priority": 0,
224
+ "regex": "(w+)(s+)",
225
+ "sendRateExpire": 0,
226
+ "sensitive_keys": [],
227
+ "tailExisted": False,
228
+ "timeFormat": "%Y/%m/%d %H:%M:%S",
229
+ "timeKey": "time",
230
+ "topicFormat": "none",
231
+ }),
232
+ logtail_config_name="tfaccsls62147",
233
+ input_type="file")
234
+ default = default_logtail_config.logtail_config_name.apply(lambda logtail_config_name: alicloud.sls.get_logtail_configs_output(logtail_config_name=logtail_config_name,
235
+ logstore_name="example",
236
+ project_name=project_name,
237
+ offset=0,
238
+ size=100))
239
+ pulumi.export("alicloudSlsLogtailConfigExampleId", default.configs[0].id)
240
+ ```
241
+
242
+
243
+ :param Sequence[_builtins.str] ids: A list of Logtail Config IDs. The value is formulated as `<project_name>:<logtail_config_name>`.
244
+ :param _builtins.str logstore_name: Logstore name.
245
+ :param _builtins.str logtail_config_name: The name of the resource
246
+ :param _builtins.str name_regex: A regex string to filter results by Group Metric Rule name.
247
+ :param _builtins.int offset: Query start row. The default value is 0.
248
+ :param _builtins.str output_file: File name where to save data source results (after running `pulumi preview`).
249
+ :param _builtins.str project_name: Project name
250
+ :param _builtins.int size: The number of rows per page set for a pagination query. The maximum value is 500.
251
+ """
252
+ __args__ = dict()
253
+ __args__['ids'] = ids
254
+ __args__['logstoreName'] = logstore_name
255
+ __args__['logtailConfigName'] = logtail_config_name
256
+ __args__['nameRegex'] = name_regex
257
+ __args__['offset'] = offset
258
+ __args__['outputFile'] = output_file
259
+ __args__['projectName'] = project_name
260
+ __args__['size'] = size
261
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
262
+ __ret__ = pulumi.runtime.invoke('alicloud:sls/getLogtailConfigs:getLogtailConfigs', __args__, opts=opts, typ=GetLogtailConfigsResult).value
263
+
264
+ return AwaitableGetLogtailConfigsResult(
265
+ configs=pulumi.get(__ret__, 'configs'),
266
+ id=pulumi.get(__ret__, 'id'),
267
+ ids=pulumi.get(__ret__, 'ids'),
268
+ logstore_name=pulumi.get(__ret__, 'logstore_name'),
269
+ logtail_config_name=pulumi.get(__ret__, 'logtail_config_name'),
270
+ name_regex=pulumi.get(__ret__, 'name_regex'),
271
+ names=pulumi.get(__ret__, 'names'),
272
+ offset=pulumi.get(__ret__, 'offset'),
273
+ output_file=pulumi.get(__ret__, 'output_file'),
274
+ project_name=pulumi.get(__ret__, 'project_name'),
275
+ size=pulumi.get(__ret__, 'size'))
276
+ def get_logtail_configs_output(ids: Optional[pulumi.Input[Optional[Sequence[_builtins.str]]]] = None,
277
+ logstore_name: Optional[pulumi.Input[_builtins.str]] = None,
278
+ logtail_config_name: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
279
+ name_regex: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
280
+ offset: Optional[pulumi.Input[_builtins.int]] = None,
281
+ output_file: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
282
+ project_name: Optional[pulumi.Input[_builtins.str]] = None,
283
+ size: Optional[pulumi.Input[_builtins.int]] = None,
284
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetLogtailConfigsResult]:
285
+ """
286
+ This data source provides Sls Logtail Config available to the user.[What is Logtail Config](https://next.api.alibabacloud.com/document/Sls/2020-12-30/CreateConfig)
287
+
288
+ > **NOTE:** Available since v1.259.0.
289
+
290
+ ## Example Usage
291
+
292
+ ```python
293
+ import pulumi
294
+ import json
295
+ import pulumi_alicloud as alicloud
296
+ import pulumi_random as random
297
+
298
+ default_integer = random.index.Integer("default",
299
+ max=99999,
300
+ min=10000)
301
+ config = pulumi.Config()
302
+ name = config.get("name")
303
+ if name is None:
304
+ name = "tfaccsls62147"
305
+ project_name = config.get("projectName")
306
+ if project_name is None:
307
+ project_name = "project-for-logtail-terraform"
308
+ defaultu_a28z_s = alicloud.log.Project("defaultuA28zS", project_name=project_name)
309
+ default_logtail_config = alicloud.sls.LogtailConfig("default",
310
+ project_name=defaultu_a28z_s.project_name,
311
+ output_detail={
312
+ "endpoint": "cn-hangzhou-intranet.log.aliyuncs.com",
313
+ "region": "cn-hangzhou",
314
+ "logstore_name": "example",
315
+ },
316
+ output_type="LogService",
317
+ input_detail=json.dumps({
318
+ "adjustTimezone": False,
319
+ "delayAlarmBytes": 0,
320
+ "delaySkipBytes": 0,
321
+ "discardNonUtf8": False,
322
+ "discardUnmatch": True,
323
+ "dockerFile": False,
324
+ "enableRawLog": False,
325
+ "enableTag": False,
326
+ "fileEncoding": "utf8",
327
+ "filePattern": "access*.log",
328
+ "filterKey": ["key1"],
329
+ "filterRegex": ["regex1"],
330
+ "key": [
331
+ "key1",
332
+ "key2",
333
+ ],
334
+ "localStorage": True,
335
+ "logBeginRegex": ".*",
336
+ "logPath": "/var/log/httpd",
337
+ "logTimezone": "",
338
+ "logType": "common_reg_log",
339
+ "maxDepth": 1000,
340
+ "maxSendRate": -1,
341
+ "mergeType": "topic",
342
+ "preserve": True,
343
+ "preserveDepth": 0,
344
+ "priority": 0,
345
+ "regex": "(w+)(s+)",
346
+ "sendRateExpire": 0,
347
+ "sensitive_keys": [],
348
+ "tailExisted": False,
349
+ "timeFormat": "%Y/%m/%d %H:%M:%S",
350
+ "timeKey": "time",
351
+ "topicFormat": "none",
352
+ }),
353
+ logtail_config_name="tfaccsls62147",
354
+ input_type="file")
355
+ default = default_logtail_config.logtail_config_name.apply(lambda logtail_config_name: alicloud.sls.get_logtail_configs_output(logtail_config_name=logtail_config_name,
356
+ logstore_name="example",
357
+ project_name=project_name,
358
+ offset=0,
359
+ size=100))
360
+ pulumi.export("alicloudSlsLogtailConfigExampleId", default.configs[0].id)
361
+ ```
362
+
363
+
364
+ :param Sequence[_builtins.str] ids: A list of Logtail Config IDs. The value is formulated as `<project_name>:<logtail_config_name>`.
365
+ :param _builtins.str logstore_name: Logstore name.
366
+ :param _builtins.str logtail_config_name: The name of the resource
367
+ :param _builtins.str name_regex: A regex string to filter results by Group Metric Rule name.
368
+ :param _builtins.int offset: Query start row. The default value is 0.
369
+ :param _builtins.str output_file: File name where to save data source results (after running `pulumi preview`).
370
+ :param _builtins.str project_name: Project name
371
+ :param _builtins.int size: The number of rows per page set for a pagination query. The maximum value is 500.
372
+ """
373
+ __args__ = dict()
374
+ __args__['ids'] = ids
375
+ __args__['logstoreName'] = logstore_name
376
+ __args__['logtailConfigName'] = logtail_config_name
377
+ __args__['nameRegex'] = name_regex
378
+ __args__['offset'] = offset
379
+ __args__['outputFile'] = output_file
380
+ __args__['projectName'] = project_name
381
+ __args__['size'] = size
382
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
383
+ __ret__ = pulumi.runtime.invoke_output('alicloud:sls/getLogtailConfigs:getLogtailConfigs', __args__, opts=opts, typ=GetLogtailConfigsResult)
384
+ return __ret__.apply(lambda __response__: GetLogtailConfigsResult(
385
+ configs=pulumi.get(__response__, 'configs'),
386
+ id=pulumi.get(__response__, 'id'),
387
+ ids=pulumi.get(__response__, 'ids'),
388
+ logstore_name=pulumi.get(__response__, 'logstore_name'),
389
+ logtail_config_name=pulumi.get(__response__, 'logtail_config_name'),
390
+ name_regex=pulumi.get(__response__, 'name_regex'),
391
+ names=pulumi.get(__response__, 'names'),
392
+ offset=pulumi.get(__response__, 'offset'),
393
+ output_file=pulumi.get(__response__, 'output_file'),
394
+ project_name=pulumi.get(__response__, 'project_name'),
395
+ size=pulumi.get(__response__, 'size')))
@@ -0,0 +1,229 @@
1
+ # coding=utf-8
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
+ # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+
5
+ import builtins as _builtins
6
+ import warnings
7
+ import sys
8
+ import pulumi
9
+ import pulumi.runtime
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
15
+ from .. import _utilities
16
+ from . import outputs
17
+
18
+ __all__ = [
19
+ 'GetMachineGroupsResult',
20
+ 'AwaitableGetMachineGroupsResult',
21
+ 'get_machine_groups',
22
+ 'get_machine_groups_output',
23
+ ]
24
+
25
+ @pulumi.output_type
26
+ class GetMachineGroupsResult:
27
+ """
28
+ A collection of values returned by getMachineGroups.
29
+ """
30
+ def __init__(__self__, group_name=None, groups=None, id=None, ids=None, output_file=None, project_name=None):
31
+ if group_name and not isinstance(group_name, str):
32
+ raise TypeError("Expected argument 'group_name' to be a str")
33
+ pulumi.set(__self__, "group_name", group_name)
34
+ if groups and not isinstance(groups, list):
35
+ raise TypeError("Expected argument 'groups' to be a list")
36
+ pulumi.set(__self__, "groups", groups)
37
+ if id and not isinstance(id, str):
38
+ raise TypeError("Expected argument 'id' to be a str")
39
+ pulumi.set(__self__, "id", id)
40
+ if ids and not isinstance(ids, list):
41
+ raise TypeError("Expected argument 'ids' to be a list")
42
+ pulumi.set(__self__, "ids", ids)
43
+ if output_file and not isinstance(output_file, str):
44
+ raise TypeError("Expected argument 'output_file' to be a str")
45
+ pulumi.set(__self__, "output_file", output_file)
46
+ if project_name and not isinstance(project_name, str):
47
+ raise TypeError("Expected argument 'project_name' to be a str")
48
+ pulumi.set(__self__, "project_name", project_name)
49
+
50
+ @_builtins.property
51
+ @pulumi.getter(name="groupName")
52
+ def group_name(self) -> Optional[_builtins.str]:
53
+ """
54
+ Machine Group name
55
+ """
56
+ return pulumi.get(self, "group_name")
57
+
58
+ @_builtins.property
59
+ @pulumi.getter
60
+ def groups(self) -> Sequence['outputs.GetMachineGroupsGroupResult']:
61
+ """
62
+ A list of Machine Group Entries. Each element contains the following attributes:
63
+ """
64
+ return pulumi.get(self, "groups")
65
+
66
+ @_builtins.property
67
+ @pulumi.getter
68
+ def id(self) -> _builtins.str:
69
+ """
70
+ The provider-assigned unique ID for this managed resource.
71
+ """
72
+ return pulumi.get(self, "id")
73
+
74
+ @_builtins.property
75
+ @pulumi.getter
76
+ def ids(self) -> Sequence[_builtins.str]:
77
+ """
78
+ A list of Machine Group IDs.
79
+ """
80
+ return pulumi.get(self, "ids")
81
+
82
+ @_builtins.property
83
+ @pulumi.getter(name="outputFile")
84
+ def output_file(self) -> Optional[_builtins.str]:
85
+ return pulumi.get(self, "output_file")
86
+
87
+ @_builtins.property
88
+ @pulumi.getter(name="projectName")
89
+ def project_name(self) -> _builtins.str:
90
+ return pulumi.get(self, "project_name")
91
+
92
+
93
+ class AwaitableGetMachineGroupsResult(GetMachineGroupsResult):
94
+ # pylint: disable=using-constant-test
95
+ def __await__(self):
96
+ if False:
97
+ yield self
98
+ return GetMachineGroupsResult(
99
+ group_name=self.group_name,
100
+ groups=self.groups,
101
+ id=self.id,
102
+ ids=self.ids,
103
+ output_file=self.output_file,
104
+ project_name=self.project_name)
105
+
106
+
107
+ def get_machine_groups(group_name: Optional[_builtins.str] = None,
108
+ ids: Optional[Sequence[_builtins.str]] = None,
109
+ output_file: Optional[_builtins.str] = None,
110
+ project_name: Optional[_builtins.str] = None,
111
+ opts: Optional[pulumi.InvokeOptions] = None) -> AwaitableGetMachineGroupsResult:
112
+ """
113
+ This data source provides Sls Machine Group available to the user.[What is Machine Group](https://next.api.alibabacloud.com/document/Sls/2020-12-30/CreateMachineGroup)
114
+
115
+ > **NOTE:** Available since v1.259.0.
116
+
117
+ ## Example Usage
118
+
119
+ ```python
120
+ import pulumi
121
+ import pulumi_alicloud as alicloud
122
+
123
+ config = pulumi.Config()
124
+ name = config.get("name")
125
+ if name is None:
126
+ name = "terraform-example"
127
+ project_name = config.get("projectName")
128
+ if project_name is None:
129
+ project_name = "project-for-machine-group-terraform"
130
+ defaulty_jqrue = alicloud.log.Project("defaultyJqrue",
131
+ description="for terraform example",
132
+ name=project_name)
133
+ default_machine_group = alicloud.sls.MachineGroup("default",
134
+ group_name="group1",
135
+ project_name=project_name,
136
+ machine_identify_type="ip",
137
+ group_attribute={
138
+ "group_topic": "example",
139
+ "external_name": "example",
140
+ },
141
+ machine_lists=["192.168.1.1"])
142
+ default = alicloud.sls.get_machine_groups_output(ids=[default_machine_group.id],
143
+ group_name="group1",
144
+ project_name=project_name)
145
+ pulumi.export("alicloudSlsMachineGroupExampleId", default.groups[0].id)
146
+ ```
147
+
148
+
149
+ :param _builtins.str group_name: Machine Group name
150
+ :param Sequence[_builtins.str] ids: A list of Machine Group IDs. The value is formulated as `<project_name>:<group_name>`.
151
+ :param _builtins.str output_file: File name where to save data source results (after running `pulumi preview`).
152
+ :param _builtins.str project_name: Project name
153
+ """
154
+ __args__ = dict()
155
+ __args__['groupName'] = group_name
156
+ __args__['ids'] = ids
157
+ __args__['outputFile'] = output_file
158
+ __args__['projectName'] = project_name
159
+ opts = pulumi.InvokeOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
160
+ __ret__ = pulumi.runtime.invoke('alicloud:sls/getMachineGroups:getMachineGroups', __args__, opts=opts, typ=GetMachineGroupsResult).value
161
+
162
+ return AwaitableGetMachineGroupsResult(
163
+ group_name=pulumi.get(__ret__, 'group_name'),
164
+ groups=pulumi.get(__ret__, 'groups'),
165
+ id=pulumi.get(__ret__, 'id'),
166
+ ids=pulumi.get(__ret__, 'ids'),
167
+ output_file=pulumi.get(__ret__, 'output_file'),
168
+ project_name=pulumi.get(__ret__, 'project_name'))
169
+ def get_machine_groups_output(group_name: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
170
+ ids: Optional[pulumi.Input[Optional[Sequence[_builtins.str]]]] = None,
171
+ output_file: Optional[pulumi.Input[Optional[_builtins.str]]] = None,
172
+ project_name: Optional[pulumi.Input[_builtins.str]] = None,
173
+ opts: Optional[Union[pulumi.InvokeOptions, pulumi.InvokeOutputOptions]] = None) -> pulumi.Output[GetMachineGroupsResult]:
174
+ """
175
+ This data source provides Sls Machine Group available to the user.[What is Machine Group](https://next.api.alibabacloud.com/document/Sls/2020-12-30/CreateMachineGroup)
176
+
177
+ > **NOTE:** Available since v1.259.0.
178
+
179
+ ## Example Usage
180
+
181
+ ```python
182
+ import pulumi
183
+ import pulumi_alicloud as alicloud
184
+
185
+ config = pulumi.Config()
186
+ name = config.get("name")
187
+ if name is None:
188
+ name = "terraform-example"
189
+ project_name = config.get("projectName")
190
+ if project_name is None:
191
+ project_name = "project-for-machine-group-terraform"
192
+ defaulty_jqrue = alicloud.log.Project("defaultyJqrue",
193
+ description="for terraform example",
194
+ name=project_name)
195
+ default_machine_group = alicloud.sls.MachineGroup("default",
196
+ group_name="group1",
197
+ project_name=project_name,
198
+ machine_identify_type="ip",
199
+ group_attribute={
200
+ "group_topic": "example",
201
+ "external_name": "example",
202
+ },
203
+ machine_lists=["192.168.1.1"])
204
+ default = alicloud.sls.get_machine_groups_output(ids=[default_machine_group.id],
205
+ group_name="group1",
206
+ project_name=project_name)
207
+ pulumi.export("alicloudSlsMachineGroupExampleId", default.groups[0].id)
208
+ ```
209
+
210
+
211
+ :param _builtins.str group_name: Machine Group name
212
+ :param Sequence[_builtins.str] ids: A list of Machine Group IDs. The value is formulated as `<project_name>:<group_name>`.
213
+ :param _builtins.str output_file: File name where to save data source results (after running `pulumi preview`).
214
+ :param _builtins.str project_name: Project name
215
+ """
216
+ __args__ = dict()
217
+ __args__['groupName'] = group_name
218
+ __args__['ids'] = ids
219
+ __args__['outputFile'] = output_file
220
+ __args__['projectName'] = project_name
221
+ opts = pulumi.InvokeOutputOptions.merge(_utilities.get_invoke_opts_defaults(), opts)
222
+ __ret__ = pulumi.runtime.invoke_output('alicloud:sls/getMachineGroups:getMachineGroups', __args__, opts=opts, typ=GetMachineGroupsResult)
223
+ return __ret__.apply(lambda __response__: GetMachineGroupsResult(
224
+ group_name=pulumi.get(__response__, 'group_name'),
225
+ groups=pulumi.get(__response__, 'groups'),
226
+ id=pulumi.get(__response__, 'id'),
227
+ ids=pulumi.get(__response__, 'ids'),
228
+ output_file=pulumi.get(__response__, 'output_file'),
229
+ project_name=pulumi.get(__response__, 'project_name')))