aws-sdk-imagebuilder 1.20.0 → 1.21.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: c53f1c873e2288329eb4eeedf5fc485e42898e91114e794a4e08169961b9e1f3
4
- data.tar.gz: 517ef461c3415e786e44a0286da2ee928d067b7ed6d21b0a3db8bdeddbf95b2d
3
+ metadata.gz: afc56c1088a8e968723a1010a8210801e64f53bf514a6ea440c2a66178f61a36
4
+ data.tar.gz: 2057bf07fb5f68b5c92cee2c31a96ff84eba2e55139b5fcd6801c43873298de8
5
5
  SHA512:
6
- metadata.gz: b15c9968b3174c0acb54eaf3fdf39d2584fc6a866505299701d7cc2bb1118f012d1e689c823227cc7bbad716e3627445e3d183185e03cf14c4c35dd26e966b2a
7
- data.tar.gz: b7aa9d474a083ba986722e9b9f3d5911c0398096b6259b76a64cf915b720ddff45bcc5502d00b5f623703498692b013e955144c8769c520e85a21eec59d954d4
6
+ metadata.gz: 9862c403833ee476cbd3632bff82951afe255cf21f72cac5a974a8a025cc60a52309a97377b8bb10f365a0a97d2d2ebae830d002834ca9ab01fc5b2cb1ae8d99
7
+ data.tar.gz: ee71e42866fb77f2a5eae753e6918b2a3dda85cc9de2e3942238d43461e4ac2a8af61e297d8641cb5d5afc37cc3a73825b598e4680e12520692b9c77e5432a19
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.21.0 (2021-04-02)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for Block Device Mappings for container image builds, and adds distribution configuration support for EC2 launch templates in AMI builds.
8
+
4
9
  1.20.0 (2021-03-10)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.20.0
1
+ 1.21.0
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-imagebuilder/customizations'
48
48
  # @!group service
49
49
  module Aws::Imagebuilder
50
50
 
51
- GEM_VERSION = '1.20.0'
51
+ GEM_VERSION = '1.21.0'
52
52
 
53
53
  end
@@ -477,7 +477,11 @@ module Aws::Imagebuilder
477
477
  # Components for build and test that are included in the container
478
478
  # recipe.
479
479
  #
480
- # @option params [required, String] :dockerfile_template_data
480
+ # @option params [Types::InstanceConfiguration] :instance_configuration
481
+ # A group of options that can be used to configure an instance for
482
+ # building and testing container images.
483
+ #
484
+ # @option params [String] :dockerfile_template_data
481
485
  # The Dockerfile template used to build your image as an inline data
482
486
  # blob.
483
487
  #
@@ -531,7 +535,26 @@ module Aws::Imagebuilder
531
535
  # component_arn: "ComponentVersionArnOrBuildVersionArn", # required
532
536
  # },
533
537
  # ],
534
- # dockerfile_template_data: "InlineDockerFileTemplate", # required
538
+ # instance_configuration: {
539
+ # image: "NonEmptyString",
540
+ # block_device_mappings: [
541
+ # {
542
+ # device_name: "NonEmptyString",
543
+ # ebs: {
544
+ # encrypted: false,
545
+ # delete_on_termination: false,
546
+ # iops: 1,
547
+ # kms_key_id: "NonEmptyString",
548
+ # snapshot_id: "NonEmptyString",
549
+ # volume_size: 1,
550
+ # volume_type: "standard", # accepts standard, io1, io2, gp2, gp3, sc1, st1
551
+ # },
552
+ # virtual_name: "NonEmptyString",
553
+ # no_device: "EmptyString",
554
+ # },
555
+ # ],
556
+ # },
557
+ # dockerfile_template_data: "InlineDockerFileTemplate",
535
558
  # dockerfile_template_uri: "Uri",
536
559
  # platform_override: "Windows", # accepts Windows, Linux
537
560
  # image_os_version_override: "NonEmptyString",
@@ -620,6 +643,13 @@ module Aws::Imagebuilder
620
643
  # },
621
644
  # },
622
645
  # license_configuration_arns: ["LicenseConfigurationArn"],
646
+ # launch_template_configurations: [
647
+ # {
648
+ # launch_template_id: "LaunchTemplateId", # required
649
+ # account_id: "AccountId",
650
+ # set_default_version: false,
651
+ # },
652
+ # ],
623
653
  # },
624
654
  # ],
625
655
  # tags: {
@@ -981,7 +1011,7 @@ module Aws::Imagebuilder
981
1011
  # name: "ResourceName", # required
