aws-sdk-codedeploy 1.0.0 → 1.1.0

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.
@@ -55,6 +55,7 @@ module Aws::CodeDeploy
55
55
  BucketNameFilterRequiredException = Shapes::StructureShape.new(name: 'BucketNameFilterRequiredException')
56
56
  BundleType = Shapes::StringShape.new(name: 'BundleType')
57
57
  CommitId = Shapes::StringShape.new(name: 'CommitId')
58
+ ComputePlatform = Shapes::StringShape.new(name: 'ComputePlatform')
58
59
  ContinueDeploymentInput = Shapes::StructureShape.new(name: 'ContinueDeploymentInput')
59
60
  CreateApplicationInput = Shapes::StructureShape.new(name: 'CreateApplicationInput')
60
61
  CreateApplicationOutput = Shapes::StructureShape.new(name: 'CreateApplicationOutput')
@@ -101,6 +102,7 @@ module Aws::CodeDeploy
101
102
  DeploymentReadyOption = Shapes::StructureShape.new(name: 'DeploymentReadyOption')
102
103
  DeploymentStatus = Shapes::StringShape.new(name: 'DeploymentStatus')
103
104
  DeploymentStatusList = Shapes::ListShape.new(name: 'DeploymentStatusList')
105
+ DeploymentStatusMessageList = Shapes::ListShape.new(name: 'DeploymentStatusMessageList')
104
106
  DeploymentStyle = Shapes::StructureShape.new(name: 'DeploymentStyle')
105
107
  DeploymentType = Shapes::StringShape.new(name: 'DeploymentType')
106
108
  DeploymentsInfoList = Shapes::ListShape.new(name: 'DeploymentsInfoList')
@@ -177,6 +179,7 @@ module Aws::CodeDeploy
177
179
  InvalidAutoScalingGroupException = Shapes::StructureShape.new(name: 'InvalidAutoScalingGroupException')
178
180
  InvalidBlueGreenDeploymentConfigurationException = Shapes::StructureShape.new(name: 'InvalidBlueGreenDeploymentConfigurationException')
179
181
  InvalidBucketNameFilterException = Shapes::StructureShape.new(name: 'InvalidBucketNameFilterException')
182
+ InvalidComputePlatformException = Shapes::StructureShape.new(name: 'InvalidComputePlatformException')
180
183
  InvalidDeployedStateFilterException = Shapes::StructureShape.new(name: 'InvalidDeployedStateFilterException')
181
184
  InvalidDeploymentConfigNameException = Shapes::StructureShape.new(name: 'InvalidDeploymentConfigNameException')
182
185
  InvalidDeploymentGroupNameException = Shapes::StructureShape.new(name: 'InvalidDeploymentGroupNameException')
@@ -187,12 +190,18 @@ module Aws::CodeDeploy
187
190
  InvalidEC2TagCombinationException = Shapes::StructureShape.new(name: 'InvalidEC2TagCombinationException')
188
191
  InvalidEC2TagException = Shapes::StructureShape.new(name: 'InvalidEC2TagException')
189
192
  InvalidFileExistsBehaviorException = Shapes::StructureShape.new(name: 'InvalidFileExistsBehaviorException')
193
+ InvalidGitHubAccountTokenNameException = Shapes::StructureShape.new(name: 'InvalidGitHubAccountTokenNameException')
190
194
  InvalidIamSessionArnException = Shapes::StructureShape.new(name: 'InvalidIamSessionArnException')
191
195
  InvalidIamUserArnException = Shapes::StructureShape.new(name: 'InvalidIamUserArnException')
196
+ InvalidIgnoreApplicationStopFailuresValueException = Shapes::StructureShape.new(name: 'InvalidIgnoreApplicationStopFailuresValueException')
197
+ InvalidInputException = Shapes::StructureShape.new(name: 'InvalidInputException')
198
+ InvalidInstanceIdException = Shapes::StructureShape.new(name: 'InvalidInstanceIdException')
192
199
  InvalidInstanceNameException = Shapes::StructureShape.new(name: 'InvalidInstanceNameException')
193
200
  InvalidInstanceStatusException = Shapes::StructureShape.new(name: 'InvalidInstanceStatusException')
194
201
  InvalidInstanceTypeException = Shapes::StructureShape.new(name: 'InvalidInstanceTypeException')
195
202
  InvalidKeyPrefixFilterException = Shapes::StructureShape.new(name: 'InvalidKeyPrefixFilterException')
203
+ InvalidLifecycleEventHookExecutionIdException = Shapes::StructureShape.new(name: 'InvalidLifecycleEventHookExecutionIdException')
204
+ InvalidLifecycleEventHookExecutionStatusException = Shapes::StructureShape.new(name: 'InvalidLifecycleEventHookExecutionStatusException')
196
205
  InvalidLoadBalancerInfoException = Shapes::StructureShape.new(name: 'InvalidLoadBalancerInfoException')
197
206
  InvalidMinimumHealthyHostValueException = Shapes::StructureShape.new(name: 'InvalidMinimumHealthyHostValueException')
198
207
  InvalidNextTokenException = Shapes::StructureShape.new(name: 'InvalidNextTokenException')
@@ -207,11 +216,15 @@ module Aws::CodeDeploy
207
216
  InvalidTagFilterException = Shapes::StructureShape.new(name: 'InvalidTagFilterException')
208
217
  InvalidTargetInstancesException = Shapes::StructureShape.new(name: 'InvalidTargetInstancesException')
209
218
  InvalidTimeRangeException = Shapes::StructureShape.new(name: 'InvalidTimeRangeException')
219
+ InvalidTrafficRoutingConfigurationException = Shapes::StructureShape.new(name: 'InvalidTrafficRoutingConfigurationException')
210
220
  InvalidTriggerConfigException = Shapes::StructureShape.new(name: 'InvalidTriggerConfigException')
221
+ InvalidUpdateOutdatedInstancesOnlyValueException = Shapes::StructureShape.new(name: 'InvalidUpdateOutdatedInstancesOnlyValueException')
211
222
  Key = Shapes::StringShape.new(name: 'Key')
212
223
  LastDeploymentInfo = Shapes::StructureShape.new(name: 'LastDeploymentInfo')
213
224
  LifecycleErrorCode = Shapes::StringShape.new(name: 'LifecycleErrorCode')
214
225
  LifecycleEvent = Shapes::StructureShape.new(name: 'LifecycleEvent')
226
+ LifecycleEventAlreadyCompletedException = Shapes::StructureShape.new(name: 'LifecycleEventAlreadyCompletedException')
227
+ LifecycleEventHookExecutionId = Shapes::StringShape.new(name: 'LifecycleEventHookExecutionId')
215
228
  LifecycleEventList = Shapes::ListShape.new(name: 'LifecycleEventList')
216
229
  LifecycleEventName = Shapes::StringShape.new(name: 'LifecycleEventName')
217
230
  LifecycleEventStatus = Shapes::StringShape.new(name: 'LifecycleEventStatus')
@@ -245,6 +258,13 @@ module Aws::CodeDeploy
245
258
  NullableBoolean = Shapes::BooleanShape.new(name: 'NullableBoolean')
