aws-sdk-codedeploy 1.62.0 → 1.63.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ed52bcb5131e198385f2ec9a2d10dff0a6b9a484c04c31f8fadb2742f0e1246d
4
- data.tar.gz: 5571884ddb9756b1eb0b1775617a0feb6c871c377cf5f3ca74a1b11d821cdc1b
3
+ metadata.gz: 18c83c85fba6c90036b6d89d30661399dfd1fb6e13595061b811ffc19992c810
4
+ data.tar.gz: 94c38466d133f31f6b7506bb4840719f28b796429f87a36c97a25dc562dd05e3
5
5
  SHA512:
6
- metadata.gz: 746c8592e8d8b8a815adfe20638814954789d0a4208cefe9a1c28bf5b5ea5d8ab3dc673d4ffeb80c33b9fd98160a1c2ca867d2dc20cd3b7204ee27786e8c3600
7
- data.tar.gz: 27165fa6fa3845d429f406138136081a399594d78161aefa9964356dbcc25fd6440a518273c1ffced375e079250087d2239b1d9f583cbcc8f68998f41be8a1a7
6
+ metadata.gz: 30ef39e5b70962274b7fdd9b67889fb792e6514219737bf3898d410161ff1d1e30ed586b973b5ca248264f7596e1fdd01f40c455798137f0da58c06cb9f4849f
7
+ data.tar.gz: 56020e018de03ffbf6924961eb0c5ccfaf69ba27485d67d0c5b518827fd146384569d651c6d3828116a2dbdd642939a08867fd85aa7a3b9e9af24d8a1580f48d
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.63.0 (2023-12-07)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for two new CodeDeploy features: 1) zonal deployments for Amazon EC2 in-place deployments, 2) deployments triggered by Auto Scaling group termination lifecycle hook events.
8
+
4
9
  1.62.0 (2023-11-28)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.62.0
1
+ 1.63.0
@@ -588,6 +588,7 @@ module Aws::CodeDeploy
588
588
  # resp.deployment_groups_info[0].auto_scaling_groups #=> Array
589
589
  # resp.deployment_groups_info[0].auto_scaling_groups[0].name #=> String
590
590
  # resp.deployment_groups_info[0].auto_scaling_groups[0].hook #=> String
591
+ # resp.deployment_groups_info[0].auto_scaling_groups[0].termination_hook #=> String
591
592
  # resp.deployment_groups_info[0].service_role_arn #=> String
592
593
  # resp.deployment_groups_info[0].target_revision.revision_type #=> String, one of "S3", "GitHub", "String", "AppSpecContent"
593
594
  # resp.deployment_groups_info[0].target_revision.s3_location.bucket #=> String
@@ -654,6 +655,7 @@ module Aws::CodeDeploy
654
655
  # resp.deployment_groups_info[0].ecs_services #=> Array
655
656
  # resp.deployment_groups_info[0].ecs_services[0].service_name #=> String
656
657
  # resp.deployment_groups_info[0].ecs_services[0].cluster_name #=> String
658
+ # resp.deployment_groups_info[0].termination_hook_enabled #=> Boolean
657
659
  # resp.error_message #=> String
658
660
  #
659
661
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/BatchGetDeploymentGroups AWS API Documentation
@@ -740,10 +742,10 @@ module Aws::CodeDeploy
740
742
  # * **CloudFormation**: Information about targets of blue/green
741
743
  # deployments initiated by a CloudFormation stack update.
742
744
  #
743
- # @option params [String] :deployment_id
745
+ # @option params [required, String] :deployment_id
744
746
  # The unique ID of a deployment.
745
747
  #
746
- # @option params [Array<String>] :target_ids
748
+ # @option params [required, Array<String>] :target_ids
747
749
  # The unique IDs of the deployment targets. The compute platform of the
748
750
  # deployment determines the type of the targets and their formats. The
749
751
  # maximum number of deployment target IDs you can specify is 25.
@@ -772,8 +774,8 @@ module Aws::CodeDeploy
772
774
  # @example Request syntax with placeholder values
773
775
  #
774
776
  # resp = client.batch_get_deployment_targets({
775
- # deployment_id: "DeploymentId",
776
- # target_ids: ["TargetId"],
777
+ # deployment_id: "DeploymentId", # required
778
+ # target_ids: ["TargetId"], # required
777
779
  # })
778
780
  #
779
781
  # @example Response structure
@@ -923,7 +925,7 @@ module Aws::CodeDeploy
923
925
  # resp.deployments_info[0].deployment_overview.skipped #=> Integer
924
926
  # resp.deployments_info[0].deployment_overview.ready #=> Integer
925
927
  # resp.deployments_info[0].description #=> String
926
- # resp.deployments_info[0].creator #=> String, one of "user", "autoscaling", "codeDeployRollback", "CodeDeploy", "CodeDeployAutoUpdate", "CloudFormation", "CloudFormationRollback"
928
+ # resp.deployments_info[0].creator #=> String, one of "user", "autoscaling", "codeDeployRollback", "CodeDeploy", "CodeDeployAutoUpdate", "CloudFormation", "CloudFormationRollback", "autoscalingTermination"
927
929
  # resp.deployments_info[0].ignore_application_stop_failures #=> Boolean
928
930
  # resp.deployments_info[0].auto_rollback_configuration.enabled #=> Boolean
929
931
  # resp.deployments_info[0].auto_rollback_configuration.events #=> Array
@@ -1323,6 +1325,19 @@ module Aws::CodeDeploy
1323
1325
  # The destination platform type for the deployment (`Lambda`, `Server`,
1324
1326
  # or `ECS`).
1325
1327
  #
1328
+ # @option params [Types::ZonalConfig] :zonal_config
1329
+ # Configure the `ZonalConfig` object if you want CodeDeploy to deploy
1330
+ # your application to one [Availability Zone][1] at a time, within an
1331
+ # Amazon Web Services Region.
1332
+ #
1333
+ # For more information about the zonal configuration feature, see [zonal
1334
+ # configuration][2] in the *CodeDeploy User Guide*.
1335
+ #
1336
+ #
1337
+ #
1338
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-availability-zones
1339
+ # [2]: https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations-create.html#zonal-config
1340
+ #
1326
1341
  # @return [Types::CreateDeploymentConfigOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1327
1342
  #
1328
1343
  # * {Types::CreateDeploymentConfigOutput#deployment_config_id #deployment_config_id} => String
@@ -1347,6 +1362,14 @@ module Aws::CodeDeploy
1347
1362
  # },
1348
1363
  # },
1349
1364
  # compute_platform: "Server", # accepts Server, Lambda, ECS
