pulumi-alicloud 3.75.0a1741324537__py3-none-any.whl → 3.76.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 (355) hide show
  1. pulumi_alicloud/__init__.py +501 -4
  2. pulumi_alicloud/_inputs.py +53 -0
  3. pulumi_alicloud/ackone/__init__.py +1 -0
  4. pulumi_alicloud/ackone/cluster.py +73 -8
  5. pulumi_alicloud/ackone/membership_attachment.py +223 -0
  6. pulumi_alicloud/actiontrail/global_events_storage_region.py +2 -2
  7. pulumi_alicloud/adb/db_cluster_lake_version.py +458 -49
  8. pulumi_alicloud/alb/_inputs.py +217 -17
  9. pulumi_alicloud/alb/load_balancer.py +7 -35
  10. pulumi_alicloud/alb/load_balancer_access_log_config_attachment.py +2 -2
  11. pulumi_alicloud/alb/load_balancer_security_group_attachment.py +69 -22
  12. pulumi_alicloud/alb/outputs.py +150 -12
  13. pulumi_alicloud/alb/server_group.py +199 -44
  14. pulumi_alicloud/aligreen/audit_callback.py +2 -2
  15. pulumi_alicloud/aligreen/biz_type.py +2 -2
  16. pulumi_alicloud/aligreen/callback.py +2 -2
  17. pulumi_alicloud/aligreen/image_lib.py +2 -2
  18. pulumi_alicloud/aligreen/keyword_lib.py +2 -2
  19. pulumi_alicloud/aligreen/oss_stock_task.py +77 -14
  20. pulumi_alicloud/alikafka/sasl_acl.py +7 -7
  21. pulumi_alicloud/apigateway/_inputs.py +134 -0
  22. pulumi_alicloud/apigateway/group.py +117 -5
  23. pulumi_alicloud/apigateway/instance.py +199 -11
  24. pulumi_alicloud/apigateway/outputs.py +107 -0
  25. pulumi_alicloud/arms/alert_contact.py +2 -2
  26. pulumi_alicloud/arms/alert_contact_group.py +2 -2
  27. pulumi_alicloud/arms/get_prometheus.py +2 -6
  28. pulumi_alicloud/arms/grafana_workspace.py +511 -69
  29. pulumi_alicloud/arms/outputs.py +18 -18
  30. pulumi_alicloud/arms/prometheus_alert_rule.py +2 -2
  31. pulumi_alicloud/arms/prometheus_monitoring.py +2 -2
  32. pulumi_alicloud/cdn/domain_new.py +2 -2
  33. pulumi_alicloud/cen/_inputs.py +6 -3
  34. pulumi_alicloud/cen/get_transit_router_vpn_attachments.py +131 -19
  35. pulumi_alicloud/cen/instance.py +101 -59
  36. pulumi_alicloud/cen/inter_region_traffic_qos_policy.py +126 -81
  37. pulumi_alicloud/cen/inter_region_traffic_qos_queue.py +93 -47
  38. pulumi_alicloud/cen/outputs.py +69 -26
  39. pulumi_alicloud/cen/transit_route_table_aggregation.py +171 -55
  40. pulumi_alicloud/cen/transit_router.py +127 -53
  41. pulumi_alicloud/cen/transit_router_cidr.py +53 -35
  42. pulumi_alicloud/cen/transit_router_ecr_attachment.py +2 -2
  43. pulumi_alicloud/cen/transit_router_peer_attachment.py +360 -143
  44. pulumi_alicloud/cen/transit_router_route_table_association.py +33 -43
  45. pulumi_alicloud/cen/transit_router_vpn_attachment.py +438 -109
  46. pulumi_alicloud/cfg/aggregate_compliance_pack.py +6 -4
  47. pulumi_alicloud/cfg/aggregate_config_rule.py +6 -4
  48. pulumi_alicloud/cfg/aggregator.py +6 -4
  49. pulumi_alicloud/clickhouse/db_cluster.py +179 -6
  50. pulumi_alicloud/clickhouseenterprisedbcluster/__init__.py +14 -0
  51. pulumi_alicloud/clickhouseenterprisedbcluster/_inputs.py +167 -0
  52. pulumi_alicloud/clickhouseenterprisedbcluster/account.py +554 -0
  53. pulumi_alicloud/clickhouseenterprisedbcluster/backup_policy.py +407 -0
  54. pulumi_alicloud/clickhouseenterprisedbcluster/click_house_enterprise_db_cluster.py +641 -0
  55. pulumi_alicloud/clickhouseenterprisedbcluster/outputs.py +147 -0
  56. pulumi_alicloud/clickhouseenterprisedbcluster/public_endpoint.py +364 -0
  57. pulumi_alicloud/clickhouseenterprisedbcluster/security_ip.py +357 -0
  58. pulumi_alicloud/cloudcontrol/get_prices.py +2 -2
  59. pulumi_alicloud/cloudcontrol/get_products.py +2 -2
  60. pulumi_alicloud/cloudcontrol/get_resource_types.py +2 -2
  61. pulumi_alicloud/cloudcontrol/resource.py +2 -2
  62. pulumi_alicloud/cloudfirewall/__init__.py +2 -0
  63. pulumi_alicloud/cloudfirewall/get_nat_firewalls.py +315 -0
  64. pulumi_alicloud/cloudfirewall/get_vpc_cen_tr_firewalls.py +569 -0
  65. pulumi_alicloud/cloudfirewall/outputs.py +362 -0
  66. pulumi_alicloud/cloudphone/__init__.py +12 -0
  67. pulumi_alicloud/cloudphone/_inputs.py +175 -0
  68. pulumi_alicloud/cloudphone/image.py +323 -0
  69. pulumi_alicloud/cloudphone/key_pair.py +294 -0
  70. pulumi_alicloud/cloudphone/outputs.py +138 -0
  71. pulumi_alicloud/cloudphone/policy.py +522 -0
  72. pulumi_alicloud/cloudphoneinstance/__init__.py +9 -0
  73. pulumi_alicloud/cloudphoneinstance/cloud_phone_instance.py +209 -0
  74. pulumi_alicloud/cloudphoneinstance/group.py +961 -0
  75. pulumi_alicloud/cloudsso/scim_server_credential.py +178 -11
  76. pulumi_alicloud/cms/get_site_monitors.py +2 -2
  77. pulumi_alicloud/config/outputs.py +32 -0
  78. pulumi_alicloud/cs/__init__.py +1 -0
  79. pulumi_alicloud/cs/_inputs.py +9 -9
  80. pulumi_alicloud/cs/get_kubernetes_clusters.py +5 -4
  81. pulumi_alicloud/cs/get_kubernetes_node_pools.py +147 -0
  82. pulumi_alicloud/cs/get_managed_kubernetes_clusters.py +5 -4
  83. pulumi_alicloud/cs/get_serverless_kubernetes_clusters.py +5 -4
  84. pulumi_alicloud/cs/managed_kubernetes.py +174 -59
  85. pulumi_alicloud/cs/node_pool.py +91 -63
  86. pulumi_alicloud/cs/outputs.py +1991 -213
  87. pulumi_alicloud/databasefilesystem/service_linked_role.py +2 -2
  88. pulumi_alicloud/dataworks/data_source.py +2 -2
  89. pulumi_alicloud/dataworks/data_source_shared_rule.py +2 -2
  90. pulumi_alicloud/dataworks/di_alarm_rule.py +2 -2
  91. pulumi_alicloud/dataworks/di_job.py +2 -2
  92. pulumi_alicloud/dataworks/dw_resource_group.py +2 -2
  93. pulumi_alicloud/dataworks/network.py +2 -2
  94. pulumi_alicloud/dataworks/project.py +2 -2
  95. pulumi_alicloud/dataworks/project_member.py +2 -2
  96. pulumi_alicloud/dbs/backup_plan.py +2 -2
  97. pulumi_alicloud/ddos/bgp_policy.py +2 -2
  98. pulumi_alicloud/ddos/ddos_bgp_instance.py +0 -4
  99. pulumi_alicloud/dfs/vsc_mount_point.py +28 -28
  100. pulumi_alicloud/dns/ddos_bgp_instance.py +0 -4
  101. pulumi_alicloud/eais/__init__.py +2 -0
  102. pulumi_alicloud/eais/_inputs.py +75 -0
  103. pulumi_alicloud/eais/client_instance_attachment.py +408 -0
  104. pulumi_alicloud/eais/instance.py +365 -118
  105. pulumi_alicloud/eais/outputs.py +32 -0
  106. pulumi_alicloud/ebs/disk_replica_group.py +512 -30
  107. pulumi_alicloud/ebs/disk_replica_pair.py +443 -113
  108. pulumi_alicloud/ebs/enterprise_snapshot_policy.py +2 -2
  109. pulumi_alicloud/ebs/enterprise_snapshot_policy_attachment.py +2 -2
  110. pulumi_alicloud/ebs/replica_group_drill.py +2 -2
  111. pulumi_alicloud/ebs/replica_pair_drill.py +2 -2
  112. pulumi_alicloud/ecp/instance.py +2 -2
  113. pulumi_alicloud/ecp/key_pair.py +4 -4
  114. pulumi_alicloud/ecs/_inputs.py +33 -0
  115. pulumi_alicloud/ecs/disk.py +1 -1
  116. pulumi_alicloud/ecs/ecs_deployment_set.py +89 -67
  117. pulumi_alicloud/ecs/ecs_disk.py +1 -1
  118. pulumi_alicloud/ecs/ecs_launch_template.py +23 -23
  119. pulumi_alicloud/ecs/eip.py +1 -1
  120. pulumi_alicloud/ecs/eip_address.py +1 -1
  121. pulumi_alicloud/ecs/instance.py +44 -31
  122. pulumi_alicloud/ecs/outputs.py +26 -2
  123. pulumi_alicloud/eds/command.py +10 -2
  124. pulumi_alicloud/eflo/__init__.py +5 -0
  125. pulumi_alicloud/eflo/_inputs.py +1717 -0
  126. pulumi_alicloud/eflo/cluster.py +935 -0
  127. pulumi_alicloud/eflo/invocation.py +1114 -0
  128. pulumi_alicloud/eflo/node.py +1013 -0
  129. pulumi_alicloud/eflo/node_group.py +1101 -0
  130. pulumi_alicloud/eflo/outputs.py +1366 -0
  131. pulumi_alicloud/emrv2/__init__.py +1 -0
  132. pulumi_alicloud/emrv2/_inputs.py +47 -7
  133. pulumi_alicloud/emrv2/get_cluster_instances.py +537 -0
  134. pulumi_alicloud/emrv2/outputs.py +195 -5
  135. pulumi_alicloud/ens/eip_instance_attachment.py +2 -2
  136. pulumi_alicloud/ens/image.py +81 -34
  137. pulumi_alicloud/ens/instance_security_group_attachment.py +8 -4
  138. pulumi_alicloud/ens/nat_gateway.py +6 -6
  139. pulumi_alicloud/ens/vswitch.py +36 -36
  140. pulumi_alicloud/esa/__init__.py +23 -0
  141. pulumi_alicloud/esa/_inputs.py +1068 -15
  142. pulumi_alicloud/esa/cache_reserve_instance.py +522 -0
  143. pulumi_alicloud/esa/cache_rule.py +1419 -0
  144. pulumi_alicloud/esa/certificate.py +731 -0
  145. pulumi_alicloud/esa/client_ca_certificate.py +388 -0
  146. pulumi_alicloud/esa/client_certificate.py +452 -0
  147. pulumi_alicloud/esa/compression_rule.py +596 -0
  148. pulumi_alicloud/esa/edge_container_app.py +972 -0
  149. pulumi_alicloud/esa/edge_container_app_record.py +376 -0
  150. pulumi_alicloud/esa/get_sites.py +421 -0
  151. pulumi_alicloud/esa/http_request_header_modification_rule.py +58 -44
  152. pulumi_alicloud/esa/http_response_header_modification_rule.py +539 -0
  153. pulumi_alicloud/esa/https_application_configuration.py +939 -0
  154. pulumi_alicloud/esa/https_basic_configuration.py +1041 -0
  155. pulumi_alicloud/esa/image_transform.py +498 -0
  156. pulumi_alicloud/esa/kv_namespace.py +276 -0
  157. pulumi_alicloud/esa/list.py +30 -30
  158. pulumi_alicloud/esa/network_optimization.py +680 -0
  159. pulumi_alicloud/esa/origin_pool.py +485 -0
  160. pulumi_alicloud/esa/origin_rule.py +796 -0
  161. pulumi_alicloud/esa/outputs.py +959 -10
  162. pulumi_alicloud/esa/page.py +30 -51
  163. pulumi_alicloud/esa/rate_plan_instance.py +88 -161
  164. pulumi_alicloud/esa/record.py +2 -2
  165. pulumi_alicloud/esa/redirect_rule.py +748 -0
  166. pulumi_alicloud/esa/rewrite_url_rule.py +688 -0
  167. pulumi_alicloud/esa/site.py +276 -27
  168. pulumi_alicloud/esa/site_delivery_task.py +841 -0
  169. pulumi_alicloud/esa/waiting_room.py +1207 -0
  170. pulumi_alicloud/esa/waiting_room_event.py +1378 -0
  171. pulumi_alicloud/esa/waiting_room_rule.py +497 -0
  172. pulumi_alicloud/ess/_inputs.py +155 -0
  173. pulumi_alicloud/ess/outputs.py +128 -0
  174. pulumi_alicloud/ess/scaling_configuration.py +7 -7
  175. pulumi_alicloud/ess/scaling_group.py +237 -2
  176. pulumi_alicloud/ess/scaling_rule.py +143 -2
  177. pulumi_alicloud/expressconnect/ec_failover_test_job.py +0 -2
  178. pulumi_alicloud/expressconnect/router_grant_association.py +2 -2
  179. pulumi_alicloud/expressconnect/vbr_pconn_association.py +2 -2
  180. pulumi_alicloud/expressconnect/virtual_border_router.py +4 -4
  181. pulumi_alicloud/ga/get_basic_accelerators.py +31 -9
  182. pulumi_alicloud/ga/outputs.py +10 -4
  183. pulumi_alicloud/gpdb/db_resource_group.py +6 -6
  184. pulumi_alicloud/gpdb/external_data_service.py +6 -6
  185. pulumi_alicloud/gpdb/hadoop_data_source.py +2 -2
  186. pulumi_alicloud/gpdb/jdbc_data_source.py +2 -2
  187. pulumi_alicloud/gpdb/remote_adb_data_source.py +6 -6
  188. pulumi_alicloud/gpdb/streaming_data_service.py +2 -2
  189. pulumi_alicloud/gpdb/streaming_data_source.py +2 -2
  190. pulumi_alicloud/gpdb/streaming_job.py +2 -2
  191. pulumi_alicloud/hbr/policy.py +67 -6
  192. pulumi_alicloud/hbr/vault.py +210 -9
  193. pulumi_alicloud/ims/oidc_provider.py +24 -13
  194. pulumi_alicloud/kms/get_keys.py +10 -0
  195. pulumi_alicloud/kvstore/account.py +9 -9
  196. pulumi_alicloud/kvstore/connection.py +2 -2
  197. pulumi_alicloud/kvstore/get_instance_classes.py +2 -2
  198. pulumi_alicloud/kvstore/get_instance_engines.py +2 -2
  199. pulumi_alicloud/kvstore/instance.py +7 -7
  200. pulumi_alicloud/kvstore/outputs.py +2 -2
  201. pulumi_alicloud/live/caster.py +2 -2
  202. pulumi_alicloud/maxcompute/__init__.py +1 -0
  203. pulumi_alicloud/maxcompute/_inputs.py +232 -3
  204. pulumi_alicloud/maxcompute/outputs.py +183 -2
  205. pulumi_alicloud/maxcompute/project.py +2 -2
  206. pulumi_alicloud/maxcompute/quota.py +438 -0
  207. pulumi_alicloud/message/__init__.py +3 -0
  208. pulumi_alicloud/message/_inputs.py +149 -0
  209. pulumi_alicloud/message/outputs.py +112 -0
  210. pulumi_alicloud/message/service_endpoint.py +218 -0
  211. pulumi_alicloud/message/service_endpoint_acl.py +306 -0
  212. pulumi_alicloud/message/service_queue.py +49 -0
  213. pulumi_alicloud/message/service_subscription.py +91 -14
  214. pulumi_alicloud/mse/nacos_config.py +4 -0
  215. pulumi_alicloud/nas/mount_target.py +149 -54
  216. pulumi_alicloud/nlb/__init__.py +1 -0
  217. pulumi_alicloud/nlb/_inputs.py +157 -30
  218. pulumi_alicloud/nlb/listener.py +87 -20
  219. pulumi_alicloud/nlb/load_balancer.py +212 -24
  220. pulumi_alicloud/nlb/load_balancer_zone_shifted_attachment.py +397 -0
  221. pulumi_alicloud/nlb/outputs.py +123 -20
  222. pulumi_alicloud/nlb/server_group.py +55 -20
  223. pulumi_alicloud/nlb/server_group_server_attachment.py +118 -65
  224. pulumi_alicloud/oss/__init__.py +1 -0
  225. pulumi_alicloud/oss/_inputs.py +20 -0
  226. pulumi_alicloud/oss/access_point.py +2 -2
  227. pulumi_alicloud/oss/bucket_cname.py +2 -2
  228. pulumi_alicloud/oss/bucket_cors.py +2 -2
  229. pulumi_alicloud/oss/bucket_style.py +402 -0
  230. pulumi_alicloud/oss/bucket_website.py +2 -2
  231. pulumi_alicloud/oss/outputs.py +14 -0
  232. pulumi_alicloud/ots/_inputs.py +3 -3
  233. pulumi_alicloud/ots/outputs.py +2 -2
  234. pulumi_alicloud/pai/service.py +59 -67
  235. pulumi_alicloud/pai/workspace_code_source.py +2 -2
  236. pulumi_alicloud/pai/workspace_dataset.py +2 -2
  237. pulumi_alicloud/pai/workspace_datasetversion.py +2 -4
  238. pulumi_alicloud/pai/workspace_experiment.py +2 -2
  239. pulumi_alicloud/pai/workspace_run.py +2 -2
  240. pulumi_alicloud/pai/workspace_workspace.py +2 -2
  241. pulumi_alicloud/polardb/cluster.py +75 -28
  242. pulumi_alicloud/privatelink/get_vpc_endpoints.py +21 -1
  243. pulumi_alicloud/privatelink/outputs.py +11 -0
  244. pulumi_alicloud/privatelink/vpc_endpoint.py +1 -1
  245. pulumi_alicloud/privatelink/vpc_endpoint_zone.py +1 -1
  246. pulumi_alicloud/pulumi-plugin.json +1 -1
  247. pulumi_alicloud/ram/__init__.py +3 -0
  248. pulumi_alicloud/ram/_inputs.py +9 -9
  249. pulumi_alicloud/ram/access_key.py +97 -35
  250. pulumi_alicloud/ram/account_alias.py +18 -45
  251. pulumi_alicloud/ram/get_system_policys.py +189 -0
  252. pulumi_alicloud/ram/group.py +156 -35
  253. pulumi_alicloud/ram/group_policy_attachment.py +51 -29
  254. pulumi_alicloud/ram/login_profile.py +92 -38
  255. pulumi_alicloud/ram/outputs.py +91 -6
  256. pulumi_alicloud/ram/password_policy.py +779 -0
  257. pulumi_alicloud/ram/policy.py +199 -88
  258. pulumi_alicloud/ram/role_policy_attachment.py +51 -29
  259. pulumi_alicloud/ram/saml_provider.py +44 -37
  260. pulumi_alicloud/ram/user.py +10 -2
  261. pulumi_alicloud/ram/user_group_attachment.py +273 -0
  262. pulumi_alicloud/ram/user_policy_attachment.py +49 -27
  263. pulumi_alicloud/rds/__init__.py +1 -0
  264. pulumi_alicloud/rds/custom_disk.py +1053 -0
  265. pulumi_alicloud/rds/instance.py +117 -14
  266. pulumi_alicloud/redis/tair_instance.py +14 -14
  267. pulumi_alicloud/resourcemanager/__init__.py +1 -0
  268. pulumi_alicloud/resourcemanager/_inputs.py +53 -0
  269. pulumi_alicloud/resourcemanager/auto_grouping_rule.py +796 -0
  270. pulumi_alicloud/resourcemanager/outputs.py +50 -0
  271. pulumi_alicloud/resourcemanager/shared_resource.py +7 -0
  272. pulumi_alicloud/rocketmq/__init__.py +1 -1
  273. pulumi_alicloud/rocketmq/_inputs.py +146 -4
  274. pulumi_alicloud/rocketmq/account.py +452 -0
  275. pulumi_alicloud/rocketmq/acl.py +473 -47
  276. pulumi_alicloud/rocketmq/client_user.py +8 -2
  277. pulumi_alicloud/rocketmq/consumer_group.py +121 -24
  278. pulumi_alicloud/rocketmq/dnat_entry.py +8 -2
  279. pulumi_alicloud/rocketmq/outputs.py +113 -4
  280. pulumi_alicloud/rocketmq/qos.py +8 -2
  281. pulumi_alicloud/rocketmq/qos_car.py +10 -4
  282. pulumi_alicloud/rocketmq/qos_policy.py +6 -0
  283. pulumi_alicloud/rocketmq/rocket_mq_instance.py +136 -7
  284. pulumi_alicloud/rocketmq/rocket_mq_topic.py +121 -24
  285. pulumi_alicloud/rocketmq/snat_entry.py +8 -2
  286. pulumi_alicloud/sag/__init__.py +8 -0
  287. pulumi_alicloud/sag/acl.py +200 -0
  288. pulumi_alicloud/{rocketmq → sag}/acl_rule.py +7 -7
  289. pulumi_alicloud/sag/client_user.py +560 -0
  290. pulumi_alicloud/sag/dnat_entry.py +512 -0
  291. pulumi_alicloud/sag/get_acls.py +2 -2
  292. pulumi_alicloud/sag/qos.py +202 -0
  293. pulumi_alicloud/sag/qos_car.py +654 -0
  294. pulumi_alicloud/sag/qos_policy.py +659 -0
  295. pulumi_alicloud/sag/snat_entry.py +313 -0
  296. pulumi_alicloud/securitycenter/group.py +2 -2
  297. pulumi_alicloud/selectdb/db_instance.py +60 -11
  298. pulumi_alicloud/simpleapplicationserver/get_server_plans.py +7 -7
  299. pulumi_alicloud/simpleapplicationserver/outputs.py +3 -3
  300. pulumi_alicloud/slb/server_group_server_attachment.py +101 -111
  301. pulumi_alicloud/sls/oss_export_sink.py +2 -2
  302. pulumi_alicloud/tag/__init__.py +1 -0
  303. pulumi_alicloud/tag/associated_rule.py +306 -0
  304. pulumi_alicloud/tag/policy.py +27 -36
  305. pulumi_alicloud/threatdetection/__init__.py +3 -0
  306. pulumi_alicloud/threatdetection/anti_brute_force_rule.py +41 -65
  307. pulumi_alicloud/threatdetection/asset_bind.py +209 -0
  308. pulumi_alicloud/threatdetection/asset_selection_config.py +258 -0
  309. pulumi_alicloud/threatdetection/instance.py +271 -54
  310. pulumi_alicloud/threatdetection/log_meta.py +351 -0
  311. pulumi_alicloud/vpc/__init__.py +2 -0
  312. pulumi_alicloud/vpc/_inputs.py +281 -0
  313. pulumi_alicloud/vpc/common_bandwith_package.py +107 -44
  314. pulumi_alicloud/vpc/common_bandwith_package_attachment.py +2 -2
  315. pulumi_alicloud/vpc/flow_log.py +184 -49
  316. pulumi_alicloud/vpc/forward_entry.py +8 -4
  317. pulumi_alicloud/vpc/gateway_endpoint.py +85 -27
  318. pulumi_alicloud/vpc/get_enhanced_nat_available_zones.py +38 -2
  319. pulumi_alicloud/vpc/get_forward_entries.py +2 -2
  320. pulumi_alicloud/vpc/get_ipam_ipam_pool_allocations.py +2 -2
  321. pulumi_alicloud/vpc/get_ipam_ipam_pool_cidrs.py +2 -2
  322. pulumi_alicloud/vpc/get_ipam_ipam_pools.py +2 -2
  323. pulumi_alicloud/vpc/get_ipam_ipam_scopes.py +2 -2
  324. pulumi_alicloud/vpc/get_ipam_ipams.py +2 -2
  325. pulumi_alicloud/vpc/get_ipsec_servers.py +14 -2
  326. pulumi_alicloud/vpc/get_nat_gateways.py +48 -2
  327. pulumi_alicloud/vpc/get_prefix_lists.py +11 -2
  328. pulumi_alicloud/vpc/get_snat_entries.py +5 -2
  329. pulumi_alicloud/vpc/get_traffic_mirror_filters.py +14 -2
  330. pulumi_alicloud/vpc/ipam_ipam.py +2 -9
  331. pulumi_alicloud/vpc/ipam_ipam_pool.py +2 -30
  332. pulumi_alicloud/vpc/ipam_ipam_pool_allocation.py +6 -16
  333. pulumi_alicloud/vpc/ipam_ipam_pool_cidr.py +2 -2
  334. pulumi_alicloud/vpc/ipam_ipam_resource_discovery.py +489 -0
  335. pulumi_alicloud/vpc/ipam_ipam_scope.py +2 -9
  336. pulumi_alicloud/vpc/ipv6_address.py +85 -5
  337. pulumi_alicloud/vpc/nat_gateway.py +8 -0
  338. pulumi_alicloud/vpc/outputs.py +244 -2
  339. pulumi_alicloud/vpc/peer_connection.py +84 -42
  340. pulumi_alicloud/vpc/peer_connection_accepter.py +7 -21
  341. pulumi_alicloud/vpc/route_table.py +100 -45
  342. pulumi_alicloud/vpc/router_interface_connection.py +4 -4
  343. pulumi_alicloud/vpc/traffic_mirror_filter.py +2 -2
  344. pulumi_alicloud/vpc/vpc_route_entry.py +724 -0
  345. pulumi_alicloud/vpn/_inputs.py +716 -71
  346. pulumi_alicloud/vpn/gateway_vpn_attachment.py +622 -128
  347. pulumi_alicloud/vpn/get_gateway_vco_routes.py +11 -2
  348. pulumi_alicloud/vpn/get_gateway_vpn_attachments.py +26 -60
  349. pulumi_alicloud/vpn/get_gateways.py +21 -1
  350. pulumi_alicloud/vpn/ipsec_server.py +2 -2
  351. pulumi_alicloud/vpn/outputs.py +1982 -1006
  352. {pulumi_alicloud-3.75.0a1741324537.dist-info → pulumi_alicloud-3.76.0.dist-info}/METADATA +2 -2
  353. {pulumi_alicloud-3.75.0a1741324537.dist-info → pulumi_alicloud-3.76.0.dist-info}/RECORD +355 -278
  354. {pulumi_alicloud-3.75.0a1741324537.dist-info → pulumi_alicloud-3.76.0.dist-info}/WHEEL +1 -1
  355. {pulumi_alicloud-3.75.0a1741324537.dist-info → pulumi_alicloud-3.76.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,1419 @@
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
+
17
+ __all__ = ['CacheRuleArgs', 'CacheRule']
18
+
19
+ @pulumi.input_type
20
+ class CacheRuleArgs:
21
+ def __init__(__self__, *,
22
+ site_id: pulumi.Input[int],
23
+ additional_cacheable_ports: Optional[pulumi.Input[str]] = None,
24
+ browser_cache_mode: Optional[pulumi.Input[str]] = None,
25
+ browser_cache_ttl: Optional[pulumi.Input[str]] = None,
26
+ bypass_cache: Optional[pulumi.Input[str]] = None,
27
+ cache_deception_armor: Optional[pulumi.Input[str]] = None,
28
+ cache_reserve_eligibility: Optional[pulumi.Input[str]] = None,
29
+ check_presence_cookie: Optional[pulumi.Input[str]] = None,
30
+ check_presence_header: Optional[pulumi.Input[str]] = None,
31
+ edge_cache_mode: Optional[pulumi.Input[str]] = None,
32
+ edge_cache_ttl: Optional[pulumi.Input[str]] = None,
33
+ edge_status_code_cache_ttl: Optional[pulumi.Input[str]] = None,
34
+ include_cookie: Optional[pulumi.Input[str]] = None,
35
+ include_header: Optional[pulumi.Input[str]] = None,
36
+ query_string: Optional[pulumi.Input[str]] = None,
37
+ query_string_mode: Optional[pulumi.Input[str]] = None,
38
+ rule: Optional[pulumi.Input[str]] = None,
39
+ rule_enable: Optional[pulumi.Input[str]] = None,
40
+ rule_name: Optional[pulumi.Input[str]] = None,
41
+ serve_stale: Optional[pulumi.Input[str]] = None,
42
+ site_version: Optional[pulumi.Input[int]] = None,
43
+ sort_query_string_for_cache: Optional[pulumi.Input[str]] = None,
44
+ user_device_type: Optional[pulumi.Input[str]] = None,
45
+ user_geo: Optional[pulumi.Input[str]] = None,
46
+ user_language: Optional[pulumi.Input[str]] = None):
47
+ """
48
+ The set of arguments for constructing a CacheRule resource.
49
+ :param pulumi.Input[int] site_id: The site ID, which can be obtained by calling the [ListSites] API.
50
+ :param pulumi.Input[str] additional_cacheable_ports: Enable caching on specified ports. Value range: 8880, 2052, 2082, 2086, 2095, 2053, 2083, 2087, 2096
51
+ :param pulumi.Input[str] browser_cache_mode: Browser cache mode. Possible values:
52
+ :param pulumi.Input[str] browser_cache_ttl: Browser cache expiration time in seconds.
53
+ :param pulumi.Input[str] bypass_cache: Set the bypass cache mode. Possible values:
54
+ :param pulumi.Input[str] cache_deception_armor: Cache deception protection. Used to defend against web cache deception attacks, only the cache content that passes the validation will be cached. Value range:
55
+ :param pulumi.Input[str] cache_reserve_eligibility: Cache retention eligibility. Used to control whether user requests bypass the cache retention node when returning to the origin. Possible values:
56
+ :param pulumi.Input[str] check_presence_cookie: When generating the cache key, check if the cookie exists. If it does, add the cookie name (case-insensitive) to the cache key. Multiple cookie names are supported, separated by spaces.
57
+ :param pulumi.Input[str] check_presence_header: When generating the cache key, check if the header exists. If it does, add the header name (case-insensitive) to the cache key. Multiple header names are supported, separated by spaces.
58
+ :param pulumi.Input[str] edge_cache_mode: Edge cache mode. Possible values:
59
+ :param pulumi.Input[str] edge_cache_ttl: Edge cache expiration time in seconds.
60
+ :param pulumi.Input[str] edge_status_code_cache_ttl: Status code cache expiration time in seconds.
61
+ :param pulumi.Input[str] include_cookie: When generating the cache key, add the specified cookie names and their values. Multiple values are supported, separated by spaces.
62
+ :param pulumi.Input[str] include_header: When generating the cache key, add the specified header names and their values. Multiple values are supported, separated by spaces.
63
+ :param pulumi.Input[str] query_string: Query strings to be reserved or excluded. Multiple values are supported, separated by spaces.
64
+ :param pulumi.Input[str] query_string_mode: The processing mode for query strings when generating the cache key. Possible values:
65
+ :param pulumi.Input[str] rule: Rule content, using conditional expressions to match user requests. When adding global configuration, this parameter does not need to be set. There are two usage scenarios:
66
+ - Match all incoming requests: value set to true.
67
+ - Match specified request: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\").
68
+ :param pulumi.Input[str] rule_enable: Rule switch. When adding global configuration, this parameter does not need to be set. Value range:
69
+ :param pulumi.Input[str] rule_name: Rule name. When adding global configuration, this parameter does not need to be set.
70
+ :param pulumi.Input[str] serve_stale: Serve stale cache. When enabled, the node can still respond to user requests with expired cached files when the origin server is unavailable. Value range:
71
+ :param pulumi.Input[int] site_version: The version number of the site configuration. For sites that have enabled configuration version management, this parameter can be used to specify the effective version of the configuration site, which defaults to version 0.
72
+ :param pulumi.Input[str] sort_query_string_for_cache: Query string sorting, disabled by default. Possible values:
73
+ :param pulumi.Input[str] user_device_type: When generating the cache key, add the client device type. Possible values:
74
+ :param pulumi.Input[str] user_geo: When generating the cache key, add the client's geographic location. Possible values:
75
+ :param pulumi.Input[str] user_language: When generating cache keys, include the client's language type. Possible values:
76
+ """
77
+ pulumi.set(__self__, "site_id", site_id)
78
+ if additional_cacheable_ports is not None:
79
+ pulumi.set(__self__, "additional_cacheable_ports", additional_cacheable_ports)
80
+ if browser_cache_mode is not None:
81
+ pulumi.set(__self__, "browser_cache_mode", browser_cache_mode)
82
+ if browser_cache_ttl is not None:
83
+ pulumi.set(__self__, "browser_cache_ttl", browser_cache_ttl)
84
+ if bypass_cache is not None:
85
+ pulumi.set(__self__, "bypass_cache", bypass_cache)
86
+ if cache_deception_armor is not None:
87
+ pulumi.set(__self__, "cache_deception_armor", cache_deception_armor)
88
+ if cache_reserve_eligibility is not None:
89
+ pulumi.set(__self__, "cache_reserve_eligibility", cache_reserve_eligibility)
90
+ if check_presence_cookie is not None:
91
+ pulumi.set(__self__, "check_presence_cookie", check_presence_cookie)
92
+ if check_presence_header is not None:
93
+ pulumi.set(__self__, "check_presence_header", check_presence_header)
94
+ if edge_cache_mode is not None:
95
+ pulumi.set(__self__, "edge_cache_mode", edge_cache_mode)
96
+ if edge_cache_ttl is not None:
97
+ pulumi.set(__self__, "edge_cache_ttl", edge_cache_ttl)
98
+ if edge_status_code_cache_ttl is not None:
99
+ pulumi.set(__self__, "edge_status_code_cache_ttl", edge_status_code_cache_ttl)
100
+ if include_cookie is not None:
101
+ pulumi.set(__self__, "include_cookie", include_cookie)
102
+ if include_header is not None:
103
+ pulumi.set(__self__, "include_header", include_header)
104
+ if query_string is not None:
105
+ pulumi.set(__self__, "query_string", query_string)
106
+ if query_string_mode is not None:
107
+ pulumi.set(__self__, "query_string_mode", query_string_mode)
108
+ if rule is not None:
109
+ pulumi.set(__self__, "rule", rule)
110
+ if rule_enable is not None:
111
+ pulumi.set(__self__, "rule_enable", rule_enable)
112
+ if rule_name is not None:
113
+ pulumi.set(__self__, "rule_name", rule_name)
114
+ if serve_stale is not None:
115
+ pulumi.set(__self__, "serve_stale", serve_stale)
116
+ if site_version is not None:
117
+ pulumi.set(__self__, "site_version", site_version)
118
+ if sort_query_string_for_cache is not None:
119
+ pulumi.set(__self__, "sort_query_string_for_cache", sort_query_string_for_cache)
120
+ if user_device_type is not None:
121
+ pulumi.set(__self__, "user_device_type", user_device_type)
122
+ if user_geo is not None:
123
+ pulumi.set(__self__, "user_geo", user_geo)
124
+ if user_language is not None:
125
+ pulumi.set(__self__, "user_language", user_language)
126
+
127
+ @property
128
+ @pulumi.getter(name="siteId")
129
+ def site_id(self) -> pulumi.Input[int]:
130
+ """
131
+ The site ID, which can be obtained by calling the [ListSites] API.
132
+ """
133
+ return pulumi.get(self, "site_id")
134
+
135
+ @site_id.setter
136
+ def site_id(self, value: pulumi.Input[int]):
137
+ pulumi.set(self, "site_id", value)
138
+
139
+ @property
140
+ @pulumi.getter(name="additionalCacheablePorts")
141
+ def additional_cacheable_ports(self) -> Optional[pulumi.Input[str]]:
142
+ """
143
+ Enable caching on specified ports. Value range: 8880, 2052, 2082, 2086, 2095, 2053, 2083, 2087, 2096
144
+ """
145
+ return pulumi.get(self, "additional_cacheable_ports")
146
+
147
+ @additional_cacheable_ports.setter
148
+ def additional_cacheable_ports(self, value: Optional[pulumi.Input[str]]):
149
+ pulumi.set(self, "additional_cacheable_ports", value)
150
+
151
+ @property
152
+ @pulumi.getter(name="browserCacheMode")
153
+ def browser_cache_mode(self) -> Optional[pulumi.Input[str]]:
154
+ """
155
+ Browser cache mode. Possible values:
156
+ """
157
+ return pulumi.get(self, "browser_cache_mode")
158
+
159
+ @browser_cache_mode.setter
160
+ def browser_cache_mode(self, value: Optional[pulumi.Input[str]]):
161
+ pulumi.set(self, "browser_cache_mode", value)
162
+
163
+ @property
164
+ @pulumi.getter(name="browserCacheTtl")
165
+ def browser_cache_ttl(self) -> Optional[pulumi.Input[str]]:
166
+ """
167
+ Browser cache expiration time in seconds.
168
+ """
169
+ return pulumi.get(self, "browser_cache_ttl")
170
+
171
+ @browser_cache_ttl.setter
172
+ def browser_cache_ttl(self, value: Optional[pulumi.Input[str]]):
173
+ pulumi.set(self, "browser_cache_ttl", value)
174
+
175
+ @property
176
+ @pulumi.getter(name="bypassCache")
177
+ def bypass_cache(self) -> Optional[pulumi.Input[str]]:
178
+ """
179
+ Set the bypass cache mode. Possible values:
180
+ """
181
+ return pulumi.get(self, "bypass_cache")
182
+
183
+ @bypass_cache.setter
184
+ def bypass_cache(self, value: Optional[pulumi.Input[str]]):
185
+ pulumi.set(self, "bypass_cache", value)
186
+
187
+ @property
188
+ @pulumi.getter(name="cacheDeceptionArmor")
189
+ def cache_deception_armor(self) -> Optional[pulumi.Input[str]]:
190
+ """
191
+ Cache deception protection. Used to defend against web cache deception attacks, only the cache content that passes the validation will be cached. Value range:
192
+ """
193
+ return pulumi.get(self, "cache_deception_armor")
194
+
195
+ @cache_deception_armor.setter
196
+ def cache_deception_armor(self, value: Optional[pulumi.Input[str]]):
197
+ pulumi.set(self, "cache_deception_armor", value)
198
+
199
+ @property
200
+ @pulumi.getter(name="cacheReserveEligibility")
201
+ def cache_reserve_eligibility(self) -> Optional[pulumi.Input[str]]:
202
+ """
203
+ Cache retention eligibility. Used to control whether user requests bypass the cache retention node when returning to the origin. Possible values:
204
+ """
205
+ return pulumi.get(self, "cache_reserve_eligibility")
206
+
207
+ @cache_reserve_eligibility.setter
208
+ def cache_reserve_eligibility(self, value: Optional[pulumi.Input[str]]):
209
+ pulumi.set(self, "cache_reserve_eligibility", value)
210
+
211
+ @property
212
+ @pulumi.getter(name="checkPresenceCookie")
213
+ def check_presence_cookie(self) -> Optional[pulumi.Input[str]]:
214
+ """
215
+ When generating the cache key, check if the cookie exists. If it does, add the cookie name (case-insensitive) to the cache key. Multiple cookie names are supported, separated by spaces.
216
+ """
217
+ return pulumi.get(self, "check_presence_cookie")
218
+
219
+ @check_presence_cookie.setter
220
+ def check_presence_cookie(self, value: Optional[pulumi.Input[str]]):
221
+ pulumi.set(self, "check_presence_cookie", value)
222
+
223
+ @property
224
+ @pulumi.getter(name="checkPresenceHeader")
225
+ def check_presence_header(self) -> Optional[pulumi.Input[str]]:
226
+ """
227
+ When generating the cache key, check if the header exists. If it does, add the header name (case-insensitive) to the cache key. Multiple header names are supported, separated by spaces.
228
+ """
229
+ return pulumi.get(self, "check_presence_header")
230
+
231
+ @check_presence_header.setter
232
+ def check_presence_header(self, value: Optional[pulumi.Input[str]]):
233
+ pulumi.set(self, "check_presence_header", value)
234
+
235
+ @property
236
+ @pulumi.getter(name="edgeCacheMode")
237
+ def edge_cache_mode(self) -> Optional[pulumi.Input[str]]:
238
+ """
239
+ Edge cache mode. Possible values:
240
+ """
241
+ return pulumi.get(self, "edge_cache_mode")
242
+
243
+ @edge_cache_mode.setter
244
+ def edge_cache_mode(self, value: Optional[pulumi.Input[str]]):
245
+ pulumi.set(self, "edge_cache_mode", value)
246
+
247
+ @property
248
+ @pulumi.getter(name="edgeCacheTtl")
249
+ def edge_cache_ttl(self) -> Optional[pulumi.Input[str]]:
250
+ """
251
+ Edge cache expiration time in seconds.
252
+ """
253
+ return pulumi.get(self, "edge_cache_ttl")
254
+
255
+ @edge_cache_ttl.setter
256
+ def edge_cache_ttl(self, value: Optional[pulumi.Input[str]]):
257
+ pulumi.set(self, "edge_cache_ttl", value)
258
+
259
+ @property
260
+ @pulumi.getter(name="edgeStatusCodeCacheTtl")
261
+ def edge_status_code_cache_ttl(self) -> Optional[pulumi.Input[str]]:
262
+ """
263
+ Status code cache expiration time in seconds.
264
+ """
265
+ return pulumi.get(self, "edge_status_code_cache_ttl")
266
+
267
+ @edge_status_code_cache_ttl.setter
268
+ def edge_status_code_cache_ttl(self, value: Optional[pulumi.Input[str]]):
269
+ pulumi.set(self, "edge_status_code_cache_ttl", value)
270
+
271
+ @property
272
+ @pulumi.getter(name="includeCookie")
273
+ def include_cookie(self) -> Optional[pulumi.Input[str]]:
274
+ """
275
+ When generating the cache key, add the specified cookie names and their values. Multiple values are supported, separated by spaces.
276
+ """
277
+ return pulumi.get(self, "include_cookie")
278
+
279
+ @include_cookie.setter
280
+ def include_cookie(self, value: Optional[pulumi.Input[str]]):
281
+ pulumi.set(self, "include_cookie", value)
282
+
283
+ @property
284
+ @pulumi.getter(name="includeHeader")
285
+ def include_header(self) -> Optional[pulumi.Input[str]]:
286
+ """
287
+ When generating the cache key, add the specified header names and their values. Multiple values are supported, separated by spaces.
288
+ """
289
+ return pulumi.get(self, "include_header")
290
+
291
+ @include_header.setter
292
+ def include_header(self, value: Optional[pulumi.Input[str]]):
293
+ pulumi.set(self, "include_header", value)
294
+
295
+ @property
296
+ @pulumi.getter(name="queryString")
297
+ def query_string(self) -> Optional[pulumi.Input[str]]:
298
+ """
299
+ Query strings to be reserved or excluded. Multiple values are supported, separated by spaces.
300
+ """
301
+ return pulumi.get(self, "query_string")
302
+
303
+ @query_string.setter
304
+ def query_string(self, value: Optional[pulumi.Input[str]]):
305
+ pulumi.set(self, "query_string", value)
306
+
307
+ @property
308
+ @pulumi.getter(name="queryStringMode")
309
+ def query_string_mode(self) -> Optional[pulumi.Input[str]]:
310
+ """
311
+ The processing mode for query strings when generating the cache key. Possible values:
312
+ """
313
+ return pulumi.get(self, "query_string_mode")
314
+
315
+ @query_string_mode.setter
316
+ def query_string_mode(self, value: Optional[pulumi.Input[str]]):
317
+ pulumi.set(self, "query_string_mode", value)
318
+
319
+ @property
320
+ @pulumi.getter
321
+ def rule(self) -> Optional[pulumi.Input[str]]:
322
+ """
323
+ Rule content, using conditional expressions to match user requests. When adding global configuration, this parameter does not need to be set. There are two usage scenarios:
324
+ - Match all incoming requests: value set to true.
325
+ - Match specified request: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\").
326
+ """
327
+ return pulumi.get(self, "rule")
328
+
329
+ @rule.setter
330
+ def rule(self, value: Optional[pulumi.Input[str]]):
331
+ pulumi.set(self, "rule", value)
332
+
333
+ @property
334
+ @pulumi.getter(name="ruleEnable")
335
+ def rule_enable(self) -> Optional[pulumi.Input[str]]:
336
+ """
337
+ Rule switch. When adding global configuration, this parameter does not need to be set. Value range:
338
+ """
339
+ return pulumi.get(self, "rule_enable")
340
+
341
+ @rule_enable.setter
342
+ def rule_enable(self, value: Optional[pulumi.Input[str]]):
343
+ pulumi.set(self, "rule_enable", value)
344
+
345
+ @property
346
+ @pulumi.getter(name="ruleName")
347
+ def rule_name(self) -> Optional[pulumi.Input[str]]:
348
+ """
349
+ Rule name. When adding global configuration, this parameter does not need to be set.
350
+ """
351
+ return pulumi.get(self, "rule_name")
352
+
353
+ @rule_name.setter
354
+ def rule_name(self, value: Optional[pulumi.Input[str]]):
355
+ pulumi.set(self, "rule_name", value)
356
+
357
+ @property
358
+ @pulumi.getter(name="serveStale")
359
+ def serve_stale(self) -> Optional[pulumi.Input[str]]:
360
+ """
361
+ Serve stale cache. When enabled, the node can still respond to user requests with expired cached files when the origin server is unavailable. Value range:
362
+ """
363
+ return pulumi.get(self, "serve_stale")
364
+
365
+ @serve_stale.setter
366
+ def serve_stale(self, value: Optional[pulumi.Input[str]]):
367
+ pulumi.set(self, "serve_stale", value)
368
+
369
+ @property
370
+ @pulumi.getter(name="siteVersion")
371
+ def site_version(self) -> Optional[pulumi.Input[int]]:
372
+ """
373
+ The version number of the site configuration. For sites that have enabled configuration version management, this parameter can be used to specify the effective version of the configuration site, which defaults to version 0.
374
+ """
375
+ return pulumi.get(self, "site_version")
376
+
377
+ @site_version.setter
378
+ def site_version(self, value: Optional[pulumi.Input[int]]):
379
+ pulumi.set(self, "site_version", value)
380
+
381
+ @property
382
+ @pulumi.getter(name="sortQueryStringForCache")
383
+ def sort_query_string_for_cache(self) -> Optional[pulumi.Input[str]]:
384
+ """
385
+ Query string sorting, disabled by default. Possible values:
386
+ """
387
+ return pulumi.get(self, "sort_query_string_for_cache")
388
+
389
+ @sort_query_string_for_cache.setter
390
+ def sort_query_string_for_cache(self, value: Optional[pulumi.Input[str]]):
391
+ pulumi.set(self, "sort_query_string_for_cache", value)
392
+
393
+ @property
394
+ @pulumi.getter(name="userDeviceType")
395
+ def user_device_type(self) -> Optional[pulumi.Input[str]]:
396
+ """
397
+ When generating the cache key, add the client device type. Possible values:
398
+ """
399
+ return pulumi.get(self, "user_device_type")
400
+
401
+ @user_device_type.setter
402
+ def user_device_type(self, value: Optional[pulumi.Input[str]]):
403
+ pulumi.set(self, "user_device_type", value)
404
+
405
+ @property
406
+ @pulumi.getter(name="userGeo")
407
+ def user_geo(self) -> Optional[pulumi.Input[str]]:
408
+ """
409
+ When generating the cache key, add the client's geographic location. Possible values:
410
+ """
411
+ return pulumi.get(self, "user_geo")
412
+
413
+ @user_geo.setter
414
+ def user_geo(self, value: Optional[pulumi.Input[str]]):
415
+ pulumi.set(self, "user_geo", value)
416
+
417
+ @property
418
+ @pulumi.getter(name="userLanguage")
419
+ def user_language(self) -> Optional[pulumi.Input[str]]:
420
+ """
421
+ When generating cache keys, include the client's language type. Possible values:
422
+ """
423
+ return pulumi.get(self, "user_language")
424
+
425
+ @user_language.setter
426
+ def user_language(self, value: Optional[pulumi.Input[str]]):
427
+ pulumi.set(self, "user_language", value)
428
+
429
+
430
+ @pulumi.input_type
431
+ class _CacheRuleState:
432
+ def __init__(__self__, *,
433
+ additional_cacheable_ports: Optional[pulumi.Input[str]] = None,
434
+ browser_cache_mode: Optional[pulumi.Input[str]] = None,
435
+ browser_cache_ttl: Optional[pulumi.Input[str]] = None,
436
+ bypass_cache: Optional[pulumi.Input[str]] = None,
437
+ cache_deception_armor: Optional[pulumi.Input[str]] = None,
438
+ cache_reserve_eligibility: Optional[pulumi.Input[str]] = None,
439
+ cache_rule_id: Optional[pulumi.Input[int]] = None,
440
+ check_presence_cookie: Optional[pulumi.Input[str]] = None,
441
+ check_presence_header: Optional[pulumi.Input[str]] = None,
442
+ edge_cache_mode: Optional[pulumi.Input[str]] = None,
443
+ edge_cache_ttl: Optional[pulumi.Input[str]] = None,
444
+ edge_status_code_cache_ttl: Optional[pulumi.Input[str]] = None,
445
+ include_cookie: Optional[pulumi.Input[str]] = None,
446
+ include_header: Optional[pulumi.Input[str]] = None,
447
+ query_string: Optional[pulumi.Input[str]] = None,
448
+ query_string_mode: Optional[pulumi.Input[str]] = None,
449
+ rule: Optional[pulumi.Input[str]] = None,
450
+ rule_enable: Optional[pulumi.Input[str]] = None,
451
+ rule_name: Optional[pulumi.Input[str]] = None,
452
+ serve_stale: Optional[pulumi.Input[str]] = None,
453
+ site_id: Optional[pulumi.Input[int]] = None,
454
+ site_version: Optional[pulumi.Input[int]] = None,
455
+ sort_query_string_for_cache: Optional[pulumi.Input[str]] = None,
456
+ user_device_type: Optional[pulumi.Input[str]] = None,
457
+ user_geo: Optional[pulumi.Input[str]] = None,
458
+ user_language: Optional[pulumi.Input[str]] = None):
459
+ """
460
+ Input properties used for looking up and filtering CacheRule resources.
461
+ :param pulumi.Input[str] additional_cacheable_ports: Enable caching on specified ports. Value range: 8880, 2052, 2082, 2086, 2095, 2053, 2083, 2087, 2096
462
+ :param pulumi.Input[str] browser_cache_mode: Browser cache mode. Possible values:
463
+ :param pulumi.Input[str] browser_cache_ttl: Browser cache expiration time in seconds.
464
+ :param pulumi.Input[str] bypass_cache: Set the bypass cache mode. Possible values:
465
+ :param pulumi.Input[str] cache_deception_armor: Cache deception protection. Used to defend against web cache deception attacks, only the cache content that passes the validation will be cached. Value range:
466
+ :param pulumi.Input[str] cache_reserve_eligibility: Cache retention eligibility. Used to control whether user requests bypass the cache retention node when returning to the origin. Possible values:
467
+ :param pulumi.Input[int] cache_rule_id: Cache Rule Id.
468
+ :param pulumi.Input[str] check_presence_cookie: When generating the cache key, check if the cookie exists. If it does, add the cookie name (case-insensitive) to the cache key. Multiple cookie names are supported, separated by spaces.
469
+ :param pulumi.Input[str] check_presence_header: When generating the cache key, check if the header exists. If it does, add the header name (case-insensitive) to the cache key. Multiple header names are supported, separated by spaces.
470
+ :param pulumi.Input[str] edge_cache_mode: Edge cache mode. Possible values:
471
+ :param pulumi.Input[str] edge_cache_ttl: Edge cache expiration time in seconds.
472
+ :param pulumi.Input[str] edge_status_code_cache_ttl: Status code cache expiration time in seconds.
473
+ :param pulumi.Input[str] include_cookie: When generating the cache key, add the specified cookie names and their values. Multiple values are supported, separated by spaces.
474
+ :param pulumi.Input[str] include_header: When generating the cache key, add the specified header names and their values. Multiple values are supported, separated by spaces.
475
+ :param pulumi.Input[str] query_string: Query strings to be reserved or excluded. Multiple values are supported, separated by spaces.
476
+ :param pulumi.Input[str] query_string_mode: The processing mode for query strings when generating the cache key. Possible values:
477
+ :param pulumi.Input[str] rule: Rule content, using conditional expressions to match user requests. When adding global configuration, this parameter does not need to be set. There are two usage scenarios:
478
+ - Match all incoming requests: value set to true.
479
+ - Match specified request: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\").
480
+ :param pulumi.Input[str] rule_enable: Rule switch. When adding global configuration, this parameter does not need to be set. Value range:
481
+ :param pulumi.Input[str] rule_name: Rule name. When adding global configuration, this parameter does not need to be set.
482
+ :param pulumi.Input[str] serve_stale: Serve stale cache. When enabled, the node can still respond to user requests with expired cached files when the origin server is unavailable. Value range:
483
+ :param pulumi.Input[int] site_id: The site ID, which can be obtained by calling the [ListSites] API.
484
+ :param pulumi.Input[int] site_version: The version number of the site configuration. For sites that have enabled configuration version management, this parameter can be used to specify the effective version of the configuration site, which defaults to version 0.
485
+ :param pulumi.Input[str] sort_query_string_for_cache: Query string sorting, disabled by default. Possible values:
486
+ :param pulumi.Input[str] user_device_type: When generating the cache key, add the client device type. Possible values:
487
+ :param pulumi.Input[str] user_geo: When generating the cache key, add the client's geographic location. Possible values:
488
+ :param pulumi.Input[str] user_language: When generating cache keys, include the client's language type. Possible values:
489
+ """
490
+ if additional_cacheable_ports is not None:
491
+ pulumi.set(__self__, "additional_cacheable_ports", additional_cacheable_ports)
492
+ if browser_cache_mode is not None:
493
+ pulumi.set(__self__, "browser_cache_mode", browser_cache_mode)
494
+ if browser_cache_ttl is not None:
495
+ pulumi.set(__self__, "browser_cache_ttl", browser_cache_ttl)
496
+ if bypass_cache is not None:
497
+ pulumi.set(__self__, "bypass_cache", bypass_cache)
498
+ if cache_deception_armor is not None:
499
+ pulumi.set(__self__, "cache_deception_armor", cache_deception_armor)
500
+ if cache_reserve_eligibility is not None:
501
+ pulumi.set(__self__, "cache_reserve_eligibility", cache_reserve_eligibility)
502
+ if cache_rule_id is not None:
503
+ pulumi.set(__self__, "cache_rule_id", cache_rule_id)
504
+ if check_presence_cookie is not None:
505
+ pulumi.set(__self__, "check_presence_cookie", check_presence_cookie)
506
+ if check_presence_header is not None:
507
+ pulumi.set(__self__, "check_presence_header", check_presence_header)
508
+ if edge_cache_mode is not None:
509
+ pulumi.set(__self__, "edge_cache_mode", edge_cache_mode)
510
+ if edge_cache_ttl is not None:
511
+ pulumi.set(__self__, "edge_cache_ttl", edge_cache_ttl)
512
+ if edge_status_code_cache_ttl is not None:
513
+ pulumi.set(__self__, "edge_status_code_cache_ttl", edge_status_code_cache_ttl)
514
+ if include_cookie is not None:
515
+ pulumi.set(__self__, "include_cookie", include_cookie)
516
+ if include_header is not None:
517
+ pulumi.set(__self__, "include_header", include_header)
518
+ if query_string is not None:
519
+ pulumi.set(__self__, "query_string", query_string)
520
+ if query_string_mode is not None:
521
+ pulumi.set(__self__, "query_string_mode", query_string_mode)
522
+ if rule is not None:
523
+ pulumi.set(__self__, "rule", rule)
524
+ if rule_enable is not None:
525
+ pulumi.set(__self__, "rule_enable", rule_enable)
526
+ if rule_name is not None:
527
+ pulumi.set(__self__, "rule_name", rule_name)
528
+ if serve_stale is not None:
529
+ pulumi.set(__self__, "serve_stale", serve_stale)
530
+ if site_id is not None:
531
+ pulumi.set(__self__, "site_id", site_id)
532
+ if site_version is not None:
533
+ pulumi.set(__self__, "site_version", site_version)
534
+ if sort_query_string_for_cache is not None:
535
+ pulumi.set(__self__, "sort_query_string_for_cache", sort_query_string_for_cache)
536
+ if user_device_type is not None:
537
+ pulumi.set(__self__, "user_device_type", user_device_type)
538
+ if user_geo is not None:
539
+ pulumi.set(__self__, "user_geo", user_geo)
540
+ if user_language is not None:
541
+ pulumi.set(__self__, "user_language", user_language)
542
+
543
+ @property
544
+ @pulumi.getter(name="additionalCacheablePorts")
545
+ def additional_cacheable_ports(self) -> Optional[pulumi.Input[str]]:
546
+ """
547
+ Enable caching on specified ports. Value range: 8880, 2052, 2082, 2086, 2095, 2053, 2083, 2087, 2096
548
+ """
549
+ return pulumi.get(self, "additional_cacheable_ports")
550
+
551
+ @additional_cacheable_ports.setter
552
+ def additional_cacheable_ports(self, value: Optional[pulumi.Input[str]]):
553
+ pulumi.set(self, "additional_cacheable_ports", value)
554
+
555
+ @property
556
+ @pulumi.getter(name="browserCacheMode")
557
+ def browser_cache_mode(self) -> Optional[pulumi.Input[str]]:
558
+ """
559
+ Browser cache mode. Possible values:
560
+ """
561
+ return pulumi.get(self, "browser_cache_mode")
562
+
563
+ @browser_cache_mode.setter
564
+ def browser_cache_mode(self, value: Optional[pulumi.Input[str]]):
565
+ pulumi.set(self, "browser_cache_mode", value)
566
+
567
+ @property
568
+ @pulumi.getter(name="browserCacheTtl")
569
+ def browser_cache_ttl(self) -> Optional[pulumi.Input[str]]:
570
+ """
571
+ Browser cache expiration time in seconds.
572
+ """
573
+ return pulumi.get(self, "browser_cache_ttl")
574
+
575
+ @browser_cache_ttl.setter
576
+ def browser_cache_ttl(self, value: Optional[pulumi.Input[str]]):
577
+ pulumi.set(self, "browser_cache_ttl", value)
578
+
579
+ @property
580
+ @pulumi.getter(name="bypassCache")
581
+ def bypass_cache(self) -> Optional[pulumi.Input[str]]:
582
+ """
583
+ Set the bypass cache mode. Possible values:
584
+ """
585
+ return pulumi.get(self, "bypass_cache")
586
+
587
+ @bypass_cache.setter
588
+ def bypass_cache(self, value: Optional[pulumi.Input[str]]):
589
+ pulumi.set(self, "bypass_cache", value)
590
+
591
+ @property
592
+ @pulumi.getter(name="cacheDeceptionArmor")
593
+ def cache_deception_armor(self) -> Optional[pulumi.Input[str]]:
594
+ """
595
+ Cache deception protection. Used to defend against web cache deception attacks, only the cache content that passes the validation will be cached. Value range:
596
+ """
597
+ return pulumi.get(self, "cache_deception_armor")
598
+
599
+ @cache_deception_armor.setter
600
+ def cache_deception_armor(self, value: Optional[pulumi.Input[str]]):
601
+ pulumi.set(self, "cache_deception_armor", value)
602
+
603
+ @property
604
+ @pulumi.getter(name="cacheReserveEligibility")
605
+ def cache_reserve_eligibility(self) -> Optional[pulumi.Input[str]]:
606
+ """
607
+ Cache retention eligibility. Used to control whether user requests bypass the cache retention node when returning to the origin. Possible values:
608
+ """
609
+ return pulumi.get(self, "cache_reserve_eligibility")
610
+
611
+ @cache_reserve_eligibility.setter
612
+ def cache_reserve_eligibility(self, value: Optional[pulumi.Input[str]]):
613
+ pulumi.set(self, "cache_reserve_eligibility", value)
614
+
615
+ @property
616
+ @pulumi.getter(name="cacheRuleId")
617
+ def cache_rule_id(self) -> Optional[pulumi.Input[int]]:
618
+ """
619
+ Cache Rule Id.
620
+ """
621
+ return pulumi.get(self, "cache_rule_id")
622
+
623
+ @cache_rule_id.setter
624
+ def cache_rule_id(self, value: Optional[pulumi.Input[int]]):
625
+ pulumi.set(self, "cache_rule_id", value)
626
+
627
+ @property
628
+ @pulumi.getter(name="checkPresenceCookie")
629
+ def check_presence_cookie(self) -> Optional[pulumi.Input[str]]:
630
+ """
631
+ When generating the cache key, check if the cookie exists. If it does, add the cookie name (case-insensitive) to the cache key. Multiple cookie names are supported, separated by spaces.
632
+ """
633
+ return pulumi.get(self, "check_presence_cookie")
634
+
635
+ @check_presence_cookie.setter
636
+ def check_presence_cookie(self, value: Optional[pulumi.Input[str]]):
637
+ pulumi.set(self, "check_presence_cookie", value)
638
+
639
+ @property
640
+ @pulumi.getter(name="checkPresenceHeader")
641
+ def check_presence_header(self) -> Optional[pulumi.Input[str]]:
642
+ """
643
+ When generating the cache key, check if the header exists. If it does, add the header name (case-insensitive) to the cache key. Multiple header names are supported, separated by spaces.
644
+ """
645
+ return pulumi.get(self, "check_presence_header")
646
+
647
+ @check_presence_header.setter
648
+ def check_presence_header(self, value: Optional[pulumi.Input[str]]):
649
+ pulumi.set(self, "check_presence_header", value)
650
+
651
+ @property
652
+ @pulumi.getter(name="edgeCacheMode")
653
+ def edge_cache_mode(self) -> Optional[pulumi.Input[str]]:
654
+ """
655
+ Edge cache mode. Possible values:
656
+ """
657
+ return pulumi.get(self, "edge_cache_mode")
658
+
659
+ @edge_cache_mode.setter
660
+ def edge_cache_mode(self, value: Optional[pulumi.Input[str]]):
661
+ pulumi.set(self, "edge_cache_mode", value)
662
+
663
+ @property
664
+ @pulumi.getter(name="edgeCacheTtl")
665
+ def edge_cache_ttl(self) -> Optional[pulumi.Input[str]]:
666
+ """
667
+ Edge cache expiration time in seconds.
668
+ """
669
+ return pulumi.get(self, "edge_cache_ttl")
670
+
671
+ @edge_cache_ttl.setter
672
+ def edge_cache_ttl(self, value: Optional[pulumi.Input[str]]):
673
+ pulumi.set(self, "edge_cache_ttl", value)
674
+
675
+ @property
676
+ @pulumi.getter(name="edgeStatusCodeCacheTtl")
677
+ def edge_status_code_cache_ttl(self) -> Optional[pulumi.Input[str]]:
678
+ """
679
+ Status code cache expiration time in seconds.
680
+ """
681
+ return pulumi.get(self, "edge_status_code_cache_ttl")
682
+
683
+ @edge_status_code_cache_ttl.setter
684
+ def edge_status_code_cache_ttl(self, value: Optional[pulumi.Input[str]]):
685
+ pulumi.set(self, "edge_status_code_cache_ttl", value)
686
+
687
+ @property
688
+ @pulumi.getter(name="includeCookie")
689
+ def include_cookie(self) -> Optional[pulumi.Input[str]]:
690
+ """
691
+ When generating the cache key, add the specified cookie names and their values. Multiple values are supported, separated by spaces.
692
+ """
693
+ return pulumi.get(self, "include_cookie")
694
+
695
+ @include_cookie.setter
696
+ def include_cookie(self, value: Optional[pulumi.Input[str]]):
697
+ pulumi.set(self, "include_cookie", value)
698
+
699
+ @property
700
+ @pulumi.getter(name="includeHeader")
701
+ def include_header(self) -> Optional[pulumi.Input[str]]:
702
+ """
703
+ When generating the cache key, add the specified header names and their values. Multiple values are supported, separated by spaces.
704
+ """
705
+ return pulumi.get(self, "include_header")
706
+
707
+ @include_header.setter
708
+ def include_header(self, value: Optional[pulumi.Input[str]]):
709
+ pulumi.set(self, "include_header", value)
710
+
711
+ @property
712
+ @pulumi.getter(name="queryString")
713
+ def query_string(self) -> Optional[pulumi.Input[str]]:
714
+ """
715
+ Query strings to be reserved or excluded. Multiple values are supported, separated by spaces.
716
+ """
717
+ return pulumi.get(self, "query_string")
718
+
719
+ @query_string.setter
720
+ def query_string(self, value: Optional[pulumi.Input[str]]):
721
+ pulumi.set(self, "query_string", value)
722
+
723
+ @property
724
+ @pulumi.getter(name="queryStringMode")
725
+ def query_string_mode(self) -> Optional[pulumi.Input[str]]:
726
+ """
727
+ The processing mode for query strings when generating the cache key. Possible values:
728
+ """
729
+ return pulumi.get(self, "query_string_mode")
730
+
731
+ @query_string_mode.setter
732
+ def query_string_mode(self, value: Optional[pulumi.Input[str]]):
733
+ pulumi.set(self, "query_string_mode", value)
734
+
735
+ @property
736
+ @pulumi.getter
737
+ def rule(self) -> Optional[pulumi.Input[str]]:
738
+ """
739
+ Rule content, using conditional expressions to match user requests. When adding global configuration, this parameter does not need to be set. There are two usage scenarios:
740
+ - Match all incoming requests: value set to true.
741
+ - Match specified request: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\").
742
+ """
743
+ return pulumi.get(self, "rule")
744
+
745
+ @rule.setter
746
+ def rule(self, value: Optional[pulumi.Input[str]]):
747
+ pulumi.set(self, "rule", value)
748
+
749
+ @property
750
+ @pulumi.getter(name="ruleEnable")
751
+ def rule_enable(self) -> Optional[pulumi.Input[str]]:
752
+ """
753
+ Rule switch. When adding global configuration, this parameter does not need to be set. Value range:
754
+ """
755
+ return pulumi.get(self, "rule_enable")
756
+
757
+ @rule_enable.setter
758
+ def rule_enable(self, value: Optional[pulumi.Input[str]]):
759
+ pulumi.set(self, "rule_enable", value)
760
+
761
+ @property
762
+ @pulumi.getter(name="ruleName")
763
+ def rule_name(self) -> Optional[pulumi.Input[str]]:
764
+ """
765
+ Rule name. When adding global configuration, this parameter does not need to be set.
766
+ """
767
+ return pulumi.get(self, "rule_name")
768
+
769
+ @rule_name.setter
770
+ def rule_name(self, value: Optional[pulumi.Input[str]]):
771
+ pulumi.set(self, "rule_name", value)
772
+
773
+ @property
774
+ @pulumi.getter(name="serveStale")
775
+ def serve_stale(self) -> Optional[pulumi.Input[str]]:
776
+ """
777
+ Serve stale cache. When enabled, the node can still respond to user requests with expired cached files when the origin server is unavailable. Value range:
778
+ """
779
+ return pulumi.get(self, "serve_stale")
780
+
781
+ @serve_stale.setter
782
+ def serve_stale(self, value: Optional[pulumi.Input[str]]):
783
+ pulumi.set(self, "serve_stale", value)
784
+
785
+ @property
786
+ @pulumi.getter(name="siteId")
787
+ def site_id(self) -> Optional[pulumi.Input[int]]:
788
+ """
789
+ The site ID, which can be obtained by calling the [ListSites] API.
790
+ """
791
+ return pulumi.get(self, "site_id")
792
+
793
+ @site_id.setter
794
+ def site_id(self, value: Optional[pulumi.Input[int]]):
795
+ pulumi.set(self, "site_id", value)
796
+
797
+ @property
798
+ @pulumi.getter(name="siteVersion")
799
+ def site_version(self) -> Optional[pulumi.Input[int]]:
800
+ """
801
+ The version number of the site configuration. For sites that have enabled configuration version management, this parameter can be used to specify the effective version of the configuration site, which defaults to version 0.
802
+ """
803
+ return pulumi.get(self, "site_version")
804
+
805
+ @site_version.setter
806
+ def site_version(self, value: Optional[pulumi.Input[int]]):
807
+ pulumi.set(self, "site_version", value)
808
+
809
+ @property
810
+ @pulumi.getter(name="sortQueryStringForCache")
811
+ def sort_query_string_for_cache(self) -> Optional[pulumi.Input[str]]:
812
+ """
813
+ Query string sorting, disabled by default. Possible values:
814
+ """
815
+ return pulumi.get(self, "sort_query_string_for_cache")
816
+
817
+ @sort_query_string_for_cache.setter
818
+ def sort_query_string_for_cache(self, value: Optional[pulumi.Input[str]]):
819
+ pulumi.set(self, "sort_query_string_for_cache", value)
820
+
821
+ @property
822
+ @pulumi.getter(name="userDeviceType")
823
+ def user_device_type(self) -> Optional[pulumi.Input[str]]:
824
+ """
825
+ When generating the cache key, add the client device type. Possible values:
826
+ """
827
+ return pulumi.get(self, "user_device_type")
828
+
829
+ @user_device_type.setter
830
+ def user_device_type(self, value: Optional[pulumi.Input[str]]):
831
+ pulumi.set(self, "user_device_type", value)
832
+
833
+ @property
834
+ @pulumi.getter(name="userGeo")
835
+ def user_geo(self) -> Optional[pulumi.Input[str]]:
836
+ """
837
+ When generating the cache key, add the client's geographic location. Possible values:
838
+ """
839
+ return pulumi.get(self, "user_geo")
840
+
841
+ @user_geo.setter
842
+ def user_geo(self, value: Optional[pulumi.Input[str]]):
843
+ pulumi.set(self, "user_geo", value)
844
+
845
+ @property
846
+ @pulumi.getter(name="userLanguage")
847
+ def user_language(self) -> Optional[pulumi.Input[str]]:
848
+ """
849
+ When generating cache keys, include the client's language type. Possible values:
850
+ """
851
+ return pulumi.get(self, "user_language")
852
+
853
+ @user_language.setter
854
+ def user_language(self, value: Optional[pulumi.Input[str]]):
855
+ pulumi.set(self, "user_language", value)
856
+
857
+
858
+ class CacheRule(pulumi.CustomResource):
859
+ @overload
860
+ def __init__(__self__,
861
+ resource_name: str,
862
+ opts: Optional[pulumi.ResourceOptions] = None,
863
+ additional_cacheable_ports: Optional[pulumi.Input[str]] = None,
864
+ browser_cache_mode: Optional[pulumi.Input[str]] = None,
865
+ browser_cache_ttl: Optional[pulumi.Input[str]] = None,
866
+ bypass_cache: Optional[pulumi.Input[str]] = None,
867
+ cache_deception_armor: Optional[pulumi.Input[str]] = None,
868
+ cache_reserve_eligibility: Optional[pulumi.Input[str]] = None,
869
+ check_presence_cookie: Optional[pulumi.Input[str]] = None,
870
+ check_presence_header: Optional[pulumi.Input[str]] = None,
871
+ edge_cache_mode: Optional[pulumi.Input[str]] = None,
872
+ edge_cache_ttl: Optional[pulumi.Input[str]] = None,
873
+ edge_status_code_cache_ttl: Optional[pulumi.Input[str]] = None,
874
+ include_cookie: Optional[pulumi.Input[str]] = None,
875
+ include_header: Optional[pulumi.Input[str]] = None,
876
+ query_string: Optional[pulumi.Input[str]] = None,
877
+ query_string_mode: Optional[pulumi.Input[str]] = None,
878
+ rule: Optional[pulumi.Input[str]] = None,
879
+ rule_enable: Optional[pulumi.Input[str]] = None,
880
+ rule_name: Optional[pulumi.Input[str]] = None,
881
+ serve_stale: Optional[pulumi.Input[str]] = None,
882
+ site_id: Optional[pulumi.Input[int]] = None,
883
+ site_version: Optional[pulumi.Input[int]] = None,
884
+ sort_query_string_for_cache: Optional[pulumi.Input[str]] = None,
885
+ user_device_type: Optional[pulumi.Input[str]] = None,
886
+ user_geo: Optional[pulumi.Input[str]] = None,
887
+ user_language: Optional[pulumi.Input[str]] = None,
888
+ __props__=None):
889
+ """
890
+ Provides a ESA Cache Rule resource.
891
+
892
+ For information about ESA Cache Rule and how to use it, see [What is Cache Rule](https://next.api.alibabacloud.com/document/ESA/2024-09-10/CreateCacheRule).
893
+
894
+ > **NOTE:** Available since v1.244.0.
895
+
896
+ ## Example Usage
897
+
898
+ Basic Usage
899
+
900
+ ```python
901
+ import pulumi
902
+ import pulumi_alicloud as alicloud
903
+
904
+ default = alicloud.esa.get_sites(plan_subscribe_type="enterpriseplan")
905
+ default_cache_rule = alicloud.esa.CacheRule("default",
906
+ user_device_type="off",
907
+ browser_cache_mode="no_cache",
908
+ user_language="off",
909
+ check_presence_header="headername",
910
+ include_cookie="cookie_exapmle",
911
+ edge_cache_mode="follow_origin",
912
+ additional_cacheable_ports="2053",
913
+ rule_name="rule_example",
914
+ edge_status_code_cache_ttl="300",
915
+ browser_cache_ttl="300",
916
+ query_string="example",
917
+ user_geo="off",
918
+ sort_query_string_for_cache="off",
919
+ check_presence_cookie="cookiename",
920
+ cache_reserve_eligibility="bypass_cache_reserve",
921
+ query_string_mode="ignore_all",
922
+ rule="http.host eq \\"video.example.com\\"",
923
+ cache_deception_armor="off",
924
+ site_id=default.sites[0].id,
925
+ bypass_cache="cache_all",
926
+ edge_cache_ttl="300",
927
+ rule_enable="off",
928
+ site_version=0,
929
+ include_header="example",
930
+ serve_stale="off")
931
+ ```
932
+
933
+ ## Import
934
+
935
+ ESA Cache Rule can be imported using the id, e.g.
936
+
937
+ ```sh
938
+ $ pulumi import alicloud:esa/cacheRule:CacheRule example <site_id>:<cache_rule_id>
939
+ ```
940
+
941
+ :param str resource_name: The name of the resource.
942
+ :param pulumi.ResourceOptions opts: Options for the resource.
943
+ :param pulumi.Input[str] additional_cacheable_ports: Enable caching on specified ports. Value range: 8880, 2052, 2082, 2086, 2095, 2053, 2083, 2087, 2096
944
+ :param pulumi.Input[str] browser_cache_mode: Browser cache mode. Possible values:
945
+ :param pulumi.Input[str] browser_cache_ttl: Browser cache expiration time in seconds.
946
+ :param pulumi.Input[str] bypass_cache: Set the bypass cache mode. Possible values:
947
+ :param pulumi.Input[str] cache_deception_armor: Cache deception protection. Used to defend against web cache deception attacks, only the cache content that passes the validation will be cached. Value range:
948
+ :param pulumi.Input[str] cache_reserve_eligibility: Cache retention eligibility. Used to control whether user requests bypass the cache retention node when returning to the origin. Possible values:
949
+ :param pulumi.Input[str] check_presence_cookie: When generating the cache key, check if the cookie exists. If it does, add the cookie name (case-insensitive) to the cache key. Multiple cookie names are supported, separated by spaces.
950
+ :param pulumi.Input[str] check_presence_header: When generating the cache key, check if the header exists. If it does, add the header name (case-insensitive) to the cache key. Multiple header names are supported, separated by spaces.
951
+ :param pulumi.Input[str] edge_cache_mode: Edge cache mode. Possible values:
952
+ :param pulumi.Input[str] edge_cache_ttl: Edge cache expiration time in seconds.
953
+ :param pulumi.Input[str] edge_status_code_cache_ttl: Status code cache expiration time in seconds.
954
+ :param pulumi.Input[str] include_cookie: When generating the cache key, add the specified cookie names and their values. Multiple values are supported, separated by spaces.
955
+ :param pulumi.Input[str] include_header: When generating the cache key, add the specified header names and their values. Multiple values are supported, separated by spaces.
956
+ :param pulumi.Input[str] query_string: Query strings to be reserved or excluded. Multiple values are supported, separated by spaces.
957
+ :param pulumi.Input[str] query_string_mode: The processing mode for query strings when generating the cache key. Possible values:
958
+ :param pulumi.Input[str] rule: Rule content, using conditional expressions to match user requests. When adding global configuration, this parameter does not need to be set. There are two usage scenarios:
959
+ - Match all incoming requests: value set to true.
960
+ - Match specified request: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\").
961
+ :param pulumi.Input[str] rule_enable: Rule switch. When adding global configuration, this parameter does not need to be set. Value range:
962
+ :param pulumi.Input[str] rule_name: Rule name. When adding global configuration, this parameter does not need to be set.
963
+ :param pulumi.Input[str] serve_stale: Serve stale cache. When enabled, the node can still respond to user requests with expired cached files when the origin server is unavailable. Value range:
964
+ :param pulumi.Input[int] site_id: The site ID, which can be obtained by calling the [ListSites] API.
965
+ :param pulumi.Input[int] site_version: The version number of the site configuration. For sites that have enabled configuration version management, this parameter can be used to specify the effective version of the configuration site, which defaults to version 0.
966
+ :param pulumi.Input[str] sort_query_string_for_cache: Query string sorting, disabled by default. Possible values:
967
+ :param pulumi.Input[str] user_device_type: When generating the cache key, add the client device type. Possible values:
968
+ :param pulumi.Input[str] user_geo: When generating the cache key, add the client's geographic location. Possible values:
969
+ :param pulumi.Input[str] user_language: When generating cache keys, include the client's language type. Possible values:
970
+ """
971
+ ...
972
+ @overload
973
+ def __init__(__self__,
974
+ resource_name: str,
975
+ args: CacheRuleArgs,
976
+ opts: Optional[pulumi.ResourceOptions] = None):
977
+ """
978
+ Provides a ESA Cache Rule resource.
979
+
980
+ For information about ESA Cache Rule and how to use it, see [What is Cache Rule](https://next.api.alibabacloud.com/document/ESA/2024-09-10/CreateCacheRule).
981
+
982
+ > **NOTE:** Available since v1.244.0.
983
+
984
+ ## Example Usage
985
+
986
+ Basic Usage
987
+
988
+ ```python
989
+ import pulumi
990
+ import pulumi_alicloud as alicloud
991
+
992
+ default = alicloud.esa.get_sites(plan_subscribe_type="enterpriseplan")
993
+ default_cache_rule = alicloud.esa.CacheRule("default",
994
+ user_device_type="off",
995
+ browser_cache_mode="no_cache",
996
+ user_language="off",
997
+ check_presence_header="headername",
998
+ include_cookie="cookie_exapmle",
999
+ edge_cache_mode="follow_origin",
1000
+ additional_cacheable_ports="2053",
1001
+ rule_name="rule_example",
1002
+ edge_status_code_cache_ttl="300",
1003
+ browser_cache_ttl="300",
1004
+ query_string="example",
1005
+ user_geo="off",
1006
+ sort_query_string_for_cache="off",
1007
+ check_presence_cookie="cookiename",
1008
+ cache_reserve_eligibility="bypass_cache_reserve",
1009
+ query_string_mode="ignore_all",
1010
+ rule="http.host eq \\"video.example.com\\"",
1011
+ cache_deception_armor="off",
1012
+ site_id=default.sites[0].id,
1013
+ bypass_cache="cache_all",
1014
+ edge_cache_ttl="300",
1015
+ rule_enable="off",
1016
+ site_version=0,
1017
+ include_header="example",
1018
+ serve_stale="off")
1019
+ ```
1020
+
1021
+ ## Import
1022
+
1023
+ ESA Cache Rule can be imported using the id, e.g.
1024
+
1025
+ ```sh
1026
+ $ pulumi import alicloud:esa/cacheRule:CacheRule example <site_id>:<cache_rule_id>
1027
+ ```
1028
+
1029
+ :param str resource_name: The name of the resource.
1030
+ :param CacheRuleArgs args: The arguments to use to populate this resource's properties.
1031
+ :param pulumi.ResourceOptions opts: Options for the resource.
1032
+ """
1033
+ ...
1034
+ def __init__(__self__, resource_name: str, *args, **kwargs):
1035
+ resource_args, opts = _utilities.get_resource_args_opts(CacheRuleArgs, pulumi.ResourceOptions, *args, **kwargs)
1036
+ if resource_args is not None:
1037
+ __self__._internal_init(resource_name, opts, **resource_args.__dict__)
1038
+ else:
1039
+ __self__._internal_init(resource_name, *args, **kwargs)
1040
+
1041
+ def _internal_init(__self__,
1042
+ resource_name: str,
1043
+ opts: Optional[pulumi.ResourceOptions] = None,
1044
+ additional_cacheable_ports: Optional[pulumi.Input[str]] = None,
1045
+ browser_cache_mode: Optional[pulumi.Input[str]] = None,
1046
+ browser_cache_ttl: Optional[pulumi.Input[str]] = None,
1047
+ bypass_cache: Optional[pulumi.Input[str]] = None,
1048
+ cache_deception_armor: Optional[pulumi.Input[str]] = None,
1049
+ cache_reserve_eligibility: Optional[pulumi.Input[str]] = None,
1050
+ check_presence_cookie: Optional[pulumi.Input[str]] = None,
1051
+ check_presence_header: Optional[pulumi.Input[str]] = None,
1052
+ edge_cache_mode: Optional[pulumi.Input[str]] = None,
1053
+ edge_cache_ttl: Optional[pulumi.Input[str]] = None,
1054
+ edge_status_code_cache_ttl: Optional[pulumi.Input[str]] = None,
1055
+ include_cookie: Optional[pulumi.Input[str]] = None,
1056
+ include_header: Optional[pulumi.Input[str]] = None,
1057
+ query_string: Optional[pulumi.Input[str]] = None,
1058
+ query_string_mode: Optional[pulumi.Input[str]] = None,
1059
+ rule: Optional[pulumi.Input[str]] = None,
1060
+ rule_enable: Optional[pulumi.Input[str]] = None,
1061
+ rule_name: Optional[pulumi.Input[str]] = None,
1062
+ serve_stale: Optional[pulumi.Input[str]] = None,
1063
+ site_id: Optional[pulumi.Input[int]] = None,
1064
+ site_version: Optional[pulumi.Input[int]] = None,
1065
+ sort_query_string_for_cache: Optional[pulumi.Input[str]] = None,
1066
+ user_device_type: Optional[pulumi.Input[str]] = None,
1067
+ user_geo: Optional[pulumi.Input[str]] = None,
1068
+ user_language: Optional[pulumi.Input[str]] = None,
1069
+ __props__=None):
1070
+ opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1071
+ if not isinstance(opts, pulumi.ResourceOptions):
1072
+ raise TypeError('Expected resource options to be a ResourceOptions instance')
1073
+ if opts.id is None:
1074
+ if __props__ is not None:
1075
+ raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
1076
+ __props__ = CacheRuleArgs.__new__(CacheRuleArgs)
1077
+
1078
+ __props__.__dict__["additional_cacheable_ports"] = additional_cacheable_ports
1079
+ __props__.__dict__["browser_cache_mode"] = browser_cache_mode
1080
+ __props__.__dict__["browser_cache_ttl"] = browser_cache_ttl
1081
+ __props__.__dict__["bypass_cache"] = bypass_cache
1082
+ __props__.__dict__["cache_deception_armor"] = cache_deception_armor
1083
+ __props__.__dict__["cache_reserve_eligibility"] = cache_reserve_eligibility
1084
+ __props__.__dict__["check_presence_cookie"] = check_presence_cookie
1085
+ __props__.__dict__["check_presence_header"] = check_presence_header
1086
+ __props__.__dict__["edge_cache_mode"] = edge_cache_mode
1087
+ __props__.__dict__["edge_cache_ttl"] = edge_cache_ttl
1088
+ __props__.__dict__["edge_status_code_cache_ttl"] = edge_status_code_cache_ttl
1089
+ __props__.__dict__["include_cookie"] = include_cookie
1090
+ __props__.__dict__["include_header"] = include_header
1091
+ __props__.__dict__["query_string"] = query_string
1092
+ __props__.__dict__["query_string_mode"] = query_string_mode
1093
+ __props__.__dict__["rule"] = rule
1094
+ __props__.__dict__["rule_enable"] = rule_enable
1095
+ __props__.__dict__["rule_name"] = rule_name
1096
+ __props__.__dict__["serve_stale"] = serve_stale
1097
+ if site_id is None and not opts.urn:
1098
+ raise TypeError("Missing required property 'site_id'")
1099
+ __props__.__dict__["site_id"] = site_id
1100
+ __props__.__dict__["site_version"] = site_version
1101
+ __props__.__dict__["sort_query_string_for_cache"] = sort_query_string_for_cache
1102
+ __props__.__dict__["user_device_type"] = user_device_type
1103
+ __props__.__dict__["user_geo"] = user_geo
1104
+ __props__.__dict__["user_language"] = user_language
1105
+ __props__.__dict__["cache_rule_id"] = None
1106
+ super(CacheRule, __self__).__init__(
1107
+ 'alicloud:esa/cacheRule:CacheRule',
1108
+ resource_name,
1109
+ __props__,
1110
+ opts)
1111
+
1112
+ @staticmethod
1113
+ def get(resource_name: str,
1114
+ id: pulumi.Input[str],
1115
+ opts: Optional[pulumi.ResourceOptions] = None,
1116
+ additional_cacheable_ports: Optional[pulumi.Input[str]] = None,
1117
+ browser_cache_mode: Optional[pulumi.Input[str]] = None,
1118
+ browser_cache_ttl: Optional[pulumi.Input[str]] = None,
1119
+ bypass_cache: Optional[pulumi.Input[str]] = None,
1120
+ cache_deception_armor: Optional[pulumi.Input[str]] = None,
1121
+ cache_reserve_eligibility: Optional[pulumi.Input[str]] = None,
1122
+ cache_rule_id: Optional[pulumi.Input[int]] = None,
1123
+ check_presence_cookie: Optional[pulumi.Input[str]] = None,
1124
+ check_presence_header: Optional[pulumi.Input[str]] = None,
1125
+ edge_cache_mode: Optional[pulumi.Input[str]] = None,
1126
+ edge_cache_ttl: Optional[pulumi.Input[str]] = None,
1127
+ edge_status_code_cache_ttl: Optional[pulumi.Input[str]] = None,
1128
+ include_cookie: Optional[pulumi.Input[str]] = None,
1129
+ include_header: Optional[pulumi.Input[str]] = None,
1130
+ query_string: Optional[pulumi.Input[str]] = None,
1131
+ query_string_mode: Optional[pulumi.Input[str]] = None,
1132
+ rule: Optional[pulumi.Input[str]] = None,
1133
+ rule_enable: Optional[pulumi.Input[str]] = None,
1134
+ rule_name: Optional[pulumi.Input[str]] = None,
1135
+ serve_stale: Optional[pulumi.Input[str]] = None,
1136
+ site_id: Optional[pulumi.Input[int]] = None,
1137
+ site_version: Optional[pulumi.Input[int]] = None,
1138
+ sort_query_string_for_cache: Optional[pulumi.Input[str]] = None,
1139
+ user_device_type: Optional[pulumi.Input[str]] = None,
1140
+ user_geo: Optional[pulumi.Input[str]] = None,
1141
+ user_language: Optional[pulumi.Input[str]] = None) -> 'CacheRule':
1142
+ """
1143
+ Get an existing CacheRule resource's state with the given name, id, and optional extra
1144
+ properties used to qualify the lookup.
1145
+
1146
+ :param str resource_name: The unique name of the resulting resource.
1147
+ :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1148
+ :param pulumi.ResourceOptions opts: Options for the resource.
1149
+ :param pulumi.Input[str] additional_cacheable_ports: Enable caching on specified ports. Value range: 8880, 2052, 2082, 2086, 2095, 2053, 2083, 2087, 2096
1150
+ :param pulumi.Input[str] browser_cache_mode: Browser cache mode. Possible values:
1151
+ :param pulumi.Input[str] browser_cache_ttl: Browser cache expiration time in seconds.
1152
+ :param pulumi.Input[str] bypass_cache: Set the bypass cache mode. Possible values:
1153
+ :param pulumi.Input[str] cache_deception_armor: Cache deception protection. Used to defend against web cache deception attacks, only the cache content that passes the validation will be cached. Value range:
1154
+ :param pulumi.Input[str] cache_reserve_eligibility: Cache retention eligibility. Used to control whether user requests bypass the cache retention node when returning to the origin. Possible values:
1155
+ :param pulumi.Input[int] cache_rule_id: Cache Rule Id.
1156
+ :param pulumi.Input[str] check_presence_cookie: When generating the cache key, check if the cookie exists. If it does, add the cookie name (case-insensitive) to the cache key. Multiple cookie names are supported, separated by spaces.
1157
+ :param pulumi.Input[str] check_presence_header: When generating the cache key, check if the header exists. If it does, add the header name (case-insensitive) to the cache key. Multiple header names are supported, separated by spaces.
1158
+ :param pulumi.Input[str] edge_cache_mode: Edge cache mode. Possible values:
1159
+ :param pulumi.Input[str] edge_cache_ttl: Edge cache expiration time in seconds.
1160
+ :param pulumi.Input[str] edge_status_code_cache_ttl: Status code cache expiration time in seconds.
1161
+ :param pulumi.Input[str] include_cookie: When generating the cache key, add the specified cookie names and their values. Multiple values are supported, separated by spaces.
1162
+ :param pulumi.Input[str] include_header: When generating the cache key, add the specified header names and their values. Multiple values are supported, separated by spaces.
1163
+ :param pulumi.Input[str] query_string: Query strings to be reserved or excluded. Multiple values are supported, separated by spaces.
1164
+ :param pulumi.Input[str] query_string_mode: The processing mode for query strings when generating the cache key. Possible values:
1165
+ :param pulumi.Input[str] rule: Rule content, using conditional expressions to match user requests. When adding global configuration, this parameter does not need to be set. There are two usage scenarios:
1166
+ - Match all incoming requests: value set to true.
1167
+ - Match specified request: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\").
1168
+ :param pulumi.Input[str] rule_enable: Rule switch. When adding global configuration, this parameter does not need to be set. Value range:
1169
+ :param pulumi.Input[str] rule_name: Rule name. When adding global configuration, this parameter does not need to be set.
1170
+ :param pulumi.Input[str] serve_stale: Serve stale cache. When enabled, the node can still respond to user requests with expired cached files when the origin server is unavailable. Value range:
1171
+ :param pulumi.Input[int] site_id: The site ID, which can be obtained by calling the [ListSites] API.
1172
+ :param pulumi.Input[int] site_version: The version number of the site configuration. For sites that have enabled configuration version management, this parameter can be used to specify the effective version of the configuration site, which defaults to version 0.
1173
+ :param pulumi.Input[str] sort_query_string_for_cache: Query string sorting, disabled by default. Possible values:
1174
+ :param pulumi.Input[str] user_device_type: When generating the cache key, add the client device type. Possible values:
1175
+ :param pulumi.Input[str] user_geo: When generating the cache key, add the client's geographic location. Possible values:
1176
+ :param pulumi.Input[str] user_language: When generating cache keys, include the client's language type. Possible values:
1177
+ """
1178
+ opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
1179
+
1180
+ __props__ = _CacheRuleState.__new__(_CacheRuleState)
1181
+
1182
+ __props__.__dict__["additional_cacheable_ports"] = additional_cacheable_ports
1183
+ __props__.__dict__["browser_cache_mode"] = browser_cache_mode
1184
+ __props__.__dict__["browser_cache_ttl"] = browser_cache_ttl
1185
+ __props__.__dict__["bypass_cache"] = bypass_cache
1186
+ __props__.__dict__["cache_deception_armor"] = cache_deception_armor
1187
+ __props__.__dict__["cache_reserve_eligibility"] = cache_reserve_eligibility
1188
+ __props__.__dict__["cache_rule_id"] = cache_rule_id
1189
+ __props__.__dict__["check_presence_cookie"] = check_presence_cookie
1190
+ __props__.__dict__["check_presence_header"] = check_presence_header
1191
+ __props__.__dict__["edge_cache_mode"] = edge_cache_mode
1192
+ __props__.__dict__["edge_cache_ttl"] = edge_cache_ttl
1193
+ __props__.__dict__["edge_status_code_cache_ttl"] = edge_status_code_cache_ttl
1194
+ __props__.__dict__["include_cookie"] = include_cookie
1195
+ __props__.__dict__["include_header"] = include_header
1196
+ __props__.__dict__["query_string"] = query_string
1197
+ __props__.__dict__["query_string_mode"] = query_string_mode
1198
+ __props__.__dict__["rule"] = rule
1199
+ __props__.__dict__["rule_enable"] = rule_enable
1200
+ __props__.__dict__["rule_name"] = rule_name
1201
+ __props__.__dict__["serve_stale"] = serve_stale
1202
+ __props__.__dict__["site_id"] = site_id
1203
+ __props__.__dict__["site_version"] = site_version
1204
+ __props__.__dict__["sort_query_string_for_cache"] = sort_query_string_for_cache
1205
+ __props__.__dict__["user_device_type"] = user_device_type
1206
+ __props__.__dict__["user_geo"] = user_geo
1207
+ __props__.__dict__["user_language"] = user_language
1208
+ return CacheRule(resource_name, opts=opts, __props__=__props__)
1209
+
1210
+ @property
1211
+ @pulumi.getter(name="additionalCacheablePorts")
1212
+ def additional_cacheable_ports(self) -> pulumi.Output[Optional[str]]:
1213
+ """
1214
+ Enable caching on specified ports. Value range: 8880, 2052, 2082, 2086, 2095, 2053, 2083, 2087, 2096
1215
+ """
1216
+ return pulumi.get(self, "additional_cacheable_ports")
1217
+
1218
+ @property
1219
+ @pulumi.getter(name="browserCacheMode")
1220
+ def browser_cache_mode(self) -> pulumi.Output[Optional[str]]:
1221
+ """
1222
+ Browser cache mode. Possible values:
1223
+ """
1224
+ return pulumi.get(self, "browser_cache_mode")
1225
+
1226
+ @property
1227
+ @pulumi.getter(name="browserCacheTtl")
1228
+ def browser_cache_ttl(self) -> pulumi.Output[Optional[str]]:
1229
+ """
1230
+ Browser cache expiration time in seconds.
1231
+ """
1232
+ return pulumi.get(self, "browser_cache_ttl")
1233
+
1234
+ @property
1235
+ @pulumi.getter(name="bypassCache")
1236
+ def bypass_cache(self) -> pulumi.Output[Optional[str]]:
1237
+ """
1238
+ Set the bypass cache mode. Possible values:
1239
+ """
1240
+ return pulumi.get(self, "bypass_cache")
1241
+
1242
+ @property
1243
+ @pulumi.getter(name="cacheDeceptionArmor")
1244
+ def cache_deception_armor(self) -> pulumi.Output[Optional[str]]:
1245
+ """
1246
+ Cache deception protection. Used to defend against web cache deception attacks, only the cache content that passes the validation will be cached. Value range:
1247
+ """
1248
+ return pulumi.get(self, "cache_deception_armor")
1249
+
1250
+ @property
1251
+ @pulumi.getter(name="cacheReserveEligibility")
1252
+ def cache_reserve_eligibility(self) -> pulumi.Output[Optional[str]]:
1253
+ """
1254
+ Cache retention eligibility. Used to control whether user requests bypass the cache retention node when returning to the origin. Possible values:
1255
+ """
1256
+ return pulumi.get(self, "cache_reserve_eligibility")
1257
+
1258
+ @property
1259
+ @pulumi.getter(name="cacheRuleId")
1260
+ def cache_rule_id(self) -> pulumi.Output[int]:
1261
+ """
1262
+ Cache Rule Id.
1263
+ """
1264
+ return pulumi.get(self, "cache_rule_id")
1265
+
1266
+ @property
1267
+ @pulumi.getter(name="checkPresenceCookie")
1268
+ def check_presence_cookie(self) -> pulumi.Output[Optional[str]]:
1269
+ """
1270
+ When generating the cache key, check if the cookie exists. If it does, add the cookie name (case-insensitive) to the cache key. Multiple cookie names are supported, separated by spaces.
1271
+ """
1272
+ return pulumi.get(self, "check_presence_cookie")
1273
+
1274
+ @property
1275
+ @pulumi.getter(name="checkPresenceHeader")
1276
+ def check_presence_header(self) -> pulumi.Output[Optional[str]]:
1277
+ """
1278
+ When generating the cache key, check if the header exists. If it does, add the header name (case-insensitive) to the cache key. Multiple header names are supported, separated by spaces.
1279
+ """
1280
+ return pulumi.get(self, "check_presence_header")
1281
+
1282
+ @property
1283
+ @pulumi.getter(name="edgeCacheMode")
1284
+ def edge_cache_mode(self) -> pulumi.Output[Optional[str]]:
1285
+ """
1286
+ Edge cache mode. Possible values:
1287
+ """
1288
+ return pulumi.get(self, "edge_cache_mode")
1289
+
1290
+ @property
1291
+ @pulumi.getter(name="edgeCacheTtl")
1292
+ def edge_cache_ttl(self) -> pulumi.Output[Optional[str]]:
1293
+ """
1294
+ Edge cache expiration time in seconds.
1295
+ """
1296
+ return pulumi.get(self, "edge_cache_ttl")
1297
+
1298
+ @property
1299
+ @pulumi.getter(name="edgeStatusCodeCacheTtl")
1300
+ def edge_status_code_cache_ttl(self) -> pulumi.Output[Optional[str]]:
1301
+ """
1302
+ Status code cache expiration time in seconds.
1303
+ """
1304
+ return pulumi.get(self, "edge_status_code_cache_ttl")
1305
+
1306
+ @property
1307
+ @pulumi.getter(name="includeCookie")
1308
+ def include_cookie(self) -> pulumi.Output[Optional[str]]:
1309
+ """
1310
+ When generating the cache key, add the specified cookie names and their values. Multiple values are supported, separated by spaces.
1311
+ """
1312
+ return pulumi.get(self, "include_cookie")
1313
+
1314
+ @property
1315
+ @pulumi.getter(name="includeHeader")
1316
+ def include_header(self) -> pulumi.Output[Optional[str]]:
1317
+ """
1318
+ When generating the cache key, add the specified header names and their values. Multiple values are supported, separated by spaces.
1319
+ """
1320
+ return pulumi.get(self, "include_header")
1321
+
1322
+ @property
1323
+ @pulumi.getter(name="queryString")
1324
+ def query_string(self) -> pulumi.Output[Optional[str]]:
1325
+ """
1326
+ Query strings to be reserved or excluded. Multiple values are supported, separated by spaces.
1327
+ """
1328
+ return pulumi.get(self, "query_string")
1329
+
1330
+ @property
1331
+ @pulumi.getter(name="queryStringMode")
1332
+ def query_string_mode(self) -> pulumi.Output[Optional[str]]:
1333
+ """
1334
+ The processing mode for query strings when generating the cache key. Possible values:
1335
+ """
1336
+ return pulumi.get(self, "query_string_mode")
1337
+
1338
+ @property
1339
+ @pulumi.getter
1340
+ def rule(self) -> pulumi.Output[Optional[str]]:
1341
+ """
1342
+ Rule content, using conditional expressions to match user requests. When adding global configuration, this parameter does not need to be set. There are two usage scenarios:
1343
+ - Match all incoming requests: value set to true.
1344
+ - Match specified request: Set the value to a custom expression, for example: (http.host eq \\"video.example.com\\").
1345
+ """
1346
+ return pulumi.get(self, "rule")
1347
+
1348
+ @property
1349
+ @pulumi.getter(name="ruleEnable")
1350
+ def rule_enable(self) -> pulumi.Output[Optional[str]]:
1351
+ """
1352
+ Rule switch. When adding global configuration, this parameter does not need to be set. Value range:
1353
+ """
1354
+ return pulumi.get(self, "rule_enable")
1355
+
1356
+ @property
1357
+ @pulumi.getter(name="ruleName")
1358
+ def rule_name(self) -> pulumi.Output[Optional[str]]:
1359
+ """
1360
+ Rule name. When adding global configuration, this parameter does not need to be set.
1361
+ """
1362
+ return pulumi.get(self, "rule_name")
1363
+
1364
+ @property
1365
+ @pulumi.getter(name="serveStale")
1366
+ def serve_stale(self) -> pulumi.Output[Optional[str]]:
1367
+ """
1368
+ Serve stale cache. When enabled, the node can still respond to user requests with expired cached files when the origin server is unavailable. Value range:
1369
+ """
1370
+ return pulumi.get(self, "serve_stale")
1371
+
1372
+ @property
1373
+ @pulumi.getter(name="siteId")
1374
+ def site_id(self) -> pulumi.Output[int]:
1375
+ """
1376
+ The site ID, which can be obtained by calling the [ListSites] API.
1377
+ """
1378
+ return pulumi.get(self, "site_id")
1379
+
1380
+ @property
1381
+ @pulumi.getter(name="siteVersion")
1382
+ def site_version(self) -> pulumi.Output[Optional[int]]:
1383
+ """
1384
+ The version number of the site configuration. For sites that have enabled configuration version management, this parameter can be used to specify the effective version of the configuration site, which defaults to version 0.
1385
+ """
1386
+ return pulumi.get(self, "site_version")
1387
+
1388
+ @property
1389
+ @pulumi.getter(name="sortQueryStringForCache")
1390
+ def sort_query_string_for_cache(self) -> pulumi.Output[Optional[str]]:
1391
+ """
1392
+ Query string sorting, disabled by default. Possible values:
1393
+ """
1394
+ return pulumi.get(self, "sort_query_string_for_cache")
1395
+
1396
+ @property
1397
+ @pulumi.getter(name="userDeviceType")
1398
+ def user_device_type(self) -> pulumi.Output[Optional[str]]:
1399
+ """
1400
+ When generating the cache key, add the client device type. Possible values:
1401
+ """
1402
+ return pulumi.get(self, "user_device_type")
1403
+
1404
+ @property
1405
+ @pulumi.getter(name="userGeo")
1406
+ def user_geo(self) -> pulumi.Output[Optional[str]]:
1407
+ """
1408
+ When generating the cache key, add the client's geographic location. Possible values:
1409
+ """
1410
+ return pulumi.get(self, "user_geo")
1411
+
1412
+ @property
1413
+ @pulumi.getter(name="userLanguage")
1414
+ def user_language(self) -> pulumi.Output[Optional[str]]:
1415
+ """
1416
+ When generating cache keys, include the client's language type. Possible values:
1417
+ """
1418
+ return pulumi.get(self, "user_language")
1419
+