aws-sdk-imagebuilder 1.16.0 → 1.17.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -417,6 +417,209 @@ module Aws::Imagebuilder
417
417
  include Aws::Structure
418
418
  end
419
419
 
420
+ # A container encapsulates the runtime environment for an application.
421
+ #
422
+ # @!attribute [rw] region
423
+ # Containers and container images are Region-specific. This is the
424
+ # Region context for the container.
425
+ # @return [String]
426
+ #
427
+ # @!attribute [rw] image_uris
428
+ # A list of URIs for containers created in the context Region.
429
+ # @return [Array<String>]
430
+ #
431
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/Container AWS API Documentation
432
+ #
433
+ class Container < Struct.new(
434
+ :region,
435
+ :image_uris)
436
+ SENSITIVE = []
437
+ include Aws::Structure
438
+ end
439
+
440
+ # Container distribution settings for encryption, licensing, and sharing
441
+ # in a specific Region.
442
+ #
443
+ # @note When making an API call, you may pass ContainerDistributionConfiguration
444
+ # data as a hash:
445
+ #
446
+ # {
447
+ # description: "NonEmptyString",
448
+ # container_tags: ["NonEmptyString"],
449
+ # target_repository: { # required
450
+ # service: "ECR", # required, accepts ECR
451
+ # repository_name: "NonEmptyString", # required
452
+ # },
453
+ # }
454
+ #
455
+ # @!attribute [rw] description
456
+ # The description of the container distribution configuration.
457
+ # @return [String]
458
+ #
459
+ # @!attribute [rw] container_tags
460
+ # Tags that are attached to the container distribution configuration.
461
+ # @return [Array<String>]
462
+ #
463
+ # @!attribute [rw] target_repository
464
+ # The destination repository for the container distribution
465
+ # configuration.
466
+ # @return [Types::TargetContainerRepository]
467
+ #
468
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ContainerDistributionConfiguration AWS API Documentation
469
+ #
470
+ class ContainerDistributionConfiguration < Struct.new(
471
+ :description,
472
+ :container_tags,
473
+ :target_repository)
474
+ SENSITIVE = []
475
+ include Aws::Structure
476
+ end
477
+
478
+ # A container recipe.
479
+ #
480
+ # @!attribute [rw] arn
481
+ # The Amazon Resource Name (ARN) of the container recipe.
482
+ # @return [String]
483
+ #
484
+ # @!attribute [rw] container_type
485
+ # Specifies the type of container, such as Docker.
486
+ # @return [String]
487
+ #
488
+ # @!attribute [rw] name
489
+ # The name of the container recipe.
490
+ # @return [String]
491
+ #
492
+ # @!attribute [rw] description
493
+ # The description of the container recipe.
494
+ # @return [String]
495
+ #
496
+ # @!attribute [rw] platform
497
+ # The system platform for the container, such as Windows or Linux.
498
+ # @return [String]
499
+ #
500
+ # @!attribute [rw] owner
501
+ # The owner of the container recipe.
502
+ # @return [String]
503
+ #
504
+ # @!attribute [rw] version
505
+ # The semantic version of the container recipe
506
+ # (&lt;major&gt;.&lt;minor&gt;.&lt;patch&gt;).
507
+ # @return [String]
508
+ #
509
+ # @!attribute [rw] components
510
+ # Components for build and test that are included in the container
511
+ # recipe.
512
+ # @return [Array<Types::ComponentConfiguration>]
513
+ #
514
+ # @!attribute [rw] dockerfile_template_data
515
+ # Dockerfiles are text documents that are used to build Docker
516
+ # containers, and ensure that they contain all of the elements
517
+ # required by the application running inside. The template data
518
+ # consists of contextual variables where Image Builder places build
519
+ # information or scripts, based on your container image recipe.
520
+ # @return [String]
521
+ #
522
+ # @!attribute [rw] kms_key_id
523
+ # Identifies which KMS key is used to encrypt the container image for
524
+ # distribution to the target Region.
525
+ # @return [String]
526
+ #
527
+ # @!attribute [rw] encrypted
528
+ # A flag that indicates if the target container is encrypted.
529
+ # @return [Boolean]
530
+ #
531
+ # @!attribute [rw] parent_image
532
+ # The source image for the container recipe.
533
+ # @return [String]
534
+ #
535
+ # @!attribute [rw] date_created
536
+ # The date when this container recipe was created.
537
+ # @return [String]
538
+ #
539
+ # @!attribute [rw] tags
540
+ # Tags that are attached to the container recipe.
541
+ # @return [Hash<String,String>]
542
+ #
543
+ # @!attribute [rw] working_directory
544
+ # The working directory for use during build and test workflows.
545
+ # @return [String]
546
+ #
547
+ # @!attribute [rw] target_repository
548
+ # The destination repository for the container image.
549
+ # @return [Types::TargetContainerRepository]
550
+ #
551
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ContainerRecipe AWS API Documentation
552
+ #
553
+ class ContainerRecipe < Struct.new(
554
+ :arn,
555
+ :container_type,
556
+ :name,
557
+ :description,
558
+ :platform,
559
+ :owner,
560
+ :version,
561
+ :components,
562
+ :dockerfile_template_data,
563
+ :kms_key_id,
564
+ :encrypted,
565
+ :parent_image,
566
+ :date_created,
567
+ :tags,
568
+ :working_directory,
569
+ :target_repository)
570
+ SENSITIVE = []
571
+ include Aws::Structure
572
+ end
573
+
574
+ # A summary of a container recipe
575
+ #
576
+ # @!attribute [rw] arn
577
+ # The Amazon Resource Name (ARN) of the container recipe.
578
+ # @return [String]
579
+ #
580
+ # @!attribute [rw] container_type
581
+ # Specifies the type of container, such as "Docker".
582
+ # @return [String]
583
+ #
584
+ # @!attribute [rw] name
585
+ # The name of the container recipe.
586
+ # @return [String]
587
+ #
588
+ # @!attribute [rw] platform
589
+ # The system platform for the container, such as Windows or Linux.
590
+ # @return [String]
591
+ #
592
+ # @!attribute [rw] owner
593
+ # The owner of the container recipe.
594
+ # @return [String]
595
+ #
596
+ # @!attribute [rw] parent_image
597
+ # The source image for the container recipe.
598
+ # @return [String]
599
+ #
600
+ # @!attribute [rw] date_created
601
+ # The date when this container recipe was created.
602
+ # @return [String]
603
+ #
604
+ # @!attribute [rw] tags
605
+ # Tags that are attached to the container recipe.
606
+ # @return [Hash<String,String>]
607
+ #
608
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ContainerRecipeSummary AWS API Documentation
609
+ #
610
+ class ContainerRecipeSummary < Struct.new(
611
+ :arn,
612
+ :container_type,
613
+ :name,
614
+ :platform,
615
+ :owner,
616
+ :parent_image,
617
+ :date_created,
618
+ :tags)
619
+ SENSITIVE = []
620
+ include Aws::Structure
621
+ end
622
+
420
623
  # @note When making an API call, you may pass CreateComponentRequest
