aws-sdk-ecr 1.32.0 → 1.37.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 20ac92b1cd6d7111a8a09fc5fa7ecad85a024f9a51579f924a66c2fad2c9b4d3
4
- data.tar.gz: c9b0ea66ceb5e23806de2bf0f75e45af1fdeb5c68a1fe6a2eeb801d262c09192
3
+ metadata.gz: f373d01d02bfc59d132f3d5fbb927a57da95d137134a9b1e5ec09cfce464aead
4
+ data.tar.gz: 0cdbd6db918bc19575a6fda3d25635a2a21ccc3390e63f44b74ad00a4d7debf9
5
5
  SHA512:
6
- metadata.gz: 4f59fad5102a68eb17d28765f897e0b48854a8a5553d1195007b0842975a513d5f19157c793285bfec6a116f278508c5e9a79307efaee003b371e4bc71fbde00
7
- data.tar.gz: b5a8925fffb271d4b9cb44efecc6140e60b48ce26c0b2093fbf28e355104f7e657856a137a95d8cd0035761d8c3098375637d706c5c80c8db2d073d7fd3b7cfe
6
+ metadata.gz: d3a29384b484da74d30ef5d46e934761ab3e762eed19fbd44a59d9a7008d746bcb1c7a8c7a041a1e0b8e25b7f7534297dc985e11d8aeccf2ef98cd0c2d419985
7
+ data.tar.gz: 9b010327421cd3bbdda3c3305bd9be1d278cdc1ed59431c4a88ee6619ef6b939983427eaf666a77e2677e00b87ce2b6c84282d51e22192b7ecb9c4109eaa2bac
@@ -45,9 +45,9 @@ require_relative 'aws-sdk-ecr/customizations'
45
45
  #
46
46
  # See {Errors} for more information.
47
47
  #
48
- # @service
48
+ # @!group service
49
49
  module Aws::ECR
50
50
 
51
- GEM_VERSION = '1.32.0'
51
+ GEM_VERSION = '1.37.0'
52
52
 
53
53
  end
@@ -85,13 +85,28 @@ module Aws::ECR
85
85
  # * `Aws::Credentials` - Used for configuring static, non-refreshing
86
86
  # credentials.
87
87
  #
88
+ # * `Aws::SharedCredentials` - Used for loading static credentials from a
89
+ # shared file, such as `~/.aws/config`.
90
+ #
91
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
92
+ #
93
+ # * `Aws::AssumeRoleWebIdentityCredentials` - Used when you need to
94
+ # assume a role after providing credentials via the web.
95
+ #
96
+ # * `Aws::SSOCredentials` - Used for loading credentials from AWS SSO using an
97
+ # access token generated from `aws login`.
98
+ #
99
+ # * `Aws::ProcessCredentials` - Used for loading credentials from a
100
+ # process that outputs to stdout.
101
+ #
88
102
  # * `Aws::InstanceProfileCredentials` - Used for loading credentials
89
103
  # from an EC2 IMDS on an EC2 instance.
90
104
  #
91
- # * `Aws::SharedCredentials` - Used for loading credentials from a
92
- # shared file, such as `~/.aws/config`.
105
+ # * `Aws::ECSCredentials` - Used for loading credentials from
106
+ # instances running in ECS.
93
107
  #
94
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
108
+ # * `Aws::CognitoIdentityCredentials` - Used for loading credentials
109
+ # from the Cognito Identity service.
95
110
  #
96
111
  # When `:credentials` are not configured directly, the following
97
112
  # locations will be searched for credentials:
@@ -101,10 +116,10 @@ module Aws::ECR
101
116
  # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
102
117
  # * `~/.aws/credentials`
103
118
  # * `~/.aws/config`
104
- # * EC2 IMDS instance profile - When used by default, the timeouts are
105
- # very aggressive. Construct and pass an instance of
106
- # `Aws::InstanceProfileCredentails` to enable retries and extended
107
- # timeouts.
119
+ # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
+ # are very aggressive. Construct and pass an instance of
121
+ # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
+ # enable retries and extended timeouts.
108
123
  #
109
124
  # @option options [required, String] :region
110
125
  # The AWS region to connect to. The configured `:region` is
@@ -456,7 +471,7 @@ module Aws::ECR
456
471
  # resp.failures #=> Array
457
472
  # resp.failures[0].image_id.image_digest #=> String
458
473
  # resp.failures[0].image_id.image_tag #=> String
459
- # resp.failures[0].failure_code #=> String, one of "InvalidImageDigest", "InvalidImageTag", "ImageTagDoesNotMatchDigest", "ImageNotFound", "MissingDigestAndTag", "ImageReferencedByManifestList"
474
+ # resp.failures[0].failure_code #=> String, one of "InvalidImageDigest", "InvalidImageTag", "ImageTagDoesNotMatchDigest", "ImageNotFound", "MissingDigestAndTag", "ImageReferencedByManifestList", "KmsError"
460
475
  # resp.failures[0].failure_reason #=> String
