aws-sdk-imagebuilder 1.32.0 → 1.36.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: 231974d6f1be6c0e1de8ac1922cd0ac65bf3acea458dee93bb1471d6f4700417
4
- data.tar.gz: fcc33d51b12cf13ffa65639b81a498301e7ae03829c28aa95029155be9bc422c
3
+ metadata.gz: 1608c70e559b6b3966420b3c2364224745d63b598d1e7517634058d00c5f65c5
4
+ data.tar.gz: 8e89294ae4ef85250e50d25a67331780ffa57d57e957bc86098c226b1c8d1096
5
5
  SHA512:
6
- metadata.gz: 2589a6cff759d5a0f1d0510841a7ededac7bdde5e9b1815b733464b2d89e459305f30143f26d38aa3339863d0f849c76d3c981b32e8311f424d0654d4b019408
7
- data.tar.gz: 8a132013fadb5e9c4501979d6c2b76d59a662dcb370036dddfc6e199252972cab5e415321b40c0e9ec895abb3e2149e6ca429dfef47980fb12e367ca79bef72d
6
+ metadata.gz: 3c06d9118eceba65c052e3a5f4272824a41ea25571a84df11435b11e3f71c300adb5f538ecb832ca797055b1006827589208b7efca0a0b79b6a89e781a220b0e
7
+ data.tar.gz: 78c5dce356adf5c0fca75f08e936ba68d464356b4aaa5409c392e03d311ecfc6909388ea2146b3a1584da9a1590866c921fc38f33821dfe3f65ccecaa66198f8
data/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.36.0 (2021-12-20)
5
+ ------------------
6
+
7
+ * Feature - This release adds support for importing and exporting VM Images as part of the Image Creation workflow via EC2 VM Import/Export.
8
+
9
+ 1.35.0 (2021-11-30)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ 1.34.0 (2021-11-24)
15
+ ------------------
16
+
17
+ * Feature - This release adds support for sharing AMIs with Organizations within an EC2 Image Builder Distribution Configuration.
18
+
19
+ 1.33.0 (2021-11-04)
20
+ ------------------
21
+
22
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
23
+
4
24
  1.32.0 (2021-10-18)
5
25
  ------------------
6
26
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.32.0
1
+ 1.36.0
@@ -119,7 +119,9 @@ module Aws::Imagebuilder
119
119
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
120
  # are very aggressive. Construct and pass an instance of
121
121
  # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
- # enable retries and extended timeouts.
122
+ # enable retries and extended timeouts. Instance profile credential
123
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
124
+ # to true.
123
125
  #
124
126
  # @option options [required, String] :region
125
127
  # The AWS region to connect to. The configured `:region` is
@@ -275,6 +277,15 @@ module Aws::Imagebuilder
275
277
  # ** Please note ** When response stubbing is enabled, no HTTP
276
278
  # requests are made, and retries are disabled.
277
279
  #
280
+ # @option options [Boolean] :use_dualstack_endpoint
281
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
282
+ # will be used if available.
283
+ #
284
+ # @option options [Boolean] :use_fips_endpoint
285
+ # When set to `true`, fips compatible endpoints will be used if available.
286
+ # When a `fips` region is used, the region is normalized and this config
287
+ # is set to `true`.
288
+ #
278
289
  # @option options [Boolean] :validate_params (true)
279
290
  # When `true`, request parameters are validated before
280
291
  # sending the request.
@@ -335,11 +346,17 @@ module Aws::Imagebuilder
335
346
  # cancel.
336
347
  #
337
348
  # @option params [required, String] :client_token
338
- # The idempotency token used to make this request idempotent.
349
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
350
+ # the request. For more information, see [Ensuring idempotency][1] in
351
+ # the *Amazon EC2 API Reference*.
339
352
  #
340
353
  # **A suitable default value is auto-generated.** You should normally
341
354
  # not need to pass this option.**
342
355
  #
356
+ #
357
+ #
358
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
359
+ #
343
360
  # @return [Types::CancelImageCreationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
344
361
  #
345
362
  # * {Types::CancelImageCreationResponse#request_id #request_id} => String
@@ -670,6 +687,8 @@ module Aws::Imagebuilder
670
687
  # launch_permission: {
671
688
  # user_ids: ["AccountId"],
672
689
  # user_groups: ["NonEmptyString"],
690
+ # organization_arns: ["OrganizationArn"],
691
+ # organizational_unit_arns: ["OrganizationalUnitArn"],
673
692
  # },
674
693
  # },
675
694
  # container_distribution_configuration: {
@@ -688,6 +707,12 @@ module Aws::Imagebuilder
688
707
  # set_default_version: false,
689
708
  # },
690
709
  # ],
710
+ # s3_export_configuration: {
711
+ # role_name: "NonEmptyString", # required
712
+ # disk_image_format: "VMDK", # required, accepts VMDK, RAW, VHD
713
+ # s3_bucket: "NonEmptyString", # required
714
+ # s3_prefix: "NonEmptyString",
715
+ # },
691
716
  # },
692
717
  # ],
693
718
  # tags: {
@@ -1238,7 +1263,7 @@ module Aws::Imagebuilder
1238
1263
  #
1239
1264
  # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/deregister-ami.html
1240
1265
  # [2]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/deregister-ami.html
1241
- # [3]: https://docs.aws.amazon.com/https:/docs.aws.amazon.comAmazonECR/latest/userguide/delete_image.html
1266
+ # [3]: https://docs.aws.amazon.com/AmazonECR/latest/userguide/delete_image.html
1242
1267
  #
1243
1268
  # @option params [required, String] :image_build_version_arn
1244
1269
  # The Amazon Resource Name (ARN) of the Image Builder image resource to
@@ -1577,6 +1602,10 @@ module Aws::Imagebuilder
1577
1602
  # resp.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.user_ids[0] #=> String
1578
1603
  # resp.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.user_groups #=> Array
1579
1604
  # resp.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.user_groups[0] #=> String
1605
+ # resp.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.organization_arns #=> Array
1606
+ # resp.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.organization_arns[0] #=> String
1607
+ # resp.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.organizational_unit_arns #=> Array
1608
+ # resp.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.organizational_unit_arns[0] #=> String
1580
1609
  # resp.distribution_configuration.distributions[0].container_distribution_configuration.description #=> String
1581
1610
  # resp.distribution_configuration.distributions[0].container_distribution_configuration.container_tags #=> Array
1582
1611
  # resp.distribution_configuration.distributions[0].container_distribution_configuration.container_tags[0] #=> String
@@ -1588,6 +1617,10 @@ module Aws::Imagebuilder
1588
1617
  # resp.distribution_configuration.distributions[0].launch_template_configurations[0].launch_template_id #=> String
1589
1618
  # resp.distribution_configuration.distributions[0].launch_template_configurations[0].account_id #=> String