421
624
  # data as a hash:
422
625
  #
@@ -536,6 +739,149 @@ module Aws::Imagebuilder
536
739
  include Aws::Structure
537
740
  end
538
741
 
742
+ # @note When making an API call, you may pass CreateContainerRecipeRequest
743
+ # data as a hash:
744
+ #
745
+ # {
746
+ # container_type: "DOCKER", # required, accepts DOCKER
747
+ # name: "ResourceName", # required
748
+ # description: "NonEmptyString",
749
+ # semantic_version: "VersionNumber", # required
750
+ # components: [ # required
751
+ # {
752
+ # component_arn: "ComponentVersionArnOrBuildVersionArn", # required
753
+ # },
754
+ # ],
755
+ # dockerfile_template_data: "InlineDockerFileTemplate", # required
756
+ # dockerfile_template_uri: "Uri",
757
+ # platform_override: "Windows", # accepts Windows, Linux
758
+ # image_os_version_override: "NonEmptyString",
759
+ # parent_image: "NonEmptyString", # required
760
+ # tags: {
761
+ # "TagKey" => "TagValue",
762
+ # },
763
+ # working_directory: "NonEmptyString",
764
+ # target_repository: { # required
765
+ # service: "ECR", # required, accepts ECR
766
+ # repository_name: "NonEmptyString", # required
767
+ # },
768
+ # kms_key_id: "NonEmptyString",
769
+ # client_token: "ClientToken", # required
770
+ # }
771
+ #
772
+ # @!attribute [rw] container_type
773
+ # The type of container to create.
774
+ # @return [String]
775
+ #
776
+ # @!attribute [rw] name
777
+ # The name of the container recipe.
778
+ # @return [String]
779
+ #
780
+ # @!attribute [rw] description
781
+ # The description of the container recipe.
782
+ # @return [String]
783
+ #
784
+ # @!attribute [rw] semantic_version
785
+ # The semantic version of the container recipe
786
+ # (&lt;major&gt;.&lt;minor&gt;.&lt;patch&gt;).
787
+ # @return [String]
788
+ #
789
+ # @!attribute [rw] components
790
+ # Components for build and test that are included in the container
791
+ # recipe.
792
+ # @return [Array<Types::ComponentConfiguration>]
793
+ #
794
+ # @!attribute [rw] dockerfile_template_data
795
+ # The Dockerfile template used to build your image as an inline data
796
+ # blob.
797
+ # @return [String]
798
+ #
799
+ # @!attribute [rw] dockerfile_template_uri
800
+ # The S3 URI for the Dockerfile that will be used to build your
801
+ # container image.
802
+ # @return [String]
803
+ #
804
+ # @!attribute [rw] platform_override
805
+ # Specifies the operating system platform when you use a custom source
806
+ # image.
807
+ # @return [String]
808
+ #
809
+ # @!attribute [rw] image_os_version_override
810
+ # Specifies the operating system version for the source image.
811
+ # @return [String]
812
+ #
813
+ # @!attribute [rw] parent_image
814
+ # The source image for the container recipe.
815
+ # @return [String]
816
+ #
817
+ # @!attribute [rw] tags
818
+ # Tags that are attached to the container recipe.
819
+ # @return [Hash<String,String>]
820
+ #
821
+ # @!attribute [rw] working_directory
822
+ # The working directory for use during build and test workflows.
823
+ # @return [String]
824
+ #
825
+ # @!attribute [rw] target_repository
826
+ # The destination repository for the container image.
827
+ # @return [Types::TargetContainerRepository]
828
+ #
829
+ # @!attribute [rw] kms_key_id
830
+ # Identifies which KMS key is used to encrypt the container image.
831
+ # @return [String]
832
+ #
833
+ # @!attribute [rw] client_token
834
+ # The client token used to make this request idempotent.
835
+ #
836
+ # **A suitable default value is auto-generated.** You should normally
837
+ # not need to pass this option.
838
+ # @return [String]
839
+ #
840
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/CreateContainerRecipeRequest AWS API Documentation
841
+ #
842
+ class CreateContainerRecipeRequest < Struct.new(
843
+ :container_type,
844
+ :name,
845
+ :description,
846
+ :semantic_version,
847
+ :components,
848
+ :dockerfile_template_data,
849
+ :dockerfile_template_uri,
850
+ :platform_override,
851
+ :image_os_version_override,
852
+ :parent_image,
853
+ :tags,
854
+ :working_directory,
855
+ :target_repository,
856
+ :kms_key_id,
857
+ :client_token)
858
+ SENSITIVE = []
859
+ include Aws::Structure
860
+ end
861
+
862
+ # @!attribute [rw] request_id
863
+ # The request ID that uniquely identifies this request.
864
+ # @return [String]
865
+ #
866
+ # @!attribute [rw] client_token
867
+ # The client token used to make this request idempotent.
868
+ # @return [String]
869
+ #
870
+ # @!attribute [rw] container_recipe_arn
871
+ # Returns the Amazon Resource Name (ARN) of the container recipe that
872
+ # the request created.
873
+ # @return [String]
874
+ #
875
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/CreateContainerRecipeResponse AWS API Documentation
876
+ #
877
+ class CreateContainerRecipeResponse < Struct.new(
878
+ :request_id,
879
+ :client_token,
880
+ :container_recipe_arn)
881
+ SENSITIVE = []
882
+ include Aws::Structure
883
+ end
884
+
539
885
  # @note When making an API call, you may pass CreateDistributionConfigurationRequest