982
1012
  # description: "NonEmptyString",
983
1013
  # instance_types: ["InstanceType"],
984
- # instance_profile_name: "NonEmptyString", # required
1014
+ # instance_profile_name: "InstanceProfileNameType", # required
985
1015
  # security_group_ids: ["NonEmptyString"],
986
1016
  # subnet_id: "NonEmptyString",
987
1017
  # logging: {
@@ -1335,6 +1365,18 @@ module Aws::Imagebuilder
1335
1365
  # resp.container_recipe.version #=> String
1336
1366
  # resp.container_recipe.components #=> Array
1337
1367
  # resp.container_recipe.components[0].component_arn #=> String
1368
+ # resp.container_recipe.instance_configuration.image #=> String
1369
+ # resp.container_recipe.instance_configuration.block_device_mappings #=> Array
1370
+ # resp.container_recipe.instance_configuration.block_device_mappings[0].device_name #=> String
1371
+ # resp.container_recipe.instance_configuration.block_device_mappings[0].ebs.encrypted #=> Boolean
1372
+ # resp.container_recipe.instance_configuration.block_device_mappings[0].ebs.delete_on_termination #=> Boolean
1373
+ # resp.container_recipe.instance_configuration.block_device_mappings[0].ebs.iops #=> Integer
1374
+ # resp.container_recipe.instance_configuration.block_device_mappings[0].ebs.kms_key_id #=> String
1375
+ # resp.container_recipe.instance_configuration.block_device_mappings[0].ebs.snapshot_id #=> String
1376
+ # resp.container_recipe.instance_configuration.block_device_mappings[0].ebs.volume_size #=> Integer
1377
+ # resp.container_recipe.instance_configuration.block_device_mappings[0].ebs.volume_type #=> String, one of "standard", "io1", "io2", "gp2", "gp3", "sc1", "st1"
1378
+ # resp.container_recipe.instance_configuration.block_device_mappings[0].virtual_name #=> String
1379
+ # resp.container_recipe.instance_configuration.block_device_mappings[0].no_device #=> String
1338
1380
  # resp.container_recipe.dockerfile_template_data #=> String
1339
1381
  # resp.container_recipe.kms_key_id #=> String
1340
1382
  # resp.container_recipe.encrypted #=> Boolean
@@ -1429,6 +1471,10 @@ module Aws::Imagebuilder
1429
1471
  # resp.distribution_configuration.distributions[0].container_distribution_configuration.target_repository.repository_name #=> String
1430
1472
  # resp.distribution_configuration.distributions[0].license_configuration_arns #=> Array
1431
1473
  # resp.distribution_configuration.distributions[0].license_configuration_arns[0] #=> String
1474
+ # resp.distribution_configuration.distributions[0].launch_template_configurations #=> Array
1475
+ # resp.distribution_configuration.distributions[0].launch_template_configurations[0].launch_template_id #=> String
1476
+ # resp.distribution_configuration.distributions[0].launch_template_configurations[0].account_id #=> String
1477
+ # resp.distribution_configuration.distributions[0].launch_template_configurations[0].set_default_version #=> Boolean
1432
1478
  # resp.distribution_configuration.timeout_minutes #=> Integer
1433
1479
  # resp.distribution_configuration.date_created #=> String
1434
1480
  # resp.distribution_configuration.date_updated #=> String
@@ -1506,6 +1552,18 @@ module Aws::Imagebuilder
1506
1552
  # resp.image.container_recipe.version #=> String
1507
1553
  # resp.image.container_recipe.components #=> Array
1508
1554
  # resp.image.container_recipe.components[0].component_arn #=> String
1555
+ # resp.image.container_recipe.instance_configuration.image #=> String
1556
+ # resp.image.container_recipe.instance_configuration.block_device_mappings #=> Array
1557
+ # resp.image.container_recipe.instance_configuration.block_device_mappings[0].device_name #=> String
1558
+ # resp.image.container_recipe.instance_configuration.block_device_mappings[0].ebs.encrypted #=> Boolean
1559
+ # resp.image.container_recipe.instance_configuration.block_device_mappings[0].ebs.delete_on_termination #=> Boolean
1560
+ # resp.image.container_recipe.instance_configuration.block_device_mappings[0].ebs.iops #=> Integer
1561
+ # resp.image.container_recipe.instance_configuration.block_device_mappings[0].ebs.kms_key_id #=> String
1562
+ # resp.image.container_recipe.instance_configuration.block_device_mappings[0].ebs.snapshot_id #=> String
1563
+ # resp.image.container_recipe.instance_configuration.block_device_mappings[0].ebs.volume_size #=> Integer
1564
+ # resp.image.container_recipe.instance_configuration.block_device_mappings[0].ebs.volume_type #=> String, one of "standard", "io1", "io2", "gp2", "gp3", "sc1", "st1"
1565
+ # resp.image.container_recipe.instance_configuration.block_device_mappings[0].virtual_name #=> String
1566
+ # resp.image.container_recipe.instance_configuration.block_device_mappings[0].no_device #=> String
1509
1567
  # resp.image.container_recipe.dockerfile_template_data #=> String
