aws-sdk-ecr 1.114.0 → 1.116.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3171fa4b7d24178567303283a26737e3c8b7af7c2d377bd7d231522b362928db
4
- data.tar.gz: 79d05e55ba52f7890af22845d56f3a8f8deba4ba558448f1f42627c6759779e6
3
+ metadata.gz: '0809f9e8c2125196c9597ca960f2fc54f40ff124e4405e691fb055a3dc49d248'
4
+ data.tar.gz: 1a1f6a027d2bb6b9a2af70301139a2974ba3a680949fc89c496021442a55633f
5
5
  SHA512:
6
- metadata.gz: 508f9e95d9d2a19f493eb1abac5a15d35ccf76014d9e6b561149d4fd4c0ab4f35f839f89da6395d97fd119dbb48f33e74aec6b83ca7c93c3448a967026d13611
7
- data.tar.gz: 4aa9e0a7f1d030a01bce7b564624e430b9baa94165cda5aec7328871639b14003a9025b61247061e01692c007234137f85b4ece306fa556e82465e5fa7dd5a47
6
+ metadata.gz: 9f105427f6082a237f27b12c512b20cc5d536e54a03f9e1b35611e81195ba00dc497ac59c2e3a68a37114f979a04bd09c77976c2b54bb9dbcccefdc1dc4267f0
7
+ data.tar.gz: a24a3a0d91ba4aeee84ebdf873ef91cc0b2857c69d5950c037216cd7ad59e4d047400a0a44957f7d723190bdc1de6633a33680305c4727debc6a690a22d72f65
data/CHANGELOG.md CHANGED
@@ -1,6 +1,16 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.116.0 (2025-12-18)
5
+ ------------------
6
+
7
+ * Feature - Adds support for ECR Create On Push
8
+
9
+ 1.115.0 (2025-11-21)
10
+ ------------------
11
+
12
+ * Feature - Add support for ECR managed signing
13
+
4
14
  1.114.0 (2025-11-19)
5
15
  ------------------
6
16
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.114.0
1
+ 1.116.0
@@ -1128,8 +1128,9 @@ module Aws::ECR
1128
1128
  #
1129
1129
  # @option params [required, Array<String>] :applied_for
1130
1130
  # A list of enumerable strings representing the Amazon ECR repository
1131
- # creation scenarios that this template will apply towards. The two
1132
- # supported scenarios are `PULL_THROUGH_CACHE` and `REPLICATION`
1131
+ # creation scenarios that this template will apply towards. The
1132
+ # supported scenarios are `PULL_THROUGH_CACHE`, `REPLICATION`, and
1133
+ # `CREATE_ON_PUSH`
1133
1134
  #
1134
1135
  # @option params [String] :custom_role_arn
1135
1136
  # The ARN of the role to be assumed by Amazon ECR. This role must be in
@@ -1152,6 +1153,7 @@ module Aws::ECR
1152
1153
  # applied_for: [
1153
1154
  # "REPLICATION",
1154
1155
  # "PULL_THROUGH_CACHE",
1156
+ # "CREATE_ON_PUSH",
1155
1157
  # ],
1156
1158
  # description: "Repos for testing images",
1157
1159
  # encryption_configuration: {
@@ -1176,6 +1178,7 @@ module Aws::ECR
1176
1178
  # applied_for: [
1177
1179
  # "REPLICATION",
1178
1180
  # "PULL_THROUGH_CACHE",
1181
+ # "CREATE_ON_PUSH",
1179
1182
  # ],
1180
1183
  # created_at: Time.parse("2023-12-16T17:29:02-07:00"),
1181
1184
  # description: "Repos for testing images",
@@ -1220,7 +1223,7 @@ module Aws::ECR
1220
1223
  # ],
1221
1224
  # repository_policy: "RepositoryPolicyText",
1222
1225
  # lifecycle_policy: "LifecyclePolicyTextForRepositoryCreationTemplate",
1223
- # applied_for: ["REPLICATION"], # required, accepts REPLICATION, PULL_THROUGH_CACHE
1226
+ # applied_for: ["REPLICATION"], # required, accepts REPLICATION, PULL_THROUGH_CACHE, CREATE_ON_PUSH
1224
1227
  # custom_role_arn: "CustomRoleArn",
1225
1228
  # })
1226
1229
  #
@@ -1241,7 +1244,7 @@ module Aws::ECR
1241
1244
  # resp.repository_creation_template.repository_policy #=> String
1242
1245
  # resp.repository_creation_template.lifecycle_policy #=> String
1243
1246
  # resp.repository_creation_template.applied_for #=> Array
1244
- # resp.repository_creation_template.applied_for[0] #=> String, one of "REPLICATION", "PULL_THROUGH_CACHE"
1247
+ # resp.repository_creation_template.applied_for[0] #=> String, one of "REPLICATION", "PULL_THROUGH_CACHE", "CREATE_ON_PUSH"
1245
1248
  # resp.repository_creation_template.custom_role_arn #=> String
1246
1249
  # resp.repository_creation_template.created_at #=> Time
1247
1250
  # resp.repository_creation_template.updated_at #=> Time
@@ -1494,7 +1497,7 @@ module Aws::ECR
1494
1497
  # resp.repository_creation_template.repository_policy #=> String
1495
1498
  # resp.repository_creation_template.lifecycle_policy #=> String
1496
1499
  # resp.repository_creation_template.applied_for #=> Array
1497
- # resp.repository_creation_template.applied_for[0] #=> String, one of "REPLICATION", "PULL_THROUGH_CACHE"
1500
+ # resp.repository_creation_template.applied_for[0] #=> String, one of "REPLICATION", "PULL_THROUGH_CACHE", "CREATE_ON_PUSH"
1498
1501
  # resp.repository_creation_template.custom_role_arn #=> String
1499
1502
  # resp.repository_creation_template.created_at #=> Time
1500
1503
  # resp.repository_creation_template.updated_at #=> Time
@@ -1564,6 +1567,45 @@ module Aws::ECR
1564
1567
  req.send_request(options)
1565
1568
  end
1566
1569
 
1570
+ # Deletes the registry's signing configuration. Images pushed after
1571
+ # deletion of the signing configuration will no longer be automatically
1572
+ # signed.
1573
+ #
1574
+ # For more information, see [Managed signing][1] in the *Amazon Elastic
1575
+ # Container Registry User Guide*.
1576
+ #
1577
+ # <note markdown="1"> Deleting the signing configuration does not affect existing image
1578
+ # signatures.
1579
+ #
1580
+ # </note>
1581
+ #
1582
+ #
1583
+ #
1584
+ # [1]: https://docs.aws.amazon.com/AmazonECR/latest/userguide/managed-signing.html
1585
+ #
1586
+ # @return [Types::DeleteSigningConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1587
+ #
1588
+ # * {Types::DeleteSigningConfigurationResponse#registry_id #registry_id} => String
1589
+ # * {Types::DeleteSigningConfigurationResponse#signing_configuration #signing_configuration} => Types::SigningConfiguration
1590
+ #
1591
+ # @example Response structure
1592
+ #
1593
+ # resp.registry_id #=> String
1594
+ # resp.signing_configuration.rules #=> Array
1595
+ # resp.signing_configuration.rules[0].signing_profile_arn #=> String
1596
+ # resp.signing_configuration.rules[0].repository_filters #=> Array
1597
+ # resp.signing_configuration.rules[0].repository_filters[0].filter #=> String
1598
+ # resp.signing_configuration.rules[0].repository_filters[0].filter_type #=> String, one of "WILDCARD_MATCH"
1599
+ #
1600
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DeleteSigningConfiguration AWS API Documentation
1601
+ #
1602
+ # @overload delete_signing_configuration(params = {})
1603
+ # @param [Hash] params ({})
1604
+ def delete_signing_configuration(params = {}, options = {})
1605
+ req = build_request(:delete_signing_configuration, params)
1606
+ req.send_request(options)
1607
+ end
1608
+
1567
1609
  # Removes a principal from the pull time update exclusion list for a
1568
1610
  # registry. Once removed, Amazon ECR will resume updating the pull time
1569
1611
  # if the specified principal pulls an image.
@@ -1817,6 +1859,67 @@ module Aws::ECR
1817
1859
  req.send_request(options)
1818
1860
  end
1819
1861
 