540
886
  # data as a hash:
541
887
  #
@@ -558,6 +904,14 @@ module Aws::Imagebuilder
558
904
  # user_groups: ["NonEmptyString"],
559
905
  # },
560
906
  # },
907
+ # container_distribution_configuration: {
908
+ # description: "NonEmptyString",
909
+ # container_tags: ["NonEmptyString"],
910
+ # target_repository: { # required
911
+ # service: "ECR", # required, accepts ECR
912
+ # repository_name: "NonEmptyString", # required
913
+ # },
914
+ # },
561
915
  # license_configuration_arns: ["LicenseConfigurationArn"],
562
916
  # },
563
917
  # ],
@@ -631,7 +985,8 @@ module Aws::Imagebuilder
631
985
  # {
632
986
  # name: "ResourceName", # required
633
987
  # description: "NonEmptyString",
634
- # image_recipe_arn: "ImageRecipeArn", # required
988
+ # image_recipe_arn: "ImageRecipeArn",
989
+ # container_recipe_arn: "ContainerRecipeArn",
635
990
  # infrastructure_configuration_arn: "InfrastructureConfigurationArn", # required
636
991
  # distribution_configuration_arn: "DistributionConfigurationArn",
637
992
  # image_tests_configuration: {
@@ -663,6 +1018,11 @@ module Aws::Imagebuilder
663
1018
  # to configure images created by this image pipeline.
664
1019
  # @return [String]
665
1020
  #
1021
+ # @!attribute [rw] container_recipe_arn
1022
+ # The Amazon Resource Name (ARN) of the container recipe that is used
1023
+ # to configure images created by this container pipeline.
1024
+ # @return [String]
1025
+ #
666
1026
  # @!attribute [rw] infrastructure_configuration_arn
667
1027
  # The Amazon Resource Name (ARN) of the infrastructure configuration
668
1028
  # that will be used to build images created by this image pipeline.
@@ -710,6 +1070,7 @@ module Aws::Imagebuilder
710
1070
  :name,
711
1071
  :description,
712
1072
  :image_recipe_arn,
1073
+ :container_recipe_arn,
713
1074
  :infrastructure_configuration_arn,
714
1075
  :distribution_configuration_arn,
715
1076
  :image_tests_configuration,
@@ -870,7 +1231,8 @@ module Aws::Imagebuilder
870
1231
  # data as a hash:
871
1232
  #
872
1233
  # {
873
- # image_recipe_arn: "ImageRecipeArn", # required
1234
+ # image_recipe_arn: "ImageRecipeArn",
1235
+ # container_recipe_arn: "ContainerRecipeArn",
874
1236
  # distribution_configuration_arn: "DistributionConfigurationArn",
875
1237
  # infrastructure_configuration_arn: "InfrastructureConfigurationArn", # required
876
1238
  # image_tests_configuration: {
