aws-sdk-imagebuilder 1.22.0 → 1.23.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: efce08172d9f3fc257e9ce4eed1dbcc7fe446a45cc36c46e562de2d7fa550e86
4
- data.tar.gz: 533271bb23f6e9a762001540ccd3fffb9ad9ce21446f53eb0bd3af2bfcefd1f5
3
+ metadata.gz: 0f3246e9cbf383e5e4967da7e3787f89770702edf1e2b8ec83504b69c4e2eb79
4
+ data.tar.gz: 01ebaf48caebf957cac81609478c5f5b0fc1e95ebdccac76f629544ffc341e18
5
5
  SHA512:
6
- metadata.gz: cd1ca976f638258402781aad39554a3c76914a21ab791c0e024d57da3ed19234c65579d6c71d24666193ed1f19ff24ecc474671a8029e1d7ac7551b585a46752
7
- data.tar.gz: ee4215723ee7922651bb0ab730b1e1059f127d9f937bb9b8791297add7e4fb70972a33c94b7f880ee3e15f79984930bf9062430c94496d66c8bd23af728796bd
6
+ metadata.gz: 60f9b127424172a39f6a0dac5a4f632942f99a4d7f112acb32b5508f6b88a522bb59cca775887c7aa2c943eede0c8db6b14bf79fd5443d2d95d41653fc971776
7
+ data.tar.gz: 860cb23e374e80078f89425fbe3a8491964db5255d1401f7368f2316894eaea4607d2d088a4fffa1418ed69612301c19d00edea174636c36ff5642502df96dfa
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.23.0 (2021-07-06)
5
+ ------------------
6
+
7
+ * Feature - Adds support for specifying parameters to customize components for recipes. Expands configuration of the Amazon EC2 instances that are used for building and testing images, including the ability to specify commands to run on launch, and more control over installation and removal of the SSM agent.
8
+
4
9
  1.22.0 (2021-05-14)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.22.0
1
+ 1.23.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.22.0'
51
+ GEM_VERSION = '1.23.0'
52
52
 
53
53
  end
@@ -401,10 +401,10 @@ module Aws::Imagebuilder
401
401
  # `data` or `uri` can be used to specify the data within the component.
402
402
  #
403
403
  # @option params [String] :uri
404
- # The uri of the component. Must be an S3 URL and the requester must
405
- # have permission to access the S3 bucket. If you use S3, you can
406
- # specify component content up to your service quota. Either `data` or
407
- # `uri` can be used to specify the data within the component.
404
+ # The uri of the component. Must be an Amazon S3 URL and the requester
405
+ # must have permission to access the Amazon S3 bucket. If you use Amazon
406
+ # S3, you can specify component content up to your service quota. Either
407
+ # `data` or `uri` can be used to specify the data within the component.
408
408
  #
409
409
  # @option params [String] :kms_key_id
410
410
  # The ID of the KMS key that should be used to encrypt this component.
@@ -486,7 +486,7 @@ module Aws::Imagebuilder
486
486
  # blob.
487
487
  #
488
488
  # @option params [String] :dockerfile_template_uri
489
- # The S3 URI for the Dockerfile that will be used to build your
489
+ # The Amazon S3 URI for the Dockerfile that will be used to build your
490
490
  # container image.
491
491
  #
492
492
  # @option params [String] :platform_override
@@ -533,6 +533,12 @@ module Aws::Imagebuilder
533
533
  # components: [ # required
534
534
  # {
535
535
  # component_arn: "ComponentVersionArnOrBuildVersionArn", # required
536
+ # parameters: [
537
+ # {
538
+ # name: "ComponentParameterName", # required
539
+ # value: ["ComponentParameterValue"], # required
540
+ # },
541
+ # ],
536
542
  # },
537
543
  # ],
538
544
  # instance_configuration: {
@@ -881,7 +887,11 @@ module Aws::Imagebuilder
881
887
  # The tags of the image recipe.
882
888
  #
883
889
  # @option params [String] :working_directory
884
- # The working directory to be used during build and test workflows.
890
+ # The working directory used during build and test workflows.
891
+ #
892
+ # @option params [Types::AdditionalInstanceConfiguration] :additional_instance_configuration
893
+ # Specify additional settings and launch scripts for your build
894
+ # instances.
885
895
  #
886
896
  # @option params [required, String] :client_token
887
897
  # The idempotency token used to make this request idempotent.
@@ -904,6 +914,12 @@ module Aws::Imagebuilder
904
914
  # components: [ # required
905
915
  # {
906
916
  # component_arn: "ComponentVersionArnOrBuildVersionArn", # required
917
+ # parameters: [
918
+ # {
919
+ # name: "ComponentParameterName", # required
920
+ # value: ["ComponentParameterValue"], # required
921
+ # },
922
+ # ],
907
923
  # },
908
924
  # ],
909
925
  # parent_image: "NonEmptyString", # required
@@ -927,6 +943,12 @@ module Aws::Imagebuilder
927
943
  # "TagKey" => "TagValue",
928
944
  # },
929
945
  # working_directory: "NonEmptyString",
946
+ # additional_instance_configuration: {
947
+ # systems_manager_agent: {
948
+ # uninstall_after_build: false,
949
+ # },
950
+ # user_data_override: "UserDataOverride",
951
+ # },
930
952
  # client_token: "ClientToken", # required
931
953
  # })
932
954
  #
@@ -962,15 +984,15 @@ module Aws::Imagebuilder
962
984
  #
963
985
  # @option params [required, String] :instance_profile_name
964
986
  # The instance profile to associate with the instance used to customize