246
259
  OnPremisesTagSet = Shapes::StructureShape.new(name: 'OnPremisesTagSet')
247
260
  OnPremisesTagSetList = Shapes::ListShape.new(name: 'OnPremisesTagSetList')
261
+ OperationNotSupportedException = Shapes::StructureShape.new(name: 'OperationNotSupportedException')
262
+ Percentage = Shapes::IntegerShape.new(name: 'Percentage')
263
+ PutLifecycleEventHookExecutionStatusInput = Shapes::StructureShape.new(name: 'PutLifecycleEventHookExecutionStatusInput')
264
+ PutLifecycleEventHookExecutionStatusOutput = Shapes::StructureShape.new(name: 'PutLifecycleEventHookExecutionStatusOutput')
265
+ RawString = Shapes::StructureShape.new(name: 'RawString')
266
+ RawStringContent = Shapes::StringShape.new(name: 'RawStringContent')
267
+ RawStringSha256 = Shapes::StringShape.new(name: 'RawStringSha256')
248
268
  RegisterApplicationRevisionInput = Shapes::StructureShape.new(name: 'RegisterApplicationRevisionInput')
249
269
  RegisterOnPremisesInstanceInput = Shapes::StructureShape.new(name: 'RegisterOnPremisesInstanceInput')
250
270
  RegistrationStatus = Shapes::StringShape.new(name: 'RegistrationStatus')
@@ -282,8 +302,13 @@ module Aws::CodeDeploy
282
302
  TargetGroupInfoList = Shapes::ListShape.new(name: 'TargetGroupInfoList')
283
303
  TargetGroupName = Shapes::StringShape.new(name: 'TargetGroupName')
284
304
  TargetInstances = Shapes::StructureShape.new(name: 'TargetInstances')
305
+ ThrottlingException = Shapes::StructureShape.new(name: 'ThrottlingException')
306
+ TimeBasedCanary = Shapes::StructureShape.new(name: 'TimeBasedCanary')
307
+ TimeBasedLinear = Shapes::StructureShape.new(name: 'TimeBasedLinear')
285
308
  TimeRange = Shapes::StructureShape.new(name: 'TimeRange')
286
309
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
310
+ TrafficRoutingConfig = Shapes::StructureShape.new(name: 'TrafficRoutingConfig')
311
+ TrafficRoutingType = Shapes::StringShape.new(name: 'TrafficRoutingType')
287
312
  TriggerConfig = Shapes::StructureShape.new(name: 'TriggerConfig')
288
313
  TriggerConfigList = Shapes::ListShape.new(name: 'TriggerConfigList')
289
314
  TriggerEventType = Shapes::StringShape.new(name: 'TriggerEventType')
@@ -297,6 +322,7 @@ module Aws::CodeDeploy
297
322
  UpdateDeploymentGroupOutput = Shapes::StructureShape.new(name: 'UpdateDeploymentGroupOutput')
298
323
  Value = Shapes::StringShape.new(name: 'Value')
299
324
  VersionId = Shapes::StringShape.new(name: 'VersionId')
325
+ WaitTimeInMins = Shapes::IntegerShape.new(name: 'WaitTimeInMins')
300
326
 
301
327
  AddTagsToOnPremisesInstancesInput.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, required: true, location_name: "tags"))
302
328
  AddTagsToOnPremisesInstancesInput.add_member(:instance_names, Shapes::ShapeRef.new(shape: InstanceNameList, required: true, location_name: "instanceNames"))
@@ -317,6 +343,7 @@ module Aws::CodeDeploy
317
343
  ApplicationInfo.add_member(:create_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "createTime"))
318
344
  ApplicationInfo.add_member(:linked_to_git_hub, Shapes::ShapeRef.new(shape: Boolean, location_name: "linkedToGitHub"))
319
345
  ApplicationInfo.add_member(:git_hub_account_name, Shapes::ShapeRef.new(shape: GitHubAccountTokenName, location_name: "gitHubAccountName"))
346
+ ApplicationInfo.add_member(:compute_platform, Shapes::ShapeRef.new(shape: ComputePlatform, location_name: "computePlatform"))
320
347
  ApplicationInfo.struct_class = Types::ApplicationInfo
321
348
 
322
349
  ApplicationsInfoList.member = Shapes::ShapeRef.new(shape: ApplicationInfo)
@@ -346,7 +373,7 @@ module Aws::CodeDeploy
346
373
  BatchGetApplicationRevisionsOutput.add_member(:revisions, Shapes::ShapeRef.new(shape: RevisionInfoList, location_name: "revisions"))
347
374
  BatchGetApplicationRevisionsOutput.struct_class = Types::BatchGetApplicationRevisionsOutput
348
375
 
349
- BatchGetApplicationsInput.add_member(:application_names, Shapes::ShapeRef.new(shape: ApplicationsList, location_name: "applicationNames"))
376
+ BatchGetApplicationsInput.add_member(:application_names, Shapes::ShapeRef.new(shape: ApplicationsList, required: true, location_name: "applicationNames"))
350
377
  BatchGetApplicationsInput.struct_class = Types::BatchGetApplicationsInput
351
378
 
352
379
  BatchGetApplicationsOutput.add_member(:applications_info, Shapes::ShapeRef.new(shape: ApplicationsInfoList, location_name: "applicationsInfo"))
@@ -368,13 +395,13 @@ module Aws::CodeDeploy
368
395
  BatchGetDeploymentInstancesOutput.add_member(:error_message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "errorMessage"))
369
396
  BatchGetDeploymentInstancesOutput.struct_class = Types::BatchGetDeploymentInstancesOutput
370
397
 
371
- BatchGetDeploymentsInput.add_member(:deployment_ids, Shapes::ShapeRef.new(shape: DeploymentsList, location_name: "deploymentIds"))
398
+ BatchGetDeploymentsInput.add_member(:deployment_ids, Shapes::ShapeRef.new(shape: DeploymentsList, required: true, location_name: "deploymentIds"))
372
399
  BatchGetDeploymentsInput.struct_class = Types::BatchGetDeploymentsInput
373
400
 
374
401
  BatchGetDeploymentsOutput.add_member(:deployments_info, Shapes::ShapeRef.new(shape: DeploymentsInfoList, location_name: "deploymentsInfo"))
375
402
  BatchGetDeploymentsOutput.struct_class = Types::BatchGetDeploymentsOutput
376
403
 
377
- BatchGetOnPremisesInstancesInput.add_member(:instance_names, Shapes::ShapeRef.new(shape: InstanceNameList, location_name: "instanceNames"))
404
+ BatchGetOnPremisesInstancesInput.add_member(:instance_names, Shapes::ShapeRef.new(shape: InstanceNameList, required: true, location_name: "instanceNames"))
378
405
  BatchGetOnPremisesInstancesInput.struct_class = Types::BatchGetOnPremisesInstancesInput
379
406
 
380
407
  BatchGetOnPremisesInstancesOutput.add_member(:instance_infos, Shapes::ShapeRef.new(shape: InstanceInfoList, location_name: "instanceInfos"))
@@ -393,6 +420,7 @@ module Aws::CodeDeploy
393
420
  ContinueDeploymentInput.struct_class = Types::ContinueDeploymentInput
