pulumi-aws 7.15.0__py3-none-any.whl → 7.16.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.
Files changed (105) hide show
  1. pulumi_aws/__init__.py +80 -0
  2. pulumi_aws/alb/listener.py +7 -7
  3. pulumi_aws/alb/target_group.py +7 -7
  4. pulumi_aws/alb/target_group_attachment.py +83 -0
  5. pulumi_aws/apigateway/domain_name.py +86 -7
  6. pulumi_aws/apigateway/get_domain_name.py +15 -1
  7. pulumi_aws/apigateway/integration.py +48 -8
  8. pulumi_aws/athena/_inputs.py +412 -5
  9. pulumi_aws/athena/outputs.py +342 -2
  10. pulumi_aws/backup/global_settings.py +15 -7
  11. pulumi_aws/bedrock/agentcore_memory_strategy.py +8 -0
  12. pulumi_aws/cleanrooms/collaboration.py +26 -6
  13. pulumi_aws/cloudfront/__init__.py +6 -0
  14. pulumi_aws/cloudfront/_inputs.py +3601 -478
  15. pulumi_aws/cloudfront/connection_function.py +658 -0
  16. pulumi_aws/cloudfront/connection_group.py +649 -0
  17. pulumi_aws/cloudfront/distribution.py +142 -0
  18. pulumi_aws/cloudfront/distribution_tenant.py +857 -0
  19. pulumi_aws/cloudfront/get_connection_group.py +249 -0
  20. pulumi_aws/cloudfront/get_distribution_tenant.py +279 -0
  21. pulumi_aws/cloudfront/multitenant_distribution.py +1181 -0
  22. pulumi_aws/cloudfront/outputs.py +3034 -376
  23. pulumi_aws/cloudwatch/log_subscription_filter.py +136 -42
  24. pulumi_aws/directconnect/gateway.py +78 -3
  25. pulumi_aws/directconnect/get_gateway.py +24 -4
  26. pulumi_aws/dlm/_inputs.py +3 -3
  27. pulumi_aws/dlm/outputs.py +2 -2
  28. pulumi_aws/dynamodb/__init__.py +1 -0
  29. pulumi_aws/dynamodb/_inputs.py +370 -0
  30. pulumi_aws/dynamodb/global_secondary_index.py +666 -0
  31. pulumi_aws/dynamodb/outputs.py +315 -0
  32. pulumi_aws/dynamodb/table.py +9 -1
  33. pulumi_aws/ec2/_inputs.py +44 -4
  34. pulumi_aws/ec2/get_vpc_endpoint.py +24 -4
  35. pulumi_aws/ec2/outputs.py +54 -4
  36. pulumi_aws/ecr/__init__.py +1 -0
  37. pulumi_aws/ecr/_inputs.py +58 -22
  38. pulumi_aws/ecr/get_repository_creation_template.py +1 -1
  39. pulumi_aws/ecr/lifecycle_policy.py +152 -64
  40. pulumi_aws/ecr/outputs.py +37 -15
  41. pulumi_aws/ecr/pull_time_update_exclusion.py +363 -0
  42. pulumi_aws/ecr/repository_creation_template.py +7 -7
  43. pulumi_aws/ecs/_inputs.py +20 -0
  44. pulumi_aws/ecs/outputs.py +14 -0
  45. pulumi_aws/ecs/task_definition.py +28 -28
  46. pulumi_aws/elasticache/replication_group.py +7 -7
  47. pulumi_aws/fsx/ontap_file_system.py +14 -0
  48. pulumi_aws/glue/resource_policy.py +4 -4
  49. pulumi_aws/guardduty/_inputs.py +41 -1
  50. pulumi_aws/guardduty/outputs.py +27 -1
  51. pulumi_aws/iam/get_saml_provider.py +15 -1
  52. pulumi_aws/iam/outbound_web_identity_federation.py +0 -4
  53. pulumi_aws/iam/policy.py +47 -0
  54. pulumi_aws/iam/saml_provider.py +28 -0
  55. pulumi_aws/iam/virtual_mfa_device.py +66 -38
  56. pulumi_aws/imagebuilder/_inputs.py +87 -0
  57. pulumi_aws/imagebuilder/image.py +47 -0
  58. pulumi_aws/imagebuilder/image_pipeline.py +47 -0
  59. pulumi_aws/imagebuilder/outputs.py +87 -0
  60. pulumi_aws/kms/grant.py +18 -18
  61. pulumi_aws/lambda_/_inputs.py +24 -4
  62. pulumi_aws/lambda_/event_source_mapping.py +2 -0
  63. pulumi_aws/lambda_/function.py +28 -0
  64. pulumi_aws/lambda_/function_url.py +4 -0
  65. pulumi_aws/lambda_/get_function.py +15 -1
  66. pulumi_aws/lambda_/outputs.py +17 -3
  67. pulumi_aws/lambda_/permission.py +47 -0
  68. pulumi_aws/lb/listener.py +7 -7
  69. pulumi_aws/lb/target_group.py +7 -7
  70. pulumi_aws/lb/target_group_attachment.py +83 -0
  71. pulumi_aws/networkfirewall/_inputs.py +3 -3
  72. pulumi_aws/networkfirewall/outputs.py +2 -2
  73. pulumi_aws/networkfirewall/vpc_endpoint_association.py +2 -2
  74. pulumi_aws/networkmanager/vpc_attachment.py +7 -7
  75. pulumi_aws/opensearchingest/pipeline.py +47 -0
  76. pulumi_aws/organizations/__init__.py +1 -0
  77. pulumi_aws/organizations/tag.py +292 -0
  78. pulumi_aws/pulumi-plugin.json +1 -1
  79. pulumi_aws/rds/cluster.py +21 -21
  80. pulumi_aws/rds/get_proxy.py +29 -1
  81. pulumi_aws/rds/proxy.py +94 -0
  82. pulumi_aws/rds/proxy_default_target_group.py +0 -76
  83. pulumi_aws/rds/proxy_target.py +0 -80
  84. pulumi_aws/redshift/__init__.py +1 -0
  85. pulumi_aws/redshift/_inputs.py +329 -0
  86. pulumi_aws/redshift/idc_application.py +687 -0
  87. pulumi_aws/redshift/outputs.py +265 -0
  88. pulumi_aws/route53/get_resolver_firewall_rules.py +9 -0
  89. pulumi_aws/route53/get_resolver_rule.py +19 -4
  90. pulumi_aws/route53/outputs.py +108 -1
  91. pulumi_aws/route53/resolver_firewall_rule.py +199 -32
  92. pulumi_aws/secretsmanager/__init__.py +1 -0
  93. pulumi_aws/secretsmanager/tag.py +333 -0
  94. pulumi_aws/sesv2/__init__.py +1 -0
  95. pulumi_aws/sesv2/tenant.py +418 -0
  96. pulumi_aws/sfn/activity.py +0 -4
  97. pulumi_aws/sfn/alias.py +0 -4
  98. pulumi_aws/transfer/_inputs.py +126 -0
  99. pulumi_aws/transfer/outputs.py +97 -0
  100. pulumi_aws/transfer/web_app.py +54 -7
  101. pulumi_aws/vpclattice/service_network_resource_association.py +47 -0
  102. {pulumi_aws-7.15.0.dist-info → pulumi_aws-7.16.0.dist-info}/METADATA +1 -1
  103. {pulumi_aws-7.15.0.dist-info → pulumi_aws-7.16.0.dist-info}/RECORD +105 -93
  104. {pulumi_aws-7.15.0.dist-info → pulumi_aws-7.16.0.dist-info}/WHEEL +0 -0
  105. {pulumi_aws-7.15.0.dist-info → pulumi_aws-7.16.0.dist-info}/top_level.txt +0 -0