965
- # your EC2 AMI.
987
+ # your Amazon EC2 AMI.
966
988
  #
967
989
  # @option params [Array<String>] :security_group_ids
968
990
  # The security group IDs to associate with the instance used to
969
- # customize your EC2 AMI.
991
+ # customize your Amazon EC2 AMI.
970
992
  #
971
993
  # @option params [String] :subnet_id
972
994
  # The subnet ID in which to place the instance used to customize your
973
- # EC2 AMI.
995
+ # Amazon EC2 AMI.
974
996
  #
975
997
  # @option params [Types::Logging] :logging
976
998
  # The logging configuration of the infrastructure configuration.
@@ -1290,6 +1312,12 @@ module Aws::Imagebuilder
1290
1312
  # resp.component.platform #=> String, one of "Windows", "Linux"
1291
1313
  # resp.component.supported_os_versions #=> Array
1292
1314
  # resp.component.supported_os_versions[0] #=> String
1315
+ # resp.component.parameters #=> Array
1316
+ # resp.component.parameters[0].name #=> String
1317
+ # resp.component.parameters[0].type #=> String
1318
+ # resp.component.parameters[0].default_value #=> Array
1319
+ # resp.component.parameters[0].default_value[0] #=> String
1320
+ # resp.component.parameters[0].description #=> String
1293
1321
  # resp.component.owner #=> String
1294
1322
  # resp.component.data #=> String
1295
1323
  # resp.component.kms_key_id #=> String
@@ -1366,6 +1394,10 @@ module Aws::Imagebuilder
1366
1394
  # resp.container_recipe.version #=> String
1367
1395
  # resp.container_recipe.components #=> Array
1368
1396
  # resp.container_recipe.components[0].component_arn #=> String
1397
+ # resp.container_recipe.components[0].parameters #=> Array
1398
+ # resp.container_recipe.components[0].parameters[0].name #=> String
1399
+ # resp.container_recipe.components[0].parameters[0].value #=> Array
1400
+ # resp.container_recipe.components[0].parameters[0].value[0] #=> String
1369
1401
  # resp.container_recipe.instance_configuration.image #=> String
1370
1402
  # resp.container_recipe.instance_configuration.block_device_mappings #=> Array
1371
1403
  # resp.container_recipe.instance_configuration.block_device_mappings[0].device_name #=> String
@@ -1528,6 +1560,10 @@ module Aws::Imagebuilder
1528
1560
  # resp.image.image_recipe.version #=> String
1529
1561
  # resp.image.image_recipe.components #=> Array
1530
1562
  # resp.image.image_recipe.components[0].component_arn #=> String
1563
+ # resp.image.image_recipe.components[0].parameters #=> Array
1564
+ # resp.image.image_recipe.components[0].parameters[0].name #=> String
1565
+ # resp.image.image_recipe.components[0].parameters[0].value #=> Array
1566
+ # resp.image.image_recipe.components[0].parameters[0].value[0] #=> String
1531
1567
  # resp.image.image_recipe.parent_image #=> String
1532
1568
  # resp.image.image_recipe.block_device_mappings #=> Array
1533
1569
  # resp.image.image_recipe.block_device_mappings[0].device_name #=> String
@@ -1544,6 +1580,8 @@ module Aws::Imagebuilder
1544
1580
  # resp.image.image_recipe.tags #=> Hash
1545
1581
  # resp.image.image_recipe.tags["TagKey"] #=> String
1546
1582
  # resp.image.image_recipe.working_directory #=> String
1583
+ # resp.image.image_recipe.additional_instance_configuration.systems_manager_agent.uninstall_after_build #=> Boolean
1584
+ # resp.image.image_recipe.additional_instance_configuration.user_data_override #=> String
1547
1585
  # resp.image.container_recipe.arn #=> String
1548
1586
  # resp.image.container_recipe.container_type #=> String, one of "DOCKER"
1549
1587
  # resp.image.container_recipe.name #=> String
@@ -1553,6 +1591,10 @@ module Aws::Imagebuilder
1553
1591
  # resp.image.container_recipe.version #=> String
1554
1592
  # resp.image.container_recipe.components #=> Array
1555
1593
  # resp.image.container_recipe.components[0].component_arn #=> String
1594
+ # resp.image.container_recipe.components[0].parameters #=> Array
1595
+ # resp.image.container_recipe.components[0].parameters[0].name #=> String
1596
+ # resp.image.container_recipe.components[0].parameters[0].value #=> Array
1597
+ # resp.image.container_recipe.components[0].parameters[0].value[0] #=> String
1556
1598
  # resp.image.container_recipe.instance_configuration.image #=> String
1557
1599
  # resp.image.container_recipe.instance_configuration.block_device_mappings #=> Array
1558
1600
  # resp.image.container_recipe.instance_configuration.block_device_mappings[0].device_name #=> String
@@ -1767,6 +1809,10 @@ module Aws::Imagebuilder
1767
1809
  # resp.image_recipe.version #=> String
1768
1810
  # resp.image_recipe.components #=> Array
1769
1811
  # resp.image_recipe.components[0].component_arn #=> String
1812
+ # resp.image_recipe.components[0].parameters #=> Array
1813
+ # resp.image_recipe.components[0].parameters[0].name #=> String
1814
+ # resp.image_recipe.components[0].parameters[0].value #=> Array
1815
+ # resp.image_recipe.components[0].parameters[0].value[0] #=> String
1770
1816
  # resp.image_recipe.parent_image #=> String
1771
1817
  # resp.image_recipe.block_device_mappings #=> Array
1772
1818
  # resp.image_recipe.block_device_mappings[0].device_name #=> String