1590
1619
  # resp.distribution_configuration.distributions[0].launch_template_configurations[0].set_default_version #=> Boolean
1620
+ # resp.distribution_configuration.distributions[0].s3_export_configuration.role_name #=> String
1621
+ # resp.distribution_configuration.distributions[0].s3_export_configuration.disk_image_format #=> String, one of "VMDK", "RAW", "VHD"
1622
+ # resp.distribution_configuration.distributions[0].s3_export_configuration.s3_bucket #=> String
1623
+ # resp.distribution_configuration.distributions[0].s3_export_configuration.s3_prefix #=> String
1591
1624
  # resp.distribution_configuration.timeout_minutes #=> Integer
1592
1625
  # resp.distribution_configuration.date_created #=> String
1593
1626
  # resp.distribution_configuration.date_updated #=> String
@@ -1739,6 +1772,10 @@ module Aws::Imagebuilder
1739
1772
  # resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.user_ids[0] #=> String
1740
1773
  # resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.user_groups #=> Array
1741
1774
  # resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.user_groups[0] #=> String
1775
+ # resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.organization_arns #=> Array
1776
+ # resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.organization_arns[0] #=> String
1777
+ # resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.organizational_unit_arns #=> Array
1778
+ # resp.image.distribution_configuration.distributions[0].ami_distribution_configuration.launch_permission.organizational_unit_arns[0] #=> String
1742
1779
  # resp.image.distribution_configuration.distributions[0].container_distribution_configuration.description #=> String
1743
1780
  # resp.image.distribution_configuration.distributions[0].container_distribution_configuration.container_tags #=> Array
1744
1781
  # resp.image.distribution_configuration.distributions[0].container_distribution_configuration.container_tags[0] #=> String
@@ -1750,6 +1787,10 @@ module Aws::Imagebuilder
1750
1787
  # resp.image.distribution_configuration.distributions[0].launch_template_configurations[0].launch_template_id #=> String
1751
1788
  # resp.image.distribution_configuration.distributions[0].launch_template_configurations[0].account_id #=> String
1752
1789
  # resp.image.distribution_configuration.distributions[0].launch_template_configurations[0].set_default_version #=> Boolean
1790
+ # resp.image.distribution_configuration.distributions[0].s3_export_configuration.role_name #=> String
1791
+ # resp.image.distribution_configuration.distributions[0].s3_export_configuration.disk_image_format #=> String, one of "VMDK", "RAW", "VHD"
1792
+ # resp.image.distribution_configuration.distributions[0].s3_export_configuration.s3_bucket #=> String
1793
+ # resp.image.distribution_configuration.distributions[0].s3_export_configuration.s3_prefix #=> String
1753
1794
  # resp.image.distribution_configuration.timeout_minutes #=> Integer
1754
1795
  # resp.image.distribution_configuration.date_created #=> String
1755
1796
  # resp.image.distribution_configuration.date_updated #=> String
@@ -1772,6 +1813,7 @@ module Aws::Imagebuilder
1772
1813
  # resp.image.output_resources.containers[0].image_uris[0] #=> String
1773
1814
  # resp.image.tags #=> Hash
1774
1815
  # resp.image.tags["TagKey"] #=> String
1816
+ # resp.image.build_type #=> String, one of "USER_INITIATED", "SCHEDULED", "IMPORT"
1775
1817
  #
1776
1818
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetImage AWS API Documentation
1777
1819
  #
@@ -2111,6 +2153,113 @@ module Aws::Imagebuilder
2111
2153
  req.send_request(options)
2112
2154
  end
2113
2155
 
2156
+ # When you export your virtual machine (VM) from its virtualization
2157
+ # environment, that process creates a set of one or more disk container
2158
+ # files that act as snapshots of your VM’s environment, settings, and
2159
+ # data. The Amazon EC2 API [ImportImage][1] action uses those files to
2160
+ # import your VM and create an AMI. To import using the CLI command, see
2161
+ # [import-image][2]
2162
+ #
2163
+ # You can reference the task ID from the VM import to pull in the AMI
2164
+ # that the import created as the base image for your Image Builder
2165
+ # recipe.
2166
+ #
2167
+ #
2168
+ #
2169
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportImage.html
2170
+ # [2]: https://docs.aws.amazon.com/cli/latest/reference/ec2/import-image.html
2171
+ #
2172
+ # @option params [required, String] :name
2173
+ # The name of the base image that is created by the import process.
2174
+ #
2175
+ # @option params [required, String] :semantic_version
2176
+ # The semantic version to attach to the base image that was created
2177
+ # during the import process. This version follows the semantic version
2178
+ # syntax.
2179
+ #
2180
+ # <note markdown="1"> The semantic version has four nodes:
2181
+ # &lt;major&gt;.&lt;minor&gt;.&lt;patch&gt;/&lt;build&gt;. You can
2182
+ # assign values for the first three, and can filter on all of them.
2183
+ #
2184
+ # **Assignment:** For the first three nodes you can assign any positive
2185
+ # integer value, including zero, with an upper limit of 2^30-1, or
2186
+ # 1073741823 for each node. Image Builder automatically assigns the
2187
+ # build number to the fourth node.
2188
+ #
2189
+ # **Patterns:** You can use any numeric pattern that adheres to the
2190
+ # assignment requirements for the nodes that you can assign. For
2191
+ # example, you might choose a software version pattern, such as 1.0.0,
2192
+ # or a date, such as 2021.01.01.
2193
+ #
2194
+ # </note>
2195
+ #
2196
+ # @option params [String] :description
2197
+ # The description for the base image that is created by the import
2198
+ # process.
2199
+ #
2200
+ # @option params [required, String] :platform
2201
+ # The operating system platform for the imported VM.
2202
+ #
2203
+ # @option params [String] :os_version
2204
+ # The operating system version for the imported VM.
2205
+ #
2206
+ # @option params [required, String] :vm_import_task_id
2207
+ # The `importTaskId` (API) or `ImportTaskId` (CLI) from the Amazon EC2
2208
+ # VM import process. Image Builder retrieves information from the import
2209
+ # process to pull in the AMI that is created from the VM source as the
2210
+ # base image for your recipe.
2211
+ #
2212
+ # @option params [Hash<String,String>] :tags
2213
+ # Tags that are attached to the import resources.
2214
+ #
2215
+ # @option params [required, String] :client_token
2216
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
2217
+ # the request. For more information, see [Ensuring idempotency][1] in
2218
+ # the *Amazon EC2 API Reference*.
2219
+ #
2220
+ # **A suitable default value is auto-generated.** You should normally
2221
+ # not need to pass this option.**
2222
+ #
2223
+ #
2224
+ #
2225
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
2226
+ #
2227
+ # @return [Types::ImportVmImageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2228
+ #
2229
+ # * {Types::ImportVmImageResponse#request_id #request_id} => String
2230
+ # * {Types::ImportVmImageResponse#image_arn #image_arn} => String
2231
+ # * {Types::ImportVmImageResponse#client_token #client_token} => String
2232
+ #
2233
+ # @example Request syntax with placeholder values
2234
+ #
2235
+ # resp = client.import_vm_image({
2236
+ # name: "NonEmptyString", # required
2237
+ # semantic_version: "VersionNumber", # required
2238
+ # description: "NonEmptyString",
2239
+ # platform: "Windows", # required, accepts Windows, Linux
2240
+ # os_version: "OsVersion",
2241
+ # vm_import_task_id: "NonEmptyString", # required
2242
+ # tags: {
2243
+ # "TagKey" => "TagValue",
2244
+ # },
2245
+ # client_token: "ClientToken", # required
2246
+ # })
2247
+ #
2248
+ # @example Response structure
2249
+ #
2250
+ # resp.request_id #=> String
2251
+ # resp.image_arn #=> String
2252
+ # resp.client_token #=> String
2253
+ #
2254
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ImportVmImage AWS API Documentation
2255
+ #
2256
+ # @overload import_vm_image(params = {})
2257
+ # @param [Hash] params ({})
2258
+ def import_vm_image(params = {}, options = {})
2259
+ req = build_request(:import_vm_image, params)
2260
+ req.send_request(options)
2261
+ end
2262
+
2114
2263
  # Returns the list of component build versions for the specified