@@ -20,10 +20,16 @@ __all__ = [
20
20
  'DatabaseAclConfiguration',
21
21
  'DatabaseEncryptionConfiguration',
22
22
  'WorkgroupConfiguration',
23
+ 'WorkgroupConfigurationCustomerContentEncryptionConfiguration',
23
24
  'WorkgroupConfigurationEngineVersion',
24
25
  'WorkgroupConfigurationIdentityCenterConfiguration',
25
26
  'WorkgroupConfigurationManagedQueryResultsConfiguration',
26
27
  'WorkgroupConfigurationManagedQueryResultsConfigurationEncryptionConfiguration',
28
+ 'WorkgroupConfigurationMonitoringConfiguration',
29
+ 'WorkgroupConfigurationMonitoringConfigurationCloudWatchLoggingConfiguration',
30
+ 'WorkgroupConfigurationMonitoringConfigurationCloudWatchLoggingConfigurationLogType',
31
+ 'WorkgroupConfigurationMonitoringConfigurationManagedLoggingConfiguration',
32
+ 'WorkgroupConfigurationMonitoringConfigurationS3LoggingConfiguration',
27
33
  'WorkgroupConfigurationResultConfiguration',
28
34
  'WorkgroupConfigurationResultConfigurationAclConfiguration',
29
35
  'WorkgroupConfigurationResultConfigurationEncryptionConfiguration',
@@ -167,6 +173,10 @@ class WorkgroupConfiguration(dict):
167
173
  suggest = None
168
174
  if key == "bytesScannedCutoffPerQuery":
169
175
  suggest = "bytes_scanned_cutoff_per_query"
176
+ elif key == "customerContentEncryptionConfiguration":
177
+ suggest = "customer_content_encryption_configuration"
178
+ elif key == "enableMinimumEncryptionConfiguration":
179
+ suggest = "enable_minimum_encryption_configuration"
170
180
  elif key == "enforceWorkgroupConfiguration":
171
181
  suggest = "enforce_workgroup_configuration"
172
182
  elif key == "engineVersion":
@@ -177,6 +187,8 @@ class WorkgroupConfiguration(dict):
177
187
  suggest = "identity_center_configuration"
178
188
  elif key == "managedQueryResultsConfiguration":
179
189
  suggest = "managed_query_results_configuration"
190
+ elif key == "monitoringConfiguration":
191
+ suggest = "monitoring_configuration"
180
192
  elif key == "publishCloudwatchMetricsEnabled":
181
193
  suggest = "publish_cloudwatch_metrics_enabled"
182
194
  elif key == "requesterPaysEnabled":
@@ -197,27 +209,37 @@ class WorkgroupConfiguration(dict):
197
209
 
198
210
  def __init__(__self__, *,
199
211
  bytes_scanned_cutoff_per_query: Optional[_builtins.int] = None,
212
+ customer_content_encryption_configuration: Optional['outputs.WorkgroupConfigurationCustomerContentEncryptionConfiguration'] = None,
213
+ enable_minimum_encryption_configuration: Optional[_builtins.bool] = None,
200
214
  enforce_workgroup_configuration: Optional[_builtins.bool] = None,
201
215
  engine_version: Optional['outputs.WorkgroupConfigurationEngineVersion'] = None,
202
216
  execution_role: Optional[_builtins.str] = None,
203
217
  identity_center_configuration: Optional['outputs.WorkgroupConfigurationIdentityCenterConfiguration'] = None,
204
218
  managed_query_results_configuration: Optional['outputs.WorkgroupConfigurationManagedQueryResultsConfiguration'] = None,
219
+ monitoring_configuration: Optional['outputs.WorkgroupConfigurationMonitoringConfiguration'] = None,
205
220
  publish_cloudwatch_metrics_enabled: Optional[_builtins.bool] = None,
206
221
  requester_pays_enabled: Optional[_builtins.bool] = None,
207
222
  result_configuration: Optional['outputs.WorkgroupConfigurationResultConfiguration'] = None):
208
223
  """
209
224
  :param _builtins.int bytes_scanned_cutoff_per_query: Integer for the upper data usage limit (cutoff) for the amount of bytes a single query in a workgroup is allowed to scan. Must be at least `10485760`.
225
+ :param 'WorkgroupConfigurationCustomerContentEncryptionConfigurationArgs' customer_content_encryption_configuration: Configuration block to specify the KMS key that is used to encrypt the user's data stores in Athena. This setting applies to the PySpark engine for Athena notebooks. See Customer Content Encryption Configuration below.
226
+ :param _builtins.bool enable_minimum_encryption_configuration: Boolean indicating whether a minimum level of encryption is enforced for the workgroup for query and calculation results written to Amazon S3.
210
227
  :param _builtins.bool enforce_workgroup_configuration: Boolean whether the settings for the workgroup override client-side settings. For more information, see [Workgroup Settings Override Client-Side Settings](https://docs.aws.amazon.com/athena/latest/ug/workgroups-settings-override.html). Defaults to `true`.
211
228
  :param 'WorkgroupConfigurationEngineVersionArgs' engine_version: Configuration block for the Athena Engine Versioning. For more information, see [Athena Engine Versioning](https://docs.aws.amazon.com/athena/latest/ug/engine-versions.html). See Engine Version below.
212
229
  :param _builtins.str execution_role: Role used to access user resources in notebook sessions and IAM Identity Center enabled workgroups. The property is required for IAM Identity Center enabled workgroups.
213
230
  :param 'WorkgroupConfigurationIdentityCenterConfigurationArgs' identity_center_configuration: Configuration block to set up an IAM Identity Center enabled workgroup. See Identity Center Configuration below.
214
231
  :param 'WorkgroupConfigurationManagedQueryResultsConfigurationArgs' managed_query_results_configuration: Configuration block for storing results in Athena owned storage. See Managed Query Results Configuration below.
232
+ :param 'WorkgroupConfigurationMonitoringConfigurationArgs' monitoring_configuration: Configuration block for managed log persistence, delivering logs to Amazon S3 buckets, Amazon CloudWatch log groups etc. Only applicable to Apache Spark engine. See Monitoring Configuration below.
215
233
  :param _builtins.bool publish_cloudwatch_metrics_enabled: Boolean whether Amazon CloudWatch metrics are enabled for the workgroup. Defaults to `true`.
216
234
  :param _builtins.bool requester_pays_enabled: If set to true , allows members assigned to a workgroup to reference Amazon S3 Requester Pays buckets in queries. If set to false , workgroup members cannot query data from Requester Pays buckets, and queries that retrieve data from Requester Pays buckets cause an error. The default is false . For more information about Requester Pays buckets, see [Requester Pays Buckets](https://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html) in the Amazon Simple Storage Service Developer Guide.
217
235
  :param 'WorkgroupConfigurationResultConfigurationArgs' result_configuration: Configuration block with result settings. See Result Configuration below.
218
236
  """
219
237
  if bytes_scanned_cutoff_per_query is not None:
220
238
  pulumi.set(__self__, "bytes_scanned_cutoff_per_query", bytes_scanned_cutoff_per_query)
239
+ if customer_content_encryption_configuration is not None:
240
+ pulumi.set(__self__, "customer_content_encryption_configuration", customer_content_encryption_configuration)
241
+ if enable_minimum_encryption_configuration is not None:
242
+ pulumi.set(__self__, "enable_minimum_encryption_configuration", enable_minimum_encryption_configuration)
221
243
  if enforce_workgroup_configuration is not None:
222
244
  pulumi.set(__self__, "enforce_workgroup_configuration", enforce_workgroup_configuration)
223
245
  if engine_version is not None:
@@ -228,6 +250,8 @@ class WorkgroupConfiguration(dict):
228
250
  pulumi.set(__self__, "identity_center_configuration", identity_center_configuration)
229
251
  if managed_query_results_configuration is not None:
230
252
  pulumi.set(__self__, "managed_query_results_configuration", managed_query_results_configuration)
253
+ if monitoring_configuration is not None:
254
+ pulumi.set(__self__, "monitoring_configuration", monitoring_configuration)
231
255
  if publish_cloudwatch_metrics_enabled is not None:
232
256
  pulumi.set(__self__, "publish_cloudwatch_metrics_enabled", publish_cloudwatch_metrics_enabled)
233
257
  if requester_pays_enabled is not None:
@@ -243,6 +267,22 @@ class WorkgroupConfiguration(dict):
243
267
  """
244
268
  return pulumi.get(self, "bytes_scanned_cutoff_per_query")
245
269
 
270
+ @_builtins.property
271
+ @pulumi.getter(name="customerContentEncryptionConfiguration")
272
+ def customer_content_encryption_configuration(self) -> Optional['outputs.WorkgroupConfigurationCustomerContentEncryptionConfiguration']:
273
+ """
274
+ Configuration block to specify the KMS key that is used to encrypt the user's data stores in Athena. This setting applies to the PySpark engine for Athena notebooks. See Customer Content Encryption Configuration below.
275
+ """
276
+ return pulumi.get(self, "customer_content_encryption_configuration")
277
+
278
+ @_builtins.property
279
+ @pulumi.getter(name="enableMinimumEncryptionConfiguration")
280
+ def enable_minimum_encryption_configuration(self) -> Optional[_builtins.bool]:
281
+ """
282
+ Boolean indicating whether a minimum level of encryption is enforced for the workgroup for query and calculation results written to Amazon S3.
283
+ """
284
+ return pulumi.get(self, "enable_minimum_encryption_configuration")
285
+
246
286
  @_builtins.property
247
287
  @pulumi.getter(name="enforceWorkgroupConfiguration")
248
288
  def enforce_workgroup_configuration(self) -> Optional[_builtins.bool]:
@@ -283,6 +323,14 @@ class WorkgroupConfiguration(dict):
283
323
  """
284
324
  return pulumi.get(self, "managed_query_results_configuration")
285
325
 
326
+ @_builtins.property
327
+ @pulumi.getter(name="monitoringConfiguration")
328
+ def monitoring_configuration(self) -> Optional['outputs.WorkgroupConfigurationMonitoringConfiguration']:
329
+ """
330
+ Configuration block for managed log persistence, delivering logs to Amazon S3 buckets, Amazon CloudWatch log groups etc. Only applicable to Apache Spark engine. See Monitoring Configuration below.
331
+ """
332
+ return pulumi.get(self, "monitoring_configuration")
333
+
286
334
  @_builtins.property
287
335
  @pulumi.getter(name="publishCloudwatchMetricsEnabled")
288
336
  def publish_cloudwatch_metrics_enabled(self) -> Optional[_builtins.bool]:
@@ -308,6 +356,36 @@ class WorkgroupConfiguration(dict):
308
356
  return pulumi.get(self, "result_configuration")
309
357
 
310
358
 
359
+ @pulumi.output_type
360
+ class WorkgroupConfigurationCustomerContentEncryptionConfiguration(dict):
361
+ @staticmethod
362
+ def __key_warning(key: str):
363
+ suggest = None
364
+ if key == "kmsKey":
365
+ suggest = "kms_key"
366
+
367
+ if suggest:
368
+ pulumi.log.warn(f"Key '{key}' not found in WorkgroupConfigurationCustomerContentEncryptionConfiguration. Access the value via the '{suggest}' property getter instead.")
369
+
370
+ def __getitem__(self, key: str) -> Any:
371
+ WorkgroupConfigurationCustomerContentEncryptionConfiguration.__key_warning(key)
372
+ return super().__getitem__(key)
373
+
374
+ def get(self, key: str, default = None) -> Any:
375
+ WorkgroupConfigurationCustomerContentEncryptionConfiguration.__key_warning(key)
376
+ return super().get(key, default)
377
+
378
+ def __init__(__self__, *,
379
+ kms_key: Optional[_builtins.str] = None):
380
+ if kms_key is not None:
381
+ pulumi.set(__self__, "kms_key", kms_key)
382
+
383
+ @_builtins.property
384
+ @pulumi.getter(name="kmsKey")
385
+ def kms_key(self) -> Optional[_builtins.str]:
386
+ return pulumi.get(self, "kms_key")
387
+
388
+
311
389
  @pulumi.output_type
312
390
  class WorkgroupConfigurationEngineVersion(dict):
313
391
  @staticmethod
@@ -477,20 +555,282 @@ class WorkgroupConfigurationManagedQueryResultsConfigurationEncryptionConfigurat
477
555
 
478
556
  def __init__(__self__, *,
479
557
  kms_key: Optional[_builtins.str] = None):
558
+ if kms_key is not None:
559
+ pulumi.set(__self__, "kms_key", kms_key)
560
+
561
+ @_builtins.property
562
+ @pulumi.getter(name="kmsKey")
563
+ def kms_key(self) -> Optional[_builtins.str]:
564
+ return pulumi.get(self, "kms_key")
565
+
566
+
567
+ @pulumi.output_type
568
+ class WorkgroupConfigurationMonitoringConfiguration(dict):
569
+ @staticmethod
570
+ def __key_warning(key: str):
571
+ suggest = None
572
+ if key == "cloudWatchLoggingConfiguration":
573
+ suggest = "cloud_watch_logging_configuration"
574
+ elif key == "managedLoggingConfiguration":
575
+ suggest = "managed_logging_configuration"
576
+ elif key == "s3LoggingConfiguration":
577
+ suggest = "s3_logging_configuration"
578
+
579
+ if suggest:
580
+ pulumi.log.warn(f"Key '{key}' not found in WorkgroupConfigurationMonitoringConfiguration. Access the value via the '{suggest}' property getter instead.")
581
+
582
+ def __getitem__(self, key: str) -> Any:
583
+ WorkgroupConfigurationMonitoringConfiguration.__key_warning(key)
584
+ return super().__getitem__(key)
585
+
586
+ def get(self, key: str, default = None) -> Any:
587
+ WorkgroupConfigurationMonitoringConfiguration.__key_warning(key)
588
+ return super().get(key, default)
589
+
590
+ def __init__(__self__, *,
591
+ cloud_watch_logging_configuration: Optional['outputs.WorkgroupConfigurationMonitoringConfigurationCloudWatchLoggingConfiguration'] = None,
592
+ managed_logging_configuration: Optional['outputs.WorkgroupConfigurationMonitoringConfigurationManagedLoggingConfiguration'] = None,
593
+ s3_logging_configuration: Optional['outputs.WorkgroupConfigurationMonitoringConfigurationS3LoggingConfiguration'] = None):
594
+ """
595
+ :param 'WorkgroupConfigurationMonitoringConfigurationCloudWatchLoggingConfigurationArgs' cloud_watch_logging_configuration: Configuration block for delivering logs to Amazon CloudWatch log groups. See CloudWatch Logging Configuration below.
596
+ :param 'WorkgroupConfigurationMonitoringConfigurationManagedLoggingConfigurationArgs' managed_logging_configuration: Configuration block for managed log persistence. See Managed Logging Configuration below.
597
+ :param 'WorkgroupConfigurationMonitoringConfigurationS3LoggingConfigurationArgs' s3_logging_configuration: Configuration block for delivering logs to Amazon S3 buckets. See S3 Logging Configuration below.
598
+ """
599
+ if cloud_watch_logging_configuration is not None:
600
+ pulumi.set(__self__, "cloud_watch_logging_configuration", cloud_watch_logging_configuration)
601
+ if managed_logging_configuration is not None:
602
+ pulumi.set(__self__, "managed_logging_configuration", managed_logging_configuration)
603
+ if s3_logging_configuration is not None:
604
+ pulumi.set(__self__, "s3_logging_configuration", s3_logging_configuration)
605
+
606
+ @_builtins.property
607
+ @pulumi.getter(name="cloudWatchLoggingConfiguration")
608
+ def cloud_watch_logging_configuration(self) -> Optional['outputs.WorkgroupConfigurationMonitoringConfigurationCloudWatchLoggingConfiguration']:
609
+ """
610
+ Configuration block for delivering logs to Amazon CloudWatch log groups. See CloudWatch Logging Configuration below.
611
+ """
612
+ return pulumi.get(self, "cloud_watch_logging_configuration")
613
+
614
+ @_builtins.property
615
+ @pulumi.getter(name="managedLoggingConfiguration")
616
+ def managed_logging_configuration(self) -> Optional['outputs.WorkgroupConfigurationMonitoringConfigurationManagedLoggingConfiguration']:
617
+ """
618
+ Configuration block for managed log persistence. See Managed Logging Configuration below.
480
619
  """
481
- :param _builtins.str kms_key: KMS key ARN for encrypting managed query results.
620
+ return pulumi.get(self, "managed_logging_configuration")
621
+
622
+ @_builtins.property
623
+ @pulumi.getter(name="s3LoggingConfiguration")
624
+ def s3_logging_configuration(self) -> Optional['outputs.WorkgroupConfigurationMonitoringConfigurationS3LoggingConfiguration']:
625
+ """
626
+ Configuration block for delivering logs to Amazon S3 buckets. See S3 Logging Configuration below.
482
627
  """
628
+ return pulumi.get(self, "s3_logging_configuration")
629
+
630
+
631
+ @pulumi.output_type
632
+ class WorkgroupConfigurationMonitoringConfigurationCloudWatchLoggingConfiguration(dict):
633
+ @staticmethod
634
+ def __key_warning(key: str):
635
+ suggest = None
636
+ if key == "logGroup":
637
+ suggest = "log_group"
638
+ elif key == "logStreamNamePrefix":
639
+ suggest = "log_stream_name_prefix"
640
+ elif key == "logTypes":
641
+ suggest = "log_types"
642
+
643
+ if suggest:
644
+ pulumi.log.warn(f"Key '{key}' not found in WorkgroupConfigurationMonitoringConfigurationCloudWatchLoggingConfiguration. Access the value via the '{suggest}' property getter instead.")
645
+
646
+ def __getitem__(self, key: str) -> Any:
647
+ WorkgroupConfigurationMonitoringConfigurationCloudWatchLoggingConfiguration.__key_warning(key)
648
+ return super().__getitem__(key)
649
+
650
+ def get(self, key: str, default = None) -> Any:
651
+ WorkgroupConfigurationMonitoringConfigurationCloudWatchLoggingConfiguration.__key_warning(key)
652
+ return super().get(key, default)
653
+
654
+ def __init__(__self__, *,
655
+ enabled: _builtins.bool,
656
+ log_group: Optional[_builtins.str] = None,
657
+ log_stream_name_prefix: Optional[_builtins.str] = None,
658
+ log_types: Optional[Sequence['outputs.WorkgroupConfigurationMonitoringConfigurationCloudWatchLoggingConfigurationLogType']] = None):
659
+ """
660
+ :param _builtins.str log_group: Name of the log group in Amazon CloudWatch Logs where you want to publish your logs.
661
+ :param _builtins.str log_stream_name_prefix: Prefix for the CloudWatch log stream name.
662
+ :param Sequence['WorkgroupConfigurationMonitoringConfigurationCloudWatchLoggingConfigurationLogTypeArgs'] log_types: Repeatable block defining log types to be delivered to CloudWatch.
663
+ """
664
+ pulumi.set(__self__, "enabled", enabled)
665
+ if log_group is not None:
666
+ pulumi.set(__self__, "log_group", log_group)
667
+ if log_stream_name_prefix is not None:
668
+ pulumi.set(__self__, "log_stream_name_prefix", log_stream_name_prefix)
669
+ if log_types is not None:
670
+ pulumi.set(__self__, "log_types", log_types)
671
+
672
+ @_builtins.property
673
+ @pulumi.getter
674
+ def enabled(self) -> _builtins.bool:
675
+ return pulumi.get(self, "enabled")
676
+
677
+ @_builtins.property
678
+ @pulumi.getter(name="logGroup")
679
+ def log_group(self) -> Optional[_builtins.str]:
680
+ """
681
+ Name of the log group in Amazon CloudWatch Logs where you want to publish your logs.
682
+ """
683
+ return pulumi.get(self, "log_group")
684
+
685
+ @_builtins.property
686
+ @pulumi.getter(name="logStreamNamePrefix")
687
+ def log_stream_name_prefix(self) -> Optional[_builtins.str]:
688
+ """
689
+ Prefix for the CloudWatch log stream name.
690
+ """
691
+ return pulumi.get(self, "log_stream_name_prefix")
692
+
693
+ @_builtins.property
694
+ @pulumi.getter(name="logTypes")
695
+ def log_types(self) -> Optional[Sequence['outputs.WorkgroupConfigurationMonitoringConfigurationCloudWatchLoggingConfigurationLogType']]:
696
+ """
697
+ Repeatable block defining log types to be delivered to CloudWatch.
698
+ """
699
+ return pulumi.get(self, "log_types")
700
+
701
+
702
+ @pulumi.output_type
703
+ class WorkgroupConfigurationMonitoringConfigurationCloudWatchLoggingConfigurationLogType(dict):
704
+ def __init__(__self__, *,
705
+ key: _builtins.str,
706
+ values: Sequence[_builtins.str]):
707
+ """
708
+ :param _builtins.str key: Type of worker to deliver logs to CloudWatch (for example, `SPARK_DRIVER` and `SPARK_EXECUTOR`).
709
+ :param Sequence[_builtins.str] values: List of log types to be delivered to CloudWatch (for example, `STDOUT` and `STDERR`).
710
+ """
711
+ pulumi.set(__self__, "key", key)
712
+ pulumi.set(__self__, "values", values)
713
+
714
+ @_builtins.property
715
+ @pulumi.getter
716
+ def key(self) -> _builtins.str:
717
+ """
718
+ Type of worker to deliver logs to CloudWatch (for example, `SPARK_DRIVER` and `SPARK_EXECUTOR`).
719
+ """
720
+ return pulumi.get(self, "key")
721
+
722
+ @_builtins.property
723
+ @pulumi.getter
724
+ def values(self) -> Sequence[_builtins.str]:
725
+ """
726
+ List of log types to be delivered to CloudWatch (for example, `STDOUT` and `STDERR`).
727
+ """
728
+ return pulumi.get(self, "values")
729
+
730
+
731
+ @pulumi.output_type
732
+ class WorkgroupConfigurationMonitoringConfigurationManagedLoggingConfiguration(dict):
733
+ @staticmethod
734
+ def __key_warning(key: str):
735
+ suggest = None
736
+ if key == "kmsKey":
737
+ suggest = "kms_key"
738
+
739
+ if suggest:
740
+ pulumi.log.warn(f"Key '{key}' not found in WorkgroupConfigurationMonitoringConfigurationManagedLoggingConfiguration. Access the value via the '{suggest}' property getter instead.")
741
+
742
+ def __getitem__(self, key: str) -> Any:
743
+ WorkgroupConfigurationMonitoringConfigurationManagedLoggingConfiguration.__key_warning(key)
744
+ return super().__getitem__(key)
745
+
746
+ def get(self, key: str, default = None) -> Any:
747
+ WorkgroupConfigurationMonitoringConfigurationManagedLoggingConfiguration.__key_warning(key)
748
+ return super().get(key, default)
749
+
750
+ def __init__(__self__, *,
751
+ enabled: _builtins.bool,
752
+ kms_key: Optional[_builtins.str] = None):
753
+ """
754
+ :param _builtins.bool enabled: Boolean whether managed log persistence is enabled for the workgroup.
755
+ """
756
+ pulumi.set(__self__, "enabled", enabled)
757
+ if kms_key is not None:
758
+ pulumi.set(__self__, "kms_key", kms_key)
759
+
760
+ @_builtins.property
761
+ @pulumi.getter
762
+ def enabled(self) -> _builtins.bool:
763
+ """
764
+ Boolean whether managed log persistence is enabled for the workgroup.
765
+ """
766
+ return pulumi.get(self, "enabled")
767
+
768
+ @_builtins.property
769
+ @pulumi.getter(name="kmsKey")
770
+ def kms_key(self) -> Optional[_builtins.str]:
771
+ return pulumi.get(self, "kms_key")
772
+
773
+
774
+ @pulumi.output_type
775
+ class WorkgroupConfigurationMonitoringConfigurationS3LoggingConfiguration(dict):
776
+ @staticmethod
777
+ def __key_warning(key: str):
778
+ suggest = None
779
+ if key == "kmsKey":
780
+ suggest = "kms_key"
781
+ elif key == "logLocation":
782
+ suggest = "log_location"
783
+
784
+ if suggest:
785
+ pulumi.log.warn(f"Key '{key}' not found in WorkgroupConfigurationMonitoringConfigurationS3LoggingConfiguration. Access the value via the '{suggest}' property getter instead.")
786
+
787
+ def __getitem__(self, key: str) -> Any:
788
+ WorkgroupConfigurationMonitoringConfigurationS3LoggingConfiguration.__key_warning(key)
789
+ return super().__getitem__(key)
790
+
791
+ def get(self, key: str, default = None) -> Any:
792
+ WorkgroupConfigurationMonitoringConfigurationS3LoggingConfiguration.__key_warning(key)
793
+ return super().get(key, default)
794
+
795
+ def __init__(__self__, *,
796
+ enabled: _builtins.bool,
797
+ kms_key: Optional[_builtins.str] = None,
798
+ log_location: Optional[_builtins.str] = None):
799
+ """
800
+ :param _builtins.bool enabled: Boolean whether Amazon S3 logging is enabled for the workgroup.
801
+ :param _builtins.str kms_key: KMS key ARN to encrypt the logs published to the given Amazon S3 destination.
802
+ :param _builtins.str log_location: Amazon S3 destination URI (`s3://bucket/prefix`) for log publishing.
803
+ """
804
+ pulumi.set(__self__, "enabled", enabled)
483
805
  if kms_key is not None:
484
806
  pulumi.set(__self__, "kms_key", kms_key)
807
+ if log_location is not None:
808
+ pulumi.set(__self__, "log_location", log_location)
809
+
810
+ @_builtins.property
811
+ @pulumi.getter
812
+ def enabled(self) -> _builtins.bool:
813
+ """
814
+ Boolean whether Amazon S3 logging is enabled for the workgroup.
815
+ """
816
+ return pulumi.get(self, "enabled")
485
817
 
486
818
  @_builtins.property
487
819
  @pulumi.getter(name="kmsKey")
488
820
  def kms_key(self) -> Optional[_builtins.str]:
489
821
  """
490
- KMS key ARN for encrypting managed query results.
822
+ KMS key ARN to encrypt the logs published to the given Amazon S3 destination.
491
823
  """
492
824
  return pulumi.get(self, "kms_key")
493
825
 
826
+ @_builtins.property
827
+ @pulumi.getter(name="logLocation")
828
+ def log_location(self) -> Optional[_builtins.str]:
829
+ """
830
+ Amazon S3 destination URI (`s3://bucket/prefix`) for log publishing.
831
+ """
832
+ return pulumi.get(self, "log_location")
833
+
494
834
 
495
835
  @pulumi.output_type
496
836
  class WorkgroupConfigurationResultConfiguration(dict):
@@ -22,7 +22,7 @@ class GlobalSettingsArgs:
22
22
  global_settings: pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]):