461
476
  #
462
477
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/BatchDeleteImage AWS API Documentation
@@ -557,7 +572,7 @@ module Aws::ECR
557
572
  # resp.failures #=> Array
558
573
  # resp.failures[0].image_id.image_digest #=> String
559
574
  # resp.failures[0].image_id.image_tag #=> String
560
- # resp.failures[0].failure_code #=> String, one of "InvalidImageDigest", "InvalidImageTag", "ImageTagDoesNotMatchDigest", "ImageNotFound", "MissingDigestAndTag", "ImageReferencedByManifestList"
575
+ # resp.failures[0].failure_code #=> String, one of "InvalidImageDigest", "InvalidImageTag", "ImageTagDoesNotMatchDigest", "ImageNotFound", "MissingDigestAndTag", "ImageReferencedByManifestList", "KmsError"
561
576
  # resp.failures[0].failure_reason #=> String
562
577
  #
563
578
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/BatchGetImage AWS API Documentation
@@ -659,9 +674,13 @@ module Aws::ECR
659
674
  # them from being overwritten.
660
675
  #
661
676
  # @option params [Types::ImageScanningConfiguration] :image_scanning_configuration
662
- # The image scanning configuration for the repository. This setting
663
- # determines whether images are scanned for known vulnerabilities after
664
- # being pushed to the repository.
677
+ # The image scanning configuration for the repository. This determines
678
+ # whether images are scanned for known vulnerabilities after being
679
+ # pushed to the repository.
680
+ #
681
+ # @option params [Types::EncryptionConfiguration] :encryption_configuration
682
+ # The encryption configuration for the repository. This determines how
683
+ # the contents of your repository are encrypted at rest.
665
684
  #
666
685
  # @return [Types::CreateRepositoryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
667
686
  #
@@ -700,6 +719,10 @@ module Aws::ECR
700
719
  # image_scanning_configuration: {
701
720
  # scan_on_push: false,
702
721
  # },
722
+ # encryption_configuration: {
723
+ # encryption_type: "AES256", # required, accepts AES256, KMS
724
+ # kms_key: "KmsKey",
725
+ # },
703
726
  # })
704
727
  #
705
728
  # @example Response structure
@@ -711,6 +734,8 @@ module Aws::ECR
711
734
  # resp.repository.created_at #=> Time
712
735
  # resp.repository.image_tag_mutability #=> String, one of "MUTABLE", "IMMUTABLE"
713
736
  # resp.repository.image_scanning_configuration.scan_on_push #=> Boolean
737
+ # resp.repository.encryption_configuration.encryption_type #=> String, one of "AES256", "KMS"
738
+ # resp.repository.encryption_configuration.kms_key #=> String
714
739
  #
715
740
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/CreateRepository AWS API Documentation
716
741
  #
@@ -817,6 +842,8 @@ module Aws::ECR
817
842
  # resp.repository.created_at #=> Time
818
843
  # resp.repository.image_tag_mutability #=> String, one of "MUTABLE", "IMMUTABLE"
819
844
  # resp.repository.image_scanning_configuration.scan_on_push #=> Boolean
845
+ # resp.repository.encryption_configuration.encryption_type #=> String, one of "AES256", "KMS"
846
+ # resp.repository.encryption_configuration.kms_key #=> String
820
847
  #
821
848
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DeleteRepository AWS API Documentation
822
849
  #
@@ -1059,6 +1086,8 @@ module Aws::ECR
1059
1086
  # resp.image_details[0].image_scan_findings_summary.vulnerability_source_updated_at #=> Time
1060
1087
  # resp.image_details[0].image_scan_findings_summary.finding_severity_counts #=> Hash
1061
1088
  # resp.image_details[0].image_scan_findings_summary.finding_severity_counts["FindingSeverity"] #=> Integer
1089
+ # resp.image_details[0].image_manifest_media_type #=> String
1090
+ # resp.image_details[0].artifact_media_type #=> String
1062
1091
  # resp.next_token #=> String
1063
1092
  #
1064
1093
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DescribeImages AWS API Documentation
@@ -1159,6 +1188,8 @@ module Aws::ECR
1159
1188
  # resp.repositories[0].created_at #=> Time
1160
1189
  # resp.repositories[0].image_tag_mutability #=> String, one of "MUTABLE", "IMMUTABLE"
1161
1190
  # resp.repositories[0].image_scanning_configuration.scan_on_push #=> Boolean
1191
+ # resp.repositories[0].encryption_configuration.encryption_type #=> String, one of "AES256", "KMS"
1192
+ # resp.repositories[0].encryption_configuration.kms_key #=> String
1162
1193
  # resp.next_token #=> String