@@ -889,6 +1251,11 @@ module Aws::Imagebuilder
889
1251
  # images are configured, tested, and assessed.
890
1252
  # @return [String]
891
1253
  #
1254
+ # @!attribute [rw] container_recipe_arn
1255
+ # The Amazon Resource Name (ARN) of the container recipe that defines
1256
+ # how images are configured and tested.
1257
+ # @return [String]
1258
+ #
892
1259
  # @!attribute [rw] distribution_configuration_arn
893
1260
  # The Amazon Resource Name (ARN) of the distribution configuration
894
1261
  # that defines and configures the outputs of your pipeline.
@@ -926,6 +1293,7 @@ module Aws::Imagebuilder
926
1293
  #
927
1294
  class CreateImageRequest < Struct.new(
928
1295
  :image_recipe_arn,
1296
+ :container_recipe_arn,
929
1297
  :distribution_configuration_arn,
930
1298
  :infrastructure_configuration_arn,
931
1299
  :image_tests_configuration,
@@ -1132,6 +1500,43 @@ module Aws::Imagebuilder
1132
1500
  include Aws::Structure
1133
1501
  end
1134
1502
 
1503
+ # @note When making an API call, you may pass DeleteContainerRecipeRequest
1504
+ # data as a hash:
1505
+ #
1506
+ # {
1507
+ # container_recipe_arn: "ContainerRecipeArn", # required
1508
+ # }
1509
+ #
1510
+ # @!attribute [rw] container_recipe_arn
1511
+ # The Amazon Resource Name (ARN) of the container recipe to delete.
1512
+ # @return [String]
1513
+ #
1514
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/DeleteContainerRecipeRequest AWS API Documentation
1515
+ #
1516
+ class DeleteContainerRecipeRequest < Struct.new(
1517
+ :container_recipe_arn)
1518
+ SENSITIVE = []
1519
+ include Aws::Structure
1520
+ end
1521
+
1522
+ # @!attribute [rw] request_id
1523
+ # The request ID that uniquely identifies this request.
1524
+ # @return [String]
1525
+ #
1526
+ # @!attribute [rw] container_recipe_arn
1527
+ # The Amazon Resource Name (ARN) of the container recipe that was
1528
+ # deleted.
1529
+ # @return [String]
1530
+ #
1531
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/DeleteContainerRecipeResponse AWS API Documentation
1532
+ #
1533
+ class DeleteContainerRecipeResponse < Struct.new(
1534
+ :request_id,
1535
+ :container_recipe_arn)
1536
+ SENSITIVE = []
1537
+ include Aws::Structure
1538
+ end
1539
+
1135
1540
  # @note When making an API call, you may pass DeleteDistributionConfigurationRequest
1136
1541
  # data as a hash:
1137
1542
  #
@@ -1337,6 +1742,14 @@ module Aws::Imagebuilder
1337
1742
  # user_groups: ["NonEmptyString"],
1338
1743
  # },
1339
1744
  # },
1745
+ # container_distribution_configuration: {
1746
+ # description: "NonEmptyString",
1747
+ # container_tags: ["NonEmptyString"],
1748
+ # target_repository: { # required
1749
+ # service: "ECR", # required, accepts ECR
1750
+ # repository_name: "NonEmptyString", # required
1751
+ # },
1752
+ # },
1340
1753
  # license_configuration_arns: ["LicenseConfigurationArn"],
1341
1754
  # }
1342
1755
  #
@@ -1349,6 +1762,11 @@ module Aws::Imagebuilder
1349
1762
  # tags).
1350
1763
  # @return [Types::AmiDistributionConfiguration]
1351
1764
  #
1765
+ # @!attribute [rw] container_distribution_configuration
1766
+ # Container distribution settings for encryption, licensing, and
1767
+ # sharing in a specific Region.
1768
+ # @return [Types::ContainerDistributionConfiguration]
1769
+ #
1352
1770
  # @!attribute [rw] license_configuration_arns
1353
1771
  # The License Manager Configuration to associate with the AMI in the
1354
1772
  # specified Region.
@@ -1359,6 +1777,7 @@ module Aws::Imagebuilder
1359
1777
  class Distribution < Struct.new(
1360
1778
  :region,
1361
1779
  :ami_distribution_configuration,
1780
+ :container_distribution_configuration,
1362
1781
  :license_configuration_arns)
1363
1782
  SENSITIVE = []
1364
1783
  include Aws::Structure
@@ -1439,6 +1858,10 @@ module Aws::Imagebuilder
1439
1858
  # The tags associated with the distribution configuration.
1440
1859
  # @return [Hash<String,String>]
1441
1860
  #
1861
+ # @!attribute [rw] regions
1862
+ # A list of Regions where the container image is distributed to.
1863
+ # @return [Array<String>]
1864
+ #
1442
1865
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/DistributionConfigurationSummary AWS API Documentation
1443
1866
  #
1444
1867
  class DistributionConfigurationSummary < Struct.new(
@@ -1447,7 +1870,8 @@ module Aws::Imagebuilder
1447
1870
  :description,
1448
1871
  :date_created,
1449
1872
  :date_updated,
1450
- :tags)
1873
+ :tags,
1874
+ :regions)
1451
1875
  SENSITIVE = []