1862
+ # Returns the signing status for a specified image. If the image matched
1863
+ # signing rules that reference different signing profiles, a status is
1864
+ # returned for each profile.
1865
+ #
1866
+ # For more information, see [Managed signing][1] in the *Amazon Elastic
1867
+ # Container Registry User Guide*.
1868
+ #
1869
+ #
1870
+ #
1871
+ # [1]: https://docs.aws.amazon.com/AmazonECR/latest/userguide/managed-signing.html
1872
+ #
1873
+ # @option params [required, String] :repository_name
1874
+ # The name of the repository that contains the image.
1875
+ #
1876
+ # @option params [required, Types::ImageIdentifier] :image_id
1877
+ # An object containing identifying information for an image.
1878
+ #
1879
+ # @option params [String] :registry_id
1880
+ # The Amazon Web Services account ID associated with the registry that
1881
+ # contains the repository. If you do not specify a registry, the default
1882
+ # registry is assumed.
1883
+ #
1884
+ # @return [Types::DescribeImageSigningStatusResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1885
+ #
1886
+ # * {Types::DescribeImageSigningStatusResponse#repository_name #repository_name} => String
1887
+ # * {Types::DescribeImageSigningStatusResponse#image_id #image_id} => Types::ImageIdentifier
1888
+ # * {Types::DescribeImageSigningStatusResponse#registry_id #registry_id} => String
1889
+ # * {Types::DescribeImageSigningStatusResponse#signing_statuses #signing_statuses} => Array&lt;Types::ImageSigningStatus&gt;
1890
+ #
1891
+ # @example Request syntax with placeholder values
1892
+ #
1893
+ # resp = client.describe_image_signing_status({
1894
+ # repository_name: "RepositoryName", # required
1895
+ # image_id: { # required
1896
+ # image_digest: "ImageDigest",
1897
+ # image_tag: "ImageTag",
1898
+ # },
1899
+ # registry_id: "RegistryId",
1900
+ # })
1901
+ #
1902
+ # @example Response structure
1903
+ #
1904
+ # resp.repository_name #=> String
1905
+ # resp.image_id.image_digest #=> String
1906
+ # resp.image_id.image_tag #=> String
1907
+ # resp.registry_id #=> String
1908
+ # resp.signing_statuses #=> Array
1909
+ # resp.signing_statuses[0].signing_profile_arn #=> String
1910
+ # resp.signing_statuses[0].failure_code #=> String
1911
+ # resp.signing_statuses[0].failure_reason #=> String
1912
+ # resp.signing_statuses[0].status #=> String, one of "IN_PROGRESS", "COMPLETE", "FAILED"
1913
+ #
1914
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DescribeImageSigningStatus AWS API Documentation
1915
+ #
1916
+ # @overload describe_image_signing_status(params = {})
1917
+ # @param [Hash] params ({})
1918
+ def describe_image_signing_status(params = {}, options = {})
1919
+ req = build_request(:describe_image_signing_status, params)
1920
+ req.send_request(options)
1921
+ end
1922
+
1820
1923
  # Returns metadata about the images in a repository.
1821
1924
  #
1822
1925
  # <note markdown="1"> Starting with Docker version 1.9, the Docker client compresses image
@@ -2203,6 +2306,7 @@ module Aws::ECR
2203
2306
  # applied_for: [
2204
2307
  # "PULL_THROUGH_CACHE",
2205
2308
  # "REPLICATION",
2309
+ # "CREATE_ON_PUSH",
2206
2310
  # ],
2207
2311
  # created_at: Time.parse("2023-12-16T17:29:02-07:00"),
2208
2312
  # encryption_configuration: {
@@ -2253,7 +2357,7 @@ module Aws::ECR
2253
2357
  # resp.repository_creation_templates[0].repository_policy #=> String
2254
2358
  # resp.repository_creation_templates[0].lifecycle_policy #=> String
2255
2359
  # resp.repository_creation_templates[0].applied_for #=> Array
2256
- # resp.repository_creation_templates[0].applied_for[0] #=> String, one of "REPLICATION", "PULL_THROUGH_CACHE"
2360
+ # resp.repository_creation_templates[0].applied_for[0] #=> String, one of "REPLICATION", "PULL_THROUGH_CACHE", "CREATE_ON_PUSH"
2257
2361
  # resp.repository_creation_templates[0].custom_role_arn #=> String
2258
2362
  # resp.repository_creation_templates[0].created_at #=> Time
2259
2363
  # resp.repository_creation_templates[0].updated_at #=> Time
@@ -2663,6 +2767,39 @@ module Aws::ECR
2663
2767
  req.send_request(options)
2664
2768
  end
2665
2769
 
2770
+ # Retrieves the registry's signing configuration, which defines rules
2771
+ # for automatically signing images using Amazon Web Services Signer.
2772
+ #
2773
+ # For more information, see [Managed signing][1] in the *Amazon Elastic
2774
+ # Container Registry User Guide*.
2775
+ #
2776
+ #
2777
+ #
2778
+ # [1]: https://docs.aws.amazon.com/AmazonECR/latest/userguide/managed-signing.html
2779
+ #
2780
+ # @return [Types::GetSigningConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2781
+ #
2782
+ # * {Types::GetSigningConfigurationResponse#registry_id #registry_id} => String
2783
+ # * {Types::GetSigningConfigurationResponse#signing_configuration #signing_configuration} => Types::SigningConfiguration
2784
+ #
2785
+ # @example Response structure
2786
+ #
2787
+ # resp.registry_id #=> String
2788
+ # resp.signing_configuration.rules #=> Array
2789
+ # resp.signing_configuration.rules[0].signing_profile_arn #=> String
2790
+ # resp.signing_configuration.rules[0].repository_filters #=> Array
2791
+ # resp.signing_configuration.rules[0].repository_filters[0].filter #=> String
2792
+ # resp.signing_configuration.rules[0].repository_filters[0].filter_type #=> String, one of "WILDCARD_MATCH"
2793
+ #
2794
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/GetSigningConfiguration AWS API Documentation
2795
+ #
2796
+ # @overload get_signing_configuration(params = {})
2797
+ # @param [Hash] params ({})
2798
+ def get_signing_configuration(params = {}, options = {})
2799
+ req = build_request(:get_signing_configuration, params)
2800
+ req.send_request(options)
2801
+ end
2802
+
2666
2803
  # Notifies Amazon ECR that you intend to upload an image layer.
2667
2804
  #
2668
2805
  # When an image is pushed, the InitiateLayerUpload API is called once
@@ -3574,6 +3711,65 @@ module Aws::ECR
3574
3711
  req.send_request(options)
3575
3712
  end
3576
3713
 
3714
+ # Creates or updates the registry's signing configuration, which
3715
+ # defines rules for automatically signing images with Amazon Web
3716
+ # Services Signer.
3717
+ #
3718
+ # For more information, see [Managed signing][1] in the *Amazon Elastic
3719
+ # Container Registry User Guide*.
3720
+ #
3721
+ # <note markdown="1"> To successfully generate a signature, the IAM principal pushing images
3722
+ # must have permission to sign payloads with the Amazon Web Services
3723
+ # Signer signing profile referenced in the signing configuration.
3724
+ #
3725
+ # </note>
3726
+ #
3727
+ #
3728
+ #
3729
+ # [1]: https://docs.aws.amazon.com/AmazonECR/latest/userguide/managed-signing.html
3730
+ #
3731
+ # @option params [required, Types::SigningConfiguration] :signing_configuration
3732
+ # The signing configuration to assign to the registry.
3733
+ #
3734
+ # @return [Types::PutSigningConfigurationResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
3735
+ #
3736
+ # * {Types::PutSigningConfigurationResponse#signing_configuration #signing_configuration} => Types::SigningConfiguration
3737
+ #
3738
+ # @example Request syntax with placeholder values
3739
+ #
3740
+ # resp = client.put_signing_configuration({
3741
+ # signing_configuration: { # required
3742
+ # rules: [ # required
3743
+ # {
3744
+ # signing_profile_arn: "SigningProfileArn", # required
3745
+ # repository_filters: [
3746
+ # {
3747
+ # filter: "SigningRepositoryFilterValue", # required
3748
+ # filter_type: "WILDCARD_MATCH", # required, accepts WILDCARD_MATCH
3749
+ # },
3750
+ # ],
3751
+ # },
3752
+ # ],
3753
+ # },
3754
+ # })
3755
+ #
3756
+ # @example Response structure
3757
+ #
3758
+ # resp.signing_configuration.rules #=> Array
3759
+ # resp.signing_configuration.rules[0].signing_profile_arn #=> String
3760
+ # resp.signing_configuration.rules[0].repository_filters #=> Array
3761
+ # resp.signing_configuration.rules[0].repository_filters[0].filter #=> String
3762
+ # resp.signing_configuration.rules[0].repository_filters[0].filter_type #=> String, one of "WILDCARD_MATCH"
3763
+ #
3764
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/PutSigningConfiguration AWS API Documentation
3765
+ #
3766
+ # @overload put_signing_configuration(params = {})
3767
+ # @param [Hash] params ({})
3768
+ def put_signing_configuration(params = {}, options = {})
3769
+ req = build_request(:put_signing_configuration, params)
3770
+ req.send_request(options)
3771
+ end
3772
+
3577
3773
  # Adds an IAM principal to the pull time update exclusion list for a