1365
+ # zonal_config: {
1366
+ # first_zone_monitor_duration_in_seconds: 1,
1367
+ # monitor_duration_in_seconds: 1,
1368
+ # minimum_healthy_hosts_per_zone: {
1369
+ # type: "HOST_COUNT", # accepts HOST_COUNT, FLEET_PERCENT
1370
+ # value: 1,
1371
+ # },
1372
+ # },
1350
1373
  # })
1351
1374
  #
1352
1375
  # @example Response structure
@@ -1472,6 +1495,29 @@ module Aws::CodeDeploy
1472
1495
  # you organize and categorize them. Each tag consists of a key and an
1473
1496
  # optional value, both of which you define.
1474
1497
  #
1498
+ # @option params [Boolean] :termination_hook_enabled
1499
+ # This parameter only applies if you are using CodeDeploy with Amazon
1500
+ # EC2 Auto Scaling. For more information, see [Integrating CodeDeploy
1501
+ # with Amazon EC2 Auto Scaling][1] in the *CodeDeploy User Guide*.
1502
+ #
1503
+ # Set `terminationHookEnabled` to `true` to have CodeDeploy install a
1504
+ # termination hook into your Auto Scaling group when you create a
1505
+ # deployment group. When this hook is installed, CodeDeploy will perform
1506
+ # termination deployments.
1507
+ #
1508
+ # For information about termination deployments, see [Enabling
1509
+ # termination deployments during Auto Scaling scale-in events][2] in the
1510
+ # *CodeDeploy User Guide*.
1511
+ #
1512
+ # For more information about Auto Scaling scale-in events, see the
1513
+ # [Scale in][3] topic in the *Amazon EC2 Auto Scaling User Guide*.
1514
+ #
1515
+ #
1516
+ #
1517
+ # [1]: https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html
1518
+ # [2]: https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html#integrations-aws-auto-scaling-behaviors-hook-enable
1519
+ # [3]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-lifecycle.html#as-lifecycle-scale-in
1520
+ #
1475
1521
  # @return [Types::CreateDeploymentGroupOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1476
1522
  #
1477
1523
  # * {Types::CreateDeploymentGroupOutput#deployment_group_id #deployment_group_id} => String
@@ -1597,6 +1643,7 @@ module Aws::CodeDeploy
1597
1643
  # value: "Value",
1598
1644
  # },
1599
1645
  # ],
1646
+ # termination_hook_enabled: false,
1600
1647
  # })
1601
1648
  #
1602
1649
  # @example Response structure
@@ -1688,6 +1735,7 @@ module Aws::CodeDeploy
1688
1735
  # resp.hooks_not_cleaned_up #=> Array
1689
1736
  # resp.hooks_not_cleaned_up[0].name #=> String
1690
1737
  # resp.hooks_not_cleaned_up[0].hook #=> String
1738
+ # resp.hooks_not_cleaned_up[0].termination_hook #=> String
1691
1739
  #
1692
1740
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/DeleteDeploymentGroup AWS API Documentation
1693
1741
  #
@@ -1953,7 +2001,7 @@ module Aws::CodeDeploy
1953
2001
  # resp.deployment_info.deployment_overview.skipped #=> Integer
1954
2002
  # resp.deployment_info.deployment_overview.ready #=> Integer
1955
2003
  # resp.deployment_info.description #=> String
1956
- # resp.deployment_info.creator #=> String, one of "user", "autoscaling", "codeDeployRollback", "CodeDeploy", "CodeDeployAutoUpdate", "CloudFormation", "CloudFormationRollback"
2004
+ # resp.deployment_info.creator #=> String, one of "user", "autoscaling", "codeDeployRollback", "CodeDeploy", "CodeDeployAutoUpdate", "CloudFormation", "CloudFormationRollback", "autoscalingTermination"
1957
2005
  # resp.deployment_info.ignore_application_stop_failures #=> Boolean
1958
2006
  # resp.deployment_info.auto_rollback_configuration.enabled #=> Boolean
1959
2007
  # resp.deployment_info.auto_rollback_configuration.events #=> Array
@@ -2049,6 +2097,10 @@ module Aws::CodeDeploy
2049
2097
  # resp.deployment_config_info.traffic_routing_config.time_based_canary.canary_interval #=> Integer
2050
2098
  # resp.deployment_config_info.traffic_routing_config.time_based_linear.linear_percentage #=> Integer
2051
2099
  # resp.deployment_config_info.traffic_routing_config.time_based_linear.linear_interval #=> Integer
2100
+ # resp.deployment_config_info.zonal_config.first_zone_monitor_duration_in_seconds #=> Integer
2101
+ # resp.deployment_config_info.zonal_config.monitor_duration_in_seconds #=> Integer
2102
+ # resp.deployment_config_info.zonal_config.minimum_healthy_hosts_per_zone.type #=> String, one of "HOST_COUNT", "FLEET_PERCENT"
2103
+ # resp.deployment_config_info.zonal_config.minimum_healthy_hosts_per_zone.value #=> Integer
2052
2104
  #
2053
2105
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/GetDeploymentConfig AWS API Documentation
2054
2106
  #
@@ -2096,6 +2148,7 @@ module Aws::CodeDeploy
2096
2148
  # resp.deployment_group_info.auto_scaling_groups #=> Array
2097
2149
  # resp.deployment_group_info.auto_scaling_groups[0].name #=> String
2098
2150
  # resp.deployment_group_info.auto_scaling_groups[0].hook #=> String
2151
+ # resp.deployment_group_info.auto_scaling_groups[0].termination_hook #=> String
2099
2152
  # resp.deployment_group_info.service_role_arn #=> String
2100
2153
  # resp.deployment_group_info.target_revision.revision_type #=> String, one of "S3", "GitHub", "String", "AppSpecContent"
2101
2154
  # resp.deployment_group_info.target_revision.s3_location.bucket #=> String
@@ -2162,6 +2215,7 @@ module Aws::CodeDeploy
2162
2215
  # resp.deployment_group_info.ecs_services #=> Array
2163
2216
  # resp.deployment_group_info.ecs_services[0].service_name #=> String
2164
2217
  # resp.deployment_group_info.ecs_services[0].cluster_name #=> String
2218
+ # resp.deployment_group_info.termination_hook_enabled #=> Boolean
2165
2219
  #
2166
2220
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/GetDeploymentGroup AWS API Documentation
2167
2221
  #
@@ -2219,10 +2273,10 @@ module Aws::CodeDeploy
2219
2273
 
2220
2274
  # Returns information about a deployment target.
2221
2275
  #
2222
- # @option params [String] :deployment_id
2276
+ # @option params [required, String] :deployment_id
2223
2277
  # The unique ID of a deployment.
