aws-sdk-imagebuilder 1.51.0 → 1.53.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.
@@ -435,6 +435,48 @@ module Aws::Imagebuilder
435
435
  req.send_request(options)
436
436
  end
437
437
 
438
+ # Cancel a specific image lifecycle policy runtime instance.
439
+ #
440
+ # @option params [required, String] :lifecycle_execution_id
441
+ # Identifies the specific runtime instance of the image lifecycle to
442
+ # cancel.
443
+ #
444
+ # @option params [required, String] :client_token
445
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
446
+ # the request. For more information, see [Ensuring idempotency][1] in
447
+ # the *Amazon EC2 API Reference*.
448
+ #
449
+ # **A suitable default value is auto-generated.** You should normally
450
+ # not need to pass this option.**
451
+ #
452
+ #
453
+ #
454
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
455
+ #
456
+ # @return [Types::CancelLifecycleExecutionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
457
+ #
458
+ # * {Types::CancelLifecycleExecutionResponse#lifecycle_execution_id #lifecycle_execution_id} => String
459
+ #
460
+ # @example Request syntax with placeholder values
461
+ #
462
+ # resp = client.cancel_lifecycle_execution({
463
+ # lifecycle_execution_id: "LifecycleExecutionId", # required
464
+ # client_token: "ClientToken", # required
465
+ # })
466
+ #
467
+ # @example Response structure
468
+ #
469
+ # resp.lifecycle_execution_id #=> String
470
+ #
471
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/CancelLifecycleExecution AWS API Documentation
472
+ #
473
+ # @overload cancel_lifecycle_execution(params = {})
474
+ # @param [Hash] params ({})
475
+ def cancel_lifecycle_execution(params = {}, options = {})
476
+ req = build_request(:cancel_lifecycle_execution, params)
477
+ req.send_request(options)
478
+ end
479
+
438
480
  # Creates a new component that can be used to build, validate, test, and
439
481
  # assess your image. The component is based on a YAML document that you
440
482
  # specify using exactly one of the following methods:
@@ -504,11 +546,17 @@ module Aws::Imagebuilder
504
546
  # The tags that apply to the component.
505
547
  #
506
548
  # @option params [required, String] :client_token
507
- # The idempotency token of the component.
549
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
550
+ # the request. For more information, see [Ensuring idempotency][1] in
551
+ # the *Amazon EC2 API Reference*.
508
552
  #
509
553
  # **A suitable default value is auto-generated.** You should normally
510
554
  # not need to pass this option.**
511
555
  #
556
+ #
557
+ #
558
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
559
+ #
512
560
  # @return [Types::CreateComponentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
513
561
  #
514
562
  # * {Types::CreateComponentResponse#request_id #request_id} => String
@@ -620,11 +668,17 @@ module Aws::Imagebuilder
620
668
  # Identifies which KMS key is used to encrypt the container image.
621
669
  #
622
670
  # @option params [required, String] :client_token
623
- # The client token used to make this request idempotent.
671
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
672
+ # the request. For more information, see [Ensuring idempotency][1] in
673
+ # the *Amazon EC2 API Reference*.
624
674
  #
625
675
  # **A suitable default value is auto-generated.** You should normally
626
676
  # not need to pass this option.**
627
677
  #
678
+ #
679
+ #
680
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
681
+ #
628
682
  # @return [Types::CreateContainerRecipeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
629
683
  #
630
684
  # * {Types::CreateContainerRecipeResponse#request_id #request_id} => String
@@ -717,11 +771,17 @@ module Aws::Imagebuilder
717
771
  # The tags of the distribution configuration.
718
772
  #
719
773
  # @option params [required, String] :client_token
720
- # The idempotency token of the distribution configuration.
774
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
775
+ # the request. For more information, see [Ensuring idempotency][1] in
776
+ # the *Amazon EC2 API Reference*.
721
777
  #
722
778
  # **A suitable default value is auto-generated.** You should normally
723
779
  # not need to pass this option.**
724
780
  #
781
+ #
782
+ #
783
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
784
+ #
725
785
  # @return [Types::CreateDistributionConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
726
786
  #
727
787
  # * {Types::CreateDistributionConfigurationResponse#request_id #request_id} => String
@@ -846,11 +906,17 @@ module Aws::Imagebuilder
846
906
  # The tags of the image.
847
907
  #
848
908
  # @option params [required, String] :client_token
849
- # The idempotency token used to make this request idempotent.
909
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
910
+ # the request. For more information, see [Ensuring idempotency][1] in
911
+ # the *Amazon EC2 API Reference*.
850
912
  #
851
913
  # **A suitable default value is auto-generated.** You should normally
852
914
  # not need to pass this option.**
853
915
  #
916
+ #
917
+ #
918
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
919
+ #
854
920
  # @option params [Types::ImageScanningConfiguration] :image_scanning_configuration
855
921
  # Contains settings for vulnerability scans.
856
922
  #
@@ -945,11 +1011,17 @@ module Aws::Imagebuilder
945
1011
  # The tags of the image pipeline.
946
1012
  #
947
1013
  # @option params [required, String] :client_token
948
- # The idempotency token used to make this request idempotent.
1014
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
1015
+ # the request. For more information, see [Ensuring idempotency][1] in
1016
+ # the *Amazon EC2 API Reference*.
949
1017
  #
950
1018
  # **A suitable default value is auto-generated.** You should normally
951
1019
  # not need to pass this option.**
952
1020
  #
1021
+ #
1022
+ #
1023
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
1024
+ #
953
1025
  # @option params [Types::ImageScanningConfiguration] :image_scanning_configuration
954
1026
  # Contains settings for vulnerability scans.
955
1027
  #
@@ -1063,11 +1135,17 @@ module Aws::Imagebuilder
1063
1135
  # instances.
1064
1136
  #
1065
1137
  # @option params [required, String] :client_token
1066
- # The idempotency token used to make this request idempotent.
1138
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
1139
+ # the request. For more information, see [Ensuring idempotency][1] in
1140
+ # the *Amazon EC2 API Reference*.
1067
1141
  #
1068
1142
  # **A suitable default value is auto-generated.** You should normally
1069
1143
  # not need to pass this option.**
1070
1144
  #
1145
+ #
1146
+ #
1147
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
1148
+ #
1071
1149
  # @return [Types::CreateImageRecipeResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1072
1150
  #
1073
1151
  # * {Types::CreateImageRecipeResponse#request_id #request_id} => String
@@ -1199,11 +1277,17 @@ module Aws::Imagebuilder
1199
1277
  # The tags of the infrastructure configuration.
1200
1278
  #
1201
1279
  # @option params [required, String] :client_token
1202
- # The idempotency token used to make this request idempotent.
1280
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
1281
+ # the request. For more information, see [Ensuring idempotency][1] in
1282
+ # the *Amazon EC2 API Reference*.
1203
1283
  #
1204
1284
  # **A suitable default value is auto-generated.** You should normally
1205
1285
  # not need to pass this option.**
1206
1286
  #
1287
+ #
1288
+ #
1289
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
1290
+ #
1207
1291
  # @return [Types::CreateInfrastructureConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1208
1292
  #