3578
3774
  # registry. Amazon ECR will not record the pull time if an excluded
3579
3775
  # principal pulls an image.
@@ -4069,7 +4265,8 @@ module Aws::ECR
4069
4265
  # @option params [Array<String>] :applied_for
4070
4266
  # Updates the list of enumerable strings representing the Amazon ECR
4071
4267
  # repository creation scenarios that this template will apply towards.
4072
- # The two supported scenarios are `PULL_THROUGH_CACHE` and `REPLICATION`
4268
+ # The supported scenarios are `PULL_THROUGH_CACHE`, `REPLICATION`, and
4269
+ # `CREATE_ON_PUSH`
4073
4270
  #
4074
4271
  # @option params [String] :custom_role_arn
4075
4272
  # The ARN of the role to be assumed by Amazon ECR. This role must be in
@@ -4151,7 +4348,7 @@ module Aws::ECR
4151
4348
  # ],
4152
4349
  # repository_policy: "RepositoryPolicyText",
4153
4350
  # lifecycle_policy: "LifecyclePolicyTextForRepositoryCreationTemplate",
4154
- # applied_for: ["REPLICATION"], # accepts REPLICATION, PULL_THROUGH_CACHE
4351
+ # applied_for: ["REPLICATION"], # accepts REPLICATION, PULL_THROUGH_CACHE, CREATE_ON_PUSH
4155
4352
  # custom_role_arn: "CustomRoleArn",
4156
4353
  # })
4157
4354
  #
@@ -4172,7 +4369,7 @@ module Aws::ECR
4172
4369
  # resp.repository_creation_template.repository_policy #=> String
4173
4370
  # resp.repository_creation_template.lifecycle_policy #=> String
4174
4371
  # resp.repository_creation_template.applied_for #=> Array
4175
- # resp.repository_creation_template.applied_for[0] #=> String, one of "REPLICATION", "PULL_THROUGH_CACHE"
4372
+ # resp.repository_creation_template.applied_for[0] #=> String, one of "REPLICATION", "PULL_THROUGH_CACHE", "CREATE_ON_PUSH"
4176
4373
  # resp.repository_creation_template.custom_role_arn #=> String
4177
4374
  # resp.repository_creation_template.created_at #=> Time
4178
4375
  # resp.repository_creation_template.updated_at #=> Time
@@ -4326,7 +4523,7 @@ module Aws::ECR
4326
4523
  tracer: tracer
4327
4524
  )
4328
4525
  context[:gem_name] = 'aws-sdk-ecr'
4329
- context[:gem_version] = '1.114.0'
4526
+ context[:gem_version] = '1.116.0'
4330
4527
  Seahorse::Client::Request.new(handlers, context)
4331
4528
  end
4332
4529
 
@@ -73,12 +73,16 @@ module Aws::ECR
73
73
  DeleteRepositoryPolicyResponse = Shapes::StructureShape.new(name: 'DeleteRepositoryPolicyResponse')
74
74
  DeleteRepositoryRequest = Shapes::StructureShape.new(name: 'DeleteRepositoryRequest')
75
75
  DeleteRepositoryResponse = Shapes::StructureShape.new(name: 'DeleteRepositoryResponse')
76
+ DeleteSigningConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteSigningConfigurationRequest')
77
+ DeleteSigningConfigurationResponse = Shapes::StructureShape.new(name: 'DeleteSigningConfigurationResponse')
76
78
  DeregisterPullTimeUpdateExclusionRequest = Shapes::StructureShape.new(name: 'DeregisterPullTimeUpdateExclusionRequest')
77
79
  DeregisterPullTimeUpdateExclusionResponse = Shapes::StructureShape.new(name: 'DeregisterPullTimeUpdateExclusionResponse')
78
80
  DescribeImageReplicationStatusRequest = Shapes::StructureShape.new(name: 'DescribeImageReplicationStatusRequest')
79
81
  DescribeImageReplicationStatusResponse = Shapes::StructureShape.new(name: 'DescribeImageReplicationStatusResponse')
80
82
  DescribeImageScanFindingsRequest = Shapes::StructureShape.new(name: 'DescribeImageScanFindingsRequest')
81
83
  DescribeImageScanFindingsResponse = Shapes::StructureShape.new(name: 'DescribeImageScanFindingsResponse')
84
+ DescribeImageSigningStatusRequest = Shapes::StructureShape.new(name: 'DescribeImageSigningStatusRequest')
85
+ DescribeImageSigningStatusResponse = Shapes::StructureShape.new(name: 'DescribeImageSigningStatusResponse')
82
86
  DescribeImagesFilter = Shapes::StructureShape.new(name: 'DescribeImagesFilter')
83
87
  DescribeImagesRequest = Shapes::StructureShape.new(name: 'DescribeImagesRequest')
84
88
  DescribeImagesResponse = Shapes::StructureShape.new(name: 'DescribeImagesResponse')
@@ -130,6 +134,8 @@ module Aws::ECR
130
134
  GetRegistryScanningConfigurationResponse = Shapes::StructureShape.new(name: 'GetRegistryScanningConfigurationResponse')
131
135
  GetRepositoryPolicyRequest = Shapes::StructureShape.new(name: 'GetRepositoryPolicyRequest')
132
136
  GetRepositoryPolicyResponse = Shapes::StructureShape.new(name: 'GetRepositoryPolicyResponse')
137
+ GetSigningConfigurationRequest = Shapes::StructureShape.new(name: 'GetSigningConfigurationRequest')
138
+ GetSigningConfigurationResponse = Shapes::StructureShape.new(name: 'GetSigningConfigurationResponse')
133
139
  Image = Shapes::StructureShape.new(name: 'Image')
134
140
  ImageActionType = Shapes::StringShape.new(name: 'ImageActionType')
135
141
  ImageAlreadyExistsException = Shapes::StructureShape.new(name: 'ImageAlreadyExistsException')
@@ -158,6 +164,8 @@ module Aws::ECR
158
164
  ImageScanFindingsSummary = Shapes::StructureShape.new(name: 'ImageScanFindingsSummary')
159
165
  ImageScanStatus = Shapes::StructureShape.new(name: 'ImageScanStatus')
160
166
  ImageScanningConfiguration = Shapes::StructureShape.new(name: 'ImageScanningConfiguration')
167
+ ImageSigningStatus = Shapes::StructureShape.new(name: 'ImageSigningStatus')
168
+ ImageSigningStatusList = Shapes::ListShape.new(name: 'ImageSigningStatusList')
161
169
  ImageSizeInBytes = Shapes::IntegerShape.new(name: 'ImageSizeInBytes')
162
170
  ImageStatus = Shapes::StringShape.new(name: 'ImageStatus')
163
171
  ImageStatusFilter = Shapes::StringShape.new(name: 'ImageStatusFilter')
@@ -264,6 +272,8 @@ module Aws::ECR
264
272
  PutRegistryScanningConfigurationResponse = Shapes::StructureShape.new(name: 'PutRegistryScanningConfigurationResponse')
265
273
  PutReplicationConfigurationRequest = Shapes::StructureShape.new(name: 'PutReplicationConfigurationRequest')
266
274
  PutReplicationConfigurationResponse = Shapes::StructureShape.new(name: 'PutReplicationConfigurationResponse')
275
+ PutSigningConfigurationRequest = Shapes::StructureShape.new(name: 'PutSigningConfigurationRequest')
276
+ PutSigningConfigurationResponse = Shapes::StructureShape.new(name: 'PutSigningConfigurationResponse')
267
277
  RCTAppliedFor = Shapes::StringShape.new(name: 'RCTAppliedFor')
268
278
  RCTAppliedForList = Shapes::ListShape.new(name: 'RCTAppliedForList')
269
279
  Reason = Shapes::StringShape.new(name: 'Reason')
@@ -339,6 +349,18 @@ module Aws::ECR
339
349
  SetRepositoryPolicyResponse = Shapes::StructureShape.new(name: 'SetRepositoryPolicyResponse')
340
350
  Severity = Shapes::StringShape.new(name: 'Severity')
341
351
  SeverityCount = Shapes::IntegerShape.new(name: 'SeverityCount')