2224
2278
  #
2225
- # @option params [String] :target_id
2279
+ # @option params [required, String] :target_id
2226
2280
  # The unique ID of a deployment target.
2227
2281
  #
2228
2282
  # @return [Types::GetDeploymentTargetOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -2232,8 +2286,8 @@ module Aws::CodeDeploy
2232
2286
  # @example Request syntax with placeholder values
2233
2287
  #
2234
2288
  # resp = client.get_deployment_target({
2235
- # deployment_id: "DeploymentId",
2236
- # target_id: "TargetId",
2289
+ # deployment_id: "DeploymentId", # required
2290
+ # target_id: "TargetId", # required
2237
2291
  # })
2238
2292
  #
2239
2293
  # @example Response structure
@@ -2648,7 +2702,7 @@ module Aws::CodeDeploy
2648
2702
 
2649
2703
  # Returns an array of target IDs that are associated a deployment.
2650
2704
  #
2651
- # @option params [String] :deployment_id
2705
+ # @option params [required, String] :deployment_id
2652
2706
  # The unique ID of a deployment.
2653
2707
  #
2654
2708
  # @option params [String] :next_token
@@ -2674,7 +2728,7 @@ module Aws::CodeDeploy
2674
2728
  # @example Request syntax with placeholder values
2675
2729
  #
2676
2730
  # resp = client.list_deployment_targets({
2677
- # deployment_id: "DeploymentId",
2731
+ # deployment_id: "DeploymentId", # required
2678
2732
  # next_token: "NextToken",
2679
2733
  # target_filters: {
2680
2734
  # "TargetStatus" => ["FilterValue"],
@@ -3345,6 +3399,29 @@ module Aws::CodeDeploy
3345
3399
  # group includes only on-premises instances identified by all the tag
3346
3400
  # groups.
3347
3401
  #
3402
+ # @option params [Boolean] :termination_hook_enabled
3403
+ # This parameter only applies if you are using CodeDeploy with Amazon
3404
+ # EC2 Auto Scaling. For more information, see [Integrating CodeDeploy
3405
+ # with Amazon EC2 Auto Scaling][1] in the *CodeDeploy User Guide*.
3406
+ #
3407
+ # Set `terminationHookEnabled` to `true` to have CodeDeploy install a
3408
+ # termination hook into your Auto Scaling group when you update a
3409
+ # deployment group. When this hook is installed, CodeDeploy will perform
3410
+ # termination deployments.
3411
+ #
3412
+ # For information about termination deployments, see [Enabling
3413
+ # termination deployments during Auto Scaling scale-in events][2] in the
3414
+ # *CodeDeploy User Guide*.
3415
+ #
3416
+ # For more information about Auto Scaling scale-in events, see the
3417
+ # [Scale in][3] topic in the *Amazon EC2 Auto Scaling User Guide*.
3418
+ #
3419
+ #
3420
+ #
3421
+ # [1]: https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html
3422
+ # [2]: https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html#integrations-aws-auto-scaling-behaviors-hook-enable
3423
+ # [3]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-lifecycle.html#as-lifecycle-scale-in
3424
+ #
3348
3425
  # @return [Types::UpdateDeploymentGroupOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3349
3426
  #
3350
3427
  # * {Types::UpdateDeploymentGroupOutput#hooks_not_cleaned_up #hooks_not_cleaned_up} => Array&lt;Types::AutoScalingGroup&gt;
@@ -3465,6 +3542,7 @@ module Aws::CodeDeploy
3465
3542
  # ],
3466
3543
  # ],
3467
3544
  # },
3545
+ # termination_hook_enabled: false,
3468
3546
  # })
3469
3547
  #
3470
3548
  # @example Response structure
@@ -3472,6 +3550,7 @@ module Aws::CodeDeploy
3472
3550
  # resp.hooks_not_cleaned_up #=> Array
3473
3551
  # resp.hooks_not_cleaned_up[0].name #=> String
3474
3552
  # resp.hooks_not_cleaned_up[0].hook #=> String
3553
+ # resp.hooks_not_cleaned_up[0].termination_hook #=> String
3475
3554
  #
3476
3555
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/UpdateDeploymentGroup AWS API Documentation
3477
3556
  #
@@ -3495,7 +3574,7 @@ module Aws::CodeDeploy
3495
3574
  params: params,
3496
3575
  config: config)
3497
3576
  context[:gem_name] = 'aws-sdk-codedeploy'
3498
- context[:gem_version] = '1.62.0'
3577
+ context[:gem_version] = '1.63.0'
3499
3578
  Seahorse::Client::Request.new(handlers, context)
3500
3579
  end
3501
3580
 
@@ -268,6 +268,7 @@ module Aws::CodeDeploy
268
268
  InvalidTrafficRoutingConfigurationException = Shapes::StructureShape.new(name: 'InvalidTrafficRoutingConfigurationException')
269
269
  InvalidTriggerConfigException = Shapes::StructureShape.new(name: 'InvalidTriggerConfigException')
270
270
  InvalidUpdateOutdatedInstancesOnlyValueException = Shapes::StructureShape.new(name: 'InvalidUpdateOutdatedInstancesOnlyValueException')
271
+ InvalidZonalDeploymentConfigurationException = Shapes::StructureShape.new(name: 'InvalidZonalDeploymentConfigurationException')
271
272
  Key = Shapes::StringShape.new(name: 'Key')
272
273
  LambdaFunctionAlias = Shapes::StringShape.new(name: 'LambdaFunctionAlias')
273
274
  LambdaFunctionInfo = Shapes::StructureShape.new(name: 'LambdaFunctionInfo')
@@ -310,6 +311,9 @@ module Aws::CodeDeploy
310
311
  LogTail = Shapes::StringShape.new(name: 'LogTail')
311
312
  Message = Shapes::StringShape.new(name: 'Message')
312
313
  MinimumHealthyHosts = Shapes::StructureShape.new(name: 'MinimumHealthyHosts')
314
+ MinimumHealthyHostsPerZone = Shapes::StructureShape.new(name: 'MinimumHealthyHostsPerZone')
315
+ MinimumHealthyHostsPerZoneType = Shapes::StringShape.new(name: 'MinimumHealthyHostsPerZoneType')
316
+ MinimumHealthyHostsPerZoneValue = Shapes::IntegerShape.new(name: 'MinimumHealthyHostsPerZoneValue')
313
317
  MinimumHealthyHostsType = Shapes::StringShape.new(name: 'MinimumHealthyHostsType')
314
318
  MinimumHealthyHostsValue = Shapes::IntegerShape.new(name: 'MinimumHealthyHostsValue')