1209
1293
  # * {Types::CreateInfrastructureConfigurationResponse#request_id #request_id} => String
@@ -1256,6 +1340,126 @@ module Aws::Imagebuilder
1256
1340
  req.send_request(options)
1257
1341
  end
1258
1342
 
1343
+ # Create a lifecycle policy resource.
1344
+ #
1345
+ # @option params [required, String] :name
1346
+ # The name of the lifecycle policy to create.
1347
+ #
1348
+ # @option params [String] :description
1349
+ # Optional description for the lifecycle policy.
1350
+ #
1351
+ # @option params [String] :status
1352
+ # Indicates whether the lifecycle policy resource is enabled.
1353
+ #
1354
+ # @option params [required, String] :execution_role
1355
+ # The role name or Amazon Resource Name (ARN) for the IAM role that
1356
+ # grants Image Builder access to run lifecycle actions.
1357
+ #
1358
+ # @option params [required, String] :resource_type
1359
+ # The type of Image Builder resource that the lifecycle policy applies
1360
+ # to.
1361
+ #
1362
+ # @option params [required, Array<Types::LifecyclePolicyDetail>] :policy_details
1363
+ # Configuration details for the lifecycle policy rules.
1364
+ #
1365
+ # @option params [required, Types::LifecyclePolicyResourceSelection] :resource_selection
1366
+ # Selection criteria for the resources that the lifecycle policy applies
1367
+ # to.
1368
+ #
1369
+ # @option params [Hash<String,String>] :tags
1370
+ # Tags to apply to the lifecycle policy resource.
1371
+ #
1372
+ # @option params [required, String] :client_token
1373
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
1374
+ # the request. For more information, see [Ensuring idempotency][1] in
1375
+ # the *Amazon EC2 API Reference*.
1376
+ #
1377
+ # **A suitable default value is auto-generated.** You should normally
1378
+ # not need to pass this option.**
1379
+ #
1380
+ #
1381
+ #
1382
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
1383
+ #
1384
+ # @return [Types::CreateLifecyclePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1385
+ #
1386
+ # * {Types::CreateLifecyclePolicyResponse#client_token #client_token} => String
1387
+ # * {Types::CreateLifecyclePolicyResponse#lifecycle_policy_arn #lifecycle_policy_arn} => String
1388
+ #
1389
+ # @example Request syntax with placeholder values
1390
+ #
1391
+ # resp = client.create_lifecycle_policy({
1392
+ # name: "ResourceName", # required
1393
+ # description: "NonEmptyString",
1394
+ # status: "DISABLED", # accepts DISABLED, ENABLED
1395
+ # execution_role: "RoleNameOrArn", # required
1396
+ # resource_type: "AMI_IMAGE", # required, accepts AMI_IMAGE, CONTAINER_IMAGE
1397
+ # policy_details: [ # required
1398
+ # {
1399
+ # action: { # required
1400
+ # type: "DELETE", # required, accepts DELETE, DEPRECATE, DISABLE
1401
+ # include_resources: {
1402
+ # amis: false,
1403
+ # snapshots: false,
1404
+ # containers: false,
1405
+ # },
1406
+ # },
1407
+ # filter: { # required
1408
+ # type: "AGE", # required, accepts AGE, COUNT
1409
+ # value: 1, # required
1410
+ # unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
1411
+ # retain_at_least: 1,
1412
+ # },
1413
+ # exclusion_rules: {
1414
+ # tag_map: {
1415
+ # "TagKey" => "TagValue",
1416
+ # },
1417
+ # amis: {
1418
+ # is_public: false,
1419
+ # regions: ["NonEmptyString"],
1420
+ # shared_accounts: ["AccountId"],
1421
+ # last_launched: {
1422
+ # value: 1, # required
1423
+ # unit: "DAYS", # required, accepts DAYS, WEEKS, MONTHS, YEARS
1424
+ # },
1425
+ # tag_map: {
1426
+ # "TagKey" => "TagValue",
1427
+ # },
1428
+ # },
1429
+ # },
1430
+ # },
1431
+ # ],
1432
+ # resource_selection: { # required
1433
+ # recipes: [
1434
+ # {
1435
+ # name: "ResourceName", # required
1436
+ # semantic_version: "VersionNumber", # required
1437
+ # },
1438
+ # ],
1439
+ # tag_map: {
1440
+ # "TagKey" => "TagValue",
1441
+ # },
1442
+ # },
1443
+ # tags: {
1444
+ # "TagKey" => "TagValue",
1445
+ # },
1446
+ # client_token: "ClientToken", # required
1447
+ # })
1448
+ #
1449
+ # @example Response structure
1450
+ #
1451
+ # resp.client_token #=> String
1452
+ # resp.lifecycle_policy_arn #=> String
1453
+ #
1454
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/CreateLifecyclePolicy AWS API Documentation
1455
+ #
1456
+ # @overload create_lifecycle_policy(params = {})
1457
+ # @param [Hash] params ({})
1458
+ def create_lifecycle_policy(params = {}, options = {})
1459
+ req = build_request(:create_lifecycle_policy, params)
1460
+ req.send_request(options)
1461
+ end
1462
+
1259
1463
  # Deletes a component build version.
1260
1464
  #
1261
1465
  # @option params [required, String] :component_build_version_arn
@@ -1488,6 +1692,35 @@ module Aws::Imagebuilder
1488
1692
  req.send_request(options)
1489
1693
  end
1490
1694
 
1695
+ # Delete the specified lifecycle policy resource.
1696
+ #
1697
+ # @option params [required, String] :lifecycle_policy_arn
1698
+ # The Amazon Resource Name (ARN) of the lifecycle policy resource to
1699
+ # delete.
1700
+ #
1701
+ # @return [Types::DeleteLifecyclePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1702
+ #
1703
+ # * {Types::DeleteLifecyclePolicyResponse#lifecycle_policy_arn #lifecycle_policy_arn} => String
1704
+ #
1705
+ # @example Request syntax with placeholder values
1706
+ #
1707
+ # resp = client.delete_lifecycle_policy({
1708
+ # lifecycle_policy_arn: "LifecyclePolicyArn", # required
1709
+ # })
1710
+ #
1711
+ # @example Response structure
1712
+ #
1713
+ # resp.lifecycle_policy_arn #=> String
1714
+ #
1715
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/DeleteLifecyclePolicy AWS API Documentation
1716
+ #
1717
+ # @overload delete_lifecycle_policy(params = {})
1718
+ # @param [Hash] params ({})
1719
+ def delete_lifecycle_policy(params = {}, options = {})
1720
+ req = build_request(:delete_lifecycle_policy, params)
1721
+ req.send_request(options)
1722
+ end
1723
+
1491
1724
  # Gets a component object.
1492
1725
  #
1493
1726
  # @option params [required, String] :component_build_version_arn
@@ -1775,7 +2008,7 @@ module Aws::Imagebuilder
1775
2008
  # resp.image.platform #=> String, one of "Windows", "Linux"
1776
2009
  # resp.image.enhanced_image_metadata_enabled #=> Boolean
1777
2010
  # resp.image.os_version #=> String
1778
- # resp.image.state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED"
2011
+ # resp.image.state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED", "DISABLED"
1779
2012
  # resp.image.state.reason #=> String
