aws-cdk-lib 2.198.0__py3-none-any.whl → 2.200.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 aws-cdk-lib might be problematic. Click here for more details.

Files changed (55) hide show
  1. aws_cdk/__init__.py +22 -24
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.198.0.jsii.tgz → aws-cdk-lib@2.200.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_acmpca/__init__.py +1 -1
  5. aws_cdk/aws_apigateway/__init__.py +1 -1
  6. aws_cdk/aws_appconfig/__init__.py +296 -48
  7. aws_cdk/aws_applicationautoscaling/__init__.py +4 -4
  8. aws_cdk/aws_aps/__init__.py +365 -14
  9. aws_cdk/aws_autoscaling/__init__.py +4 -4
  10. aws_cdk/aws_bedrock/__init__.py +436 -28
  11. aws_cdk/aws_cloudformation/__init__.py +17 -23
  12. aws_cdk/aws_cloudfront_origins/__init__.py +1 -1
  13. aws_cdk/aws_cloudtrail/__init__.py +4 -4
  14. aws_cdk/aws_cloudwatch/__init__.py +50 -1
  15. aws_cdk/aws_codebuild/__init__.py +116 -0
  16. aws_cdk/aws_datazone/__init__.py +699 -9
  17. aws_cdk/aws_deadline/__init__.py +38 -10
  18. aws_cdk/aws_ec2/__init__.py +97 -28
  19. aws_cdk/aws_ecs_patterns/__init__.py +49 -3
  20. aws_cdk/aws_eks/__init__.py +40 -9
  21. aws_cdk/aws_elasticloadbalancingv2/__init__.py +7 -7
  22. aws_cdk/aws_emr/__init__.py +36 -2
  23. aws_cdk/aws_events_targets/__init__.py +78 -1
  24. aws_cdk/aws_fsx/__init__.py +122 -0
  25. aws_cdk/aws_glue/__init__.py +55 -26
  26. aws_cdk/aws_iam/__init__.py +376 -2
  27. aws_cdk/aws_iot/__init__.py +57 -5
  28. aws_cdk/aws_kinesisfirehose/__init__.py +5 -1
  29. aws_cdk/aws_lambda/__init__.py +65 -45
  30. aws_cdk/aws_lex/__init__.py +27 -13
  31. aws_cdk/aws_lightsail/__init__.py +452 -0
  32. aws_cdk/aws_medialive/__init__.py +699 -497
  33. aws_cdk/aws_msk/__init__.py +4 -4
  34. aws_cdk/aws_networkfirewall/__init__.py +9 -5
  35. aws_cdk/aws_nimblestudio/__init__.py +208 -400
  36. aws_cdk/aws_panorama/__init__.py +30 -3
  37. aws_cdk/aws_pcs/__init__.py +12 -5
  38. aws_cdk/aws_rds/__init__.py +28 -16
  39. aws_cdk/aws_s3/__init__.py +367 -6
  40. aws_cdk/aws_s3express/__init__.py +789 -0
  41. aws_cdk/aws_ses/__init__.py +549 -32
  42. aws_cdk/aws_sns_subscriptions/__init__.py +256 -1
  43. aws_cdk/aws_stepfunctions/__init__.py +55 -17
  44. aws_cdk/aws_stepfunctions_tasks/__init__.py +1502 -2
  45. aws_cdk/aws_synthetics/__init__.py +26 -16
  46. aws_cdk/aws_voiceid/__init__.py +13 -3
  47. aws_cdk/aws_vpclattice/__init__.py +219 -209
  48. aws_cdk/cloud_assembly_schema/__init__.py +137 -42
  49. aws_cdk/cx_api/__init__.py +7 -7
  50. {aws_cdk_lib-2.198.0.dist-info → aws_cdk_lib-2.200.0.dist-info}/METADATA +2 -2
  51. {aws_cdk_lib-2.198.0.dist-info → aws_cdk_lib-2.200.0.dist-info}/RECORD +55 -55
  52. {aws_cdk_lib-2.198.0.dist-info → aws_cdk_lib-2.200.0.dist-info}/LICENSE +0 -0
  53. {aws_cdk_lib-2.198.0.dist-info → aws_cdk_lib-2.200.0.dist-info}/NOTICE +0 -0
  54. {aws_cdk_lib-2.198.0.dist-info → aws_cdk_lib-2.200.0.dist-info}/WHEEL +0 -0
  55. {aws_cdk_lib-2.198.0.dist-info → aws_cdk_lib-2.200.0.dist-info}/top_level.txt +0 -0
@@ -98,26 +98,6 @@ user = iam.User(self, "MyUser")
98
98
  env.grant_read_config(user)
99
99
  ```
100
100
 
101
- ### Deletion Protection Check
102
-
103
- You can enable [deletion protection](https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html) on the environment by setting the `deletionProtectionCheck` property.
104
-
105
- * ACCOUNT_DEFAULT: The default setting, which uses account-level deletion protection. To configure account-level deletion protection, use the UpdateAccountSettings API.
106
- * APPLY: Instructs the deletion protection check to run, even if deletion protection is disabled at the account level. APPLY also forces the deletion protection check to run against resources created in the past hour, which are normally excluded from deletion protection checks.
107
- * BYPASS: Instructs AWS AppConfig to bypass the deletion protection check and delete an environment even if deletion protection would have otherwise prevented it.
108
-
109
- ```python
110
- # application: appconfig.Application
111
- # alarm: cloudwatch.Alarm
112
- # composite_alarm: cloudwatch.CompositeAlarm
113
-
114
-
115
- appconfig.Environment(self, "MyEnvironment",
116
- application=application,
117
- deletion_protection_check=appconfig.DeletionProtectionCheck.APPLY
118
- )
119
- ```
120
-
121
101
  ## Deployment Strategy
122
102
 
123
103
  [AWS AppConfig Deployment Strategy Documentation](https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-creating-deployment-strategy.html)
@@ -569,6 +549,41 @@ appconfig.SourcedConfiguration(self, "MySourcedConfiguration",
569
549
  )
570
550
  ```
571
551
 
552
+ ## Deletion Protection Check
553
+
554
+ You can enable [deletion protection](https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html) on the environment and configuration profile by setting the `deletionProtectionCheck` property.
555
+
556
+ * ACCOUNT_DEFAULT: The default setting, which uses account-level deletion protection. To configure account-level deletion protection, use the UpdateAccountSettings API.
557
+ * APPLY: Instructs the deletion protection check to run, even if deletion protection is disabled at the account level. APPLY also forces the deletion protection check to run against resources created in the past hour, which are normally excluded from deletion protection checks.
558
+ * BYPASS: Instructs AWS AppConfig to bypass the deletion protection check and delete an environment even if deletion protection would have otherwise prevented it.
559
+
560
+ ```python
561
+ # application: appconfig.Application
562
+ # alarm: cloudwatch.Alarm
563
+ # composite_alarm: cloudwatch.CompositeAlarm
564
+ # bucket: s3.Bucket
565
+
566
+
567
+ # Environment deletion protection check
568
+ appconfig.Environment(self, "MyEnvironment",
569
+ application=application,
570
+ deletion_protection_check=appconfig.DeletionProtectionCheck.APPLY
571
+ )
572
+
573
+ # configuration profile with deletion protection check
574
+ appconfig.HostedConfiguration(self, "MyHostedConfigFromFile",
575
+ application=application,
576
+ content=appconfig.ConfigurationContent.from_file("config.json"),
577
+ deletion_protection_check=appconfig.DeletionProtectionCheck.BYPASS
578
+ )
579
+
580
+ appconfig.SourcedConfiguration(self, "MySourcedConfiguration",
581
+ application=application,
582
+ location=appconfig.ConfigurationSource.from_bucket(bucket, "path/to/file.json"),
583
+ deletion_protection_check=appconfig.DeletionProtectionCheck.ACCOUNT_DEFAULT
584
+ )
585
+ ```
586
+
572
587
  ## Extension
573
588
 
574
589
  An extension augments your ability to inject logic or behavior at different points during the AWS AppConfig workflow of
@@ -4835,15 +4850,17 @@ class ConfigurationContent(
4835
4850
 
4836
4851
  Example::
4837
4852
 
4838
- app = appconfig.Application(self, "MyApp")
4839
- env = appconfig.Environment(self, "MyEnv",
4840
- application=app
4841
- )
4853
+ # application: appconfig.Application
4854
+ # fn: lambda.Function
4842
4855
 
4843
- appconfig.HostedConfiguration(self, "MyHostedConfig",
4844
- application=app,
4845
- deploy_to=[env],
4846
- content=appconfig.ConfigurationContent.from_inline_text("This is my configuration content.")
4856
+
4857
+ appconfig.HostedConfiguration(self, "MyHostedConfiguration",
4858
+ application=application,
4859
+ content=appconfig.ConfigurationContent.from_inline_text("This is my configuration content."),
4860
+ validators=[
4861
+ appconfig.JsonSchemaValidator.from_file("schema.json"),
4862
+ appconfig.LambdaValidator.from_function(fn)
4863
+ ]
4847
4864
  )
4848
4865
  '''
4849
4866
 
@@ -4964,6 +4981,7 @@ typing.cast(typing.Any, ConfigurationContent).__jsii_proxy_class__ = lambda : _C
4964
4981
  jsii_type="aws-cdk-lib.aws_appconfig.ConfigurationOptions",
4965
4982
  jsii_struct_bases=[],
4966
4983
  name_mapping={
4984
+ "deletion_protection_check": "deletionProtectionCheck",
4967
4985
  "deployment_key": "deploymentKey",
4968
4986
  "deployment_strategy": "deploymentStrategy",
4969
4987
  "deploy_to": "deployTo",
@@ -4977,6 +4995,7 @@ class ConfigurationOptions:
4977
4995
  def __init__(
4978
4996
  self,
4979
4997
  *,
4998
+ deletion_protection_check: typing.Optional["DeletionProtectionCheck"] = None,
4980
4999
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
4981
5000
  deployment_strategy: typing.Optional["IDeploymentStrategy"] = None,
4982
5001
  deploy_to: typing.Optional[typing.Sequence["IEnvironment"]] = None,
@@ -4987,6 +5006,7 @@ class ConfigurationOptions:
4987
5006
  ) -> None:
4988
5007
  '''Options for the Configuration construct.
4989
5008
 
5009
+ :param deletion_protection_check: A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval. Default: DeletionProtectionCheck.ACCOUNT_DEFAULT
4990
5010
  :param deployment_key: The deployment key of the configuration. Default: - None.
4991
5011
  :param deployment_strategy: The deployment strategy for the configuration. Default: - A deployment strategy with the rollout strategy set to RolloutStrategy.CANARY_10_PERCENT_20_MINUTES
4992
5012
  :param deploy_to: The list of environments to deploy the configuration to. If this parameter is not specified, then there will be no deployment created alongside this configuration. Deployments can be added later using the ``IEnvironment.addDeployment`` or ``IEnvironment.addDeployments`` methods. Default: - None.
@@ -5010,6 +5030,7 @@ class ConfigurationOptions:
5010
5030
  # validator: appconfig.IValidator
5011
5031
 
5012
5032
  configuration_options = appconfig.ConfigurationOptions(
5033
+ deletion_protection_check=appconfig.DeletionProtectionCheck.ACCOUNT_DEFAULT,
5013
5034
  deployment_key=key,
5014
5035
  deployment_strategy=deployment_strategy,
5015
5036
  deploy_to=[environment],
@@ -5021,6 +5042,7 @@ class ConfigurationOptions:
5021
5042
  '''
5022
5043
  if __debug__:
5023
5044
  type_hints = typing.get_type_hints(_typecheckingstub__7d8aafff2e2f314c1c4bef6e213f0aaef56ff294051b33fee835ad5716a7e093)
5045
+ check_type(argname="argument deletion_protection_check", value=deletion_protection_check, expected_type=type_hints["deletion_protection_check"])
5024
5046
  check_type(argname="argument deployment_key", value=deployment_key, expected_type=type_hints["deployment_key"])
5025
5047
  check_type(argname="argument deployment_strategy", value=deployment_strategy, expected_type=type_hints["deployment_strategy"])
5026
5048
  check_type(argname="argument deploy_to", value=deploy_to, expected_type=type_hints["deploy_to"])
@@ -5029,6 +5051,8 @@ class ConfigurationOptions:
5029
5051
  check_type(argname="argument type", value=type, expected_type=type_hints["type"])
5030
5052
  check_type(argname="argument validators", value=validators, expected_type=type_hints["validators"])
5031
5053
  self._values: typing.Dict[builtins.str, typing.Any] = {}
5054
+ if deletion_protection_check is not None:
5055
+ self._values["deletion_protection_check"] = deletion_protection_check
5032
5056
  if deployment_key is not None:
5033
5057
  self._values["deployment_key"] = deployment_key
5034
5058
  if deployment_strategy is not None:
@@ -5044,6 +5068,20 @@ class ConfigurationOptions:
5044
5068
  if validators is not None:
5045
5069
  self._values["validators"] = validators
5046
5070
 
5071
+ @builtins.property
5072
+ def deletion_protection_check(self) -> typing.Optional["DeletionProtectionCheck"]:
5073
+ '''A parameter to configure deletion protection.
5074
+
5075
+ Deletion protection prevents a user from deleting a configuration profile if your application has called
5076
+ either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval.
5077
+
5078
+ :default: DeletionProtectionCheck.ACCOUNT_DEFAULT
5079
+
5080
+ :see: https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html
5081
+ '''
5082
+ result = self._values.get("deletion_protection_check")
5083
+ return typing.cast(typing.Optional["DeletionProtectionCheck"], result)
5084
+
5047
5085
  @builtins.property
5048
5086
  def deployment_key(self) -> typing.Optional[_IKey_5f11635f]:
5049
5087
  '''The deployment key of the configuration.
@@ -5132,6 +5170,7 @@ class ConfigurationOptions:
5132
5170
  jsii_type="aws-cdk-lib.aws_appconfig.ConfigurationProps",
5133
5171
  jsii_struct_bases=[ConfigurationOptions],
5134
5172
  name_mapping={
5173
+ "deletion_protection_check": "deletionProtectionCheck",
5135
5174
  "deployment_key": "deploymentKey",
5136
5175
  "deployment_strategy": "deploymentStrategy",
5137
5176
  "deploy_to": "deployTo",
@@ -5146,6 +5185,7 @@ class ConfigurationProps(ConfigurationOptions):
5146
5185
  def __init__(
5147
5186
  self,
5148
5187
  *,
5188
+ deletion_protection_check: typing.Optional["DeletionProtectionCheck"] = None,
5149
5189
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
5150
5190
  deployment_strategy: typing.Optional["IDeploymentStrategy"] = None,
5151
5191
  deploy_to: typing.Optional[typing.Sequence["IEnvironment"]] = None,
@@ -5157,6 +5197,7 @@ class ConfigurationProps(ConfigurationOptions):
5157
5197
  ) -> None:
5158
5198
  '''Properties for the Configuration construct.
5159
5199
 
5200
+ :param deletion_protection_check: A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval. Default: DeletionProtectionCheck.ACCOUNT_DEFAULT
5160
5201
  :param deployment_key: The deployment key of the configuration. Default: - None.
5161
5202
  :param deployment_strategy: The deployment strategy for the configuration. Default: - A deployment strategy with the rollout strategy set to RolloutStrategy.CANARY_10_PERCENT_20_MINUTES
5162
5203
  :param deploy_to: The list of environments to deploy the configuration to. If this parameter is not specified, then there will be no deployment created alongside this configuration. Deployments can be added later using the ``IEnvironment.addDeployment`` or ``IEnvironment.addDeployments`` methods. Default: - None.
@@ -5185,6 +5226,7 @@ class ConfigurationProps(ConfigurationOptions):
5185
5226
  application=application,
5186
5227
 
5187
5228
  # the properties below are optional
5229
+ deletion_protection_check=appconfig.DeletionProtectionCheck.ACCOUNT_DEFAULT,
5188
5230
  deployment_key=key,
5189
5231
  deployment_strategy=deployment_strategy,
5190
5232
  deploy_to=[environment],
@@ -5196,6 +5238,7 @@ class ConfigurationProps(ConfigurationOptions):
5196
5238
  '''
5197
5239
  if __debug__:
5198
5240
  type_hints = typing.get_type_hints(_typecheckingstub__fde28a86ff967e860849eabd5d00b00f1f841ba2ded09e00655f2b7d433ef121)
5241
+ check_type(argname="argument deletion_protection_check", value=deletion_protection_check, expected_type=type_hints["deletion_protection_check"])
5199
5242
  check_type(argname="argument deployment_key", value=deployment_key, expected_type=type_hints["deployment_key"])
5200
5243
  check_type(argname="argument deployment_strategy", value=deployment_strategy, expected_type=type_hints["deployment_strategy"])
5201
5244
  check_type(argname="argument deploy_to", value=deploy_to, expected_type=type_hints["deploy_to"])
@@ -5207,6 +5250,8 @@ class ConfigurationProps(ConfigurationOptions):
5207
5250
  self._values: typing.Dict[builtins.str, typing.Any] = {
5208
5251
  "application": application,
5209
5252
  }
5253
+ if deletion_protection_check is not None:
5254
+ self._values["deletion_protection_check"] = deletion_protection_check
5210
5255
  if deployment_key is not None:
5211
5256
  self._values["deployment_key"] = deployment_key
5212
5257
  if deployment_strategy is not None:
@@ -5222,6 +5267,20 @@ class ConfigurationProps(ConfigurationOptions):
5222
5267
  if validators is not None:
5223
5268
  self._values["validators"] = validators
5224
5269
 
5270
+ @builtins.property
5271
+ def deletion_protection_check(self) -> typing.Optional["DeletionProtectionCheck"]:
5272
+ '''A parameter to configure deletion protection.
5273
+
5274
+ Deletion protection prevents a user from deleting a configuration profile if your application has called
5275
+ either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval.
5276
+
5277
+ :default: DeletionProtectionCheck.ACCOUNT_DEFAULT
5278
+
5279
+ :see: https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html
5280
+ '''
5281
+ result = self._values.get("deletion_protection_check")
5282
+ return typing.cast(typing.Optional["DeletionProtectionCheck"], result)
5283
+
5225
5284
  @builtins.property
5226
5285
  def deployment_key(self) -> typing.Optional[_IKey_5f11635f]:
5227
5286
  '''The deployment key of the configuration.
@@ -5519,12 +5578,27 @@ class DeletionProtectionCheck(enum.Enum):
5519
5578
  # application: appconfig.Application
5520
5579
  # alarm: cloudwatch.Alarm
5521
5580
  # composite_alarm: cloudwatch.CompositeAlarm
5581
+ # bucket: s3.Bucket
5522
5582
 
5523
5583
 
5584
+ # Environment deletion protection check
5524
5585
  appconfig.Environment(self, "MyEnvironment",
5525
5586
  application=application,
5526
5587
  deletion_protection_check=appconfig.DeletionProtectionCheck.APPLY
5527
5588
  )
5589
+
5590
+ # configuration profile with deletion protection check
5591
+ appconfig.HostedConfiguration(self, "MyHostedConfigFromFile",
5592
+ application=application,
5593
+ content=appconfig.ConfigurationContent.from_file("config.json"),
5594
+ deletion_protection_check=appconfig.DeletionProtectionCheck.BYPASS
5595
+ )
5596
+
5597
+ appconfig.SourcedConfiguration(self, "MySourcedConfiguration",
5598
+ application=application,
5599
+ location=appconfig.ConfigurationSource.from_bucket(bucket, "path/to/file.json"),
5600
+ deletion_protection_check=appconfig.DeletionProtectionCheck.ACCOUNT_DEFAULT
5601
+ )
5528
5602
  '''
5529
5603
 
5530
5604
  ACCOUNT_DEFAULT = "ACCOUNT_DEFAULT"
@@ -5991,10 +6065,16 @@ class EnvironmentProps(EnvironmentOptions):
5991
6065
  application=app
5992
6066
  )
5993
6067
 
5994
- appconfig.HostedConfiguration(self, "MyHostedConfig",
6068
+ appconfig.HostedConfiguration(self, "MyFirstHostedConfig",
6069
+ application=app,
6070
+ deploy_to=[env],
6071
+ content=appconfig.ConfigurationContent.from_inline_text("This is my first configuration content.")
6072
+ )
6073
+
6074
+ appconfig.HostedConfiguration(self, "MySecondHostedConfig",
5995
6075
  application=app,
5996
6076
  deploy_to=[env],
5997
- content=appconfig.ConfigurationContent.from_inline_text("This is my configuration content.")
6077
+ content=appconfig.ConfigurationContent.from_inline_text("This is my second configuration content.")
5998
6078
  )
5999
6079
  '''
6000
6080
  if __debug__:
@@ -6459,6 +6539,7 @@ class GrowthType(enum.Enum):
6459
6539
  jsii_type="aws-cdk-lib.aws_appconfig.HostedConfigurationOptions",
6460
6540
  jsii_struct_bases=[ConfigurationOptions],
6461
6541
  name_mapping={
6542
+ "deletion_protection_check": "deletionProtectionCheck",
6462
6543
  "deployment_key": "deploymentKey",
6463
6544
  "deployment_strategy": "deploymentStrategy",
6464
6545
  "deploy_to": "deployTo",
@@ -6475,6 +6556,7 @@ class HostedConfigurationOptions(ConfigurationOptions):
6475
6556
  def __init__(
6476
6557
  self,
6477
6558
  *,
6559
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
6478
6560
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
6479
6561
  deployment_strategy: typing.Optional["IDeploymentStrategy"] = None,
6480
6562
  deploy_to: typing.Optional[typing.Sequence["IEnvironment"]] = None,
@@ -6488,6 +6570,7 @@ class HostedConfigurationOptions(ConfigurationOptions):
6488
6570
  ) -> None:
6489
6571
  '''Options for HostedConfiguration.
6490
6572
 
6573
+ :param deletion_protection_check: A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval. Default: DeletionProtectionCheck.ACCOUNT_DEFAULT
6491
6574
  :param deployment_key: The deployment key of the configuration. Default: - None.
6492
6575
  :param deployment_strategy: The deployment strategy for the configuration. Default: - A deployment strategy with the rollout strategy set to RolloutStrategy.CANARY_10_PERCENT_20_MINUTES
6493
6576
  :param deploy_to: The list of environments to deploy the configuration to. If this parameter is not specified, then there will be no deployment created alongside this configuration. Deployments can be added later using the ``IEnvironment.addDeployment`` or ``IEnvironment.addDeployments`` methods. Default: - None.
@@ -6518,6 +6601,7 @@ class HostedConfigurationOptions(ConfigurationOptions):
6518
6601
  content=configuration_content,
6519
6602
 
6520
6603
  # the properties below are optional
6604
+ deletion_protection_check=appconfig.DeletionProtectionCheck.ACCOUNT_DEFAULT,
6521
6605
  deployment_key=key,
6522
6606
  deployment_strategy=deployment_strategy,
6523
6607
  deploy_to=[environment],
@@ -6531,6 +6615,7 @@ class HostedConfigurationOptions(ConfigurationOptions):
6531
6615
  '''
6532
6616
  if __debug__:
6533
6617
  type_hints = typing.get_type_hints(_typecheckingstub__4c4d8fda2e4860630073eda40d5a32347248e82c24127624ef93e735b071da8f)
6618
+ check_type(argname="argument deletion_protection_check", value=deletion_protection_check, expected_type=type_hints["deletion_protection_check"])
6534
6619
  check_type(argname="argument deployment_key", value=deployment_key, expected_type=type_hints["deployment_key"])
6535
6620
  check_type(argname="argument deployment_strategy", value=deployment_strategy, expected_type=type_hints["deployment_strategy"])
6536
6621
  check_type(argname="argument deploy_to", value=deploy_to, expected_type=type_hints["deploy_to"])
@@ -6544,6 +6629,8 @@ class HostedConfigurationOptions(ConfigurationOptions):
6544
6629
  self._values: typing.Dict[builtins.str, typing.Any] = {
6545
6630
  "content": content,
6546
6631
  }
6632
+ if deletion_protection_check is not None:
6633
+ self._values["deletion_protection_check"] = deletion_protection_check
6547
6634
  if deployment_key is not None:
6548
6635
  self._values["deployment_key"] = deployment_key
6549
6636
  if deployment_strategy is not None:
@@ -6563,6 +6650,20 @@ class HostedConfigurationOptions(ConfigurationOptions):
6563
6650
  if version_label is not None:
6564
6651
  self._values["version_label"] = version_label
6565
6652
 
6653
+ @builtins.property
6654
+ def deletion_protection_check(self) -> typing.Optional[DeletionProtectionCheck]:
6655
+ '''A parameter to configure deletion protection.
6656
+
6657
+ Deletion protection prevents a user from deleting a configuration profile if your application has called
6658
+ either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval.
6659
+
6660
+ :default: DeletionProtectionCheck.ACCOUNT_DEFAULT
6661
+
6662
+ :see: https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html
6663
+ '''
6664
+ result = self._values.get("deletion_protection_check")
6665
+ return typing.cast(typing.Optional[DeletionProtectionCheck], result)
6666
+
6566
6667
  @builtins.property
6567
6668
  def deployment_key(self) -> typing.Optional[_IKey_5f11635f]:
6568
6669
  '''The deployment key of the configuration.
@@ -6676,6 +6777,7 @@ class HostedConfigurationOptions(ConfigurationOptions):
6676
6777
  jsii_type="aws-cdk-lib.aws_appconfig.HostedConfigurationProps",
6677
6778
  jsii_struct_bases=[ConfigurationProps],
6678
6779
  name_mapping={
6780
+ "deletion_protection_check": "deletionProtectionCheck",
6679
6781
  "deployment_key": "deploymentKey",
6680
6782
  "deployment_strategy": "deploymentStrategy",
6681
6783
  "deploy_to": "deployTo",
@@ -6693,6 +6795,7 @@ class HostedConfigurationProps(ConfigurationProps):
6693
6795
  def __init__(
6694
6796
  self,
6695
6797
  *,
6798
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
6696
6799
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
6697
6800
  deployment_strategy: typing.Optional["IDeploymentStrategy"] = None,
6698
6801
  deploy_to: typing.Optional[typing.Sequence["IEnvironment"]] = None,
@@ -6707,6 +6810,7 @@ class HostedConfigurationProps(ConfigurationProps):
6707
6810
  ) -> None:
6708
6811
  '''Properties for HostedConfiguration.
6709
6812
 
6813
+ :param deletion_protection_check: A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval. Default: DeletionProtectionCheck.ACCOUNT_DEFAULT
6710
6814
  :param deployment_key: The deployment key of the configuration. Default: - None.
6711
6815
  :param deployment_strategy: The deployment strategy for the configuration. Default: - A deployment strategy with the rollout strategy set to RolloutStrategy.CANARY_10_PERCENT_20_MINUTES
6712
6816
  :param deploy_to: The list of environments to deploy the configuration to. If this parameter is not specified, then there will be no deployment created alongside this configuration. Deployments can be added later using the ``IEnvironment.addDeployment`` or ``IEnvironment.addDeployments`` methods. Default: - None.
@@ -6723,19 +6827,22 @@ class HostedConfigurationProps(ConfigurationProps):
6723
6827
 
6724
6828
  Example::
6725
6829
 
6726
- app = appconfig.Application(self, "MyApp")
6727
- env = appconfig.Environment(self, "MyEnv",
6728
- application=app
6729
- )
6830
+ # application: appconfig.Application
6831
+ # fn: lambda.Function
6730
6832
 
6731
- appconfig.HostedConfiguration(self, "MyHostedConfig",
6732
- application=app,
6733
- deploy_to=[env],
6734
- content=appconfig.ConfigurationContent.from_inline_text("This is my configuration content.")
6833
+
6834
+ appconfig.HostedConfiguration(self, "MyHostedConfiguration",
6835
+ application=application,
6836
+ content=appconfig.ConfigurationContent.from_inline_text("This is my configuration content."),
6837
+ validators=[
6838
+ appconfig.JsonSchemaValidator.from_file("schema.json"),
6839
+ appconfig.LambdaValidator.from_function(fn)
6840
+ ]
6735
6841
  )
6736
6842
  '''
6737
6843
  if __debug__:
6738
6844
  type_hints = typing.get_type_hints(_typecheckingstub__7cba9d5464f3f4cbc208d892995245e5078fc2cc794651c71942035a9b151b2e)
6845
+ check_type(argname="argument deletion_protection_check", value=deletion_protection_check, expected_type=type_hints["deletion_protection_check"])
6739
6846
  check_type(argname="argument deployment_key", value=deployment_key, expected_type=type_hints["deployment_key"])
6740
6847
  check_type(argname="argument deployment_strategy", value=deployment_strategy, expected_type=type_hints["deployment_strategy"])
6741
6848
  check_type(argname="argument deploy_to", value=deploy_to, expected_type=type_hints["deploy_to"])
@@ -6751,6 +6858,8 @@ class HostedConfigurationProps(ConfigurationProps):
6751
6858
  "application": application,
6752
6859
  "content": content,
6753
6860
  }
6861
+ if deletion_protection_check is not None:
6862
+ self._values["deletion_protection_check"] = deletion_protection_check
6754
6863
  if deployment_key is not None:
6755
6864
  self._values["deployment_key"] = deployment_key
6756
6865
  if deployment_strategy is not None:
@@ -6770,6 +6879,20 @@ class HostedConfigurationProps(ConfigurationProps):
6770
6879
  if version_label is not None:
6771
6880
  self._values["version_label"] = version_label
6772
6881
 
6882
+ @builtins.property
6883
+ def deletion_protection_check(self) -> typing.Optional[DeletionProtectionCheck]:
6884
+ '''A parameter to configure deletion protection.
6885
+
6886
+ Deletion protection prevents a user from deleting a configuration profile if your application has called
6887
+ either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval.
6888
+
6889
+ :default: DeletionProtectionCheck.ACCOUNT_DEFAULT
6890
+
6891
+ :see: https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html
6892
+ '''
6893
+ result = self._values.get("deletion_protection_check")
6894
+ return typing.cast(typing.Optional[DeletionProtectionCheck], result)
6895
+
6773
6896
  @builtins.property
6774
6897
  def deployment_key(self) -> typing.Optional[_IKey_5f11635f]:
6775
6898
  '''The deployment key of the configuration.
@@ -6962,6 +7085,7 @@ class IApplication(_IResource_c80c4260, typing_extensions.Protocol):
6962
7085
  content: ConfigurationContent,
6963
7086
  latest_version_number: typing.Optional[jsii.Number] = None,
6964
7087
  version_label: typing.Optional[builtins.str] = None,
7088
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
6965
7089
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
6966
7090
  deployment_strategy: typing.Optional["IDeploymentStrategy"] = None,
6967
7091
  deploy_to: typing.Optional[typing.Sequence["IEnvironment"]] = None,
@@ -6976,6 +7100,7 @@ class IApplication(_IResource_c80c4260, typing_extensions.Protocol):
6976
7100
  :param content: The content of the hosted configuration.
6977
7101
  :param latest_version_number: The latest version number of the hosted configuration. Default: - None.
6978
7102
  :param version_label: The version label of the hosted configuration. Default: - None.
7103
+ :param deletion_protection_check: A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval. Default: DeletionProtectionCheck.ACCOUNT_DEFAULT
6979
7104
  :param deployment_key: The deployment key of the configuration. Default: - None.
6980
7105
  :param deployment_strategy: The deployment strategy for the configuration. Default: - A deployment strategy with the rollout strategy set to RolloutStrategy.CANARY_10_PERCENT_20_MINUTES
6981
7106
  :param deploy_to: The list of environments to deploy the configuration to. If this parameter is not specified, then there will be no deployment created alongside this configuration. Deployments can be added later using the ``IEnvironment.addDeployment`` or ``IEnvironment.addDeployments`` methods. Default: - None.
@@ -6994,6 +7119,7 @@ class IApplication(_IResource_c80c4260, typing_extensions.Protocol):
6994
7119
  location: ConfigurationSource,
6995
7120
  retrieval_role: typing.Optional[_IRole_235f5d8e] = None,
6996
7121
  version_number: typing.Optional[builtins.str] = None,
7122
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
6997
7123
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
6998
7124
  deployment_strategy: typing.Optional["IDeploymentStrategy"] = None,
6999
7125
  deploy_to: typing.Optional[typing.Sequence["IEnvironment"]] = None,
@@ -7008,6 +7134,7 @@ class IApplication(_IResource_c80c4260, typing_extensions.Protocol):
7008
7134
  :param location: The location where the configuration is stored.
7009
7135
  :param retrieval_role: The IAM role to retrieve the configuration. Default: - A role is generated.
7010
7136
  :param version_number: The version number of the sourced configuration to deploy. If this is not specified, then there will be no deployment. Default: - None.
7137
+ :param deletion_protection_check: A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval. Default: DeletionProtectionCheck.ACCOUNT_DEFAULT
7011
7138
  :param deployment_key: The deployment key of the configuration. Default: - None.
7012
7139
  :param deployment_strategy: The deployment strategy for the configuration. Default: - A deployment strategy with the rollout strategy set to RolloutStrategy.CANARY_10_PERCENT_20_MINUTES
7013
7140
  :param deploy_to: The list of environments to deploy the configuration to. If this parameter is not specified, then there will be no deployment created alongside this configuration. Deployments can be added later using the ``IEnvironment.addDeployment`` or ``IEnvironment.addDeployments`` methods. Default: - None.
@@ -7301,6 +7428,7 @@ class _IApplicationProxy(
7301
7428
  content: ConfigurationContent,
7302
7429
  latest_version_number: typing.Optional[jsii.Number] = None,
7303
7430
  version_label: typing.Optional[builtins.str] = None,
7431
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
7304
7432
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
7305
7433
  deployment_strategy: typing.Optional["IDeploymentStrategy"] = None,
7306
7434
  deploy_to: typing.Optional[typing.Sequence["IEnvironment"]] = None,
@@ -7315,6 +7443,7 @@ class _IApplicationProxy(
7315
7443
  :param content: The content of the hosted configuration.
7316
7444
  :param latest_version_number: The latest version number of the hosted configuration. Default: - None.
7317
7445
  :param version_label: The version label of the hosted configuration. Default: - None.
7446
+ :param deletion_protection_check: A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval. Default: DeletionProtectionCheck.ACCOUNT_DEFAULT
7318
7447
  :param deployment_key: The deployment key of the configuration. Default: - None.
7319
7448
  :param deployment_strategy: The deployment strategy for the configuration. Default: - A deployment strategy with the rollout strategy set to RolloutStrategy.CANARY_10_PERCENT_20_MINUTES
7320
7449
  :param deploy_to: The list of environments to deploy the configuration to. If this parameter is not specified, then there will be no deployment created alongside this configuration. Deployments can be added later using the ``IEnvironment.addDeployment`` or ``IEnvironment.addDeployments`` methods. Default: - None.
@@ -7330,6 +7459,7 @@ class _IApplicationProxy(
7330
7459
  content=content,
7331
7460
  latest_version_number=latest_version_number,
7332
7461
  version_label=version_label,
7462
+ deletion_protection_check=deletion_protection_check,
7333
7463
  deployment_key=deployment_key,
7334
7464
  deployment_strategy=deployment_strategy,
7335
7465
  deploy_to=deploy_to,
@@ -7349,6 +7479,7 @@ class _IApplicationProxy(
7349
7479
  location: ConfigurationSource,
7350
7480
  retrieval_role: typing.Optional[_IRole_235f5d8e] = None,
7351
7481
  version_number: typing.Optional[builtins.str] = None,
7482
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
7352
7483
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
7353
7484
  deployment_strategy: typing.Optional["IDeploymentStrategy"] = None,
7354
7485
  deploy_to: typing.Optional[typing.Sequence["IEnvironment"]] = None,
@@ -7363,6 +7494,7 @@ class _IApplicationProxy(
7363
7494
  :param location: The location where the configuration is stored.
7364
7495
  :param retrieval_role: The IAM role to retrieve the configuration. Default: - A role is generated.
7365
7496
  :param version_number: The version number of the sourced configuration to deploy. If this is not specified, then there will be no deployment. Default: - None.
7497
+ :param deletion_protection_check: A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval. Default: DeletionProtectionCheck.ACCOUNT_DEFAULT
7366
7498
  :param deployment_key: The deployment key of the configuration. Default: - None.
7367
7499
  :param deployment_strategy: The deployment strategy for the configuration. Default: - A deployment strategy with the rollout strategy set to RolloutStrategy.CANARY_10_PERCENT_20_MINUTES
7368
7500
  :param deploy_to: The list of environments to deploy the configuration to. If this parameter is not specified, then there will be no deployment created alongside this configuration. Deployments can be added later using the ``IEnvironment.addDeployment`` or ``IEnvironment.addDeployments`` methods. Default: - None.
@@ -7378,6 +7510,7 @@ class _IApplicationProxy(
7378
7510
  location=location,
7379
7511
  retrieval_role=retrieval_role,
7380
7512
  version_number=version_number,
7513
+ deletion_protection_check=deletion_protection_check,
7381
7514
  deployment_key=deployment_key,
7382
7515
  deployment_strategy=deployment_strategy,
7383
7516
  deploy_to=deploy_to,
@@ -10123,6 +10256,7 @@ class SourcedConfiguration(
10123
10256
  retrieval_role: typing.Optional[_IRole_235f5d8e] = None,
10124
10257
  version_number: typing.Optional[builtins.str] = None,
10125
10258
  application: IApplication,
10259
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
10126
10260
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
10127
10261
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
10128
10262
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -10138,6 +10272,7 @@ class SourcedConfiguration(
10138
10272
  :param retrieval_role: The IAM role to retrieve the configuration. Default: - Auto generated if location type is not ConfigurationSourceType.CODE_PIPELINE otherwise no role specified.
10139
10273
  :param version_number: The version number of the sourced configuration to deploy. If this is not specified, then there will be no deployment. Default: - None.
10140
10274
  :param application: The application associated with the configuration.
10275
+ :param deletion_protection_check: A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval. Default: DeletionProtectionCheck.ACCOUNT_DEFAULT
10141
10276
  :param deployment_key: The deployment key of the configuration. Default: - None.
10142
10277
  :param deployment_strategy: The deployment strategy for the configuration. Default: - A deployment strategy with the rollout strategy set to RolloutStrategy.CANARY_10_PERCENT_20_MINUTES
10143
10278
  :param deploy_to: The list of environments to deploy the configuration to. If this parameter is not specified, then there will be no deployment created alongside this configuration. Deployments can be added later using the ``IEnvironment.addDeployment`` or ``IEnvironment.addDeployments`` methods. Default: - None.
@@ -10155,6 +10290,7 @@ class SourcedConfiguration(
10155
10290
  retrieval_role=retrieval_role,
10156
10291
  version_number=version_number,
10157
10292
  application=application,
10293
+ deletion_protection_check=deletion_protection_check,
10158
10294
  deployment_key=deployment_key,
10159
10295
  deployment_strategy=deployment_strategy,
10160
10296
  deploy_to=deploy_to,
@@ -10571,11 +10707,27 @@ class SourcedConfiguration(
10571
10707
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
10572
10708
  jsii.set(self, "extensible", value) # pyright: ignore[reportArgumentType]
10573
10709
 
10710
+ @builtins.property
10711
+ @jsii.member(jsii_name="deletionProtectionCheck")
10712
+ def _deletion_protection_check(self) -> typing.Optional[DeletionProtectionCheck]:
10713
+ return typing.cast(typing.Optional[DeletionProtectionCheck], jsii.get(self, "deletionProtectionCheck"))
10714
+
10715
+ @_deletion_protection_check.setter
10716
+ def _deletion_protection_check(
10717
+ self,
10718
+ value: typing.Optional[DeletionProtectionCheck],
10719
+ ) -> None:
10720
+ if __debug__:
10721
+ type_hints = typing.get_type_hints(_typecheckingstub__ff7730984215a53f88ccb3e1915941985bedc75f6b24a06eae12d583d8f4bca9)
10722
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
10723
+ jsii.set(self, "deletionProtectionCheck", value) # pyright: ignore[reportArgumentType]
10724
+
10574
10725
 
10575
10726
  @jsii.data_type(
10576
10727
  jsii_type="aws-cdk-lib.aws_appconfig.SourcedConfigurationOptions",
10577
10728
  jsii_struct_bases=[ConfigurationOptions],
10578
10729
  name_mapping={
10730
+ "deletion_protection_check": "deletionProtectionCheck",
10579
10731
  "deployment_key": "deploymentKey",
10580
10732
  "deployment_strategy": "deploymentStrategy",
10581
10733
  "deploy_to": "deployTo",
@@ -10592,6 +10744,7 @@ class SourcedConfigurationOptions(ConfigurationOptions):
10592
10744
  def __init__(
10593
10745
  self,
10594
10746
  *,
10747
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
10595
10748
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
10596
10749
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
10597
10750
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -10605,6 +10758,7 @@ class SourcedConfigurationOptions(ConfigurationOptions):
10605
10758
  ) -> None:
10606
10759
  '''Options for SourcedConfiguration.
10607
10760
 
10761
+ :param deletion_protection_check: A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval. Default: DeletionProtectionCheck.ACCOUNT_DEFAULT
10608
10762
  :param deployment_key: The deployment key of the configuration. Default: - None.
10609
10763
  :param deployment_strategy: The deployment strategy for the configuration. Default: - A deployment strategy with the rollout strategy set to RolloutStrategy.CANARY_10_PERCENT_20_MINUTES
10610
10764
  :param deploy_to: The list of environments to deploy the configuration to. If this parameter is not specified, then there will be no deployment created alongside this configuration. Deployments can be added later using the ``IEnvironment.addDeployment`` or ``IEnvironment.addDeployments`` methods. Default: - None.
@@ -10637,6 +10791,7 @@ class SourcedConfigurationOptions(ConfigurationOptions):
10637
10791
  location=configuration_source,
10638
10792
 
10639
10793
  # the properties below are optional
10794
+ deletion_protection_check=appconfig.DeletionProtectionCheck.ACCOUNT_DEFAULT,
10640
10795
  deployment_key=key,
10641
10796
  deployment_strategy=deployment_strategy,
10642
10797
  deploy_to=[environment],
@@ -10650,6 +10805,7 @@ class SourcedConfigurationOptions(ConfigurationOptions):
10650
10805
  '''
10651
10806
  if __debug__:
10652
10807
  type_hints = typing.get_type_hints(_typecheckingstub__115deabe7a02ce295c431e7d9a99bcbe112bc017436380d80181c5db491187a1)
10808
+ check_type(argname="argument deletion_protection_check", value=deletion_protection_check, expected_type=type_hints["deletion_protection_check"])
10653
10809
  check_type(argname="argument deployment_key", value=deployment_key, expected_type=type_hints["deployment_key"])
10654
10810
  check_type(argname="argument deployment_strategy", value=deployment_strategy, expected_type=type_hints["deployment_strategy"])
10655
10811
  check_type(argname="argument deploy_to", value=deploy_to, expected_type=type_hints["deploy_to"])
@@ -10663,6 +10819,8 @@ class SourcedConfigurationOptions(ConfigurationOptions):
10663
10819
  self._values: typing.Dict[builtins.str, typing.Any] = {
10664
10820
  "location": location,
10665
10821
  }
10822
+ if deletion_protection_check is not None:
10823
+ self._values["deletion_protection_check"] = deletion_protection_check
10666
10824
  if deployment_key is not None:
10667
10825
  self._values["deployment_key"] = deployment_key
10668
10826
  if deployment_strategy is not None:
@@ -10682,6 +10840,20 @@ class SourcedConfigurationOptions(ConfigurationOptions):
10682
10840
  if version_number is not None:
10683
10841
  self._values["version_number"] = version_number
10684
10842
 
10843
+ @builtins.property
10844
+ def deletion_protection_check(self) -> typing.Optional[DeletionProtectionCheck]:
10845
+ '''A parameter to configure deletion protection.
10846
+
10847
+ Deletion protection prevents a user from deleting a configuration profile if your application has called
10848
+ either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval.
10849
+
10850
+ :default: DeletionProtectionCheck.ACCOUNT_DEFAULT
10851
+
10852
+ :see: https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html
10853
+ '''
10854
+ result = self._values.get("deletion_protection_check")
10855
+ return typing.cast(typing.Optional[DeletionProtectionCheck], result)
10856
+
10685
10857
  @builtins.property
10686
10858
  def deployment_key(self) -> typing.Optional[_IKey_5f11635f]:
10687
10859
  '''The deployment key of the configuration.
@@ -10798,6 +10970,7 @@ class SourcedConfigurationOptions(ConfigurationOptions):
10798
10970
  jsii_type="aws-cdk-lib.aws_appconfig.SourcedConfigurationProps",
10799
10971
  jsii_struct_bases=[ConfigurationProps],
10800
10972
  name_mapping={
10973
+ "deletion_protection_check": "deletionProtectionCheck",
10801
10974
  "deployment_key": "deploymentKey",
10802
10975
  "deployment_strategy": "deploymentStrategy",
10803
10976
  "deploy_to": "deployTo",
@@ -10815,6 +10988,7 @@ class SourcedConfigurationProps(ConfigurationProps):
10815
10988
  def __init__(
10816
10989
  self,
10817
10990
  *,
10991
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
10818
10992
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
10819
10993
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
10820
10994
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -10829,6 +11003,7 @@ class SourcedConfigurationProps(ConfigurationProps):
10829
11003
  ) -> None:
10830
11004
  '''Properties for SourcedConfiguration.
10831
11005
 
11006
+ :param deletion_protection_check: A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval. Default: DeletionProtectionCheck.ACCOUNT_DEFAULT
10832
11007
  :param deployment_key: The deployment key of the configuration. Default: - None.
10833
11008
  :param deployment_strategy: The deployment strategy for the configuration. Default: - A deployment strategy with the rollout strategy set to RolloutStrategy.CANARY_10_PERCENT_20_MINUTES
10834
11009
  :param deploy_to: The list of environments to deploy the configuration to. If this parameter is not specified, then there will be no deployment created alongside this configuration. Deployments can be added later using the ``IEnvironment.addDeployment`` or ``IEnvironment.addDeployments`` methods. Default: - None.
@@ -10859,6 +11034,7 @@ class SourcedConfigurationProps(ConfigurationProps):
10859
11034
  '''
10860
11035
  if __debug__:
10861
11036
  type_hints = typing.get_type_hints(_typecheckingstub__d41101d1b0f699a52d44a2b86fe3e9dcd0e6f1487f088908464eb49cb3e5e12c)
11037
+ check_type(argname="argument deletion_protection_check", value=deletion_protection_check, expected_type=type_hints["deletion_protection_check"])
10862
11038
  check_type(argname="argument deployment_key", value=deployment_key, expected_type=type_hints["deployment_key"])
10863
11039
  check_type(argname="argument deployment_strategy", value=deployment_strategy, expected_type=type_hints["deployment_strategy"])
10864
11040
  check_type(argname="argument deploy_to", value=deploy_to, expected_type=type_hints["deploy_to"])
@@ -10874,6 +11050,8 @@ class SourcedConfigurationProps(ConfigurationProps):
10874
11050
  "application": application,
10875
11051
  "location": location,
10876
11052
  }
11053
+ if deletion_protection_check is not None:
11054
+ self._values["deletion_protection_check"] = deletion_protection_check
10877
11055
  if deployment_key is not None:
10878
11056
  self._values["deployment_key"] = deployment_key
10879
11057
  if deployment_strategy is not None:
@@ -10893,6 +11071,20 @@ class SourcedConfigurationProps(ConfigurationProps):
10893
11071
  if version_number is not None:
10894
11072
  self._values["version_number"] = version_number
10895
11073
 
11074
+ @builtins.property
11075
+ def deletion_protection_check(self) -> typing.Optional[DeletionProtectionCheck]:
11076
+ '''A parameter to configure deletion protection.
11077
+
11078
+ Deletion protection prevents a user from deleting a configuration profile if your application has called
11079
+ either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval.
11080
+
11081
+ :default: DeletionProtectionCheck.ACCOUNT_DEFAULT
11082
+
11083
+ :see: https://docs.aws.amazon.com/appconfig/latest/userguide/deletion-protection.html
11084
+ '''
11085
+ result = self._values.get("deletion_protection_check")
11086
+ return typing.cast(typing.Optional[DeletionProtectionCheck], result)
11087
+
10896
11088
  @builtins.property
10897
11089
  def deployment_key(self) -> typing.Optional[_IKey_5f11635f]:
10898
11090
  '''The deployment key of the configuration.
@@ -11258,6 +11450,7 @@ class Application(
11258
11450
  content: ConfigurationContent,
11259
11451
  latest_version_number: typing.Optional[jsii.Number] = None,
11260
11452
  version_label: typing.Optional[builtins.str] = None,
11453
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
11261
11454
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
11262
11455
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
11263
11456
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -11272,6 +11465,7 @@ class Application(
11272
11465
  :param content: The content of the hosted configuration.
11273
11466
  :param latest_version_number: The latest version number of the hosted configuration. Default: - None.
11274
11467
  :param version_label: The version label of the hosted configuration. Default: - None.
11468
+ :param deletion_protection_check: A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval. Default: DeletionProtectionCheck.ACCOUNT_DEFAULT
11275
11469
  :param deployment_key: The deployment key of the configuration. Default: - None.
11276
11470
  :param deployment_strategy: The deployment strategy for the configuration. Default: - A deployment strategy with the rollout strategy set to RolloutStrategy.CANARY_10_PERCENT_20_MINUTES
11277
11471
  :param deploy_to: The list of environments to deploy the configuration to. If this parameter is not specified, then there will be no deployment created alongside this configuration. Deployments can be added later using the ``IEnvironment.addDeployment`` or ``IEnvironment.addDeployments`` methods. Default: - None.
@@ -11287,6 +11481,7 @@ class Application(
11287
11481
  content=content,
11288
11482
  latest_version_number=latest_version_number,
11289
11483
  version_label=version_label,
11484
+ deletion_protection_check=deletion_protection_check,
11290
11485
  deployment_key=deployment_key,
11291
11486
  deployment_strategy=deployment_strategy,
11292
11487
  deploy_to=deploy_to,
@@ -11306,6 +11501,7 @@ class Application(
11306
11501
  location: ConfigurationSource,
11307
11502
  retrieval_role: typing.Optional[_IRole_235f5d8e] = None,
11308
11503
  version_number: typing.Optional[builtins.str] = None,
11504
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
11309
11505
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
11310
11506
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
11311
11507
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -11320,6 +11516,7 @@ class Application(
11320
11516
  :param location: The location where the configuration is stored.
11321
11517
  :param retrieval_role: The IAM role to retrieve the configuration. Default: - A role is generated.
11322
11518
  :param version_number: The version number of the sourced configuration to deploy. If this is not specified, then there will be no deployment. Default: - None.
11519
+ :param deletion_protection_check: A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval. Default: DeletionProtectionCheck.ACCOUNT_DEFAULT
11323
11520
  :param deployment_key: The deployment key of the configuration. Default: - None.
11324
11521
  :param deployment_strategy: The deployment strategy for the configuration. Default: - A deployment strategy with the rollout strategy set to RolloutStrategy.CANARY_10_PERCENT_20_MINUTES
11325
11522
  :param deploy_to: The list of environments to deploy the configuration to. If this parameter is not specified, then there will be no deployment created alongside this configuration. Deployments can be added later using the ``IEnvironment.addDeployment`` or ``IEnvironment.addDeployments`` methods. Default: - None.
@@ -11335,6 +11532,7 @@ class Application(
11335
11532
  location=location,
11336
11533
  retrieval_role=retrieval_role,
11337
11534
  version_number=version_number,
11535
+ deletion_protection_check=deletion_protection_check,
11338
11536
  deployment_key=deployment_key,
11339
11537
  deployment_strategy=deployment_strategy,
11340
11538
  deploy_to=deploy_to,
@@ -11843,10 +12041,16 @@ class Environment(
11843
12041
  application=app
11844
12042
  )
11845
12043
 
11846
- appconfig.HostedConfiguration(self, "MyHostedConfig",
12044
+ appconfig.HostedConfiguration(self, "MyFirstHostedConfig",
11847
12045
  application=app,
11848
12046
  deploy_to=[env],
11849
- content=appconfig.ConfigurationContent.from_inline_text("This is my configuration content.")
12047
+ content=appconfig.ConfigurationContent.from_inline_text("This is my first configuration content.")
12048
+ )
12049
+
12050
+ appconfig.HostedConfiguration(self, "MySecondHostedConfig",
12051
+ application=app,
12052
+ deploy_to=[env],
12053
+ content=appconfig.ConfigurationContent.from_inline_text("This is my second configuration content.")
11850
12054
  )
11851
12055
  '''
11852
12056
 
@@ -12932,15 +13136,17 @@ class HostedConfiguration(
12932
13136
 
12933
13137
  Example::
12934
13138
 
12935
- app = appconfig.Application(self, "MyApp")
12936
- env = appconfig.Environment(self, "MyEnv",
12937
- application=app
12938
- )
13139
+ # application: appconfig.Application
13140
+ # fn: lambda.Function
12939
13141
 
12940
- appconfig.HostedConfiguration(self, "MyHostedConfig",
12941
- application=app,
12942
- deploy_to=[env],
12943
- content=appconfig.ConfigurationContent.from_inline_text("This is my configuration content.")
13142
+
13143
+ appconfig.HostedConfiguration(self, "MyHostedConfiguration",
13144
+ application=application,
13145
+ content=appconfig.ConfigurationContent.from_inline_text("This is my configuration content."),
13146
+ validators=[
13147
+ appconfig.JsonSchemaValidator.from_file("schema.json"),
13148
+ appconfig.LambdaValidator.from_function(fn)
13149
+ ]
12944
13150
  )
12945
13151
  '''
12946
13152
 
@@ -12953,6 +13159,7 @@ class HostedConfiguration(
12953
13159
  latest_version_number: typing.Optional[jsii.Number] = None,
12954
13160
  version_label: typing.Optional[builtins.str] = None,
12955
13161
  application: IApplication,
13162
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
12956
13163
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
12957
13164
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
12958
13165
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -12968,6 +13175,7 @@ class HostedConfiguration(
12968
13175
  :param latest_version_number: The latest version number of the hosted configuration. Default: - None.
12969
13176
  :param version_label: The version label of the hosted configuration. Default: - None.
12970
13177
  :param application: The application associated with the configuration.
13178
+ :param deletion_protection_check: A parameter to configure deletion protection. Deletion protection prevents a user from deleting a configuration profile if your application has called either ``GetLatestConfiguration`` or ``GetConfiguration`` for the configuration profile during the specified interval. Default: DeletionProtectionCheck.ACCOUNT_DEFAULT
12971
13179
  :param deployment_key: The deployment key of the configuration. Default: - None.
12972
13180
  :param deployment_strategy: The deployment strategy for the configuration. Default: - A deployment strategy with the rollout strategy set to RolloutStrategy.CANARY_10_PERCENT_20_MINUTES
12973
13181
  :param deploy_to: The list of environments to deploy the configuration to. If this parameter is not specified, then there will be no deployment created alongside this configuration. Deployments can be added later using the ``IEnvironment.addDeployment`` or ``IEnvironment.addDeployments`` methods. Default: - None.
@@ -12985,6 +13193,7 @@ class HostedConfiguration(
12985
13193
  latest_version_number=latest_version_number,
12986
13194
  version_label=version_label,
12987
13195
  application=application,
13196
+ deletion_protection_check=deletion_protection_check,
12988
13197
  deployment_key=deployment_key,
12989
13198
  deployment_strategy=deployment_strategy,
12990
13199
  deploy_to=deploy_to,
@@ -13408,6 +13617,21 @@ class HostedConfiguration(
13408
13617
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
13409
13618
  jsii.set(self, "extensible", value) # pyright: ignore[reportArgumentType]
13410
13619
 
13620
+ @builtins.property
13621
+ @jsii.member(jsii_name="deletionProtectionCheck")
13622
+ def _deletion_protection_check(self) -> typing.Optional[DeletionProtectionCheck]:
13623
+ return typing.cast(typing.Optional[DeletionProtectionCheck], jsii.get(self, "deletionProtectionCheck"))
13624
+
13625
+ @_deletion_protection_check.setter
13626
+ def _deletion_protection_check(
13627
+ self,
13628
+ value: typing.Optional[DeletionProtectionCheck],
13629
+ ) -> None:
13630
+ if __debug__:
13631
+ type_hints = typing.get_type_hints(_typecheckingstub__0a1e6913f9293558fa6d2222b6d11c3af6b25866b966dd6319551117306cf272)
13632
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
13633
+ jsii.set(self, "deletionProtectionCheck", value) # pyright: ignore[reportArgumentType]
13634
+
13411
13635
 
13412
13636
  __all__ = [
13413
13637
  "Action",
@@ -14230,6 +14454,7 @@ def _typecheckingstub__af127c28dd1d72bacc88a31e7606c4f0729ead8629d2aa39eca948c88
14230
14454
 
14231
14455
  def _typecheckingstub__7d8aafff2e2f314c1c4bef6e213f0aaef56ff294051b33fee835ad5716a7e093(
14232
14456
  *,
14457
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
14233
14458
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
14234
14459
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
14235
14460
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -14243,6 +14468,7 @@ def _typecheckingstub__7d8aafff2e2f314c1c4bef6e213f0aaef56ff294051b33fee835ad571
14243
14468
 
14244
14469
  def _typecheckingstub__fde28a86ff967e860849eabd5d00b00f1f841ba2ded09e00655f2b7d433ef121(
14245
14470
  *,
14471
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
14246
14472
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
14247
14473
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
14248
14474
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -14370,6 +14596,7 @@ def _typecheckingstub__003bfe5f4d042a69eceddde85ccfcfdb2e64aaea78e28426808804379
14370
14596
 
14371
14597
  def _typecheckingstub__4c4d8fda2e4860630073eda40d5a32347248e82c24127624ef93e735b071da8f(
14372
14598
  *,
14599
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
14373
14600
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
14374
14601
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
14375
14602
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -14386,6 +14613,7 @@ def _typecheckingstub__4c4d8fda2e4860630073eda40d5a32347248e82c24127624ef93e735b
14386
14613
 
14387
14614
  def _typecheckingstub__7cba9d5464f3f4cbc208d892995245e5078fc2cc794651c71942035a9b151b2e(
14388
14615
  *,
14616
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
14389
14617
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
14390
14618
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
14391
14619
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -14430,6 +14658,7 @@ def _typecheckingstub__3bd9df804b6975de3426c197a45965f129649a986f5cd9a03f0a4ee6f
14430
14658
  content: ConfigurationContent,
14431
14659
  latest_version_number: typing.Optional[jsii.Number] = None,
14432
14660
  version_label: typing.Optional[builtins.str] = None,
14661
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
14433
14662
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
14434
14663
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
14435
14664
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -14447,6 +14676,7 @@ def _typecheckingstub__652068ebd01467de1bc3159a4c8fef165c1053fe6662fcbb6e0b8cb9f
14447
14676
  location: ConfigurationSource,
14448
14677
  retrieval_role: typing.Optional[_IRole_235f5d8e] = None,
14449
14678
  version_number: typing.Optional[builtins.str] = None,
14679
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
14450
14680
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
14451
14681
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
14452
14682
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -14865,6 +15095,7 @@ def _typecheckingstub__61200a738f2584e5d86190492c99ded9cebb5cc41d230eec1c74f7130
14865
15095
  retrieval_role: typing.Optional[_IRole_235f5d8e] = None,
14866
15096
  version_number: typing.Optional[builtins.str] = None,
14867
15097
  application: IApplication,
15098
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
14868
15099
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
14869
15100
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
14870
15101
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -14994,8 +15225,15 @@ def _typecheckingstub__af782e66a589643c3273915140536d8c7931cca7f2adf6a0fc45e67b9
14994
15225
  """Type checking stubs"""
14995
15226
  pass
14996
15227
 
15228
+ def _typecheckingstub__ff7730984215a53f88ccb3e1915941985bedc75f6b24a06eae12d583d8f4bca9(
15229
+ value: typing.Optional[DeletionProtectionCheck],
15230
+ ) -> None:
15231
+ """Type checking stubs"""
15232
+ pass
15233
+
14997
15234
  def _typecheckingstub__115deabe7a02ce295c431e7d9a99bcbe112bc017436380d80181c5db491187a1(
14998
15235
  *,
15236
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
14999
15237
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
15000
15238
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
15001
15239
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -15012,6 +15250,7 @@ def _typecheckingstub__115deabe7a02ce295c431e7d9a99bcbe112bc017436380d80181c5db4
15012
15250
 
15013
15251
  def _typecheckingstub__d41101d1b0f699a52d44a2b86fe3e9dcd0e6f1487f088908464eb49cb3e5e12c(
15014
15252
  *,
15253
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
15015
15254
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
15016
15255
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
15017
15256
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -15101,6 +15340,7 @@ def _typecheckingstub__7b18310538532e3e3e53af99bb5da0c248186673a38a5175633a0149c
15101
15340
  content: ConfigurationContent,
15102
15341
  latest_version_number: typing.Optional[jsii.Number] = None,
15103
15342
  version_label: typing.Optional[builtins.str] = None,
15343
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
15104
15344
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
15105
15345
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
15106
15346
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -15118,6 +15358,7 @@ def _typecheckingstub__8c0399b30aac3a09a4a5e9f3f33f358c90afa60099a7dd6cfc1f1b40f
15118
15358
  location: ConfigurationSource,
15119
15359
  retrieval_role: typing.Optional[_IRole_235f5d8e] = None,
15120
15360
  version_number: typing.Optional[builtins.str] = None,
15361
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
15121
15362
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
15122
15363
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
15123
15364
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -15602,6 +15843,7 @@ def _typecheckingstub__8e7eecc550d3d689f07534db869c7be67f00e08dcbf880bbb2656d019
15602
15843
  latest_version_number: typing.Optional[jsii.Number] = None,
15603
15844
  version_label: typing.Optional[builtins.str] = None,
15604
15845
  application: IApplication,
15846
+ deletion_protection_check: typing.Optional[DeletionProtectionCheck] = None,
15605
15847
  deployment_key: typing.Optional[_IKey_5f11635f] = None,
15606
15848
  deployment_strategy: typing.Optional[IDeploymentStrategy] = None,
15607
15849
  deploy_to: typing.Optional[typing.Sequence[IEnvironment]] = None,
@@ -15730,3 +15972,9 @@ def _typecheckingstub__27c25acd80a9bdc9870365bad92556272569854dc957ad7cdf2b6e5a2
15730
15972
  ) -> None:
15731
15973
  """Type checking stubs"""
15732
15974
  pass
15975
+
15976
+ def _typecheckingstub__0a1e6913f9293558fa6d2222b6d11c3af6b25866b966dd6319551117306cf272(
15977
+ value: typing.Optional[DeletionProtectionCheck],
15978
+ ) -> None:
15979
+ """Type checking stubs"""
15980
+ pass