394
421
 
395
422
  CreateApplicationInput.add_member(:application_name, Shapes::ShapeRef.new(shape: ApplicationName, required: true, location_name: "applicationName"))
423
+ CreateApplicationInput.add_member(:compute_platform, Shapes::ShapeRef.new(shape: ComputePlatform, location_name: "computePlatform"))
396
424
  CreateApplicationInput.struct_class = Types::CreateApplicationInput
397
425
 
398
426
  CreateApplicationOutput.add_member(:application_id, Shapes::ShapeRef.new(shape: ApplicationId, location_name: "applicationId"))
@@ -400,6 +428,8 @@ module Aws::CodeDeploy
400
428
 
401
429
  CreateDeploymentConfigInput.add_member(:deployment_config_name, Shapes::ShapeRef.new(shape: DeploymentConfigName, required: true, location_name: "deploymentConfigName"))
402
430
  CreateDeploymentConfigInput.add_member(:minimum_healthy_hosts, Shapes::ShapeRef.new(shape: MinimumHealthyHosts, required: true, location_name: "minimumHealthyHosts"))
431
+ CreateDeploymentConfigInput.add_member(:traffic_routing_config, Shapes::ShapeRef.new(shape: TrafficRoutingConfig, location_name: "trafficRoutingConfig"))
432
+ CreateDeploymentConfigInput.add_member(:compute_platform, Shapes::ShapeRef.new(shape: ComputePlatform, location_name: "computePlatform"))
403
433
  CreateDeploymentConfigInput.struct_class = Types::CreateDeploymentConfigInput
404
434
 
405
435
  CreateDeploymentConfigOutput.add_member(:deployment_config_id, Shapes::ShapeRef.new(shape: DeploymentConfigId, location_name: "deploymentConfigId"))
@@ -457,6 +487,8 @@ module Aws::CodeDeploy
457
487
  DeploymentConfigInfo.add_member(:deployment_config_name, Shapes::ShapeRef.new(shape: DeploymentConfigName, location_name: "deploymentConfigName"))
458
488
  DeploymentConfigInfo.add_member(:minimum_healthy_hosts, Shapes::ShapeRef.new(shape: MinimumHealthyHosts, location_name: "minimumHealthyHosts"))
459
489
  DeploymentConfigInfo.add_member(:create_time, Shapes::ShapeRef.new(shape: Timestamp, location_name: "createTime"))
490
+ DeploymentConfigInfo.add_member(:compute_platform, Shapes::ShapeRef.new(shape: ComputePlatform, location_name: "computePlatform"))
491
+ DeploymentConfigInfo.add_member(:traffic_routing_config, Shapes::ShapeRef.new(shape: TrafficRoutingConfig, location_name: "trafficRoutingConfig"))
460
492
  DeploymentConfigInfo.struct_class = Types::DeploymentConfigInfo
461
493
 
462
494
  DeploymentConfigsList.member = Shapes::ShapeRef.new(shape: DeploymentConfigName)
@@ -480,6 +512,7 @@ module Aws::CodeDeploy
480
512
  DeploymentGroupInfo.add_member(:last_attempted_deployment, Shapes::ShapeRef.new(shape: LastDeploymentInfo, location_name: "lastAttemptedDeployment"))
481
513
  DeploymentGroupInfo.add_member(:ec2_tag_set, Shapes::ShapeRef.new(shape: EC2TagSet, location_name: "ec2TagSet"))
482
514
  DeploymentGroupInfo.add_member(:on_premises_tag_set, Shapes::ShapeRef.new(shape: OnPremisesTagSet, location_name: "onPremisesTagSet"))
515
+ DeploymentGroupInfo.add_member(:compute_platform, Shapes::ShapeRef.new(shape: ComputePlatform, location_name: "computePlatform"))
483
516
  DeploymentGroupInfo.struct_class = Types::DeploymentGroupInfo
484
517
 
485
518
  DeploymentGroupInfoList.member = Shapes::ShapeRef.new(shape: DeploymentGroupInfo)
@@ -509,8 +542,10 @@ module Aws::CodeDeploy
509
542
  DeploymentInfo.add_member(:instance_termination_wait_time_started, Shapes::ShapeRef.new(shape: Boolean, location_name: "instanceTerminationWaitTimeStarted"))
510
543
  DeploymentInfo.add_member(:blue_green_deployment_configuration, Shapes::ShapeRef.new(shape: BlueGreenDeploymentConfiguration, location_name: "blueGreenDeploymentConfiguration"))
511
544
  DeploymentInfo.add_member(:load_balancer_info, Shapes::ShapeRef.new(shape: LoadBalancerInfo, location_name: "loadBalancerInfo"))
512
- DeploymentInfo.add_member(:additional_deployment_status_info, Shapes::ShapeRef.new(shape: AdditionalDeploymentStatusInfo, location_name: "additionalDeploymentStatusInfo"))
545
+ DeploymentInfo.add_member(:additional_deployment_status_info, Shapes::ShapeRef.new(shape: AdditionalDeploymentStatusInfo, deprecated: true, location_name: "additionalDeploymentStatusInfo"))
513
546
  DeploymentInfo.add_member(:file_exists_behavior, Shapes::ShapeRef.new(shape: FileExistsBehavior, location_name: "fileExistsBehavior"))
547
+ DeploymentInfo.add_member(:deployment_status_messages, Shapes::ShapeRef.new(shape: DeploymentStatusMessageList, location_name: "deploymentStatusMessages"))
548
+ DeploymentInfo.add_member(:compute_platform, Shapes::ShapeRef.new(shape: ComputePlatform, location_name: "computePlatform"))
514
549
  DeploymentInfo.struct_class = Types::DeploymentInfo
515
550
 
516
551
  DeploymentOverview.add_member(:pending, Shapes::ShapeRef.new(shape: InstanceCount, location_name: "Pending"))
@@ -527,6 +562,8 @@ module Aws::CodeDeploy
527
562
 
528
563
  DeploymentStatusList.member = Shapes::ShapeRef.new(shape: DeploymentStatus)
529
564
 
565
+ DeploymentStatusMessageList.member = Shapes::ShapeRef.new(shape: ErrorMessage)
566
+
530
567
  DeploymentStyle.add_member(:deployment_type, Shapes::ShapeRef.new(shape: DeploymentType, location_name: "deploymentType"))
531
568
  DeploymentStyle.add_member(:deployment_option, Shapes::ShapeRef.new(shape: DeploymentOption, location_name: "deploymentOption"))
532
569
  DeploymentStyle.struct_class = Types::DeploymentStyle
@@ -758,6 +795,18 @@ module Aws::CodeDeploy
758
795
 
759
796
  OnPremisesTagSetList.member = Shapes::ShapeRef.new(shape: TagFilterList)
760
797
 