1510
1568
  # resp.image.container_recipe.kms_key_id #=> String
1511
1569
  # resp.image.container_recipe.encrypted #=> Boolean
@@ -1561,6 +1619,10 @@ module Aws::Imagebuilder
1561
1619
  # resp.image.distribution_configuration.distributions[0].container_distribution_configuration.target_repository.repository_name #=> String
1562
1620
  # resp.image.distribution_configuration.distributions[0].license_configuration_arns #=> Array
1563
1621
  # resp.image.distribution_configuration.distributions[0].license_configuration_arns[0] #=> String
1622
+ # resp.image.distribution_configuration.distributions[0].launch_template_configurations #=> Array
1623
+ # resp.image.distribution_configuration.distributions[0].launch_template_configurations[0].launch_template_id #=> String
1624
+ # resp.image.distribution_configuration.distributions[0].launch_template_configurations[0].account_id #=> String
1625
+ # resp.image.distribution_configuration.distributions[0].launch_template_configurations[0].set_default_version #=> Boolean
1564
1626
  # resp.image.distribution_configuration.timeout_minutes #=> Integer
1565
1627
  # resp.image.distribution_configuration.date_created #=> String
1566
1628
  # resp.image.distribution_configuration.date_updated #=> String
@@ -2980,6 +3042,13 @@ module Aws::Imagebuilder
2980
3042
  # },
2981
3043
  # },
2982
3044
  # license_configuration_arns: ["LicenseConfigurationArn"],
3045
+ # launch_template_configurations: [
3046
+ # {
3047
+ # launch_template_id: "LaunchTemplateId", # required
3048
+ # account_id: "AccountId",
3049
+ # set_default_version: false,
3050
+ # },
3051
+ # ],
2983
3052
  # },
2984
3053
  # ],
2985
3054
  # client_token: "ClientToken", # required
@@ -3155,7 +3224,7 @@ module Aws::Imagebuilder
3155
3224
  # infrastructure_configuration_arn: "InfrastructureConfigurationArn", # required
3156
3225
  # description: "NonEmptyString",
3157
3226
  # instance_types: ["InstanceType"],
3158
- # instance_profile_name: "NonEmptyString", # required
3227
+ # instance_profile_name: "InstanceProfileNameType", # required
3159
3228
  # security_group_ids: ["NonEmptyString"],
3160
3229
  # subnet_id: "NonEmptyString",
3161
3230
  # logging: {
@@ -3201,7 +3270,7 @@ module Aws::Imagebuilder
3201
3270
  params: params,
3202
3271
  config: config)
3203
3272
  context[:gem_name] = 'aws-sdk-imagebuilder'
3204
- context[:gem_version] = '1.20.0'
3273
+ context[:gem_version] = '1.21.0'
3205
3274
  Seahorse::Client::Request.new(handlers, context)
3206
3275
  end
3207
3276
 
@@ -153,6 +153,7 @@ module Aws::Imagebuilder
153
153
  InlineDockerFileTemplate = Shapes::StringShape.new(name: 'InlineDockerFileTemplate')
154
154
  InstanceBlockDeviceMapping = Shapes::StructureShape.new(name: 'InstanceBlockDeviceMapping')
155
155
  InstanceBlockDeviceMappings = Shapes::ListShape.new(name: 'InstanceBlockDeviceMappings')
156
+ InstanceConfiguration = Shapes::StructureShape.new(name: 'InstanceConfiguration')
156
157
  InstanceProfileNameType = Shapes::StringShape.new(name: 'InstanceProfileNameType')
157
158
  InstanceType = Shapes::StringShape.new(name: 'InstanceType')
158
159
  InstanceTypeList = Shapes::ListShape.new(name: 'InstanceTypeList')
@@ -163,6 +164,9 @@ module Aws::Imagebuilder
163
164
  InvalidRequestException = Shapes::StructureShape.new(name: 'InvalidRequestException')