1452
1876
  include Aws::Structure
1453
1877
  end
@@ -1626,6 +2050,79 @@ module Aws::Imagebuilder
1626
2050
  include Aws::Structure
1627
2051
  end
1628
2052
 
2053
+ # @note When making an API call, you may pass GetContainerRecipePolicyRequest
2054
+ # data as a hash:
2055
+ #
2056
+ # {
2057
+ # container_recipe_arn: "ContainerRecipeArn", # required
2058
+ # }
2059
+ #
2060
+ # @!attribute [rw] container_recipe_arn
2061
+ # The Amazon Resource Name (ARN) of the container recipe for the
2062
+ # policy being requested.
2063
+ # @return [String]
2064
+ #
2065
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetContainerRecipePolicyRequest AWS API Documentation
2066
+ #
2067
+ class GetContainerRecipePolicyRequest < Struct.new(
2068
+ :container_recipe_arn)
2069
+ SENSITIVE = []
2070
+ include Aws::Structure
2071
+ end
2072
+
2073
+ # @!attribute [rw] request_id
2074
+ # The request ID that uniquely identifies this request.
2075
+ # @return [String]
2076
+ #
2077
+ # @!attribute [rw] policy
2078
+ # The container recipe policy object that is returned.
2079
+ # @return [String]
2080
+ #
2081
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetContainerRecipePolicyResponse AWS API Documentation
2082
+ #
2083
+ class GetContainerRecipePolicyResponse < Struct.new(
2084
+ :request_id,
2085
+ :policy)
2086
+ SENSITIVE = []
2087
+ include Aws::Structure
2088
+ end
2089
+
2090
+ # @note When making an API call, you may pass GetContainerRecipeRequest
2091
+ # data as a hash:
2092
+ #
2093
+ # {
2094
+ # container_recipe_arn: "ContainerRecipeArn", # required
2095
+ # }
2096
+ #
2097
+ # @!attribute [rw] container_recipe_arn
2098
+ # The Amazon Resource Name (ARN) of the container recipe to retrieve.
2099
+ # @return [String]
2100
+ #
2101
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetContainerRecipeRequest AWS API Documentation
2102
+ #
2103
+ class GetContainerRecipeRequest < Struct.new(
2104
+ :container_recipe_arn)
2105
+ SENSITIVE = []
2106
+ include Aws::Structure
2107
+ end
2108
+
2109
+ # @!attribute [rw] request_id
2110
+ # The request ID that uniquely identifies this request.
2111
+ # @return [String]
2112
+ #
2113
+ # @!attribute [rw] container_recipe
2114
+ # The container recipe object that is returned.
2115
+ # @return [Types::ContainerRecipe]
2116
+ #
2117
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/GetContainerRecipeResponse AWS API Documentation
2118
+ #
2119
+ class GetContainerRecipeResponse < Struct.new(
2120
+ :request_id,
2121
+ :container_recipe)
2122
+ SENSITIVE = []
2123
+ include Aws::Structure
2124
+ end
2125
+
1629
2126
  # @note When making an API call, you may pass GetDistributionConfigurationRequest
1630
2127
  # data as a hash:
1631
2128
  #
@@ -1910,6 +2407,10 @@ module Aws::Imagebuilder
1910
2407
  # The Amazon Resource Name (ARN) of the image.
1911
2408
  # @return [String]
1912
2409
  #
2410
+ # @!attribute [rw] type
2411
+ # Specifies whether this is an AMI or container image.
2412
+ # @return [String]
2413
+ #
1913
2414
  # @!attribute [rw] name
1914
2415
  # The name of the image.
1915
2416
  # @return [String]
@@ -1942,6 +2443,10 @@ module Aws::Imagebuilder
1942
2443
  # The image recipe used when creating the image.
1943
2444
  # @return [Types::ImageRecipe]
1944
2445
  #
2446
+ # @!attribute [rw] container_recipe
2447
+ # The container recipe used to create the container image type.
2448
+ # @return [Types::ContainerRecipe]
2449
+ #
1945
2450
  # @!attribute [rw] source_pipeline_name
1946
2451
  # The name of the image pipeline that created this image.
1947
2452
  # @return [String]
@@ -1979,6 +2484,7 @@ module Aws::Imagebuilder
1979
2484
  #