1163
1194
  #
1164
1195
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DescribeRepositories AWS API Documentation
@@ -1690,7 +1721,11 @@ module Aws::ECR
1690
1721
  #
1691
1722
  # @option params [String] :image_tag
1692
1723
  # The tag to associate with the image. This parameter is required for
1693
- # images that use the Docker Image Manifest V2 Schema 2 or OCI formats.
1724
+ # images that use the Docker Image Manifest V2 Schema 2 or Open
1725
+ # Container Initiative (OCI) formats.
1726
+ #
1727
+ # @option params [String] :image_digest
1728
+ # The image digest of the image manifest corresponding to the image.
1694
1729
  #
1695
1730
  # @return [Types::PutImageResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1696
1731
  #
@@ -1704,6 +1739,7 @@ module Aws::ECR
1704
1739
  # image_manifest: "ImageManifest", # required
1705
1740
  # image_manifest_media_type: "MediaType",
1706
1741
  # image_tag: "ImageTag",
1742
+ # image_digest: "ImageDigest",
1707
1743
  # })
1708
1744
  #
1709
1745
  # @example Response structure
@@ -2133,7 +2169,7 @@ module Aws::ECR
2133
2169
  # The position of the last byte of the layer part within the overall
2134
2170
  # image layer.
2135
2171
  #
2136
- # @option params [required, String, IO] :layer_part_blob
2172
+ # @option params [required, String, StringIO, File] :layer_part_blob
2137
2173
  # The base64-encoded layer part payload.
2138
2174
  #
2139
2175
  # @return [Types::UploadLayerPartResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
@@ -2183,7 +2219,7 @@ module Aws::ECR
2183
2219
  params: params,
2184
2220
  config: config)
2185
2221
  context[:gem_name] = 'aws-sdk-ecr'
2186
- context[:gem_version] = '1.32.0'
2222
+ context[:gem_version] = '1.37.0'
2187
2223
  Seahorse::Client::Request.new(handlers, context)
2188
2224
  end
2189
2225
 
@@ -48,6 +48,8 @@ module Aws::ECR
48
48
  DescribeRepositoriesRequest = Shapes::StructureShape.new(name: 'DescribeRepositoriesRequest')
49
49
  DescribeRepositoriesResponse = Shapes::StructureShape.new(name: 'DescribeRepositoriesResponse')
50
50
  EmptyUploadException = Shapes::StructureShape.new(name: 'EmptyUploadException')
51
+ EncryptionConfiguration = Shapes::StructureShape.new(name: 'EncryptionConfiguration')
52
+ EncryptionType = Shapes::StringShape.new(name: 'EncryptionType')
51
53
  EvaluationTimestamp = Shapes::TimestampShape.new(name: 'EvaluationTimestamp')
52
54
  ExceptionMessage = Shapes::StringShape.new(name: 'ExceptionMessage')
53
55
  ExpirationTimestamp = Shapes::TimestampShape.new(name: 'ExpirationTimestamp')
@@ -74,6 +76,7 @@ module Aws::ECR
74
76
  ImageDetail = Shapes::StructureShape.new(name: 'ImageDetail')
75
77
  ImageDetailList = Shapes::ListShape.new(name: 'ImageDetailList')
76
78
  ImageDigest = Shapes::StringShape.new(name: 'ImageDigest')
79
+ ImageDigestDoesNotMatchException = Shapes::StructureShape.new(name: 'ImageDigestDoesNotMatchException')
77
80
  ImageFailure = Shapes::StructureShape.new(name: 'ImageFailure')
78
81
  ImageFailureCode = Shapes::StringShape.new(name: 'ImageFailureCode')
79
82
  ImageFailureList = Shapes::ListShape.new(name: 'ImageFailureList')
@@ -100,6 +103,9 @@ module Aws::ECR
100
103
  InvalidLayerPartException = Shapes::StructureShape.new(name: 'InvalidLayerPartException')
101
104
  InvalidParameterException = Shapes::StructureShape.new(name: 'InvalidParameterException')
102
105
  InvalidTagParameterException = Shapes::StructureShape.new(name: 'InvalidTagParameterException')
106
+ KmsError = Shapes::StringShape.new(name: 'KmsError')
107
+ KmsException = Shapes::StructureShape.new(name: 'KmsException')
108
+ KmsKey = Shapes::StringShape.new(name: 'KmsKey')
103
109
  Layer = Shapes::StructureShape.new(name: 'Layer')
104
110
  LayerAlreadyExistsException = Shapes::StructureShape.new(name: 'LayerAlreadyExistsException')
105
111
  LayerAvailability = Shapes::StringShape.new(name: 'LayerAvailability')