2115
2264
  # semantic version.
2116
2265
  #
@@ -2483,6 +2632,7 @@ module Aws::Imagebuilder
2483
2632
  # resp.image_summary_list[0].output_resources.containers[0].image_uris[0] #=> String
2484
2633
  # resp.image_summary_list[0].tags #=> Hash
2485
2634
  # resp.image_summary_list[0].tags["TagKey"] #=> String
2635
+ # resp.image_summary_list[0].build_type #=> String, one of "USER_INITIATED", "SCHEDULED", "IMPORT"
2486
2636
  # resp.next_token #=> String
2487
2637
  #
2488
2638
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListImageBuildVersions AWS API Documentation
@@ -2613,6 +2763,7 @@ module Aws::Imagebuilder
2613
2763
  # resp.image_summary_list[0].output_resources.containers[0].image_uris[0] #=> String
2614
2764
  # resp.image_summary_list[0].tags #=> Hash
2615
2765
  # resp.image_summary_list[0].tags["TagKey"] #=> String
2766
+ # resp.image_summary_list[0].build_type #=> String, one of "USER_INITIATED", "SCHEDULED", "IMPORT"
2616
2767
  # resp.next_token #=> String
2617
2768
  #
2618
2769
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListImagePipelineImages AWS API Documentation
@@ -2846,6 +2997,7 @@ module Aws::Imagebuilder
2846
2997
  # resp.image_version_list[0].os_version #=> String
2847
2998
  # resp.image_version_list[0].owner #=> String
2848
2999
  # resp.image_version_list[0].date_created #=> String
3000
+ # resp.image_version_list[0].build_type #=> String, one of "USER_INITIATED", "SCHEDULED", "IMPORT"
2849
3001
  # resp.next_token #=> String
2850
3002
  #
2851
3003
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListImages AWS API Documentation
@@ -2993,11 +3145,11 @@ module Aws::Imagebuilder
2993
3145
 
2994
3146
  # Applies a policy to a container image. We recommend that you call the
2995
3147
  # RAM API CreateResourceShare
2996
- # (https://docs.aws.amazon.com/ram/latest/APIReference/API\_CreateResourceShare.html)
3148
+ # (https://docs.aws.amazon.com//ram/latest/APIReference/API\_CreateResourceShare.html)
2997
3149
  # to share resources. If you call the Image Builder API
2998
3150
  # `PutContainerImagePolicy`, you must also call the RAM API
2999
3151
  # PromoteResourceShareCreatedFromPolicy
3000
- # (https://docs.aws.amazon.com/ram/latest/APIReference/API\_PromoteResourceShareCreatedFromPolicy.html)
3152
+ # (https://docs.aws.amazon.com//ram/latest/APIReference/API\_PromoteResourceShareCreatedFromPolicy.html)
3001
3153
  # in order for the resource to be visible to all principals with whom
3002
3154
  # the resource is shared.
3003
3155
  #
@@ -3261,6 +3413,8 @@ module Aws::Imagebuilder
3261
3413
  # launch_permission: {
3262
3414
  # user_ids: ["AccountId"],
3263
3415
  # user_groups: ["NonEmptyString"],
3416
+ # organization_arns: ["OrganizationArn"],
3417
+ # organizational_unit_arns: ["OrganizationalUnitArn"],
3264
3418
  # },
3265
3419
  # },
3266
3420
  # container_distribution_configuration: {
@@ -3279,6 +3433,12 @@ module Aws::Imagebuilder
3279
3433
  # set_default_version: false,
3280
3434
  # },
3281
3435
  # ],
3436
+ # s3_export_configuration: {
3437
+ # role_name: "NonEmptyString", # required
3438
+ # disk_image_format: "VMDK", # required, accepts VMDK, RAW, VHD
3439
+ # s3_bucket: "NonEmptyString", # required
3440
+ # s3_prefix: "NonEmptyString",
3441
+ # },
3282
3442
  # },
3283
3443
  # ],
3284
3444
  # client_token: "ClientToken", # required
@@ -3528,7 +3688,7 @@ module Aws::Imagebuilder
3528
3688
  params: params,
3529
3689
  config: config)
3530
3690
  context[:gem_name] = 'aws-sdk-imagebuilder'
3531
- context[:gem_version] = '1.32.0'
3691
+ context[:gem_version] = '1.36.0'
3532
3692
  Seahorse::Client::Request.new(handlers, context)
3533
3693
  end
3534
3694
 
@@ -22,6 +22,7 @@ module Aws::Imagebuilder
22
22
  AmiNameString = Shapes::StringShape.new(name: 'AmiNameString')
23
23
  Arn = Shapes::StringShape.new(name: 'Arn')
24
24
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
25
+ BuildType = Shapes::StringShape.new(name: 'BuildType')
25
26
  CallRateLimitExceededException = Shapes::StructureShape.new(name: 'CallRateLimitExceededException')
26
27
  CancelImageCreationRequest = Shapes::StructureShape.new(name: 'CancelImageCreationRequest')
27
28
  CancelImageCreationResponse = Shapes::StructureShape.new(name: 'CancelImageCreationResponse')
@@ -89,6 +90,7 @@ module Aws::Imagebuilder
89
90
  DeleteImageResponse = Shapes::StructureShape.new(name: 'DeleteImageResponse')
90
91
  DeleteInfrastructureConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteInfrastructureConfigurationRequest')
91
92
  DeleteInfrastructureConfigurationResponse = Shapes::StructureShape.new(name: 'DeleteInfrastructureConfigurationResponse')