@@ -1783,6 +1829,8 @@ module Aws::Imagebuilder
1783
1829
  # resp.image_recipe.tags #=> Hash
1784
1830
  # resp.image_recipe.tags["TagKey"] #=> String
1785
1831
  # resp.image_recipe.working_directory #=> String
1832
+ # resp.image_recipe.additional_instance_configuration.systems_manager_agent.uninstall_after_build #=> Boolean
1833
+ # resp.image_recipe.additional_instance_configuration.user_data_override #=> String
1786
1834
  #
1787
1835
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetImageRecipe AWS API Documentation
1788
1836
  #
@@ -1908,10 +1956,10 @@ module Aws::Imagebuilder
1908
1956
  # `data` or `uri` can be used to specify the data within the component.
1909
1957
  #
1910
1958
  # @option params [String] :uri
1911
- # The uri of the component. Must be an S3 URL and the requester must
1912
- # have permission to access the S3 bucket. If you use S3, you can
1913
- # specify component content up to your service quota. Either `data` or
1914
- # `uri` can be used to specify the data within the component.
1959
+ # The uri of the component. Must be an Amazon S3 URL and the requester
1960
+ # must have permission to access the Amazon S3 bucket. If you use Amazon
1961
+ # S3, you can specify component content up to your service quota. Either
1962
+ # `data` or `uri` can be used to specify the data within the component.
1915
1963
  #
1916
1964
  # @option params [String] :kms_key_id
1917
1965
  # The ID of the KMS key that should be used to encrypt this component.
@@ -2299,7 +2347,7 @@ module Aws::Imagebuilder
2299
2347
  end
2300
2348
 
2301
2349
  # List the Packages that are associated with an Image Build Version, as
2302
- # determined by AWS Systems Manager Inventory at build time.
2350
+ # determined by Amazon EC2 Systems Manager Inventory at build time.
2303
2351
  #
2304
2352
  # @option params [required, String] :image_build_version_arn
2305
2353
  # Filter results for the ListImagePackages request by the Image Build
@@ -3185,14 +3233,15 @@ module Aws::Imagebuilder
3185
3233
  #
3186
3234
  # @option params [required, String] :instance_profile_name
3187
3235
  # The instance profile to associate with the instance used to customize
3188
- # your EC2 AMI.
3236
+ # your Amazon EC2 AMI.
3189
3237
  #
3190
3238
  # @option params [Array<String>] :security_group_ids
3191
3239
  # The security group IDs to associate with the instance used to
3192
- # customize your EC2 AMI.
3240
+ # customize your Amazon EC2 AMI.
3193
3241
  #
3194
3242
  # @option params [String] :subnet_id
3195
- # The subnet ID to place the instance used to customize your EC2 AMI in.
3243
+ # The subnet ID to place the instance used to customize your Amazon EC2
3244
+ # AMI in.
3196
3245
  #
3197
3246
  # @option params [Types::Logging] :logging
3198
3247
  # The logging configuration of the infrastructure configuration.
@@ -3277,7 +3326,7 @@ module Aws::Imagebuilder
3277
3326
  params: params,
3278
3327
  config: config)
3279
3328
  context[:gem_name] = 'aws-sdk-imagebuilder'
3280
- context[:gem_version] = '1.22.0'
3329
+ context[:gem_version] = '1.23.0'
3281
3330
  Seahorse::Client::Request.new(handlers, context)
3282
3331
  end
3283
3332
 
@@ -15,6 +15,7 @@ module Aws::Imagebuilder
15
15
 
16
16
  AccountId = Shapes::StringShape.new(name: 'AccountId')
17
17
  AccountList = Shapes::ListShape.new(name: 'AccountList')
18
+ AdditionalInstanceConfiguration = Shapes::StructureShape.new(name: 'AdditionalInstanceConfiguration')
18
19
  Ami = Shapes::StructureShape.new(name: 'Ami')
19
20
  AmiDistributionConfiguration = Shapes::StructureShape.new(name: 'AmiDistributionConfiguration')
20
21
  AmiList = Shapes::ListShape.new(name: 'AmiList')
@@ -32,6 +33,15 @@ module Aws::Imagebuilder
32
33
  ComponentConfigurationList = Shapes::ListShape.new(name: 'ComponentConfigurationList')
33
34
  ComponentData = Shapes::StringShape.new(name: 'ComponentData')
34
35
  ComponentFormat = Shapes::StringShape.new(name: 'ComponentFormat')
36
+ ComponentParameter = Shapes::StructureShape.new(name: 'ComponentParameter')
37
+ ComponentParameterDescription = Shapes::StringShape.new(name: 'ComponentParameterDescription')
38
+ ComponentParameterDetail = Shapes::StructureShape.new(name: 'ComponentParameterDetail')
39
+ ComponentParameterDetailList = Shapes::ListShape.new(name: 'ComponentParameterDetailList')
40
+ ComponentParameterList = Shapes::ListShape.new(name: 'ComponentParameterList')
41
+ ComponentParameterName = Shapes::StringShape.new(name: 'ComponentParameterName')
42
+ ComponentParameterType = Shapes::StringShape.new(name: 'ComponentParameterType')
43
+ ComponentParameterValue = Shapes::StringShape.new(name: 'ComponentParameterValue')
44
+ ComponentParameterValueList = Shapes::ListShape.new(name: 'ComponentParameterValueList')
35
45
  ComponentSummary = Shapes::StructureShape.new(name: 'ComponentSummary')
36
46
  ComponentSummaryList = Shapes::ListShape.new(name: 'ComponentSummaryList')
37
47
  ComponentType = Shapes::StringShape.new(name: 'ComponentType')