164
165
  InvalidVersionNumberException = Shapes::StructureShape.new(name: 'InvalidVersionNumberException')
165
166
  LaunchPermissionConfiguration = Shapes::StructureShape.new(name: 'LaunchPermissionConfiguration')
167
+ LaunchTemplateConfiguration = Shapes::StructureShape.new(name: 'LaunchTemplateConfiguration')
168
+ LaunchTemplateConfigurationList = Shapes::ListShape.new(name: 'LaunchTemplateConfigurationList')
169
+ LaunchTemplateId = Shapes::StringShape.new(name: 'LaunchTemplateId')
166
170
  LicenseConfigurationArn = Shapes::StringShape.new(name: 'LicenseConfigurationArn')
167
171
  LicenseConfigurationArnList = Shapes::ListShape.new(name: 'LicenseConfigurationArnList')
168
172
  ListComponentBuildVersionsRequest = Shapes::StructureShape.new(name: 'ListComponentBuildVersionsRequest')
@@ -349,6 +353,7 @@ module Aws::Imagebuilder
349
353
  ContainerRecipe.add_member(:owner, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "owner"))
350
354
  ContainerRecipe.add_member(:version, Shapes::ShapeRef.new(shape: VersionNumber, location_name: "version"))
351
355
  ContainerRecipe.add_member(:components, Shapes::ShapeRef.new(shape: ComponentConfigurationList, location_name: "components"))
356
+ ContainerRecipe.add_member(:instance_configuration, Shapes::ShapeRef.new(shape: InstanceConfiguration, location_name: "instanceConfiguration"))
352
357
  ContainerRecipe.add_member(:dockerfile_template_data, Shapes::ShapeRef.new(shape: DockerFileTemplate, location_name: "dockerfileTemplateData"))
353
358
  ContainerRecipe.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "kmsKeyId"))
354
359
  ContainerRecipe.add_member(:encrypted, Shapes::ShapeRef.new(shape: NullableBoolean, location_name: "encrypted"))
@@ -394,7 +399,8 @@ module Aws::Imagebuilder
394
399
  CreateContainerRecipeRequest.add_member(:description, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "description"))
395
400
  CreateContainerRecipeRequest.add_member(:semantic_version, Shapes::ShapeRef.new(shape: VersionNumber, required: true, location_name: "semanticVersion"))
396
401
  CreateContainerRecipeRequest.add_member(:components, Shapes::ShapeRef.new(shape: ComponentConfigurationList, required: true, location_name: "components"))
397
- CreateContainerRecipeRequest.add_member(:dockerfile_template_data, Shapes::ShapeRef.new(shape: InlineDockerFileTemplate, required: true, location_name: "dockerfileTemplateData"))
402
+ CreateContainerRecipeRequest.add_member(:instance_configuration, Shapes::ShapeRef.new(shape: InstanceConfiguration, location_name: "instanceConfiguration"))
403
+ CreateContainerRecipeRequest.add_member(:dockerfile_template_data, Shapes::ShapeRef.new(shape: InlineDockerFileTemplate, location_name: "dockerfileTemplateData"))
398
404
  CreateContainerRecipeRequest.add_member(:dockerfile_template_uri, Shapes::ShapeRef.new(shape: Uri, location_name: "dockerfileTemplateUri"))
399
405
  CreateContainerRecipeRequest.add_member(:platform_override, Shapes::ShapeRef.new(shape: Platform, location_name: "platformOverride"))
400
406
  CreateContainerRecipeRequest.add_member(:image_os_version_override, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "imageOsVersionOverride"))
@@ -476,7 +482,7 @@ module Aws::Imagebuilder
476
482
  CreateInfrastructureConfigurationRequest.add_member(:name, Shapes::ShapeRef.new(shape: ResourceName, required: true, location_name: "name"))
477
483
  CreateInfrastructureConfigurationRequest.add_member(:description, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "description"))
478
484
  CreateInfrastructureConfigurationRequest.add_member(:instance_types, Shapes::ShapeRef.new(shape: InstanceTypeList, location_name: "instanceTypes"))
479
- CreateInfrastructureConfigurationRequest.add_member(:instance_profile_name, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "instanceProfileName"))
485
+ CreateInfrastructureConfigurationRequest.add_member(:instance_profile_name, Shapes::ShapeRef.new(shape: InstanceProfileNameType, required: true, location_name: "instanceProfileName"))
480
486
  CreateInfrastructureConfigurationRequest.add_member(:security_group_ids, Shapes::ShapeRef.new(shape: SecurityGroupIds, location_name: "securityGroupIds"))