93
+ DiskImageFormat = Shapes::StringShape.new(name: 'DiskImageFormat')
92
94
  Distribution = Shapes::StructureShape.new(name: 'Distribution')
93
95
  DistributionConfiguration = Shapes::StructureShape.new(name: 'DistributionConfiguration')
94
96
  DistributionConfigurationArn = Shapes::StringShape.new(name: 'DistributionConfigurationArn')
@@ -160,6 +162,8 @@ module Aws::Imagebuilder
160
162
  ImageVersionList = Shapes::ListShape.new(name: 'ImageVersionList')
161
163
  ImportComponentRequest = Shapes::StructureShape.new(name: 'ImportComponentRequest')
162
164
  ImportComponentResponse = Shapes::StructureShape.new(name: 'ImportComponentResponse')
165
+ ImportVmImageRequest = Shapes::StructureShape.new(name: 'ImportVmImageRequest')
166
+ ImportVmImageResponse = Shapes::StructureShape.new(name: 'ImportVmImageResponse')
163
167
  InfrastructureConfiguration = Shapes::StructureShape.new(name: 'InfrastructureConfiguration')
164
168
  InfrastructureConfigurationArn = Shapes::StringShape.new(name: 'InfrastructureConfigurationArn')
165
169
  InfrastructureConfigurationSummary = Shapes::StructureShape.new(name: 'InfrastructureConfigurationSummary')
@@ -212,6 +216,10 @@ module Aws::Imagebuilder
212
216
  Logging = Shapes::StructureShape.new(name: 'Logging')
213
217
  NonEmptyString = Shapes::StringShape.new(name: 'NonEmptyString')
214
218
  NullableBoolean = Shapes::BooleanShape.new(name: 'NullableBoolean')
219
+ OrganizationArn = Shapes::StringShape.new(name: 'OrganizationArn')
220
+ OrganizationArnList = Shapes::ListShape.new(name: 'OrganizationArnList')
221
+ OrganizationalUnitArn = Shapes::StringShape.new(name: 'OrganizationalUnitArn')
222
+ OrganizationalUnitArnList = Shapes::ListShape.new(name: 'OrganizationalUnitArnList')
215
223
  OsVersion = Shapes::StringShape.new(name: 'OsVersion')
216
224
  OsVersionList = Shapes::ListShape.new(name: 'OsVersionList')
217
225
  OutputResources = Shapes::StructureShape.new(name: 'OutputResources')
@@ -237,6 +245,7 @@ module Aws::Imagebuilder
237
245
  ResourcePolicyDocument = Shapes::StringShape.new(name: 'ResourcePolicyDocument')
238
246
  ResourceTagMap = Shapes::MapShape.new(name: 'ResourceTagMap')
239
247
  RestrictedInteger = Shapes::IntegerShape.new(name: 'RestrictedInteger')
248
+ S3ExportConfiguration = Shapes::StructureShape.new(name: 'S3ExportConfiguration')
240
249
  S3Logs = Shapes::StructureShape.new(name: 'S3Logs')
241
250
  Schedule = Shapes::StructureShape.new(name: 'Schedule')
242
251
  SecurityGroupIds = Shapes::ListShape.new(name: 'SecurityGroupIds')
@@ -601,6 +610,7 @@ module Aws::Imagebuilder
601
610
  Distribution.add_member(:container_distribution_configuration, Shapes::ShapeRef.new(shape: ContainerDistributionConfiguration, location_name: "containerDistributionConfiguration"))
602
611
  Distribution.add_member(:license_configuration_arns, Shapes::ShapeRef.new(shape: LicenseConfigurationArnList, location_name: "licenseConfigurationArns"))
603
612
  Distribution.add_member(:launch_template_configurations, Shapes::ShapeRef.new(shape: LaunchTemplateConfigurationList, location_name: "launchTemplateConfigurations"))
613
+ Distribution.add_member(:s3_export_configuration, Shapes::ShapeRef.new(shape: S3ExportConfiguration, location_name: "s3ExportConfiguration"))
604
614
  Distribution.struct_class = Types::Distribution
605
615
 
606
616
  DistributionConfiguration.add_member(:arn, Shapes::ShapeRef.new(shape: ImageBuilderArn, location_name: "arn"))
@@ -745,6 +755,7 @@ module Aws::Imagebuilder
745
755
  Image.add_member(:date_created, Shapes::ShapeRef.new(shape: DateTime, location_name: "dateCreated"))
746
756
  Image.add_member(:output_resources, Shapes::ShapeRef.new(shape: OutputResources, location_name: "outputResources"))
747
757
  Image.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
758
+ Image.add_member(:build_type, Shapes::ShapeRef.new(shape: BuildType, location_name: "buildType"))
748
759
  Image.struct_class = Types::Image
749
760
 
750
761
  ImagePackage.add_member(:package_name, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "packageName"))
@@ -816,6 +827,7 @@ module Aws::Imagebuilder
816
827
  ImageSummary.add_member(:date_created, Shapes::ShapeRef.new(shape: DateTime, location_name: "dateCreated"))
817
828
  ImageSummary.add_member(:output_resources, Shapes::ShapeRef.new(shape: OutputResources, location_name: "outputResources"))
818
829
  ImageSummary.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
830
+ ImageSummary.add_member(:build_type, Shapes::ShapeRef.new(shape: BuildType, location_name: "buildType"))
819
831
  ImageSummary.struct_class = Types::ImageSummary
820
832
 
821
833
  ImageSummaryList.member = Shapes::ShapeRef.new(shape: ImageSummary)
@@ -832,6 +844,7 @@ module Aws::Imagebuilder
832
844
  ImageVersion.add_member(:os_version, Shapes::ShapeRef.new(shape: OsVersion, location_name: "osVersion"))
833
845
  ImageVersion.add_member(:owner, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "owner"))
834
846
  ImageVersion.add_member(:date_created, Shapes::ShapeRef.new(shape: DateTime, location_name: "dateCreated"))
847
+ ImageVersion.add_member(:build_type, Shapes::ShapeRef.new(shape: BuildType, location_name: "buildType"))
835
848
  ImageVersion.struct_class = Types::ImageVersion
836
849
 
837
850
  ImageVersionList.member = Shapes::ShapeRef.new(shape: ImageVersion)
@@ -855,6 +868,21 @@ module Aws::Imagebuilder
855
868
  ImportComponentResponse.add_member(:component_build_version_arn, Shapes::ShapeRef.new(shape: ComponentBuildVersionArn, location_name: "componentBuildVersionArn"))
856
869
  ImportComponentResponse.struct_class = Types::ImportComponentResponse
857
870
 
