pulumi-alicloud 3.73.0a1736850863__py3-none-any.whl → 3.74.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 (123) hide show
  1. pulumi_alicloud/__init__.py +139 -0
  2. pulumi_alicloud/alb/__init__.py +2 -0
  3. pulumi_alicloud/alb/_inputs.py +913 -250
  4. pulumi_alicloud/alb/a_script.py +116 -98
  5. pulumi_alicloud/alb/get_server_groups.py +55 -25
  6. pulumi_alicloud/alb/listener.py +269 -174
  7. pulumi_alicloud/alb/load_balancer.py +239 -118
  8. pulumi_alicloud/alb/load_balancer_access_log_config_attachment.py +303 -0
  9. pulumi_alicloud/alb/load_balancer_zone_shifted_attachment.py +303 -0
  10. pulumi_alicloud/alb/outputs.py +720 -222
  11. pulumi_alicloud/alb/server_group.py +532 -122
  12. pulumi_alicloud/alikafka/instance.py +188 -70
  13. pulumi_alicloud/amqp/instance.py +77 -28
  14. pulumi_alicloud/bastionhost/_inputs.py +40 -38
  15. pulumi_alicloud/bastionhost/get_instances.py +6 -22
  16. pulumi_alicloud/bastionhost/outputs.py +60 -49
  17. pulumi_alicloud/cen/_inputs.py +34 -0
  18. pulumi_alicloud/cen/instance_grant.py +4 -0
  19. pulumi_alicloud/cen/outputs.py +37 -0
  20. pulumi_alicloud/cen/transit_router_multicast_domain.py +123 -36
  21. pulumi_alicloud/cloudcontrol/__init__.py +12 -0
  22. pulumi_alicloud/cloudcontrol/get_prices.py +199 -0
  23. pulumi_alicloud/cloudcontrol/get_products.py +187 -0
  24. pulumi_alicloud/cloudcontrol/get_resource_types.py +178 -0
  25. pulumi_alicloud/cloudcontrol/outputs.py +688 -0
  26. pulumi_alicloud/cloudcontrol/resource.py +407 -0
  27. pulumi_alicloud/cms/_inputs.py +21 -15
  28. pulumi_alicloud/cms/alarm.py +7 -7
  29. pulumi_alicloud/cms/outputs.py +14 -10
  30. pulumi_alicloud/cs/_inputs.py +349 -1
  31. pulumi_alicloud/cs/get_edge_kubernetes_clusters.py +4 -2
  32. pulumi_alicloud/cs/get_managed_kubernetes_clusters.py +2 -0
  33. pulumi_alicloud/cs/kubernetes.py +29 -29
  34. pulumi_alicloud/cs/managed_kubernetes.py +137 -47
  35. pulumi_alicloud/cs/node_pool.py +77 -2
  36. pulumi_alicloud/cs/outputs.py +265 -1
  37. pulumi_alicloud/dataworks/__init__.py +4 -0
  38. pulumi_alicloud/dataworks/_inputs.py +1534 -0
  39. pulumi_alicloud/dataworks/di_alarm_rule.py +708 -0
  40. pulumi_alicloud/dataworks/di_job.py +1005 -0
  41. pulumi_alicloud/dataworks/dw_resource_group.py +703 -0
  42. pulumi_alicloud/dataworks/network.py +331 -0
  43. pulumi_alicloud/dataworks/outputs.py +1247 -0
  44. pulumi_alicloud/dcdn/waf_rule.py +14 -14
  45. pulumi_alicloud/dfs/file_system.py +62 -23
  46. pulumi_alicloud/dfs/mount_point.py +48 -22
  47. pulumi_alicloud/dns/get_alidns_domains.py +7 -2
  48. pulumi_alicloud/dns/outputs.py +8 -0
  49. pulumi_alicloud/ecs/ecs_launch_template.py +122 -0
  50. pulumi_alicloud/ecs/ecs_network_interface.py +14 -14
  51. pulumi_alicloud/ecs/ecs_session_manager_status.py +18 -18
  52. pulumi_alicloud/ecs/instance.py +7 -7
  53. pulumi_alicloud/ecs/launch_template.py +88 -0
  54. pulumi_alicloud/esa/__init__.py +3 -0
  55. pulumi_alicloud/esa/_inputs.py +81 -0
  56. pulumi_alicloud/esa/http_request_header_modification_rule.py +531 -0
  57. pulumi_alicloud/esa/list.py +361 -0
  58. pulumi_alicloud/esa/outputs.py +48 -0
  59. pulumi_alicloud/esa/page.py +376 -0
  60. pulumi_alicloud/esa/rate_plan_instance.py +63 -7
  61. pulumi_alicloud/ess/get_scaling_groups.py +64 -10
  62. pulumi_alicloud/ess/get_scaling_rules.py +74 -10
  63. pulumi_alicloud/ess/outputs.py +357 -17
  64. pulumi_alicloud/eventbridge/get_service.py +2 -6
  65. pulumi_alicloud/fc/_inputs.py +75 -75
  66. pulumi_alicloud/fc/custom_domain.py +2 -2
  67. pulumi_alicloud/fc/function.py +32 -4
  68. pulumi_alicloud/fc/outputs.py +50 -50
  69. pulumi_alicloud/fc/v2_function.py +20 -0
  70. pulumi_alicloud/fc/v3_function.py +53 -6
  71. pulumi_alicloud/hbr/__init__.py +1 -0
  72. pulumi_alicloud/hbr/cross_account.py +338 -0
  73. pulumi_alicloud/ims/oidc_provider.py +28 -0
  74. pulumi_alicloud/kms/__init__.py +1 -0
  75. pulumi_alicloud/kms/get_instances.py +160 -0
  76. pulumi_alicloud/kms/instance.py +0 -60
  77. pulumi_alicloud/kms/outputs.py +19 -0
  78. pulumi_alicloud/log/resource_record.py +42 -26
  79. pulumi_alicloud/maxcompute/__init__.py +5 -0
  80. pulumi_alicloud/maxcompute/_inputs.py +615 -42
  81. pulumi_alicloud/maxcompute/outputs.py +486 -28
  82. pulumi_alicloud/maxcompute/project.py +63 -31
  83. pulumi_alicloud/maxcompute/quota_plan.py +412 -0
  84. pulumi_alicloud/maxcompute/quota_schedule.py +260 -0
  85. pulumi_alicloud/maxcompute/role.py +423 -0
  86. pulumi_alicloud/maxcompute/role_user_attachment.py +368 -0
  87. pulumi_alicloud/maxcompute/tunnel_quota_timer.py +287 -0
  88. pulumi_alicloud/message/service_queue.py +106 -59
  89. pulumi_alicloud/message/service_topic.py +182 -37
  90. pulumi_alicloud/mongodb/account.py +138 -163
  91. pulumi_alicloud/oos/secret_parameter.py +84 -9
  92. pulumi_alicloud/oss/bucket.py +1 -1
  93. pulumi_alicloud/oss/bucket_policy.py +2 -4
  94. pulumi_alicloud/oss/bucket_referer.py +2 -4
  95. pulumi_alicloud/oss/get_buckets.py +16 -2
  96. pulumi_alicloud/oss/outputs.py +18 -17
  97. pulumi_alicloud/pulumi-plugin.json +1 -1
  98. pulumi_alicloud/rds/instance.py +68 -0
  99. pulumi_alicloud/sae/application.py +84 -7
  100. pulumi_alicloud/sls/collection_policy.py +2 -2
  101. pulumi_alicloud/vpc/__init__.py +6 -0
  102. pulumi_alicloud/vpc/get_ipam_ipam_pool_allocations.py +295 -0
  103. pulumi_alicloud/vpc/get_ipam_ipam_pool_cidrs.py +196 -0
  104. pulumi_alicloud/vpc/get_ipam_ipam_pools.py +353 -0
  105. pulumi_alicloud/vpc/get_ipam_ipam_scopes.py +333 -0
  106. pulumi_alicloud/vpc/get_ipam_ipams.py +291 -0
  107. pulumi_alicloud/vpc/get_networks.py +3 -0
  108. pulumi_alicloud/vpc/ipam_ipam_pool.py +47 -0
  109. pulumi_alicloud/vpc/ipam_ipam_scope.py +47 -0
  110. pulumi_alicloud/vpc/ipam_service.py +144 -0
  111. pulumi_alicloud/vpc/ipv4_cidr_block.py +162 -51
  112. pulumi_alicloud/vpc/nat_gateway.py +145 -7
  113. pulumi_alicloud/vpc/outputs.py +777 -0
  114. pulumi_alicloud/vpc/snat_entry.py +107 -48
  115. pulumi_alicloud/vpn/_inputs.py +96 -72
  116. pulumi_alicloud/vpn/connection.py +24 -28
  117. pulumi_alicloud/vpn/outputs.py +64 -48
  118. pulumi_alicloud/yundun/_inputs.py +26 -24
  119. pulumi_alicloud/yundun/outputs.py +37 -22
  120. {pulumi_alicloud-3.73.0a1736850863.dist-info → pulumi_alicloud-3.74.0.dist-info}/METADATA +1 -1
  121. {pulumi_alicloud-3.73.0a1736850863.dist-info → pulumi_alicloud-3.74.0.dist-info}/RECORD +123 -95
  122. {pulumi_alicloud-3.73.0a1736850863.dist-info → pulumi_alicloud-3.74.0.dist-info}/WHEEL +0 -0
  123. {pulumi_alicloud-3.73.0a1736850863.dist-info → pulumi_alicloud-3.74.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,531 @@
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 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
+ from ._inputs import *
18
+
19
+ __all__ = ['HttpRequestHeaderModificationRuleArgs', 'HttpRequestHeaderModificationRule']
20
+
21
+ @pulumi.input_type
22
+ class HttpRequestHeaderModificationRuleArgs:
23
+ def __init__(__self__, *,
24
+ request_header_modifications: pulumi.Input[Sequence[pulumi.Input['HttpRequestHeaderModificationRuleRequestHeaderModificationArgs']]],
25
+ site_id: pulumi.Input[int],
26
+ rule: Optional[pulumi.Input[str]] = None,
27
+ rule_enable: Optional[pulumi.Input[str]] = None,
28
+ rule_name: Optional[pulumi.Input[str]] = None,
29
+ site_version: Optional[pulumi.Input[int]] = None):
30
+ """
31
+ The set of arguments for constructing a HttpRequestHeaderModificationRule resource.
32
+ :param pulumi.Input[Sequence[pulumi.Input['HttpRequestHeaderModificationRuleRequestHeaderModificationArgs']]] request_header_modifications: The configurations of modifying request headers. You can add, delete, or modify a request header. See `request_header_modification` below.
33
+ :param pulumi.Input[int] site_id: The site ID, which can be obtained by calling the ListSites API.
34
+ :param pulumi.Input[str] rule: The rule content.
35
+ :param pulumi.Input[str] rule_enable: Rule switch. Value range:
36
+ on: Open.
37
+ off: off.
38
+ :param pulumi.Input[str] rule_name: Rule Name.
39
+ :param pulumi.Input[int] site_version: The version number of the website configurations.
40
+ """
41
+ pulumi.set(__self__, "request_header_modifications", request_header_modifications)
42
+ pulumi.set(__self__, "site_id", site_id)
43
+ if rule is not None:
44
+ pulumi.set(__self__, "rule", rule)
45
+ if rule_enable is not None:
46
+ pulumi.set(__self__, "rule_enable", rule_enable)
47
+ if rule_name is not None:
48
+ pulumi.set(__self__, "rule_name", rule_name)
49
+ if site_version is not None:
50
+ pulumi.set(__self__, "site_version", site_version)
51
+
52
+ @property
53
+ @pulumi.getter(name="requestHeaderModifications")
54
+ def request_header_modifications(self) -> pulumi.Input[Sequence[pulumi.Input['HttpRequestHeaderModificationRuleRequestHeaderModificationArgs']]]:
55
+ """
56
+ The configurations of modifying request headers. You can add, delete, or modify a request header. See `request_header_modification` below.
57
+ """
58
+ return pulumi.get(self, "request_header_modifications")
59
+
60
+ @request_header_modifications.setter
61
+ def request_header_modifications(self, value: pulumi.Input[Sequence[pulumi.Input['HttpRequestHeaderModificationRuleRequestHeaderModificationArgs']]]):
62
+ pulumi.set(self, "request_header_modifications", value)
63
+
64
+ @property
65
+ @pulumi.getter(name="siteId")
66
+ def site_id(self) -> pulumi.Input[int]:
67
+ """
68
+ The site ID, which can be obtained by calling the ListSites API.
69
+ """
70
+ return pulumi.get(self, "site_id")
71
+
72
+ @site_id.setter
73
+ def site_id(self, value: pulumi.Input[int]):
74
+ pulumi.set(self, "site_id", value)
75
+
76
+ @property
77
+ @pulumi.getter
78
+ def rule(self) -> Optional[pulumi.Input[str]]:
79
+ """
80
+ The rule content.
81
+ """
82
+ return pulumi.get(self, "rule")
83
+
84
+ @rule.setter
85
+ def rule(self, value: Optional[pulumi.Input[str]]):
86
+ pulumi.set(self, "rule", value)
87
+
88
+ @property
89
+ @pulumi.getter(name="ruleEnable")
90
+ def rule_enable(self) -> Optional[pulumi.Input[str]]:
91
+ """
92
+ Rule switch. Value range:
93
+ on: Open.
94
+ off: off.
95
+ """
96
+ return pulumi.get(self, "rule_enable")
97
+
98
+ @rule_enable.setter
99
+ def rule_enable(self, value: Optional[pulumi.Input[str]]):
100
+ pulumi.set(self, "rule_enable", value)
101
+
102
+ @property
103
+ @pulumi.getter(name="ruleName")
104
+ def rule_name(self) -> Optional[pulumi.Input[str]]:
105
+ """
106
+ Rule Name.
107
+ """
108
+ return pulumi.get(self, "rule_name")
109
+
110
+ @rule_name.setter
111
+ def rule_name(self, value: Optional[pulumi.Input[str]]):
112
+ pulumi.set(self, "rule_name", value)
113
+
114
+ @property
115
+ @pulumi.getter(name="siteVersion")
116
+ def site_version(self) -> Optional[pulumi.Input[int]]:
117
+ """
118
+ The version number of the website configurations.
119
+ """
120
+ return pulumi.get(self, "site_version")
121
+
122
+ @site_version.setter
123
+ def site_version(self, value: Optional[pulumi.Input[int]]):
124
+ pulumi.set(self, "site_version", value)
125
+
126
+
127
+ @pulumi.input_type
128
+ class _HttpRequestHeaderModificationRuleState:
129
+ def __init__(__self__, *,
130
+ config_id: Optional[pulumi.Input[int]] = None,
131
+ request_header_modifications: Optional[pulumi.Input[Sequence[pulumi.Input['HttpRequestHeaderModificationRuleRequestHeaderModificationArgs']]]] = None,
132
+ rule: Optional[pulumi.Input[str]] = None,
133
+ rule_enable: Optional[pulumi.Input[str]] = None,
134
+ rule_name: Optional[pulumi.Input[str]] = None,
135
+ site_id: Optional[pulumi.Input[int]] = None,
136
+ site_version: Optional[pulumi.Input[int]] = None):
137
+ """
138
+ Input properties used for looking up and filtering HttpRequestHeaderModificationRule resources.
139
+ :param pulumi.Input[int] config_id: Config Id
140
+ :param pulumi.Input[Sequence[pulumi.Input['HttpRequestHeaderModificationRuleRequestHeaderModificationArgs']]] request_header_modifications: The configurations of modifying request headers. You can add, delete, or modify a request header. See `request_header_modification` below.
141
+ :param pulumi.Input[str] rule: The rule content.
142
+ :param pulumi.Input[str] rule_enable: Rule switch. Value range:
143
+ on: Open.
144
+ off: off.
145
+ :param pulumi.Input[str] rule_name: Rule Name.
146
+ :param pulumi.Input[int] site_id: The site ID, which can be obtained by calling the ListSites API.
147
+ :param pulumi.Input[int] site_version: The version number of the website configurations.
148
+ """
149
+ if config_id is not None:
150
+ pulumi.set(__self__, "config_id", config_id)
151
+ if request_header_modifications is not None:
152
+ pulumi.set(__self__, "request_header_modifications", request_header_modifications)
153
+ if rule is not None:
154
+ pulumi.set(__self__, "rule", rule)
155
+ if rule_enable is not None:
156
+ pulumi.set(__self__, "rule_enable", rule_enable)
157
+ if rule_name is not None:
158
+ pulumi.set(__self__, "rule_name", rule_name)
159
+ if site_id is not None:
160
+ pulumi.set(__self__, "site_id", site_id)
161
+ if site_version is not None:
162
+ pulumi.set(__self__, "site_version", site_version)
163
+
164
+ @property
165
+ @pulumi.getter(name="configId")
166
+ def config_id(self) -> Optional[pulumi.Input[int]]:
167
+ """
168
+ Config Id
169
+ """
170
+ return pulumi.get(self, "config_id")
171
+
172
+ @config_id.setter
173
+ def config_id(self, value: Optional[pulumi.Input[int]]):
174
+ pulumi.set(self, "config_id", value)
175
+
176
+ @property
177
+ @pulumi.getter(name="requestHeaderModifications")
178
+ def request_header_modifications(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['HttpRequestHeaderModificationRuleRequestHeaderModificationArgs']]]]:
179
+ """
180
+ The configurations of modifying request headers. You can add, delete, or modify a request header. See `request_header_modification` below.
181
+ """
182
+ return pulumi.get(self, "request_header_modifications")
183
+
184
+ @request_header_modifications.setter
185
+ def request_header_modifications(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['HttpRequestHeaderModificationRuleRequestHeaderModificationArgs']]]]):
186
+ pulumi.set(self, "request_header_modifications", value)
187
+
188
+ @property
189
+ @pulumi.getter
190
+ def rule(self) -> Optional[pulumi.Input[str]]:
191
+ """
192
+ The rule content.
193
+ """
194
+ return pulumi.get(self, "rule")
195
+
196
+ @rule.setter
197
+ def rule(self, value: Optional[pulumi.Input[str]]):
198
+ pulumi.set(self, "rule", value)
199
+
200
+ @property
201
+ @pulumi.getter(name="ruleEnable")
202
+ def rule_enable(self) -> Optional[pulumi.Input[str]]:
203
+ """
204
+ Rule switch. Value range:
205
+ on: Open.
206
+ off: off.
207
+ """
208
+ return pulumi.get(self, "rule_enable")
209
+
210
+ @rule_enable.setter
211
+ def rule_enable(self, value: Optional[pulumi.Input[str]]):
212
+ pulumi.set(self, "rule_enable", value)
213
+
214
+ @property
215
+ @pulumi.getter(name="ruleName")
216
+ def rule_name(self) -> Optional[pulumi.Input[str]]:
217
+ """
218
+ Rule Name.
219
+ """
220
+ return pulumi.get(self, "rule_name")
221
+
222
+ @rule_name.setter
223
+ def rule_name(self, value: Optional[pulumi.Input[str]]):
224
+ pulumi.set(self, "rule_name", value)
225
+
226
+ @property
227
+ @pulumi.getter(name="siteId")
228
+ def site_id(self) -> Optional[pulumi.Input[int]]:
229
+ """
230
+ The site ID, which can be obtained by calling the ListSites API.
231
+ """
232
+ return pulumi.get(self, "site_id")
233
+
234
+ @site_id.setter
235
+ def site_id(self, value: Optional[pulumi.Input[int]]):
236
+ pulumi.set(self, "site_id", value)
237
+
238
+ @property
239
+ @pulumi.getter(name="siteVersion")
240
+ def site_version(self) -> Optional[pulumi.Input[int]]:
241
+ """
242
+ The version number of the website configurations.
243
+ """
244
+ return pulumi.get(self, "site_version")
245
+
246
+ @site_version.setter
247
+ def site_version(self, value: Optional[pulumi.Input[int]]):
248
+ pulumi.set(self, "site_version", value)
249
+
250
+
251
+ class HttpRequestHeaderModificationRule(pulumi.CustomResource):
252
+ @overload
253
+ def __init__(__self__,
254
+ resource_name: str,
255
+ opts: Optional[pulumi.ResourceOptions] = None,
256
+ request_header_modifications: Optional[pulumi.Input[Sequence[pulumi.Input[Union['HttpRequestHeaderModificationRuleRequestHeaderModificationArgs', 'HttpRequestHeaderModificationRuleRequestHeaderModificationArgsDict']]]]] = None,
257
+ rule: Optional[pulumi.Input[str]] = None,
258
+ rule_enable: Optional[pulumi.Input[str]] = None,
259
+ rule_name: Optional[pulumi.Input[str]] = None,
260
+ site_id: Optional[pulumi.Input[int]] = None,
261
+ site_version: Optional[pulumi.Input[int]] = None,
262
+ __props__=None):
263
+ """
264
+ Provides a ESA Http Request Header Modification Rule resource.
265
+
266
+ For information about ESA Http Request Header Modification Rule and how to use it, see [What is Http Request Header Modification Rule](https://www.alibabacloud.com/help/en/).
267
+
268
+ > **NOTE:** Available since v1.242.0.
269
+
270
+ ## Example Usage
271
+
272
+ Basic Usage
273
+
274
+ ```python
275
+ import pulumi
276
+ import pulumi_alicloud as alicloud
277
+
278
+ config = pulumi.Config()
279
+ name = config.get("name")
280
+ if name is None:
281
+ name = "terraform-example"
282
+ instance = alicloud.esa.RatePlanInstance("instance",
283
+ type="NS",
284
+ auto_renew=False,
285
+ period=1,
286
+ payment_type="Subscription",
287
+ coverage="overseas",
288
+ auto_pay=True,
289
+ plan_name="high")
290
+ site = alicloud.esa.Site("site",
291
+ site_name="gositecdn.cn",
292
+ instance_id=instance.id,
293
+ coverage="overseas",
294
+ access_type="NS")
295
+ default = alicloud.esa.HttpRequestHeaderModificationRule("default",
296
+ rule_name="example_modify",
297
+ request_header_modifications=[{
298
+ "value": "modify1",
299
+ "operation": "modify",
300
+ "name": "example_modify1",
301
+ }],
302
+ site_id=site.id,
303
+ rule_enable="off",
304
+ rule="(http.request.uri eq \\"/content?page=1234\\")",
305
+ site_version=0)
306
+ ```
307
+
308
+ ## Import
309
+
310
+ ESA Http Request Header Modification Rule can be imported using the id, e.g.
311
+
312
+ ```sh
313
+ $ pulumi import alicloud:esa/httpRequestHeaderModificationRule:HttpRequestHeaderModificationRule example <site_id>:<config_id>
314
+ ```
315
+
316
+ :param str resource_name: The name of the resource.
317
+ :param pulumi.ResourceOptions opts: Options for the resource.
318
+ :param pulumi.Input[Sequence[pulumi.Input[Union['HttpRequestHeaderModificationRuleRequestHeaderModificationArgs', 'HttpRequestHeaderModificationRuleRequestHeaderModificationArgsDict']]]] request_header_modifications: The configurations of modifying request headers. You can add, delete, or modify a request header. See `request_header_modification` below.
319
+ :param pulumi.Input[str] rule: The rule content.
320
+ :param pulumi.Input[str] rule_enable: Rule switch. Value range:
321
+ on: Open.
322
+ off: off.
323
+ :param pulumi.Input[str] rule_name: Rule Name.
324
+ :param pulumi.Input[int] site_id: The site ID, which can be obtained by calling the ListSites API.
325
+ :param pulumi.Input[int] site_version: The version number of the website configurations.
326
+ """
327
+ ...
328
+ @overload
329
+ def __init__(__self__,
330
+ resource_name: str,
331
+ args: HttpRequestHeaderModificationRuleArgs,
332
+ opts: Optional[pulumi.ResourceOptions] = None):
333
+ """
334
+ Provides a ESA Http Request Header Modification Rule resource.
335
+
336
+ For information about ESA Http Request Header Modification Rule and how to use it, see [What is Http Request Header Modification Rule](https://www.alibabacloud.com/help/en/).
337
+
338
+ > **NOTE:** Available since v1.242.0.
339
+
340
+ ## Example Usage
341
+
342
+ Basic Usage
343
+
344
+ ```python
345
+ import pulumi
346
+ import pulumi_alicloud as alicloud
347
+
348
+ config = pulumi.Config()
349
+ name = config.get("name")
350
+ if name is None:
351
+ name = "terraform-example"
352
+ instance = alicloud.esa.RatePlanInstance("instance",
353
+ type="NS",
354
+ auto_renew=False,
355
+ period=1,
356
+ payment_type="Subscription",
357
+ coverage="overseas",
358
+ auto_pay=True,
359
+ plan_name="high")
360
+ site = alicloud.esa.Site("site",
361
+ site_name="gositecdn.cn",
362
+ instance_id=instance.id,
363
+ coverage="overseas",
364
+ access_type="NS")
365
+ default = alicloud.esa.HttpRequestHeaderModificationRule("default",
366
+ rule_name="example_modify",
367
+ request_header_modifications=[{
368
+ "value": "modify1",
369
+ "operation": "modify",
370
+ "name": "example_modify1",
371
+ }],
372
+ site_id=site.id,
373
+ rule_enable="off",
374
+ rule="(http.request.uri eq \\"/content?page=1234\\")",
375
+ site_version=0)
376
+ ```
377
+
378
+ ## Import
379
+
380
+ ESA Http Request Header Modification Rule can be imported using the id, e.g.
381
+
382
+ ```sh
383
+ $ pulumi import alicloud:esa/httpRequestHeaderModificationRule:HttpRequestHeaderModificationRule example <site_id>:<config_id>
384
+ ```
385
+
386
+ :param str resource_name: The name of the resource.
387
+ :param HttpRequestHeaderModificationRuleArgs args: The arguments to use to populate this resource's properties.
388
+ :param pulumi.ResourceOptions opts: Options for the resource.
389
+ """
390
+ ...
391
+ def __init__(__self__, resource_name: str, *args, **kwargs):
392
+ resource_args, opts = _utilities.get_resource_args_opts(HttpRequestHeaderModificationRuleArgs, pulumi.ResourceOptions, *args, **kwargs)
393
+ if resource_args is not None:
394
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
395
+ else:
396
+ __self__._internal_init(resource_name, *args, **kwargs)
397
+
398
+ def _internal_init(__self__,
399
+ resource_name: str,
400
+ opts: Optional[pulumi.ResourceOptions] = None,
401
+ request_header_modifications: Optional[pulumi.Input[Sequence[pulumi.Input[Union['HttpRequestHeaderModificationRuleRequestHeaderModificationArgs', 'HttpRequestHeaderModificationRuleRequestHeaderModificationArgsDict']]]]] = None,
402
+ rule: Optional[pulumi.Input[str]] = None,
403
+ rule_enable: Optional[pulumi.Input[str]] = None,
404
+ rule_name: Optional[pulumi.Input[str]] = None,
405
+ site_id: Optional[pulumi.Input[int]] = None,
406
+ site_version: Optional[pulumi.Input[int]] = None,
407
+ __props__=None):
408
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
409
+ if not isinstance(opts, pulumi.ResourceOptions):
410
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
411
+ if opts.id is None:
412
+ if __props__ is not None:
413
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
414
+ __props__ = HttpRequestHeaderModificationRuleArgs.__new__(HttpRequestHeaderModificationRuleArgs)
415
+
416
+ if request_header_modifications is None and not opts.urn:
417
+ raise TypeError("Missing required property 'request_header_modifications'")
418
+ __props__.__dict__["request_header_modifications"] = request_header_modifications
419
+ __props__.__dict__["rule"] = rule
420
+ __props__.__dict__["rule_enable"] = rule_enable
421
+ __props__.__dict__["rule_name"] = rule_name
422
+ if site_id is None and not opts.urn:
423
+ raise TypeError("Missing required property 'site_id'")
424
+ __props__.__dict__["site_id"] = site_id
425
+ __props__.__dict__["site_version"] = site_version
426
+ __props__.__dict__["config_id"] = None
427
+ super(HttpRequestHeaderModificationRule, __self__).__init__(
428
+ 'alicloud:esa/httpRequestHeaderModificationRule:HttpRequestHeaderModificationRule',
429
+ resource_name,
430
+ __props__,
431
+ opts)
432
+
433
+ @staticmethod
434
+ def get(resource_name: str,
435
+ id: pulumi.Input[str],
436
+ opts: Optional[pulumi.ResourceOptions] = None,
437
+ config_id: Optional[pulumi.Input[int]] = None,
438
+ request_header_modifications: Optional[pulumi.Input[Sequence[pulumi.Input[Union['HttpRequestHeaderModificationRuleRequestHeaderModificationArgs', 'HttpRequestHeaderModificationRuleRequestHeaderModificationArgsDict']]]]] = None,
439
+ rule: Optional[pulumi.Input[str]] = None,
440
+ rule_enable: Optional[pulumi.Input[str]] = None,
441
+ rule_name: Optional[pulumi.Input[str]] = None,
442
+ site_id: Optional[pulumi.Input[int]] = None,
443
+ site_version: Optional[pulumi.Input[int]] = None) -> 'HttpRequestHeaderModificationRule':
444
+ """
445
+ Get an existing HttpRequestHeaderModificationRule resource's state with the given name, id, and optional extra
446
+ properties used to qualify the lookup.
447
+
448
+ :param str resource_name: The unique name of the resulting resource.
449
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
450
+ :param pulumi.ResourceOptions opts: Options for the resource.
451
+ :param pulumi.Input[int] config_id: Config Id
452
+ :param pulumi.Input[Sequence[pulumi.Input[Union['HttpRequestHeaderModificationRuleRequestHeaderModificationArgs', 'HttpRequestHeaderModificationRuleRequestHeaderModificationArgsDict']]]] request_header_modifications: The configurations of modifying request headers. You can add, delete, or modify a request header. See `request_header_modification` below.
453
+ :param pulumi.Input[str] rule: The rule content.
454
+ :param pulumi.Input[str] rule_enable: Rule switch. Value range:
455
+ on: Open.
456
+ off: off.
457
+ :param pulumi.Input[str] rule_name: Rule Name.
458
+ :param pulumi.Input[int] site_id: The site ID, which can be obtained by calling the ListSites API.
459
+ :param pulumi.Input[int] site_version: The version number of the website configurations.
460
+ """
461
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
462
+
463
+ __props__ = _HttpRequestHeaderModificationRuleState.__new__(_HttpRequestHeaderModificationRuleState)
464
+
465
+ __props__.__dict__["config_id"] = config_id
466
+ __props__.__dict__["request_header_modifications"] = request_header_modifications
467
+ __props__.__dict__["rule"] = rule
468
+ __props__.__dict__["rule_enable"] = rule_enable
469
+ __props__.__dict__["rule_name"] = rule_name
470
+ __props__.__dict__["site_id"] = site_id
471
+ __props__.__dict__["site_version"] = site_version
472
+ return HttpRequestHeaderModificationRule(resource_name, opts=opts, __props__=__props__)
473
+
474
+ @property
475
+ @pulumi.getter(name="configId")
476
+ def config_id(self) -> pulumi.Output[int]:
477
+ """
478
+ Config Id
479
+ """
480
+ return pulumi.get(self, "config_id")
481
+
482
+ @property
483
+ @pulumi.getter(name="requestHeaderModifications")
484
+ def request_header_modifications(self) -> pulumi.Output[Sequence['outputs.HttpRequestHeaderModificationRuleRequestHeaderModification']]:
485
+ """
486
+ The configurations of modifying request headers. You can add, delete, or modify a request header. See `request_header_modification` below.
487
+ """
488
+ return pulumi.get(self, "request_header_modifications")
489
+
490
+ @property
491
+ @pulumi.getter
492
+ def rule(self) -> pulumi.Output[Optional[str]]:
493
+ """
494
+ The rule content.
495
+ """
496
+ return pulumi.get(self, "rule")
497
+
498
+ @property
499
+ @pulumi.getter(name="ruleEnable")
500
+ def rule_enable(self) -> pulumi.Output[Optional[str]]:
501
+ """
502
+ Rule switch. Value range:
503
+ on: Open.
504
+ off: off.
505
+ """
506
+ return pulumi.get(self, "rule_enable")
507
+
508
+ @property
509
+ @pulumi.getter(name="ruleName")
510
+ def rule_name(self) -> pulumi.Output[Optional[str]]:
511
+ """
512
+ Rule Name.
513
+ """
514
+ return pulumi.get(self, "rule_name")
515
+
516
+ @property
517
+ @pulumi.getter(name="siteId")
518
+ def site_id(self) -> pulumi.Output[int]:
519
+ """
520
+ The site ID, which can be obtained by calling the ListSites API.
521
+ """
522
+ return pulumi.get(self, "site_id")
523
+
524
+ @property
525
+ @pulumi.getter(name="siteVersion")
526
+ def site_version(self) -> pulumi.Output[Optional[int]]:
527
+ """
528
+ The version number of the website configurations.
529
+ """
530
+ return pulumi.get(self, "site_version")
531
+