aws-sdk-ecr 1.1.0 → 1.2.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
  SHA1:
3
- metadata.gz: d9e4906782c59ec65e23d90dd7b61d7da7b6193a
4
- data.tar.gz: 3d9ff36b7feb0f30cc3f82afe5d71163b3e7c105
3
+ metadata.gz: c394189fba86fe6f7c8426bb9957c1356c74b031
4
+ data.tar.gz: c9d0113edea5fd62801ac5a681cae50d5c92dd5e
5
5
  SHA512:
6
- metadata.gz: 7ff5b49f75c6bb956b8ac46adf7538aceacb0d2b31ee7a67c1fe1becdaf9b7cd84bfbee99151509ba43451dc3a1a9657c2d325f12230be6afd10df8fcc1db23e
7
- data.tar.gz: 193ceab848b0a5a9afe123844ca32eab671f2960ffbd179e31f840ba9bcb1a4da509f79f6c3be209a9909c87269b9e336d1d4b732bd9ca66194ba4085ea93b3c
6
+ metadata.gz: 2bec6dab43c1ce8ca64eae0d394ebad7c18d9616c7d01cfe629c5a2d43543ad9a0bbf3bc77e37256d7238e8054fd35ca7390035622094f031fa4df7fc5019bea
7
+ data.tar.gz: 2154371dd8cfb2bd372029c42fb0f1013464d62682512943d049eadc9a8a472473e5ad4b6d773bc592c6f0647db526c5a81d75aec7a3ad75eb717948cd70615a
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-ecr/customizations'
42
42
  # @service
43
43
  module Aws::ECR
44
44
 
45
- GEM_VERSION = '1.1.0'
45
+ GEM_VERSION = '1.2.0'
46
46
 
47
47
  end
@@ -396,10 +396,10 @@ module Aws::ECR
396
396
  req.send_request(options)
397
397
  end
398
398
 
399
- # Inform Amazon ECR that the image layer upload for a specified
400
- # registry, repository name, and upload ID, has completed. You can
401
- # optionally provide a `sha256` digest of the image layer for data
402
- # validation purposes.
399
+ # Informs Amazon ECR that the image layer upload has completed for a
400
+ # specified registry, repository name, and upload ID. You can optionally
401
+ # provide a `sha256` digest of the image layer for data validation
402
+ # purposes.
403
403
  #
404
404
  # <note markdown="1"> This operation is used by the Amazon ECR proxy, and it is not intended
405
405
  # for general use by customers for pulling and pushing images. In most
@@ -508,6 +508,47 @@ module Aws::ECR
508
508
  req.send_request(options)
509
509
  end
510
510
 
511
+ # Deletes the specified lifecycle policy.
512
+ #
513
+ # @option params [String] :registry_id
514
+ # The AWS account ID associated with the registry that contains the
515
+ # repository. If you do not specify a registry, the default registry is
516
+ # assumed.
517
+ #
518
+ # @option params [required, String] :repository_name
519
+ # The name of the repository that is associated with the repository
520
+ # policy to
 delete.
521
+ #
522
+ # @return [Types::DeleteLifecyclePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
523
+ #
524
+ # * {Types::DeleteLifecyclePolicyResponse#registry_id #registry_id} => String
525
+ # * {Types::DeleteLifecyclePolicyResponse#repository_name #repository_name} => String
526
+ # * {Types::DeleteLifecyclePolicyResponse#lifecycle_policy_text #lifecycle_policy_text} => String
527
+ # * {Types::DeleteLifecyclePolicyResponse#last_evaluated_at #last_evaluated_at} => Time
528
+ #
529
+ # @example Request syntax with placeholder values
530
+ #
531
+ # resp = client.delete_lifecycle_policy({
532
+ # registry_id: "RegistryId",
533
+ # repository_name: "RepositoryName", # required
534
+ # })
535
+ #
536
+ # @example Response structure
537
+ #
538
+ # resp.registry_id #=> String
539
+ # resp.repository_name #=> String
540
+ # resp.lifecycle_policy_text #=> String
541
+ # resp.last_evaluated_at #=> Time
542
+ #
543
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DeleteLifecyclePolicy AWS API Documentation
544
+ #
545
+ # @overload delete_lifecycle_policy(params = {})
546
+ # @param [Hash] params ({})
547
+ def delete_lifecycle_policy(params = {}, options = {})
548
+ req = build_request(:delete_lifecycle_policy, params)
549
+ req.send_request(options)
550
+ end
551
+
511
552
  # Deletes an existing image repository. If a repository contains images,
512
553
  # you must use the `force` option to delete it.
513
554
  #
@@ -520,7 +561,7 @@ module Aws::ECR
520
561
  # The name of the repository to delete.
521
562
  #
522
563
  # @option params [Boolean] :force
523
- # Force the deletion of the repository if it contains images.
564
+ # If a repository contains images, forces the deletion.
524
565
  #
525
566
  # @return [Types::DeleteRepositoryResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
526
567
  #
@@ -916,6 +957,137 @@ module Aws::ECR
916
957
  req.send_request(options)
917
958
  end
918
959
 
960
+ # Retrieves the specified lifecycle policy.
961
+ #
962
+ # @option params [String] :registry_id
963
+ # The AWS account ID associated with the registry that contains the
964
+ # repository. If you do not specify a registry, the default registry is
965
+ # assumed.
966
+ #
967
+ # @option params [required, String] :repository_name
968
+ # The name of the repository with the policy to retrieve.
969
+ #
970
+ # @return [Types::GetLifecyclePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
971
+ #
972
+ # * {Types::GetLifecyclePolicyResponse#registry_id #registry_id} => String
973
+ # * {Types::GetLifecyclePolicyResponse#repository_name #repository_name} => String
974
+ # * {Types::GetLifecyclePolicyResponse#lifecycle_policy_text #lifecycle_policy_text} => String
975
+ # * {Types::GetLifecyclePolicyResponse#last_evaluated_at #last_evaluated_at} => Time
976
+ #
977
+ # @example Request syntax with placeholder values
978
+ #
979
+ # resp = client.get_lifecycle_policy({
980
+ # registry_id: "RegistryId",
981
+ # repository_name: "RepositoryName", # required
982
+ # })
983
+ #
984
+ # @example Response structure
985
+ #
986
+ # resp.registry_id #=> String
987
+ # resp.repository_name #=> String
988
+ # resp.lifecycle_policy_text #=> String
989
+ # resp.last_evaluated_at #=> Time
990
+ #
991
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/GetLifecyclePolicy AWS API Documentation
992
+ #
993
+ # @overload get_lifecycle_policy(params = {})
994
+ # @param [Hash] params ({})
995
+ def get_lifecycle_policy(params = {}, options = {})
996
+ req = build_request(:get_lifecycle_policy, params)
997
+ req.send_request(options)
998
+ end
999
+
1000
+ # Retrieves the results of the specified lifecycle policy preview
1001
+ # request.
1002
+ #
1003
+ # @option params [String] :registry_id
1004
+ # The AWS account ID associated with the registry that contains the
1005
+ # repository. If you do not specify a registry, the default registry is
1006
+ # assumed.
1007
+ #
1008
+ # @option params [required, String] :repository_name
1009
+ # The name of the repository with the policy to retrieve.
1010
+ #
1011
+ # @option params [Array<Types::ImageIdentifier>] :image_ids
1012
+ # The list of imageIDs to be included.
1013
+ #
1014
+ # @option params [String] :next_token
1015
+ # The `nextToken` value returned from a previous paginated

1016
+ # `GetLifecyclePolicyPreviewRequest` request where `maxResults` was used
1017
+ # and the
 results exceeded the value of that parameter. Pagination
1018
+ # continues from the end of the
 previous results that returned the
1019
+ # `nextToken` value. This value is
 `null` when there are no more
1020
+ # results to return.
1021
+ #
1022
+ # @option params [Integer] :max_results
1023
+ # The maximum number of repository results returned by
1024
+ # `GetLifecyclePolicyPreviewRequest` in
 paginated output. When this
1025
+ # parameter is used, `GetLifecyclePolicyPreviewRequest` only returns

1026
+ # `maxResults` results in a single page along with a `nextToken`