871
+ ImportVmImageRequest.add_member(:name, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "name"))
872
+ ImportVmImageRequest.add_member(:semantic_version, Shapes::ShapeRef.new(shape: VersionNumber, required: true, location_name: "semanticVersion"))
873
+ ImportVmImageRequest.add_member(:description, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "description"))
874
+ ImportVmImageRequest.add_member(:platform, Shapes::ShapeRef.new(shape: Platform, required: true, location_name: "platform"))
875
+ ImportVmImageRequest.add_member(:os_version, Shapes::ShapeRef.new(shape: OsVersion, location_name: "osVersion"))
876
+ ImportVmImageRequest.add_member(:vm_import_task_id, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "vmImportTaskId"))
877
+ ImportVmImageRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagMap, location_name: "tags"))
878
+ ImportVmImageRequest.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, required: true, location_name: "clientToken", metadata: {"idempotencyToken"=>true}))
879
+ ImportVmImageRequest.struct_class = Types::ImportVmImageRequest
880
+
881
+ ImportVmImageResponse.add_member(:request_id, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "requestId"))
882
+ ImportVmImageResponse.add_member(:image_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "imageArn"))
883
+ ImportVmImageResponse.add_member(:client_token, Shapes::ShapeRef.new(shape: ClientToken, location_name: "clientToken"))
884
+ ImportVmImageResponse.struct_class = Types::ImportVmImageResponse
885
+
858
886
  InfrastructureConfiguration.add_member(:arn, Shapes::ShapeRef.new(shape: ImageBuilderArn, location_name: "arn"))
859
887
  InfrastructureConfiguration.add_member(:name, Shapes::ShapeRef.new(shape: ResourceName, location_name: "name"))
860
888
  InfrastructureConfiguration.add_member(:description, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "description"))
@@ -924,6 +952,8 @@ module Aws::Imagebuilder
924
952
 
925
953
  LaunchPermissionConfiguration.add_member(:user_ids, Shapes::ShapeRef.new(shape: AccountList, location_name: "userIds"))
926
954
  LaunchPermissionConfiguration.add_member(:user_groups, Shapes::ShapeRef.new(shape: StringList, location_name: "userGroups"))
955
+ LaunchPermissionConfiguration.add_member(:organization_arns, Shapes::ShapeRef.new(shape: OrganizationArnList, location_name: "organizationArns"))
956
+ LaunchPermissionConfiguration.add_member(:organizational_unit_arns, Shapes::ShapeRef.new(shape: OrganizationalUnitArnList, location_name: "organizationalUnitArns"))
927
957
  LaunchPermissionConfiguration.struct_class = Types::LaunchPermissionConfiguration
928
958
 
929
959
  LaunchTemplateConfiguration.add_member(:launch_template_id, Shapes::ShapeRef.new(shape: LaunchTemplateId, required: true, location_name: "launchTemplateId"))
@@ -1063,6 +1093,10 @@ module Aws::Imagebuilder
1063
1093
  Logging.add_member(:s3_logs, Shapes::ShapeRef.new(shape: S3Logs, location_name: "s3Logs"))
1064
1094
  Logging.struct_class = Types::Logging
1065
1095
 
1096
+ OrganizationArnList.member = Shapes::ShapeRef.new(shape: OrganizationArn)
1097
+
1098
+ OrganizationalUnitArnList.member = Shapes::ShapeRef.new(shape: OrganizationalUnitArn)
1099
+
1066
1100
  OsVersionList.member = Shapes::ShapeRef.new(shape: OsVersion)
1067
1101
 
1068
1102
  OutputResources.add_member(:amis, Shapes::ShapeRef.new(shape: AmiList, location_name: "amis"))
@@ -1118,6 +1152,12 @@ module Aws::Imagebuilder
1118
1152
  ResourceTagMap.key = Shapes::ShapeRef.new(shape: TagKey)
1119
1153
  ResourceTagMap.value = Shapes::ShapeRef.new(shape: TagValue)
1120
1154
 
1155
+ S3ExportConfiguration.add_member(:role_name, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "roleName"))
1156
+ S3ExportConfiguration.add_member(:disk_image_format, Shapes::ShapeRef.new(shape: DiskImageFormat, required: true, location_name: "diskImageFormat"))
1157
+ S3ExportConfiguration.add_member(:s3_bucket, Shapes::ShapeRef.new(shape: NonEmptyString, required: true, location_name: "s3Bucket"))
1158
+ S3ExportConfiguration.add_member(:s3_prefix, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "s3Prefix"))
1159
+ S3ExportConfiguration.struct_class = Types::S3ExportConfiguration
1160
+
1121
1161
  S3Logs.add_member(:s3_bucket_name, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "s3BucketName"))
1122
1162
  S3Logs.add_member(:s3_key_prefix, Shapes::ShapeRef.new(shape: NonEmptyString, location_name: "s3KeyPrefix"))
1123
1163
  S3Logs.struct_class = Types::S3Logs
@@ -1663,6 +1703,17 @@ module Aws::Imagebuilder
1663
1703
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterCombinationException)
1664
1704
  end)
1665
1705
 