@@ -250,6 +256,7 @@ module Aws::ECR
250
256
  CreateRepositoryRequest.add_member(:tags, Shapes::ShapeRef.new(shape: TagList, location_name: "tags"))
251
257
  CreateRepositoryRequest.add_member(:image_tag_mutability, Shapes::ShapeRef.new(shape: ImageTagMutability, location_name: "imageTagMutability"))
252
258
  CreateRepositoryRequest.add_member(:image_scanning_configuration, Shapes::ShapeRef.new(shape: ImageScanningConfiguration, location_name: "imageScanningConfiguration"))
259
+ CreateRepositoryRequest.add_member(:encryption_configuration, Shapes::ShapeRef.new(shape: EncryptionConfiguration, location_name: "encryptionConfiguration"))
253
260
  CreateRepositoryRequest.struct_class = Types::CreateRepositoryRequest
254
261
 
255
262
  CreateRepositoryResponse.add_member(:repository, Shapes::ShapeRef.new(shape: Repository, location_name: "repository"))
@@ -325,6 +332,10 @@ module Aws::ECR
325
332
  EmptyUploadException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "message"))
326
333
  EmptyUploadException.struct_class = Types::EmptyUploadException
327
334
 
335
+ EncryptionConfiguration.add_member(:encryption_type, Shapes::ShapeRef.new(shape: EncryptionType, required: true, location_name: "encryptionType"))
336
+ EncryptionConfiguration.add_member(:kms_key, Shapes::ShapeRef.new(shape: KmsKey, location_name: "kmsKey"))
337
+ EncryptionConfiguration.struct_class = Types::EncryptionConfiguration
338
+
328
339
  FindingSeverityCounts.key = Shapes::ShapeRef.new(shape: FindingSeverity)
329
340
  FindingSeverityCounts.value = Shapes::ShapeRef.new(shape: SeverityCount)
330
341
 
@@ -399,10 +410,15 @@ module Aws::ECR
399
410
  ImageDetail.add_member(:image_pushed_at, Shapes::ShapeRef.new(shape: PushTimestamp, location_name: "imagePushedAt"))
400
411
  ImageDetail.add_member(:image_scan_status, Shapes::ShapeRef.new(shape: ImageScanStatus, location_name: "imageScanStatus"))
401
412
  ImageDetail.add_member(:image_scan_findings_summary, Shapes::ShapeRef.new(shape: ImageScanFindingsSummary, location_name: "imageScanFindingsSummary"))
413
+ ImageDetail.add_member(:image_manifest_media_type, Shapes::ShapeRef.new(shape: MediaType, location_name: "imageManifestMediaType"))
414
+ ImageDetail.add_member(:artifact_media_type, Shapes::ShapeRef.new(shape: MediaType, location_name: "artifactMediaType"))
402
415
  ImageDetail.struct_class = Types::ImageDetail
403
416
 
404
417
  ImageDetailList.member = Shapes::ShapeRef.new(shape: ImageDetail)
405
418
 
419
+ ImageDigestDoesNotMatchException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "message"))
420
+ ImageDigestDoesNotMatchException.struct_class = Types::ImageDigestDoesNotMatchException
421
+
406
422
  ImageFailure.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageIdentifier, location_name: "imageId"))
407
423
  ImageFailure.add_member(:failure_code, Shapes::ShapeRef.new(shape: ImageFailureCode, location_name: "failureCode"))
408
424
  ImageFailure.add_member(:failure_reason, Shapes::ShapeRef.new(shape: ImageFailureReason, location_name: "failureReason"))
@@ -477,6 +493,10 @@ module Aws::ECR
477
493
  InvalidTagParameterException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "message"))
478
494
  InvalidTagParameterException.struct_class = Types::InvalidTagParameterException
479
495
 
496
+ KmsException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "message"))
497
+ KmsException.add_member(:kms_error, Shapes::ShapeRef.new(shape: KmsError, location_name: "kmsError"))
498
+ KmsException.struct_class = Types::KmsException
499
+
480
500
  Layer.add_member(:layer_digest, Shapes::ShapeRef.new(shape: LayerDigest, location_name: "layerDigest"))
481
501
  Layer.add_member(:layer_availability, Shapes::ShapeRef.new(shape: LayerAvailability, location_name: "layerAvailability"))
482
502
  Layer.add_member(:layer_size, Shapes::ShapeRef.new(shape: LayerSizeInBytes, location_name: "layerSize"))
@@ -563,6 +583,7 @@ module Aws::ECR
563
583
  PutImageRequest.add_member(:image_manifest, Shapes::ShapeRef.new(shape: ImageManifest, required: true, location_name: "imageManifest"))
564
584
  PutImageRequest.add_member(:image_manifest_media_type, Shapes::ShapeRef.new(shape: MediaType, location_name: "imageManifestMediaType"))