1780
2013
  # resp.image.image_recipe.arn #=> String
1781
2014
  # resp.image.image_recipe.type #=> String, one of "AMI", "DOCKER"
@@ -1925,7 +2158,7 @@ module Aws::Imagebuilder
1925
2158
  # resp.image.output_resources.amis[0].image #=> String
1926
2159
  # resp.image.output_resources.amis[0].name #=> String
1927
2160
  # resp.image.output_resources.amis[0].description #=> String
1928
- # resp.image.output_resources.amis[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED"
2161
+ # resp.image.output_resources.amis[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED", "DISABLED"
1929
2162
  # resp.image.output_resources.amis[0].state.reason #=> String
1930
2163
  # resp.image.output_resources.amis[0].account_id #=> String
1931
2164
  # resp.image.output_resources.containers #=> Array
@@ -1942,6 +2175,8 @@ module Aws::Imagebuilder
1942
2175
  # resp.image.image_scanning_configuration.ecr_configuration.repository_name #=> String
1943
2176
  # resp.image.image_scanning_configuration.ecr_configuration.container_tags #=> Array
1944
2177
  # resp.image.image_scanning_configuration.ecr_configuration.container_tags[0] #=> String
2178
+ # resp.image.deprecation_time #=> Time
2179
+ # resp.image.lifecycle_execution_id #=> String
1945
2180
  #
1946
2181
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetImage AWS API Documentation
1947
2182
  #
@@ -2183,6 +2418,106 @@ module Aws::Imagebuilder
2183
2418
  req.send_request(options)
2184
2419
  end
2185
2420
 
2421
+ # Get the runtime information that was logged for a specific runtime
2422
+ # instance of the lifecycle policy.
2423
+ #
2424
+ # @option params [required, String] :lifecycle_execution_id
2425
+ # Use the unique identifier for a runtime instance of the lifecycle
2426
+ # policy to get runtime details.
2427
+ #
2428
+ # @return [Types::GetLifecycleExecutionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2429
+ #
2430
+ # * {Types::GetLifecycleExecutionResponse#lifecycle_execution #lifecycle_execution} => Types::LifecycleExecution
2431
+ #
2432
+ # @example Request syntax with placeholder values
2433
+ #
2434
+ # resp = client.get_lifecycle_execution({
2435
+ # lifecycle_execution_id: "LifecycleExecutionId", # required
2436
+ # })
2437
+ #
2438
+ # @example Response structure
2439
+ #
2440
+ # resp.lifecycle_execution.lifecycle_execution_id #=> String
2441
+ # resp.lifecycle_execution.lifecycle_policy_arn #=> String
2442
+ # resp.lifecycle_execution.resources_impacted_summary.has_impacted_resources #=> Boolean
2443
+ # resp.lifecycle_execution.state.status #=> String, one of "IN_PROGRESS", "CANCELLED", "CANCELLING", "FAILED", "SUCCESS"
2444
+ # resp.lifecycle_execution.state.reason #=> String
2445
+ # resp.lifecycle_execution.start_time #=> Time
2446
+ # resp.lifecycle_execution.end_time #=> Time
2447
+ #
2448
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetLifecycleExecution AWS API Documentation
2449
+ #
2450
+ # @overload get_lifecycle_execution(params = {})
2451
+ # @param [Hash] params ({})
2452
+ def get_lifecycle_execution(params = {}, options = {})
2453
+ req = build_request(:get_lifecycle_execution, params)
2454
+ req.send_request(options)
2455
+ end
2456
+
2457
+ # Get details for the specified image lifecycle policy.
2458
+ #
2459
+ # @option params [required, String] :lifecycle_policy_arn
2460
+ # Specifies the Amazon Resource Name (ARN) of the image lifecycle policy
2461
+ # resource to get.
2462
+ #
2463
+ # @return [Types::GetLifecyclePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2464
+ #
2465
+ # * {Types::GetLifecyclePolicyResponse#lifecycle_policy #lifecycle_policy} => Types::LifecyclePolicy
2466
+ #
2467
+ # @example Request syntax with placeholder values
2468
+ #
2469
+ # resp = client.get_lifecycle_policy({
2470
+ # lifecycle_policy_arn: "LifecyclePolicyArn", # required
2471
+ # })
2472
+ #
2473
+ # @example Response structure
2474
+ #
2475
+ # resp.lifecycle_policy.arn #=> String
2476
+ # resp.lifecycle_policy.name #=> String
2477
+ # resp.lifecycle_policy.description #=> String
2478
+ # resp.lifecycle_policy.status #=> String, one of "DISABLED", "ENABLED"
2479
+ # resp.lifecycle_policy.execution_role #=> String
2480
+ # resp.lifecycle_policy.resource_type #=> String, one of "AMI_IMAGE", "CONTAINER_IMAGE"
2481
+ # resp.lifecycle_policy.policy_details #=> Array
2482
+ # resp.lifecycle_policy.policy_details[0].action.type #=> String, one of "DELETE", "DEPRECATE", "DISABLE"
2483
+ # resp.lifecycle_policy.policy_details[0].action.include_resources.amis #=> Boolean
2484
+ # resp.lifecycle_policy.policy_details[0].action.include_resources.snapshots #=> Boolean
2485
+ # resp.lifecycle_policy.policy_details[0].action.include_resources.containers #=> Boolean
2486
+ # resp.lifecycle_policy.policy_details[0].filter.type #=> String, one of "AGE", "COUNT"
2487
+ # resp.lifecycle_policy.policy_details[0].filter.value #=> Integer
2488
+ # resp.lifecycle_policy.policy_details[0].filter.unit #=> String, one of "DAYS", "WEEKS", "MONTHS", "YEARS"
2489
+ # resp.lifecycle_policy.policy_details[0].filter.retain_at_least #=> Integer
2490
+ # resp.lifecycle_policy.policy_details[0].exclusion_rules.tag_map #=> Hash
2491
+ # resp.lifecycle_policy.policy_details[0].exclusion_rules.tag_map["TagKey"] #=> String
2492
+ # resp.lifecycle_policy.policy_details[0].exclusion_rules.amis.is_public #=> Boolean
2493
+ # resp.lifecycle_policy.policy_details[0].exclusion_rules.amis.regions #=> Array
2494
+ # resp.lifecycle_policy.policy_details[0].exclusion_rules.amis.regions[0] #=> String
2495
+ # resp.lifecycle_policy.policy_details[0].exclusion_rules.amis.shared_accounts #=> Array
2496
+ # resp.lifecycle_policy.policy_details[0].exclusion_rules.amis.shared_accounts[0] #=> String
2497
+ # resp.lifecycle_policy.policy_details[0].exclusion_rules.amis.last_launched.value #=> Integer
2498
+ # resp.lifecycle_policy.policy_details[0].exclusion_rules.amis.last_launched.unit #=> String, one of "DAYS", "WEEKS", "MONTHS", "YEARS"
2499
+ # resp.lifecycle_policy.policy_details[0].exclusion_rules.amis.tag_map #=> Hash
2500
+ # resp.lifecycle_policy.policy_details[0].exclusion_rules.amis.tag_map["TagKey"] #=> String
2501
+ # resp.lifecycle_policy.resource_selection.recipes #=> Array
2502
+ # resp.lifecycle_policy.resource_selection.recipes[0].name #=> String
2503
+ # resp.lifecycle_policy.resource_selection.recipes[0].semantic_version #=> String
2504
+ # resp.lifecycle_policy.resource_selection.tag_map #=> Hash
2505
+ # resp.lifecycle_policy.resource_selection.tag_map["TagKey"] #=> String
2506
+ # resp.lifecycle_policy.date_created #=> Time
2507
+ # resp.lifecycle_policy.date_updated #=> Time
2508
+ # resp.lifecycle_policy.date_last_run #=> Time
2509
+ # resp.lifecycle_policy.tags #=> Hash
2510
+ # resp.lifecycle_policy.tags["TagKey"] #=> String
2511
+ #
2512
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetLifecyclePolicy AWS API Documentation
2513
+ #
2514
+ # @overload get_lifecycle_policy(params = {})
2515
+ # @param [Hash] params ({})
2516
+ def get_lifecycle_policy(params = {}, options = {})
2517
+ req = build_request(:get_lifecycle_policy, params)
2518
+ req.send_request(options)
2519
+ end
2520
+
2186
2521
  # Get the runtime information that was logged for a specific runtime