@@ -231,6 +241,7 @@ module Aws::Imagebuilder
231
241
  StartImagePipelineExecutionRequest = Shapes::StructureShape.new(name: 'StartImagePipelineExecutionRequest')
232
242
  StartImagePipelineExecutionResponse = Shapes::StructureShape.new(name: 'StartImagePipelineExecutionResponse')
233
243
  StringList = Shapes::ListShape.new(name: 'StringList')
244
+ SystemsManagerAgent = Shapes::StructureShape.new(name: 'SystemsManagerAgent')
234
245
  TagKey = Shapes::StringShape.new(name: 'TagKey')
235
246
  TagKeyList = Shapes::ListShape.new(name: 'TagKeyList')
236
247
  TagMap = Shapes::MapShape.new(name: 'TagMap')
@@ -248,10 +259,15 @@ module Aws::Imagebuilder
248
259
  UpdateInfrastructureConfigurationRequest = Shapes::StructureShape.new(name: 'UpdateInfrastructureConfigurationRequest')
249
260
  UpdateInfrastructureConfigurationResponse = Shapes::StructureShape.new(name: 'UpdateInfrastructureConfigurationResponse')
250
261
  Uri = Shapes::StringShape.new(name: 'Uri')
262
+ UserDataOverride = Shapes::StringShape.new(name: 'UserDataOverride')
251
263
  VersionNumber = Shapes::StringShape.new(name: 'VersionNumber')
252
264
 
253
265
  AccountList.member = Shapes::ShapeRef.new(shape: AccountId)
254
266
 
267
+ AdditionalInstanceConfiguration.add_member(:systems_manager_agent, Shapes::ShapeRef.new(shape: SystemsManagerAgent, location_name: "systemsManagerAgent"))
268
+ AdditionalInstanceConfiguration.add_member(:user_data_override, Shapes::ShapeRef.new(shape: UserDataOverride, location_name: "userDataOverride"))
269
+ AdditionalInstanceConfiguration.struct_class = Types::AdditionalInstanceConfiguration
270
+
255
271
  Ami.add_member(:region, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "region"))
256
272
  Ami.add_member(:image, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "image"))
257
273
  Ami.add_member(:name, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "name"))
@@ -293,6 +309,7 @@ module Aws::Imagebuilder
293
309
  Component.add_member(:type, Shapes::ShapeRef.new(shape: ComponentType, location_name: "type"))
294
310
  Component.add_member(:platform, Shapes::ShapeRef.new(shape: Platform, location_name: "platform"))
295
311
  Component.add_member(:supported_os_versions, Shapes::ShapeRef.new(shape: OsVersionList, location_name: "supportedOsVersions"))
312
+ Component.add_member(:parameters, Shapes::ShapeRef.new(shape: ComponentParameterDetailList, location_name: "parameters"))
296
313
  Component.add_member(:owner, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "owner"))
297
314
  Component.add_member(:data, Shapes::ShapeRef.new(shape: ComponentData, location_name: "data"))
298
315
  Component.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "kmsKeyId"))
@@ -302,10 +319,27 @@ module Aws::Imagebuilder
302
319
  Component.struct_class = Types::Component
303
320
 
304
321
  ComponentConfiguration.add_member(:component_arn, Shapes::ShapeRef.new(shape: ComponentVersionArnOrBuildVersionArn, required: true, location_name: "componentArn"))
322
+ ComponentConfiguration.add_member(:parameters, Shapes::ShapeRef.new(shape: ComponentParameterList, location_name: "parameters"))
305
323
  ComponentConfiguration.struct_class = Types::ComponentConfiguration
306
324
 
307
325
  ComponentConfigurationList.member = Shapes::ShapeRef.new(shape: ComponentConfiguration)
308
326
 
327
+ ComponentParameter.add_member(:name, Shapes::ShapeRef.new(shape: ComponentParameterName, required: true, location_name: "name"))
328
+ ComponentParameter.add_member(:value, Shapes::ShapeRef.new(shape: ComponentParameterValueList, required: true, location_name: "value"))
329
+ ComponentParameter.struct_class = Types::ComponentParameter
330
+
331
+ ComponentParameterDetail.add_member(:name, Shapes::ShapeRef.new(shape: ComponentParameterName, required: true, location_name: "name"))
332
+ ComponentParameterDetail.add_member(:type, Shapes::ShapeRef.new(shape: ComponentParameterType, required: true, location_name: "type"))
333
+ ComponentParameterDetail.add_member(:default_value, Shapes::ShapeRef.new(shape: ComponentParameterValueList, location_name: "defaultValue"))
334
+ ComponentParameterDetail.add_member(:description, Shapes::ShapeRef.new(shape: ComponentParameterDescription, location_name: "description"))
335
+ ComponentParameterDetail.struct_class = Types::ComponentParameterDetail
336
+
337
+ ComponentParameterDetailList.member = Shapes::ShapeRef.new(shape: ComponentParameterDetail)
338
+
339
+ ComponentParameterList.member = Shapes::ShapeRef.new(shape: ComponentParameter)
340
+
341
+ ComponentParameterValueList.member = Shapes::ShapeRef.new(shape: ComponentParameterValue)
342
+
309
343
  ComponentSummary.add_member(:arn, Shapes::ShapeRef.new(shape: ImageBuilderArn, location_name: "arn"))
310
344
  ComponentSummary.add_member(:name, Shapes::ShapeRef.new(shape: ResourceName, location_name: "name"))
311
345
  ComponentSummary.add_member(:version, Shapes::ShapeRef.new(shape: VersionNumber, location_name: "version"))