565
585
  PutImageRequest.add_member(:image_tag, Shapes::ShapeRef.new(shape: ImageTag, location_name: "imageTag"))
586
+ PutImageRequest.add_member(:image_digest, Shapes::ShapeRef.new(shape: ImageDigest, location_name: "imageDigest"))
566
587
  PutImageRequest.struct_class = Types::PutImageRequest
567
588
 
568
589
  PutImageResponse.add_member(:image, Shapes::ShapeRef.new(shape: Image, location_name: "image"))
@@ -608,6 +629,7 @@ module Aws::ECR
608
629
  Repository.add_member(:created_at, Shapes::ShapeRef.new(shape: CreationTimestamp, location_name: "createdAt"))
609
630
  Repository.add_member(:image_tag_mutability, Shapes::ShapeRef.new(shape: ImageTagMutability, location_name: "imageTagMutability"))
610
631
  Repository.add_member(:image_scanning_configuration, Shapes::ShapeRef.new(shape: ImageScanningConfiguration, location_name: "imageScanningConfiguration"))
632
+ Repository.add_member(:encryption_configuration, Shapes::ShapeRef.new(shape: EncryptionConfiguration, location_name: "encryptionConfiguration"))
611
633
  Repository.struct_class = Types::Repository
612
634
 
613
635
  RepositoryAlreadyExistsException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "message"))
@@ -775,6 +797,7 @@ module Aws::ECR
775
797
  o.errors << Shapes::ShapeRef.new(shape: LayerPartTooSmallException)
776
798
  o.errors << Shapes::ShapeRef.new(shape: LayerAlreadyExistsException)
777
799
  o.errors << Shapes::ShapeRef.new(shape: EmptyUploadException)
800
+ o.errors << Shapes::ShapeRef.new(shape: KmsException)
778
801
  end)
779
802
 
780
803
  api.add_operation(:create_repository, Seahorse::Model::Operation.new.tap do |o|
@@ -789,6 +812,7 @@ module Aws::ECR
789
812
  o.errors << Shapes::ShapeRef.new(shape: TooManyTagsException)
790
813
  o.errors << Shapes::ShapeRef.new(shape: RepositoryAlreadyExistsException)
791
814
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
815
+ o.errors << Shapes::ShapeRef.new(shape: KmsException)
792
816
  end)
793
817
 
794
818
  api.add_operation(:delete_lifecycle_policy, Seahorse::Model::Operation.new.tap do |o|
@@ -813,6 +837,7 @@ module Aws::ECR
813
837
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
814
838
  o.errors << Shapes::ShapeRef.new(shape: RepositoryNotFoundException)
815
839
  o.errors << Shapes::ShapeRef.new(shape: RepositoryNotEmptyException)
840
+ o.errors << Shapes::ShapeRef.new(shape: KmsException)
816
841
  end)
817
842
 
818
843
  api.add_operation(:delete_repository_policy, Seahorse::Model::Operation.new.tap do |o|
@@ -955,6 +980,7 @@ module Aws::ECR
955
980
  o.errors << Shapes::ShapeRef.new(shape: ServerException)
956
981
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
957
982
  o.errors << Shapes::ShapeRef.new(shape: RepositoryNotFoundException)
983
+ o.errors << Shapes::ShapeRef.new(shape: KmsException)
958
984
  end)
959
985
 
960
986
  api.add_operation(:list_images, Seahorse::Model::Operation.new.tap do |o|
@@ -999,6 +1025,8 @@ module Aws::ECR
999
1025
  o.errors << Shapes::ShapeRef.new(shape: ReferencedImagesNotFoundException)
1000
1026
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1001
1027
  o.errors << Shapes::ShapeRef.new(shape: ImageTagAlreadyExistsException)
1028
+ o.errors << Shapes::ShapeRef.new(shape: ImageDigestDoesNotMatchException)
1029
+ o.errors << Shapes::ShapeRef.new(shape: KmsException)
1002
1030
  end)
1003
1031
 
1004
1032
  api.add_operation(:put_image_scanning_configuration, Seahorse::Model::Operation.new.tap do |o|
@@ -1110,6 +1138,7 @@ module Aws::ECR
1110
1138
  o.errors << Shapes::ShapeRef.new(shape: RepositoryNotFoundException)
1111
1139
  o.errors << Shapes::ShapeRef.new(shape: UploadNotFoundException)
1112
1140
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
1141
+ o.errors << Shapes::ShapeRef.new(shape: KmsException)
1113
1142
  end)
1114
1143
  end
1115
1144
 
@@ -29,12 +29,14 @@ module Aws::ECR
29
29
  # ## Error Classes
30
30
  # * {EmptyUploadException}
31
31
  # * {ImageAlreadyExistsException}