798
+ PutLifecycleEventHookExecutionStatusInput.add_member(:deployment_id, Shapes::ShapeRef.new(shape: DeploymentId, location_name: "deploymentId"))
799
+ PutLifecycleEventHookExecutionStatusInput.add_member(:lifecycle_event_hook_execution_id, Shapes::ShapeRef.new(shape: LifecycleEventHookExecutionId, location_name: "lifecycleEventHookExecutionId"))
800
+ PutLifecycleEventHookExecutionStatusInput.add_member(:status, Shapes::ShapeRef.new(shape: LifecycleEventStatus, location_name: "status"))
801
+ PutLifecycleEventHookExecutionStatusInput.struct_class = Types::PutLifecycleEventHookExecutionStatusInput
802
+
803
+ PutLifecycleEventHookExecutionStatusOutput.add_member(:lifecycle_event_hook_execution_id, Shapes::ShapeRef.new(shape: LifecycleEventHookExecutionId, location_name: "lifecycleEventHookExecutionId"))
804
+ PutLifecycleEventHookExecutionStatusOutput.struct_class = Types::PutLifecycleEventHookExecutionStatusOutput
805
+
806
+ RawString.add_member(:content, Shapes::ShapeRef.new(shape: RawStringContent, location_name: "content"))
807
+ RawString.add_member(:sha256, Shapes::ShapeRef.new(shape: RawStringSha256, location_name: "sha256"))
808
+ RawString.struct_class = Types::RawString
809
+
761
810
  RegisterApplicationRevisionInput.add_member(:application_name, Shapes::ShapeRef.new(shape: ApplicationName, required: true, location_name: "applicationName"))
762
811
  RegisterApplicationRevisionInput.add_member(:description, Shapes::ShapeRef.new(shape: Description, location_name: "description"))
763
812
  RegisterApplicationRevisionInput.add_member(:revision, Shapes::ShapeRef.new(shape: RevisionLocation, required: true, location_name: "revision"))
@@ -781,6 +830,7 @@ module Aws::CodeDeploy
781
830
  RevisionLocation.add_member(:revision_type, Shapes::ShapeRef.new(shape: RevisionLocationType, location_name: "revisionType"))
782
831
  RevisionLocation.add_member(:s3_location, Shapes::ShapeRef.new(shape: S3Location, location_name: "s3Location"))
783
832
  RevisionLocation.add_member(:git_hub_location, Shapes::ShapeRef.new(shape: GitHubLocation, location_name: "gitHubLocation"))
833
+ RevisionLocation.add_member(:string, Shapes::ShapeRef.new(shape: RawString, location_name: "string"))
784
834
  RevisionLocation.struct_class = Types::RevisionLocation
785
835
 
786
836
  RevisionLocationList.member = Shapes::ShapeRef.new(shape: RevisionLocation)
@@ -831,10 +881,23 @@ module Aws::CodeDeploy
831
881
  TargetInstances.add_member(:ec2_tag_set, Shapes::ShapeRef.new(shape: EC2TagSet, location_name: "ec2TagSet"))
832
882
  TargetInstances.struct_class = Types::TargetInstances
833
883
 
884
+ TimeBasedCanary.add_member(:canary_percentage, Shapes::ShapeRef.new(shape: Percentage, location_name: "canaryPercentage"))
885
+ TimeBasedCanary.add_member(:canary_interval, Shapes::ShapeRef.new(shape: WaitTimeInMins, location_name: "canaryInterval"))
886
+ TimeBasedCanary.struct_class = Types::TimeBasedCanary
887
+
888
+ TimeBasedLinear.add_member(:linear_percentage, Shapes::ShapeRef.new(shape: Percentage, location_name: "linearPercentage"))
889
+ TimeBasedLinear.add_member(:linear_interval, Shapes::ShapeRef.new(shape: WaitTimeInMins, location_name: "linearInterval"))
890
+ TimeBasedLinear.struct_class = Types::TimeBasedLinear
891
+
834
892
  TimeRange.add_member(:start, Shapes::ShapeRef.new(shape: Timestamp, location_name: "start"))
835
893
  TimeRange.add_member(:end, Shapes::ShapeRef.new(shape: Timestamp, location_name: "end"))
836
894
  TimeRange.struct_class = Types::TimeRange
837
895
 
896
+ TrafficRoutingConfig.add_member(:type, Shapes::ShapeRef.new(shape: TrafficRoutingType, location_name: "type"))
897
+ TrafficRoutingConfig.add_member(:time_based_canary, Shapes::ShapeRef.new(shape: TimeBasedCanary, location_name: "timeBasedCanary"))
898
+ TrafficRoutingConfig.add_member(:time_based_linear, Shapes::ShapeRef.new(shape: TimeBasedLinear, location_name: "timeBasedLinear"))
899
+ TrafficRoutingConfig.struct_class = Types::TrafficRoutingConfig
900
+
838
901
  TriggerConfig.add_member(:trigger_name, Shapes::ShapeRef.new(shape: TriggerName, location_name: "triggerName"))
839
902
  TriggerConfig.add_member(:trigger_target_arn, Shapes::ShapeRef.new(shape: TriggerTargetArn, location_name: "triggerTargetArn"))
840
903
  TriggerConfig.add_member(:trigger_events, Shapes::ShapeRef.new(shape: TriggerEventTypeList, location_name: "triggerEvents"))
@@ -999,6 +1062,7 @@ module Aws::CodeDeploy
999
1062
  o.errors << Shapes::ShapeRef.new(shape: InvalidApplicationNameException)
1000
1063
  o.errors << Shapes::ShapeRef.new(shape: ApplicationAlreadyExistsException)
1001
1064
  o.errors << Shapes::ShapeRef.new(shape: ApplicationLimitExceededException)
1065
+ o.errors << Shapes::ShapeRef.new(shape: InvalidComputePlatformException)
1002
1066
  end)
1003
1067
 
1004
1068
  api.add_operation(:create_deployment, Seahorse::Model::Operation.new.tap do |o|
@@ -1024,6 +1088,11 @@ module Aws::CodeDeploy
1024
1088
  o.errors << Shapes::ShapeRef.new(shape: InvalidAutoRollbackConfigException)
1025
1089
  o.errors << Shapes::ShapeRef.new(shape: InvalidLoadBalancerInfoException)
1026
1090
  o.errors << Shapes::ShapeRef.new(shape: InvalidFileExistsBehaviorException)
1091
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRoleException)
1092
+ o.errors << Shapes::ShapeRef.new(shape: InvalidAutoScalingGroupException)
1093
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
1094
+ o.errors << Shapes::ShapeRef.new(shape: InvalidUpdateOutdatedInstancesOnlyValueException)
1095
+ o.errors << Shapes::ShapeRef.new(shape: InvalidIgnoreApplicationStopFailuresValueException)
1027
1096
  end)
1028
1097
 
1029
1098
  api.add_operation(:create_deployment_config, Seahorse::Model::Operation.new.tap do |o|
@@ -1037,6 +1106,8 @@ module Aws::CodeDeploy
1037
1106
  o.errors << Shapes::ShapeRef.new(shape: DeploymentConfigAlreadyExistsException)
1038
1107
  o.errors << Shapes::ShapeRef.new(shape: InvalidMinimumHealthyHostValueException)
1039
1108
  o.errors << Shapes::ShapeRef.new(shape: DeploymentConfigLimitExceededException)
1109
+ o.errors << Shapes::ShapeRef.new(shape: InvalidComputePlatformException)
1110
+ o.errors << Shapes::ShapeRef.new(shape: InvalidTrafficRoutingConfigurationException)
1040
1111
  end)