1027
+ # response element. The remaining results of the initial request can be
1028
+ # seen by sending
 another `GetLifecyclePolicyPreviewRequest` request
1029
+ # with the returned `nextToken`
 value. This value can be between 1 and
1030
+ # 100. If this
 parameter is not used, then
1031
+ # `GetLifecyclePolicyPreviewRequest` returns up to
 100 results and a
1032
+ # `nextToken` value, if
 applicable.
1033
+ #
1034
+ # @option params [Types::LifecyclePolicyPreviewFilter] :filter
1035
+ # An optional parameter that filters results based on image tag status
1036
+ # and all tags, if tagged.
1037
+ #
1038
+ # @return [Types::GetLifecyclePolicyPreviewResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1039
+ #
1040
+ # * {Types::GetLifecyclePolicyPreviewResponse#registry_id #registry_id} => String
1041
+ # * {Types::GetLifecyclePolicyPreviewResponse#repository_name #repository_name} => String
1042
+ # * {Types::GetLifecyclePolicyPreviewResponse#lifecycle_policy_text #lifecycle_policy_text} => String
1043
+ # * {Types::GetLifecyclePolicyPreviewResponse#status #status} => String
1044
+ # * {Types::GetLifecyclePolicyPreviewResponse#next_token #next_token} => String
1045
+ # * {Types::GetLifecyclePolicyPreviewResponse#preview_results #preview_results} => Array&lt;Types::LifecyclePolicyPreviewResult&gt;
1046
+ # * {Types::GetLifecyclePolicyPreviewResponse#summary #summary} => Types::LifecyclePolicyPreviewSummary
1047
+ #
1048
+ # @example Request syntax with placeholder values
1049
+ #
1050
+ # resp = client.get_lifecycle_policy_preview({
1051
+ # registry_id: "RegistryId",
1052
+ # repository_name: "RepositoryName", # required
1053
+ # image_ids: [
1054
+ # {
1055
+ # image_digest: "ImageDigest",
1056
+ # image_tag: "ImageTag",
1057
+ # },
1058
+ # ],
1059
+ # next_token: "NextToken",
1060
+ # max_results: 1,
1061
+ # filter: {
1062
+ # tag_status: "TAGGED", # accepts TAGGED, UNTAGGED
1063
+ # },
1064
+ # })
1065
+ #
1066
+ # @example Response structure
1067
+ #
1068
+ # resp.registry_id #=> String
1069
+ # resp.repository_name #=> String
1070
+ # resp.lifecycle_policy_text #=> String
1071
+ # resp.status #=> String, one of "IN_PROGRESS", "COMPLETE", "EXPIRED", "FAILED"
1072
+ # resp.next_token #=> String
1073
+ # resp.preview_results #=> Array
1074
+ # resp.preview_results[0].image_tags #=> Array
1075
+ # resp.preview_results[0].image_tags[0] #=> String
1076
+ # resp.preview_results[0].image_digest #=> String
1077
+ # resp.preview_results[0].image_pushed_at #=> Time
1078
+ # resp.preview_results[0].action.type #=> String, one of "EXPIRE"
1079
+ # resp.preview_results[0].applied_rule_priority #=> Integer
1080
+ # resp.summary.expiring_image_total_count #=> Integer
1081
+ #
1082
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/GetLifecyclePolicyPreview AWS API Documentation
1083
+ #
1084
+ # @overload get_lifecycle_policy_preview(params = {})
1085
+ # @param [Hash] params ({})
1086
+ def get_lifecycle_policy_preview(params = {}, options = {})
1087
+ req = build_request(:get_lifecycle_policy_preview, params)
1088
+ req.send_request(options)
1089
+ end
1090
+
919
1091
  # Retrieves the repository policy for a specified repository.
920
1092
  #
921
1093
  # @option params [String] :registry_id
@@ -924,7 +1096,7 @@ module Aws::ECR
924
1096
  # assumed.
925
1097
  #
926
1098
  # @option params [required, String] :repository_name
927
- # The name of the repository whose policy you want to retrieve.
1099
+ # The name of the repository with the policy to retrieve.
928
1100
  #
929
1101
  # @return [Types::GetRepositoryPolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
930
1102
  #
@@ -979,12 +1151,12 @@ module Aws::ECR
979
1151
  # </note>
980
1152
  #
981
1153
  # @option params [String] :registry_id
982
- # The AWS account ID associated with the registry that you intend to
983
- # upload layers to. If you do not specify a registry, the default
984
- # registry is assumed.
1154
+ # The AWS account ID associated with the registry to which you intend to
1155
+ # upload layers. If you do not specify a registry, the default registry
1156
+ # is assumed.
985
1157
  #
986
1158
  # @option params [required, String] :repository_name
987
- # The name of the repository that you intend to upload layers to.
1159
+ # The name of the repository to which you intend to upload layers.
988
1160
  #
989
1161
  # @return [Types::InitiateLayerUploadResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
990
1162
  #
@@ -1023,11 +1195,11 @@ module Aws::ECR
1023
1195
  #
1024
1196
  # @option params [String] :registry_id
1025
1197
  # The AWS account ID associated with the registry that contains the
1026
- # repository to list images in. If you do not specify a registry, the
1027
- # default registry is assumed.
1198
+ # repository in which to list images. If you do not specify a registry,
1199
+ # the default registry is assumed.
1028
1200
  #
1029
1201
  # @option params [required, String] :repository_name
1030
- # The repository whose image IDs are to be listed.
1202
+ # The repository with image IDs to be listed.
1031
1203
  #
1032
1204
  # @option params [String] :next_token
1033
1205
  # The `nextToken` value returned from a previous paginated `ListImages`
@@ -1162,6 +1334,48 @@ module Aws::ECR
1162
1334
  req.send_request(options)
1163
1335
  end
1164
1336
 
1337
+ # Creates or updates a lifecycle policy.
1338
+ #
1339
+ # @option params [String] :registry_id
1340
+ # The AWS account ID associated with the registry that contains the
1341
+ # repository. If you do
 not specify a registry, the default registry is
1342
+ # assumed.
1343
+ #
1344
+ # @option params [required, String] :repository_name
1345
+ # The name of the repository to receive the policy.
1346
+ #
1347
+ # @option params [required, String] :lifecycle_policy_text
1348
+ # The JSON repository policy text to apply to the repository.
1349
+ #
1350
+ # @return [Types::PutLifecyclePolicyResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1351
+ #
1352
+ # * {Types::PutLifecyclePolicyResponse#registry_id #registry_id} => String
1353
+ # * {Types::PutLifecyclePolicyResponse#repository_name #repository_name} => String
1354
+ # * {Types::PutLifecyclePolicyResponse#lifecycle_policy_text #lifecycle_policy_text} => String
1355
+ #
1356
+ # @example Request syntax with placeholder values
1357
+ #
1358
+ # resp = client.put_lifecycle_policy({
1359
+ # registry_id: "RegistryId",
1360
+ # repository_name: "RepositoryName", # required
1361
+ # lifecycle_policy_text: "LifecyclePolicyText", # required
1362
+ # })
1363
+ #
1364
+ # @example Response structure
1365
+ #
1366
+ # resp.registry_id #=> String
1367
+ # resp.repository_name #=> String
1368
+ # resp.lifecycle_policy_text #=> String
1369
+ #
1370
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/PutLifecyclePolicy AWS API Documentation
1371
+ #
1372
+ # @overload put_lifecycle_policy(params = {})
1373
+ # @param [Hash] params ({})
1374
+ def put_lifecycle_policy(params = {}, options = {})
1375
+ req = build_request(:put_lifecycle_policy, params)
1376
+ req.send_request(options)
1377
+ end
1378
+
1165
1379
  # Applies a repository policy on a specified repository to control
1166
1380
  # access permissions.
1167
1381
  #
@@ -1212,6 +1426,52 @@ module Aws::ECR
1212
1426
  req.send_request(options)
1213
1427
  end
1214
1428
 