23
23
  """
24
24
  The set of arguments for constructing a GlobalSettings resource.
25
- :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] global_settings: A list of resources along with the opt-in preferences for the account.
25
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] global_settings: A list of resources along with the opt-in preferences for the account. For a list of inputs, see [UpdateGlobalSettings](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_UpdateGlobalSettings.html) in the AWS Backup Developer Guide.
26
26
  """
27
27
  pulumi.set(__self__, "global_settings", global_settings)
28
28
 
@@ -30,7 +30,7 @@ class GlobalSettingsArgs:
30
30
  @pulumi.getter(name="globalSettings")
31
31
  def global_settings(self) -> pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]:
32
32
  """
33
- A list of resources along with the opt-in preferences for the account.
33
+ A list of resources along with the opt-in preferences for the account. For a list of inputs, see [UpdateGlobalSettings](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_UpdateGlobalSettings.html) in the AWS Backup Developer Guide.
34
34
  """
35
35
  return pulumi.get(self, "global_settings")
36
36
 
@@ -45,7 +45,7 @@ class _GlobalSettingsState:
45
45
  global_settings: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None):
46
46
  """
47
47
  Input properties used for looking up and filtering GlobalSettings resources.
48
- :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] global_settings: A list of resources along with the opt-in preferences for the account.
48
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] global_settings: A list of resources along with the opt-in preferences for the account. For a list of inputs, see [UpdateGlobalSettings](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_UpdateGlobalSettings.html) in the AWS Backup Developer Guide.
49
49
  """