481
487
  CreateInfrastructureConfigurationRequest.add_member(:subnet_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "subnetId"))
482
488
  CreateInfrastructureConfigurationRequest.add_member(:logging, Shapes::ShapeRef.new(shape: Logging, location_name: "logging"))
@@ -546,6 +552,7 @@ module Aws::Imagebuilder
546
552
  Distribution.add_member(:ami_distribution_configuration, Shapes::ShapeRef.new(shape: AmiDistributionConfiguration, location_name: "amiDistributionConfiguration"))
547
553
  Distribution.add_member(:container_distribution_configuration, Shapes::ShapeRef.new(shape: ContainerDistributionConfiguration, location_name: "containerDistributionConfiguration"))
548
554
  Distribution.add_member(:license_configuration_arns, Shapes::ShapeRef.new(shape: LicenseConfigurationArnList, location_name: "licenseConfigurationArns"))
555
+ Distribution.add_member(:launch_template_configurations, Shapes::ShapeRef.new(shape: LaunchTemplateConfigurationList, location_name: "launchTemplateConfigurations"))
549
556
  Distribution.struct_class = Types::Distribution
550
557
 
551
558
  DistributionConfiguration.add_member(:arn, Shapes::ShapeRef.new(shape: ImageBuilderArn, location_name: "arn"))
@@ -836,6 +843,10 @@ module Aws::Imagebuilder
836
843
 
837
844
  InstanceBlockDeviceMappings.member = Shapes::ShapeRef.new(shape: InstanceBlockDeviceMapping)
838
845
 
846
+ InstanceConfiguration.add_member(:image, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "image"))
847
+ InstanceConfiguration.add_member(:block_device_mappings, Shapes::ShapeRef.new(shape: InstanceBlockDeviceMappings, location_name: "blockDeviceMappings"))
848
+ InstanceConfiguration.struct_class = Types::InstanceConfiguration
849
+
839
850
  InstanceTypeList.member = Shapes::ShapeRef.new(shape: InstanceType)
840
851
 
841
852
  InvalidPaginationTokenException.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "message"))
@@ -860,6 +871,13 @@ module Aws::Imagebuilder
860
871
  LaunchPermissionConfiguration.add_member(:user_groups, Shapes::ShapeRef.new(shape: StringList, location_name: "userGroups"))
861
872
  LaunchPermissionConfiguration.struct_class = Types::LaunchPermissionConfiguration
862
873
 
874
+ LaunchTemplateConfiguration.add_member(:launch_template_id, Shapes::ShapeRef.new(shape: LaunchTemplateId, required: true, location_name: "launchTemplateId"))
875
+ LaunchTemplateConfiguration.add_member(:account_id, Shapes::ShapeRef.new(shape: AccountId, location_name: "accountId"))
876
+ LaunchTemplateConfiguration.add_member(:set_default_version, Shapes::ShapeRef.new(shape: Boolean, location_name: "setDefaultVersion"))
877
+ LaunchTemplateConfiguration.struct_class = Types::LaunchTemplateConfiguration
878
+
879
+ LaunchTemplateConfigurationList.member = Shapes::ShapeRef.new(shape: LaunchTemplateConfiguration)
880
+
863
881
  LicenseConfigurationArnList.member = Shapes::ShapeRef.new(shape: LicenseConfigurationArn)
864
882
 
865
883
  ListComponentBuildVersionsRequest.add_member(:component_version_arn, Shapes::ShapeRef.new(shape: ComponentVersionArn, required: true, location_name: "componentVersionArn"))
@@ -1129,7 +1147,7 @@ module Aws::Imagebuilder
1129
1147
  UpdateInfrastructureConfigurationRequest.add_member(:infrastructure_configuration_arn, Shapes::ShapeRef.new(shape: InfrastructureConfigurationArn, required: true, location_name: "infrastructureConfigurationArn"))
1130
1148
  UpdateInfrastructureConfigurationRequest.add_member(:description, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "description"))
1131
1149
  UpdateInfrastructureConfigurationRequest.add_member(:instance_types, Shapes::ShapeRef.new(shape: InstanceTypeList, location_name: "instanceTypes"))