32
+ # * {ImageDigestDoesNotMatchException}
32
33
  # * {ImageNotFoundException}
33
34
  # * {ImageTagAlreadyExistsException}
34
35
  # * {InvalidLayerException}
35
36
  # * {InvalidLayerPartException}
36
37
  # * {InvalidParameterException}
37
38
  # * {InvalidTagParameterException}
39
+ # * {KmsException}
38
40
  # * {LayerAlreadyExistsException}
39
41
  # * {LayerInaccessibleException}
40
42
  # * {LayerPartTooSmallException}
@@ -90,6 +92,21 @@ module Aws::ECR
90
92
  end
91
93
  end
92
94
 
95
+ class ImageDigestDoesNotMatchException < ServiceError
96
+
97
+ # @param [Seahorse::Client::RequestContext] context
98
+ # @param [String] message
99
+ # @param [Aws::ECR::Types::ImageDigestDoesNotMatchException] data
100
+ def initialize(context, message, data = Aws::EmptyStructure.new)
101
+ super(context, message, data)
102
+ end
103
+
104
+ # @return [String]
105
+ def message
106
+ @message || @data[:message]
107
+ end
108
+ end
109
+
93
110
  class ImageNotFoundException < ServiceError
94
111
 
95
112
  # @param [Seahorse::Client::RequestContext] context
@@ -200,6 +217,26 @@ module Aws::ECR
200
217
  end
201
218
  end
202
219
 
220
+ class KmsException < ServiceError
221
+
222
+ # @param [Seahorse::Client::RequestContext] context
223
+ # @param [String] message
224
+ # @param [Aws::ECR::Types::KmsException] data
225
+ def initialize(context, message, data = Aws::EmptyStructure.new)
226
+ super(context, message, data)
227
+ end
228
+
229
+ # @return [String]
230
+ def message
231
+ @message || @data[:message]
232
+ end
233
+
234
+ # @return [String]
235
+ def kms_error
236
+ @data[:kms_error]
237
+ end
238
+ end
239
+
203
240
  class LayerAlreadyExistsException < ServiceError
204
241
 
205
242
  # @param [Seahorse::Client::RequestContext] context
@@ -322,6 +322,10 @@ module Aws::ECR
322
322
  # image_scanning_configuration: {
323
323
  # scan_on_push: false,
324
324
  # },
325
+ # encryption_configuration: {
326
+ # encryption_type: "AES256", # required, accepts AES256, KMS
327
+ # kms_key: "KmsKey",
328
+ # },
325
329
  # }
326
330
  #
327
331
  # @!attribute [rw] repository_name
@@ -348,18 +352,24 @@ module Aws::ECR
348
352
  # @return [String]
349
353
  #
350
354
  # @!attribute [rw] image_scanning_configuration
351
- # The image scanning configuration for the repository. This setting
352
- # determines whether images are scanned for known vulnerabilities
353
- # after being pushed to the repository.
355
+ # The image scanning configuration for the repository. This determines
356
+ # whether images are scanned for known vulnerabilities after being
357
+ # pushed to the repository.
354
358
  # @return [Types::ImageScanningConfiguration]
355
359
  #
360
+ # @!attribute [rw] encryption_configuration
361
+ # The encryption configuration for the repository. This determines how
362
+ # the contents of your repository are encrypted at rest.
363
+ # @return [Types::EncryptionConfiguration]
364
+ #
356
365
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/CreateRepositoryRequest AWS API Documentation
357
366
  #
358
367
  class CreateRepositoryRequest < Struct.new(
359
368
  :repository_name,
360
369
  :tags,
361
370
  :image_tag_mutability,
362
- :image_scanning_configuration)
371
+ :image_scanning_configuration,
372
+ :encryption_configuration)
363
373
  SENSITIVE = []
364
374
  include Aws::Structure
365
375
  end
@@ -840,6 +850,75 @@ module Aws::ECR
840
850
  include Aws::Structure
841
851
  end
842
852
 