315
319
  MultipleIamArnsProvidedException = Shapes::StructureShape.new(name: 'MultipleIamArnsProvidedException')
@@ -403,6 +407,8 @@ module Aws::CodeDeploy
403
407
  Version = Shapes::StringShape.new(name: 'Version')
404
408
  VersionId = Shapes::StringShape.new(name: 'VersionId')
405
409
  WaitTimeInMins = Shapes::IntegerShape.new(name: 'WaitTimeInMins')
410
+ WaitTimeInSeconds = Shapes::IntegerShape.new(name: 'WaitTimeInSeconds')
411
+ ZonalConfig = Shapes::StructureShape.new(name: 'ZonalConfig')
406
412
 
407
413
  AddTagsToOnPremisesInstancesInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, required: true, location_name: "tags"))
408
414
  AddTagsToOnPremisesInstancesInput.add_member(:instance_names, Shapes::ShapeRef.new(shape: InstanceNameList, required: true, location_name: "instanceNames"))
@@ -454,6 +460,7 @@ module Aws::CodeDeploy
454
460
 
455
461
  AutoScalingGroup.add_member(:name, Shapes::ShapeRef.new(shape: AutoScalingGroupName, location_name: "name"))
456
462
  AutoScalingGroup.add_member(:hook, Shapes::ShapeRef.new(shape: AutoScalingGroupHook, location_name: "hook"))
463
+ AutoScalingGroup.add_member(:termination_hook, Shapes::ShapeRef.new(shape: AutoScalingGroupHook, location_name: "terminationHook"))
457
464
  AutoScalingGroup.struct_class = Types::AutoScalingGroup
458
465
 
459
466
  AutoScalingGroupList.member = Shapes::ShapeRef.new(shape: AutoScalingGroup)
@@ -491,8 +498,8 @@ module Aws::CodeDeploy
491
498
  BatchGetDeploymentInstancesOutput.add_member(:error_message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "errorMessage"))
492
499
  BatchGetDeploymentInstancesOutput.struct_class = Types::BatchGetDeploymentInstancesOutput
493
500
 
494
- BatchGetDeploymentTargetsInput.add_member(:deployment_id, Shapes::ShapeRef.new(shape: DeploymentId, location_name: "deploymentId"))
495
- BatchGetDeploymentTargetsInput.add_member(:target_ids, Shapes::ShapeRef.new(shape: TargetIdList, location_name: "targetIds"))
501
+ BatchGetDeploymentTargetsInput.add_member(:deployment_id, Shapes::ShapeRef.new(shape: DeploymentId, required: true, location_name: "deploymentId"))
502
+ BatchGetDeploymentTargetsInput.add_member(:target_ids, Shapes::ShapeRef.new(shape: TargetIdList, required: true, location_name: "targetIds"))
496
503
  BatchGetDeploymentTargetsInput.struct_class = Types::BatchGetDeploymentTargetsInput
497
504
 
498
505
  BatchGetDeploymentTargetsOutput.add_member(:deployment_targets, Shapes::ShapeRef.new(shape: DeploymentTargetList, location_name: "deploymentTargets"))
@@ -548,6 +555,7 @@ module Aws::CodeDeploy
548
555
  CreateDeploymentConfigInput.add_member(:minimum_healthy_hosts, Shapes::ShapeRef.new(shape: MinimumHealthyHosts, location_name: "minimumHealthyHosts"))
549
556
  CreateDeploymentConfigInput.add_member(:traffic_routing_config, Shapes::ShapeRef.new(shape: TrafficRoutingConfig, location_name: "trafficRoutingConfig"))
550
557
  CreateDeploymentConfigInput.add_member(:compute_platform, Shapes::ShapeRef.new(shape: ComputePlatform, location_name: "computePlatform"))
558
+ CreateDeploymentConfigInput.add_member(:zonal_config, Shapes::ShapeRef.new(shape: ZonalConfig, location_name: "zonalConfig"))
551
559
  CreateDeploymentConfigInput.struct_class = Types::CreateDeploymentConfigInput
552
560
 
553
561
  CreateDeploymentConfigOutput.add_member(:deployment_config_id, Shapes::ShapeRef.new(shape: DeploymentConfigId, location_name: "deploymentConfigId"))
@@ -571,6 +579,7 @@ module Aws::CodeDeploy
571
579
  CreateDeploymentGroupInput.add_member(:ecs_services, Shapes::ShapeRef.new(shape: ECSServiceList, location_name: "ecsServices"))
572
580
  CreateDeploymentGroupInput.add_member(:on_premises_tag_set, Shapes::ShapeRef.new(shape: OnPremisesTagSet, location_name: "onPremisesTagSet"))
573
581
  CreateDeploymentGroupInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
582
+ CreateDeploymentGroupInput.add_member(:termination_hook_enabled, Shapes::ShapeRef.new(shape: NullableBoolean, location_name: "terminationHookEnabled"))
574
583
  CreateDeploymentGroupInput.struct_class = Types::CreateDeploymentGroupInput
575
584
 
576
585
  CreateDeploymentGroupOutput.add_member(:deployment_group_id, Shapes::ShapeRef.new(shape: DeploymentGroupId, location_name: "deploymentGroupId"))
@@ -632,6 +641,7 @@ module Aws::CodeDeploy
632
641
  DeploymentConfigInfo.add_member(:create_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "createTime"))
633
642
  DeploymentConfigInfo.add_member(:compute_platform, Shapes::ShapeRef.new(shape: ComputePlatform, location_name: "computePlatform"))
634
643
  DeploymentConfigInfo.add_member(:traffic_routing_config, Shapes::ShapeRef.new(shape: TrafficRoutingConfig, location_name: "trafficRoutingConfig"))
644
+ DeploymentConfigInfo.add_member(:zonal_config, Shapes::ShapeRef.new(shape: ZonalConfig, location_name: "zonalConfig"))
635
645
  DeploymentConfigInfo.struct_class = Types::DeploymentConfigInfo
636
646
 
637
647
  DeploymentConfigLimitExceededException.struct_class = Types::DeploymentConfigLimitExceededException
@@ -668,6 +678,7 @@ module Aws::CodeDeploy
668
678
  DeploymentGroupInfo.add_member(:on_premises_tag_set, Shapes::ShapeRef.new(shape: OnPremisesTagSet, location_name: "onPremisesTagSet"))
669
679
  DeploymentGroupInfo.add_member(:compute_platform, Shapes::ShapeRef.new(shape: ComputePlatform, location_name: "computePlatform"))
670
680
  DeploymentGroupInfo.add_member(:ecs_services, Shapes::ShapeRef.new(shape: ECSServiceList, location_name: "ecsServices"))