1706
+ api.add_operation(:import_vm_image, Seahorse::Model::Operation.new.tap do |o|
1707
+ o.name = "ImportVmImage"
1708
+ o.http_method = "PUT"
1709
+ o.http_request_uri = "/ImportVmImage"
1710
+ o.input = Shapes::ShapeRef.new(shape: ImportVmImageRequest)
1711
+ o.output = Shapes::ShapeRef.new(shape: ImportVmImageResponse)
1712
+ o.errors << Shapes::ShapeRef.new(shape: ServiceException)
1713
+ o.errors << Shapes::ShapeRef.new(shape: ClientException)
1714
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1715
+ end)
1716
+
1666
1717
  api.add_operation(:list_component_build_versions, Seahorse::Model::Operation.new.tap do |o|
1667
1718
  o.name = "ListComponentBuildVersions"
1668
1719
  o.http_method = "POST"
@@ -110,6 +110,8 @@ module Aws::Imagebuilder
110
110
  # launch_permission: {
111
111
  # user_ids: ["AccountId"],
112
112
  # user_groups: ["NonEmptyString"],
113
+ # organization_arns: ["OrganizationArn"],
114
+ # organizational_unit_arns: ["OrganizationalUnitArn"],
113
115
  # },
114
116
  # }
115
117
  #
@@ -118,7 +120,7 @@ module Aws::Imagebuilder
118
120
  # @return [String]
119
121
  #
120
122
  # @!attribute [rw] description
121
- # The description of the distribution configuration. Minimum and
123
+ # The description of the AMI distribution configuration. Minimum and
122
124
  # maximum length are in characters.
123
125
  # @return [String]
124
126
  #
@@ -180,10 +182,16 @@ module Aws::Imagebuilder
180
182
  # @return [String]
181
183
  #
182
184
  # @!attribute [rw] client_token
183
- # The idempotency token used to make this request idempotent.
185
+ # Unique, case-sensitive identifier you provide to ensure idempotency
186
+ # of the request. For more information, see [Ensuring idempotency][1]
187
+ # in the *Amazon EC2 API Reference*.
184
188
  #
185
189
  # **A suitable default value is auto-generated.** You should normally
186
190
  # not need to pass this option.
191
+ #
192
+ #
193
+ #
194
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
187
195
  # @return [String]
188
196
  #
189
197
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/CancelImageCreationRequest AWS API Documentation
@@ -200,7 +208,7 @@ module Aws::Imagebuilder
200
208
  # @return [String]
201
209
  #
202
210
  # @!attribute [rw] client_token
203
- # The idempotency token used to make this request idempotent.
211
+ # The idempotency token that was used for this request.
204
212
  # @return [String]
205
213
  #
206
214
  # @!attribute [rw] image_build_version_arn
@@ -1197,6 +1205,8 @@ module Aws::Imagebuilder
1197
1205
  # launch_permission: {
1198
1206
  # user_ids: ["AccountId"],
1199
1207
  # user_groups: ["NonEmptyString"],
1208
+ # organization_arns: ["OrganizationArn"],
1209
+ # organizational_unit_arns: ["OrganizationalUnitArn"],
1200
1210
  # },
1201
1211
  # },
1202
1212
  # container_distribution_configuration: {
@@ -1215,6 +1225,12 @@ module Aws::Imagebuilder
1215
1225
  # set_default_version: false,
1216
1226
  # },
1217
1227
  # ],
1228
+ # s3_export_configuration: {
1229
+ # role_name: "NonEmptyString", # required
1230
+ # disk_image_format: "VMDK", # required, accepts VMDK, RAW, VHD
1231
+ # s3_bucket: "NonEmptyString", # required
1232
+ # s3_prefix: "NonEmptyString",
1233
+ # },
1218
1234
  # },
1219
1235
  # ],
1220
1236
  # tags: {
@@ -2091,6 +2107,8 @@ module Aws::Imagebuilder
2091
2107
  # launch_permission: {
2092
2108
  # user_ids: ["AccountId"],
2093
2109
  # user_groups: ["NonEmptyString"],
2110
+ # organization_arns: ["OrganizationArn"],
2111
+ # organizational_unit_arns: ["OrganizationalUnitArn"],
2094
2112
  # },
2095
2113
  # },
2096
2114
  # container_distribution_configuration: {
@@ -2109,6 +2127,12 @@ module Aws::Imagebuilder
2109
2127
  # set_default_version: false,
2110
2128
  # },
2111
2129
  # ],
2130
+ # s3_export_configuration: {
2131
+ # role_name: "NonEmptyString", # required
2132
+ # disk_image_format: "VMDK", # required, accepts VMDK, RAW, VHD
2133
+ # s3_bucket: "NonEmptyString", # required
2134
+ # s3_prefix: "NonEmptyString",
2135
+ # },
2112
2136
  # }
2113
2137
  #
2114
2138
  # @!attribute [rw] region
@@ -2135,6 +2159,12 @@ module Aws::Imagebuilder
2135
2159
  # distribution for specified accounts.
2136
2160
  # @return [Array<Types::LaunchTemplateConfiguration>]
2137
2161
  #
2162
+ # @!attribute [rw] s3_export_configuration
2163
+ # Configure export settings to deliver disk images created from your
2164
+ # image build, using a file format that is compatible with your VMs in
2165
+ # that Region.
2166
+ # @return [Types::S3ExportConfiguration]
2167
+ #
2138
2168
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/Distribution AWS API Documentation
2139
2169
  #
2140
2170
  class Distribution < Struct.new(
@@ -2142,7 +2172,8 @@ module Aws::Imagebuilder
2142
2172
  :ami_distribution_configuration,
2143
2173
  :container_distribution_configuration,
2144
2174
  :license_configuration_arns,
2145
- :launch_template_configurations)
2175
+ :launch_template_configurations,
2176
+ :s3_export_configuration)
2146
2177
  SENSITIVE = []
2147
2178
  include Aws::Structure
2148
2179
  end
@@ -2892,6 +2923,19 @@ module Aws::Imagebuilder
2892
2923
  # The tags of the image.
2893
2924
  # @return [Hash<String,String>]
2894
2925
  #
2926
+ # @!attribute [rw] build_type
2927
+ # Indicates the type of build that created this image. The build can
2928
+ # be initiated in the following ways:
2929
+ #
2930
+ # * **USER\_INITIATED** – A manual pipeline build request.
2931
+ #
2932
+ # * **SCHEDULED** – A pipeline build initiated by a cron expression in
2933
+ # the Image Builder pipeline, or from EventBridge.
2934
+ #
2935
+ # * **IMPORT** – A VM import created the image to use as the base
2936
+ # image for the recipe.
2937
+ # @return [String]
2938
+ #
2895
2939
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/Image AWS API Documentation
2896
2940
  #
2897
2941
  class Image < Struct.new(
@@ -2912,7 +2956,8 @@ module Aws::Imagebuilder
2912
2956
  :image_tests_configuration,
2913
2957
  :date_created,
2914
2958
  :output_resources,
2915
- :tags)
2959
+ :tags,
2960
+ :build_type)
2916
2961
  SENSITIVE = []
2917
2962
  include Aws::Structure
2918
2963
  end
@@ -3234,6 +3279,19 @@ module Aws::Imagebuilder
3234
3279
  # The tags of the image.
3235
3280
  # @return [Hash<String,String>]
3236
3281
  #
3282
+ # @!attribute [rw] build_type
3283
+ # Indicates the type of build that created this image. The build can
3284
+ # be initiated in the following ways:
3285
+ #
3286
+ # * **USER\_INITIATED** – A manual pipeline build request.
3287
+ #
3288
+ # * **SCHEDULED** – A pipeline build initiated by a cron expression in
3289
+ # the Image Builder pipeline, or from EventBridge.
3290
+ #
3291
+ # * **IMPORT** – A VM import created the image to use as the base
3292
+ # image for the recipe.
3293
+ # @return [String]
3294
+ #
3237
3295
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ImageSummary AWS API Documentation
3238
3296
  #
3239
3297
  class ImageSummary < Struct.new(
@@ -3247,12 +3305,15 @@ module Aws::Imagebuilder
3247
3305
  :owner,
3248
3306
  :date_created,
3249
3307
  :output_resources,
3250
- :tags)
3308
+ :tags,
3309
+ :build_type)
3251
3310
  SENSITIVE = []
3252
3311
  include Aws::Structure
3253
3312
  end
3254
3313
 
3255
- # Image tests configuration.
3314
+ # Configure image tests for your pipeline build. Tests run after
3315
+ # building the image, to verify that the AMI or container image is valid
3316
+ # before distributing it.
3256
3317
  #
3257
3318
  # @note When making an API call, you may pass ImageTestsConfiguration
3258
3319
  # data as a hash:
@@ -3263,7 +3324,9 @@ module Aws::Imagebuilder
3263
3324
  # }
3264
3325
  #
3265
3326
  # @!attribute [rw] image_tests_enabled
3266
- # Defines if tests should be executed when building this image.
3327
+ # Determines if tests should run after building the image. Image
3328
+ # Builder defaults to enable tests to run following the image build,
3329
+ # before image distribution.
3267
3330
  # @return [Boolean]
3268
3331
  #
3269
3332
  # @!attribute [rw] timeout_minutes
@@ -3357,6 +3420,19 @@ module Aws::Imagebuilder
3357
3420
  # was created.
3358
3421
  # @return [String]
3359
3422
  #
3423
+ # @!attribute [rw] build_type
3424
+ # Indicates the type of build that created this image. The build can
3425
+ # be initiated in the following ways:
3426
+ #
3427
+ # * **USER\_INITIATED** – A manual pipeline build request.
3428
+ #
3429
+ # * **SCHEDULED** – A pipeline build initiated by a cron expression in
3430
+ # the Image Builder pipeline, or from EventBridge.
3431
+ #
3432
+ # * **IMPORT** – A VM import created the image to use as the base
3433
+ # image for the recipe.
3434
+ # @return [String]
3435
+ #
3360
3436
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ImageVersion AWS API Documentation
3361
3437
  #
3362
3438
  class ImageVersion < Struct.new(
@@ -3367,7 +3443,8 @@ module Aws::Imagebuilder
3367
3443
  :platform,
3368
3444
  :os_version,
3369
3445
  :owner,
3370
- :date_created)
3446
+ :date_created,
3447
+ :build_type)
3371
3448
  SENSITIVE = []
3372
3449
  include Aws::Structure
3373
3450
  end
@@ -3507,6 +3584,124 @@ module Aws::Imagebuilder
3507
3584
  include Aws::Structure
3508
3585
  end
3509
3586
 
3587
+ # @note When making an API call, you may pass ImportVmImageRequest
3588
+ # data as a hash:
3589
+ #
3590
+ # {
3591
+ # name: "NonEmptyString", # required
3592
+ # semantic_version: "VersionNumber", # required
3593
+ # description: "NonEmptyString",
3594
+ # platform: "Windows", # required, accepts Windows, Linux
3595
+ # os_version: "OsVersion",
3596
+ # vm_import_task_id: "NonEmptyString", # required
3597
+ # tags: {
3598
+ # "TagKey" => "TagValue",
3599
+ # },
3600
+ # client_token: "ClientToken", # required
3601
+ # }
3602
+ #
3603
+ # @!attribute [rw] name
3604
+ # The name of the base image that is created by the import process.
3605
+ # @return [String]
3606
+ #
3607
+ # @!attribute [rw] semantic_version
3608
+ # The semantic version to attach to the base image that was created
3609
+ # during the import process. This version follows the semantic version
3610
+ # syntax.
3611
+ #
3612
+ # <note markdown="1"> The semantic version has four nodes:
3613
+ # &lt;major&gt;.&lt;minor&gt;.&lt;patch&gt;/&lt;build&gt;. You can
3614
+ # assign values for the first three, and can filter on all of them.
3615
+ #
3616
+ # **Assignment:** For the first three nodes you can assign any
3617
+ # positive integer value, including zero, with an upper limit of
3618
+ # 2^30-1, or 1073741823 for each node. Image Builder automatically
3619
+ # assigns the build number to the fourth node.
3620
+ #
3621
+ # **Patterns:** You can use any numeric pattern that adheres to the
3622
+ # assignment requirements for the nodes that you can assign. For
3623
+ # example, you might choose a software version pattern, such as 1.0.0,
3624
+ # or a date, such as 2021.01.01.
3625
+ #
3626
+ # </note>
3627
+ # @return [String]
3628
+ #
3629
+ # @!attribute [rw] description
3630
+ # The description for the base image that is created by the import
3631
+ # process.
3632
+ # @return [String]
3633
+ #
3634
+ # @!attribute [rw] platform
3635
+ # The operating system platform for the imported VM.
3636
+ # @return [String]
3637
+ #
3638
+ # @!attribute [rw] os_version
3639
+ # The operating system version for the imported VM.
3640
+ # @return [String]
3641
+ #
3642
+ # @!attribute [rw] vm_import_task_id
3643
+ # The `importTaskId` (API) or `ImportTaskId` (CLI) from the Amazon EC2
3644
+ # VM import process. Image Builder retrieves information from the
3645
+ # import process to pull in the AMI that is created from the VM source
3646
+ # as the base image for your recipe.
3647
+ # @return [String]
3648
+ #
3649
+ # @!attribute [rw] tags
3650
+ # Tags that are attached to the import resources.
3651
+ # @return [Hash<String,String>]
3652
+ #
3653
+ # @!attribute [rw] client_token
3654
+ # Unique, case-sensitive identifier you provide to ensure idempotency
3655
+ # of the request. For more information, see [Ensuring idempotency][1]
3656
+ # in the *Amazon EC2 API Reference*.
3657
+ #
3658
+ # **A suitable default value is auto-generated.** You should normally
3659
+ # not need to pass this option.
3660
+ #
3661
+ #
3662
+ #
3663
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
3664
+ # @return [String]
3665
+ #
3666
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ImportVmImageRequest AWS API Documentation
3667
+ #
3668
+ class ImportVmImageRequest < Struct.new(
3669
+ :name,
3670
+ :semantic_version,
3671
+ :description,
3672
+ :platform,
3673
+ :os_version,
3674
+ :vm_import_task_id,
3675
+ :tags,
3676
+ :client_token)
3677
+ SENSITIVE = []
3678
+ include Aws::Structure
3679
+ end
3680
+
3681
+ # @!attribute [rw] request_id
3682
+ # The request ID that uniquely identifies this request.
3683
+ # @return [String]
3684
+ #
3685
+ # @!attribute [rw] image_arn
3686
+ # The Amazon Resource Name (ARN) of the AMI that was created during
3687
+ # the VM import process. This AMI is used as the base image for the
3688
+ # recipe that imported the VM.
3689
+ # @return [String]
3690
+ #
3691
+ # @!attribute [rw] client_token
3692
+ # The idempotency token that was used for this request.
3693
+ # @return [String]
3694
+ #
3695
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ImportVmImageResponse AWS API Documentation
3696
+ #
3697
+ class ImportVmImageResponse < Struct.new(
3698
+ :request_id,
3699
+ :image_arn,
3700
+ :client_token)
3701
+ SENSITIVE = []
3702
+ include Aws::Structure
3703
+ end
3704
+
3510
3705
  # Details of the infrastructure configuration.
3511
3706
  #
3512
3707
  # @!attribute [rw] arn
@@ -3899,6 +4094,8 @@ module Aws::Imagebuilder
3899
4094
  # {