1041
1112
 
1042
1113
  api.add_operation(:create_deployment_group, Seahorse::Model::Operation.new.tap do |o|
@@ -1071,6 +1142,7 @@ module Aws::CodeDeploy
1071
1142
  o.errors << Shapes::ShapeRef.new(shape: InvalidEC2TagCombinationException)
1072
1143
  o.errors << Shapes::ShapeRef.new(shape: InvalidOnPremisesTagCombinationException)
1073
1144
  o.errors << Shapes::ShapeRef.new(shape: TagSetListLimitExceededException)
1145
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
1074
1146
  end)
1075
1147
 
1076
1148
  api.add_operation(:delete_application, Seahorse::Model::Operation.new.tap do |o|
@@ -1323,6 +1395,7 @@ module Aws::CodeDeploy
1323
1395
  o.output = Shapes::ShapeRef.new(shape: ListGitHubAccountTokenNamesOutput)
1324
1396
  o.errors << Shapes::ShapeRef.new(shape: InvalidNextTokenException)
1325
1397
  o.errors << Shapes::ShapeRef.new(shape: ResourceValidationException)
1398
+ o.errors << Shapes::ShapeRef.new(shape: OperationNotSupportedException)
1326
1399
  end)
1327
1400
 
1328
1401
  api.add_operation(:list_on_premises_instances, Seahorse::Model::Operation.new.tap do |o|
@@ -1336,6 +1409,21 @@ module Aws::CodeDeploy
1336
1409
  o.errors << Shapes::ShapeRef.new(shape: InvalidNextTokenException)
1337
1410
  end)
1338
1411
 
1412
+ api.add_operation(:put_lifecycle_event_hook_execution_status, Seahorse::Model::Operation.new.tap do |o|
1413
+ o.name = "PutLifecycleEventHookExecutionStatus"
1414
+ o.http_method = "POST"
1415
+ o.http_request_uri = "/"
1416
+ o.input = Shapes::ShapeRef.new(shape: PutLifecycleEventHookExecutionStatusInput)
1417
+ o.output = Shapes::ShapeRef.new(shape: PutLifecycleEventHookExecutionStatusOutput)
1418
+ o.errors << Shapes::ShapeRef.new(shape: InvalidLifecycleEventHookExecutionStatusException)
1419
+ o.errors << Shapes::ShapeRef.new(shape: InvalidLifecycleEventHookExecutionIdException)
1420
+ o.errors << Shapes::ShapeRef.new(shape: LifecycleEventAlreadyCompletedException)
1421
+ o.errors << Shapes::ShapeRef.new(shape: DeploymentIdRequiredException)
1422
+ o.errors << Shapes::ShapeRef.new(shape: DeploymentDoesNotExistException)
1423
+ o.errors << Shapes::ShapeRef.new(shape: InvalidDeploymentIdException)
1424
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedActionForDeploymentTypeException)
1425
+ end)
1426
+
1339
1427
  api.add_operation(:register_application_revision, Seahorse::Model::Operation.new.tap do |o|
1340
1428
  o.name = "RegisterApplicationRevision"
1341
1429
  o.http_method = "POST"
@@ -1451,6 +1539,7 @@ module Aws::CodeDeploy
1451
1539
  o.errors << Shapes::ShapeRef.new(shape: InvalidEC2TagCombinationException)
1452
1540
  o.errors << Shapes::ShapeRef.new(shape: InvalidOnPremisesTagCombinationException)
1453
1541
  o.errors << Shapes::ShapeRef.new(shape: TagSetListLimitExceededException)
1542
+ o.errors << Shapes::ShapeRef.new(shape: InvalidInputException)
1454
1543
  end)
1455
1544
  end
1456
1545
 
@@ -132,6 +132,11 @@ module Aws::CodeDeploy
132
132
  # The name for a connection to a GitHub account.
133
133
  # @return [String]
134
134
  #
135
+ # @!attribute [rw] compute_platform
136
+ # The destination platform type for deployment of the application
137
+ # (`Lambda` or `Server`).
138
+ # @return [String]
139
+ #
135
140
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/ApplicationInfo AWS API Documentation
136
141
  #
137
142
  class ApplicationInfo < Struct.new(
@@ -139,7 +144,8 @@ module Aws::CodeDeploy
139
144
  :application_name,
140
145
  :create_time,
141
146
  :linked_to_git_hub,
142
- :git_hub_account_name)
147
+ :git_hub_account_name,
148
+ :compute_platform)
143
149
  include Aws::Structure
144
150
  end
145
151
 
@@ -199,11 +205,11 @@ module Aws::CodeDeploy
199
205
  # application_name: "ApplicationName", # required
200
206
  # revisions: [ # required
201
207
  # {
202
- # revision_type: "S3", # accepts S3, GitHub
208
+ # revision_type: "S3", # accepts S3, GitHub, String
203
209
  # s3_location: {
204
210
  # bucket: "S3Bucket",
205
211
  # key: "S3Key",
206
- # bundle_type: "tar", # accepts tar, tgz, zip
212
+ # bundle_type: "tar", # accepts tar, tgz, zip, YAML, JSON
207
213
  # version: "VersionId",
208
214
  # e_tag: "ETag",
209
215
  # },
@@ -211,6 +217,10 @@ module Aws::CodeDeploy
211
217
  # repository: "Repository",
212
218
  # commit_id: "CommitId",
213
219
  # },
220
+ # string: {
221
+ # content: "RawStringContent",
222
+ # sha256: "RawStringSha256",
223
+ # },
214
224
  # },
215
225
  # ],
216
226
  # }
@@ -263,7 +273,7 @@ module Aws::CodeDeploy
263
273
  # data as a hash:
264
274
  #
265
275
  # {
266
- # application_names: ["ApplicationName"],
276
+ # application_names: ["ApplicationName"], # required
267
277
  # }
268
278
  #
269
279
  # @!attribute [rw] application_names
@@ -385,7 +395,7 @@ module Aws::CodeDeploy
385
395
  # data as a hash:
386
396
  #
387
397
  # {
388
- # deployment_ids: ["DeploymentId"],
398
+ # deployment_ids: ["DeploymentId"], # required
389
399
  # }
390
400
  #
391
401
  # @!attribute [rw] deployment_ids
@@ -418,7 +428,7 @@ module Aws::CodeDeploy
418
428
  # data as a hash:
419
429
  #
420
430
  # {
421
- # instance_names: ["InstanceName"],
431
+ # instance_names: ["InstanceName"], # required
422
432
  # }
423
433
  #
424
434
  # @!attribute [rw] instance_names
@@ -552,6 +562,7 @@ module Aws::CodeDeploy
552
562
  #
553
563
  # {
554
564
  # application_name: "ApplicationName", # required
565
+ # compute_platform: "Server", # accepts Server, Lambda
555
566
  # }
556
567
  #
557
568
  # @!attribute [rw] application_name
@@ -559,10 +570,16 @@ module Aws::CodeDeploy
559
570
  # applicable IAM user or AWS account.
560
571
  # @return [String]
561
572
  #