681
+ DeploymentGroupInfo.add_member(:termination_hook_enabled, Shapes::ShapeRef.new(shape: Boolean, location_name: "terminationHookEnabled"))
671
682
  DeploymentGroupInfo.struct_class = Types::DeploymentGroupInfo
672
683
 
673
684
  DeploymentGroupInfoList.member = Shapes::ShapeRef.new(shape: DeploymentGroupInfo)
@@ -868,8 +879,8 @@ module Aws::CodeDeploy
868
879
  GetDeploymentOutput.add_member(:deployment_info, Shapes::ShapeRef.new(shape: DeploymentInfo, location_name: "deploymentInfo"))
869
880
  GetDeploymentOutput.struct_class = Types::GetDeploymentOutput
870
881
 
871
- GetDeploymentTargetInput.add_member(:deployment_id, Shapes::ShapeRef.new(shape: DeploymentId, location_name: "deploymentId"))
872
- GetDeploymentTargetInput.add_member(:target_id, Shapes::ShapeRef.new(shape: TargetId, location_name: "targetId"))
882
+ GetDeploymentTargetInput.add_member(:deployment_id, Shapes::ShapeRef.new(shape: DeploymentId, required: true, location_name: "deploymentId"))
883
+ GetDeploymentTargetInput.add_member(:target_id, Shapes::ShapeRef.new(shape: TargetId, required: true, location_name: "targetId"))
873
884
  GetDeploymentTargetInput.struct_class = Types::GetDeploymentTargetInput
874
885
 
875
886
  GetDeploymentTargetOutput.add_member(:deployment_target, Shapes::ShapeRef.new(shape: DeploymentTarget, location_name: "deploymentTarget"))
@@ -1064,6 +1075,8 @@ module Aws::CodeDeploy
1064
1075
 
1065
1076
  InvalidUpdateOutdatedInstancesOnlyValueException.struct_class = Types::InvalidUpdateOutdatedInstancesOnlyValueException
1066
1077
 
1078
+ InvalidZonalDeploymentConfigurationException.struct_class = Types::InvalidZonalDeploymentConfigurationException
1079
+
1067
1080
  LambdaFunctionInfo.add_member(:function_name, Shapes::ShapeRef.new(shape: LambdaFunctionName, location_name: "functionName"))
1068
1081
  LambdaFunctionInfo.add_member(:function_alias, Shapes::ShapeRef.new(shape: LambdaFunctionAlias, location_name: "functionAlias"))
1069
1082
  LambdaFunctionInfo.add_member(:current_version, Shapes::ShapeRef.new(shape: Version, location_name: "currentVersion"))
@@ -1145,7 +1158,7 @@ module Aws::CodeDeploy
1145
1158
  ListDeploymentInstancesOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
1146
1159
  ListDeploymentInstancesOutput.struct_class = Types::ListDeploymentInstancesOutput
1147
1160
 
1148
- ListDeploymentTargetsInput.add_member(:deployment_id, Shapes::ShapeRef.new(shape: DeploymentId, location_name: "deploymentId"))
1161
+ ListDeploymentTargetsInput.add_member(:deployment_id, Shapes::ShapeRef.new(shape: DeploymentId, required: true, location_name: "deploymentId"))
1149
1162
  ListDeploymentTargetsInput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
1150
1163
  ListDeploymentTargetsInput.add_member(:target_filters, Shapes::ShapeRef.new(shape: TargetFilters, location_name: "targetFilters"))
1151
1164
  ListDeploymentTargetsInput.struct_class = Types::ListDeploymentTargetsInput
@@ -1201,6 +1214,10 @@ module Aws::CodeDeploy
1201
1214
  MinimumHealthyHosts.add_member(:value, Shapes::ShapeRef.new(shape: MinimumHealthyHostsValue, location_name: "value"))
1202
1215
  MinimumHealthyHosts.struct_class = Types::MinimumHealthyHosts
1203
1216
 
1217
+ MinimumHealthyHostsPerZone.add_member(:type, Shapes::ShapeRef.new(shape: MinimumHealthyHostsPerZoneType, location_name: "type"))
1218
+ MinimumHealthyHostsPerZone.add_member(:value, Shapes::ShapeRef.new(shape: MinimumHealthyHostsPerZoneValue, location_name: "value"))
1219
+ MinimumHealthyHostsPerZone.struct_class = Types::MinimumHealthyHostsPerZone
1220
+
1204
1221
  MultipleIamArnsProvidedException.struct_class = Types::MultipleIamArnsProvidedException
1205
1222
 
1206
1223
  OnPremisesTagSet.add_member(:on_premises_tag_set_list, Shapes::ShapeRef.new(shape: OnPremisesTagSetList, location_name: "onPremisesTagSetList"))
@@ -1400,11 +1417,17 @@ module Aws::CodeDeploy
1400
1417
  UpdateDeploymentGroupInput.add_member(:ec2_tag_set, Shapes::ShapeRef.new(shape: EC2TagSet, location_name: "ec2TagSet"))
1401
1418
  UpdateDeploymentGroupInput.add_member(:ecs_services, Shapes::ShapeRef.new(shape: ECSServiceList, location_name: "ecsServices"))
1402
1419
  UpdateDeploymentGroupInput.add_member(:on_premises_tag_set, Shapes::ShapeRef.new(shape: OnPremisesTagSet, location_name: "onPremisesTagSet"))
1420
+ UpdateDeploymentGroupInput.add_member(:termination_hook_enabled, Shapes::ShapeRef.new(shape: NullableBoolean, location_name: "terminationHookEnabled"))
1403
1421
  UpdateDeploymentGroupInput.struct_class = Types::UpdateDeploymentGroupInput
1404
1422
 
1405
1423
  UpdateDeploymentGroupOutput.add_member(:hooks_not_cleaned_up, Shapes::ShapeRef.new(shape: AutoScalingGroupList, location_name: "hooksNotCleanedUp"))
1406
1424
  UpdateDeploymentGroupOutput.struct_class = Types::UpdateDeploymentGroupOutput
1407
1425
 
1426
+ ZonalConfig.add_member(:first_zone_monitor_duration_in_seconds, Shapes::ShapeRef.new(shape: WaitTimeInSeconds, location_name: "firstZoneMonitorDurationInSeconds"))
1427
+ ZonalConfig.add_member(:monitor_duration_in_seconds, Shapes::ShapeRef.new(shape: WaitTimeInSeconds, location_name: "monitorDurationInSeconds"))
1428
+ ZonalConfig.add_member(:minimum_healthy_hosts_per_zone, Shapes::ShapeRef.new(shape: MinimumHealthyHostsPerZone, location_name: "minimumHealthyHostsPerZone"))
1429
+ ZonalConfig.struct_class = Types::ZonalConfig
1430
+
1408
1431
 