352
+ SigningConfiguration = Shapes::StructureShape.new(name: 'SigningConfiguration')
353
+ SigningConfigurationNotFoundException = Shapes::StructureShape.new(name: 'SigningConfigurationNotFoundException')
354
+ SigningProfileArn = Shapes::StringShape.new(name: 'SigningProfileArn')
355
+ SigningRepositoryFilter = Shapes::StructureShape.new(name: 'SigningRepositoryFilter')
356
+ SigningRepositoryFilterList = Shapes::ListShape.new(name: 'SigningRepositoryFilterList')
357
+ SigningRepositoryFilterType = Shapes::StringShape.new(name: 'SigningRepositoryFilterType')
358
+ SigningRepositoryFilterValue = Shapes::StringShape.new(name: 'SigningRepositoryFilterValue')
359
+ SigningRule = Shapes::StructureShape.new(name: 'SigningRule')
360
+ SigningRuleList = Shapes::ListShape.new(name: 'SigningRuleList')
361
+ SigningStatus = Shapes::StringShape.new(name: 'SigningStatus')
362
+ SigningStatusFailureCode = Shapes::StringShape.new(name: 'SigningStatusFailureCode')
363
+ SigningStatusFailureReason = Shapes::StringShape.new(name: 'SigningStatusFailureReason')
342
364
  Source = Shapes::StringShape.new(name: 'Source')
343
365
  SourceLayerHash = Shapes::StringShape.new(name: 'SourceLayerHash')
344
366
  StartImageScanRequest = Shapes::StructureShape.new(name: 'StartImageScanRequest')
@@ -599,6 +621,12 @@ module Aws::ECR
599
621
  DeleteRepositoryResponse.add_member(:repository, Shapes::ShapeRef.new(shape: Repository, location_name: "repository"))
600
622
  DeleteRepositoryResponse.struct_class = Types::DeleteRepositoryResponse
601
623
 
624
+ DeleteSigningConfigurationRequest.struct_class = Types::DeleteSigningConfigurationRequest
625
+
626
+ DeleteSigningConfigurationResponse.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
627
+ DeleteSigningConfigurationResponse.add_member(:signing_configuration, Shapes::ShapeRef.new(shape: SigningConfiguration, location_name: "signingConfiguration"))
628
+ DeleteSigningConfigurationResponse.struct_class = Types::DeleteSigningConfigurationResponse
629
+
602
630
  DeregisterPullTimeUpdateExclusionRequest.add_member(:principal_arn, Shapes::ShapeRef.new(shape: PrincipalArn, required: true, location_name: "principalArn"))
603
631
  DeregisterPullTimeUpdateExclusionRequest.struct_class = Types::DeregisterPullTimeUpdateExclusionRequest
604
632
 
@@ -630,6 +658,17 @@ module Aws::ECR
630
658
  DescribeImageScanFindingsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
631
659
  DescribeImageScanFindingsResponse.struct_class = Types::DescribeImageScanFindingsResponse
632
660
 
661
+ DescribeImageSigningStatusRequest.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, required: true, location_name: "repositoryName"))
662
+ DescribeImageSigningStatusRequest.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageIdentifier, required: true, location_name: "imageId"))
663
+ DescribeImageSigningStatusRequest.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
664
+ DescribeImageSigningStatusRequest.struct_class = Types::DescribeImageSigningStatusRequest
665
+
666
+ DescribeImageSigningStatusResponse.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, location_name: "repositoryName"))
667
+ DescribeImageSigningStatusResponse.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageIdentifier, location_name: "imageId"))
668
+ DescribeImageSigningStatusResponse.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
669
+ DescribeImageSigningStatusResponse.add_member(:signing_statuses, Shapes::ShapeRef.new(shape: ImageSigningStatusList, location_name: "signingStatuses"))
670
+ DescribeImageSigningStatusResponse.struct_class = Types::DescribeImageSigningStatusResponse
671
+
633
672
  DescribeImagesFilter.add_member(:tag_status, Shapes::ShapeRef.new(shape: TagStatus, location_name: "tagStatus"))
634
673
  DescribeImagesFilter.add_member(:image_status, Shapes::ShapeRef.new(shape: ImageStatusFilter, location_name: "imageStatus"))
635
674
  DescribeImagesFilter.struct_class = Types::DescribeImagesFilter
@@ -795,6 +834,12 @@ module Aws::ECR
795
834
  GetRepositoryPolicyResponse.add_member(:policy_text, Shapes::ShapeRef.new(shape: RepositoryPolicyText, location_name: "policyText"))
796
835
  GetRepositoryPolicyResponse.struct_class = Types::GetRepositoryPolicyResponse
797
836
 
837
+ GetSigningConfigurationRequest.struct_class = Types::GetSigningConfigurationRequest
838
+
839
+ GetSigningConfigurationResponse.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
840
+ GetSigningConfigurationResponse.add_member(:signing_configuration, Shapes::ShapeRef.new(shape: SigningConfiguration, location_name: "signingConfiguration"))
841
+ GetSigningConfigurationResponse.struct_class = Types::GetSigningConfigurationResponse
842
+
798
843
  Image.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
799
844
  Image.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, location_name: "repositoryName"))
800
845
  Image.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageIdentifier, location_name: "imageId"))
@@ -894,6 +939,14 @@ module Aws::ECR
894
939
  ImageScanningConfiguration.add_member(:scan_on_push, Shapes::ShapeRef.new(shape: ScanOnPushFlag, location_name: "scanOnPush"))
895
940
  ImageScanningConfiguration.struct_class = Types::ImageScanningConfiguration
896
941
 
942
+ ImageSigningStatus.add_member(:signing_profile_arn, Shapes::ShapeRef.new(shape: SigningProfileArn, location_name: "signingProfileArn"))
943
+ ImageSigningStatus.add_member(:failure_code, Shapes::ShapeRef.new(shape: SigningStatusFailureCode, location_name: "failureCode"))
944
+ ImageSigningStatus.add_member(:failure_reason, Shapes::ShapeRef.new(shape: SigningStatusFailureReason, location_name: "failureReason"))
945
+ ImageSigningStatus.add_member(:status, Shapes::ShapeRef.new(shape: SigningStatus, location_name: "status"))
946
+ ImageSigningStatus.struct_class = Types::ImageSigningStatus
947
+
948
+ ImageSigningStatusList.member = Shapes::ShapeRef.new(shape: ImageSigningStatus)
949
+
897
950
  ImageStorageClassUpdateNotSupportedException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "message"))
898
951
  ImageStorageClassUpdateNotSupportedException.struct_class = Types::ImageStorageClassUpdateNotSupportedException
899
952
 
@@ -1155,6 +1208,12 @@ module Aws::ECR
1155
1208
  PutReplicationConfigurationResponse.add_member(:replication_configuration, Shapes::ShapeRef.new(shape: ReplicationConfiguration, location_name: "replicationConfiguration"))
1156
1209
  PutReplicationConfigurationResponse.struct_class = Types::PutReplicationConfigurationResponse
1157
1210
 
1211
+ PutSigningConfigurationRequest.add_member(:signing_configuration, Shapes::ShapeRef.new(shape: SigningConfiguration, required: true, location_name: "signingConfiguration"))
1212
+ PutSigningConfigurationRequest.struct_class = Types::PutSigningConfigurationRequest
1213
+
1214
+ PutSigningConfigurationResponse.add_member(:signing_configuration, Shapes::ShapeRef.new(shape: SigningConfiguration, location_name: "signingConfiguration"))
1215
+ PutSigningConfigurationResponse.struct_class = Types::PutSigningConfigurationResponse
1216
+
1158
1217
  RCTAppliedForList.member = Shapes::ShapeRef.new(shape: RCTAppliedFor)
1159
1218
 
1160
1219
  Recommendation.add_member(:url, Shapes::ShapeRef.new(shape: Url, location_name: "url"))
@@ -1313,6 +1372,24 @@ module Aws::ECR
1313
1372
  SetRepositoryPolicyResponse.add_member(:policy_text, Shapes::ShapeRef.new(shape: RepositoryPolicyText, location_name: "policyText"))
1314
1373
  SetRepositoryPolicyResponse.struct_class = Types::SetRepositoryPolicyResponse
1315
1374
 