1429
+ # Starts a preview of the specified lifecycle policy. This allows you to
1430
+ # see the results before creating the lifecycle policy.
1431
+ #
1432
+ # @option params [String] :registry_id
1433
+ # The AWS account ID associated with the registry that contains the
1434
+ # repository. If you do not specify a registry, the default registry is
1435
+ # assumed.
1436
+ #
1437
+ # @option params [required, String] :repository_name
1438
+ # The name of the repository to be evaluated.
1439
+ #
1440
+ # @option params [String] :lifecycle_policy_text
1441
+ # The policy to be evaluated against. If you do not specify a policy,
1442
+ # the current policy for the repository is used.
1443
+ #
1444
+ # @return [Types::StartLifecyclePolicyPreviewResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1445
+ #
1446
+ # * {Types::StartLifecyclePolicyPreviewResponse#registry_id #registry_id} => String
1447
+ # * {Types::StartLifecyclePolicyPreviewResponse#repository_name #repository_name} => String
1448
+ # * {Types::StartLifecyclePolicyPreviewResponse#lifecycle_policy_text #lifecycle_policy_text} => String
1449
+ # * {Types::StartLifecyclePolicyPreviewResponse#status #status} => String
1450
+ #
1451
+ # @example Request syntax with placeholder values
1452
+ #
1453
+ # resp = client.start_lifecycle_policy_preview({
1454
+ # registry_id: "RegistryId",
1455
+ # repository_name: "RepositoryName", # required
1456
+ # lifecycle_policy_text: "LifecyclePolicyText",
1457
+ # })
1458
+ #
1459
+ # @example Response structure
1460
+ #
1461
+ # resp.registry_id #=> String
1462
+ # resp.repository_name #=> String
1463
+ # resp.lifecycle_policy_text #=> String
1464
+ # resp.status #=> String, one of "IN_PROGRESS", "COMPLETE", "EXPIRED", "FAILED"
1465
+ #
1466
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/StartLifecyclePolicyPreview AWS API Documentation
1467
+ #
1468
+ # @overload start_lifecycle_policy_preview(params = {})
1469
+ # @param [Hash] params ({})
1470
+ def start_lifecycle_policy_preview(params = {}, options = {})
1471
+ req = build_request(:start_lifecycle_policy_preview, params)
1472
+ req.send_request(options)
1473
+ end
1474
+
1215
1475
  # Uploads an image layer part to Amazon ECR.
1216
1476
  #
1217
1477
  # <note markdown="1"> This operation is used by the Amazon ECR proxy, and it is not intended
@@ -1221,12 +1481,12 @@ module Aws::ECR
1221
1481
  # </note>
1222
1482
  #
1223
1483
  # @option params [String] :registry_id
1224
- # The AWS account ID associated with the registry that you are uploading
1225
- # layer parts to. If you do not specify a registry, the default registry
1226
- # is assumed.
1484
+ # The AWS account ID associated with the registry to which you are
1485
+ # uploading layer parts. If you do not specify a registry, the default
1486
+ # registry is assumed.
1227
1487
  #
1228
1488
  # @option params [required, String] :repository_name
1229
- # The name of the repository that you are uploading layer parts to.
1489
+ # The name of the repository to which you are uploading layer parts.
1230
1490
  #
1231
1491
  # @option params [required, String] :upload_id
1232
1492
  # The upload ID from a previous InitiateLayerUpload operation to
@@ -1288,7 +1548,7 @@ module Aws::ECR
1288
1548
  params: params,
1289
1549
  config: config)
1290
1550
  context[:gem_name] = 'aws-sdk-ecr'
1291
- context[:gem_version] = '1.1.0'
1551
+ context[:gem_version] = '1.2.0'
1292
1552
  Seahorse::Client::Request.new(handlers, context)
1293
1553
  end
1294
1554
 
@@ -28,6 +28,8 @@ module Aws::ECR
28
28
  CreateRepositoryRequest = Shapes::StructureShape.new(name: 'CreateRepositoryRequest')
29
29
  CreateRepositoryResponse = Shapes::StructureShape.new(name: 'CreateRepositoryResponse')
30
30
  CreationTimestamp = Shapes::TimestampShape.new(name: 'CreationTimestamp')
31
+ DeleteLifecyclePolicyRequest = Shapes::StructureShape.new(name: 'DeleteLifecyclePolicyRequest')
32
+ DeleteLifecyclePolicyResponse = Shapes::StructureShape.new(name: 'DeleteLifecyclePolicyResponse')
31
33
  DeleteRepositoryPolicyRequest = Shapes::StructureShape.new(name: 'DeleteRepositoryPolicyRequest')
32
34
  DeleteRepositoryPolicyResponse = Shapes::StructureShape.new(name: 'DeleteRepositoryPolicyResponse')
33
35
  DeleteRepositoryRequest = Shapes::StructureShape.new(name: 'DeleteRepositoryRequest')
@@ -38,6 +40,7 @@ module Aws::ECR
38
40
  DescribeRepositoriesRequest = Shapes::StructureShape.new(name: 'DescribeRepositoriesRequest')
39
41
  DescribeRepositoriesResponse = Shapes::StructureShape.new(name: 'DescribeRepositoriesResponse')
40
42
  EmptyUploadException = Shapes::StructureShape.new(name: 'EmptyUploadException')
43
+ EvaluationTimestamp = Shapes::TimestampShape.new(name: 'EvaluationTimestamp')
41
44
  ExceptionMessage = Shapes::StringShape.new(name: 'ExceptionMessage')
42
45
  ExpirationTimestamp = Shapes::TimestampShape.new(name: 'ExpirationTimestamp')
43
46
  ForceFlag = Shapes::BooleanShape.new(name: 'ForceFlag')
@@ -46,10 +49,16 @@ module Aws::ECR
46
49
  GetAuthorizationTokenResponse = Shapes::StructureShape.new(name: 'GetAuthorizationTokenResponse')
47
50
  GetDownloadUrlForLayerRequest = Shapes::StructureShape.new(name: 'GetDownloadUrlForLayerRequest')
48
51
  GetDownloadUrlForLayerResponse = Shapes::StructureShape.new(name: 'GetDownloadUrlForLayerResponse')
52
+ GetLifecyclePolicyPreviewRequest = Shapes::StructureShape.new(name: 'GetLifecyclePolicyPreviewRequest')
53
+ GetLifecyclePolicyPreviewResponse = Shapes::StructureShape.new(name: 'GetLifecyclePolicyPreviewResponse')
54
+ GetLifecyclePolicyRequest = Shapes::StructureShape.new(name: 'GetLifecyclePolicyRequest')
55
+ GetLifecyclePolicyResponse = Shapes::StructureShape.new(name: 'GetLifecyclePolicyResponse')
49
56
  GetRepositoryPolicyRequest = Shapes::StructureShape.new(name: 'GetRepositoryPolicyRequest')
50
57
  GetRepositoryPolicyResponse = Shapes::StructureShape.new(name: 'GetRepositoryPolicyResponse')
51
58
  Image = Shapes::StructureShape.new(name: 'Image')
59
+ ImageActionType = Shapes::StringShape.new(name: 'ImageActionType')
52
60
  ImageAlreadyExistsException = Shapes::StructureShape.new(name: 'ImageAlreadyExistsException')
61
+ ImageCount = Shapes::IntegerShape.new(name: 'ImageCount')
53
62
  ImageDetail = Shapes::StructureShape.new(name: 'ImageDetail')
54
63
  ImageDetailList = Shapes::ListShape.new(name: 'ImageDetailList')
55
64
  ImageDigest = Shapes::StringShape.new(name: 'ImageDigest')
@@ -85,6 +94,17 @@ module Aws::ECR
85
94
  LayerPartTooSmallException = Shapes::StructureShape.new(name: 'LayerPartTooSmallException')
86
95
  LayerSizeInBytes = Shapes::IntegerShape.new(name: 'LayerSizeInBytes')
87
96
  LayersNotFoundException = Shapes::StructureShape.new(name: 'LayersNotFoundException')