1409
1432
  # @api private
1410
1433
  API = Seahorse::Model::Api.new.tap do |api|
@@ -1612,6 +1635,7 @@ module Aws::CodeDeploy
1612
1635
  o.errors << Shapes::ShapeRef.new(shape: DeploymentConfigLimitExceededException)
1613
1636
  o.errors << Shapes::ShapeRef.new(shape: InvalidComputePlatformException)
1614
1637
  o.errors << Shapes::ShapeRef.new(shape: InvalidTrafficRoutingConfigurationException)
1638
+ o.errors << Shapes::ShapeRef.new(shape: InvalidZonalDeploymentConfigurationException)
1615
1639
  end)
1616
1640
 
1617
1641
  api.add_operation(:create_deployment_group, Seahorse::Model::Operation.new.tap do |o|
@@ -1934,6 +1958,7 @@ module Aws::CodeDeploy
1934
1958
  o.errors << Shapes::ShapeRef.new(shape: InvalidInstanceStatusException)
1935
1959
  o.errors << Shapes::ShapeRef.new(shape: InvalidInstanceTypeException)
1936
1960
  o.errors << Shapes::ShapeRef.new(shape: InvalidDeploymentInstanceTypeException)
1961
+ o.errors << Shapes::ShapeRef.new(shape: InvalidTargetFilterNameException)
1937
1962
  end)
1938
1963
 
1939
1964
  api.add_operation(:list_deployments, Seahorse::Model::Operation.new.tap do |o|
@@ -32,7 +32,7 @@ module Aws::CodeDeploy
32
32
  raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
33
33
  end
34
34
  if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
35
- if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"))
35
+ if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
36
36
  return Aws::Endpoints::Endpoint.new(url: "https://codedeploy-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
37
37
  end
38
38
  raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
@@ -124,6 +124,7 @@ module Aws::CodeDeploy
124
124
  # * {InvalidTrafficRoutingConfigurationException}
125
125
  # * {InvalidTriggerConfigException}
126
126
  # * {InvalidUpdateOutdatedInstancesOnlyValueException}
127
+ # * {InvalidZonalDeploymentConfigurationException}
127
128
  # * {LifecycleEventAlreadyCompletedException}
128
129
  # * {LifecycleHookLimitExceededException}
129
130
  # * {MultipleIamArnsProvidedException}
@@ -1116,6 +1117,16 @@ module Aws::CodeDeploy
1116
1117
  end
1117
1118
  end
1118
1119
 
1120
+ class InvalidZonalDeploymentConfigurationException < ServiceError
1121
+
1122
+ # @param [Seahorse::Client::RequestContext] context
1123
+ # @param [String] message
1124
+ # @param [Aws::CodeDeploy::Types::InvalidZonalDeploymentConfigurationException] data
1125
+ def initialize(context, message, data = Aws::EmptyStructure.new)
1126
+ super(context, message, data)
1127
+ end
1128
+ end
1129
+
1119
1130
  class LifecycleEventAlreadyCompletedException < ServiceError
1120
1131
 
1121
1132
  # @param [Seahorse::Client::RequestContext] context
@@ -226,14 +226,36 @@ module Aws::CodeDeploy
226
226
  # @return [String]
227
227
  #
228
228
  # @!attribute [rw] hook
229
- # An Auto Scaling lifecycle event hook name.
229
+ # The name of the launch hook that CodeDeploy installed into the Auto
230
+ # Scaling group.
231
+ #
232
+ # For more information about the launch hook, see [How Amazon EC2 Auto
233
+ # Scaling works with CodeDeploy][1] in the *CodeDeploy User Guide*.
234
+ #
235
+ #
236
+ #
237
+ # [1]: https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html#integrations-aws-auto-scaling-behaviors
238
+ # @return [String]
239
+ #
240
+ # @!attribute [rw] termination_hook
241
+ # The name of the termination hook that CodeDeploy installed into the
242
+ # Auto Scaling group.
243
+ #
244
+ # For more information about the termination hook, see [Enabling
245
+ # termination deployments during Auto Scaling scale-in events][1] in
246
+ # the *CodeDeploy User Guide*.
247
+ #
248
+ #
249
+ #
250
+ # [1]: https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html#integrations-aws-auto-scaling-behaviors-hook-enable
230
251
  # @return [String]
231
252
  #
232
253
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/AutoScalingGroup AWS API Documentation
233
254
  #
234
255
  class AutoScalingGroup < Struct.new(
235
256
  :name,
236
- :hook)
257
+ :hook,
258
+ :termination_hook)
237
259
  SENSITIVE = []
238
260
  include Aws::Structure
239
261
  end
@@ -747,13 +769,28 @@ module Aws::CodeDeploy
747
769
  # `Server`, or `ECS`).
748
770
  # @return [String]
749
771
  #
772
+ # @!attribute [rw] zonal_config
773
+ # Configure the `ZonalConfig` object if you want CodeDeploy to deploy
774
+ # your application to one [Availability Zone][1] at a time, within an
775
+ # Amazon Web Services Region.
776
+ #
777
+ # For more information about the zonal configuration feature, see
778
+ # [zonal configuration][2] in the *CodeDeploy User Guide*.
779
+ #
780
+ #
781
+ #
782
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-availability-zones
783
+ # [2]: https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations-create.html#zonal-config
784
+ # @return [Types::ZonalConfig]
785
+ #
750
786
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/CreateDeploymentConfigInput AWS API Documentation
751
787
  #
752
788
  class CreateDeploymentConfigInput < Struct.new(
753
789
  :deployment_config_name,
754
790
  :minimum_healthy_hosts,
755
791
  :traffic_routing_config,
756
- :compute_platform)
792
+ :compute_platform,
793
+ :zonal_config)
757
794
  SENSITIVE = []
758
795
  include Aws::Structure
759
796
  end
@@ -901,6 +938,30 @@ module Aws::CodeDeploy
901
938
  # optional value, both of which you define.
902
939
  # @return [Array<Types::Tag>]
903
940
  #