2187
2522
  # instance of the workflow.
2188
2523
  #
@@ -2356,11 +2691,17 @@ module Aws::Imagebuilder
2356
2691
  # The tags of the component.
2357
2692
  #
2358
2693
  # @option params [required, String] :client_token
2359
- # The idempotency token of the component.
2694
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
2695
+ # the request. For more information, see [Ensuring idempotency][1] in
2696
+ # the *Amazon EC2 API Reference*.
2360
2697
  #
2361
2698
  # **A suitable default value is auto-generated.** You should normally
2362
2699
  # not need to pass this option.**
2363
2700
  #
2701
+ #
2702
+ #
2703
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
2704
+ #
2364
2705
  # @return [Types::ImportComponentResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2365
2706
  #
2366
2707
  # * {Types::ImportComponentResponse#request_id #request_id} => String
@@ -2531,7 +2872,7 @@ module Aws::Imagebuilder
2531
2872
  # The maximum items to return in a request.
2532
2873
  #
2533
2874
  # @option params [String] :next_token
2534
- # A token to specify where to start paginating. This is the NextToken
2875
+ # A token to specify where to start paginating. This is the nextToken
2535
2876
  # from a previously truncated response.
2536
2877
  #
2537
2878
  # @return [Types::ListComponentBuildVersionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -2628,7 +2969,7 @@ module Aws::Imagebuilder
2628
2969
  # The maximum items to return in a request.
2629
2970
  #
2630
2971
  # @option params [String] :next_token
2631
- # A token to specify where to start paginating. This is the NextToken
2972
+ # A token to specify where to start paginating. This is the nextToken
2632
2973
  # from a previously truncated response.
2633
2974
  #
2634
2975
  # @return [Types::ListComponentsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -2701,7 +3042,7 @@ module Aws::Imagebuilder
2701
3042
  # The maximum items to return in a request.
2702
3043
  #
2703
3044
  # @option params [String] :next_token
2704
- # A token to specify where to start paginating. This is the NextToken
3045
+ # A token to specify where to start paginating. This is the nextToken
2705
3046
  # from a previously truncated response.
2706
3047
  #
2707
3048
  # @return [Types::ListContainerRecipesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -2759,7 +3100,7 @@ module Aws::Imagebuilder
2759
3100
  # The maximum items to return in a request.
2760
3101
  #
2761
3102
  # @option params [String] :next_token
2762
- # A token to specify where to start paginating. This is the NextToken
3103
+ # A token to specify where to start paginating. This is the nextToken
2763
3104
  # from a previously truncated response.
2764
3105
  #
2765
3106
  # @return [Types::ListDistributionConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -2830,7 +3171,7 @@ module Aws::Imagebuilder
2830
3171
  # The maximum items to return in a request.
2831
3172
  #
2832
3173
  # @option params [String] :next_token
2833
- # A token to specify where to start paginating. This is the NextToken
3174
+ # A token to specify where to start paginating. This is the nextToken
2834
3175
  # from a previously truncated response.
2835
3176
  #
2836
3177
  # @return [Types::ListImageBuildVersionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -2865,7 +3206,7 @@ module Aws::Imagebuilder
2865
3206
  # resp.image_summary_list[0].version #=> String
2866
3207
  # resp.image_summary_list[0].platform #=> String, one of "Windows", "Linux"
2867
3208
  # resp.image_summary_list[0].os_version #=> String
2868
- # resp.image_summary_list[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED"
3209
+ # resp.image_summary_list[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED", "DISABLED"
2869
3210
  # resp.image_summary_list[0].state.reason #=> String
2870
3211
  # resp.image_summary_list[0].owner #=> String
2871
3212
  # resp.image_summary_list[0].date_created #=> String
@@ -2874,7 +3215,7 @@ module Aws::Imagebuilder
2874
3215
  # resp.image_summary_list[0].output_resources.amis[0].image #=> String
2875
3216
  # resp.image_summary_list[0].output_resources.amis[0].name #=> String
2876
3217
  # resp.image_summary_list[0].output_resources.amis[0].description #=> String
2877
- # resp.image_summary_list[0].output_resources.amis[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED"
3218
+ # resp.image_summary_list[0].output_resources.amis[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED", "DISABLED"
2878
3219
  # resp.image_summary_list[0].output_resources.amis[0].state.reason #=> String
2879
3220
  # resp.image_summary_list[0].output_resources.amis[0].account_id #=> String
2880
3221
  # resp.image_summary_list[0].output_resources.containers #=> Array
@@ -2885,6 +3226,8 @@ module Aws::Imagebuilder
2885
3226
  # resp.image_summary_list[0].tags["TagKey"] #=> String
2886
3227
  # resp.image_summary_list[0].build_type #=> String, one of "USER_INITIATED", "SCHEDULED", "IMPORT"
2887
3228
  # resp.image_summary_list[0].image_source #=> String, one of "AMAZON_MANAGED", "AWS_MARKETPLACE", "IMPORTED", "CUSTOM"
3229
+ # resp.image_summary_list[0].deprecation_time #=> Time
3230
+ # resp.image_summary_list[0].lifecycle_execution_id #=> String
2888
3231
  # resp.next_token #=> String
2889
3232
  #
2890
3233
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListImageBuildVersions AWS API Documentation
@@ -2908,7 +3251,7 @@ module Aws::Imagebuilder
2908
3251
  # The maximum items to return in a request.
2909
3252
  #
2910
3253
  # @option params [String] :next_token
2911
- # A token to specify where to start paginating. This is the NextToken
3254
+ # A token to specify where to start paginating. This is the nextToken
2912
3255
  # from a previously truncated response.
2913
3256
  #
2914
3257
  # @return [Types::ListImagePackagesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -2961,7 +3304,7 @@ module Aws::Imagebuilder
2961
3304
  # The maximum items to return in a request.