50
50
  if global_settings is not None:
51
51
  pulumi.set(__self__, "global_settings", global_settings)
@@ -54,7 +54,7 @@ class _GlobalSettingsState:
54
54
  @pulumi.getter(name="globalSettings")
55
55
  def global_settings(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
56
56
  """
57
- A list of resources along with the opt-in preferences for the account.
57
+ A list of resources along with the opt-in preferences for the account. For a list of inputs, see [UpdateGlobalSettings](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_UpdateGlobalSettings.html) in the AWS Backup Developer Guide.
58
58
  """
59
59
  return pulumi.get(self, "global_settings")
60
60
 
@@ -74,6 +74,8 @@ class GlobalSettings(pulumi.CustomResource):
74
74
  """
75
75
  Provides an AWS Backup Global Settings resource.
76
76
 
77
+ > **Note:** This resource will show perpetual differences for any supported settings not explicitly configured in the `global_settings` configuration block. To avoid this, specify all supported options with their default values (typically `"false"`, but check the plan diff for the actual value). See [UpdateGlobalSettings](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_UpdateGlobalSettings.html) in the AWS Backup Developer Guide for available settings.
78
+
77
79
  ## Example Usage
78
80
 
79
81
  ```python
@@ -82,6 +84,8 @@ class GlobalSettings(pulumi.CustomResource):
82
84
 
83
85
  test = aws.backup.GlobalSettings("test", global_settings={
84
86
  "isCrossAccountBackupEnabled": "true",
87
+ "isMpaEnabled": "false",
88
+ "isDelegatedAdministratorEnabled": "false",
85
89
  })
86
90
  ```
87
91
 
@@ -95,7 +99,7 @@ class GlobalSettings(pulumi.CustomResource):
95
99
 
96
100
  :param str resource_name: The name of the resource.
97
101
  :param pulumi.ResourceOptions opts: Options for the resource.
98
- :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] global_settings: A list of resources along with the opt-in preferences for the account.
102
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] global_settings: A list of resources along with the opt-in preferences for the account. For a list of inputs, see [UpdateGlobalSettings](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_UpdateGlobalSettings.html) in the AWS Backup Developer Guide.
99
103
  """
100
104
  ...
101
105
  @overload
@@ -106,6 +110,8 @@ class GlobalSettings(pulumi.CustomResource):
106
110
  """
107
111
  Provides an AWS Backup Global Settings resource.
108
112
 
113
+ > **Note:** This resource will show perpetual differences for any supported settings not explicitly configured in the `global_settings` configuration block. To avoid this, specify all supported options with their default values (typically `"false"`, but check the plan diff for the actual value). See [UpdateGlobalSettings](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_UpdateGlobalSettings.html) in the AWS Backup Developer Guide for available settings.
114
+
109
115
  ## Example Usage
110
116
 
111
117
  ```python
@@ -114,6 +120,8 @@ class GlobalSettings(pulumi.CustomResource):
114
120
 
115
121
  test = aws.backup.GlobalSettings("test", global_settings={
116
122
  "isCrossAccountBackupEnabled": "true",
123
+ "isMpaEnabled": "false",
124
+ "isDelegatedAdministratorEnabled": "false",
117
125
  })
118
126
  ```
119
127
 
@@ -171,7 +179,7 @@ class GlobalSettings(pulumi.CustomResource):
171
179
  :param str resource_name: The unique name of the resulting resource.
172
180
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
173
181
  :param pulumi.ResourceOptions opts: Options for the resource.
174
- :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] global_settings: A list of resources along with the opt-in preferences for the account.
182
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] global_settings: A list of resources along with the opt-in preferences for the account. For a list of inputs, see [UpdateGlobalSettings](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_UpdateGlobalSettings.html) in the AWS Backup Developer Guide.
175
183
  """
176
184
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
177
185
 
@@ -184,7 +192,7 @@ class GlobalSettings(pulumi.CustomResource):
184
192
  @pulumi.getter(name="globalSettings")
185
193
  def global_settings(self) -> pulumi.Output[Mapping[str, _builtins.str]]:
186
194
  """
187
- A list of resources along with the opt-in preferences for the account.
195
+ A list of resources along with the opt-in preferences for the account. For a list of inputs, see [UpdateGlobalSettings](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_UpdateGlobalSettings.html) in the AWS Backup Developer Guide.
188
196
  """
189
197
  return pulumi.get(self, "global_settings")
190
198
 
@@ -181,6 +181,7 @@ class _AgentcoreMemoryStrategyState:
181
181
  :param pulumi.Input['AgentcoreMemoryStrategyConfigurationArgs'] configuration: Custom configuration block. Required when `type` is `CUSTOM`, must be omitted for other types. See `configuration` below.
182
182
  :param pulumi.Input[_builtins.str] description: Description of the memory strategy.
183
183
  :param pulumi.Input[_builtins.str] memory_id: ID of the memory to associate with this strategy. Changing this forces a new resource.
184
+ :param pulumi.Input[_builtins.str] memory_strategy_id: Unique identifier of the Memory Strategy. This corresponds to the service `strategyId` identifier (AWS API / CloudFormation terminology).
184
185
  :param pulumi.Input[_builtins.str] name: Name of the memory strategy.
185
186
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] namespaces: Set of namespace identifiers where this strategy applies. Namespaces help organize and scope memory content.
186
187
 
