google-cloud-artifact_registry-v1 1.0.0 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (32) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/artifact_registry/v1/artifact_registry/client.rb +1750 -288
  3. data/lib/google/cloud/artifact_registry/v1/artifact_registry/operations.rb +3 -10
  4. data/lib/google/cloud/artifact_registry/v1/artifact_registry/paths.rb +42 -0
  5. data/lib/google/cloud/artifact_registry/v1/artifact_registry/rest/client.rb +1643 -272
  6. data/lib/google/cloud/artifact_registry/v1/artifact_registry/rest/operations.rb +3 -10
  7. data/lib/google/cloud/artifact_registry/v1/artifact_registry/rest/service_stub.rb +804 -31
  8. data/lib/google/cloud/artifact_registry/v1/version.rb +1 -1
  9. data/lib/google/devtools/artifactregistry/v1/attachment_pb.rb +52 -0
  10. data/lib/google/devtools/artifactregistry/v1/file_pb.rb +5 -1
  11. data/lib/google/devtools/artifactregistry/v1/generic_pb.rb +47 -0
  12. data/lib/google/devtools/artifactregistry/v1/package_pb.rb +4 -1
  13. data/lib/google/devtools/artifactregistry/v1/repository_pb.rb +11 -1
  14. data/lib/google/devtools/artifactregistry/v1/rule_pb.rb +57 -0
  15. data/lib/google/devtools/artifactregistry/v1/service_pb.rb +3 -1
  16. data/lib/google/devtools/artifactregistry/v1/service_services_pb.rb +31 -0
  17. data/lib/google/devtools/artifactregistry/v1/settings_pb.rb +1 -1
  18. data/lib/google/devtools/artifactregistry/v1/version_pb.rb +4 -1
  19. data/proto_docs/google/api/client.rb +51 -10
  20. data/proto_docs/google/api/resource.rb +7 -2
  21. data/proto_docs/google/devtools/artifactregistry/v1/artifact.rb +4 -4
  22. data/proto_docs/google/devtools/artifactregistry/v1/attachment.rb +152 -0
  23. data/proto_docs/google/devtools/artifactregistry/v1/file.rb +80 -7
  24. data/proto_docs/google/devtools/artifactregistry/v1/generic.rb +48 -0
  25. data/proto_docs/google/devtools/artifactregistry/v1/package.rb +76 -0
  26. data/proto_docs/google/devtools/artifactregistry/v1/repository.rb +188 -1
  27. data/proto_docs/google/devtools/artifactregistry/v1/rule.rb +149 -0
  28. data/proto_docs/google/devtools/artifactregistry/v1/settings.rb +10 -0
  29. data/proto_docs/google/devtools/artifactregistry/v1/tag.rb +23 -5
  30. data/proto_docs/google/devtools/artifactregistry/v1/version.rb +74 -1
  31. data/proto_docs/google/longrunning/operations.rb +19 -14
  32. metadata +9 -3
@@ -151,12 +151,20 @@ module Google
151
151
  # @!attribute [rw] yum_repository
152
152
  # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::YumRepository]
153
153
  # Specific settings for a Yum remote repository.
154
+ # @!attribute [rw] common_repository
155
+ # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::CommonRemoteRepository]
156
+ # Common remote repository settings.
157
+ # Used as the remote repository upstream URL.
154
158
  # @!attribute [rw] description
155
159
  # @return [::String]
156
160
  # The description of the remote source.
157
161
  # @!attribute [rw] upstream_credentials
158
162
  # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::UpstreamCredentials]
159
163
  # Optional. The credentials used to access the remote repository.
164
+ # @!attribute [rw] disable_upstream_validation
165
+ # @return [::Boolean]
166
+ # Input only. A create/update remote repo option to avoid making a HEAD/GET
167
+ # request to validate a remote repo and any supplied upstream credentials.
160
168
  class RemoteRepositoryConfig