@@ -456,6 +490,7 @@ module Aws::Imagebuilder
456
490
  CreateImageRecipeRequest.add_member(:block_device_mappings, Shapes::ShapeRef.new(shape: InstanceBlockDeviceMappings, location_name: "blockDeviceMappings"))
457
491
  CreateImageRecipeRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
458
492
  CreateImageRecipeRequest.add_member(:working_directory, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "workingDirectory"))
493
+ CreateImageRecipeRequest.add_member(:additional_instance_configuration, Shapes::ShapeRef.new(shape: AdditionalInstanceConfiguration, location_name: "additionalInstanceConfiguration"))
459
494
  CreateImageRecipeRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, required: true, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
460
495
  CreateImageRecipeRequest.struct_class = Types::CreateImageRecipeRequest
461
496
 
@@ -738,6 +773,7 @@ module Aws::Imagebuilder
738
773
  ImageRecipe.add_member(:date_created, Shapes::ShapeRef.new(shape: DateTime, location_name: "dateCreated"))
739
774
  ImageRecipe.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
740
775
  ImageRecipe.add_member(:working_directory, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "workingDirectory"))
776
+ ImageRecipe.add_member(:additional_instance_configuration, Shapes::ShapeRef.new(shape: AdditionalInstanceConfiguration, location_name: "additionalInstanceConfiguration"))
741
777
  ImageRecipe.struct_class = Types::ImageRecipe
742
778
 
743
779
  ImageRecipeSummary.add_member(:arn, Shapes::ShapeRef.new(shape: ImageBuilderArn, location_name: "arn"))
@@ -1094,6 +1130,9 @@ module Aws::Imagebuilder
1094
1130
 
1095
1131
  StringList.member = Shapes::ShapeRef.new(shape: NonEmptyString)
1096
1132
 
1133
+ SystemsManagerAgent.add_member(:uninstall_after_build, Shapes::ShapeRef.new(shape: NullableBoolean, location_name: "uninstallAfterBuild"))
1134
+ SystemsManagerAgent.struct_class = Types::SystemsManagerAgent
1135
+
1097
1136
  TagKeyList.member = Shapes::ShapeRef.new(shape: TagKey)
1098
1137
 
1099
1138
  TagMap.key = Shapes::ShapeRef.new(shape: TagKey)
@@ -10,23 +10,65 @@
10
10
  module Aws::Imagebuilder
11
11
  module Types
12
12
 
13
- # Details of an EC2 AMI.
13
+ # In addition to your infrastruction configuration, these settings
14
+ # provide an extra layer of control over your build instances. For
15
+ # instances where Image Builder installs the SSM agent, you can choose
16
+ # whether to keep it for the AMI that you create. You can also specify
17
+ # commands to run on launch for all of your build instances.
18
+ #
19
+ # @note When making an API call, you may pass AdditionalInstanceConfiguration
20
+ # data as a hash:
21
+ #
22
+ # {
23
+ # systems_manager_agent: {
24
+ # uninstall_after_build: false,
25
+ # },
26
+ # user_data_override: "UserDataOverride",
27
+ # }
28
+ #
29
+ # @!attribute [rw] systems_manager_agent
30
+ # Contains settings for the SSM agent on your build instance.
31
+ # @return [Types::SystemsManagerAgent]
32
+ #
33
+ # @!attribute [rw] user_data_override
34
+ # Use this property to provide commands or a command script to run
35
+ # when you launch your build instance.
36
+ #
37
+ # <note markdown="1"> The userDataOverride property replaces any commands that Image
38
+ # Builder might have added to ensure that SSM is installed on your
39
+ # Linux build instance. If you override the user data, make sure that
40
+ # you add commands to install SSM, if it is not pre-installed on your
41
+ # source image.
42
+ #
43
+ # </note>
44
+ # @return [String]
45
+ #
46
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/AdditionalInstanceConfiguration AWS API Documentation
47
+ #
48
+ class AdditionalInstanceConfiguration < Struct.new(
49
+ :systems_manager_agent,
50
+ :user_data_override)
51
+ SENSITIVE = []
52
+ include Aws::Structure
53
+ end
54
+
55
+ # Details of an Amazon EC2 AMI.
14
56
  #
15
57
  # @!attribute [rw] region
16
- # The AWS Region of the EC2 AMI.
58
+ # The Region of the Amazon EC2 AMI.
17
59
  # @return [String]
18
60
  #
19
61
  # @!attribute [rw] image
20
- # The AMI ID of the EC2 AMI.
62
+ # The AMI ID of the Amazon EC2 AMI.
21
63
  # @return [String]
22
64
  #
23
65
  # @!attribute [rw] name
24
- # The name of the EC2 AMI.
66
+ # The name of the Amazon EC2 AMI.
25
67
  # @return [String]
26
68
  #
27
69
  # @!attribute [rw] description
28
- # The description of the EC2 AMI. Minimum and maximum length are in
29
- # characters.
70
+ # The description of the Amazon EC2 AMI. Minimum and maximum length
71
+ # are in characters.
30
72
  # @return [String]
31
73
  #
32
74
  # @!attribute [rw] state
@@ -91,8 +133,8 @@ module Aws::Imagebuilder
91
133
  # @return [String]
92
134
  #
93
135
  # @!attribute [rw] launch_permission
94
- # Launch permissions can be used to configure which AWS accounts can
95
- # use the AMI to launch instances.
136
+ # Launch permissions can be used to configure which accounts can use
137
+ # the AMI to launch instances.
96
138
  # @return [Types::LaunchPermissionConfiguration]
97
139
  #