@@ -257,6 +258,9 @@ class _AgentcoreMemoryStrategyState:
257
258
  @_builtins.property
258
259
  @pulumi.getter(name="memoryStrategyId")
259
260
  def memory_strategy_id(self) -> Optional[pulumi.Input[_builtins.str]]:
261
+ """
262
+ Unique identifier of the Memory Strategy. This corresponds to the service `strategyId` identifier (AWS API / CloudFormation terminology).
263
+ """
260
264
  return pulumi.get(self, "memory_strategy_id")
261
265
 
262
266
  @memory_strategy_id.setter
@@ -702,6 +706,7 @@ class AgentcoreMemoryStrategy(pulumi.CustomResource):
702
706
  :param pulumi.Input[Union['AgentcoreMemoryStrategyConfigurationArgs', 'AgentcoreMemoryStrategyConfigurationArgsDict']] configuration: Custom configuration block. Required when `type` is `CUSTOM`, must be omitted for other types. See `configuration` below.
703
707
  :param pulumi.Input[_builtins.str] description: Description of the memory strategy.
704
708
  :param pulumi.Input[_builtins.str] memory_id: ID of the memory to associate with this strategy. Changing this forces a new resource.
709
+ :param pulumi.Input[_builtins.str] memory_strategy_id: Unique identifier of the Memory Strategy. This corresponds to the service `strategyId` identifier (AWS API / CloudFormation terminology).
705
710
  :param pulumi.Input[_builtins.str] name: Name of the memory strategy.