853
+ # The encryption configuration for the repository. This determines how
854
+ # the contents of your repository are encrypted at rest.
855
+ #
856
+ # By default, when no encryption configuration is set or the `AES256`
857
+ # encryption type is used, Amazon ECR uses server-side encryption with
858
+ # Amazon S3-managed encryption keys which encrypts your data at rest
859
+ # using an AES-256 encryption algorithm. This does not require any
860
+ # action on your part.
861
+ #
862
+ # For more control over the encryption of the contents of your
863
+ # repository, you can use server-side encryption with customer master
864
+ # keys (CMKs) stored in AWS Key Management Service (AWS KMS) to encrypt
865
+ # your images. For more information, see [Amazon ECR encryption at
866
+ # rest][1] in the *Amazon Elastic Container Registry User Guide*.
867
+ #
868
+ #
869
+ #
870
+ # [1]: https://docs.aws.amazon.com/AmazonECR/latest/userguide/encryption-at-rest.html
871
+ #
872
+ # @note When making an API call, you may pass EncryptionConfiguration
873
+ # data as a hash:
874
+ #
875
+ # {
876
+ # encryption_type: "AES256", # required, accepts AES256, KMS
877
+ # kms_key: "KmsKey",
878
+ # }
879
+ #
880
+ # @!attribute [rw] encryption_type
881
+ # The encryption type to use.
882
+ #
883
+ # If you use the `KMS` encryption type, the contents of the repository
884
+ # will be encrypted using server-side encryption with customer master
885
+ # keys (CMKs) stored in AWS KMS. When you use AWS KMS to encrypt your
886
+ # data, you can either use the default AWS managed CMK for Amazon ECR,
887
+ # or specify your own CMK, which you already created. For more
888
+ # information, see [Protecting Data Using Server-Side Encryption with
889
+ # CMKs Stored in AWS Key Management Service (SSE-KMS)][1] in the
890
+ # *Amazon Simple Storage Service Console Developer Guide.*.
891
+ #
892
+ # If you use the `AES256` encryption type, Amazon ECR uses server-side
893
+ # encryption with Amazon S3-managed encryption keys which encrypts the
894
+ # images in the repository using an AES-256 encryption algorithm. For
895
+ # more information, see [Protecting Data Using Server-Side Encryption
896
+ # with Amazon S3-Managed Encryption Keys (SSE-S3)][2] in the *Amazon
897
+ # Simple Storage Service Console Developer Guide.*.
898
+ #
899
+ #
900
+ #
901
+ # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingKMSEncryption.html
902
+ # [2]: https://docs.aws.amazon.com/AmazonS3/latest/dev/UsingServerSideEncryption.html
903
+ # @return [String]
904
+ #
905
+ # @!attribute [rw] kms_key
906
+ # If you use the `KMS` encryption type, specify the CMK to use for
907
+ # encryption. The alias, key ID, or full ARN of the CMK can be
908
+ # specified. The key must exist in the same Region as the repository.
909
+ # If no key is specified, the default AWS managed CMK for Amazon ECR
910
+ # will be used.
911
+ # @return [String]
912
+ #
913
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/EncryptionConfiguration AWS API Documentation
914
+ #
915
+ class EncryptionConfiguration < Struct.new(
916
+ :encryption_type,
917
+ :kms_key)
918
+ SENSITIVE = []
919
+ include Aws::Structure
920
+ end
921
+
843
922
  # @note When making an API call, you may pass GetAuthorizationTokenRequest
844
923
  # data as a hash:
845
924
  #
@@ -1170,7 +1249,7 @@ module Aws::ECR
1170
1249
  # @return [String]
1171
1250
  #
1172
1251
  # @!attribute [rw] image_manifest_media_type
1173
- # The media type associated with the image manifest.
1252
+ # The manifest media type of the image.
1174
1253
  # @return [String]
1175
1254
  #
1176
1255
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/Image AWS API Documentation
@@ -1248,6 +1327,14 @@ module Aws::ECR
1248
1327
  # A summary of the last completed image scan.
1249
1328
  # @return [Types::ImageScanFindingsSummary]
1250
1329
  #
1330
+ # @!attribute [rw] image_manifest_media_type
1331
+ # The media type of the image manifest.
1332
+ # @return [String]
1333
+ #
1334
+ # @!attribute [rw] artifact_media_type
1335
+ # The artifact media type of the image.
1336
+ # @return [String]
1337
+ #
1251
1338
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/ImageDetail AWS API Documentation
1252
1339
  #
1253
1340
  class ImageDetail < Struct.new(
@@ -1258,7 +1345,23 @@ module Aws::ECR
1258
1345
  :image_size_in_bytes,
1259
1346
  :image_pushed_at,
1260
1347
  :image_scan_status,
1261
- :image_scan_findings_summary)
1348
+ :image_scan_findings_summary,
1349
+ :image_manifest_media_type,
1350
+ :artifact_media_type)
1351
+ SENSITIVE = []
1352
+ include Aws::Structure
1353
+ end
1354
+
1355
+ # The specified image digest does not match the digest that Amazon ECR
1356
+ # calculated for the image.
1357
+ #
1358
+ # @!attribute [rw] message
1359
+ # @return [String]
1360
+ #
1361
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/ImageDigestDoesNotMatchException AWS API Documentation
1362
+ #
1363
+ class ImageDigestDoesNotMatchException < Struct.new(
1364
+ :message)
1262
1365
  SENSITIVE = []
1263
1366
  include Aws::Structure
1264
1367
  end
@@ -1601,6 +1704,24 @@ module Aws::ECR
1601
1704
  include Aws::Structure