161
169
  include ::Google::Protobuf::MessageExts
162
170
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -189,10 +197,23 @@ module Google
189
197
  # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::DockerRepository::PublicRepository]
190
198
  # One of the publicly available Docker repositories supported by Artifact
191
199
  # Registry.
200
+ # @!attribute [rw] custom_repository
201
+ # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::DockerRepository::CustomRepository]
202
+ # Customer-specified remote repository.
192
203
  class DockerRepository
193
204
  include ::Google::Protobuf::MessageExts
194
205
  extend ::Google::Protobuf::MessageExts::ClassMethods
195
206
 
207
+ # Customer-specified publicly available remote repository.
208
+ # @!attribute [rw] uri
209
+ # @return [::String]
210
+ # An http/https uri reference to the custom remote repository, for ex:
211
+ # "https://registry-1.docker.io".
212
+ class CustomRepository
213
+ include ::Google::Protobuf::MessageExts
214
+ extend ::Google::Protobuf::MessageExts::ClassMethods
215
+ end
216
+
196
217
  # Predefined list of publicly available Docker repositories like Docker
197
218
  # Hub.
198
219
  module PublicRepository
@@ -209,10 +230,23 @@ module Google
209
230
  # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::MavenRepository::PublicRepository]
210
231
  # One of the publicly available Maven repositories supported by Artifact
211
232
  # Registry.
233
+ # @!attribute [rw] custom_repository
234
+ # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::MavenRepository::CustomRepository]
235
+ # Customer-specified remote repository.
212
236
  class MavenRepository
213
237
  include ::Google::Protobuf::MessageExts
214
238
  extend ::Google::Protobuf::MessageExts::ClassMethods
215
239
 
240
+ # Customer-specified publicly available remote repository.
241
+ # @!attribute [rw] uri
242
+ # @return [::String]
243
+ # An http/https uri reference to the upstream remote repository, for ex:
244
+ # "https://my.maven.registry/".
245
+ class CustomRepository
246
+ include ::Google::Protobuf::MessageExts
247
+ extend ::Google::Protobuf::MessageExts::ClassMethods
248
+ end
249
+
216
250
  # Predefined list of publicly available Maven repositories like Maven
217
251
  # Central.
218
252
  module PublicRepository
@@ -229,10 +263,23 @@ module Google
229
263
  # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::NpmRepository::PublicRepository]
230
264
  # One of the publicly available Npm repositories supported by Artifact
231
265
  # Registry.
266
+ # @!attribute [rw] custom_repository
267
+ # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::NpmRepository::CustomRepository]
268
+ # Customer-specified remote repository.
232
269
  class NpmRepository
233
270
  include ::Google::Protobuf::MessageExts
234
271
  extend ::Google::Protobuf::MessageExts::ClassMethods
235
272
 
273
+ # Customer-specified publicly available remote repository.
274
+ # @!attribute [rw] uri
275
+ # @return [::String]
276
+ # An http/https uri reference to the upstream remote repository, for ex:
277
+ # "https://my.npm.registry/".
278
+ class CustomRepository
279
+ include ::Google::Protobuf::MessageExts
280
+ extend ::Google::Protobuf::MessageExts::ClassMethods
281
+ end
282
+
236
283
  # Predefined list of publicly available NPM repositories like npmjs.
237
284
  module PublicRepository
238
285
  # Unspecified repository.
@@ -248,10 +295,23 @@ module Google
248
295
  # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::PythonRepository::PublicRepository]
249
296
  # One of the publicly available Python repositories supported by Artifact
250
297
  # Registry.
298
+ # @!attribute [rw] custom_repository
299
+ # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::PythonRepository::CustomRepository]
300
+ # Customer-specified remote repository.
251
301
  class PythonRepository
252
302
  include ::Google::Protobuf::MessageExts
253
303
  extend ::Google::Protobuf::MessageExts::ClassMethods
254
304
 
305
+ # Customer-specified publicly available remote repository.
306
+ # @!attribute [rw] uri
307
+ # @return [::String]
308
+ # An http/https uri reference to the upstream remote repository, for ex:
309
+ # "https://my.python.registry/".
310
+ class CustomRepository
311
+ include ::Google::Protobuf::MessageExts
312
+ extend ::Google::Protobuf::MessageExts::ClassMethods
313
+ end
314
+
255
315
  # Predefined list of publicly available Python repositories like PyPI.org.
256
316
  module PublicRepository
257
317
  # Unspecified repository.
@@ -267,6 +327,9 @@ module Google
267
327
  # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::AptRepository::PublicRepository]
268
328
  # One of the publicly available Apt repositories supported by Artifact
269
329
  # Registry.
330
+ # @!attribute [rw] custom_repository
331
+ # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::AptRepository::CustomRepository]
332
+ # Customer-specified remote repository.
270
333
  class AptRepository
271
334
  include ::Google::Protobuf::MessageExts
272
335
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -293,8 +356,21 @@ module Google
293
356
 
294
357
  # Ubuntu LTS/Pro.
295
358
  UBUNTU = 2
359
+
360
+ # Archived Debian.
361
+ DEBIAN_SNAPSHOT = 3
296
362
  end
297
363
  end
364
+
365
+ # Customer-specified publicly available remote repository.
366
+ # @!attribute [rw] uri
367
+ # @return [::String]
368
+ # An http/https uri reference to the upstream remote repository, for ex:
369
+ # "https://my.apt.registry/".
370
+ class CustomRepository
371
+ include ::Google::Protobuf::MessageExts
372
+ extend ::Google::Protobuf::MessageExts::ClassMethods
373
+ end
298
374
  end
299
375
 
300
376
  # Configuration for a Yum remote repository.
@@ -302,6 +378,9 @@ module Google
302
378
  # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::YumRepository::PublicRepository]
303
379
  # One of the publicly available Yum repositories supported by Artifact
304
380
  # Registry.
381
+ # @!attribute [rw] custom_repository
382
+ # @return [::Google::Cloud::ArtifactRegistry::V1::RemoteRepositoryConfig::YumRepository::CustomRepository]
383
+ # Customer-specified remote repository.
305
384
  class YumRepository
306
385
  include ::Google::Protobuf::MessageExts
307
386
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -342,6 +421,25 @@ module Google
342
421
  EPEL = 6
343
422
  end
344
423
  end
424
+
425
+ # Customer-specified publicly available remote repository.
426
+ # @!attribute [rw] uri
427
+ # @return [::String]
428
+ # An http/https uri reference to the upstream remote repository, for ex:
429
+ # "https://my.yum.registry/".
430
+ class CustomRepository
431
+ include ::Google::Protobuf::MessageExts
432
+ extend ::Google::Protobuf::MessageExts::ClassMethods
433
+ end
434
+ end
435
+
436
+ # Common remote repository settings type.
437
+ # @!attribute [rw] uri
438
+ # @return [::String]
439
+ # Required. A common public repository base for remote repository.
440
+ class CommonRemoteRepository
441
+ include ::Google::Protobuf::MessageExts
442
+ extend ::Google::Protobuf::MessageExts::ClassMethods
345
443
  end
346
444
  end
347
445
 
@@ -363,7 +461,8 @@ module Google
363
461
  # @!attribute [rw] name
364
462
  # @return [::String]
365
463
  # The name of the repository, for example:
366
- # `projects/p1/locations/us-central1/repositories/repo1`.
464
+ # `projects/p1/locations/us-central1/repositories/repo1`. For each location
465
+ # in a project, repository names must be unique.
367
466
  # @!attribute [rw] format
368
467
  # @return [::Google::Cloud::ArtifactRegistry::V1::Repository::Format]
369
468
  # Optional. The format of packages that are stored in the repository.
@@ -410,6 +509,17 @@ module Google
410
509
  # @return [::Boolean]
411
510
  # Optional. If true, the cleanup pipeline is prevented from deleting versions
412
511
  # in this repository.
512
+ # @!attribute [rw] vulnerability_scanning_config
513
+ # @return [::Google::Cloud::ArtifactRegistry::V1::Repository::VulnerabilityScanningConfig]
514
+ # Optional. Config and state for vulnerability scanning of resources within
515
+ # this Repository.
516
+ # @!attribute [rw] disallow_unspecified_mode
517
+ # @return [::Boolean]
518
+ # Optional. If this is true, an unspecified repo type will be treated as
519
+ # error rather than defaulting to standard.
520
+ # @!attribute [r] satisfies_pzi
521
+ # @return [::Boolean]
522
+ # Output only. If set, the repository satisfies physical zone isolation.
413
523
  class Repository
414
524
  include ::Google::Protobuf::MessageExts
415
525
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -456,6 +566,56 @@ module Google
456
566
  extend ::Google::Protobuf::MessageExts::ClassMethods
457
567
  end
458
568
 
569
+ # Config on whether to perform vulnerability scanning for resources in this
570
+ # repository, as well as output fields describing current state.
571
+ # @!attribute [rw] enablement_config
572
+ # @return [::Google::Cloud::ArtifactRegistry::V1::Repository::VulnerabilityScanningConfig::EnablementConfig]
573
+ # Optional. Config for whether this repository has vulnerability scanning
574
+ # disabled.
575
+ # @!attribute [r] last_enable_time
576
+ # @return [::Google::Protobuf::Timestamp]
577
+ # Output only. The last time this repository config was enabled.
578
+ # @!attribute [r] enablement_state
579
+ # @return [::Google::Cloud::ArtifactRegistry::V1::Repository::VulnerabilityScanningConfig::EnablementState]
580
+ # Output only. State of feature enablement, combining repository enablement
581
+ # config and API enablement state.
582
+ # @!attribute [r] enablement_state_reason
583
+ # @return [::String]
584
+ # Output only. Reason for the repository state.
585
+ class VulnerabilityScanningConfig
586
+ include ::Google::Protobuf::MessageExts
587
+ extend ::Google::Protobuf::MessageExts::ClassMethods
588
+
589
+ # Config for vulnerability scanning of resources in this repository.
590
+ module EnablementConfig
591
+ # Not set. This will be treated as INHERITED.
592
+ ENABLEMENT_CONFIG_UNSPECIFIED = 0
593
+
594
+ # Scanning is Enabled, but dependent on API enablement.
595
+ INHERITED = 1
596
+
597
+ # No automatic vulnerability scanning will be performed for this
598
+ # repository.
599
+ DISABLED = 2
600
+ end
601
+
602
+ # Describes the state of vulnerability scanning in this repository,
603
+ # including both repository enablement and API enablement.
604
+ module EnablementState
605
+ # Enablement state is unclear.
606
+ ENABLEMENT_STATE_UNSPECIFIED = 0
607
+
608
+ # Repository does not support vulnerability scanning.
609
+ SCANNING_UNSUPPORTED = 1
610
+
611
+ # Vulnerability scanning is disabled for this repository.
612
+ SCANNING_DISABLED = 2
613
+
614
+ # Vulnerability scanning is active for this repository.
615
+ SCANNING_ACTIVE = 3
616
+ end
617
+ end
618
+
459
619
  # @!attribute [rw] key
460
620
  # @return [::String]
461
621
  # @!attribute [rw] value
@@ -502,6 +662,9 @@ module Google
502
662
 
503
663
  # Go package format.
504
664
  GO = 10
665
+
666
+ # Generic package format.
667
+ GENERIC = 11
505
668
  end
506
669
 
507
670
  # The mode configures the repository to serve artifacts from different
@@ -532,6 +695,30 @@ module Google
532
695
  # @!attribute [rw] page_token
533
696
  # @return [::String]
534
697
  # The next_page_token value returned from a previous list request, if any.
698
+ # @!attribute [rw] filter
699
+ # @return [::String]
700
+ # Optional. An expression for filtering the results of the request. Filter
701
+ # rules are case insensitive. The fields eligible for filtering are:
702
+ #
703
+ # * `name`
704
+ #
705
+ # Examples of using a filter:
706
+ #
707
+ # To filter the results of your request to repositories with the name
708
+ # `my-repo` in project `my-project` in the `us-central` region, append the
709
+ # following filter expression to your request:
710
+ #
711
+ # * `name="projects/my-project/locations/us-central1/repositories/my-repo"`
712
+ #
713
+ # You can also use wildcards to match any number of characters before or
714
+ # after the value:
715
+ #
716
+ # * `name="projects/my-project/locations/us-central1/repositories/my-*"`
717
+ # * `name="projects/my-project/locations/us-central1/repositories/*repo"`
718
+ # * `name="projects/my-project/locations/us-central1/repositories/*repo*"`
719
+ # @!attribute [rw] order_by
720
+ # @return [::String]
721
+ # Optional. The field to order the results by.
535
722
  class ListRepositoriesRequest
536
723
  include ::Google::Protobuf::MessageExts
537
724
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -0,0 +1,149 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module ArtifactRegistry
23
+ module V1
24
+ # A rule defines the deny or allow action of the operation it applies to and
25
+ # the conditions required for the rule to apply. You can set one rule for an
26
+ # entire repository and one rule for each package within.
27
+ # @!attribute [rw] name
28
+ # @return [::String]
29
+ # The name of the rule, for example:
30
+ # `projects/p1/locations/us-central1/repositories/repo1/rules/rule1`.
31
+ # @!attribute [rw] action
32
+ # @return [::Google::Cloud::ArtifactRegistry::V1::Rule::Action]
33
+ # The action this rule takes.
34
+ # @!attribute [rw] operation
35
+ # @return [::Google::Cloud::ArtifactRegistry::V1::Rule::Operation]
36
+ # @!attribute [rw] condition
37
+ # @return [::Google::Type::Expr]
38
+ # Optional. A CEL expression for conditions that must be met in order for the
39
+ # rule to apply. If not provided, the rule matches all objects.
40
+ # @!attribute [rw] package_id
41
+ # @return [::String]
42
+ # The package ID the rule applies to.
43
+ # If empty, this rule applies to all packages inside the repository.
44
+ class Rule
45
+ include ::Google::Protobuf::MessageExts
46
+ extend ::Google::Protobuf::MessageExts::ClassMethods
47
+
48
+ # Defines the action of the rule.
49
+ module Action
50
+ # Action not specified.
51
+ ACTION_UNSPECIFIED = 0
52
+
53
+ # Allow the operation.
54
+ ALLOW = 1
55
+
56
+ # Deny the operation.
57
+ DENY = 2
58
+ end
59
+
60
+ # The operation the rule applies to.
61
+ module Operation
62
+ # Operation not specified.
63
+ OPERATION_UNSPECIFIED = 0
64
+
65
+ # Download operation.
66
+ DOWNLOAD = 1
67
+ end
68
+ end
69
+
70
+ # The request to list rules.
71
+ # @!attribute [rw] parent
72
+ # @return [::String]
73
+ # Required. The name of the parent repository whose rules will be listed.
74
+ # For example:
75
+ # `projects/p1/locations/us-central1/repositories/repo1`.
76
+ # @!attribute [rw] page_size
77
+ # @return [::Integer]
78
+ # The maximum number of rules to return. Maximum page size is 1,000.
79
+ # @!attribute [rw] page_token
80
+ # @return [::String]
81
+ # The next_page_token value returned from a previous list request, if any.
82
+ class ListRulesRequest
83
+ include ::Google::Protobuf::MessageExts
84
+ extend ::Google::Protobuf::MessageExts::ClassMethods
85
+ end
86
+
87
+ # The response from listing rules.
88
+ # @!attribute [rw] rules
89
+ # @return [::Array<::Google::Cloud::ArtifactRegistry::V1::Rule>]
90
+ # The rules returned.
91
+ # @!attribute [rw] next_page_token
92
+ # @return [::String]
93
+ # The token to retrieve the next page of rules, or empty if there are no
94
+ # more rules to return.
95
+ class ListRulesResponse
96
+ include ::Google::Protobuf::MessageExts
97
+ extend ::Google::Protobuf::MessageExts::ClassMethods
98
+ end
99
+
100
+ # The request to retrieve a rule.
101
+ # @!attribute [rw] name
102
+ # @return [::String]
103
+ # Required. The name of the rule to retrieve.
104
+ class GetRuleRequest
105
+ include ::Google::Protobuf::MessageExts
106
+ extend ::Google::Protobuf::MessageExts::ClassMethods
107
+ end
108
+
109
+ # The request to create a new rule.
110
+ # @!attribute [rw] parent
111
+ # @return [::String]
112
+ # Required. The name of the parent resource where the rule will be created.
113
+ # @!attribute [rw] rule_id
114
+ # @return [::String]
115
+ # The rule id to use for this repository.
116
+ # @!attribute [rw] rule
117
+ # @return [::Google::Cloud::ArtifactRegistry::V1::Rule]
118
+ # The rule to be created.
119
+ class CreateRuleRequest
120
+ include ::Google::Protobuf::MessageExts
121
+ extend ::Google::Protobuf::MessageExts::ClassMethods
122
+ end
123
+
124
+ # The request to update a rule.
125
+ # @!attribute [rw] rule
126
+ # @return [::Google::Cloud::ArtifactRegistry::V1::Rule]
127
+ # The rule that replaces the resource on the server.
128
+ # @!attribute [rw] update_mask
129
+ # @return [::Google::Protobuf::FieldMask]
130
+ # The update mask applies to the resource. For the `FieldMask` definition,
131
+ # see
132
+ # https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
133
+ class UpdateRuleRequest
134
+ include ::Google::Protobuf::MessageExts
135
+ extend ::Google::Protobuf::MessageExts::ClassMethods
136
+ end
137
+
138
+ # The request to delete a rule.
139
+ # @!attribute [rw] name
140
+ # @return [::String]
141
+ # Required. The name of the rule to delete.
142
+ class DeleteRuleRequest
143
+ include ::Google::Protobuf::MessageExts
144
+ extend ::Google::Protobuf::MessageExts::ClassMethods
145
+ end
146
+ end
147
+ end
148
+ end
149
+ end
@@ -34,6 +34,10 @@ module Google
34
34
  # @!attribute [rw] legacy_redirection_state
35
35
  # @return [::Google::Cloud::ArtifactRegistry::V1::ProjectSettings::RedirectionState]
36
36
  # The redirection state of the legacy repositories in this project.
37
+ # @!attribute [rw] pull_percent
38
+ # @return [::Integer]
39
+ # The percentage of pull traffic to redirect from GCR to AR when using
40
+ # partial redirection.
37
41
  class ProjectSettings
38
42
  include ::Google::Protobuf::MessageExts
39
43
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -51,6 +55,12 @@ module Google
51
55
 
52
56
  # Redirection is enabled, and has been finalized so cannot be reverted.
53
57
  REDIRECTION_FROM_GCR_IO_FINALIZED = 3
58
+
59
+ # Redirection is enabled and missing images are copied from GCR
60
+ REDIRECTION_FROM_GCR_IO_ENABLED_AND_COPYING = 5
61
+
62
+ # Redirection is partially enabled and missing images are copied from GCR
63
+ REDIRECTION_FROM_GCR_IO_PARTIAL_AND_COPYING = 6
54
64
  end
55
65
  end
56
66
 
@@ -33,7 +33,7 @@ module Google
33
33
  # @!attribute [rw] version
34
34
  # @return [::String]
35
35
  # The name of the version the tag refers to, for example:
36
- # "projects/p1/locations/us-central1/repositories/repo1/packages/pkg1/versions/sha256:5243811"
36
+ # `projects/p1/locations/us-central1/repositories/repo1/packages/pkg1/versions/sha256:5243811`
37
37
  # If the package or version ID parts contain slashes, the slashes are
38
38
  # escaped.
39
39
  class Tag
@@ -52,15 +52,33 @@ module Google
52
52
  # An expression for filtering the results of the request. Filter rules are
53
53
  # case insensitive. The fields eligible for filtering are:
54
54
  #
55
+ # * `name`
55
56
  # * `version`
56
57
  #
57
- # An example of using a filter:
58
+ # Examples of using a filter:
58
59
  #
59
- # * `version="projects/p1/locations/us-central1/repositories/repo1/packages/pkg1/versions/1.0"`
60
- # --> Tags that are applied to the version `1.0` in package `pkg1`.
60
+ # To filter the results of your request to tags with the name `my-tag` in
61
+ # package `my-package` in repository `my-repo` in project "`y-project` in
62
+ # the us-central region, append the following filter expression to your
63
+ # request:
64
+ #
65
+ # * `name="projects/my-project/locations/us-central1/repositories/my-repo/packages/my-package/tags/my-tag"`
66
+ #
67
+ # You can also use wildcards to match any number of characters before or
68
+ # after the value:
69
+ #
70
+ # * `name="projects/my-project/locations/us-central1/repositories/my-repo/packages/my-package/tags/my*"`
71
+ # * `name="projects/my-project/locations/us-central1/repositories/my-repo/packages/my-package/tags/*tag"`
72
+ # * `name="projects/my-project/locations/us-central1/repositories/my-repo/packages/my-package/tags/*tag*"`
73
+ #
74
+ # To filter the results of your request to tags applied to the version
75
+ # `1.0` in package `my-package`, append the following filter expression to
76
+ # your request:
77
+ #
78
+ # * `version="projects/my-project/locations/us-central1/repositories/my-repo/packages/my-package/versions/1.0"`
61
79
  # @!attribute [rw] page_size
62
80
  # @return [::Integer]
63
- # The maximum number of tags to return. Maximum page size is 10,000.
81
+ # The maximum number of tags to return. Maximum page size is 1,000.
64
82
  # @!attribute [rw] page_token
65
83
  # @return [::String]
66
84
  # The next_page_token value returned from a previous list request, if any.
@@ -27,7 +27,7 @@ module Google
27
27
  # @!attribute [rw] name
28
28
  # @return [::String]
29
29
  # The name of the version, for example:
30
- # "projects/p1/locations/us-central1/repositories/repo1/packages/pkg1/versions/art1".
30
+ # `projects/p1/locations/us-central1/repositories/repo1/packages/pkg1/versions/art1`.
31
31
  # If the package or version ID parts contain slashes, the slashes are
32
32
  # escaped.
33
33
  # @!attribute [rw] description
@@ -50,9 +50,21 @@ module Google
50
50
  # resource. Currently, the resources could be:
51
51
  # {::Google::Cloud::ArtifactRegistry::V1::DockerImage DockerImage}
52
52
  # {::Google::Cloud::ArtifactRegistry::V1::MavenArtifact MavenArtifact}
53
+ # @!attribute [rw] annotations
54
+ # @return [::Google::Protobuf::Map{::String => ::String}]
55
+ # Optional. Client specified annotations.
53
56
  class Version
54
57
  include ::Google::Protobuf::MessageExts