2962
3305
  #
2963
3306
  # @option params [String] :next_token
2964
- # A token to specify where to start paginating. This is the NextToken
3307
+ # A token to specify where to start paginating. This is the nextToken
2965
3308
  # from a previously truncated response.
2966
3309
  #
2967
3310
  # @return [Types::ListImagePipelineImagesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -2996,7 +3339,7 @@ module Aws::Imagebuilder
2996
3339
  # resp.image_summary_list[0].version #=> String
2997
3340
  # resp.image_summary_list[0].platform #=> String, one of "Windows", "Linux"
2998
3341
  # resp.image_summary_list[0].os_version #=> String
2999
- # resp.image_summary_list[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED"
3342
+ # resp.image_summary_list[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED", "DISABLED"
3000
3343
  # resp.image_summary_list[0].state.reason #=> String
3001
3344
  # resp.image_summary_list[0].owner #=> String
3002
3345
  # resp.image_summary_list[0].date_created #=> String
@@ -3005,7 +3348,7 @@ module Aws::Imagebuilder
3005
3348
  # resp.image_summary_list[0].output_resources.amis[0].image #=> String
3006
3349
  # resp.image_summary_list[0].output_resources.amis[0].name #=> String
3007
3350
  # resp.image_summary_list[0].output_resources.amis[0].description #=> String
3008
- # resp.image_summary_list[0].output_resources.amis[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED"
3351
+ # resp.image_summary_list[0].output_resources.amis[0].state.status #=> String, one of "PENDING", "CREATING", "BUILDING", "TESTING", "DISTRIBUTING", "INTEGRATING", "AVAILABLE", "CANCELLED", "FAILED", "DEPRECATED", "DELETED", "DISABLED"
3009
3352
  # resp.image_summary_list[0].output_resources.amis[0].state.reason #=> String
3010
3353
  # resp.image_summary_list[0].output_resources.amis[0].account_id #=> String
3011
3354
  # resp.image_summary_list[0].output_resources.containers #=> Array
@@ -3016,6 +3359,8 @@ module Aws::Imagebuilder
3016
3359
  # resp.image_summary_list[0].tags["TagKey"] #=> String
3017
3360
  # resp.image_summary_list[0].build_type #=> String, one of "USER_INITIATED", "SCHEDULED", "IMPORT"
3018
3361
  # resp.image_summary_list[0].image_source #=> String, one of "AMAZON_MANAGED", "AWS_MARKETPLACE", "IMPORTED", "CUSTOM"
3362
+ # resp.image_summary_list[0].deprecation_time #=> Time
3363
+ # resp.image_summary_list[0].lifecycle_execution_id #=> String
3019
3364
  # resp.next_token #=> String
3020
3365
  #
3021
3366
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListImagePipelineImages AWS API Documentation
@@ -3048,7 +3393,7 @@ module Aws::Imagebuilder
3048
3393
  # The maximum items to return in a request.
3049
3394
  #
3050
3395
  # @option params [String] :next_token
3051
- # A token to specify where to start paginating. This is the NextToken
3396
+ # A token to specify where to start paginating. This is the nextToken
3052
3397
  # from a previously truncated response.
3053
3398
  #
3054
3399
  # @return [Types::ListImagePipelinesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -3134,7 +3479,7 @@ module Aws::Imagebuilder
3134
3479
  # The maximum items to return in a request.
3135
3480
  #
3136
3481
  # @option params [String] :next_token
3137
- # A token to specify where to start paginating. This is the NextToken
3482
+ # A token to specify where to start paginating. This is the nextToken
3138
3483
  # from a previously truncated response.
3139
3484
  #
3140
3485
  # @return [Types::ListImageRecipesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -3207,7 +3552,7 @@ module Aws::Imagebuilder
3207
3552
  # IDs.
3208
3553
  #
3209
3554
  # @option params [String] :next_token
3210
- # A token to specify where to start paginating. This is the NextToken
3555
+ # A token to specify where to start paginating. This is the nextToken
3211
3556
  # from a previously truncated response.
3212
3557
  #
3213
3558
  # @return [Types::ListImageScanFindingAggregationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -3286,7 +3631,7 @@ module Aws::Imagebuilder
3286
3631
  # The maximum items to return in a request.
3287
3632
  #
3288
3633
  # @option params [String] :next_token
3289
- # A token to specify where to start paginating. This is the NextToken
3634
+ # A token to specify where to start paginating. This is the nextToken
3290
3635
  # from a previously truncated response.
3291
3636
  #
3292
3637
  # @return [Types::ListImageScanFindingsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -3403,7 +3748,7 @@ module Aws::Imagebuilder
3403
3748
  # The maximum items to return in a request.
3404
3749
  #
3405
3750
  # @option params [String] :next_token
3406
- # A token to specify where to start paginating. This is the NextToken
3751
+ # A token to specify where to start paginating. This is the nextToken
3407
3752
  # from a previously truncated response.
3408
3753
  #
3409
3754
  # @option params [Boolean] :include_deprecated
@@ -3467,7 +3812,7 @@ module Aws::Imagebuilder
3467
3812
  # The maximum items to return in a request.
3468
3813
  #
3469
3814
  # @option params [String] :next_token
3470
- # A token to specify where to start paginating. This is the NextToken
3815
+ # A token to specify where to start paginating. This is the nextToken
3471
3816
  # from a previously truncated response.
3472
3817
  #
3473
3818
  # @return [Types::ListInfrastructureConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -3518,6 +3863,185 @@ module Aws::Imagebuilder
3518
3863
  req.send_request(options)
3519
3864
  end
3520
3865
 