1602
1705
  end
1603
1706
 
1707
+ # The operation failed due to a KMS exception.
1708
+ #
1709
+ # @!attribute [rw] message
1710
+ # @return [String]
1711
+ #
1712
+ # @!attribute [rw] kms_error
1713
+ # The error code returned by AWS KMS.
1714
+ # @return [String]
1715
+ #
1716
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/KmsException AWS API Documentation
1717
+ #
1718
+ class KmsException < Struct.new(
1719
+ :message,
1720
+ :kms_error)
1721
+ SENSITIVE = []
1722
+ include Aws::Structure
1723
+ end
1724
+
1604
1725
  # An object representing an Amazon ECR image layer.
1605
1726
  #
1606
1727
  # @!attribute [rw] layer_digest
@@ -1749,8 +1870,8 @@ module Aws::ECR
1749
1870
  include Aws::Structure
1750
1871
  end
1751
1872
 
1752
- # The previous lifecycle policy preview request has not completed.
1753
- # Please try again later.
1873
+ # The previous lifecycle policy preview request has not completed. Wait
1874
+ # and try again.
1754
1875
  #
1755
1876
  # @!attribute [rw] message
1756
1877
  # @return [String]
@@ -2008,6 +2129,7 @@ module Aws::ECR
2008
2129
  # image_manifest: "ImageManifest", # required
2009
2130
  # image_manifest_media_type: "MediaType",
2010
2131
  # image_tag: "ImageTag",
2132
+ # image_digest: "ImageDigest",
2011
2133
  # }
2012
2134
  #
2013
2135
  # @!attribute [rw] registry_id
@@ -2032,8 +2154,12 @@ module Aws::ECR
2032
2154
  #
2033
2155
  # @!attribute [rw] image_tag
2034
2156
  # The tag to associate with the image. This parameter is required for
2035
- # images that use the Docker Image Manifest V2 Schema 2 or OCI
2036
- # formats.
2157
+ # images that use the Docker Image Manifest V2 Schema 2 or Open
2158
+ # Container Initiative (OCI) formats.
2159
+ # @return [String]
2160
+ #
2161
+ # @!attribute [rw] image_digest
2162
+ # The image digest of the image manifest corresponding to the image.
2037
2163
  # @return [String]
2038
2164
  #
2039
2165
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/PutImageRequest AWS API Documentation
@@ -2043,7 +2169,8 @@ module Aws::ECR
2043
2169
  :repository_name,
2044
2170
  :image_manifest,
2045
2171
  :image_manifest_media_type,
2046
- :image_tag)
2172
+ :image_tag,
2173
+ :image_digest)
2047
2174
  SENSITIVE = []
2048
2175
  include Aws::Structure
2049
2176
  end
@@ -2268,8 +2395,8 @@ module Aws::ECR
2268
2395
  # @return [String]
2269
2396
  #
2270
2397
  # @!attribute [rw] repository_uri
2271
- # The URI for the repository. You can use this URI for Docker `push`
2272
- # or `pull` operations.
2398
+ # The URI for the repository. You can use this URI for container image
2399
+ # `push` and `pull` operations.
2273
2400
  # @return [String]
2274
2401
  #
2275
2402
  # @!attribute [rw] created_at
@@ -2285,6 +2412,11 @@ module Aws::ECR
2285
2412
  # The image scanning configuration for a repository.
2286
2413
  # @return [Types::ImageScanningConfiguration]
2287
2414
  #
2415
+ # @!attribute [rw] encryption_configuration
2416
+ # The encryption configuration for the repository. This determines how
2417
+ # the contents of your repository are encrypted at rest.
2418
+ # @return [Types::EncryptionConfiguration]
2419
+ #
2288
2420
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/Repository AWS API Documentation
2289
2421
  #
2290
2422
  class Repository < Struct.new(
@@ -2294,7 +2426,8 @@ module Aws::ECR
2294
2426
  :repository_uri,
2295
2427
  :created_at,
2296
2428
  :image_tag_mutability,
2297
- :image_scanning_configuration)
2429
+ :image_scanning_configuration,
2430
+ :encryption_configuration)
2298
2431
  SENSITIVE = []
2299
2432
  include Aws::Structure
2300
2433
  end
@@ -2794,7 +2927,7 @@ module Aws::ECR
2794
2927
  include Aws::Structure
2795
2928
  end
2796
2929
 
2797
- # The upload could not be found, or the specified upload id is not valid
2930
+ # The upload could not be found, or the specified upload ID is not valid
2798
2931
  # for this repository.
2799
2932
  #
2800
2933
  # @!attribute [rw] message
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ecr
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.32.0
4
+ version: 1.37.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-23 00:00:00.000000000 Z
11
+ date: 2020-08-25 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core