1375
+ SigningConfiguration.add_member(:rules, Shapes::ShapeRef.new(shape: SigningRuleList, required: true, location_name: "rules"))
1376
+ SigningConfiguration.struct_class = Types::SigningConfiguration
1377
+
1378
+ SigningConfigurationNotFoundException.add_member(:message, Shapes::ShapeRef.new(shape: ExceptionMessage, location_name: "message"))
1379
+ SigningConfigurationNotFoundException.struct_class = Types::SigningConfigurationNotFoundException
1380
+
1381
+ SigningRepositoryFilter.add_member(:filter, Shapes::ShapeRef.new(shape: SigningRepositoryFilterValue, required: true, location_name: "filter"))
1382
+ SigningRepositoryFilter.add_member(:filter_type, Shapes::ShapeRef.new(shape: SigningRepositoryFilterType, required: true, location_name: "filterType"))
1383
+ SigningRepositoryFilter.struct_class = Types::SigningRepositoryFilter
1384
+
1385
+ SigningRepositoryFilterList.member = Shapes::ShapeRef.new(shape: SigningRepositoryFilter)
1386
+
1387
+ SigningRule.add_member(:signing_profile_arn, Shapes::ShapeRef.new(shape: SigningProfileArn, required: true, location_name: "signingProfileArn"))
1388
+ SigningRule.add_member(:repository_filters, Shapes::ShapeRef.new(shape: SigningRepositoryFilterList, location_name: "repositoryFilters"))
1389
+ SigningRule.struct_class = Types::SigningRule
1390
+
1391
+ SigningRuleList.member = Shapes::ShapeRef.new(shape: SigningRule)
1392
+
1316
1393
  StartImageScanRequest.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
1317
1394
  StartImageScanRequest.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, required: true, location_name: "repositoryName"))
1318
1395
  StartImageScanRequest.add_member(:image_id, Shapes::ShapeRef.new(shape: ImageIdentifier, required: true, location_name: "imageId"))
@@ -1688,6 +1765,17 @@ module Aws::ECR
1688
1765
  o.errors << Shapes::ShapeRef.new(shape: RepositoryPolicyNotFoundException)
1689
1766
  end)
1690
1767
 
1768
+ api.add_operation(:delete_signing_configuration, Seahorse::Model::Operation.new.tap do |o|
1769
+ o.name = "DeleteSigningConfiguration"
1770
+ o.http_method = "POST"
1771
+ o.http_request_uri = "/"
1772
+ o.input = Shapes::ShapeRef.new(shape: DeleteSigningConfigurationRequest)
1773
+ o.output = Shapes::ShapeRef.new(shape: DeleteSigningConfigurationResponse)
1774
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
1775
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1776
+ o.errors << Shapes::ShapeRef.new(shape: SigningConfigurationNotFoundException)
1777
+ end)
1778
+
1691
1779
  api.add_operation(:deregister_pull_time_update_exclusion, Seahorse::Model::Operation.new.tap do |o|
1692
1780
  o.name = "DeregisterPullTimeUpdateExclusion"
1693
1781
  o.http_method = "POST"
@@ -1734,6 +1822,19 @@ module Aws::ECR
1734
1822
  )
1735
1823
  end)
1736
1824
 
1825
+ api.add_operation(:describe_image_signing_status, Seahorse::Model::Operation.new.tap do |o|
1826
+ o.name = "DescribeImageSigningStatus"
1827
+ o.http_method = "POST"
1828
+ o.http_request_uri = "/"
1829
+ o.input = Shapes::ShapeRef.new(shape: DescribeImageSigningStatusRequest)
1830
+ o.output = Shapes::ShapeRef.new(shape: DescribeImageSigningStatusResponse)
1831
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
1832
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1833
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
1834
+ o.errors << Shapes::ShapeRef.new(shape: ImageNotFoundException)
1835
+ o.errors << Shapes::ShapeRef.new(shape: RepositoryNotFoundException)
1836
+ end)
1837
+
1737
1838
  api.add_operation(:describe_images, Seahorse::Model::Operation.new.tap do |o|
1738
1839
  o.name = "DescribeImages"
1739
1840
  o.http_method = "POST"
@@ -1917,6 +2018,18 @@ module Aws::ECR
1917
2018
  o.errors << Shapes::ShapeRef.new(shape: RepositoryPolicyNotFoundException)
1918
2019
  end)
1919
2020
 
2021
+ api.add_operation(:get_signing_configuration, Seahorse::Model::Operation.new.tap do |o|
2022
+ o.name = "GetSigningConfiguration"
2023
+ o.http_method = "POST"
2024
+ o.http_request_uri = "/"
2025
+ o.input = Shapes::ShapeRef.new(shape: GetSigningConfigurationRequest)
2026
+ o.output = Shapes::ShapeRef.new(shape: GetSigningConfigurationResponse)
2027
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
2028
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2029
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
2030
+ o.errors << Shapes::ShapeRef.new(shape: SigningConfigurationNotFoundException)
2031
+ end)
2032
+
1920
2033
  api.add_operation(:initiate_layer_upload, Seahorse::Model::Operation.new.tap do |o|
1921
2034
  o.name = "InitiateLayerUpload"
1922
2035
  o.http_method = "POST"
@@ -2080,6 +2193,17 @@ module Aws::ECR
2080
2193
  o.errors << Shapes::ShapeRef.new(shape: ValidationException)
2081
2194
  end)
2082
2195
 
