aws-sdk-imagebuilder 1.32.0 → 1.36.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: 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