3866
+ # List resources that the runtime instance of the image lifecycle
3867
+ # identified for lifecycle actions.
3868
+ #
3869
+ # @option params [required, String] :lifecycle_execution_id
3870
+ # Use the unique identifier for a runtime instance of the lifecycle
3871
+ # policy to get runtime details.
3872
+ #
3873
+ # @option params [String] :parent_resource_id
3874
+ # You can leave this empty to get a list of Image Builder resources that
3875
+ # were identified for lifecycle actions.
3876
+ #
3877
+ # To get a list of associated resources that are impacted for an
3878
+ # individual resource (the parent), specify its Amazon Resource Name
3879
+ # (ARN). Associated resources are produced from your image and
3880
+ # distributed when you run a build, such as AMIs or container images
3881
+ # stored in ECR repositories.
3882
+ #
3883
+ # @option params [Integer] :max_results
3884
+ # The maximum items to return in a request.
3885
+ #
3886
+ # @option params [String] :next_token
3887
+ # A token to specify where to start paginating. This is the nextToken
3888
+ # from a previously truncated response.
3889
+ #
3890
+ # @return [Types::ListLifecycleExecutionResourcesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3891
+ #
3892
+ # * {Types::ListLifecycleExecutionResourcesResponse#lifecycle_execution_id #lifecycle_execution_id} => String
3893
+ # * {Types::ListLifecycleExecutionResourcesResponse#lifecycle_execution_state #lifecycle_execution_state} => Types::LifecycleExecutionState
3894
+ # * {Types::ListLifecycleExecutionResourcesResponse#resources #resources} => Array&lt;Types::LifecycleExecutionResource&gt;
3895
+ # * {Types::ListLifecycleExecutionResourcesResponse#next_token #next_token} => String
3896
+ #
3897
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3898
+ #
3899
+ # @example Request syntax with placeholder values
3900
+ #
3901
+ # resp = client.list_lifecycle_execution_resources({
3902
+ # lifecycle_execution_id: "LifecycleExecutionId", # required
3903
+ # parent_resource_id: "NonEmptyString",
3904
+ # max_results: 1,
3905
+ # next_token: "PaginationToken",
3906
+ # })
3907
+ #
3908
+ # @example Response structure
3909
+ #
3910
+ # resp.lifecycle_execution_id #=> String
3911
+ # resp.lifecycle_execution_state.status #=> String, one of "IN_PROGRESS", "CANCELLED", "CANCELLING", "FAILED", "SUCCESS"
3912
+ # resp.lifecycle_execution_state.reason #=> String
3913
+ # resp.resources #=> Array
3914
+ # resp.resources[0].account_id #=> String
3915
+ # resp.resources[0].resource_id #=> String
3916
+ # resp.resources[0].state.status #=> String, one of "FAILED", "IN_PROGRESS", "SKIPPED", "SUCCESS"
3917
+ # resp.resources[0].state.reason #=> String
3918
+ # resp.resources[0].action.name #=> String, one of "AVAILABLE", "DELETE", "DEPRECATE", "DISABLE"
3919
+ # resp.resources[0].action.reason #=> String
3920
+ # resp.resources[0].region #=> String
3921
+ # resp.resources[0].snapshots #=> Array
3922
+ # resp.resources[0].snapshots[0].snapshot_id #=> String
3923
+ # resp.resources[0].snapshots[0].state.status #=> String, one of "FAILED", "IN_PROGRESS", "SKIPPED", "SUCCESS"
3924
+ # resp.resources[0].snapshots[0].state.reason #=> String
3925
+ # resp.resources[0].image_uris #=> Array
3926
+ # resp.resources[0].image_uris[0] #=> String
3927
+ # resp.next_token #=> String
3928
+ #
3929
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListLifecycleExecutionResources AWS API Documentation
3930
+ #
3931
+ # @overload list_lifecycle_execution_resources(params = {})
3932
+ # @param [Hash] params ({})
3933
+ def list_lifecycle_execution_resources(params = {}, options = {})
3934
+ req = build_request(:list_lifecycle_execution_resources, params)
3935
+ req.send_request(options)
3936
+ end
3937
+
3938
+ # Get the lifecycle runtime history for the specified resource.
3939
+ #
3940
+ # @option params [Integer] :max_results
3941
+ # The maximum items to return in a request.
3942
+ #
3943
+ # @option params [String] :next_token
3944
+ # A token to specify where to start paginating. This is the nextToken
3945
+ # from a previously truncated response.
3946
+ #
3947
+ # @option params [required, String] :resource_arn
3948
+ # The Amazon Resource Name (ARN) of the resource for which to get a list
3949
+ # of lifecycle runtime instances.
3950
+ #
3951
+ # @return [Types::ListLifecycleExecutionsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3952
+ #
3953
+ # * {Types::ListLifecycleExecutionsResponse#lifecycle_executions #lifecycle_executions} => Array&lt;Types::LifecycleExecution&gt;
3954
+ # * {Types::ListLifecycleExecutionsResponse#next_token #next_token} => String
3955
+ #
3956
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
3957
+ #
3958
+ # @example Request syntax with placeholder values
3959
+ #
3960
+ # resp = client.list_lifecycle_executions({
3961
+ # max_results: 1,
3962
+ # next_token: "PaginationToken",
3963
+ # resource_arn: "ImageBuilderArn", # required
3964
+ # })
3965
+ #
3966
+ # @example Response structure
3967
+ #
3968
+ # resp.lifecycle_executions #=> Array
3969
+ # resp.lifecycle_executions[0].lifecycle_execution_id #=> String
3970
+ # resp.lifecycle_executions[0].lifecycle_policy_arn #=> String
3971
+ # resp.lifecycle_executions[0].resources_impacted_summary.has_impacted_resources #=> Boolean
3972
+ # resp.lifecycle_executions[0].state.status #=> String, one of "IN_PROGRESS", "CANCELLED", "CANCELLING", "FAILED", "SUCCESS"
3973
+ # resp.lifecycle_executions[0].state.reason #=> String
3974
+ # resp.lifecycle_executions[0].start_time #=> Time
3975
+ # resp.lifecycle_executions[0].end_time #=> Time
3976
+ # resp.next_token #=> String
3977
+ #
3978
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListLifecycleExecutions AWS API Documentation
3979
+ #
3980
+ # @overload list_lifecycle_executions(params = {})
3981
+ # @param [Hash] params ({})
3982
+ def list_lifecycle_executions(params = {}, options = {})
3983
+ req = build_request(:list_lifecycle_executions, params)
3984
+ req.send_request(options)
3985
+ end
3986
+
3987
+ # Get a list of lifecycle policies in your Amazon Web Services account.
3988
+ #
3989
+ # @option params [Array<Types::Filter>] :filters
3990
+ # Streamline results based on one of the following values: `Name`,
3991
+ # `Status`.
3992
+ #
3993
+ # @option params [Integer] :max_results
3994
+ # The maximum items to return in a request.
3995
+ #
3996
+ # @option params [String] :next_token
3997
+ # A token to specify where to start paginating. This is the nextToken
3998
+ # from a previously truncated response.
3999
+ #
4000
+ # @return [Types::ListLifecyclePoliciesResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4001
+ #
4002
+ # * {Types::ListLifecyclePoliciesResponse#lifecycle_policy_summary_list #lifecycle_policy_summary_list} => Array&lt;Types::LifecyclePolicySummary&gt;
4003
+ # * {Types::ListLifecyclePoliciesResponse#next_token #next_token} => String
4004
+ #
4005
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
4006
+ #
4007
+ # @example Request syntax with placeholder values
4008
+ #
4009
+ # resp = client.list_lifecycle_policies({
4010
+ # filters: [
4011
+ # {
4012
+ # name: "FilterName",
4013
+ # values: ["FilterValue"],
4014
+ # },
4015
+ # ],
4016
+ # max_results: 1,
4017
+ # next_token: "PaginationToken",
4018
+ # })
4019
+ #
4020
+ # @example Response structure
4021
+ #
4022
+ # resp.lifecycle_policy_summary_list #=> Array
4023
+ # resp.lifecycle_policy_summary_list[0].arn #=> String
4024
+ # resp.lifecycle_policy_summary_list[0].name #=> String
4025
+ # resp.lifecycle_policy_summary_list[0].description #=> String
4026
+ # resp.lifecycle_policy_summary_list[0].status #=> String, one of "DISABLED", "ENABLED"
4027
+ # resp.lifecycle_policy_summary_list[0].execution_role #=> String
4028
+ # resp.lifecycle_policy_summary_list[0].resource_type #=> String, one of "AMI_IMAGE", "CONTAINER_IMAGE"
4029
+ # resp.lifecycle_policy_summary_list[0].date_created #=> Time
4030
+ # resp.lifecycle_policy_summary_list[0].date_updated #=> Time
4031
+ # resp.lifecycle_policy_summary_list[0].date_last_run #=> Time
4032
+ # resp.lifecycle_policy_summary_list[0].tags #=> Hash
4033
+ # resp.lifecycle_policy_summary_list[0].tags["TagKey"] #=> String
4034
+ # resp.next_token #=> String
4035
+ #
4036
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListLifecyclePolicies AWS API Documentation
4037
+ #
4038
+ # @overload list_lifecycle_policies(params = {})
4039
+ # @param [Hash] params ({})
4040
+ def list_lifecycle_policies(params = {}, options = {})
4041
+ req = build_request(:list_lifecycle_policies, params)
4042
+ req.send_request(options)
4043
+ end
4044
+
3521
4045
  # Returns the list of tags for the specified resource.