2196
+ api.add_operation(:put_signing_configuration, Seahorse::Model::Operation.new.tap do |o|
2197
+ o.name = "PutSigningConfiguration"
2198
+ o.http_method = "POST"
2199
+ o.http_request_uri = "/"
2200
+ o.input = Shapes::ShapeRef.new(shape: PutSigningConfigurationRequest)
2201
+ o.output = Shapes::ShapeRef.new(shape: PutSigningConfigurationResponse)
2202
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
2203
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
2204
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
2205
+ end)
2206
+
2083
2207
  api.add_operation(:register_pull_time_update_exclusion, Seahorse::Model::Operation.new.tap do |o|
2084
2208
  o.name = "RegisterPullTimeUpdateExclusion"
2085
2209
  o.http_method = "POST"
@@ -61,6 +61,7 @@ module Aws::ECR
61
61
  # * {ScanNotFoundException}
62
62
  # * {SecretNotFoundException}
63
63
  # * {ServerException}
64
+ # * {SigningConfigurationNotFoundException}
64
65
  # * {TemplateAlreadyExistsException}
65
66
  # * {TemplateNotFoundException}
66
67
  # * {TooManyTagsException}
@@ -614,6 +615,21 @@ module Aws::ECR
614
615
  end
615
616
  end
616
617
 
618
+ class SigningConfigurationNotFoundException < ServiceError
619
+
620
+ # @param [Seahorse::Client::RequestContext] context
621
+ # @param [String] message
622
+ # @param [Aws::ECR::Types::SigningConfigurationNotFoundException] data
623
+ def initialize(context, message, data = Aws::EmptyStructure.new)
624
+ super(context, message, data)
625
+ end
626
+
627
+ # @return [String]
628
+ def message
629
+ @message || @data[:message]
630
+ end
631
+ end
632
+
617
633
  class TemplateAlreadyExistsException < ServiceError
618
634
 
619
635
  # @param [Seahorse::Client::RequestContext] context
@@ -555,8 +555,9 @@ module Aws::ECR
555
555
  #
556
556
  # @!attribute [rw] applied_for
557
557
  # A list of enumerable strings representing the Amazon ECR repository
558
- # creation scenarios that this template will apply towards. The two
559
- # supported scenarios are `PULL_THROUGH_CACHE` and `REPLICATION`
558
+ # creation scenarios that this template will apply towards. The
559
+ # supported scenarios are `PULL_THROUGH_CACHE`, `REPLICATION`, and
560
+ # `CREATE_ON_PUSH`
560
561
  # @return [Array<String>]
561
562
  #
562
563
  # @!attribute [rw] custom_role_arn
@@ -1009,6 +1010,29 @@ module Aws::ECR
1009
1010
  include Aws::Structure
1010
1011
  end
1011
1012
 
1013
+ # @api private
1014
+ #
1015
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DeleteSigningConfigurationRequest AWS API Documentation
1016
+ #
1017
+ class DeleteSigningConfigurationRequest < Aws::EmptyStructure; end
1018
+
1019
+ # @!attribute [rw] registry_id
1020
+ # The Amazon Web Services account ID associated with the registry.
1021
+ # @return [String]
1022
+ #
1023
+ # @!attribute [rw] signing_configuration
1024
+ # The registry's deleted signing configuration.
1025
+ # @return [Types::SigningConfiguration]
1026
+ #
1027
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DeleteSigningConfigurationResponse AWS API Documentation
1028
+ #
1029
+ class DeleteSigningConfigurationResponse < Struct.new(
1030
+ :registry_id,
1031
+ :signing_configuration)
1032
+ SENSITIVE = []
1033
+ include Aws::Structure
1034
+ end
1035
+
1012
1036
  # @!attribute [rw] principal_arn
1013
1037
  # The ARN of the IAM principal to remove from the pull time update
1014
1038
  # exclusion list.
@@ -1175,6 +1199,58 @@ module Aws::ECR
1175
1199
  include Aws::Structure
1176
1200
  end
1177
1201
 
1202
+ # @!attribute [rw] repository_name
1203
+ # The name of the repository that contains the image.
1204
+ # @return [String]
1205
+ #
1206
+ # @!attribute [rw] image_id
1207
+ # An object containing identifying information for an image.
1208
+ # @return [Types::ImageIdentifier]
1209
+ #
1210
+ # @!attribute [rw] registry_id
1211
+ # The Amazon Web Services account ID associated with the registry that
1212
+ # contains the repository. If you do not specify a registry, the
1213
+ # default registry is assumed.
1214
+ # @return [String]
1215
+ #
1216
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DescribeImageSigningStatusRequest AWS API Documentation
1217
+ #
1218
+ class DescribeImageSigningStatusRequest < Struct.new(
1219
+ :repository_name,
1220
+ :image_id,
1221
+ :registry_id)
1222
+ SENSITIVE = []
1223
+ include Aws::Structure
1224
+ end
1225
+
1226
+ # @!attribute [rw] repository_name
1227
+ # The name of the repository.
1228
+ # @return [String]
1229
+ #
1230
+ # @!attribute [rw] image_id
1231
+ # An object with identifying information for the image.
1232
+ # @return [Types::ImageIdentifier]
1233
+ #
1234
+ # @!attribute [rw] registry_id
1235
+ # The Amazon Web Services account ID associated with the registry.
1236
+ # @return [String]
1237
+ #
1238
+ # @!attribute [rw] signing_statuses
1239
+ # A list of signing statuses for the specified image. Each status
1240
+ # corresponds to a signing profile.
1241
+ # @return [Array<Types::ImageSigningStatus>]
1242
+ #
1243
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DescribeImageSigningStatusResponse AWS API Documentation
1244
+ #
1245
+ class DescribeImageSigningStatusResponse < Struct.new(
1246
+ :repository_name,
1247
+ :image_id,
1248
+ :registry_id,
1249
+ :signing_statuses)
1250
+ SENSITIVE = []
1251
+ include Aws::Structure
1252
+ end
1253
+
1178
1254
  # An object representing a filter on a DescribeImages operation.
1179
1255
  #
1180
1256
  # @!attribute [rw] tag_status
@@ -2101,6 +2177,29 @@ module Aws::ECR
2101
2177
  include Aws::Structure
2102
2178
  end
2103
2179
 
2180
+ # @api private
2181
+ #
2182
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/GetSigningConfigurationRequest AWS API Documentation
2183
+ #
2184
+ class GetSigningConfigurationRequest < Aws::EmptyStructure; end
2185
+
2186
+ # @!attribute [rw] registry_id
2187
+ # The Amazon Web Services account ID associated with the registry.
2188
+ # @return [String]
2189
+ #
2190
+ # @!attribute [rw] signing_configuration
2191
+ # The registry's signing configuration.
2192
+ # @return [Types::SigningConfiguration]
2193
+ #
2194
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/GetSigningConfigurationResponse AWS API Documentation
2195
+ #
2196
+ class GetSigningConfigurationResponse < Struct.new(
2197
+ :registry_id,
2198
+ :signing_configuration)
2199
+ SENSITIVE = []
2200
+ include Aws::Structure
2201
+ end
2202
+
2104
2203
  # An object representing an Amazon ECR image.
2105
2204
  #
2106
2205
  # @!attribute [rw] registry_id
@@ -2553,6 +2652,45 @@ module Aws::ECR
2553
2652
  include Aws::Structure
2554
2653
  end
2555
2654
 
2655
+ # The signing status for an image. Each status corresponds to a signing
2656
+ # profile.
2657
+ #
2658
+ # @!attribute [rw] signing_profile_arn
2659
+ # The ARN of the Amazon Web Services Signer signing profile used to
2660
+ # sign the image.
2661
+ # @return [String]
2662
+ #
2663
+ # @!attribute [rw] failure_code
2664
+ # The failure code, which is only present if `status` is `FAILED`.
2665
+ # @return [String]
2666
+ #
2667
+ # @!attribute [rw] failure_reason
2668
+ # A description of why signing the image failed. This field is only
2669
+ # present if `status` is `FAILED`.
2670
+ # @return [String]
2671
+ #
2672
+ # @!attribute [rw] status
2673
+ # The image's signing status. Possible values are:
2674
+ #
2675
+ # * `IN_PROGRESS` - Signing is currently in progress.
2676
+ #
2677
+ # * `COMPLETE` - The signature was successfully generated.
2678
+ #
2679
+ # * `FAILED` - Signing failed. See `failureCode` and `failureReason`
2680
+ # for details.
2681
+ # @return [String]
2682
+ #
2683
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/ImageSigningStatus AWS API Documentation
2684
+ #
2685
+ class ImageSigningStatus < Struct.new(
2686
+ :signing_profile_arn,
2687
+ :failure_code,
2688
+ :failure_reason,
2689
+ :status)
2690
+ SENSITIVE = []
2691
+ include Aws::Structure
2692
+ end
2693
+
2556
2694
  # The requested image storage class update is not supported.
2557
2695
  #
2558
2696
  # @!attribute [rw] message
@@ -3794,6 +3932,30 @@ module Aws::ECR
3794
3932
  include Aws::Structure
3795
3933
  end
3796
3934
 
3935
+ # @!attribute [rw] signing_configuration
3936
+ # The signing configuration to assign to the registry.
3937
+ # @return [Types::SigningConfiguration]
3938
+ #
3939
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/PutSigningConfigurationRequest AWS API Documentation
3940
+ #
3941
+ class PutSigningConfigurationRequest < Struct.new(
3942
+ :signing_configuration)
3943
+ SENSITIVE = []
3944
+ include Aws::Structure
3945
+ end
3946
+
3947
+ # @!attribute [rw] signing_configuration
3948
+ # The registry's updated signing configuration.
3949
+ # @return [Types::SigningConfiguration]
3950
+ #
3951
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/PutSigningConfigurationResponse AWS API Documentation
3952
+ #
3953
+ class PutSigningConfigurationResponse < Struct.new(
3954
+ :signing_configuration)
3955
+ SENSITIVE = []
3956
+ include Aws::Structure
3957
+ end
3958
+
3797
3959
  # Details about the recommended course of action to remediate the
3798
3960
  # finding.
3799
3961
  #
@@ -4120,8 +4282,9 @@ module Aws::ECR
4120
4282
  #
4121
4283
  # @!attribute [rw] applied_for
4122
4284
  # A list of enumerable Strings representing the repository creation
4123
- # scenarios that this template will apply towards. The two supported
4124
- # scenarios are PULL\_THROUGH\_CACHE and REPLICATION
4285
+ # scenarios that this template will apply towards. The supported
4286
+ # scenarios are PULL\_THROUGH\_CACHE, REPLICATION, and
4287
+ # CREATE\_ON\_PUSH
4125
4288
  # @return [Array<String>]
4126
4289
  #
4127
4290
  # @!attribute [rw] custom_role_arn
@@ -4481,6 +4644,103 @@ module Aws::ECR
4481
4644
  include Aws::Structure
4482
4645
  end
4483
4646
 
4647
+ # The signing configuration for a registry, which specifies rules for
4648
+ # automatically signing images when pushed.
4649
+ #
4650
+ # @!attribute [rw] rules
4651
+ # A list of signing rules. Each rule defines a signing profile and
4652
+ # optional repository filters that determine which images are
4653
+ # automatically signed. Maximum of 10 rules.
4654
+ # @return [Array<Types::SigningRule>]
4655
+ #
4656
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/SigningConfiguration AWS API Documentation
4657
+ #
4658
+ class SigningConfiguration < Struct.new(
4659
+ :rules)
4660
+ SENSITIVE = []
4661
+ include Aws::Structure
4662
+ end
4663
+
4664
+ # The specified signing configuration was not found. This occurs when
4665
+ # attempting to retrieve or delete a signing configuration that does not
4666
+ # exist.
4667
+ #
4668
+ # @!attribute [rw] message
4669
+ # The error message associated with the exception.
4670
+ # @return [String]
4671
+ #
4672
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/SigningConfigurationNotFoundException AWS API Documentation
4673
+ #
4674
+ class SigningConfigurationNotFoundException < Struct.new(
4675
+ :message)
4676
+ SENSITIVE = []
4677
+ include Aws::Structure
4678
+ end
4679
+
4680
+ # A repository filter used to determine which repositories have their
4681
+ # images automatically signed on push. Each filter consists of a filter
4682
+ # type and filter value.
4683
+ #
4684
+ # @!attribute [rw] filter
4685
+ # The filter value used to match repository names. When using
4686
+ # `WILDCARD_MATCH`, the `*` character matches any sequence of
4687
+ # characters.
4688
+ #
4689
+ # Examples:
4690
+ #
4691
+ # * `myapp/*` - Matches all repositories starting with `myapp/`
4692
+ #
4693
+ # * `*/production` - Matches all repositories ending with
4694
+ # `/production`
4695
+ #
4696
+ # * `*prod*` - Matches all repositories containing `prod`
4697
+ # @return [String]
4698
+ #
4699
+ # @!attribute [rw] filter_type
4700
+ # The type of filter to apply. Currently, only `WILDCARD_MATCH` is
4701
+ # supported, which uses wildcard patterns to match repository names.
4702
+ # @return [String]
4703
+ #
4704
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/SigningRepositoryFilter AWS API Documentation
4705
+ #
4706
+ class SigningRepositoryFilter < Struct.new(
4707
+ :filter,
4708
+ :filter_type)
4709
+ SENSITIVE = []
4710
+ include Aws::Structure
4711
+ end
4712
+
4713
+ # A signing rule that specifies a signing profile and optional
4714
+ # repository filters. When an image is pushed to a matching repository,
4715
+ # a signing job is created using the specified profile.
4716
+ #
4717
+ # @!attribute [rw] signing_profile_arn
4718
+ # The ARN of the Amazon Web Services Signer signing profile to use for
4719
+ # signing images that match this rule. For more information about
4720
+ # signing profiles, see [Signing profiles][1] in the *Amazon Web
4721
+ # Services Signer Developer Guide*.
4722
+ #
4723
+ #
4724
+ #
4725
+ # [1]: https://docs.aws.amazon.com/signer/latest/developerguide/signing-profiles.html
4726
+ # @return [String]
4727
+ #
4728
+ # @!attribute [rw] repository_filters
4729
+ # A list of repository filters that determine which repositories have
4730
+ # their images signed on push. If no filters are specified, all images
4731
+ # pushed to the registry are signed using the rule's signing profile.
4732
+ # Maximum of 100 filters per rule.
4733
+ # @return [Array<Types::SigningRepositoryFilter>]
4734
+ #
4735
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/SigningRule AWS API Documentation
4736
+ #
4737
+ class SigningRule < Struct.new(
4738
+ :signing_profile_arn,
4739
+ :repository_filters)
4740
+ SENSITIVE = []
4741
+ include Aws::Structure
4742
+ end
4743
+
4484
4744
  # @!attribute [rw] registry_id
4485
4745
  # The Amazon Web Services account ID associated with the registry that
4486
4746
  # contains the repository in which to start an image scan request. If
@@ -5012,8 +5272,8 @@ module Aws::ECR
5012
5272
  # @!attribute [rw] applied_for
5013
5273
  # Updates the list of enumerable strings representing the Amazon ECR
5014
5274
  # repository creation scenarios that this template will apply towards.
5015
- # The two supported scenarios are `PULL_THROUGH_CACHE` and
5016
- # `REPLICATION`
5275
+ # The supported scenarios are `PULL_THROUGH_CACHE`, `REPLICATION`, and
5276
+ # `CREATE_ON_PUSH`
5017
5277
  # @return [Array<String>]
5018
5278
  #
5019
5279
  # @!attribute [rw] custom_role_arn
data/lib/aws-sdk-ecr.rb CHANGED
@@ -55,7 +55,7 @@ module Aws::ECR
55
55
  autoload :EndpointProvider, 'aws-sdk-ecr/endpoint_provider'
56
56
  autoload :Endpoints, 'aws-sdk-ecr/endpoints'
57
57
 
58
- GEM_VERSION = '1.114.0'
58
+ GEM_VERSION = '1.116.0'
59
59
 
60
60
  end
61
61
 
data/sig/client.rbs CHANGED
@@ -238,7 +238,7 @@ module Aws
238
238
  ],