97
+ LifecyclePolicyNotFoundException = Shapes::StructureShape.new(name: 'LifecyclePolicyNotFoundException')
98
+ LifecyclePolicyPreviewFilter = Shapes::StructureShape.new(name: 'LifecyclePolicyPreviewFilter')
99
+ LifecyclePolicyPreviewInProgressException = Shapes::StructureShape.new(name: 'LifecyclePolicyPreviewInProgressException')
100
+ LifecyclePolicyPreviewNotFoundException = Shapes::StructureShape.new(name: 'LifecyclePolicyPreviewNotFoundException')
101
+ LifecyclePolicyPreviewResult = Shapes::StructureShape.new(name: 'LifecyclePolicyPreviewResult')
102
+ LifecyclePolicyPreviewResultList = Shapes::ListShape.new(name: 'LifecyclePolicyPreviewResultList')
103
+ LifecyclePolicyPreviewStatus = Shapes::StringShape.new(name: 'LifecyclePolicyPreviewStatus')
104
+ LifecyclePolicyPreviewSummary = Shapes::StructureShape.new(name: 'LifecyclePolicyPreviewSummary')
105
+ LifecyclePolicyRuleAction = Shapes::StructureShape.new(name: 'LifecyclePolicyRuleAction')
106
+ LifecyclePolicyRulePriority = Shapes::IntegerShape.new(name: 'LifecyclePolicyRulePriority')
107
+ LifecyclePolicyText = Shapes::StringShape.new(name: 'LifecyclePolicyText')
88
108
  LimitExceededException = Shapes::StructureShape.new(name: 'LimitExceededException')
89
109
  ListImagesFilter = Shapes::StructureShape.new(name: 'ListImagesFilter')
90
110
  ListImagesRequest = Shapes::StructureShape.new(name: 'ListImagesRequest')
@@ -98,6 +118,8 @@ module Aws::ECR
98
118
  PushTimestamp = Shapes::TimestampShape.new(name: 'PushTimestamp')
99
119
  PutImageRequest = Shapes::StructureShape.new(name: 'PutImageRequest')
100
120
  PutImageResponse = Shapes::StructureShape.new(name: 'PutImageResponse')
121
+ PutLifecyclePolicyRequest = Shapes::StructureShape.new(name: 'PutLifecyclePolicyRequest')
122
+ PutLifecyclePolicyResponse = Shapes::StructureShape.new(name: 'PutLifecyclePolicyResponse')
101
123
  RegistryId = Shapes::StringShape.new(name: 'RegistryId')
102
124
  Repository = Shapes::StructureShape.new(name: 'Repository')
103
125
  RepositoryAlreadyExistsException = Shapes::StructureShape.new(name: 'RepositoryAlreadyExistsException')
@@ -111,6 +133,8 @@ module Aws::ECR
111
133
  ServerException = Shapes::StructureShape.new(name: 'ServerException')
112
134
  SetRepositoryPolicyRequest = Shapes::StructureShape.new(name: 'SetRepositoryPolicyRequest')
113
135
  SetRepositoryPolicyResponse = Shapes::StructureShape.new(name: 'SetRepositoryPolicyResponse')
136
+ StartLifecyclePolicyPreviewRequest = Shapes::StructureShape.new(name: 'StartLifecyclePolicyPreviewRequest')
137
+ StartLifecyclePolicyPreviewResponse = Shapes::StructureShape.new(name: 'StartLifecyclePolicyPreviewResponse')
114
138
  TagStatus = Shapes::StringShape.new(name: 'TagStatus')
115
139
  UploadId = Shapes::StringShape.new(name: 'UploadId')
116
140
  UploadLayerPartRequest = Shapes::StructureShape.new(name: 'UploadLayerPartRequest')
@@ -173,6 +197,16 @@ module Aws::ECR
173
197
  CreateRepositoryResponse.add_member(:repository, Shapes::ShapeRef.new(shape: Repository, location_name: "repository"))
174
198
  CreateRepositoryResponse.struct_class = Types::CreateRepositoryResponse
175
199
 
200
+ DeleteLifecyclePolicyRequest.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
201
+ DeleteLifecyclePolicyRequest.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, required: true, location_name: "repositoryName"))
202
+ DeleteLifecyclePolicyRequest.struct_class = Types::DeleteLifecyclePolicyRequest
203
+
204
+ DeleteLifecyclePolicyResponse.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
205
+ DeleteLifecyclePolicyResponse.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, location_name: "repositoryName"))
206
+ DeleteLifecyclePolicyResponse.add_member(:lifecycle_policy_text, Shapes::ShapeRef.new(shape: LifecyclePolicyText, location_name: "lifecyclePolicyText"))
207
+ DeleteLifecyclePolicyResponse.add_member(:last_evaluated_at, Shapes::ShapeRef.new(shape: EvaluationTimestamp, location_name: "lastEvaluatedAt"))
208
+ DeleteLifecyclePolicyResponse.struct_class = Types::DeleteLifecyclePolicyResponse
209
+
176
210
  DeleteRepositoryPolicyRequest.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
177
211
  DeleteRepositoryPolicyRequest.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, required: true, location_name: "repositoryName"))
178
212
  DeleteRepositoryPolicyRequest.struct_class = Types::DeleteRepositoryPolicyRequest
@@ -232,6 +266,33 @@ module Aws::ECR
232
266
  GetDownloadUrlForLayerResponse.add_member(:layer_digest, Shapes::ShapeRef.new(shape: LayerDigest, location_name: "layerDigest"))
233
267
  GetDownloadUrlForLayerResponse.struct_class = Types::GetDownloadUrlForLayerResponse
234
268
 
269
+ GetLifecyclePolicyPreviewRequest.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
270
+ GetLifecyclePolicyPreviewRequest.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, required: true, location_name: "repositoryName"))
271
+ GetLifecyclePolicyPreviewRequest.add_member(:image_ids, Shapes::ShapeRef.new(shape: ImageIdentifierList, location_name: "imageIds"))
272
+ GetLifecyclePolicyPreviewRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
273
+ GetLifecyclePolicyPreviewRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
274
+ GetLifecyclePolicyPreviewRequest.add_member(:filter, Shapes::ShapeRef.new(shape: LifecyclePolicyPreviewFilter, location_name: "filter"))
275
+ GetLifecyclePolicyPreviewRequest.struct_class = Types::GetLifecyclePolicyPreviewRequest
276
+
277
+ GetLifecyclePolicyPreviewResponse.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
278
+ GetLifecyclePolicyPreviewResponse.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, location_name: "repositoryName"))
279
+ GetLifecyclePolicyPreviewResponse.add_member(:lifecycle_policy_text, Shapes::ShapeRef.new(shape: LifecyclePolicyText, location_name: "lifecyclePolicyText"))
280
+ GetLifecyclePolicyPreviewResponse.add_member(:status, Shapes::ShapeRef.new(shape: LifecyclePolicyPreviewStatus, location_name: "status"))
281
+ GetLifecyclePolicyPreviewResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
282
+ GetLifecyclePolicyPreviewResponse.add_member(:preview_results, Shapes::ShapeRef.new(shape: LifecyclePolicyPreviewResultList, location_name: "previewResults"))
283
+ GetLifecyclePolicyPreviewResponse.add_member(:summary, Shapes::ShapeRef.new(shape: LifecyclePolicyPreviewSummary, location_name: "summary"))
284
+ GetLifecyclePolicyPreviewResponse.struct_class = Types::GetLifecyclePolicyPreviewResponse
285
+
286
+ GetLifecyclePolicyRequest.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
287
+ GetLifecyclePolicyRequest.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, required: true, location_name: "repositoryName"))
288
+ GetLifecyclePolicyRequest.struct_class = Types::GetLifecyclePolicyRequest
289
+
290
+ GetLifecyclePolicyResponse.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
291
+ GetLifecyclePolicyResponse.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, location_name: "repositoryName"))
292
+ GetLifecyclePolicyResponse.add_member(:lifecycle_policy_text, Shapes::ShapeRef.new(shape: LifecyclePolicyText, location_name: "lifecyclePolicyText"))
293
+ GetLifecyclePolicyResponse.add_member(:last_evaluated_at, Shapes::ShapeRef.new(shape: EvaluationTimestamp, location_name: "lastEvaluatedAt"))
294
+ GetLifecyclePolicyResponse.struct_class = Types::GetLifecyclePolicyResponse
295
+
235
296
  GetRepositoryPolicyRequest.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
236
297
  GetRepositoryPolicyRequest.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, required: true, location_name: "repositoryName"))