3522
4046
  #
3523
4047
  # @option params [required, String] :resource_arn
@@ -3555,7 +4079,7 @@ module Aws::Imagebuilder
3555
4079
  # The maximum items to return in a request.
3556
4080
  #
3557
4081
  # @option params [String] :next_token
3558
- # A token to specify where to start paginating. This is the NextToken
4082
+ # A token to specify where to start paginating. This is the nextToken
3559
4083
  # from a previously truncated response.
3560
4084
  #
3561
4085
  # @option params [required, String] :image_build_version_arn
@@ -3615,7 +4139,7 @@ module Aws::Imagebuilder
3615
4139
  # The maximum items to return in a request.
3616
4140
  #
3617
4141
  # @option params [String] :next_token
3618
- # A token to specify where to start paginating. This is the NextToken
4142
+ # A token to specify where to start paginating. This is the nextToken
3619
4143
  # from a previously truncated response.
3620
4144
  #
3621
4145
  # @option params [required, String] :workflow_execution_id
@@ -3855,11 +4379,17 @@ module Aws::Imagebuilder
3855
4379
  # manually invoke.
3856
4380
  #
3857
4381
  # @option params [required, String] :client_token
3858
- # The idempotency token used to make this request idempotent.
4382
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
4383
+ # the request. For more information, see [Ensuring idempotency][1] in
4384
+ # the *Amazon EC2 API Reference*.
3859
4385
  #
3860
4386
  # **A suitable default value is auto-generated.** You should normally
3861
4387
  # not need to pass this option.**
3862
4388
  #
4389
+ #
4390
+ #
4391
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
4392
+ #
3863
4393
  # @return [Types::StartImagePipelineExecutionResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3864
4394
  #
3865
4395
  # * {Types::StartImagePipelineExecutionResponse#request_id #request_id} => String
@@ -3888,6 +4418,93 @@ module Aws::Imagebuilder
3888
4418
  req.send_request(options)
3889
4419
  end
3890
4420
 
4421
+ # Begin asynchronous resource state update for lifecycle changes to the
4422
+ # specified image resources.
4423
+ #
4424
+ # @option params [required, String] :resource_arn
4425
+ # The ARN of the Image Builder resource that is updated. The state
4426
+ # update might also impact associated resources.
4427
+ #
4428
+ # @option params [required, Types::ResourceState] :state
4429
+ # Indicates the lifecycle action to take for this request.
4430
+ #
4431
+ # @option params [String] :execution_role
4432
+ # The name or Amazon Resource Name (ARN) of the IAM role that’s used to
4433
+ # update image state.
4434
+ #
4435
+ # @option params [Types::ResourceStateUpdateIncludeResources] :include_resources
4436
+ # A list of image resources to update state for.
4437
+ #
4438
+ # @option params [Types::ResourceStateUpdateExclusionRules] :exclusion_rules
4439
+ # Skip action on the image resource and associated resources if
4440
+ # specified exclusion rules are met.
4441
+ #
4442
+ # @option params [Time,DateTime,Date,Integer,String] :update_at
4443
+ # The timestamp that indicates when resources are updated by a lifecycle
4444
+ # action.
4445
+ #
4446
+ # @option params [required, String] :client_token
4447
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
4448
+ # the request. For more information, see [Ensuring idempotency][1] in
4449
+ # the *Amazon EC2 API Reference*.
4450
+ #
4451
+ # **A suitable default value is auto-generated.** You should normally
4452
+ # not need to pass this option.**
4453
+ #
4454
+ #
4455
+ #
4456
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
4457
+ #
4458
+ # @return [Types::StartResourceStateUpdateResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4459
+ #
4460
+ # * {Types::StartResourceStateUpdateResponse#lifecycle_execution_id #lifecycle_execution_id} => String
4461
+ # * {Types::StartResourceStateUpdateResponse#resource_arn #resource_arn} => String
4462
+ #
4463
+ # @example Request syntax with placeholder values
4464
+ #
4465
+ # resp = client.start_resource_state_update({
4466
+ # resource_arn: "ImageBuildVersionArn", # required
4467
+ # state: { # required
4468
+ # status: "AVAILABLE", # accepts AVAILABLE, DELETED, DEPRECATED, DISABLED
4469
+ # },
4470
+ # execution_role: "RoleNameOrArn",
4471
+ # include_resources: {
4472
+ # amis: false,
4473
+ # snapshots: false,
4474
+ # containers: false,
4475
+ # },
4476
+ # exclusion_rules: {
4477
+ # amis: {
4478
+ # is_public: false,
4479
+ # regions: ["NonEmptyString"],
4480
+ # shared_accounts: ["AccountId"],
4481
+ # last_launched: {
4482
+ # value: 1, # required
4483
+ # unit: "DAYS", # required, accepts DAYS, WEEKS, MONTHS, YEARS
4484
+ # },
4485
+ # tag_map: {
4486
+ # "TagKey" => "TagValue",
4487
+ # },
4488
+ # },
4489
+ # },
4490
+ # update_at: Time.now,
4491
+ # client_token: "ClientToken", # required
4492
+ # })
4493
+ #
4494
+ # @example Response structure
4495
+ #
4496
+ # resp.lifecycle_execution_id #=> String
4497
+ # resp.resource_arn #=> String
4498
+ #
4499
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/StartResourceStateUpdate AWS API Documentation
4500
+ #
4501
+ # @overload start_resource_state_update(params = {})
4502
+ # @param [Hash] params ({})
4503
+ def start_resource_state_update(params = {}, options = {})
4504
+ req = build_request(:start_resource_state_update, params)
4505
+ req.send_request(options)
4506
+ end
4507
+
3891
4508
  # Adds a tag to a resource.
3892
4509
  #
3893
4510
  # @option params [required, String] :resource_arn
@@ -3956,11 +4573,17 @@ module Aws::Imagebuilder
3956
4573
  # The distributions of the distribution configuration.
3957
4574
  #
3958
4575
  # @option params [required, String] :client_token
3959
- # The idempotency token of the distribution configuration.
4576
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
4577
+ # the request. For more information, see [Ensuring idempotency][1] in
4578
+ # the *Amazon EC2 API Reference*.
3960
4579
  #
3961
4580
  # **A suitable default value is auto-generated.** You should normally
3962
4581
  # not need to pass this option.**