239
239
  ?repository_policy: ::String,
240
240
  ?lifecycle_policy: ::String,
241
- applied_for: Array[("REPLICATION" | "PULL_THROUGH_CACHE")],
241
+ applied_for: Array[("REPLICATION" | "PULL_THROUGH_CACHE" | "CREATE_ON_PUSH")],
242
242
  ?custom_role_arn: ::String
243
243
  ) -> _CreateRepositoryCreationTemplateResponseSuccess
244
244
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _CreateRepositoryCreationTemplateResponseSuccess
@@ -320,6 +320,16 @@ module Aws
320
320
  ) -> _DeleteRepositoryPolicyResponseSuccess
321
321
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DeleteRepositoryPolicyResponseSuccess
322
322
 
323
+ interface _DeleteSigningConfigurationResponseSuccess
324
+ include ::Seahorse::Client::_ResponseSuccess[Types::DeleteSigningConfigurationResponse]
325
+ def registry_id: () -> ::String
326
+ def signing_configuration: () -> Types::SigningConfiguration
327
+ end
328
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ECR/Client.html#delete_signing_configuration-instance_method
329
+ def delete_signing_configuration: (
330
+ ) -> _DeleteSigningConfigurationResponseSuccess
331
+ | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DeleteSigningConfigurationResponseSuccess
332
+
323
333
  interface _DeregisterPullTimeUpdateExclusionResponseSuccess
324
334
  include ::Seahorse::Client::_ResponseSuccess[Types::DeregisterPullTimeUpdateExclusionResponse]
325
335
  def principal_arn: () -> ::String
@@ -369,6 +379,24 @@ module Aws
369
379
  ) -> _DescribeImageScanFindingsResponseSuccess
370
380
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeImageScanFindingsResponseSuccess
371
381
 
382
+ interface _DescribeImageSigningStatusResponseSuccess
383
+ include ::Seahorse::Client::_ResponseSuccess[Types::DescribeImageSigningStatusResponse]
384
+ def repository_name: () -> ::String
385
+ def image_id: () -> Types::ImageIdentifier
386
+ def registry_id: () -> ::String
387
+ def signing_statuses: () -> ::Array[Types::ImageSigningStatus]
388
+ end
389
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ECR/Client.html#describe_image_signing_status-instance_method
390
+ def describe_image_signing_status: (
391
+ repository_name: ::String,
392
+ image_id: {
393
+ image_digest: ::String?,
394
+ image_tag: ::String?
395
+ },
396
+ ?registry_id: ::String
397
+ ) -> _DescribeImageSigningStatusResponseSuccess
398
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _DescribeImageSigningStatusResponseSuccess
399
+
372
400
  interface _DescribeImagesResponseSuccess
373
401
  include ::Seahorse::Client::_ResponseSuccess[Types::DescribeImagesResponse]
374
402
  def image_details: () -> ::Array[Types::ImageDetail]
@@ -554,6 +582,16 @@ module Aws
554
582
  ) -> _GetRepositoryPolicyResponseSuccess
555
583
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetRepositoryPolicyResponseSuccess
556
584
 
585
+ interface _GetSigningConfigurationResponseSuccess
586
+ include ::Seahorse::Client::_ResponseSuccess[Types::GetSigningConfigurationResponse]
587
+ def registry_id: () -> ::String
588
+ def signing_configuration: () -> Types::SigningConfiguration
589
+ end
590
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ECR/Client.html#get_signing_configuration-instance_method
591
+ def get_signing_configuration: (
592
+ ) -> _GetSigningConfigurationResponseSuccess
593
+ | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetSigningConfigurationResponseSuccess
594
+
557
595
  interface _InitiateLayerUploadResponseSuccess
558
596
  include ::Seahorse::Client::_ResponseSuccess[Types::InitiateLayerUploadResponse]
559
597
  def upload_id: () -> ::String
@@ -764,6 +802,28 @@ module Aws
764
802
  ) -> _PutReplicationConfigurationResponseSuccess
765
803
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _PutReplicationConfigurationResponseSuccess
766
804
 
805
+ interface _PutSigningConfigurationResponseSuccess
806
+ include ::Seahorse::Client::_ResponseSuccess[Types::PutSigningConfigurationResponse]
807
+ def signing_configuration: () -> Types::SigningConfiguration
808
+ end
809
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/ECR/Client.html#put_signing_configuration-instance_method
810
+ def put_signing_configuration: (
811
+ signing_configuration: {
812
+ rules: Array[
813
+ {
814
+ signing_profile_arn: ::String,
815
+ repository_filters: Array[
816
+ {
817
+ filter: ::String,
818
+ filter_type: ("WILDCARD_MATCH")
819
+ },
820
+ ]?
821
+ },
822
+ ]
823
+ }
824
+ ) -> _PutSigningConfigurationResponseSuccess
825
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _PutSigningConfigurationResponseSuccess
826
+
767
827
  interface _RegisterPullTimeUpdateExclusionResponseSuccess
768
828
  include ::Seahorse::Client::_ResponseSuccess[Types::RegisterPullTimeUpdateExclusionResponse]