98
140
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/AmiDistributionConfiguration AWS API Documentation
@@ -227,6 +269,11 @@ module Aws::Imagebuilder
227
269
  # parent image OS version during image recipe creation.
228
270
  # @return [Array<String>]
229
271
  #
272
+ # @!attribute [rw] parameters
273
+ # Contains parameter details for each of the parameters that are
274
+ # defined for the component.
275
+ # @return [Array<Types::ComponentParameterDetail>]
276
+ #
230
277
  # @!attribute [rw] owner
231
278
  # The owner of the component.
232
279
  # @return [String]
@@ -262,6 +309,7 @@ module Aws::Imagebuilder
262
309
  :type,
263
310
  :platform,
264
311
  :supported_os_versions,
312
+ :parameters,
265
313
  :owner,
266
314
  :data,
267
315
  :kms_key_id,
@@ -279,16 +327,86 @@ module Aws::Imagebuilder
279
327
  #
280
328
  # {
281
329
  # component_arn: "ComponentVersionArnOrBuildVersionArn", # required
330
+ # parameters: [
331
+ # {
332
+ # name: "ComponentParameterName", # required
333
+ # value: ["ComponentParameterValue"], # required
334
+ # },
335
+ # ],
282
336
  # }
283
337
  #
284
338
  # @!attribute [rw] component_arn
285
339
  # The Amazon Resource Name (ARN) of the component.
286
340
  # @return [String]
287
341
  #
342
+ # @!attribute [rw] parameters
343
+ # A group of parameter settings that are used to configure the
344
+ # component for a specific recipe.
345
+ # @return [Array<Types::ComponentParameter>]
346
+ #
288
347
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ComponentConfiguration AWS API Documentation
289
348
  #
290
349
  class ComponentConfiguration < Struct.new(
291
- :component_arn)
350
+ :component_arn,
351
+ :parameters)
352
+ SENSITIVE = []
353
+ include Aws::Structure
354
+ end
355
+
356
+ # Contains a key/value pair that sets the named component parameter.
357
+ #
358
+ # @note When making an API call, you may pass ComponentParameter
359
+ # data as a hash:
360
+ #
361
+ # {
362
+ # name: "ComponentParameterName", # required
363
+ # value: ["ComponentParameterValue"], # required
364
+ # }
365
+ #
366
+ # @!attribute [rw] name
367
+ # The name of the component parameter to set.
368
+ # @return [String]
369
+ #
370
+ # @!attribute [rw] value
371
+ # Sets the value for the named component parameter.
372
+ # @return [Array<String>]
373
+ #
374
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ComponentParameter AWS API Documentation
375
+ #
376
+ class ComponentParameter < Struct.new(
377
+ :name,
378
+ :value)
379
+ SENSITIVE = []
380
+ include Aws::Structure
381
+ end
382
+
383
+ # Defines a parameter that is used to provide configuration details for
384
+ # the component.
385
+ #
386
+ # @!attribute [rw] name
387
+ # The name of this input parameter.
388
+ # @return [String]
389
+ #
390
+ # @!attribute [rw] type
391
+ # The type of input this parameter provides. The currently supported
392
+ # value is "string".
393
+ # @return [String]
394
+ #
395
+ # @!attribute [rw] default_value
396
+ # The default value of this parameter if no input is provided.
397
+ # @return [Array<String>]
398
+ #
399
+ # @!attribute [rw] description
400
+ # Describes this parameter.
401
+ # @return [String]
402
+ #
403
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ComponentParameterDetail AWS API Documentation
404
+ #
405
+ class ComponentParameterDetail < Struct.new(
406
+ :name,
407
+ :type,
408
+ :default_value,
409
+ :description)
292
410
  SENSITIVE = []
293
411
  include Aws::Structure
294
412
  end
@@ -683,10 +801,11 @@ module Aws::Imagebuilder
683
801
  # @return [String]
684
802
  #
685
803
  # @!attribute [rw] uri
686
- # The uri of the component. Must be an S3 URL and the requester must
687
- # have permission to access the S3 bucket. If you use S3, you can
688
- # specify component content up to your service quota. Either `data` or
689
- # `uri` can be used to specify the data within the component.
804
+ # The uri of the component. Must be an Amazon S3 URL and the requester
805
+ # must have permission to access the Amazon S3 bucket. If you use
806
+ # Amazon S3, you can specify component content up to your service
807
+ # quota. Either `data` or `uri` can be used to specify the data within
808
+ # the component.
690
809
  # @return [String]
691
810
  #
692
811
  # @!attribute [rw] kms_key_id
@@ -756,6 +875,12 @@ module Aws::Imagebuilder
756
875
  # components: [ # required
757
876
  # {
758
877
  # component_arn: "ComponentVersionArnOrBuildVersionArn", # required
878
+ # parameters: [
879
+ # {
880
+ # name: "ComponentParameterName", # required
881
+ # value: ["ComponentParameterValue"], # required
882
+ # },
883
+ # ],
759
884
  # },
760
885
  # ],
761
886
  # instance_configuration: {
@@ -827,7 +952,7 @@ module Aws::Imagebuilder
827
952
  # @return [String]
828
953
  #
829
954
  # @!attribute [rw] dockerfile_template_uri
830
- # The S3 URI for the Dockerfile that will be used to build your
955
+ # The Amazon S3 URI for the Dockerfile that will be used to build your
831
956
  # container image.
832
957
  # @return [String]
833
958
  #
@@ -1155,6 +1280,12 @@ module Aws::Imagebuilder
1155
1280
  # components: [ # required
1156
1281
  # {
1157
1282
  # component_arn: "ComponentVersionArnOrBuildVersionArn", # required