1132
- UpdateInfrastructureConfigurationRequest.add_member(:instance_profile_name, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "instanceProfileName"))
1150
+ UpdateInfrastructureConfigurationRequest.add_member(:instance_profile_name, Shapes::ShapeRef.new(shape: InstanceProfileNameType, required: true, location_name: "instanceProfileName"))
1133
1151
  UpdateInfrastructureConfigurationRequest.add_member(:security_group_ids, Shapes::ShapeRef.new(shape: SecurityGroupIds, location_name: "securityGroupIds"))
1134
1152
  UpdateInfrastructureConfigurationRequest.add_member(:subnet_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "subnetId"))
1135
1153
  UpdateInfrastructureConfigurationRequest.add_member(:logging, Shapes::ShapeRef.new(shape: Logging, location_name: "logging"))
@@ -383,7 +383,7 @@ module Aws::Imagebuilder
383
383
  # @return [String]
384
384
  #
385
385
  # @!attribute [rw] supported_os_versions
386
- # The operating system (OS) version supported by the component. If the
386
+ # he operating system (OS) version supported by the component. If the
387
387
  # OS information is available, a prefix match is performed against the
388
388
  # parent image OS version during image recipe creation.
389
389
  # @return [Array<String>]
@@ -511,6 +511,11 @@ module Aws::Imagebuilder
511
511
  # recipe.
512
512
  # @return [Array<Types::ComponentConfiguration>]
513
513
  #
514
+ # @!attribute [rw] instance_configuration
515
+ # A group of options that can be used to configure an instance for
516
+ # building and testing container images.
517
+ # @return [Types::InstanceConfiguration]
518
+ #
514
519
  # @!attribute [rw] dockerfile_template_data
515
520
  # Dockerfiles are text documents that are used to build Docker
516
521
  # containers, and ensure that they contain all of the elements
@@ -559,6 +564,7 @@ module Aws::Imagebuilder
559
564
  :owner,
560
565
  :version,
561
566
  :components,
567
+ :instance_configuration,
562
568
  :dockerfile_template_data,
563
569
  :kms_key_id,
564
570
  :encrypted,
@@ -752,7 +758,26 @@ module Aws::Imagebuilder
752
758
  # component_arn: "ComponentVersionArnOrBuildVersionArn", # required
753
759
  # },
754
760
  # ],
755
- # dockerfile_template_data: "InlineDockerFileTemplate", # required
761
+ # instance_configuration: {
762
+ # image: "NonEmptyString",
763
+ # block_device_mappings: [
764
+ # {
765
+ # device_name: "NonEmptyString",
766
+ # ebs: {
767
+ # encrypted: false,
768
+ # delete_on_termination: false,
769
+ # iops: 1,
770
+ # kms_key_id: "NonEmptyString",
771
+ # snapshot_id: "NonEmptyString",
772
+ # volume_size: 1,
773
+ # volume_type: "standard", # accepts standard, io1, io2, gp2, gp3, sc1, st1
774
+ # },
775
+ # virtual_name: "NonEmptyString",
776
+ # no_device: "EmptyString",
777
+ # },
778
+ # ],
779
+ # },
780
+ # dockerfile_template_data: "InlineDockerFileTemplate",
756
781
  # dockerfile_template_uri: "Uri",
757
782
  # platform_override: "Windows", # accepts Windows, Linux
758
783
  # image_os_version_override: "NonEmptyString",
@@ -791,6 +816,11 @@ module Aws::Imagebuilder
791
816
  # recipe.
792
817
  # @return [Array<Types::ComponentConfiguration>]
793
818
  #
819
+ # @!attribute [rw] instance_configuration
820
+ # A group of options that can be used to configure an instance for
821
+ # building and testing container images.
822
+ # @return [Types::InstanceConfiguration]
823
+ #
794
824
  # @!attribute [rw] dockerfile_template_data
795
825
  # The Dockerfile template used to build your image as an inline data
796
826
  # blob.
@@ -845,6 +875,7 @@ module Aws::Imagebuilder
845
875
  :description,
846
876
  :semantic_version,
847
877
  :components,
878
+ :instance_configuration,
848
879
  :dockerfile_template_data,
849
880
  :dockerfile_template_uri,
850
881
  :platform_override,
@@ -913,6 +944,13 @@ module Aws::Imagebuilder
913
944
  # },
914
945
  # },
915
946
  # license_configuration_arns: ["LicenseConfigurationArn"],
947
+ # launch_template_configurations: [
948
+ # {
949
+ # launch_template_id: "LaunchTemplateId", # required
950
+ # account_id: "AccountId",
951
+ # set_default_version: false,
952
+ # },
953
+ # ],
916
954
  # },
917
955
  # ],
918
956
  # tags: {