941
+ # @!attribute [rw] termination_hook_enabled
942
+ # This parameter only applies if you are using CodeDeploy with Amazon
943
+ # EC2 Auto Scaling. For more information, see [Integrating CodeDeploy
944
+ # with Amazon EC2 Auto Scaling][1] in the *CodeDeploy User Guide*.
945
+ #
946
+ # Set `terminationHookEnabled` to `true` to have CodeDeploy install a
947
+ # termination hook into your Auto Scaling group when you create a
948
+ # deployment group. When this hook is installed, CodeDeploy will
949
+ # perform termination deployments.
950
+ #
951
+ # For information about termination deployments, see [Enabling
952
+ # termination deployments during Auto Scaling scale-in events][2] in
953
+ # the *CodeDeploy User Guide*.
954
+ #
955
+ # For more information about Auto Scaling scale-in events, see the
956
+ # [Scale in][3] topic in the *Amazon EC2 Auto Scaling User Guide*.
957
+ #
958
+ #
959
+ #
960
+ # [1]: https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html
961
+ # [2]: https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html#integrations-aws-auto-scaling-behaviors-hook-enable
962
+ # [3]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-lifecycle.html#as-lifecycle-scale-in
963
+ # @return [Boolean]
964
+ #
904
965
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/CreateDeploymentGroupInput AWS API Documentation
905
966
  #
906
967
  class CreateDeploymentGroupInput < Struct.new(
@@ -921,7 +982,8 @@ module Aws::CodeDeploy
921
982
  :ec2_tag_set,
922
983
  :ecs_services,
923
984
  :on_premises_tag_set,
924
- :tags)
985
+ :tags,
986
+ :termination_hook_enabled)
925
987
  SENSITIVE = []
926
988
  include Aws::Structure
927
989
  end
@@ -1244,7 +1306,7 @@ module Aws::CodeDeploy
1244
1306
  #
1245
1307
  # @!attribute [rw] minimum_healthy_hosts
1246
1308
  # Information about the number or percentage of minimum healthy
1247
- # instance.
1309
+ # instances.
1248
1310
  # @return [Types::MinimumHealthyHosts]
1249
1311
  #
1250
1312
  # @!attribute [rw] create_time
@@ -1262,6 +1324,10 @@ module Aws::CodeDeploy
1262
1324
  # platform only.
1263
1325
  # @return [Types::TrafficRoutingConfig]
1264
1326
  #
1327
+ # @!attribute [rw] zonal_config
1328
+ # Information about a zonal configuration.
1329
+ # @return [Types::ZonalConfig]
1330
+ #
1265
1331
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/DeploymentConfigInfo AWS API Documentation
1266
1332
  #
1267
1333
  class DeploymentConfigInfo < Struct.new(
@@ -1270,7 +1336,8 @@ module Aws::CodeDeploy
1270
1336
  :minimum_healthy_hosts,
1271
1337
  :create_time,
1272
1338
  :compute_platform,
1273
- :traffic_routing_config)
1339
+ :traffic_routing_config,
1340
+ :zonal_config)
1274
1341
  SENSITIVE = []
1275
1342
  include Aws::Structure
1276
1343
  end
@@ -1435,6 +1502,19 @@ module Aws::CodeDeploy
1435
1502
  # `<clustername>:<servicename>`.
1436
1503
  # @return [Array<Types::ECSService>]
1437
1504
  #
1505
+ # @!attribute [rw] termination_hook_enabled
1506
+ # Indicates whether the deployment group was configured to have
1507
+ # CodeDeploy install a termination hook into an Auto Scaling group.
1508
+ #
1509
+ # For more information about the termination hook, see [How Amazon EC2
1510
+ # Auto Scaling works with CodeDeploy][1] in the *CodeDeploy User
1511
+ # Guide*.
1512
+ #
1513
+ #
1514
+ #
1515
+ # [1]: https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html#integrations-aws-auto-scaling-behaviors
1516
+ # @return [Boolean]
1517
+ #
1438
1518
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/DeploymentGroupInfo AWS API Documentation
1439
1519
  #
1440
1520
  class DeploymentGroupInfo < Struct.new(
@@ -1459,7 +1539,8 @@ module Aws::CodeDeploy
1459
1539
  :ec2_tag_set,
1460
1540
  :on_premises_tag_set,
1461
1541
  :compute_platform,
1462
- :ecs_services)
1542
+ :ecs_services,
1543
+ :termination_hook_enabled)
1463
1544
  SENSITIVE = []
1464
1545
  include Aws::Structure
1465
1546
  end
@@ -3197,6 +3278,12 @@ module Aws::CodeDeploy
3197
3278
  #
3198
3279
  class InvalidUpdateOutdatedInstancesOnlyValueException < Aws::EmptyStructure; end
3199
3280
 
3281
+ # The `ZonalConfig` object is not valid.
3282
+ #
3283
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/InvalidZonalDeploymentConfigurationException AWS API Documentation
3284
+ #
3285
+ class InvalidZonalDeploymentConfigurationException < Aws::EmptyStructure; end
3286
+
3200
3287
  # Information about a Lambda function specified in a deployment.
3201
3288
  #
3202
3289
  # @!attribute [rw] function_name
@@ -4002,7 +4089,7 @@ module Aws::CodeDeploy
4002
4089
  include Aws::Structure
4003
4090
  end
4004
4091
 
4005
- # Information about minimum healthy instance.
4092
+ # Information about the minimum number of healthy instances.
4006
4093
  #
4007
4094
  # @!attribute [rw] type
4008
4095
  # The minimum healthy instance type:
@@ -4055,6 +4142,26 @@ module Aws::CodeDeploy
4055
4142
  include Aws::Structure
4056
4143
  end
4057
4144
 
4145
+ # Information about the minimum number of healthy instances per
4146
+ # Availability Zone.
4147
+ #
4148
+ # @!attribute [rw] type
4149
+ # The `type` associated with the `MinimumHealthyHostsPerZone` option.
4150
+ # @return [String]
4151
+ #
4152
+ # @!attribute [rw] value
4153
+ # The `value` associated with the `MinimumHealthyHostsPerZone` option.
4154
+ # @return [Integer]
4155
+ #
4156
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/MinimumHealthyHostsPerZone AWS API Documentation
4157
+ #
4158
+ class MinimumHealthyHostsPerZone < Struct.new(
4159
+ :type,
4160
+ :value)
4161
+ SENSITIVE = []
4162
+ include Aws::Structure
4163
+ end
4164
+
4058
4165
  # Both an user ARN and an IAM session ARN were included in the request.
4059
4166
  # Use only one ARN type.
4060
4167
  #
@@ -4998,6 +5105,30 @@ module Aws::CodeDeploy
4998
5105
  # groups.
4999
5106
  # @return [Types::OnPremisesTagSet]
5000
5107
  #