237
298
  GetRepositoryPolicyRequest.struct_class = Types::GetRepositoryPolicyRequest
@@ -299,6 +360,24 @@ module Aws::ECR
299
360
 
300
361
  LayerList.member = Shapes::ShapeRef.new(shape: Layer)
301
362
 
363
+ LifecyclePolicyPreviewFilter.add_member(:tag_status, Shapes::ShapeRef.new(shape: TagStatus, location_name: "tagStatus"))
364
+ LifecyclePolicyPreviewFilter.struct_class = Types::LifecyclePolicyPreviewFilter
365
+
366
+ LifecyclePolicyPreviewResult.add_member(:image_tags, Shapes::ShapeRef.new(shape: ImageTagList, location_name: "imageTags"))
367
+ LifecyclePolicyPreviewResult.add_member(:image_digest, Shapes::ShapeRef.new(shape: ImageDigest, location_name: "imageDigest"))
368
+ LifecyclePolicyPreviewResult.add_member(:image_pushed_at, Shapes::ShapeRef.new(shape: PushTimestamp, location_name: "imagePushedAt"))
369
+ LifecyclePolicyPreviewResult.add_member(:action, Shapes::ShapeRef.new(shape: LifecyclePolicyRuleAction, location_name: "action"))
370
+ LifecyclePolicyPreviewResult.add_member(:applied_rule_priority, Shapes::ShapeRef.new(shape: LifecyclePolicyRulePriority, location_name: "appliedRulePriority"))
371
+ LifecyclePolicyPreviewResult.struct_class = Types::LifecyclePolicyPreviewResult
372
+
373
+ LifecyclePolicyPreviewResultList.member = Shapes::ShapeRef.new(shape: LifecyclePolicyPreviewResult)
374
+
375
+ LifecyclePolicyPreviewSummary.add_member(:expiring_image_total_count, Shapes::ShapeRef.new(shape: ImageCount, location_name: "expiringImageTotalCount"))
376
+ LifecyclePolicyPreviewSummary.struct_class = Types::LifecyclePolicyPreviewSummary
377
+
378
+ LifecyclePolicyRuleAction.add_member(:type, Shapes::ShapeRef.new(shape: ImageActionType, location_name: "type"))
379
+ LifecyclePolicyRuleAction.struct_class = Types::LifecyclePolicyRuleAction
380
+
302
381
  ListImagesFilter.add_member(:tag_status, Shapes::ShapeRef.new(shape: TagStatus, location_name: "tagStatus"))
303
382
  ListImagesFilter.struct_class = Types::ListImagesFilter
304
383
 
@@ -324,6 +403,16 @@ module Aws::ECR
324
403
  PutImageResponse.add_member(:image, Shapes::ShapeRef.new(shape: Image, location_name: "image"))
325
404
  PutImageResponse.struct_class = Types::PutImageResponse
326
405
 
406
+ PutLifecyclePolicyRequest.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
407
+ PutLifecyclePolicyRequest.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, required: true, location_name: "repositoryName"))
408
+ PutLifecyclePolicyRequest.add_member(:lifecycle_policy_text, Shapes::ShapeRef.new(shape: LifecyclePolicyText, required: true, location_name: "lifecyclePolicyText"))
409
+ PutLifecyclePolicyRequest.struct_class = Types::PutLifecyclePolicyRequest
410
+
411
+ PutLifecyclePolicyResponse.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
412
+ PutLifecyclePolicyResponse.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, location_name: "repositoryName"))
413
+ PutLifecyclePolicyResponse.add_member(:lifecycle_policy_text, Shapes::ShapeRef.new(shape: LifecyclePolicyText, location_name: "lifecyclePolicyText"))
414
+ PutLifecyclePolicyResponse.struct_class = Types::PutLifecyclePolicyResponse
415
+
327
416
  Repository.add_member(:repository_arn, Shapes::ShapeRef.new(shape: Arn, location_name: "repositoryArn"))
328
417
  Repository.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
329
418
  Repository.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, location_name: "repositoryName"))
@@ -346,6 +435,17 @@ module Aws::ECR
346
435
  SetRepositoryPolicyResponse.add_member(:policy_text, Shapes::ShapeRef.new(shape: RepositoryPolicyText, location_name: "policyText"))
347
436
  SetRepositoryPolicyResponse.struct_class = Types::SetRepositoryPolicyResponse
348
437
 
438
+ StartLifecyclePolicyPreviewRequest.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
439
+ StartLifecyclePolicyPreviewRequest.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, required: true, location_name: "repositoryName"))
440
+ StartLifecyclePolicyPreviewRequest.add_member(:lifecycle_policy_text, Shapes::ShapeRef.new(shape: LifecyclePolicyText, location_name: "lifecyclePolicyText"))
441
+ StartLifecyclePolicyPreviewRequest.struct_class = Types::StartLifecyclePolicyPreviewRequest
442
+
443
+ StartLifecyclePolicyPreviewResponse.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
444
+ StartLifecyclePolicyPreviewResponse.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, location_name: "repositoryName"))
445
+ StartLifecyclePolicyPreviewResponse.add_member(:lifecycle_policy_text, Shapes::ShapeRef.new(shape: LifecyclePolicyText, location_name: "lifecyclePolicyText"))
446
+ StartLifecyclePolicyPreviewResponse.add_member(:status, Shapes::ShapeRef.new(shape: LifecyclePolicyPreviewStatus, location_name: "status"))
447
+ StartLifecyclePolicyPreviewResponse.struct_class = Types::StartLifecyclePolicyPreviewResponse
448
+
349
449
  UploadLayerPartRequest.add_member(:registry_id, Shapes::ShapeRef.new(shape: RegistryId, location_name: "registryId"))
350
450
  UploadLayerPartRequest.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, required: true, location_name: "repositoryName"))
351
451
  UploadLayerPartRequest.add_member(:upload_id, Shapes::ShapeRef.new(shape: UploadId, required: true, location_name: "uploadId"))
@@ -436,6 +536,18 @@ module Aws::ECR
436
536
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
437
537
  end)
438
538
 
539
+ api.add_operation(:delete_lifecycle_policy, Seahorse::Model::Operation.new.tap do |o|
540
+ o.name = "DeleteLifecyclePolicy"
541
+ o.http_method = "POST"
542
+ o.http_request_uri = "/"
543
+ o.input = Shapes::ShapeRef.new(shape: DeleteLifecyclePolicyRequest)
544
+ o.output = Shapes::ShapeRef.new(shape: DeleteLifecyclePolicyResponse)
545
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
546
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
547
+ o.errors << Shapes::ShapeRef.new(shape: RepositoryNotFoundException)
548
+ o.errors << Shapes::ShapeRef.new(shape: LifecyclePolicyNotFoundException)
549
+ end)
550
+
439
551
  api.add_operation(:delete_repository, Seahorse::Model::Operation.new.tap do |o|
440
552
  o.name = "DeleteRepository"
441
553
  o.http_method = "POST"
@@ -518,6 +630,30 @@ module Aws::ECR
518
630
  o.errors << Shapes::ShapeRef.new(shape: RepositoryNotFoundException)
519
631
  end)
520
632
 
633
+ api.add_operation(:get_lifecycle_policy, Seahorse::Model::Operation.new.tap do |o|
634
+ o.name = "GetLifecyclePolicy"
635
+ o.http_method = "POST"
636
+ o.http_request_uri = "/"
637
+ o.input = Shapes::ShapeRef.new(shape: GetLifecyclePolicyRequest)
638
+ o.output = Shapes::ShapeRef.new(shape: GetLifecyclePolicyResponse)
639
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
640
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
641
+ o.errors << Shapes::ShapeRef.new(shape: RepositoryNotFoundException)
642
+ o.errors << Shapes::ShapeRef.new(shape: LifecyclePolicyNotFoundException)
643
+ end)
644
+
645
+ api.add_operation(:get_lifecycle_policy_preview, Seahorse::Model::Operation.new.tap do |o|
646
+ o.name = "GetLifecyclePolicyPreview"
647
+ o.http_method = "POST"
648
+ o.http_request_uri = "/"
649
+ o.input = Shapes::ShapeRef.new(shape: GetLifecyclePolicyPreviewRequest)
650
+ o.output = Shapes::ShapeRef.new(shape: GetLifecyclePolicyPreviewResponse)
651
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
652
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
653
+ o.errors << Shapes::ShapeRef.new(shape: RepositoryNotFoundException)
654
+ o.errors << Shapes::ShapeRef.new(shape: LifecyclePolicyPreviewNotFoundException)
655
+ end)
656
+
521
657
  api.add_operation(:get_repository_policy, Seahorse::Model::Operation.new.tap do |o|
522
658
  o.name = "GetRepositoryPolicy"
523
659
  o.http_method = "POST"
@@ -572,6 +708,17 @@ module Aws::ECR
572
708
  o.errors << Shapes::ShapeRef.new(shape: LimitExceededException)
573
709
  end)