706
711
  :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] namespaces: Set of namespace identifiers where this strategy applies. Namespaces help organize and scope memory content.
707
712
 
@@ -757,6 +762,9 @@ class AgentcoreMemoryStrategy(pulumi.CustomResource):
757
762
  @_builtins.property
758
763
  @pulumi.getter(name="memoryStrategyId")
759
764
  def memory_strategy_id(self) -> pulumi.Output[_builtins.str]:
765
+ """
766
+ Unique identifier of the Memory Strategy. This corresponds to the service `strategyId` identifier (AWS API / CloudFormation terminology).
767
+ """
760
768
  return pulumi.get(self, "memory_strategy_id")
761
769
 
762
770
  @_builtins.property
@@ -519,11 +519,21 @@ class Collaboration(pulumi.CustomResource):
519
519
 
520
520
  ## Import
521
521
 
522
+ ### Identity Schema
523
+
524
+ #### Required
525
+
526
+ * `id` - (String) ID of the cleanrooms collaboration.
527
+
528
+ #### Optional
529
+
530
+ * `account_id` (String) AWS Account where this resource is managed.
531
+
532
+ * `region` (String) Region where this resource is managed.
533
+
522
534
  Using `pulumi import`, import `aws_cleanrooms_collaboration` using the `id`. For example:
523
535
 
524
- ```sh
525
- $ pulumi import aws:cleanrooms/collaboration:Collaboration collaboration 1234abcd-12ab-34cd-56ef-1234567890ab
526
- ```
536
+ % pulumi import aws_cleanrooms_collaboration.collaboration 1234abcd-12ab-34cd-56ef-1234567890ab
527
537
 
528
538
  :param str resource_name: The name of the resource.
529
539
  :param pulumi.ResourceOptions opts: Options for the resource.
@@ -596,11 +606,21 @@ class Collaboration(pulumi.CustomResource):
596
606
 
597
607
  ## Import
598
608
 
609
+ ### Identity Schema
610
+
611
+ #### Required
612
+
613
+ * `id` - (String) ID of the cleanrooms collaboration.
614
+
615
+ #### Optional
616
+
617
+ * `account_id` (String) AWS Account where this resource is managed.
618
+
619
+ * `region` (String) Region where this resource is managed.
620
+
599
621
  Using `pulumi import`, import `aws_cleanrooms_collaboration` using the `id`. For example:
600
622
 
601
- ```sh
602
- $ pulumi import aws:cleanrooms/collaboration:Collaboration collaboration 1234abcd-12ab-34cd-56ef-1234567890ab
603
- ```
623
+ % pulumi import aws_cleanrooms_collaboration.collaboration 1234abcd-12ab-34cd-56ef-1234567890ab
604
624
 
605
625
  :param str resource_name: The name of the resource.
606
626
  :param CollaborationArgs args: The arguments to use to populate this resource's properties.
@@ -7,13 +7,18 @@ from .. import _utilities
7
7
  import typing
8
8
  # Export this package's modules as members:
9
9
  from .cache_policy import *
10
+ from .connection_function import *
11
+ from .connection_group import *
10
12
  from .continuous_deployment_policy import *
11
13
  from .distribution import *
14
+ from .distribution_tenant import *
12
15
  from .field_level_encryption_config import *
13
16
  from .field_level_encryption_profile import *
14
17
  from .function import *
15
18
  from .get_cache_policy import *
19
+ from .get_connection_group import *
16
20
  from .get_distribution import *
21
+ from .get_distribution_tenant import *
17
22
  from .get_function import *
18
23
  from .get_log_delivery_canonical_user_id import *
19
24
  from .get_origin_access_control import *
@@ -27,6 +32,7 @@ from .key_value_store import *
27
32
  from .keyvaluestore_key import *
28
33
  from .keyvaluestore_keys_exclusive import *
29
34
  from .monitoring_subscription import *
35
+ from .multitenant_distribution import *
30
36
  from .origin_access_control import *
31
37
  from .origin_access_identity import *
32
38
  from .origin_request_policy import *