573
+ # @!attribute [rw] compute_platform
574
+ # The destination platform type for the deployment `Lambda` or
575
+ # `Server`).
576
+ # @return [String]
577
+ #
562
578
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/CreateApplicationInput AWS API Documentation
563
579
  #
564
580
  class CreateApplicationInput < Struct.new(
565
- :application_name)
581
+ :application_name,
582
+ :compute_platform)
566
583
  include Aws::Structure
567
584
  end
568
585
 
@@ -590,6 +607,18 @@ module Aws::CodeDeploy
590
607
  # value: 1,
591
608
  # type: "HOST_COUNT", # accepts HOST_COUNT, FLEET_PERCENT
592
609
  # },
610
+ # traffic_routing_config: {
611
+ # type: "TimeBasedCanary", # accepts TimeBasedCanary, TimeBasedLinear, AllAtOnce
612
+ # time_based_canary: {
613
+ # canary_percentage: 1,
614
+ # canary_interval: 1,
615
+ # },
616
+ # time_based_linear: {
617
+ # linear_percentage: 1,
618
+ # linear_interval: 1,
619
+ # },
620
+ # },
621
+ # compute_platform: "Server", # accepts Server, Lambda
593
622
  # }
594
623
  #
595
624
  # @!attribute [rw] deployment_config_name
@@ -619,11 +648,23 @@ module Aws::CodeDeploy
619
648
  # type of FLEET\_PERCENT and a value of 95.
620
649
  # @return [Types::MinimumHealthyHosts]
621
650
  #
651
+ # @!attribute [rw] traffic_routing_config
652
+ # The configuration specifying how the deployment traffic will be
653
+ # routed.
654
+ # @return [Types::TrafficRoutingConfig]
655
+ #
656
+ # @!attribute [rw] compute_platform
657
+ # The destination platform type for the deployment (`Lambda` or
658
+ # `Server`&gt;).
659
+ # @return [String]
660
+ #
622
661
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/CreateDeploymentConfigInput AWS API Documentation
623
662
  #
624
663
  class CreateDeploymentConfigInput < Struct.new(
625
664
  :deployment_config_name,
626
- :minimum_healthy_hosts)
665
+ :minimum_healthy_hosts,
666
+ :traffic_routing_config,
667
+ :compute_platform)
627
668
  include Aws::Structure
628
669
  end
629
670
 
@@ -878,11 +919,11 @@ module Aws::CodeDeploy
878
919
  # application_name: "ApplicationName", # required
879
920
  # deployment_group_name: "DeploymentGroupName",
880
921
  # revision: {
881
- # revision_type: "S3", # accepts S3, GitHub
922
+ # revision_type: "S3", # accepts S3, GitHub, String
882
923
  # s3_location: {
883
924
  # bucket: "S3Bucket",
884
925
  # key: "S3Key",
885
- # bundle_type: "tar", # accepts tar, tgz, zip
926
+ # bundle_type: "tar", # accepts tar, tgz, zip, YAML, JSON
886
927
  # version: "VersionId",
887
928
  # e_tag: "ETag",
888
929
  # },
@@ -890,6 +931,10 @@ module Aws::CodeDeploy
890
931
  # repository: "Repository",
891
932
  # commit_id: "CommitId",
892
933
  # },
934
+ # string: {
935
+ # content: "RawStringContent",
936
+ # sha256: "RawStringSha256",
937
+ # },
893
938
  # },
894
939
  # deployment_config_name: "DeploymentConfigName",
895
940
  # description: "Description",
@@ -1133,13 +1178,26 @@ module Aws::CodeDeploy
1133
1178
  # The time at which the deployment configuration was created.
1134
1179
  # @return [Time]
1135
1180
  #
1181
+ # @!attribute [rw] compute_platform
1182
+ # The destination platform type for the deployment (`Lambda` or
1183
+ # `Server`).
1184
+ # @return [String]
1185
+ #
1186
+ # @!attribute [rw] traffic_routing_config
1187
+ # The configuration specifying how the deployment traffic will be
1188
+ # routed. Only deployments with a Lambda compute platform can specify
1189
+ # this.
1190
+ # @return [Types::TrafficRoutingConfig]
1191
+ #
1136
1192
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/DeploymentConfigInfo AWS API Documentation
1137
1193
  #
1138
1194
  class DeploymentConfigInfo < Struct.new(
1139
1195
  :deployment_config_id,
1140
1196
  :deployment_config_name,
1141
1197
  :minimum_healthy_hosts,
1142
- :create_time)
1198
+ :create_time,
1199
+ :compute_platform,
1200
+ :traffic_routing_config)
1143
1201
  include Aws::Structure
1144
1202
  end
1145
1203
 
@@ -1235,6 +1293,11 @@ module Aws::CodeDeploy
1235
1293
  # onPremisesInstanceTagFilters.
1236
1294
  # @return [Types::OnPremisesTagSet]
1237
1295
  #
1296
+ # @!attribute [rw] compute_platform
1297
+ # The destination platform type for the deployment group (`Lambda` or
1298
+ # `Server`).
1299
+ # @return [String]
1300
+ #
1238
1301
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/DeploymentGroupInfo AWS API Documentation
1239
1302
  #
1240
1303
  class DeploymentGroupInfo < Struct.new(
@@ -1256,7 +1319,8 @@ module Aws::CodeDeploy
1256
1319
  :last_successful_deployment,
1257
1320
  :last_attempted_deployment,
1258
1321
  :ec2_tag_set,
1259
- :on_premises_tag_set)
1322
+ :on_premises_tag_set,
1323
+ :compute_platform)
1260
1324
  include Aws::Structure
1261
1325
  end
1262
1326
 
@@ -1408,6 +1472,15 @@ module Aws::CodeDeploy
1408
1472
  # and used as part of the new deployment.
1409
1473
  # @return [String]
1410
1474
  #
1475
+ # @!attribute [rw] deployment_status_messages
1476
+ # Messages that contain information about the status of a deployment.
1477
+ # @return [Array<String>]
1478
+ #
1479
+ # @!attribute [rw] compute_platform
1480
+ # The destination platform type for the deployment (`Lambda` or
1481
+ # `Server`).
1482
+ # @return [String]
1483
+ #
1411
1484
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/DeploymentInfo AWS API Documentation
1412
1485
  #
1413
1486
  class DeploymentInfo < Struct.new(
@@ -1435,7 +1508,9 @@ module Aws::CodeDeploy
1435
1508
  :blue_green_deployment_configuration,
1436
1509
  :load_balancer_info,
1437
1510
  :additional_deployment_status_info,
1438
- :file_exists_behavior)
1511
+ :file_exists_behavior,
1512
+ :deployment_status_messages,
1513
+ :compute_platform)
1439
1514
  include Aws::Structure
1440
1515
  end
1441
1516
 
@@ -1700,7 +1775,7 @@ module Aws::CodeDeploy
1700
1775
  # For blue/green deployments, the name of the load balancer that will
1701
1776
  # be used to route traffic from original instances to replacement
1702
1777
  # instances in a blue/green deployment. For in-place deployments, the
1703
- # name of the load balancer that instances are deregistered from, so
1778
+ # name of the load balancer that instances are deregistered from so
1704
1779
  # they are not serving traffic during a deployment, and then