1283
+ # parameters: [
1284
+ # {
1285
+ # name: "ComponentParameterName", # required
1286
+ # value: ["ComponentParameterValue"], # required
1287
+ # },
1288
+ # ],
1158
1289
  # },
1159
1290
  # ],
1160
1291
  # parent_image: "NonEmptyString", # required
@@ -1178,6 +1309,12 @@ module Aws::Imagebuilder
1178
1309
  # "TagKey" => "TagValue",
1179
1310
  # },
1180
1311
  # working_directory: "NonEmptyString",
1312
+ # additional_instance_configuration: {
1313
+ # systems_manager_agent: {
1314
+ # uninstall_after_build: false,
1315
+ # },
1316
+ # user_data_override: "UserDataOverride",
1317
+ # },
1181
1318
  # client_token: "ClientToken", # required
1182
1319
  # }
1183
1320
  #
@@ -1217,9 +1354,14 @@ module Aws::Imagebuilder
1217
1354
  # @return [Hash<String,String>]
1218
1355
  #
1219
1356
  # @!attribute [rw] working_directory
1220
- # The working directory to be used during build and test workflows.
1357
+ # The working directory used during build and test workflows.
1221
1358
  # @return [String]
1222
1359
  #
1360
+ # @!attribute [rw] additional_instance_configuration
1361
+ # Specify additional settings and launch scripts for your build
1362
+ # instances.
1363
+ # @return [Types::AdditionalInstanceConfiguration]
1364
+ #
1223
1365
  # @!attribute [rw] client_token
1224
1366
  # The idempotency token used to make this request idempotent.
1225
1367
  #
@@ -1238,6 +1380,7 @@ module Aws::Imagebuilder
1238
1380
  :block_device_mappings,
1239
1381
  :tags,
1240
1382
  :working_directory,
1383
+ :additional_instance_configuration,
1241
1384
  :client_token)
1242
1385
  SENSITIVE = []
1243
1386
  include Aws::Structure
@@ -1410,17 +1553,17 @@ module Aws::Imagebuilder
1410
1553
  #
1411
1554
  # @!attribute [rw] instance_profile_name
1412
1555
  # The instance profile to associate with the instance used to
1413
- # customize your EC2 AMI.
1556
+ # customize your Amazon EC2 AMI.
1414
1557
  # @return [String]
1415
1558
  #
1416
1559
  # @!attribute [rw] security_group_ids
1417
1560
  # The security group IDs to associate with the instance used to
1418
- # customize your EC2 AMI.
1561
+ # customize your Amazon EC2 AMI.
1419
1562
  # @return [Array<String>]
1420
1563
  #
1421
1564
  # @!attribute [rw] subnet_id
1422
1565
  # The subnet ID in which to place the instance used to customize your
1423
- # EC2 AMI.
1566
+ # Amazon EC2 AMI.
1424
1567
  # @return [String]
1425
1568
  #
1426
1569
  # @!attribute [rw] logging
@@ -2736,6 +2879,14 @@ module Aws::Imagebuilder
2736
2879
  # The working directory to be used during build and test workflows.
2737
2880
  # @return [String]
2738
2881
  #
2882
+ # @!attribute [rw] additional_instance_configuration
2883
+ # Before you create a new AMI, Image Builder launches temporary Amazon
2884
+ # EC2 instances to build and test your image configuration. Instance
2885
+ # configuration adds a layer of control over those instances. You can
2886
+ # define settings and add scripts to run when an instance is launched
2887
+ # from your AMI.
2888
+ # @return [Types::AdditionalInstanceConfiguration]
2889
+ #
2739
2890
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ImageRecipe AWS API Documentation
2740
2891
  #
2741
2892
  class ImageRecipe < Struct.new(
@@ -2751,7 +2902,8 @@ module Aws::Imagebuilder
2751
2902
  :block_device_mappings,
2752
2903
  :date_created,
2753
2904
  :tags,
2754
- :working_directory)
2905
+ :working_directory,
2906
+ :additional_instance_configuration)
2755
2907
  SENSITIVE = []
2756
2908
  include Aws::Structure
2757
2909
  end
@@ -3022,10 +3174,11 @@ module Aws::Imagebuilder
3022
3174
  # @return [String]
3023
3175
  #
3024
3176
  # @!attribute [rw] uri
3025
- # The uri of the component. Must be an S3 URL and the requester must
3026
- # have permission to access the S3 bucket. If you use S3, you can
3027
- # specify component content up to your service quota. Either `data` or
3028
- # `uri` can be used to specify the data within the component.
3177
+ # The uri of the component. Must be an Amazon S3 URL and the requester
3178
+ # must have permission to access the Amazon S3 bucket. If you use
3179
+ # Amazon S3, you can specify component content up to your service
3180
+ # quota. Either `data` or `uri` can be used to specify the data within
3181
+ # the component.
3029
3182
  # @return [String]
3030
3183
  #
3031
3184
  # @!attribute [rw] kms_key_id
@@ -3119,7 +3272,7 @@ module Aws::Imagebuilder
3119
3272
  # @return [Types::Logging]
3120
3273
  #
3121
3274
  # @!attribute [rw] key_pair
3122
- # The EC2 key pair of the infrastructure configuration.
3275
+ # The Amazon EC2 key pair of the infrastructure configuration.
3123
3276
  # @return [String]
3124
3277
  #
3125
3278
  # @!attribute [rw] terminate_instance_on_failure
@@ -3170,7 +3323,7 @@ module Aws::Imagebuilder
3170
3323
  include Aws::Structure
3171
3324
  end
3172
3325
 