3963
4582
  #
4583
+ #
4584
+ #
4585
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
4586
+ #
3964
4587
  # @return [Types::UpdateDistributionConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3965
4588
  #
3966
4589
  # * {Types::UpdateDistributionConfigurationResponse#request_id #request_id} => String
@@ -4096,11 +4719,17 @@ module Aws::Imagebuilder
4096
4719
  # The status of the image pipeline.
4097
4720
  #
4098
4721
  # @option params [required, String] :client_token
4099
- # The idempotency token used to make this request idempotent.
4722
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
4723
+ # the request. For more information, see [Ensuring idempotency][1] in
4724
+ # the *Amazon EC2 API Reference*.
4100
4725
  #
4101
4726
  # **A suitable default value is auto-generated.** You should normally
4102
4727
  # not need to pass this option.**
4103
4728
  #
4729
+ #
4730
+ #
4731
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
4732
+ #
4104
4733
  # @option params [Types::ImageScanningConfiguration] :image_scanning_configuration
4105
4734
  # Contains settings for vulnerability scans.
4106
4735
  #
@@ -4208,11 +4837,17 @@ module Aws::Imagebuilder
4208
4837
  # </note>
4209
4838
  #
4210
4839
  # @option params [required, String] :client_token
4211
- # The idempotency token used to make this request idempotent.
4840
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
4841
+ # the request. For more information, see [Ensuring idempotency][1] in
4842
+ # the *Amazon EC2 API Reference*.
4212
4843
  #
4213
4844
  # **A suitable default value is auto-generated.** You should normally
4214
4845
  # not need to pass this option.**
4215
4846
  #
4847
+ #
4848
+ #
4849
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
4850
+ #
4216
4851
  # @option params [Hash<String,String>] :resource_tags
4217
4852
  # The tags attached to the resource created by Image Builder.
4218
4853
  #
@@ -4282,6 +4917,116 @@ module Aws::Imagebuilder
4282
4917
  req.send_request(options)
4283
4918
  end
4284
4919
 
4920
+ # Update the specified lifecycle policy.
4921
+ #
4922
+ # @option params [required, String] :lifecycle_policy_arn
4923
+ # The Amazon Resource Name (ARN) of the lifecycle policy resource.
4924
+ #
4925
+ # @option params [String] :description
4926
+ # Optional description for the lifecycle policy.
4927
+ #
4928
+ # @option params [String] :status
4929
+ # Indicates whether the lifecycle policy resource is enabled.
4930
+ #
4931
+ # @option params [required, String] :execution_role
4932
+ # The name of the IAM role that Image Builder should use to update the
4933
+ # lifecycle policy.
4934
+ #
4935
+ # @option params [required, String] :resource_type
4936
+ # The type of image resource that the lifecycle policy applies to.
4937
+ #
4938
+ # @option params [required, Array<Types::LifecyclePolicyDetail>] :policy_details
4939
+ # The configuration details for a lifecycle policy resource.
4940
+ #
4941
+ # @option params [required, Types::LifecyclePolicyResourceSelection] :resource_selection
4942
+ # Selection criteria for resources that the lifecycle policy applies to.
4943
+ #
4944
+ # @option params [required, String] :client_token
4945
+ # Unique, case-sensitive identifier you provide to ensure idempotency of
4946
+ # the request. For more information, see [Ensuring idempotency][1] in
4947
+ # the *Amazon EC2 API Reference*.
4948
+ #
4949
+ # **A suitable default value is auto-generated.** You should normally
4950
+ # not need to pass this option.**
4951
+ #
4952
+ #
4953
+ #
4954
+ # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
4955
+ #
4956
+ # @return [Types::UpdateLifecyclePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
4957
+ #
4958
+ # * {Types::UpdateLifecyclePolicyResponse#lifecycle_policy_arn #lifecycle_policy_arn} => String
4959
+ #
4960
+ # @example Request syntax with placeholder values
4961
+ #
4962
+ # resp = client.update_lifecycle_policy({
4963
+ # lifecycle_policy_arn: "LifecyclePolicyArn", # required
4964
+ # description: "NonEmptyString",
4965
+ # status: "DISABLED", # accepts DISABLED, ENABLED
4966
+ # execution_role: "RoleNameOrArn", # required
4967
+ # resource_type: "AMI_IMAGE", # required, accepts AMI_IMAGE, CONTAINER_IMAGE
4968
+ # policy_details: [ # required
4969
+ # {
4970
+ # action: { # required
4971
+ # type: "DELETE", # required, accepts DELETE, DEPRECATE, DISABLE
4972
+ # include_resources: {
4973
+ # amis: false,
4974
+ # snapshots: false,
4975
+ # containers: false,
4976
+ # },
4977
+ # },
4978
+ # filter: { # required
4979
+ # type: "AGE", # required, accepts AGE, COUNT
4980
+ # value: 1, # required
4981
+ # unit: "DAYS", # accepts DAYS, WEEKS, MONTHS, YEARS
4982
+ # retain_at_least: 1,
4983
+ # },
4984
+ # exclusion_rules: {
4985
+ # tag_map: {
4986
+ # "TagKey" => "TagValue",
4987
+ # },
4988
+ # amis: {
4989
+ # is_public: false,
4990
+ # regions: ["NonEmptyString"],
4991
+ # shared_accounts: ["AccountId"],
4992
+ # last_launched: {
4993
+ # value: 1, # required
4994
+ # unit: "DAYS", # required, accepts DAYS, WEEKS, MONTHS, YEARS
4995
+ # },
4996
+ # tag_map: {
4997
+ # "TagKey" => "TagValue",
4998
+ # },
4999
+ # },
5000
+ # },
5001
+ # },
5002
+ # ],
5003
+ # resource_selection: { # required
5004
+ # recipes: [
5005
+ # {
5006
+ # name: "ResourceName", # required
5007
+ # semantic_version: "VersionNumber", # required
5008
+ # },
5009
+ # ],
5010
+ # tag_map: {
5011
+ # "TagKey" => "TagValue",
5012
+ # },
5013
+ # },
5014
+ # client_token: "ClientToken", # required
5015
+ # })
5016
+ #
5017
+ # @example Response structure
5018
+ #
5019
+ # resp.lifecycle_policy_arn #=> String
5020
+ #
5021
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/UpdateLifecyclePolicy AWS API Documentation
5022
+ #
5023
+ # @overload update_lifecycle_policy(params = {})
5024
+ # @param [Hash] params ({})
5025
+ def update_lifecycle_policy(params = {}, options = {})
5026
+ req = build_request(:update_lifecycle_policy, params)
5027
+ req.send_request(options)
5028
+ end
5029
+
4285
5030
  # @!endgroup
4286
5031
 
4287
5032
  # @param params ({})
@@ -4295,7 +5040,7 @@ module Aws::Imagebuilder
4295
5040
  params: params,
4296
5041
  config: config)
4297
5042
  context[:gem_name] = 'aws-sdk-imagebuilder'
4298
- context[:gem_version] = '1.51.0'
5043
+ context[:gem_version] = '1.53.0'
4299
5044
  Seahorse::Client::Request.new(handlers, context)
4300
5045
  end
4301
5046