1980
2485
  class Image < Struct.new(
1981
2486
  :arn,
2487
+ :type,
1982
2488
  :name,
1983
2489
  :version,
1984
2490
  :platform,
@@ -1986,6 +2492,7 @@ module Aws::Imagebuilder
1986
2492
  :os_version,
1987
2493
  :state,
1988
2494
  :image_recipe,
2495
+ :container_recipe,
1989
2496
  :source_pipeline_name,
1990
2497
  :source_pipeline_arn,
1991
2498
  :infrastructure_configuration,
@@ -2028,6 +2535,11 @@ module Aws::Imagebuilder
2028
2535
  # this image pipeline.
2029
2536
  # @return [String]
2030
2537
  #
2538
+ # @!attribute [rw] container_recipe_arn
2539
+ # The Amazon Resource Name (ARN) of the container recipe that is used
2540
+ # for this pipeline.
2541
+ # @return [String]
2542
+ #
2031
2543
  # @!attribute [rw] infrastructure_configuration_arn
2032
2544
  # The Amazon Resource Name (ARN) of the infrastructure configuration
2033
2545
  # associated with this image pipeline.
@@ -2079,6 +2591,7 @@ module Aws::Imagebuilder
2079
2591
  :platform,
2080
2592
  :enhanced_image_metadata_enabled,
2081
2593
  :image_recipe_arn,
2594
+ :container_recipe_arn,
2082
2595
  :infrastructure_configuration_arn,
2083
2596
  :distribution_configuration_arn,
2084
2597
  :image_tests_configuration,
@@ -2099,6 +2612,11 @@ module Aws::Imagebuilder
2099
2612
  # The Amazon Resource Name (ARN) of the image recipe.
2100
2613
  # @return [String]
2101
2614
  #
2615
+ # @!attribute [rw] type
2616
+ # Specifies which type of image is created by the recipe - an AMI or a
2617
+ # container image.
2618
+ # @return [String]
2619
+ #
2102
2620
  # @!attribute [rw] name
2103
2621
  # The name of the image recipe.
2104
2622
  # @return [String]
@@ -2148,6 +2666,7 @@ module Aws::Imagebuilder
2148
2666
  #
2149
2667
  class ImageRecipe < Struct.new(
2150
2668
  :arn,
2669
+ :type,
2151
2670
  :name,
2152
2671
  :description,
2153
2672
  :platform,
@@ -2236,6 +2755,10 @@ module Aws::Imagebuilder
2236
2755
  # The name of the image.
2237
2756
  # @return [String]
2238
2757
  #
2758
+ # @!attribute [rw] type
2759
+ # Specifies whether this is an AMI or container image.
2760
+ # @return [String]
2761
+ #
2239
2762
  # @!attribute [rw] version
2240
2763
  # The version of the image.
2241
2764
  # @return [String]
@@ -2274,6 +2797,7 @@ module Aws::Imagebuilder
2274
2797
  class ImageSummary < Struct.new(
2275
2798
  :arn,
2276
2799
  :name,
2800
+ :type,
2277
2801
  :version,
2278
2802
  :platform,
2279
2803
  :os_version,
@@ -2323,6 +2847,10 @@ module Aws::Imagebuilder
2323
2847
  # The name of the image semantic version.
2324
2848
  # @return [String]
2325
2849
  #
2850
+ # @!attribute [rw] type
2851
+ # Specifies whether this is an AMI or container image.
2852
+ # @return [String]
2853
+ #
2326
2854
  # @!attribute [rw] version
2327
2855
  # The semantic version of the image semantic version.
2328
2856
  # @return [String]
@@ -2349,6 +2877,7 @@ module Aws::Imagebuilder
2349
2877
  class ImageVersion < Struct.new(
2350
2878
  :arn,
2351
2879
  :name,
2880
+ :type,
2352
2881
  :version,
2353
2882
  :platform,
2354
2883
  :os_version,
@@ -2846,6 +3375,7 @@ module Aws::Imagebuilder
2846
3375
  # values: ["FilterValue"],
2847
3376
  # },
2848
3377
  # ],
3378
+ # by_name: false,
2849
3379
  # max_results: 1,
2850
3380
  # next_token: "PaginationToken",
2851
3381
  # }
@@ -2862,6 +3392,11 @@ module Aws::Imagebuilder
2862
3392
  # The filters.
2863
3393
  # @return [Array<Types::Filter>]
2864
3394
  #
3395
+ # @!attribute [rw] by_name
3396
+ # Returns the list of component build versions for the specified
3397
+ # semantic version.
3398
+ # @return [Boolean]
3399
+ #
2865
3400
  # @!attribute [rw] max_results
2866
3401
  # The maximum items to return in a request.
2867
3402
  # @return [Integer]
@@ -2876,6 +3411,7 @@ module Aws::Imagebuilder
2876
3411
  class ListComponentsRequest < Struct.new(
2877
3412
  :owner,
2878
3413
  :filters,
3414
+ :by_name,
2879
3415
  :max_results,
2880
3416
  :next_token)
2881
3417
  SENSITIVE = []
@@ -2907,6 +3443,78 @@ module Aws::Imagebuilder
2907
3443
  include Aws::Structure
2908
3444
  end
2909
3445
 
3446
+ # @note When making an API call, you may pass ListContainerRecipesRequest
3447
+ # data as a hash:
3448
+ #
3449
+ # {
3450
+ # owner: "Self", # accepts Self, Shared, Amazon
3451
+ # filters: [
3452
+ # {
3453
+ # name: "FilterName",
3454
+ # values: ["FilterValue"],
3455
+ # },
3456
+ # ],
3457
+ # max_results: 1,
3458
+ # next_token: "NonEmptyString",
3459
+ # }
3460
+ #
3461
+ # @!attribute [rw] owner
3462
+ # Returns container recipes belonging to the specified owner, that
3463
+ # have been shared with you. You can omit this field to return
3464
+ # container recipes belonging to your account.
3465
+ # @return [String]
3466
+ #
3467
+ # @!attribute [rw] filters
3468
+ # Request filters that are used to narrow the list of container images
3469
+ # that are returned.
3470
+ # @return [Array<Types::Filter>]
3471
+ #
3472
+ # @!attribute [rw] max_results
3473
+ # The maximum number of results to return in the list.
3474
+ # @return [Integer]
3475
+ #
3476
+ # @!attribute [rw] next_token
3477
+ # Provides a token for pagination, which determines where to begin the
3478
+ # next set of results when the current set reaches the maximum for one
3479
+ # request.
3480
+ # @return [String]
3481
+ #
3482
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListContainerRecipesRequest AWS API Documentation
3483
+ #
3484
+ class ListContainerRecipesRequest < Struct.new(
3485
+ :owner,
3486
+ :filters,
3487
+ :max_results,
3488
+ :next_token)
3489
+ SENSITIVE = []
3490
+ include Aws::Structure
3491
+ end
3492
+
3493
+ # @!attribute [rw] request_id
3494
+ # The request ID that uniquely identifies this request.
3495
+ # @return [String]
3496
+ #
3497
+ # @!attribute [rw] container_recipe_summary_list
3498
+ # The list of container recipes returned for the request.
3499
+ # @return [Array<Types::ContainerRecipeSummary>]
3500
+ #
3501
+ # @!attribute [rw] next_token
3502
+ # The next token field is used for paginated responses. When this is
3503
+ # not empty, there are additional container recipes that the service
3504
+ # has not included in this response. Use this token with the next
3505
+ # request to retrieve additional list items.
3506
+ # @return [String]
3507
+ #
3508
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListContainerRecipesResponse AWS API Documentation
3509
+ #
3510
+ class ListContainerRecipesResponse < Struct.new(
3511
+ :request_id,
3512
+ :container_recipe_summary_list,
3513
+ :next_token)
3514
+ SENSITIVE = []
3515
+ include Aws::Structure
3516
+ end
3517
+
2910
3518
  # @note When making an API call, you may pass ListDistributionConfigurationsRequest
2911
3519
  # data as a hash:
2912
3520
  #
@@ -3256,8 +3864,10 @@ module Aws::Imagebuilder
3256
3864
  # values: ["FilterValue"],
3257
3865
  # },
3258
3866
  # ],
3867
+ # by_name: false,
3259
3868
  # max_results: 1,
3260
3869
  # next_token: "PaginationToken",
3870
+ # include_deprecated: false,
3261
3871
  # }
3262
3872
  #
3263
3873
  # @!attribute [rw] owner
@@ -3272,6 +3882,10 @@ module Aws::Imagebuilder
3272
3882
  # The filters.
3273
3883
  # @return [Array<Types::Filter>]
3274
3884
  #
3885
+ # @!attribute [rw] by_name
3886
+ # Requests a list of images with a specific recipe name.
3887
+ # @return [Boolean]
3888
+ #
3275
3889
  # @!attribute [rw] max_results
3276
3890
  # The maximum items to return in a request.
3277
3891
  # @return [Integer]
@@ -3281,13 +3895,19 @@ module Aws::Imagebuilder
3281
3895
  # from a previously truncated response.
3282
3896
  # @return [String]
3283
3897
  #
3898
+ # @!attribute [rw] include_deprecated
3899
+ # Includes deprecated images in the response list.
3900
+ # @return [Boolean]
3901
+ #
3284
3902
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/ListImagesRequest AWS API Documentation
3285
3903
  #
3286
3904
  class ListImagesRequest < Struct.new(
3287
3905
  :owner,
3288
3906
  :filters,
3907
+ :by_name,
3289
3908
  :max_results,
3290
- :next_token)
3909
+ :next_token,
3910
+ :include_deprecated)
3291
3911
  SENSITIVE = []
3292
3912
  include Aws::Structure
3293
3913
  end
@@ -3441,10 +4061,16 @@ module Aws::Imagebuilder
3441
4061
  # The EC2 AMIs created by this image.
3442
4062
  # @return [Array<Types::Ami>]
3443
4063
  #
4064
+ # @!attribute [rw] containers
4065
+ # Container images that the pipeline has generated and stored in the
4066
+ # output repository.
4067
+ # @return [Array<Types::Container>]
4068
+ #
3444
4069
  # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/OutputResources AWS API Documentation
3445
4070
  #
3446
4071
  class OutputResources < Struct.new(
3447
- :amis)
4072
+ :amis,
4073
+ :containers)
3448
4074
  SENSITIVE = []
3449
4075
  include Aws::Structure
3450
4076
  end
@@ -3493,6 +4119,50 @@ module Aws::Imagebuilder
3493
4119
  include Aws::Structure
3494
4120
  end
3495
4121
 
4122
+ # @note When making an API call, you may pass PutContainerRecipePolicyRequest
4123
+ # data as a hash:
4124
+ #
4125
+ # {
4126
+ # container_recipe_arn: "ContainerRecipeArn", # required
4127
+ # policy: "ResourcePolicyDocument", # required
4128
+ # }
4129
+ #
4130
+ # @!attribute [rw] container_recipe_arn
4131
+ # The Amazon Resource Name (ARN) of the container recipe that this
4132
+ # policy should be applied to.
4133
+ # @return [String]
4134
+ #
4135
+ # @!attribute [rw] policy
4136
+ # The policy to apply to the container recipe.
4137
+ # @return [String]
4138
+ #
4139
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/PutContainerRecipePolicyRequest AWS API Documentation
4140
+ #
4141
+ class PutContainerRecipePolicyRequest < Struct.new(
4142
+ :container_recipe_arn,
4143
+ :policy)
4144
+ SENSITIVE = []
4145
+ include Aws::Structure
4146
+ end
4147
+
4148
+ # @!attribute [rw] request_id
4149
+ # The request ID that uniquely identifies this request.
4150
+ # @return [String]
4151
+ #
4152
+ # @!attribute [rw] container_recipe_arn
4153
+ # The Amazon Resource Name (ARN) of the container recipe that this
4154
+ # policy was applied to.
4155
+ # @return [String]
4156
+ #
4157
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/PutContainerRecipePolicyResponse AWS API Documentation
4158
+ #
4159
+ class PutContainerRecipePolicyResponse < Struct.new(
4160
+ :request_id,
4161
+ :container_recipe_arn)
4162
+ SENSITIVE = []
4163
+ include Aws::Structure
4164
+ end
4165
+
3496
4166
  # @note When making an API call, you may pass PutImagePolicyRequest
3497
4167
  # data as a hash:
3498
4168
  #
@@ -3842,6 +4512,34 @@ module Aws::Imagebuilder
3842
4512
  #
3843
4513
  class TagResourceResponse < Aws::EmptyStructure; end
3844
4514
 
4515
+ # The container repository where the output container image is stored.
4516
+ #
4517
+ # @note When making an API call, you may pass TargetContainerRepository
4518
+ # data as a hash:
4519
+ #
4520
+ # {
4521
+ # service: "ECR", # required, accepts ECR
4522
+ # repository_name: "NonEmptyString", # required
4523
+ # }
4524
+ #
4525
+ # @!attribute [rw] service
4526
+ # Specifies the service in which this image was registered.
4527
+ # @return [String]
4528
+ #
4529
+ # @!attribute [rw] repository_name
4530
+ # The name of the container repository where the output container
4531
+ # image is stored. This name is prefixed by the repository location.
4532
+ # @return [String]
4533
+ #
4534
+ # @see http://docs.aws.amazon.com/goto/WebAPI/imagebuilder-2019-12-02/TargetContainerRepository AWS API Documentation
4535
+ #
4536
+ class TargetContainerRepository < Struct.new(
4537
+ :service,
4538
+ :repository_name)
4539
+ SENSITIVE = []
4540
+ include Aws::Structure
4541
+ end
4542
+
3845
4543
  # @note When making an API call, you may pass UntagResourceRequest
3846
4544
  # data as a hash:
3847
4545
  #
@@ -3894,6 +4592,14 @@ module Aws::Imagebuilder
3894
4592
  # user_groups: ["NonEmptyString"],
3895
4593
  # },
3896
4594
  # },
4595
+ # container_distribution_configuration: {
4596
+ # description: "NonEmptyString",
4597
+ # container_tags: ["NonEmptyString"],
4598
+ # target_repository: { # required
4599
+ # service: "ECR", # required, accepts ECR
4600
+ # repository_name: "NonEmptyString", # required
4601
+ # },
4602
+ # },
3897
4603
  # license_configuration_arns: ["LicenseConfigurationArn"],
3898
4604
  # },
3899
4605
  # ],
@@ -3960,7 +4666,8 @@ module Aws::Imagebuilder
3960
4666
  # {
3961
4667
  # image_pipeline_arn: "ImagePipelineArn", # required
3962
4668
  # description: "NonEmptyString",
3963
- # image_recipe_arn: "ImageRecipeArn", # required
4669
+ # image_recipe_arn: "ImageRecipeArn",
4670
+ # container_recipe_arn: "ContainerRecipeArn",
3964
4671
  # infrastructure_configuration_arn: "InfrastructureConfigurationArn", # required
3965
4672
  # distribution_configuration_arn: "DistributionConfigurationArn",
3966
4673
  # image_tests_configuration: {
@@ -3990,6 +4697,10 @@ module Aws::Imagebuilder
3990
4697
  # to configure images updated by this image pipeline.
3991
4698
  # @return [String]
3992
4699
  #
4700
+ # @!attribute [rw] container_recipe_arn
4701
+ # The Amazon Resource Name (ARN) of the container pipeline to update.
4702
+ # @return [String]
4703
+ #
3993
4704
  # @!attribute [rw] infrastructure_configuration_arn
3994
4705
  # The Amazon Resource Name (ARN) of the infrastructure configuration
3995
4706
  # that will be used to build images updated by this image pipeline.
@@ -4033,6 +4744,7 @@ module Aws::Imagebuilder
4033
4744
  :image_pipeline_arn,
4034
4745
  :description,
4035
4746
  :image_recipe_arn,
4747
+ :container_recipe_arn,
4036
4748
  :infrastructure_configuration_arn,
4037
4749
  :distribution_configuration_arn,
4038
4750
  :image_tests_configuration,