1705
1780
  # re-registered with after the deployment completes.
1706
1781
  # @return [String]
@@ -1852,11 +1927,11 @@ module Aws::CodeDeploy
1852
1927
  # {
1853
1928
  # application_name: "ApplicationName", # required
1854
1929
  # revision: { # required
1855
- # revision_type: "S3", # accepts S3, GitHub
1930
+ # revision_type: "S3", # accepts S3, GitHub, String
1856
1931
  # s3_location: {
1857
1932
  # bucket: "S3Bucket",
1858
1933
  # key: "S3Key",
1859
- # bundle_type: "tar", # accepts tar, tgz, zip
1934
+ # bundle_type: "tar", # accepts tar, tgz, zip, YAML, JSON
1860
1935
  # version: "VersionId",
1861
1936
  # e_tag: "ETag",
1862
1937
  # },
@@ -1864,6 +1939,10 @@ module Aws::CodeDeploy
1864
1939
  # repository: "Repository",
1865
1940
  # commit_id: "CommitId",
1866
1941
  # },
1942
+ # string: {
1943
+ # content: "RawStringContent",
1944
+ # sha256: "RawStringSha256",
1945
+ # },
1867
1946
  # },
1868
1947
  # }
1869
1948
  #
@@ -2977,6 +3056,83 @@ module Aws::CodeDeploy
2977
3056
  include Aws::Structure
2978
3057
  end
2979
3058
 
3059
+ # @note When making an API call, you may pass PutLifecycleEventHookExecutionStatusInput
3060
+ # data as a hash:
3061
+ #
3062
+ # {
3063
+ # deployment_id: "DeploymentId",
3064
+ # lifecycle_event_hook_execution_id: "LifecycleEventHookExecutionId",
3065
+ # status: "Pending", # accepts Pending, InProgress, Succeeded, Failed, Skipped, Unknown
3066
+ # }
3067
+ #
3068
+ # @!attribute [rw] deployment_id
3069
+ # The ID of the deployment. Pass this ID to a Lambda function that
3070
+ # validates a deployment lifecycle event.
3071
+ # @return [String]
3072
+ #
3073
+ # @!attribute [rw] lifecycle_event_hook_execution_id
3074
+ # The execution ID of a deployment's lifecycle hook. A deployment
3075
+ # lifecycle hook is specified in the `hooks` section of the AppSpec
3076
+ # file.
3077
+ # @return [String]
3078
+ #
3079
+ # @!attribute [rw] status
3080
+ # The result of a Lambda function that validates a deployment
3081
+ # lifecycle event (`Succeeded` or `Failed`).
3082
+ # @return [String]
3083
+ #
3084
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/PutLifecycleEventHookExecutionStatusInput AWS API Documentation
3085
+ #
3086
+ class PutLifecycleEventHookExecutionStatusInput < Struct.new(
3087
+ :deployment_id,
3088
+ :lifecycle_event_hook_execution_id,
3089
+ :status)
3090
+ include Aws::Structure
3091
+ end
3092
+
3093
+ # @!attribute [rw] lifecycle_event_hook_execution_id
3094
+ # The execution ID of the lifecycle event hook. A hook is specified in
3095
+ # the `hooks` section of the deployment's AppSpec file.
3096
+ # @return [String]
3097
+ #
3098
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/PutLifecycleEventHookExecutionStatusOutput AWS API Documentation
3099
+ #
3100
+ class PutLifecycleEventHookExecutionStatusOutput < Struct.new(
3101
+ :lifecycle_event_hook_execution_id)
3102
+ include Aws::Structure
3103
+ end
3104
+
3105
+ # A revision for an AWS Lambda deployment that is a YAML-formatted or
3106
+ # JSON-formatted string. For AWS Lambda deployments, the revision is the
3107
+ # same as the AppSpec file.
3108
+ #
3109
+ # @note When making an API call, you may pass RawString
3110
+ # data as a hash:
3111
+ #
3112
+ # {
3113
+ # content: "RawStringContent",
3114
+ # sha256: "RawStringSha256",
3115
+ # }
3116
+ #
3117
+ # @!attribute [rw] content
3118
+ # The YAML-formatted or JSON-formatted revision string. It includes
3119
+ # information about what Lambda function to update and optional Lambda
3120
+ # functions that validate deployment lifecycle events.
3121
+ # @return [String]
3122
+ #
3123
+ # @!attribute [rw] sha256
3124
+ # The SHA256 hash value of the revision that is specified as a
3125
+ # RawString.
3126
+ # @return [String]
3127
+ #
3128
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/RawString AWS API Documentation
3129
+ #
3130
+ class RawString < Struct.new(
3131
+ :content,
3132
+ :sha256)
3133
+ include Aws::Structure
3134
+ end
3135
+
2980
3136
  # Represents the input of a RegisterApplicationRevision operation.
2981
3137
  #
2982
3138
  # @note When making an API call, you may pass RegisterApplicationRevisionInput
@@ -2986,11 +3142,11 @@ module Aws::CodeDeploy
2986
3142
  # application_name: "ApplicationName", # required
2987
3143
  # description: "Description",
2988
3144
  # revision: { # required
2989
- # revision_type: "S3", # accepts S3, GitHub
3145
+ # revision_type: "S3", # accepts S3, GitHub, String
2990
3146
  # s3_location: {
2991
3147
  # bucket: "S3Bucket",
2992
3148
  # key: "S3Key",
2993
- # bundle_type: "tar", # accepts tar, tgz, zip
3149
+ # bundle_type: "tar", # accepts tar, tgz, zip, YAML, JSON
2994
3150
  # version: "VersionId",
2995
3151
  # e_tag: "ETag",
2996
3152
  # },
@@ -2998,6 +3154,10 @@ module Aws::CodeDeploy
2998
3154
  # repository: "Repository",
2999
3155
  # commit_id: "CommitId",
3000
3156
  # },
3157
+ # string: {
3158
+ # content: "RawStringContent",
3159
+ # sha256: "RawStringSha256",
3160
+ # },
3001
3161
  # },
3002
3162
  # }
3003
3163
  #
@@ -3113,11 +3273,11 @@ module Aws::CodeDeploy
3113
3273
  # data as a hash:
3114
3274
  #
3115
3275
  # {
3116
- # revision_type: "S3", # accepts S3, GitHub
3276
+ # revision_type: "S3", # accepts S3, GitHub, String
3117
3277
  # s3_location: {
3118
3278
  # bucket: "S3Bucket",
3119
3279
  # key: "S3Key",
3120
- # bundle_type: "tar", # accepts tar, tgz, zip
3280
+ # bundle_type: "tar", # accepts tar, tgz, zip, YAML, JSON
3121
3281
  # version: "VersionId",
3122
3282
  # e_tag: "ETag",
3123
3283
  # },
@@ -3125,6 +3285,10 @@ module Aws::CodeDeploy
3125
3285
  # repository: "Repository",
3126
3286
  # commit_id: "CommitId",
3127
3287
  # },
3288
+ # string: {
3289
+ # content: "RawStringContent",
3290
+ # sha256: "RawStringSha256",
3291
+ # },
3128
3292
  # }
3129
3293
  #
3130
3294
  # @!attribute [rw] revision_type