769
829
  def principal_arn: () -> ::String
@@ -913,7 +973,7 @@ module Aws
913
973
  ],
914
974
  ?repository_policy: ::String,
915
975
  ?lifecycle_policy: ::String,
916
- ?applied_for: Array[("REPLICATION" | "PULL_THROUGH_CACHE")],
976
+ ?applied_for: Array[("REPLICATION" | "PULL_THROUGH_CACHE" | "CREATE_ON_PUSH")],
917
977
  ?custom_role_arn: ::String
918
978
  ) -> _UpdateRepositoryCreationTemplateResponseSuccess
919
979
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _UpdateRepositoryCreationTemplateResponseSuccess
data/sig/errors.rbs CHANGED
@@ -118,6 +118,9 @@ module Aws
118
118
  class ServerException < ::Aws::Errors::ServiceError
119
119
  def message: () -> ::String
120
120
  end
121
+ class SigningConfigurationNotFoundException < ::Aws::Errors::ServiceError
122
+ def message: () -> ::String
123
+ end
121
124
  class TemplateAlreadyExistsException < ::Aws::Errors::ServiceError
122
125
  def message: () -> ::String
123
126
  end
data/sig/types.rbs CHANGED
@@ -139,7 +139,7 @@ module Aws::ECR
139
139
  attr_accessor image_tag_mutability_exclusion_filters: ::Array[Types::ImageTagMutabilityExclusionFilter]
140
140
  attr_accessor repository_policy: ::String
141
141
  attr_accessor lifecycle_policy: ::String
142
- attr_accessor applied_for: ::Array[("REPLICATION" | "PULL_THROUGH_CACHE")]
142
+ attr_accessor applied_for: ::Array[("REPLICATION" | "PULL_THROUGH_CACHE" | "CREATE_ON_PUSH")]
143
143
  attr_accessor custom_role_arn: ::String
144
144
  SENSITIVE: []
145
145
  end
@@ -265,6 +265,15 @@ module Aws::ECR
265
265
  SENSITIVE: []
266
266
  end
267
267
 
268
+ class DeleteSigningConfigurationRequest < Aws::EmptyStructure
269
+ end
270
+
271
+ class DeleteSigningConfigurationResponse
272
+ attr_accessor registry_id: ::String
273
+ attr_accessor signing_configuration: Types::SigningConfiguration
274
+ SENSITIVE: []
275
+ end
276
+
268
277
  class DeregisterPullTimeUpdateExclusionRequest
269
278
  attr_accessor principal_arn: ::String
270
279
  SENSITIVE: []
@@ -308,6 +317,21 @@ module Aws::ECR
308
317
  SENSITIVE: []
309
318
  end
310
319
 
320
+ class DescribeImageSigningStatusRequest
321
+ attr_accessor repository_name: ::String
322
+ attr_accessor image_id: Types::ImageIdentifier
323
+ attr_accessor registry_id: ::String
324
+ SENSITIVE: []
325
+ end
326
+
327
+ class DescribeImageSigningStatusResponse
328
+ attr_accessor repository_name: ::String
329
+ attr_accessor image_id: Types::ImageIdentifier
330
+ attr_accessor registry_id: ::String
331
+ attr_accessor signing_statuses: ::Array[Types::ImageSigningStatus]
332
+ SENSITIVE: []
333
+ end
334
+
311
335
  class DescribeImagesFilter
312
336
  attr_accessor tag_status: ("TAGGED" | "UNTAGGED" | "ANY")
313
337
  attr_accessor image_status: ("ACTIVE" | "ARCHIVED" | "ACTIVATING" | "ANY")
@@ -529,6 +553,15 @@ module Aws::ECR
529
553
  SENSITIVE: []
530
554
  end
531
555
 
556
+ class GetSigningConfigurationRequest < Aws::EmptyStructure
557
+ end
558
+
559
+ class GetSigningConfigurationResponse
560
+ attr_accessor registry_id: ::String
561
+ attr_accessor signing_configuration: Types::SigningConfiguration
562
+ SENSITIVE: []
563
+ end
564
+
532
565
  class Image
533
566
  attr_accessor registry_id: ::String
534
567
  attr_accessor repository_name: ::String
@@ -644,6 +677,14 @@ module Aws::ECR
644
677
  SENSITIVE: []
645
678
  end
646
679
 
680
+ class ImageSigningStatus
681
+ attr_accessor signing_profile_arn: ::String
682
+ attr_accessor failure_code: ::String
683
+ attr_accessor failure_reason: ::String
684
+ attr_accessor status: ("IN_PROGRESS" | "COMPLETE" | "FAILED")
685
+ SENSITIVE: []
686
+ end
687
+
647
688
  class ImageStorageClassUpdateNotSupportedException
648
689
  attr_accessor message: ::String
649
690
  SENSITIVE: []
@@ -989,6 +1030,16 @@ module Aws::ECR
989
1030
  SENSITIVE: []
990
1031
  end
991
1032
 
1033
+ class PutSigningConfigurationRequest
1034
+ attr_accessor signing_configuration: Types::SigningConfiguration
1035
+ SENSITIVE: []
1036
+ end
1037
+
1038
+ class PutSigningConfigurationResponse
1039
+ attr_accessor signing_configuration: Types::SigningConfiguration
1040
+ SENSITIVE: []
1041
+ end
1042
+
992
1043
  class Recommendation
993
1044
  attr_accessor url: ::String
994
1045
  attr_accessor text: ::String
@@ -1077,7 +1128,7 @@ module Aws::ECR
1077
1128
  attr_accessor image_tag_mutability_exclusion_filters: ::Array[Types::ImageTagMutabilityExclusionFilter]
1078
1129
  attr_accessor repository_policy: ::String
1079
1130
  attr_accessor lifecycle_policy: ::String
1080
- attr_accessor applied_for: ::Array[("REPLICATION" | "PULL_THROUGH_CACHE")]
1131
+ attr_accessor applied_for: ::Array[("REPLICATION" | "PULL_THROUGH_CACHE" | "CREATE_ON_PUSH")]
1081
1132
  attr_accessor custom_role_arn: ::String
1082
1133
  attr_accessor created_at: ::Time
1083
1134
  attr_accessor updated_at: ::Time
@@ -1175,6 +1226,28 @@ module Aws::ECR
1175
1226
  SENSITIVE: []
1176
1227
  end
1177
1228
 
1229
+ class SigningConfiguration
1230
+ attr_accessor rules: ::Array[Types::SigningRule]
1231
+ SENSITIVE: []
1232
+ end
1233
+
1234
+ class SigningConfigurationNotFoundException
1235
+ attr_accessor message: ::String
1236
+ SENSITIVE: []
1237
+ end
1238
+
1239
+ class SigningRepositoryFilter
1240
+ attr_accessor filter: ::String
1241
+ attr_accessor filter_type: ("WILDCARD_MATCH")
1242
+ SENSITIVE: []
1243
+ end
1244
+
1245
+ class SigningRule
1246
+ attr_accessor signing_profile_arn: ::String
1247
+ attr_accessor repository_filters: ::Array[Types::SigningRepositoryFilter]
1248
+ SENSITIVE: []
1249
+ end
1250
+
1178
1251
  class StartImageScanRequest
1179
1252
  attr_accessor registry_id: ::String
1180
1253
  attr_accessor repository_name: ::String
@@ -1328,7 +1401,7 @@ module Aws::ECR
1328
1401
  attr_accessor image_tag_mutability_exclusion_filters: ::Array[Types::ImageTagMutabilityExclusionFilter]
1329
1402
  attr_accessor repository_policy: ::String
1330
1403
  attr_accessor lifecycle_policy: ::String
1331
- attr_accessor applied_for: ::Array[("REPLICATION" | "PULL_THROUGH_CACHE")]
1404
+ attr_accessor applied_for: ::Array[("REPLICATION" | "PULL_THROUGH_CACHE" | "CREATE_ON_PUSH")]
1332
1405
  attr_accessor custom_role_arn: ::String
1333
1406
  SENSITIVE: []
1334
1407
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ecr
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.114.0
4
+ version: 1.116.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
@@ -18,7 +18,7 @@ dependencies:
18
18
  version: '3'
19
19
  - - ">="
20
20
  - !ruby/object:Gem::Version
21
- version: 3.234.0
21
+ version: 3.239.1
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
@@ -28,7 +28,7 @@ dependencies:
28
28
  version: '3'
29
29
  - - ">="
30
30
  - !ruby/object:Gem::Version
31
- version: 3.234.0
31
+ version: 3.239.1
32
32
  - !ruby/object:Gem::Dependency
33
33
  name: aws-sigv4
34
34
  requirement: !ruby/object:Gem::Requirement