@@ -1335,7 +1373,7 @@ module Aws::Imagebuilder
1335
1373
  # name: "ResourceName", # required
1336
1374
  # description: "NonEmptyString",
1337
1375
  # instance_types: ["InstanceType"],
1338
- # instance_profile_name: "NonEmptyString", # required
1376
+ # instance_profile_name: "InstanceProfileNameType", # required
1339
1377
  # security_group_ids: ["NonEmptyString"],
1340
1378
  # subnet_id: "NonEmptyString",
1341
1379
  # logging: {
@@ -1752,6 +1790,13 @@ module Aws::Imagebuilder
1752
1790
  # },
1753
1791
  # },
1754
1792
  # license_configuration_arns: ["LicenseConfigurationArn"],
1793
+ # launch_template_configurations: [
1794
+ # {
1795
+ # launch_template_id: "LaunchTemplateId", # required
1796
+ # account_id: "AccountId",
1797
+ # set_default_version: false,
1798
+ # },
1799
+ # ],
1755
1800
  # }
1756
1801
  #
1757
1802
  # @!attribute [rw] region
@@ -1759,8 +1804,8 @@ module Aws::Imagebuilder
1759
1804
  # @return [String]
1760
1805
  #
1761
1806
  # @!attribute [rw] ami_distribution_configuration
1762
- # The specific AMI settings (for example, launch permissions, AMI
1763
- # tags).
1807
+ # The specific AMI settings; for example, launch permissions or AMI
1808
+ # tags.
1764
1809
  # @return [Types::AmiDistributionConfiguration]
1765
1810
  #
1766
1811
  # @!attribute [rw] container_distribution_configuration
@@ -1773,13 +1818,19 @@ module Aws::Imagebuilder
1773
1818
  # specified Region.
1774
1819
  # @return [Array<String>]
1775
1820
  #
1821
+ # @!attribute [rw] launch_template_configurations
1822
+ # A group of launchTemplateConfiguration settings that apply to image
1823
+ # distribution for specified accounts.
1824
+ # @return [Array<Types::LaunchTemplateConfiguration>]
1825
+ #
1776
1826
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/Distribution AWS API Documentation
1777
1827
  #
1778
1828
  class Distribution < Struct.new(
1779
1829
  :region,
1780
1830
  :ami_distribution_configuration,
1781
1831
  :container_distribution_configuration,
1782
- :license_configuration_arns)
1832
+ :license_configuration_arns,
1833
+ :launch_template_configurations)
1783
1834
  SENSITIVE = []
1784
1835
  include Aws::Structure
1785
1836
  end
@@ -1799,7 +1850,8 @@ module Aws::Imagebuilder
1799
1850
  # @return [String]
1800
1851
  #
1801
1852
  # @!attribute [rw] distributions
1802
- # The distributions of the distribution configuration.
1853
+ # The distribution objects that apply Region-specific settings for the
1854
+ # deployment of the image to targeted Regions.
1803
1855
  # @return [Array<Types::Distribution>]
1804
1856
  #
1805
1857
  # @!attribute [rw] timeout_minutes
@@ -3220,6 +3272,52 @@ module Aws::Imagebuilder
3220
3272
  include Aws::Structure
3221
3273
  end
3222
3274
 
3275
+ # Defines a custom source AMI and block device mapping configurations of
3276
+ # an instance used for building and testing container images.
3277
+ #
3278
+ # @note When making an API call, you may pass InstanceConfiguration
3279
+ # data as a hash:
3280
+ #
3281
+ # {
3282
+ # image: "NonEmptyString",
3283
+ # block_device_mappings: [
3284
+ # {
3285
+ # device_name: "NonEmptyString",
3286
+ # ebs: {
3287
+ # encrypted: false,
3288
+ # delete_on_termination: false,
3289
+ # iops: 1,
3290
+ # kms_key_id: "NonEmptyString",
3291
+ # snapshot_id: "NonEmptyString",
3292
+ # volume_size: 1,
3293
+ # volume_type: "standard", # accepts standard, io1, io2, gp2, gp3, sc1, st1
3294
+ # },
3295
+ # virtual_name: "NonEmptyString",
3296
+ # no_device: "EmptyString",
3297
+ # },
3298
+ # ],
3299
+ # }
3300
+ #
3301
+ # @!attribute [rw] image
3302
+ # The AMI ID to use as the base image for a container build and test
3303
+ # instance. If not specified, Image Builder will use the appropriate
3304
+ # ECS-optimized AMI as a base image.
3305
+ # @return [String]
3306
+ #
3307
+ # @!attribute [rw] block_device_mappings
3308
+ # Defines the block devices to attach for building an instance from
3309
+ # this Image Builder AMI.
3310
+ # @return [Array<Types::InstanceBlockDeviceMapping>]
3311
+ #
3312
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/InstanceConfiguration AWS API Documentation
3313
+ #
3314
+ class InstanceConfiguration < Struct.new(
3315
+ :image,
3316
+ :block_device_mappings)
3317
+ SENSITIVE = []
3318
+ include Aws::Structure
3319
+ end
3320
+
3223
3321
  # You have provided an invalid pagination token in your request.