3173
- # The infrastructure used when building EC2 AMIs.
3326
+ # The infrastructure used when building Amazon EC2 AMIs.
3174
3327
  #
3175
3328
  # @!attribute [rw] arn
3176
3329
  # The Amazon Resource Name (ARN) of the infrastructure configuration.
@@ -3401,11 +3554,11 @@ module Aws::Imagebuilder
3401
3554
  end
3402
3555
 
3403
3556
  # Describes the configuration for a launch permission. The launch
3404
- # permission modification request is sent to the [EC2
3557
+ # permission modification request is sent to the [Amazon EC2
3405
3558
  # ModifyImageAttribute][1] API on behalf of the user for each Region
3406
3559
  # they have selected to distribute the AMI. To make an AMI public, set
3407
3560
  # the launch permission authorized accounts to `all`. See the examples
3408
- # for making an AMI public at [EC2 ModifyImageAttribute][1].
3561
+ # for making an AMI public at [Amazon EC2 ModifyImageAttribute][1].
3409
3562
  #
3410
3563
  #
3411
3564
  #
@@ -3420,7 +3573,7 @@ module Aws::Imagebuilder
3420
3573
  # }
3421
3574
  #
3422
3575
  # @!attribute [rw] user_ids
3423
- # The AWS account ID.
3576
+ # The account ID.
3424
3577
  # @return [Array<String>]
3425
3578
  #
3426
3579
  # @!attribute [rw] user_groups
@@ -3436,7 +3589,8 @@ module Aws::Imagebuilder
3436
3589
  include Aws::Structure
3437
3590
  end
3438
3591
 
3439
- # Identifies an EC2 launch template to use for a specific account.
3592
+ # Identifies an Amazon EC2 launch template to use for a specific
3593
+ # account.
3440
3594
  #
3441
3595
  # @note When making an API call, you may pass LaunchTemplateConfiguration
3442
3596
  # data as a hash:
@@ -3448,7 +3602,7 @@ module Aws::Imagebuilder
3448
3602
  # }
3449
3603
  #
3450
3604
  # @!attribute [rw] launch_template_id
3451
- # Identifies the EC2 launch template to use.
3605
+ # Identifies the Amazon EC2 launch template to use.
3452
3606
  # @return [String]
3453
3607
  #
3454
3608
  # @!attribute [rw] account_id
@@ -3456,8 +3610,8 @@ module Aws::Imagebuilder
3456
3610
  # @return [String]
3457
3611
  #
3458
3612
  # @!attribute [rw] set_default_version
3459
- # Set the specified EC2 launch template as the default launch template
3460
- # for the specified account.
3613
+ # Set the specified Amazon EC2 launch template as the default launch
3614
+ # template for the specified account.
3461
3615
  # @return [Boolean]
3462
3616
  #
3463
3617
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/LaunchTemplateConfiguration AWS API Documentation
@@ -4279,7 +4433,7 @@ module Aws::Imagebuilder
4279
4433
  # The resources produced by this image.
4280
4434
  #
4281
4435
  # @!attribute [rw] amis
4282
- # The EC2 AMIs created by this image.
4436
+ # The Amazon EC2 AMIs created by this image.
4283
4437
  # @return [Array<Types::Ami>]
4284
4438
  #
4285
4439
  # @!attribute [rw] containers
@@ -4714,6 +4868,30 @@ module Aws::Imagebuilder
4714
4868
  include Aws::Structure
4715
4869
  end
4716
4870
 
4871
+ # Contains settings for the SSM agent on your build instance.
4872
+ #
4873
+ # @note When making an API call, you may pass SystemsManagerAgent
4874
+ # data as a hash:
4875
+ #
4876
+ # {
4877
+ # uninstall_after_build: false,
4878
+ # }
4879
+ #
4880
+ # @!attribute [rw] uninstall_after_build
4881
+ # This property defaults to true. If Image Builder installs the SSM
4882
+ # agent on a build instance, it removes the agent before creating a
4883
+ # snapshot for the AMI. To ensure that the AMI you create includes the
4884
+ # SSM agent, set this property to false.
4885
+ # @return [Boolean]
4886
+ #
4887
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/SystemsManagerAgent AWS API Documentation
4888
+ #
4889
+ class SystemsManagerAgent < Struct.new(
4890
+ :uninstall_after_build)
4891
+ SENSITIVE = []
4892
+ include Aws::Structure
4893
+ end
4894
+
4717
4895
  # @note When making an API call, you may pass TagResourceRequest
4718
4896
  # data as a hash:
4719
4897
  #
@@ -5062,17 +5240,17 @@ module Aws::Imagebuilder
5062
5240
  #
5063
5241
  # @!attribute [rw] instance_profile_name
5064
5242
  # The instance profile to associate with the instance used to
5065
- # customize your EC2 AMI.
5243
+ # customize your Amazon EC2 AMI.
5066
5244
  # @return [String]
5067
5245
  #
5068
5246
  # @!attribute [rw] security_group_ids
5069
5247
  # The security group IDs to associate with the instance used to
5070
- # customize your EC2 AMI.
5248
+ # customize your Amazon EC2 AMI.
5071
5249
  # @return [Array<String>]
5072
5250
  #
5073
5251
  # @!attribute [rw] subnet_id
5074
- # The subnet ID to place the instance used to customize your EC2 AMI
5075
- # in.
5252
+ # The subnet ID to place the instance used to customize your Amazon
5253
+ # EC2 AMI in.
5076
5254
  # @return [String]
5077
5255
  #
5078
5256
  # @!attribute [rw] 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.22.0
4
+ version: 1.23.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-05-14 00:00:00.000000000 Z
11
+ date: 2021-07-06 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core