5108
+ # @!attribute [rw] termination_hook_enabled
5109
+ # This parameter only applies if you are using CodeDeploy with Amazon
5110
+ # EC2 Auto Scaling. For more information, see [Integrating CodeDeploy
5111
+ # with Amazon EC2 Auto Scaling][1] in the *CodeDeploy User Guide*.
5112
+ #
5113
+ # Set `terminationHookEnabled` to `true` to have CodeDeploy install a
5114
+ # termination hook into your Auto Scaling group when you update a
5115
+ # deployment group. When this hook is installed, CodeDeploy will
5116
+ # perform termination deployments.
5117
+ #
5118
+ # For information about termination deployments, see [Enabling
5119
+ # termination deployments during Auto Scaling scale-in events][2] in
5120
+ # the *CodeDeploy User Guide*.
5121
+ #
5122
+ # For more information about Auto Scaling scale-in events, see the
5123
+ # [Scale in][3] topic in the *Amazon EC2 Auto Scaling User Guide*.
5124
+ #
5125
+ #
5126
+ #
5127
+ # [1]: https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html
5128
+ # [2]: https://docs.aws.amazon.com/codedeploy/latest/userguide/integrations-aws-auto-scaling.html#integrations-aws-auto-scaling-behaviors-hook-enable
5129
+ # [3]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-lifecycle.html#as-lifecycle-scale-in
5130
+ # @return [Boolean]
5131
+ #
5001
5132
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/UpdateDeploymentGroupInput AWS API Documentation
5002
5133
  #
5003
5134
  class UpdateDeploymentGroupInput < Struct.new(
@@ -5018,7 +5149,8 @@ module Aws::CodeDeploy
5018
5149
  :load_balancer_info,
5019
5150
  :ec2_tag_set,
5020
5151
  :ecs_services,
5021
- :on_premises_tag_set)
5152
+ :on_premises_tag_set,
5153
+ :termination_hook_enabled)
5022
5154
  SENSITIVE = []
5023
5155
  include Aws::Structure
5024
5156
  end
@@ -5042,5 +5174,87 @@ module Aws::CodeDeploy
5042
5174
  include Aws::Structure
5043
5175
  end
5044
5176
 
5177
+ # Configure the `ZonalConfig` object if you want CodeDeploy to deploy
5178
+ # your application to one [Availability Zone][1] at a time, within an
5179
+ # Amazon Web Services Region. By deploying to one Availability Zone at a
5180
+ # time, you can expose your deployment to a progressively larger
5181
+ # audience as confidence in the deployment's performance and viability
5182
+ # grows. If you don't configure the `ZonalConfig` object, CodeDeploy
5183
+ # deploys your application to a random selection of hosts across a
5184
+ # Region.
5185
+ #
5186
+ # For more information about the zonal configuration feature, see [zonal
5187
+ # configuration][2] in the *CodeDeploy User Guide*.
5188
+ #
5189
+ #
5190
+ #
5191
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-availability-zones
5192
+ # [2]: https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations-create.html#zonal-config
5193
+ #
5194
+ # @!attribute [rw] first_zone_monitor_duration_in_seconds
5195
+ # The period of time, in seconds, that CodeDeploy must wait after
5196
+ # completing a deployment to the *first* Availability Zone. CodeDeploy
5197
+ # will wait this amount of time before starting a deployment to the
5198
+ # second Availability Zone. You might set this option if you want to
5199
+ # allow extra bake time for the first Availability Zone. If you don't
5200
+ # specify a value for `firstZoneMonitorDurationInSeconds`, then
5201
+ # CodeDeploy uses the `monitorDurationInSeconds` value for the first
5202
+ # Availability Zone.
5203
+ #
5204
+ # For more information about the zonal configuration feature, see
5205
+ # [zonal configuration][1] in the *CodeDeploy User Guide*.
5206
+ #
5207
+ #
5208
+ #
5209
+ # [1]: https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations-create.html#zonal-config
5210
+ # @return [Integer]
5211
+ #
5212
+ # @!attribute [rw] monitor_duration_in_seconds
5213
+ # The period of time, in seconds, that CodeDeploy must wait after
5214
+ # completing a deployment to an Availability Zone. CodeDeploy will
5215
+ # wait this amount of time before starting a deployment to the next
5216
+ # Availability Zone. Consider adding a monitor duration to give the
5217
+ # deployment some time to prove itself (or 'bake') in one
5218
+ # Availability Zone before it is released in the next zone. If you
5219
+ # don't specify a `monitorDurationInSeconds`, CodeDeploy starts
5220
+ # deploying to the next Availability Zone immediately.
5221
+ #
5222
+ # For more information about the zonal configuration feature, see
5223
+ # [zonal configuration][1] in the *CodeDeploy User Guide*.
5224
+ #
5225
+ #
5226
+ #
5227
+ # [1]: https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations-create.html#zonal-config
5228
+ # @return [Integer]
5229
+ #
5230
+ # @!attribute [rw] minimum_healthy_hosts_per_zone
5231
+ # The number or percentage of instances that must remain available per
5232
+ # Availability Zone during a deployment. This option works in
5233
+ # conjunction with the `MinimumHealthyHosts` option. For more
5234
+ # information, see [About the minimum number of healthy hosts per
5235
+ # Availability Zone][1] in the *CodeDeploy User Guide*.
5236
+ #
5237
+ # If you don't specify the `minimumHealthyHostsPerZone` option, then
5238
+ # CodeDeploy uses a default value of `0` percent.
5239
+ #
5240
+ # For more information about the zonal configuration feature, see
5241
+ # [zonal configuration][2] in the *CodeDeploy User Guide*.
5242
+ #
5243
+ #
5244
+ #
5245
+ # [1]: https://docs.aws.amazon.com/codedeploy/latest/userguide/instances-health.html#minimum-healthy-hosts-az
5246
+ # [2]: https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations-create.html#zonal-config
5247
+ # @return [Types::MinimumHealthyHostsPerZone]
5248
+ #
5249
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/ZonalConfig AWS API Documentation
5250
+ #
5251
+ class ZonalConfig < Struct.new(
5252
+ :first_zone_monitor_duration_in_seconds,
5253
+ :monitor_duration_in_seconds,
5254
+ :minimum_healthy_hosts_per_zone)
5255
+ SENSITIVE = []
5256
+ include Aws::Structure
5257
+ end
5258
+
5045
5259
  end
5046
5260
  end
@@ -53,6 +53,6 @@ require_relative 'aws-sdk-codedeploy/customizations'
53
53
  # @!group service
54
54
  module Aws::CodeDeploy
55
55
 
56
- GEM_VERSION = '1.62.0'
56
+ GEM_VERSION = '1.63.0'
57
57
 
58
58
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-codedeploy
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.62.0
4
+ version: 1.63.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-11-28 00:00:00.000000000 Z
11
+ date: 2023-12-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core