3224
3322
  #
3225
3323
  # @!attribute [rw] message
@@ -3338,6 +3436,40 @@ module Aws::Imagebuilder
3338
3436
  include Aws::Structure
3339
3437
  end
3340
3438
 
3439
+ # Identifies an EC2 launch template to use for a specific account.
3440
+ #
3441
+ # @note When making an API call, you may pass LaunchTemplateConfiguration
3442
+ # data as a hash:
3443
+ #
3444
+ # {
3445
+ # launch_template_id: "LaunchTemplateId", # required
3446
+ # account_id: "AccountId",
3447
+ # set_default_version: false,
3448
+ # }
3449
+ #
3450
+ # @!attribute [rw] launch_template_id
3451
+ # Identifies the EC2 launch template to use.
3452
+ # @return [String]
3453
+ #
3454
+ # @!attribute [rw] account_id
3455
+ # The account ID that this configuration applies to.
3456
+ # @return [String]
3457
+ #
3458
+ # @!attribute [rw] set_default_version
3459
+ # Set the specified EC2 launch template as the default launch template
3460
+ # for the specified account.
3461
+ # @return [Boolean]
3462
+ #
3463
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/LaunchTemplateConfiguration AWS API Documentation
3464
+ #
3465
+ class LaunchTemplateConfiguration < Struct.new(
3466
+ :launch_template_id,
3467
+ :account_id,
3468
+ :set_default_version)
3469
+ SENSITIVE = []
3470
+ include Aws::Structure
3471
+ end
3472
+
3341
3473
  # @note When making an API call, you may pass ListComponentBuildVersionsRequest
3342
3474
  # data as a hash:
3343
3475
  #
@@ -4702,6 +4834,13 @@ module Aws::Imagebuilder
4702
4834
  # },
4703
4835
  # },
4704
4836
  # license_configuration_arns: ["LicenseConfigurationArn"],
4837
+ # launch_template_configurations: [
4838
+ # {
4839
+ # launch_template_id: "LaunchTemplateId", # required
4840
+ # account_id: "AccountId",
4841
+ # set_default_version: false,
4842
+ # },
4843
+ # ],
4705
4844
  # },
4706
4845
  # ],
4707
4846
  # client_token: "ClientToken", # required
@@ -4888,7 +5027,7 @@ module Aws::Imagebuilder
4888
5027
  # infrastructure_configuration_arn: "InfrastructureConfigurationArn", # required
4889
5028
  # description: "NonEmptyString",
4890
5029
  # instance_types: ["InstanceType"],
4891
- # instance_profile_name: "NonEmptyString", # required
5030
+ # instance_profile_name: "InstanceProfileNameType", # required
4892
5031
  # security_group_ids: ["NonEmptyString"],
4893
5032
  # subnet_id: "NonEmptyString",
4894
5033
  # logging: {
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-imagebuilder
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.20.0
4
+ version: 1.21.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: 2021-03-10 00:00:00.000000000 Z
11
+ date: 2021-04-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -66,8 +66,8 @@ homepage: https://github.com/aws/aws-sdk-ruby
66
66
  licenses:
67
67
  - Apache-2.0
68
68
  metadata:
69
- source_code_uri: https://github.com/aws/aws-sdk-ruby/tree/master/gems/aws-sdk-imagebuilder
70
- changelog_uri: https://github.com/aws/aws-sdk-ruby/tree/master/gems/aws-sdk-imagebuilder/CHANGELOG.md
69
+ source_code_uri: https://github.com/aws/aws-sdk-ruby/tree/version-3/gems/aws-sdk-imagebuilder
70
+ changelog_uri: https://github.com/aws/aws-sdk-ruby/tree/version-3/gems/aws-sdk-imagebuilder/CHANGELOG.md
71
71
  post_install_message:
72
72
  rdoc_options: []
73
73
  require_paths: