aws-sdk-ecr 1.0.0.rc1

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.
@@ -0,0 +1,7 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module ECR
10
+ module Errors
11
+
12
+ extend Aws::Errors::DynamicErrors
13
+
14
+ # Raised when calling #load or #data on a resource class that can not be
15
+ # loaded. This can happen when:
16
+ #
17
+ # * A resource class has identifiers, but no data attributes.
18
+ # * Resource data is only available when making an API call that
19
+ # enumerates all resources of that type.
20
+ class ResourceNotLoadable < RuntimeError; end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,25 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module ECR
10
+ class Resource
11
+
12
+ # @param options ({})
13
+ # @option options [Client] :client
14
+ def initialize(options = {})
15
+ @client = options[:client] || Client.new(options)
16
+ end
17
+
18
+ # @return [Client]
19
+ def client
20
+ @client
21
+ end
22
+
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,1096 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module ECR
10
+ module Types
11
+
12
+ # An object representing authorization data for an Amazon ECR registry.
13
+ # @!attribute [rw] authorization_token
14
+ # A base64-encoded string that contains authorization data for the
15
+ # specified Amazon ECR registry. When the string is decoded, it is
16
+ # presented in the format `user:password` for private registry
17
+ # authentication using `docker login`.
18
+ # @return [String]
19
+ #
20
+ # @!attribute [rw] expires_at
21
+ # The Unix time in seconds and milliseconds when the authorization
22
+ # token expires. Authorization tokens are valid for 12 hours.
23
+ # @return [Time]
24
+ #
25
+ # @!attribute [rw] proxy_endpoint
26
+ # The registry URL to use for this authorization token in a `docker
27
+ # login` command. The Amazon ECR registry URL format is
28
+ # `https://aws_account_id.dkr.ecr.region.amazonaws.com`. For example,
29
+ # `https://012345678910.dkr.ecr.us-east-1.amazonaws.com`..
30
+ # @return [String]
31
+ class AuthorizationData < Struct.new(
32
+ :authorization_token,
33
+ :expires_at,
34
+ :proxy_endpoint)
35
+ include Aws::Structure
36
+ end
37
+
38
+ # @note When making an API call, pass BatchCheckLayerAvailabilityRequest
39
+ # data as a hash:
40
+ #
41
+ # {
42
+ # registry_id: "RegistryId",
43
+ # repository_name: "RepositoryName", # required
44
+ # layer_digests: ["BatchedOperationLayerDigest"], # required
45
+ # }
46
+ # @!attribute [rw] registry_id
47
+ # The AWS account ID associated with the registry that contains the
48
+ # image layers to check. If you do not specify a registry, the default
49
+ # registry is assumed.
50
+ # @return [String]
51
+ #
52
+ # @!attribute [rw] repository_name
53
+ # The name of the repository that is associated with the image layers
54
+ # to check.
55
+ # @return [String]
56
+ #
57
+ # @!attribute [rw] layer_digests
58
+ # The digests of the image layers to check.
59
+ # @return [Array<String>]
60
+ class BatchCheckLayerAvailabilityRequest < Struct.new(
61
+ :registry_id,
62
+ :repository_name,
63
+ :layer_digests)
64
+ include Aws::Structure
65
+ end
66
+
67
+ # @!attribute [rw] layers
68
+ # A list of image layer objects corresponding to the image layer
69
+ # references in the request.
70
+ # @return [Array<Types::Layer>]
71
+ #
72
+ # @!attribute [rw] failures
73
+ # Any failures associated with the call.
74
+ # @return [Array<Types::LayerFailure>]
75
+ class BatchCheckLayerAvailabilityResponse < Struct.new(
76
+ :layers,
77
+ :failures)
78
+ include Aws::Structure
79
+ end
80
+
81
+ # Deletes specified images within a specified repository. Images are
82
+ # specified with either the `imageTag` or `imageDigest`.
83
+ # @note When making an API call, pass BatchDeleteImageRequest
84
+ # data as a hash:
85
+ #
86
+ # {
87
+ # registry_id: "RegistryId",
88
+ # repository_name: "RepositoryName", # required
89
+ # image_ids: [ # required
90
+ # {
91
+ # image_digest: "ImageDigest",
92
+ # image_tag: "ImageTag",
93
+ # },
94
+ # ],
95
+ # }
96
+ # @!attribute [rw] registry_id
97
+ # The AWS account ID associated with the registry that contains the
98
+ # image to delete. If you do not specify a registry, the default
99
+ # registry is assumed.
100
+ # @return [String]
101
+ #
102
+ # @!attribute [rw] repository_name
103
+ # The repository that contains the image to delete.
104
+ # @return [String]
105
+ #
106
+ # @!attribute [rw] image_ids
107
+ # A list of image ID references that correspond to images to delete.
108
+ # The format of the `imageIds` reference is `imageTag=tag` or
109
+ # `imageDigest=digest`.
110
+ # @return [Array<Types::ImageIdentifier>]
111
+ class BatchDeleteImageRequest < Struct.new(
112
+ :registry_id,
113
+ :repository_name,
114
+ :image_ids)
115
+ include Aws::Structure
116
+ end
117
+
118
+ # @!attribute [rw] image_ids
119
+ # The image IDs of the deleted images.
120
+ # @return [Array<Types::ImageIdentifier>]
121
+ #
122
+ # @!attribute [rw] failures
123
+ # Any failures associated with the call.
124
+ # @return [Array<Types::ImageFailure>]
125
+ class BatchDeleteImageResponse < Struct.new(
126
+ :image_ids,
127
+ :failures)
128
+ include Aws::Structure
129
+ end
130
+
131
+ # @note When making an API call, pass BatchGetImageRequest
132
+ # data as a hash:
133
+ #
134
+ # {
135
+ # registry_id: "RegistryId",
136
+ # repository_name: "RepositoryName", # required
137
+ # image_ids: [ # required
138
+ # {
139
+ # image_digest: "ImageDigest",
140
+ # image_tag: "ImageTag",
141
+ # },
142
+ # ],
143
+ # }
144
+ # @!attribute [rw] registry_id
145
+ # The AWS account ID associated with the registry that contains the
146
+ # images to describe. If you do not specify a registry, the default
147
+ # registry is assumed.
148
+ # @return [String]
149
+ #
150
+ # @!attribute [rw] repository_name
151
+ # The repository that contains the images to describe.
152
+ # @return [String]
153
+ #
154
+ # @!attribute [rw] image_ids
155
+ # A list of image ID references that correspond to images to describe.
156
+ # The format of the `imageIds` reference is `imageTag=tag` or
157
+ # `imageDigest=digest`.
158
+ # @return [Array<Types::ImageIdentifier>]
159
+ class BatchGetImageRequest < Struct.new(
160
+ :registry_id,
161
+ :repository_name,
162
+ :image_ids)
163
+ include Aws::Structure
164
+ end
165
+
166
+ # @!attribute [rw] images
167
+ # A list of image objects corresponding to the image references in the
168
+ # request.
169
+ # @return [Array<Types::Image>]
170
+ #
171
+ # @!attribute [rw] failures
172
+ # Any failures associated with the call.
173
+ # @return [Array<Types::ImageFailure>]
174
+ class BatchGetImageResponse < Struct.new(
175
+ :images,
176
+ :failures)
177
+ include Aws::Structure
178
+ end
179
+
180
+ # @note When making an API call, pass CompleteLayerUploadRequest
181
+ # data as a hash:
182
+ #
183
+ # {
184
+ # registry_id: "RegistryId",
185
+ # repository_name: "RepositoryName", # required
186
+ # upload_id: "UploadId", # required
187
+ # layer_digests: ["LayerDigest"], # required
188
+ # }
189
+ # @!attribute [rw] registry_id
190
+ # The AWS account ID associated with the registry to which to upload
191
+ # layers. If you do not specify a registry, the default registry is
192
+ # assumed.
193
+ # @return [String]
194
+ #
195
+ # @!attribute [rw] repository_name
196
+ # The name of the repository to associate with the image layer.
197
+ # @return [String]
198
+ #
199
+ # @!attribute [rw] upload_id
200
+ # The upload ID from a previous InitiateLayerUpload operation to
201
+ # associate with the image layer.
202
+ # @return [String]
203
+ #
204
+ # @!attribute [rw] layer_digests
205
+ # The `sha256` digest of the image layer.
206
+ # @return [Array<String>]
207
+ class CompleteLayerUploadRequest < Struct.new(
208
+ :registry_id,
209
+ :repository_name,
210
+ :upload_id,
211
+ :layer_digests)
212
+ include Aws::Structure
213
+ end
214
+
215
+ # @!attribute [rw] registry_id
216
+ # The registry ID associated with the request.
217
+ # @return [String]
218
+ #
219
+ # @!attribute [rw] repository_name
220
+ # The repository name associated with the request.
221
+ # @return [String]
222
+ #
223
+ # @!attribute [rw] upload_id
224
+ # The upload ID associated with the layer.
225
+ # @return [String]
226
+ #
227
+ # @!attribute [rw] layer_digest
228
+ # The `sha256` digest of the image layer.
229
+ # @return [String]
230
+ class CompleteLayerUploadResponse < Struct.new(
231
+ :registry_id,
232
+ :repository_name,
233
+ :upload_id,
234
+ :layer_digest)
235
+ include Aws::Structure
236
+ end
237
+
238
+ # @note When making an API call, pass CreateRepositoryRequest
239
+ # data as a hash:
240
+ #
241
+ # {
242
+ # repository_name: "RepositoryName", # required
243
+ # }
244
+ # @!attribute [rw] repository_name
245
+ # The name to use for the repository. The repository name may be
246
+ # specified on its own (such as `nginx-web-app`) or it can be
247
+ # prepended with a namespace to group the repository into a category
248
+ # (such as `project-a/nginx-web-app`).
249
+ # @return [String]
250
+ class CreateRepositoryRequest < Struct.new(
251
+ :repository_name)
252
+ include Aws::Structure
253
+ end
254
+
255
+ # @!attribute [rw] repository
256
+ # The repository that was created.
257
+ # @return [Types::Repository]
258
+ class CreateRepositoryResponse < Struct.new(
259
+ :repository)
260
+ include Aws::Structure
261
+ end
262
+
263
+ # @note When making an API call, pass DeleteRepositoryPolicyRequest
264
+ # data as a hash:
265
+ #
266
+ # {
267
+ # registry_id: "RegistryId",
268
+ # repository_name: "RepositoryName", # required
269
+ # }
270
+ # @!attribute [rw] registry_id
271
+ # The AWS account ID associated with the registry that contains the
272
+ # repository policy to delete. If you do not specify a registry, the
273
+ # default registry is assumed.
274
+ # @return [String]
275
+ #
276
+ # @!attribute [rw] repository_name
277
+ # The name of the repository that is associated with the repository
278
+ # policy to delete.
279
+ # @return [String]
280
+ class DeleteRepositoryPolicyRequest < Struct.new(
281
+ :registry_id,
282
+ :repository_name)
283
+ include Aws::Structure
284
+ end
285
+
286
+ # @!attribute [rw] registry_id
287
+ # The registry ID associated with the request.
288
+ # @return [String]
289
+ #
290
+ # @!attribute [rw] repository_name
291
+ # The repository name associated with the request.
292
+ # @return [String]
293
+ #
294
+ # @!attribute [rw] policy_text
295
+ # The JSON repository policy that was deleted from the repository.
296
+ # @return [String]
297
+ class DeleteRepositoryPolicyResponse < Struct.new(
298
+ :registry_id,
299
+ :repository_name,
300
+ :policy_text)
301
+ include Aws::Structure
302
+ end
303
+
304
+ # @note When making an API call, pass DeleteRepositoryRequest
305
+ # data as a hash:
306
+ #
307
+ # {
308
+ # registry_id: "RegistryId",
309
+ # repository_name: "RepositoryName", # required
310
+ # force: false,
311
+ # }
312
+ # @!attribute [rw] registry_id
313
+ # The AWS account ID associated with the registry that contains the
314
+ # repository to delete. If you do not specify a registry, the default
315
+ # registry is assumed.
316
+ # @return [String]
317
+ #
318
+ # @!attribute [rw] repository_name
319
+ # The name of the repository to delete.
320
+ # @return [String]
321
+ #
322
+ # @!attribute [rw] force
323
+ # Force the deletion of the repository if it contains images.
324
+ # @return [Boolean]
325
+ class DeleteRepositoryRequest < Struct.new(
326
+ :registry_id,
327
+ :repository_name,
328
+ :force)
329
+ include Aws::Structure
330
+ end
331
+
332
+ # @!attribute [rw] repository
333
+ # The repository that was deleted.
334
+ # @return [Types::Repository]
335
+ class DeleteRepositoryResponse < Struct.new(
336
+ :repository)
337
+ include Aws::Structure
338
+ end
339
+
340
+ # An object representing a filter on a DescribeImages operation.
341
+ # @note When making an API call, pass DescribeImagesFilter
342
+ # data as a hash:
343
+ #
344
+ # {
345
+ # tag_status: "TAGGED", # accepts TAGGED, UNTAGGED
346
+ # }
347
+ # @!attribute [rw] tag_status
348
+ # The tag status with which to filter your DescribeImages results. You
349
+ # can filter results based on whether they are `TAGGED` or `UNTAGGED`.
350
+ # @return [String]
351
+ class DescribeImagesFilter < Struct.new(
352
+ :tag_status)
353
+ include Aws::Structure
354
+ end
355
+
356
+ # @note When making an API call, pass DescribeImagesRequest
357
+ # data as a hash:
358
+ #
359
+ # {
360
+ # registry_id: "RegistryId",
361
+ # repository_name: "RepositoryName", # required
362
+ # image_ids: [
363
+ # {
364
+ # image_digest: "ImageDigest",
365
+ # image_tag: "ImageTag",
366
+ # },
367
+ # ],
368
+ # next_token: "NextToken",
369
+ # max_results: 1,
370
+ # filter: {
371
+ # tag_status: "TAGGED", # accepts TAGGED, UNTAGGED
372
+ # },
373
+ # }
374
+ # @!attribute [rw] registry_id
375
+ # The AWS account ID associated with the registry that contains the
376
+ # repository in which to list images. If you do not specify a
377
+ # registry, the default registry is assumed.
378
+ # @return [String]
379
+ #
380
+ # @!attribute [rw] repository_name
381
+ # A list of repositories to describe. If this parameter is omitted,
382
+ # then all repositories in a registry are described.
383
+ # @return [String]
384
+ #
385
+ # @!attribute [rw] image_ids
386
+ # The list of image IDs for the requested repository.
387
+ # @return [Array<Types::ImageIdentifier>]
388
+ #
389
+ # @!attribute [rw] next_token
390
+ # The `nextToken` value returned from a previous paginated
391
+ # `DescribeImages` request where `maxResults` was used and the results
392
+ # exceeded the value of that parameter. Pagination continues from the
393
+ # end of the previous results that returned the `nextToken` value.
394
+ # This value is `null` when there are no more results to return.
395
+ # @return [String]
396
+ #
397
+ # @!attribute [rw] max_results
398
+ # The maximum number of repository results returned by
399
+ # `DescribeImages` in paginated output. When this parameter is used,
400
+ # `DescribeImages` only returns `maxResults` results in a single page
401
+ # along with a `nextToken` response element. The remaining results of
402
+ # the initial request can be seen by sending another `DescribeImages`
403
+ # request with the returned `nextToken` value. This value can be
404
+ # between 1 and 100. If this parameter is not used, then
405
+ # `DescribeImages` returns up to 100 results and a `nextToken` value,
406
+ # if applicable.
407
+ # @return [Integer]
408
+ #
409
+ # @!attribute [rw] filter
410
+ # The filter key and value with which to filter your `DescribeImages`
411
+ # results.
412
+ # @return [Types::DescribeImagesFilter]
413
+ class DescribeImagesRequest < Struct.new(
414
+ :registry_id,
415
+ :repository_name,
416
+ :image_ids,
417
+ :next_token,
418
+ :max_results,
419
+ :filter)
420
+ include Aws::Structure
421
+ end
422
+
423
+ # @!attribute [rw] image_details
424
+ # A list of ImageDetail objects that contain data about the image.
425
+ # @return [Array<Types::ImageDetail>]
426
+ #
427
+ # @!attribute [rw] next_token
428
+ # The `nextToken` value to include in a future `DescribeImages`
429
+ # request. When the results of a `DescribeImages` request exceed
430
+ # `maxResults`, this value can be used to retrieve the next page of
431
+ # results. This value is `null` when there are no more results to
432
+ # return.
433
+ # @return [String]
434
+ class DescribeImagesResponse < Struct.new(
435
+ :image_details,
436
+ :next_token)
437
+ include Aws::Structure
438
+ end
439
+
440
+ # @note When making an API call, pass DescribeRepositoriesRequest
441
+ # data as a hash:
442
+ #
443
+ # {
444
+ # registry_id: "RegistryId",
445
+ # repository_names: ["RepositoryName"],
446
+ # next_token: "NextToken",
447
+ # max_results: 1,
448
+ # }
449
+ # @!attribute [rw] registry_id
450
+ # The AWS account ID associated with the registry that contains the
451
+ # repositories to be described. If you do not specify a registry, the
452
+ # default registry is assumed.
453
+ # @return [String]
454
+ #
455
+ # @!attribute [rw] repository_names
456
+ # A list of repositories to describe. If this parameter is omitted,
457
+ # then all repositories in a registry are described.
458
+ # @return [Array<String>]
459
+ #
460
+ # @!attribute [rw] next_token
461
+ # The `nextToken` value returned from a previous paginated
462
+ # `DescribeRepositories` request where `maxResults` was used and the
463
+ # results exceeded the value of that parameter. Pagination continues
464
+ # from the end of the previous results that returned the `nextToken`
465
+ # value. This value is `null` when there are no more results to
466
+ # return.
467
+ #
468
+ # <note markdown="1"> This token should be treated as an opaque identifier that is only
469
+ # used to retrieve the next items in a list and not for other
470
+ # programmatic purposes.
471
+ #
472
+ # </note>
473
+ # @return [String]
474
+ #
475
+ # @!attribute [rw] max_results
476
+ # The maximum number of repository results returned by
477
+ # `DescribeRepositories` in paginated output. When this parameter is
478
+ # used, `DescribeRepositories` only returns `maxResults` results in a
479
+ # single page along with a `nextToken` response element. The remaining
480
+ # results of the initial request can be seen by sending another
481
+ # `DescribeRepositories` request with the returned `nextToken` value.
482
+ # This value can be between 1 and 100. If this parameter is not used,
483
+ # then `DescribeRepositories` returns up to 100 results and a
484
+ # `nextToken` value, if applicable.
485
+ # @return [Integer]
486
+ class DescribeRepositoriesRequest < Struct.new(
487
+ :registry_id,
488
+ :repository_names,
489
+ :next_token,
490
+ :max_results)
491
+ include Aws::Structure
492
+ end
493
+
494
+ # @!attribute [rw] repositories
495
+ # A list of repository objects corresponding to valid repositories.
496
+ # @return [Array<Types::Repository>]
497
+ #
498
+ # @!attribute [rw] next_token
499
+ # The `nextToken` value to include in a future `DescribeRepositories`
500
+ # request. When the results of a `DescribeRepositories` request exceed
501
+ # `maxResults`, this value can be used to retrieve the next page of
502
+ # results. This value is `null` when there are no more results to
503
+ # return.
504
+ # @return [String]
505
+ class DescribeRepositoriesResponse < Struct.new(
506
+ :repositories,
507
+ :next_token)
508
+ include Aws::Structure
509
+ end
510
+
511
+ # @note When making an API call, pass GetAuthorizationTokenRequest
512
+ # data as a hash:
513
+ #
514
+ # {
515
+ # registry_ids: ["RegistryId"],
516
+ # }
517
+ # @!attribute [rw] registry_ids
518
+ # A list of AWS account IDs that are associated with the registries
519
+ # for which to get authorization tokens. If you do not specify a
520
+ # registry, the default registry is assumed.
521
+ # @return [Array<String>]
522
+ class GetAuthorizationTokenRequest < Struct.new(
523
+ :registry_ids)
524
+ include Aws::Structure
525
+ end
526
+
527
+ # @!attribute [rw] authorization_data
528
+ # A list of authorization token data objects that correspond to the
529
+ # `registryIds` values in the request.
530
+ # @return [Array<Types::AuthorizationData>]
531
+ class GetAuthorizationTokenResponse < Struct.new(
532
+ :authorization_data)
533
+ include Aws::Structure
534
+ end
535
+
536
+ # @note When making an API call, pass GetDownloadUrlForLayerRequest
537
+ # data as a hash:
538
+ #
539
+ # {
540
+ # registry_id: "RegistryId",
541
+ # repository_name: "RepositoryName", # required
542
+ # layer_digest: "LayerDigest", # required
543
+ # }
544
+ # @!attribute [rw] registry_id
545
+ # The AWS account ID associated with the registry that contains the
546
+ # image layer to download. If you do not specify a registry, the
547
+ # default registry is assumed.
548
+ # @return [String]
549
+ #
550
+ # @!attribute [rw] repository_name
551
+ # The name of the repository that is associated with the image layer
552
+ # to download.
553
+ # @return [String]
554
+ #
555
+ # @!attribute [rw] layer_digest
556
+ # The digest of the image layer to download.
557
+ # @return [String]
558
+ class GetDownloadUrlForLayerRequest < Struct.new(
559
+ :registry_id,
560
+ :repository_name,
561
+ :layer_digest)
562
+ include Aws::Structure
563
+ end
564
+
565
+ # @!attribute [rw] download_url
566
+ # The pre-signed Amazon S3 download URL for the requested layer.
567
+ # @return [String]
568
+ #
569
+ # @!attribute [rw] layer_digest
570
+ # The digest of the image layer to download.
571
+ # @return [String]
572
+ class GetDownloadUrlForLayerResponse < Struct.new(
573
+ :download_url,
574
+ :layer_digest)
575
+ include Aws::Structure
576
+ end
577
+
578
+ # @note When making an API call, pass GetRepositoryPolicyRequest
579
+ # data as a hash:
580
+ #
581
+ # {
582
+ # registry_id: "RegistryId",
583
+ # repository_name: "RepositoryName", # required
584
+ # }
585
+ # @!attribute [rw] registry_id
586
+ # The AWS account ID associated with the registry that contains the
587
+ # repository. If you do not specify a registry, the default registry
588
+ # is assumed.
589
+ # @return [String]
590
+ #
591
+ # @!attribute [rw] repository_name
592
+ # The name of the repository whose policy you want to retrieve.
593
+ # @return [String]
594
+ class GetRepositoryPolicyRequest < Struct.new(
595
+ :registry_id,
596
+ :repository_name)
597
+ include Aws::Structure
598
+ end
599
+
600
+ # @!attribute [rw] registry_id
601
+ # The registry ID associated with the request.
602
+ # @return [String]
603
+ #
604
+ # @!attribute [rw] repository_name
605
+ # The repository name associated with the request.
606
+ # @return [String]
607
+ #
608
+ # @!attribute [rw] policy_text
609
+ # The JSON repository policy text associated with the repository.
610
+ # @return [String]
611
+ class GetRepositoryPolicyResponse < Struct.new(
612
+ :registry_id,
613
+ :repository_name,
614
+ :policy_text)
615
+ include Aws::Structure
616
+ end
617
+
618
+ # An object representing an Amazon ECR image.
619
+ # @!attribute [rw] registry_id
620
+ # The AWS account ID associated with the registry containing the
621
+ # image.
622
+ # @return [String]
623
+ #
624
+ # @!attribute [rw] repository_name
625
+ # The name of the repository associated with the image.
626
+ # @return [String]
627
+ #
628
+ # @!attribute [rw] image_id
629
+ # An object containing the image tag and image digest associated with
630
+ # an image.
631
+ # @return [Types::ImageIdentifier]
632
+ #
633
+ # @!attribute [rw] image_manifest
634
+ # The image manifest associated with the image.
635
+ # @return [String]
636
+ class Image < Struct.new(
637
+ :registry_id,
638
+ :repository_name,
639
+ :image_id,
640
+ :image_manifest)
641
+ include Aws::Structure
642
+ end
643
+
644
+ # An object that describes an image returned by a DescribeImages
645
+ # operation.
646
+ # @!attribute [rw] registry_id
647
+ # The AWS account ID associated with the registry to which this image
648
+ # belongs.
649
+ # @return [String]
650
+ #
651
+ # @!attribute [rw] repository_name
652
+ # The name of the repository to which this image belongs.
653
+ # @return [String]
654
+ #
655
+ # @!attribute [rw] image_digest
656
+ # The `sha256` digest of the image manifest.
657
+ # @return [String]
658
+ #
659
+ # @!attribute [rw] image_tags
660
+ # The list of tags associated with this image.
661
+ # @return [Array<String>]
662
+ #
663
+ # @!attribute [rw] image_size_in_bytes
664
+ # The size, in bytes, of the image in the repository.
665
+ #
666
+ # <note markdown="1"> Beginning with Docker version 1.9, the Docker client compresses
667
+ # image layers before pushing them to a V2 Docker registry. The output
668
+ # of the `docker images` command shows the uncompressed image size, so
669
+ # it may return a larger image size than the image sizes returned by
670
+ # DescribeImages.
671
+ #
672
+ # </note>
673
+ # @return [Integer]
674
+ #
675
+ # @!attribute [rw] image_pushed_at
676
+ # The date and time, expressed in standard JavaScript date format, at
677
+ # which the current image was pushed to the repository.
678
+ # @return [Time]
679
+ class ImageDetail < Struct.new(
680
+ :registry_id,
681
+ :repository_name,
682
+ :image_digest,
683
+ :image_tags,
684
+ :image_size_in_bytes,
685
+ :image_pushed_at)
686
+ include Aws::Structure
687
+ end
688
+
689
+ # An object representing an Amazon ECR image failure.
690
+ # @!attribute [rw] image_id
691
+ # The image ID associated with the failure.
692
+ # @return [Types::ImageIdentifier]
693
+ #
694
+ # @!attribute [rw] failure_code
695
+ # The code associated with the failure.
696
+ # @return [String]
697
+ #
698
+ # @!attribute [rw] failure_reason
699
+ # The reason for the failure.
700
+ # @return [String]
701
+ class ImageFailure < Struct.new(
702
+ :image_id,
703
+ :failure_code,
704
+ :failure_reason)
705
+ include Aws::Structure
706
+ end
707
+
708
+ # An object with identifying information for an Amazon ECR image.
709
+ # @note When making an API call, pass ImageIdentifier
710
+ # data as a hash:
711
+ #
712
+ # {
713
+ # image_digest: "ImageDigest",
714
+ # image_tag: "ImageTag",
715
+ # }
716
+ # @!attribute [rw] image_digest
717
+ # The `sha256` digest of the image manifest.
718
+ # @return [String]
719
+ #
720
+ # @!attribute [rw] image_tag
721
+ # The tag used for the image.
722
+ # @return [String]
723
+ class ImageIdentifier < Struct.new(
724
+ :image_digest,
725
+ :image_tag)
726
+ include Aws::Structure
727
+ end
728
+
729
+ # @note When making an API call, pass InitiateLayerUploadRequest
730
+ # data as a hash:
731
+ #
732
+ # {
733
+ # registry_id: "RegistryId",
734
+ # repository_name: "RepositoryName", # required
735
+ # }
736
+ # @!attribute [rw] registry_id
737
+ # The AWS account ID associated with the registry that you intend to
738
+ # upload layers to. If you do not specify a registry, the default
739
+ # registry is assumed.
740
+ # @return [String]
741
+ #
742
+ # @!attribute [rw] repository_name
743
+ # The name of the repository that you intend to upload layers to.
744
+ # @return [String]
745
+ class InitiateLayerUploadRequest < Struct.new(
746
+ :registry_id,
747
+ :repository_name)
748
+ include Aws::Structure
749
+ end
750
+
751
+ # @!attribute [rw] upload_id
752
+ # The upload ID for the layer upload. This parameter is passed to
753
+ # further UploadLayerPart and CompleteLayerUpload operations.
754
+ # @return [String]
755
+ #
756
+ # @!attribute [rw] part_size
757
+ # The size, in bytes, that Amazon ECR expects future layer part
758
+ # uploads to be.
759
+ # @return [Integer]
760
+ class InitiateLayerUploadResponse < Struct.new(
761
+ :upload_id,
762
+ :part_size)
763
+ include Aws::Structure
764
+ end
765
+
766
+ # An object representing an Amazon ECR image layer.
767
+ # @!attribute [rw] layer_digest
768
+ # The `sha256` digest of the image layer.
769
+ # @return [String]
770
+ #
771
+ # @!attribute [rw] layer_availability
772
+ # The availability status of the image layer. Valid values are
773
+ # `AVAILABLE` and `UNAVAILABLE`.
774
+ # @return [String]
775
+ #
776
+ # @!attribute [rw] layer_size
777
+ # The size, in bytes, of the image layer.
778
+ # @return [Integer]
779
+ class Layer < Struct.new(
780
+ :layer_digest,
781
+ :layer_availability,
782
+ :layer_size)
783
+ include Aws::Structure
784
+ end
785
+
786
+ # An object representing an Amazon ECR image layer failure.
787
+ # @!attribute [rw] layer_digest
788
+ # The layer digest associated with the failure.
789
+ # @return [String]
790
+ #
791
+ # @!attribute [rw] failure_code
792
+ # The failure code associated with the failure.
793
+ # @return [String]
794
+ #
795
+ # @!attribute [rw] failure_reason
796
+ # The reason for the failure.
797
+ # @return [String]
798
+ class LayerFailure < Struct.new(
799
+ :layer_digest,
800
+ :failure_code,
801
+ :failure_reason)
802
+ include Aws::Structure
803
+ end
804
+
805
+ # An object representing a filter on a ListImages operation.
806
+ # @note When making an API call, pass ListImagesFilter
807
+ # data as a hash:
808
+ #
809
+ # {
810
+ # tag_status: "TAGGED", # accepts TAGGED, UNTAGGED
811
+ # }
812
+ # @!attribute [rw] tag_status
813
+ # The tag status with which to filter your ListImages results. You can
814
+ # filter results based on whether they are `TAGGED` or `UNTAGGED`.
815
+ # @return [String]
816
+ class ListImagesFilter < Struct.new(
817
+ :tag_status)
818
+ include Aws::Structure
819
+ end
820
+
821
+ # @note When making an API call, pass ListImagesRequest
822
+ # data as a hash:
823
+ #
824
+ # {
825
+ # registry_id: "RegistryId",
826
+ # repository_name: "RepositoryName", # required
827
+ # next_token: "NextToken",
828
+ # max_results: 1,
829
+ # filter: {
830
+ # tag_status: "TAGGED", # accepts TAGGED, UNTAGGED
831
+ # },
832
+ # }
833
+ # @!attribute [rw] registry_id
834
+ # The AWS account ID associated with the registry that contains the
835
+ # repository to list images in. If you do not specify a registry, the
836
+ # default registry is assumed.
837
+ # @return [String]
838
+ #
839
+ # @!attribute [rw] repository_name
840
+ # The repository whose image IDs are to be listed.
841
+ # @return [String]
842
+ #
843
+ # @!attribute [rw] next_token
844
+ # The `nextToken` value returned from a previous paginated
845
+ # `ListImages` request where `maxResults` was used and the results
846
+ # exceeded the value of that parameter. Pagination continues from the
847
+ # end of the previous results that returned the `nextToken` value.
848
+ # This value is `null` when there are no more results to return.
849
+ #
850
+ # <note markdown="1"> This token should be treated as an opaque identifier that is only
851
+ # used to retrieve the next items in a list and not for other
852
+ # programmatic purposes.
853
+ #
854
+ # </note>
855
+ # @return [String]
856
+ #
857
+ # @!attribute [rw] max_results
858
+ # The maximum number of image results returned by `ListImages` in
859
+ # paginated output. When this parameter is used, `ListImages` only
860
+ # returns `maxResults` results in a single page along with a
861
+ # `nextToken` response element. The remaining results of the initial
862
+ # request can be seen by sending another `ListImages` request with the
863
+ # returned `nextToken` value. This value can be between 1 and 100. If
864
+ # this parameter is not used, then `ListImages` returns up to 100
865
+ # results and a `nextToken` value, if applicable.
866
+ # @return [Integer]
867
+ #
868
+ # @!attribute [rw] filter
869
+ # The filter key and value with which to filter your `ListImages`
870
+ # results.
871
+ # @return [Types::ListImagesFilter]
872
+ class ListImagesRequest < Struct.new(
873
+ :registry_id,
874
+ :repository_name,
875
+ :next_token,
876
+ :max_results,
877
+ :filter)
878
+ include Aws::Structure
879
+ end
880
+
881
+ # @!attribute [rw] image_ids
882
+ # The list of image IDs for the requested repository.
883
+ # @return [Array<Types::ImageIdentifier>]
884
+ #
885
+ # @!attribute [rw] next_token
886
+ # The `nextToken` value to include in a future `ListImages` request.
887
+ # When the results of a `ListImages` request exceed `maxResults`, this
888
+ # value can be used to retrieve the next page of results. This value
889
+ # is `null` when there are no more results to return.
890
+ # @return [String]
891
+ class ListImagesResponse < Struct.new(
892
+ :image_ids,
893
+ :next_token)
894
+ include Aws::Structure
895
+ end
896
+
897
+ # @note When making an API call, pass PutImageRequest
898
+ # data as a hash:
899
+ #
900
+ # {
901
+ # registry_id: "RegistryId",
902
+ # repository_name: "RepositoryName", # required
903
+ # image_manifest: "ImageManifest", # required
904
+ # }
905
+ # @!attribute [rw] registry_id
906
+ # The AWS account ID associated with the registry that contains the
907
+ # repository in which to put the image. If you do not specify a
908
+ # registry, the default registry is assumed.
909
+ # @return [String]
910
+ #
911
+ # @!attribute [rw] repository_name
912
+ # The name of the repository in which to put the image.
913
+ # @return [String]
914
+ #
915
+ # @!attribute [rw] image_manifest
916
+ # The image manifest corresponding to the image to be uploaded.
917
+ # @return [String]
918
+ class PutImageRequest < Struct.new(
919
+ :registry_id,
920
+ :repository_name,
921
+ :image_manifest)
922
+ include Aws::Structure
923
+ end
924
+
925
+ # @!attribute [rw] image
926
+ # Details of the image uploaded.
927
+ # @return [Types::Image]
928
+ class PutImageResponse < Struct.new(
929
+ :image)
930
+ include Aws::Structure
931
+ end
932
+
933
+ # An object representing a repository.
934
+ # @!attribute [rw] repository_arn
935
+ # The Amazon Resource Name (ARN) that identifies the repository. The
936
+ # ARN contains the `arn:aws:ecr` namespace, followed by the region of
937
+ # the repository, the AWS account ID of the repository owner, the
938
+ # repository namespace, and then the repository name. For example,
939
+ # `arn:aws:ecr:region:012345678910:repository/test`.
940
+ # @return [String]
941
+ #
942
+ # @!attribute [rw] registry_id
943
+ # The AWS account ID associated with the registry that contains the
944
+ # repository.
945
+ # @return [String]
946
+ #
947
+ # @!attribute [rw] repository_name
948
+ # The name of the repository.
949
+ # @return [String]
950
+ #
951
+ # @!attribute [rw] repository_uri
952
+ # The URI for the repository. You can use this URI for Docker `push`
953
+ # and `pull` operations.
954
+ # @return [String]
955
+ #
956
+ # @!attribute [rw] created_at
957
+ # The date and time, in JavaScript date/time format, when the
958
+ # repository was created.
959
+ # @return [Time]
960
+ class Repository < Struct.new(
961
+ :repository_arn,
962
+ :registry_id,
963
+ :repository_name,
964
+ :repository_uri,
965
+ :created_at)
966
+ include Aws::Structure
967
+ end
968
+
969
+ # @note When making an API call, pass SetRepositoryPolicyRequest
970
+ # data as a hash:
971
+ #
972
+ # {
973
+ # registry_id: "RegistryId",
974
+ # repository_name: "RepositoryName", # required
975
+ # policy_text: "RepositoryPolicyText", # required
976
+ # force: false,
977
+ # }
978
+ # @!attribute [rw] registry_id
979
+ # The AWS account ID associated with the registry that contains the
980
+ # repository. If you do not specify a registry, the default registry
981
+ # is assumed.
982
+ # @return [String]
983
+ #
984
+ # @!attribute [rw] repository_name
985
+ # The name of the repository to receive the policy.
986
+ # @return [String]
987
+ #
988
+ # @!attribute [rw] policy_text
989
+ # The JSON repository policy text to apply to the repository.
990
+ # @return [String]
991
+ #
992
+ # @!attribute [rw] force
993
+ # If the policy you are attempting to set on a repository policy would
994
+ # prevent you from setting another policy in the future, you must
995
+ # force the SetRepositoryPolicy operation. This is intended to prevent
996
+ # accidental repository lock outs.
997
+ # @return [Boolean]
998
+ class SetRepositoryPolicyRequest < Struct.new(
999
+ :registry_id,
1000
+ :repository_name,
1001
+ :policy_text,
1002
+ :force)
1003
+ include Aws::Structure
1004
+ end
1005
+
1006
+ # @!attribute [rw] registry_id
1007
+ # The registry ID associated with the request.
1008
+ # @return [String]
1009
+ #
1010
+ # @!attribute [rw] repository_name
1011
+ # The repository name associated with the request.
1012
+ # @return [String]
1013
+ #
1014
+ # @!attribute [rw] policy_text
1015
+ # The JSON repository policy text applied to the repository.
1016
+ # @return [String]
1017
+ class SetRepositoryPolicyResponse < Struct.new(
1018
+ :registry_id,
1019
+ :repository_name,
1020
+ :policy_text)
1021
+ include Aws::Structure
1022
+ end
1023
+
1024
+ # @note When making an API call, pass UploadLayerPartRequest
1025
+ # data as a hash:
1026
+ #
1027
+ # {
1028
+ # registry_id: "RegistryId",
1029
+ # repository_name: "RepositoryName", # required
1030
+ # upload_id: "UploadId", # required
1031
+ # part_first_byte: 1, # required
1032
+ # part_last_byte: 1, # required
1033
+ # layer_part_blob: "data", # required
1034
+ # }
1035
+ # @!attribute [rw] registry_id
1036
+ # The AWS account ID associated with the registry that you are
1037
+ # uploading layer parts to. If you do not specify a registry, the
1038
+ # default registry is assumed.
1039
+ # @return [String]
1040
+ #
1041
+ # @!attribute [rw] repository_name
1042
+ # The name of the repository that you are uploading layer parts to.
1043
+ # @return [String]
1044
+ #
1045
+ # @!attribute [rw] upload_id
1046
+ # The upload ID from a previous InitiateLayerUpload operation to
1047
+ # associate with the layer part upload.
1048
+ # @return [String]
1049
+ #
1050
+ # @!attribute [rw] part_first_byte
1051
+ # The integer value of the first byte of the layer part.
1052
+ # @return [Integer]
1053
+ #
1054
+ # @!attribute [rw] part_last_byte
1055
+ # The integer value of the last byte of the layer part.
1056
+ # @return [Integer]
1057
+ #
1058
+ # @!attribute [rw] layer_part_blob
1059
+ # The base64-encoded layer part payload.
1060
+ # @return [String]
1061
+ class UploadLayerPartRequest < Struct.new(
1062
+ :registry_id,
1063
+ :repository_name,
1064
+ :upload_id,
1065
+ :part_first_byte,
1066
+ :part_last_byte,
1067
+ :layer_part_blob)
1068
+ include Aws::Structure
1069
+ end
1070
+
1071
+ # @!attribute [rw] registry_id
1072
+ # The registry ID associated with the request.
1073
+ # @return [String]
1074
+ #
1075
+ # @!attribute [rw] repository_name
1076
+ # The repository name associated with the request.
1077
+ # @return [String]
1078
+ #
1079
+ # @!attribute [rw] upload_id
1080
+ # The upload ID associated with the request.
1081
+ # @return [String]
1082
+ #
1083
+ # @!attribute [rw] last_byte_received
1084
+ # The integer value of the last byte received in the request.
1085
+ # @return [Integer]
1086
+ class UploadLayerPartResponse < Struct.new(
1087
+ :registry_id,
1088
+ :repository_name,
1089
+ :upload_id,
1090
+ :last_byte_received)
1091
+ include Aws::Structure
1092
+ end
1093
+
1094
+ end
1095
+ end
1096
+ end