3900
4095
  # user_ids: ["AccountId"],
3901
4096
  # user_groups: ["NonEmptyString"],
4097
+ # organization_arns: ["OrganizationArn"],
4098
+ # organizational_unit_arns: ["OrganizationalUnitArn"],
3902
4099
  # }
3903
4100
  #
3904
4101
  # @!attribute [rw] user_ids
@@ -3909,11 +4106,33 @@ module Aws::Imagebuilder
3909
4106
  # The name of the group.
3910
4107
  # @return [Array<String>]
3911
4108
  #
4109
+ # @!attribute [rw] organization_arns
4110
+ # The ARN for an Amazon Web Services Organization that you want to
4111
+ # share your AMI with. For more information, see [What is
4112
+ # Organizations?][1].
4113
+ #
4114
+ #
4115
+ #
4116
+ # [1]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_introduction.html
4117
+ # @return [Array<String>]
4118
+ #
4119
+ # @!attribute [rw] organizational_unit_arns
4120
+ # The ARN for an Organizations organizational unit (OU) that you want
4121
+ # to share your AMI with. For more information about key concepts for
4122
+ # Organizations, see [Organizations terminology and concepts][1].
4123
+ #
4124
+ #
4125
+ #
4126
+ # [1]: https://docs.aws.amazon.com/organizations/latest/userguide/orgs_getting-started_concepts.html
4127
+ # @return [Array<String>]
4128
+ #
3912
4129
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/LaunchPermissionConfiguration AWS API Documentation
3913
4130
  #
3914
4131
  class LaunchPermissionConfiguration < Struct.new(
3915
4132
  :user_ids,
3916
- :user_groups)
4133
+ :user_groups,
4134
+ :organization_arns,
4135
+ :organizational_unit_arns)
3917
4136
  SENSITIVE = []
3918
4137
  include Aws::Structure
3919
4138
  end
@@ -5084,6 +5303,57 @@ module Aws::Imagebuilder
5084
5303
  include Aws::Structure
5085
5304
  end
5086
5305
 
5306
+ # Properties that configure export from your build instance to a
5307
+ # compatible file format for your VM.
5308
+ #
5309
+ # @note When making an API call, you may pass S3ExportConfiguration
5310
+ # data as a hash:
5311
+ #
5312
+ # {
5313
+ # role_name: "NonEmptyString", # required
5314
+ # disk_image_format: "VMDK", # required, accepts VMDK, RAW, VHD
5315
+ # s3_bucket: "NonEmptyString", # required
5316
+ # s3_prefix: "NonEmptyString",
5317
+ # }
5318
+ #
5319
+ # @!attribute [rw] role_name
5320
+ # The name of the role that grants VM Import/Export permission to
5321
+ # export images to your S3 bucket.
5322
+ # @return [String]
5323
+ #
5324
+ # @!attribute [rw] disk_image_format
5325
+ # Export the updated image to one of the following supported disk
5326
+ # image formats:
5327
+ #
5328
+ # * **Virtual Hard Disk (VHD)** – Compatible with Citrix Xen and
5329
+ # Microsoft Hyper-V virtualization products.
5330
+ #
5331
+ # * **Stream-optimized ESX Virtual Machine Disk (VMDK)** – Compatible
5332
+ # with VMware ESX and VMware vSphere versions 4, 5, and 6.
5333
+ #
5334
+ # * **Raw** – Raw format.
5335
+ # @return [String]
5336
+ #
5337
+ # @!attribute [rw] s3_bucket
5338
+ # The S3 bucket in which to store the output disk images for your VM.
5339
+ # @return [String]
5340
+ #
5341
+ # @!attribute [rw] s3_prefix
5342
+ # The Amazon S3 path for the bucket where the output disk images for
5343
+ # your VM are stored.
5344
+ # @return [String]
5345
+ #
5346
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/S3ExportConfiguration AWS API Documentation
5347
+ #
5348
+ class S3ExportConfiguration < Struct.new(
5349
+ :role_name,
5350
+ :disk_image_format,
5351
+ :s3_bucket,
5352
+ :s3_prefix)
5353
+ SENSITIVE = []
5354
+ include Aws::Structure
5355
+ end
5356
+
5087
5357
  # Amazon S3 logging configuration.
5088
5358
  #
5089
5359
  # @note When making an API call, you may pass S3Logs
@@ -5095,11 +5365,11 @@ module Aws::Imagebuilder
5095
5365
  # }
5096
5366
  #
5097
5367
  # @!attribute [rw] s3_bucket_name
5098
- # The Amazon S3 bucket in which to store the logs.
5368
+ # The S3 bucket in which to store the logs.
5099
5369
  # @return [String]
5100
5370
  #
5101
5371
  # @!attribute [rw] s3_key_prefix
5102
- # The Amazon S3 path in which to store the logs.
5372
+ # The Amazon S3 path to the bucket where the logs are stored.
5103
5373
  # @return [String]
5104
5374
  #
5105
5375
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/S3Logs AWS API Documentation
@@ -5406,6 +5676,8 @@ module Aws::Imagebuilder
5406
5676
  # launch_permission: {
5407
5677
  # user_ids: ["AccountId"],
5408
5678
  # user_groups: ["NonEmptyString"],
5679
+ # organization_arns: ["OrganizationArn"],
5680
+ # organizational_unit_arns: ["OrganizationalUnitArn"],
5409
5681
  # },
5410
5682
  # },
5411
5683
  # container_distribution_configuration: {
@@ -5424,6 +5696,12 @@ module Aws::Imagebuilder
5424
5696
  # set_default_version: false,
5425
5697
  # },
5426
5698
  # ],
5699
+ # s3_export_configuration: {
5700
+ # role_name: "NonEmptyString", # required
5701
+ # disk_image_format: "VMDK", # required, accepts VMDK, RAW, VHD
5702
+ # s3_bucket: "NonEmptyString", # required
5703
+ # s3_prefix: "NonEmptyString",
5704
+ # },
5427
5705
  # },
5428
5706
  # ],
5429
5707
  # client_token: "ClientToken", # required
@@ -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.32.0'
51
+ GEM_VERSION = '1.36.0'
52
52
 
53
53
  end
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.32.0
4
+ version: 1.36.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-10-18 00:00:00.000000000 Z
11
+ date: 2021-12-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core
@@ -19,7 +19,7 @@ dependencies:
19
19
  version: '3'
20
20
  - - ">="
21
21
  - !ruby/object:Gem::Version
22
- version: 3.121.2
22
+ version: 3.122.0
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -29,7 +29,7 @@ dependencies:
29
29
  version: '3'
30
30
  - - ">="
31
31
  - !ruby/object:Gem::Version
32
- version: 3.121.2
32
+ version: 3.122.0
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: aws-sigv4
35
35
  requirement: !ruby/object:Gem::Requirement