55
58
  extend ::Google::Protobuf::MessageExts::ClassMethods
59
+
60
+ # @!attribute [rw] key
61
+ # @return [::String]
62
+ # @!attribute [rw] value
63
+ # @return [::String]
64
+ class AnnotationsEntry
65
+ include ::Google::Protobuf::MessageExts
66
+ extend ::Google::Protobuf::MessageExts::ClassMethods
67
+ end
56
68
  end
57
69
 
58
70
  # The request to list versions.
@@ -71,6 +83,53 @@ module Google
71
83
  # @!attribute [rw] order_by
72
84
  # @return [::String]
73
85
  # Optional. The field to order the results by.
86
+ # @!attribute [rw] filter
87
+ # @return [::String]
88
+ # Optional. An expression for filtering the results of the request. Filter
89
+ # rules are case insensitive. The fields eligible for filtering are:
90
+ #
91
+ # * `name`
92
+ # * `annotations`
93
+ #
94
+ # Examples of using a filter:
95
+ #
96
+ # To filter the results of your request to versions with the name
97
+ # `my-version` in project `my-project` in the `us-central` region, in
98
+ # repository `my-repo`, append the following filter expression to your
99
+ # request:
100
+ #
101
+ # * `name="projects/my-project/locations/us-central1/repositories/my-repo/packages/my-package/versions/my-version"`
102
+ #
103
+ # You can also use wildcards to match any number of characters before or
104
+ # after the value:
105
+ #
106
+ # * `name="projects/my-project/locations/us-central1/repositories/my-repo/packages/my-package/versions/*version"`
107
+ # * `name="projects/my-project/locations/us-central1/repositories/my-repo/packages/my-package/versions/my*"`
108
+ # * `name="projects/my-project/locations/us-central1/repositories/my-repo/packages/my-package/versions/*version*"`
109
+ #
110
+ # To filter the results of your request to versions with the annotation
111
+ # key-value pair [`external_link`: `external_link_value`], append the
112
+ # following filter expression to your request:
113
+ #
114
+ # * `"annotations.external_link:external_link_value"`
115
+ #
116
+ # To filter just for a specific annotation key `external_link`, append the
117
+ # following filter expression to your request:
118
+ #
119
+ # * `"annotations.external_link"`
120
+ #
121
+ # If the annotation key or value contains special characters, you can escape
122
+ # them by surrounding the value with backticks. For example, to filter the
123
+ # results of your request to versions with the annotation key-value pair
124
+ # [`external.link`:`https://example.com/my-version`], append the following
125
+ # filter expression to your request:
126
+ #
127
+ # * `` "annotations.`external.link`:`https://example.com/my-version`" ``
128
+ #
129
+ # You can also filter with annotations with a wildcard to
130
+ # match any number of characters before or after the value:
131
+ #
132
+ # * `` "annotations.*_link:`*example.com*`" ``
74
133
  class ListVersionsRequest
75
134
  include ::Google::Protobuf::MessageExts
76
135
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -139,6 +198,20 @@ module Google
139
198
  extend ::Google::Protobuf::MessageExts::ClassMethods
140
199
  end
141
200
 
201
+ # The request to update a version.
202
+ # @!attribute [rw] version
203
+ # @return [::Google::Cloud::ArtifactRegistry::V1::Version]
204
+ # Required. The Version that replaces the resource on the server.
205
+ # @!attribute [rw] update_mask
206
+ # @return [::Google::Protobuf::FieldMask]
207
+ # The update mask applies to the resource. For the `FieldMask` definition,
208
+ # see
209
+ # https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#fieldmask
210
+ class UpdateVersionRequest
211
+ include ::Google::Protobuf::MessageExts
212
+ extend ::Google::Protobuf::MessageExts::ClassMethods
213
+ end
214
+
142
215
  # The view, which determines what version information is returned in a
143
216
  # response.
144
217
  module VersionView