@@ -3132,12 +3296,15 @@ module Aws::CodeDeploy
3132
3296
  #
3133
3297
  # * S3: An application revision stored in Amazon S3.
3134
3298
  #
3135
- # * GitHub: An application revision stored in GitHub.
3299
+ # * GitHub: An application revision stored in GitHub (EC2/On-premises
3300
+ # deployments only)
3301
+ #
3302
+ # * String: A YAML-formatted or JSON-formatted string (AWS Lambda
3303
+ # deployments only)
3136
3304
  # @return [String]
3137
3305
  #
3138
3306
  # @!attribute [rw] s3_location
3139
- # Information about the location of application artifacts stored in
3140
- # Amazon S3.
3307
+ # Information about the location of a revision stored in Amazon S3.
3141
3308
  # @return [Types::S3Location]
3142
3309
  #
3143
3310
  # @!attribute [rw] git_hub_location
@@ -3145,12 +3312,18 @@ module Aws::CodeDeploy
3145
3312
  # GitHub.
3146
3313
  # @return [Types::GitHubLocation]
3147
3314
  #
3315
+ # @!attribute [rw] string
3316
+ # Information about the location of an AWS Lambda deployment revision
3317
+ # stored as a RawString.
3318
+ # @return [Types::RawString]
3319
+ #
3148
3320
  # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/RevisionLocation AWS API Documentation
3149
3321
  #
3150
3322
  class RevisionLocation < Struct.new(
3151
3323
  :revision_type,
3152
3324
  :s3_location,
3153
- :git_hub_location)
3325
+ :git_hub_location,
3326
+ :string)
3154
3327
  include Aws::Structure
3155
3328
  end
3156
3329
 
@@ -3189,7 +3362,7 @@ module Aws::CodeDeploy
3189
3362
  # {
3190
3363
  # bucket: "S3Bucket",
3191
3364
  # key: "S3Key",
3192
- # bundle_type: "tar", # accepts tar, tgz, zip
3365
+ # bundle_type: "tar", # accepts tar, tgz, zip, YAML, JSON
3193
3366
  # version: "VersionId",
3194
3367
  # e_tag: "ETag",
3195
3368
  # }
@@ -3458,6 +3631,67 @@ module Aws::CodeDeploy
3458
3631
  include Aws::Structure
3459
3632
  end
3460
3633
 
3634
+ # A configuration that shifts traffic from one version of a Lambda
3635
+ # function to another in two increments. The original and target Lambda
3636
+ # function versions are specified in the deployment's AppSpec file.
3637
+ #
3638
+ # @note When making an API call, you may pass TimeBasedCanary
3639
+ # data as a hash:
3640
+ #
3641
+ # {
3642
+ # canary_percentage: 1,
3643
+ # canary_interval: 1,
3644
+ # }
3645
+ #
3646
+ # @!attribute [rw] canary_percentage
3647
+ # The percentage of traffic to shift in the first increment of a
3648
+ # `TimeBasedCanary` deployment.
3649
+ # @return [Integer]
3650
+ #
3651
+ # @!attribute [rw] canary_interval
3652
+ # The number of minutes between the first and second traffic shifts of
3653
+ # a `TimeBasedCanary` deployment.
3654
+ # @return [Integer]
3655
+ #
3656
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/TimeBasedCanary AWS API Documentation
3657
+ #
3658
+ class TimeBasedCanary < Struct.new(
3659
+ :canary_percentage,
3660
+ :canary_interval)
3661
+ include Aws::Structure
3662
+ end
3663
+
3664
+ # A configuration that shifts traffic from one version of a Lambda
3665
+ # function to another in equal increments, with an equal number of
3666
+ # minutes between each increment. The original and target Lambda
3667
+ # function versions are specified in the deployment's AppSpec file.
3668
+ #
3669
+ # @note When making an API call, you may pass TimeBasedLinear
3670
+ # data as a hash:
3671
+ #
3672
+ # {
3673
+ # linear_percentage: 1,
3674
+ # linear_interval: 1,
3675
+ # }
3676
+ #
3677
+ # @!attribute [rw] linear_percentage
3678
+ # The percentage of traffic that is shifted at the start of each
3679
+ # increment of a `TimeBasedLinear` deployment.
3680
+ # @return [Integer]
3681
+ #
3682
+ # @!attribute [rw] linear_interval
3683
+ # The number of minutes between each incremental traffic shift of a
3684
+ # `TimeBasedLinear` deployment.
3685
+ # @return [Integer]
3686
+ #
3687
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/TimeBasedLinear AWS API Documentation
3688
+ #
3689
+ class TimeBasedLinear < Struct.new(
3690
+ :linear_percentage,
3691
+ :linear_interval)
3692
+ include Aws::Structure
3693
+ end
3694
+
3461
3695
  # Information about a time range.
3462
3696
  #
3463
3697
  # @note When making an API call, you may pass TimeRange
@@ -3492,6 +3726,53 @@ module Aws::CodeDeploy
3492
3726
  include Aws::Structure
3493
3727
  end
3494
3728
 
3729
+ # The configuration specifying how traffic is shifted from one version
3730
+ # of a Lambda function to another version during an AWS Lambda
3731
+ # deployment.
3732
+ #
3733
+ # @note When making an API call, you may pass TrafficRoutingConfig
3734
+ # data as a hash:
3735
+ #
3736
+ # {
3737
+ # type: "TimeBasedCanary", # accepts TimeBasedCanary, TimeBasedLinear, AllAtOnce
3738
+ # time_based_canary: {
3739
+ # canary_percentage: 1,
3740
+ # canary_interval: 1,
3741
+ # },
3742
+ # time_based_linear: {
3743
+ # linear_percentage: 1,
3744
+ # linear_interval: 1,
3745
+ # },
3746
+ # }
3747
+ #
3748
+ # @!attribute [rw] type
3749
+ # The type of traffic shifting a deployment configuration uses
3750
+ # (`TimeBasedCanary` or `TimeBasedLinear`).
3751
+ # @return [String]
3752
+ #
3753
+ # @!attribute [rw] time_based_canary
3754
+ # A configuration that shifts traffic from one version of a Lambda
3755
+ # function to another in two increments. The original and target
3756
+ # Lambda function versions are specified in the deployment's AppSpec
3757
+ # file.
3758
+ # @return [Types::TimeBasedCanary]
3759
+ #
3760
+ # @!attribute [rw] time_based_linear
3761
+ # A configuration that shifts traffic from one version of a Lambda
3762
+ # function to another in equal increments, with an equal number of
3763
+ # minutes between each increment. The original and target Lambda
3764
+ # function versions are specified in the deployment's AppSpec file.
3765
+ # @return [Types::TimeBasedLinear]
3766
+ #
3767
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/TrafficRoutingConfig AWS API Documentation
3768
+ #
3769
+ class TrafficRoutingConfig < Struct.new(
3770
+ :type,
3771
+ :time_based_canary,
3772
+ :time_based_linear)
3773
+ include Aws::Structure
3774
+ end
3775
+
3495
3776
  # Information about notification triggers for the deployment group.
3496
3777
  #
3497
3778
  # @note When making an API call, you may pass TriggerConfig