574
710
 
711
+ api.add_operation(:put_lifecycle_policy, Seahorse::Model::Operation.new.tap do |o|
712
+ o.name = "PutLifecyclePolicy"
713
+ o.http_method = "POST"
714
+ o.http_request_uri = "/"
715
+ o.input = Shapes::ShapeRef.new(shape: PutLifecyclePolicyRequest)
716
+ o.output = Shapes::ShapeRef.new(shape: PutLifecyclePolicyResponse)
717
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
718
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
719
+ o.errors << Shapes::ShapeRef.new(shape: RepositoryNotFoundException)
720
+ end)
721
+
575
722
  api.add_operation(:set_repository_policy, Seahorse::Model::Operation.new.tap do |o|
576
723
  o.name = "SetRepositoryPolicy"
577
724
  o.http_method = "POST"
@@ -583,6 +730,19 @@ module Aws::ECR
583
730
  o.errors << Shapes::ShapeRef.new(shape: RepositoryNotFoundException)
584
731
  end)
585
732
 
733
+ api.add_operation(:start_lifecycle_policy_preview, Seahorse::Model::Operation.new.tap do |o|
734
+ o.name = "StartLifecyclePolicyPreview"
735
+ o.http_method = "POST"
736
+ o.http_request_uri = "/"
737
+ o.input = Shapes::ShapeRef.new(shape: StartLifecyclePolicyPreviewRequest)
738
+ o.output = Shapes::ShapeRef.new(shape: StartLifecyclePolicyPreviewResponse)
739
+ o.errors << Shapes::ShapeRef.new(shape: ServerException)
740
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
741
+ o.errors << Shapes::ShapeRef.new(shape: RepositoryNotFoundException)
742
+ o.errors << Shapes::ShapeRef.new(shape: LifecyclePolicyNotFoundException)
743
+ o.errors << Shapes::ShapeRef.new(shape: LifecyclePolicyPreviewInProgressException)
744
+ end)
745
+
586
746
  api.add_operation(:upload_layer_part, Seahorse::Model::Operation.new.tap do |o|
587
747
  o.name = "UploadLayerPart"
588
748
  o.http_method = "POST"
@@ -309,6 +309,59 @@ module Aws::ECR
309
309
  include Aws::Structure
310
310
  end
311
311
 
312
+ # @note When making an API call, you may pass DeleteLifecyclePolicyRequest
313
+ # data as a hash:
314
+ #
315
+ # {
316
+ # registry_id: "RegistryId",
317
+ # repository_name: "RepositoryName", # required
318
+ # }
319
+ #
320
+ # @!attribute [rw] registry_id
321
+ # The AWS account ID associated with the registry that contains the
322
+ # repository. If you do not specify a registry, the default registry
323
+ # is assumed.
324
+ # @return [String]
325
+ #
326
+ # @!attribute [rw] repository_name
327
+ # The name of the repository that is associated with the repository
328
+ # policy to
 delete.
329
+ # @return [String]
330
+ #
331
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DeleteLifecyclePolicyRequest AWS API Documentation
332
+ #
333
+ class DeleteLifecyclePolicyRequest < Struct.new(
334
+ :registry_id,
335
+ :repository_name)
336
+ include Aws::Structure
337
+ end
338
+
339
+ # @!attribute [rw] registry_id
340
+ # The registry ID associated with the request.
341
+ # @return [String]
342
+ #
343
+ # @!attribute [rw] repository_name
344
+ # The repository name associated with the request.
345
+ # @return [String]
346
+ #
347
+ # @!attribute [rw] lifecycle_policy_text
348
+ # The JSON repository policy text.
349
+ # @return [String]
350
+ #
351
+ # @!attribute [rw] last_evaluated_at
352
+ # The time stamp of the last time that the lifecycle policy was run.
353
+ # @return [Time]
354
+ #
355
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DeleteLifecyclePolicyResponse AWS API Documentation
356
+ #
357
+ class DeleteLifecyclePolicyResponse < Struct.new(
358
+ :registry_id,
359
+ :repository_name,
360
+ :lifecycle_policy_text,
361
+ :last_evaluated_at)
362
+ include Aws::Structure
363
+ end
364
+
312
365
  # @note When making an API call, you may pass DeleteRepositoryPolicyRequest
313
366
  # data as a hash:
314
367
  #
@@ -377,7 +430,7 @@ module Aws::ECR
377
430
  # @return [String]
378
431
  #
379
432
  # @!attribute [rw] force
380
- # Force the deletion of the repository if it contains images.
433
+ # If a repository contains images, forces the deletion.
381
434
  # @return [Boolean]
382
435
  #
383
436
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/DeleteRepositoryRequest AWS API Documentation
@@ -671,6 +724,175 @@ module Aws::ECR
671
724
  include Aws::Structure
672
725
  end
673
726
 
727
+ # @note When making an API call, you may pass GetLifecyclePolicyPreviewRequest
728
+ # data as a hash:
729
+ #
730
+ # {
731
+ # registry_id: "RegistryId",
732
+ # repository_name: "RepositoryName", # required
733
+ # image_ids: [
734
+ # {
735
+ # image_digest: "ImageDigest",
736
+ # image_tag: "ImageTag",
737
+ # },
738
+ # ],
739
+ # next_token: "NextToken",
740
+ # max_results: 1,
741
+ # filter: {
742
+ # tag_status: "TAGGED", # accepts TAGGED, UNTAGGED
743
+ # },
744
+ # }
745
+ #
746
+ # @!attribute [rw] registry_id
747
+ # The AWS account ID associated with the registry that contains the
748
+ # repository. If you do not specify a registry, the default registry
749
+ # is assumed.
750
+ # @return [String]
751
+ #
752
+ # @!attribute [rw] repository_name
753
+ # The name of the repository with the policy to retrieve.
754
+ # @return [String]
755
+ #
756
+ # @!attribute [rw] image_ids
757
+ # The list of imageIDs to be included.
758
+ # @return [Array<Types::ImageIdentifier>]
759
+ #
760
+ # @!attribute [rw] next_token
761
+ # The `nextToken` value returned from a previous paginated

762
+ # `GetLifecyclePolicyPreviewRequest` request where `maxResults` was
763
+ # used and the
 results exceeded the value of that parameter.
764
+ # Pagination continues from the end of the
 previous results that
765
+ # returned the `nextToken` value. This value is
 `null` when there are
766
+ # no more results to return.
767
+ # @return [String]
768
+ #
769
+ # @!attribute [rw] max_results
770
+ # The maximum number of repository results returned by
771
+ # `GetLifecyclePolicyPreviewRequest` in
 paginated output. When this
772
+ # parameter is used, `GetLifecyclePolicyPreviewRequest` only returns

773
+ # `maxResults` results in a single page along with a `nextToken`

774
+ # response element. The remaining results of the initial request can
775
+ # be seen by sending
 another `GetLifecyclePolicyPreviewRequest`
776
+ # request with the returned `nextToken`
 value. This value can be
777
+ # between 1 and 100. If this
 parameter is not used, then
778
+ # `GetLifecyclePolicyPreviewRequest` returns up to
 100 results and a
779
+ # `nextToken` value, if
 applicable.
780
+ # @return [Integer]
781
+ #
782
+ # @!attribute [rw] filter
783
+ # An optional parameter that filters results based on image tag status
784
+ # and all tags, if tagged.
785
+ # @return [Types::LifecyclePolicyPreviewFilter]
786
+ #
787
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/GetLifecyclePolicyPreviewRequest AWS API Documentation
788
+ #
789
+ class GetLifecyclePolicyPreviewRequest < Struct.new(
790
+ :registry_id,
791
+ :repository_name,
792
+ :image_ids,
793
+ :next_token,
794
+ :max_results,
795
+ :filter)
796
+ include Aws::Structure
797
+ end
798
+
799
+ # @!attribute [rw] registry_id
800
+ # The registry ID associated with the request.
801
+ # @return [String]
802
+ #
803
+ # @!attribute [rw] repository_name
804
+ # The repository name associated with the request.
805
+ # @return [String]
806
+ #
807
+ # @!attribute [rw] lifecycle_policy_text
808
+ # The JSON repository policy text.
809
+ # @return [String]
810
+ #
811
+ # @!attribute [rw] status
812
+ # The status of the lifecycle policy preview request.
813
+ # @return [String]
814
+ #
815
+ # @!attribute [rw] next_token
816
+ # The `nextToken` value to include in a future
817
+ # `GetLifecyclePolicyPreview` request. When the results of a
818
+ # `GetLifecyclePolicyPreview` request exceed `maxResults`, this value
819
+ # can be used to retrieve the next page of results. This value is
820
+ # `null` when there are no more results to return.
821
+ # @return [String]
822
+ #
823
+ # @!attribute [rw] preview_results
824
+ # The results of the lifecycle policy preview request.
825
+ # @return [Array<Types::LifecyclePolicyPreviewResult>]
826
+ #
827
+ # @!attribute [rw] summary
828
+ # The list of images that is returned as a result of the action.
829
+ # @return [Types::LifecyclePolicyPreviewSummary]
830
+ #
831
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/GetLifecyclePolicyPreviewResponse AWS API Documentation
832
+ #
833
+ class GetLifecyclePolicyPreviewResponse < Struct.new(
834
+ :registry_id,
835
+ :repository_name,
836
+ :lifecycle_policy_text,
837
+ :status,
838
+ :next_token,
839
+ :preview_results,
840
+ :summary)
841
+ include Aws::Structure
842
+ end
843
+
844
+ # @note When making an API call, you may pass GetLifecyclePolicyRequest
845
+ # data as a hash:
846
+ #
847
+ # {
848
+ # registry_id: "RegistryId",
849
+ # repository_name: "RepositoryName", # required
850
+ # }
851
+ #
852
+ # @!attribute [rw] registry_id
853
+ # The AWS account ID associated with the registry that contains the
854
+ # repository. If you do not specify a registry, the default registry
855
+ # is assumed.
856
+ # @return [String]
857
+ #
858
+ # @!attribute [rw] repository_name
859
+ # The name of the repository with the policy to retrieve.
860
+ # @return [String]
861
+ #
862
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/GetLifecyclePolicyRequest AWS API Documentation
863
+ #
864
+ class GetLifecyclePolicyRequest < Struct.new(
865
+ :registry_id,
866
+ :repository_name)
867
+ include Aws::Structure
868
+ end
869
+
870
+ # @!attribute [rw] registry_id
871
+ # The registry ID associated with the request.
872
+ # @return [String]
873
+ #
874
+ # @!attribute [rw] repository_name
875
+ # The repository name associated with the request.
876
+ # @return [String]
877
+ #
878
+ # @!attribute [rw] lifecycle_policy_text
879
+ # The JSON repository policy text.
880
+ # @return [String]
881
+ #
882
+ # @!attribute [rw] last_evaluated_at
883
+ # The time stamp of the last time that the lifecycle policy was run.
884
+ # @return [Time]
885
+ #
886
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/GetLifecyclePolicyResponse AWS API Documentation
887
+ #
888
+ class GetLifecyclePolicyResponse < Struct.new(
889
+ :registry_id,
890
+ :repository_name,
891
+ :lifecycle_policy_text,
892
+ :last_evaluated_at)
893
+ include Aws::Structure
894
+ end
895
+
674
896
  # @note When making an API call, you may pass GetRepositoryPolicyRequest
675
897
  # data as a hash:
676
898
  #
@@ -686,7 +908,7 @@ module Aws::ECR
686
908
  # @return [String]
687
909
  #
688
910
  # @!attribute [rw] repository_name
689
- # The name of the repository whose policy you want to retrieve.
911
+ # The name of the repository with the policy to retrieve.
690
912
  # @return [String]
691
913
  #
692
914
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/GetRepositoryPolicyRequest AWS API Documentation
@@ -855,13 +1077,13 @@ module Aws::ECR
855
1077
  # }
856
1078
  #
857
1079
  # @!attribute [rw] registry_id
858
- # The AWS account ID associated with the registry that you intend to
859
- # upload layers to. If you do not specify a registry, the default
1080
+ # The AWS account ID associated with the registry to which you intend
1081
+ # to upload layers. If you do not specify a registry, the default
860
1082
  # registry is assumed.
861
1083
  # @return [String]
862
1084
  #
863
1085
  # @!attribute [rw] repository_name
864
- # The name of the repository that you intend to upload layers to.
1086
+ # The name of the repository to which you intend to upload layers.
865
1087
  # @return [String]
866
1088
  #
867
1089
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/InitiateLayerUploadRequest AWS API Documentation
@@ -943,6 +1165,86 @@ module Aws::ECR
943
1165
  include Aws::Structure
944
1166
  end
945
1167
 
1168
+ # The filter for the lifecycle policy preview.
1169
+ #
1170
+ # @note When making an API call, you may pass LifecyclePolicyPreviewFilter
1171
+ # data as a hash:
1172
+ #
1173
+ # {
1174
+ # tag_status: "TAGGED", # accepts TAGGED, UNTAGGED
1175
+ # }
1176
+ #
1177
+ # @!attribute [rw] tag_status
1178
+ # The tag status of the image.
1179
+ # @return [String]
1180
+ #
1181
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/LifecyclePolicyPreviewFilter AWS API Documentation
1182
+ #
1183
+ class LifecyclePolicyPreviewFilter < Struct.new(
1184
+ :tag_status)
1185
+ include Aws::Structure
1186
+ end
1187
+
1188
+ # The result of the lifecycle policy preview.
1189
+ #
1190
+ # @!attribute [rw] image_tags
1191
+ # The list of tags associated with this image.
1192
+ # @return [Array<String>]
1193
+ #
1194
+ # @!attribute [rw] image_digest
1195
+ # The `sha256` digest of the image manifest.
1196
+ # @return [String]
1197
+ #
1198
+ # @!attribute [rw] image_pushed_at
1199
+ # The date and time, expressed in standard JavaScript date format, at
1200
+ # which the current image was pushed to the repository.
1201
+ # @return [Time]
1202
+ #
1203
+ # @!attribute [rw] action
1204
+ # The type of action to be taken.
1205
+ # @return [Types::LifecyclePolicyRuleAction]
1206
+ #
1207
+ # @!attribute [rw] applied_rule_priority
1208
+ # The priority of the applied rule.
1209
+ # @return [Integer]
1210
+ #
1211
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/LifecyclePolicyPreviewResult AWS API Documentation
1212
+ #
1213
+ class LifecyclePolicyPreviewResult < Struct.new(
1214
+ :image_tags,
1215
+ :image_digest,
1216
+ :image_pushed_at,
1217
+ :action,
1218
+ :applied_rule_priority)
1219
+ include Aws::Structure
1220
+ end
1221
+
1222
+ # The summary of the lifecycle policy preview request.
1223
+ #
1224
+ # @!attribute [rw] expiring_image_total_count
1225
+ # The number of expiring images.
1226
+ # @return [Integer]
1227
+ #
1228
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/LifecyclePolicyPreviewSummary AWS API Documentation
1229
+ #
1230
+ class LifecyclePolicyPreviewSummary < Struct.new(
1231
+ :expiring_image_total_count)
1232
+ include Aws::Structure
1233
+ end
1234
+
1235
+ # The type of action to be taken.
1236
+ #
1237
+ # @!attribute [rw] type
1238
+ # The type of action to be taken.
1239
+ # @return [String]
1240
+ #
1241
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/LifecyclePolicyRuleAction AWS API Documentation
1242
+ #
1243
+ class LifecyclePolicyRuleAction < Struct.new(
1244
+ :type)
1245
+ include Aws::Structure
1246
+ end
1247
+
946
1248
  # An object representing a filter on a ListImages operation.
947
1249
  #
948
1250
  # @note When making an API call, you may pass ListImagesFilter
@@ -979,12 +1281,12 @@ module Aws::ECR
979
1281
  #
980
1282
  # @!attribute [rw] registry_id
981
1283
  # The AWS account ID associated with the registry that contains the
982
- # repository to list images in. If you do not specify a registry, the
983
- # default registry is assumed.
1284
+ # repository in which to list images. If you do not specify a
1285
+ # registry, the default registry is assumed.
984
1286
  # @return [String]
985
1287
  #
986
1288
  # @!attribute [rw] repository_name
987
- # The repository whose image IDs are to be listed.
1289
+ # The repository with image IDs to be listed.
988
1290
  # @return [String]
989
1291
  #
990
1292
  # @!attribute [rw] next_token
@@ -1098,13 +1400,66 @@ module Aws::ECR
1098
1400
  include Aws::Structure
1099
1401
  end
1100
1402
 
1403
+ # @note When making an API call, you may pass PutLifecyclePolicyRequest
1404
+ # data as a hash:
1405
+ #
1406
+ # {
1407
+ # registry_id: "RegistryId",
1408
+ # repository_name: "RepositoryName", # required
1409
+ # lifecycle_policy_text: "LifecyclePolicyText", # required
1410
+ # }
1411
+ #
1412
+ # @!attribute [rw] registry_id
1413
+ # The AWS account ID associated with the registry that contains the
1414
+ # repository. If you do
 not specify a registry, the default registry
1415
+ # is assumed.
1416
+ # @return [String]
1417
+ #
1418
+ # @!attribute [rw] repository_name
1419
+ # The name of the repository to receive the policy.
1420
+ # @return [String]
1421
+ #
1422
+ # @!attribute [rw] lifecycle_policy_text
1423
+ # The JSON repository policy text to apply to the repository.
1424
+ # @return [String]
1425
+ #
1426
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/PutLifecyclePolicyRequest AWS API Documentation
1427
+ #
1428
+ class PutLifecyclePolicyRequest < Struct.new(
1429
+ :registry_id,
1430
+ :repository_name,
1431
+ :lifecycle_policy_text)
1432
+ include Aws::Structure
1433
+ end
1434
+
1435
+ # @!attribute [rw] registry_id
1436
+ # The registry ID associated with the request.
1437
+ # @return [String]
1438
+ #
1439
+ # @!attribute [rw] repository_name
1440
+ # The repository name associated with the request.
1441
+ # @return [String]
1442
+ #
1443
+ # @!attribute [rw] lifecycle_policy_text
1444
+ # The JSON repository policy text.
1445
+ # @return [String]
1446
+ #
1447
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/PutLifecyclePolicyResponse AWS API Documentation
1448
+ #
1449
+ class PutLifecyclePolicyResponse < Struct.new(
1450
+ :registry_id,
1451
+ :repository_name,
1452
+ :lifecycle_policy_text)
1453
+ include Aws::Structure
1454
+ end
1455
+
1101
1456
  # An object representing a repository.
1102
1457
  #
1103
1458
  # @!attribute [rw] repository_arn
1104
1459
  # The Amazon Resource Name (ARN) that identifies the repository. The
1105
1460
  # ARN contains the `arn:aws:ecr` namespace, followed by the region of
1106
- # the repository, the AWS account ID of the repository owner, the
1107
- # repository namespace, and then the repository name. For example,
1461
+ # the repository, AWS account ID of the repository owner, repository
1462
+ # namespace, and repository name. For example,
1108
1463
  # `arn:aws:ecr:region:012345678910:repository/test`.
1109
1464
  # @return [String]
1110
1465
  #
@@ -1119,12 +1474,12 @@ module Aws::ECR
1119
1474
  #
1120
1475
  # @!attribute [rw] repository_uri
1121
1476
  # The URI for the repository. You can use this URI for Docker `push`
1122
- # and `pull` operations.
1477
+ # or `pull` operations.
1123
1478
  # @return [String]
1124
1479
  #
1125
1480
  # @!attribute [rw] created_at
1126
- # The date and time, in JavaScript date/time format, when the
1127
- # repository was created.
1481
+ # The date and time, in JavaScript date format, when the repository
1482
+ # was created.
1128
1483
  # @return [Time]
1129
1484
  #
1130
1485
  # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/Repository AWS API Documentation
@@ -1200,6 +1555,65 @@ module Aws::ECR
1200
1555
  include Aws::Structure
1201
1556
  end
1202
1557
 
1558
+ # @note When making an API call, you may pass StartLifecyclePolicyPreviewRequest
1559
+ # data as a hash:
1560
+ #
1561
+ # {
1562
+ # registry_id: "RegistryId",
1563
+ # repository_name: "RepositoryName", # required
1564
+ # lifecycle_policy_text: "LifecyclePolicyText",
1565
+ # }
1566
+ #
1567
+ # @!attribute [rw] registry_id
1568
+ # The AWS account ID associated with the registry that contains the
1569
+ # repository. If you do not specify a registry, the default registry
1570
+ # is assumed.
1571
+ # @return [String]
1572
+ #
1573
+ # @!attribute [rw] repository_name
1574
+ # The name of the repository to be evaluated.
1575
+ # @return [String]
1576
+ #
1577
+ # @!attribute [rw] lifecycle_policy_text
1578
+ # The policy to be evaluated against. If you do not specify a policy,
1579
+ # the current policy for the repository is used.
1580
+ # @return [String]
1581
+ #
1582
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/StartLifecyclePolicyPreviewRequest AWS API Documentation
1583
+ #
1584
+ class StartLifecyclePolicyPreviewRequest < Struct.new(
1585
+ :registry_id,
1586
+ :repository_name,
1587
+ :lifecycle_policy_text)
1588
+ include Aws::Structure
1589
+ end
1590
+
1591
+ # @!attribute [rw] registry_id
1592
+ # The registry ID associated with the request.
1593
+ # @return [String]
1594
+ #
1595
+ # @!attribute [rw] repository_name
1596
+ # The repository name associated with the request.
1597
+ # @return [String]
1598
+ #
1599
+ # @!attribute [rw] lifecycle_policy_text
1600
+ # The JSON repository policy text.
1601
+ # @return [String]
1602
+ #
1603
+ # @!attribute [rw] status
1604
+ # The status of the lifecycle policy preview request.
1605
+ # @return [String]
1606
+ #
1607
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ecr-2015-09-21/StartLifecyclePolicyPreviewResponse AWS API Documentation
1608
+ #
1609
+ class StartLifecyclePolicyPreviewResponse < Struct.new(
1610
+ :registry_id,
1611
+ :repository_name,
1612
+ :lifecycle_policy_text,
1613
+ :status)
1614
+ include Aws::Structure
1615
+ end
1616
+
1203
1617
  # @note When making an API call, you may pass UploadLayerPartRequest
1204
1618
  # data as a hash:
1205
1619
  #
@@ -1213,13 +1627,13 @@ module Aws::ECR
1213
1627
  # }
1214
1628
  #
1215
1629
  # @!attribute [rw] registry_id
1216
- # The AWS account ID associated with the registry that you are
1217
- # uploading layer parts to. If you do not specify a registry, the
1218
- # default registry is assumed.
1630
+ # The AWS account ID associated with the registry to which you are
1631
+ # uploading layer parts. If you do not specify a registry, the default
1632
+ # registry is assumed.
1219
1633
  # @return [String]
1220
1634
  #
1221
1635
  # @!attribute [rw] repository_name
1222
- # The name of the repository that you are uploading layer parts to.
1636
+ # The name of the repository to which you are uploading layer parts.
1223
1637
  # @return [String]
1224
1638
  #
1225
1639
  # @!attribute [rw] upload_id
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.1.0
4
+ version: 1.2.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: 2017-09-13 00:00:00.000000000 Z
11
+ date: 2017-10-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core