xref: /aosp_15_r20/external/googleapis/google/devtools/artifactregistry/v1/artifact.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC
2*d5c09012SAndroid Build Coastguard Worker//
3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License");
4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License.
5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at
6*d5c09012SAndroid Build Coastguard Worker//
7*d5c09012SAndroid Build Coastguard Worker//     http://www.apache.org/licenses/LICENSE-2.0
8*d5c09012SAndroid Build Coastguard Worker//
9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software
10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS,
11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and
13*d5c09012SAndroid Build Coastguard Worker// limitations under the License.
14*d5c09012SAndroid Build Coastguard Worker
15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3";
16*d5c09012SAndroid Build Coastguard Worker
17*d5c09012SAndroid Build Coastguard Workerpackage google.devtools.artifactregistry.v1;
18*d5c09012SAndroid Build Coastguard Worker
19*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto";
20*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto";
21*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto";
22*d5c09012SAndroid Build Coastguard Worker
23*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.ArtifactRegistry.V1";
24*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/artifactregistry/apiv1/artifactregistrypb;artifactregistrypb";
25*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true;
26*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "ArtifactProto";
27*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.devtools.artifactregistry.v1";
28*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\ArtifactRegistry\\V1";
29*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::ArtifactRegistry::V1";
30*d5c09012SAndroid Build Coastguard Worker
31*d5c09012SAndroid Build Coastguard Worker// DockerImage represents a docker artifact.
32*d5c09012SAndroid Build Coastguard Worker// The following fields are returned as untyped metadata in the Version
33*d5c09012SAndroid Build Coastguard Worker// resource, using camelcase keys (i.e. metadata.imageSizeBytes):
34*d5c09012SAndroid Build Coastguard Worker// * imageSizeBytes
35*d5c09012SAndroid Build Coastguard Worker// * mediaType
36*d5c09012SAndroid Build Coastguard Worker// * buildTime
37*d5c09012SAndroid Build Coastguard Workermessage DockerImage {
38*d5c09012SAndroid Build Coastguard Worker  option (google.api.resource) = {
39*d5c09012SAndroid Build Coastguard Worker    type: "artifactregistry.googleapis.com/DockerImage"
40*d5c09012SAndroid Build Coastguard Worker    pattern: "projects/{project}/locations/{location}/repositories/{repository}/dockerImages/{docker_image}"
41*d5c09012SAndroid Build Coastguard Worker  };
42*d5c09012SAndroid Build Coastguard Worker
43*d5c09012SAndroid Build Coastguard Worker  // Required. registry_location, project_id, repository_name and image id forms
44*d5c09012SAndroid Build Coastguard Worker  // a unique image
45*d5c09012SAndroid Build Coastguard Worker  // name:`projects/<project_id>/locations/<location>/repository/<repository_name>/dockerImages/<docker_image>`.
46*d5c09012SAndroid Build Coastguard Worker  // For example,
47*d5c09012SAndroid Build Coastguard Worker  // "projects/test-project/locations/us-west4/repositories/test-repo/dockerImages/
48*d5c09012SAndroid Build Coastguard Worker  // nginx@sha256:e9954c1fc875017be1c3e36eca16be2d9e9bccc4bf072163515467d6a823c7cf",
49*d5c09012SAndroid Build Coastguard Worker  // where "us-west4" is the registry_location, "test-project" is the
50*d5c09012SAndroid Build Coastguard Worker  // project_id, "test-repo" is the repository_name and
51*d5c09012SAndroid Build Coastguard Worker  // "nginx@sha256:e9954c1fc875017be1c3e36eca16be2d9e9bccc4bf072163515467d6a823c7cf"
52*d5c09012SAndroid Build Coastguard Worker  // is the image's digest.
53*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
54*d5c09012SAndroid Build Coastguard Worker
55*d5c09012SAndroid Build Coastguard Worker  // Required. URL to access the image.
56*d5c09012SAndroid Build Coastguard Worker  // Example:
57*d5c09012SAndroid Build Coastguard Worker  // us-west4-docker.pkg.dev/test-project/test-repo/nginx@sha256:e9954c1fc875017be1c3e36eca16be2d9e9bccc4bf072163515467d6a823c7cf
58*d5c09012SAndroid Build Coastguard Worker  string uri = 2 [(google.api.field_behavior) = REQUIRED];
59*d5c09012SAndroid Build Coastguard Worker
60*d5c09012SAndroid Build Coastguard Worker  // Tags attached to this image.
61*d5c09012SAndroid Build Coastguard Worker  repeated string tags = 3;
62*d5c09012SAndroid Build Coastguard Worker
63*d5c09012SAndroid Build Coastguard Worker  // Calculated size of the image.
64*d5c09012SAndroid Build Coastguard Worker  // This field is returned as the 'metadata.imageSizeBytes' field in the
65*d5c09012SAndroid Build Coastguard Worker  // Version resource.
66*d5c09012SAndroid Build Coastguard Worker  int64 image_size_bytes = 4;
67*d5c09012SAndroid Build Coastguard Worker
68*d5c09012SAndroid Build Coastguard Worker  // Time the image was uploaded.
69*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp upload_time = 5;
70*d5c09012SAndroid Build Coastguard Worker
71*d5c09012SAndroid Build Coastguard Worker  // Media type of this image, e.g.
72*d5c09012SAndroid Build Coastguard Worker  // "application/vnd.docker.distribution.manifest.v2+json".
73*d5c09012SAndroid Build Coastguard Worker  // This field is returned as the 'metadata.mediaType' field in the
74*d5c09012SAndroid Build Coastguard Worker  // Version resource.
75*d5c09012SAndroid Build Coastguard Worker  string media_type = 6;
76*d5c09012SAndroid Build Coastguard Worker
77*d5c09012SAndroid Build Coastguard Worker  // The time this image was built.
78*d5c09012SAndroid Build Coastguard Worker  // This field is returned as the 'metadata.buildTime' field in the
79*d5c09012SAndroid Build Coastguard Worker  // Version resource.
80*d5c09012SAndroid Build Coastguard Worker  // The build time is returned to the client as an RFC 3339 string, which can
81*d5c09012SAndroid Build Coastguard Worker  // be easily used with the JavaScript Date constructor.
82*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp build_time = 7;
83*d5c09012SAndroid Build Coastguard Worker
84*d5c09012SAndroid Build Coastguard Worker  // Output only. The time when the docker image was last updated.
85*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp update_time = 8
86*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
87*d5c09012SAndroid Build Coastguard Worker}
88*d5c09012SAndroid Build Coastguard Worker
89*d5c09012SAndroid Build Coastguard Worker// The request to list docker images.
90*d5c09012SAndroid Build Coastguard Workermessage ListDockerImagesRequest {
91*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the parent resource whose docker images will be
92*d5c09012SAndroid Build Coastguard Worker  // listed.
93*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [(google.api.field_behavior) = REQUIRED];
94*d5c09012SAndroid Build Coastguard Worker
95*d5c09012SAndroid Build Coastguard Worker  // The maximum number of artifacts to return.
96*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
97*d5c09012SAndroid Build Coastguard Worker
98*d5c09012SAndroid Build Coastguard Worker  // The next_page_token value returned from a previous list request, if any.
99*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
100*d5c09012SAndroid Build Coastguard Worker
101*d5c09012SAndroid Build Coastguard Worker  // The field to order the results by.
102*d5c09012SAndroid Build Coastguard Worker  string order_by = 4;
103*d5c09012SAndroid Build Coastguard Worker}
104*d5c09012SAndroid Build Coastguard Worker
105*d5c09012SAndroid Build Coastguard Worker// The response from listing docker images.
106*d5c09012SAndroid Build Coastguard Workermessage ListDockerImagesResponse {
107*d5c09012SAndroid Build Coastguard Worker  // The docker images returned.
108*d5c09012SAndroid Build Coastguard Worker  repeated DockerImage docker_images = 1;
109*d5c09012SAndroid Build Coastguard Worker
110*d5c09012SAndroid Build Coastguard Worker  // The token to retrieve the next page of artifacts, or empty if there are no
111*d5c09012SAndroid Build Coastguard Worker  // more artifacts to return.
112*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
113*d5c09012SAndroid Build Coastguard Worker}
114*d5c09012SAndroid Build Coastguard Worker
115*d5c09012SAndroid Build Coastguard Worker// The request to get docker images.
116*d5c09012SAndroid Build Coastguard Workermessage GetDockerImageRequest {
117*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the docker images.
118*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
119*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
120*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
121*d5c09012SAndroid Build Coastguard Worker      type: "artifactregistry.googleapis.com/DockerImage"
122*d5c09012SAndroid Build Coastguard Worker    }
123*d5c09012SAndroid Build Coastguard Worker  ];
124*d5c09012SAndroid Build Coastguard Worker}
125*d5c09012SAndroid Build Coastguard Worker
126*d5c09012SAndroid Build Coastguard Worker// MavenArtifact represents a maven artifact.
127*d5c09012SAndroid Build Coastguard Workermessage MavenArtifact {
128*d5c09012SAndroid Build Coastguard Worker  option (google.api.resource) = {
129*d5c09012SAndroid Build Coastguard Worker    type: "artifactregistry.googleapis.com/MavenArtifact"
130*d5c09012SAndroid Build Coastguard Worker    pattern: "projects/{project}/locations/{location}/repositories/{repository}/mavenArtifacts/{maven_artifact}"
131*d5c09012SAndroid Build Coastguard Worker  };
132*d5c09012SAndroid Build Coastguard Worker
133*d5c09012SAndroid Build Coastguard Worker  // Required. registry_location, project_id, repository_name and maven_artifact
134*d5c09012SAndroid Build Coastguard Worker  // forms a unique artifact For example,
135*d5c09012SAndroid Build Coastguard Worker  // "projects/test-project/locations/us-west4/repositories/test-repo/mavenArtifacts/
136*d5c09012SAndroid Build Coastguard Worker  // com.google.guava:guava:31.0-jre",
137*d5c09012SAndroid Build Coastguard Worker  // where "us-west4" is the registry_location, "test-project" is the
138*d5c09012SAndroid Build Coastguard Worker  // project_id, "test-repo" is the repository_name and
139*d5c09012SAndroid Build Coastguard Worker  // "com.google.guava:guava:31.0-jre"
140*d5c09012SAndroid Build Coastguard Worker  // is the maven artifact.
141*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
142*d5c09012SAndroid Build Coastguard Worker
143*d5c09012SAndroid Build Coastguard Worker  // Required. URL to access the pom file of the artifact.
144*d5c09012SAndroid Build Coastguard Worker  // Example:
145*d5c09012SAndroid Build Coastguard Worker  // us-west4-maven.pkg.dev/test-project/test-repo/com/google/guava/guava/31.0/guava-31.0.pom
146*d5c09012SAndroid Build Coastguard Worker  string pom_uri = 2 [(google.api.field_behavior) = REQUIRED];
147*d5c09012SAndroid Build Coastguard Worker
148*d5c09012SAndroid Build Coastguard Worker  // Group ID for the artifact.
149*d5c09012SAndroid Build Coastguard Worker  // Example:
150*d5c09012SAndroid Build Coastguard Worker  // com.google.guava
151*d5c09012SAndroid Build Coastguard Worker  string group_id = 3;
152*d5c09012SAndroid Build Coastguard Worker
153*d5c09012SAndroid Build Coastguard Worker  // Artifact ID for the artifact.
154*d5c09012SAndroid Build Coastguard Worker  string artifact_id = 4;
155*d5c09012SAndroid Build Coastguard Worker
156*d5c09012SAndroid Build Coastguard Worker  // Version of this artifact.
157*d5c09012SAndroid Build Coastguard Worker  string version = 5;
158*d5c09012SAndroid Build Coastguard Worker
159*d5c09012SAndroid Build Coastguard Worker  // Output only. Time the artifact was created.
160*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp create_time = 6
161*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
162*d5c09012SAndroid Build Coastguard Worker
163*d5c09012SAndroid Build Coastguard Worker  // Output only. Time the artifact was updated.
164*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp update_time = 7
165*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
166*d5c09012SAndroid Build Coastguard Worker}
167*d5c09012SAndroid Build Coastguard Worker
168*d5c09012SAndroid Build Coastguard Worker// The request to list maven artifacts.
169*d5c09012SAndroid Build Coastguard Workermessage ListMavenArtifactsRequest {
170*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the parent resource whose maven artifacts will be
171*d5c09012SAndroid Build Coastguard Worker  // listed.
172*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
173*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
174*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
175*d5c09012SAndroid Build Coastguard Worker      child_type: "artifactregistry.googleapis.com/MavenArtifact"
176*d5c09012SAndroid Build Coastguard Worker    }
177*d5c09012SAndroid Build Coastguard Worker  ];
178*d5c09012SAndroid Build Coastguard Worker
179*d5c09012SAndroid Build Coastguard Worker  // The maximum number of artifacts to return.
180*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
181*d5c09012SAndroid Build Coastguard Worker
182*d5c09012SAndroid Build Coastguard Worker  // The next_page_token value returned from a previous list request, if any.
183*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
184*d5c09012SAndroid Build Coastguard Worker}
185*d5c09012SAndroid Build Coastguard Worker
186*d5c09012SAndroid Build Coastguard Worker// The response from listing maven artifacts.
187*d5c09012SAndroid Build Coastguard Workermessage ListMavenArtifactsResponse {
188*d5c09012SAndroid Build Coastguard Worker  // The maven artifacts returned.
189*d5c09012SAndroid Build Coastguard Worker  repeated MavenArtifact maven_artifacts = 1;
190*d5c09012SAndroid Build Coastguard Worker
191*d5c09012SAndroid Build Coastguard Worker  // The token to retrieve the next page of artifacts, or empty if there are no
192*d5c09012SAndroid Build Coastguard Worker  // more artifacts to return.
193*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
194*d5c09012SAndroid Build Coastguard Worker}
195*d5c09012SAndroid Build Coastguard Worker
196*d5c09012SAndroid Build Coastguard Worker// The request to get maven artifacts.
197*d5c09012SAndroid Build Coastguard Workermessage GetMavenArtifactRequest {
198*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the maven artifact.
199*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
200*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
201*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
202*d5c09012SAndroid Build Coastguard Worker      type: "artifactregistry.googleapis.com/MavenArtifact"
203*d5c09012SAndroid Build Coastguard Worker    }
204*d5c09012SAndroid Build Coastguard Worker  ];
205*d5c09012SAndroid Build Coastguard Worker}
206*d5c09012SAndroid Build Coastguard Worker
207*d5c09012SAndroid Build Coastguard Worker// NpmPackage represents an npm artifact.
208*d5c09012SAndroid Build Coastguard Workermessage NpmPackage {
209*d5c09012SAndroid Build Coastguard Worker  option (google.api.resource) = {
210*d5c09012SAndroid Build Coastguard Worker    type: "artifactregistry.googleapis.com/NpmPackage"
211*d5c09012SAndroid Build Coastguard Worker    pattern: "projects/{project}/locations/{location}/repositories/{repository}/npmPackages/{npm_package}"
212*d5c09012SAndroid Build Coastguard Worker  };
213*d5c09012SAndroid Build Coastguard Worker
214*d5c09012SAndroid Build Coastguard Worker  // Required. registry_location, project_id, repository_name and npm_package
215*d5c09012SAndroid Build Coastguard Worker  // forms a unique package For example,
216*d5c09012SAndroid Build Coastguard Worker  // "projects/test-project/locations/us-west4/repositories/test-repo/npmPackages/
217*d5c09012SAndroid Build Coastguard Worker  // npm_test:1.0.0",
218*d5c09012SAndroid Build Coastguard Worker  // where "us-west4" is the registry_location, "test-project" is the
219*d5c09012SAndroid Build Coastguard Worker  // project_id, "test-repo" is the repository_name and
220*d5c09012SAndroid Build Coastguard Worker  // npm_test:1.0.0" is the npm package.
221*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
222*d5c09012SAndroid Build Coastguard Worker
223*d5c09012SAndroid Build Coastguard Worker  // Package for the artifact.
224*d5c09012SAndroid Build Coastguard Worker  string package_name = 3;
225*d5c09012SAndroid Build Coastguard Worker
226*d5c09012SAndroid Build Coastguard Worker  // Version of this package.
227*d5c09012SAndroid Build Coastguard Worker  string version = 4;
228*d5c09012SAndroid Build Coastguard Worker
229*d5c09012SAndroid Build Coastguard Worker  // Tags attached to this package.
230*d5c09012SAndroid Build Coastguard Worker  repeated string tags = 5;
231*d5c09012SAndroid Build Coastguard Worker
232*d5c09012SAndroid Build Coastguard Worker  // Output only. Time the package was created.
233*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp create_time = 6
234*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
235*d5c09012SAndroid Build Coastguard Worker
236*d5c09012SAndroid Build Coastguard Worker  // Output only. Time the package was updated.
237*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp update_time = 7
238*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
239*d5c09012SAndroid Build Coastguard Worker}
240*d5c09012SAndroid Build Coastguard Worker
241*d5c09012SAndroid Build Coastguard Worker// The request to list npm packages.
242*d5c09012SAndroid Build Coastguard Workermessage ListNpmPackagesRequest {
243*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the parent resource whose npm packages will be
244*d5c09012SAndroid Build Coastguard Worker  // listed.
245*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
246*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
247*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
248*d5c09012SAndroid Build Coastguard Worker      child_type: "artifactregistry.googleapis.com/NpmPackage"
249*d5c09012SAndroid Build Coastguard Worker    }
250*d5c09012SAndroid Build Coastguard Worker  ];
251*d5c09012SAndroid Build Coastguard Worker
252*d5c09012SAndroid Build Coastguard Worker  // The maximum number of artifacts to return.
253*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
254*d5c09012SAndroid Build Coastguard Worker
255*d5c09012SAndroid Build Coastguard Worker  // The next_page_token value returned from a previous list request, if any.
256*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
257*d5c09012SAndroid Build Coastguard Worker}
258*d5c09012SAndroid Build Coastguard Worker
259*d5c09012SAndroid Build Coastguard Worker// The response from listing npm packages.
260*d5c09012SAndroid Build Coastguard Workermessage ListNpmPackagesResponse {
261*d5c09012SAndroid Build Coastguard Worker  // The npm packages returned.
262*d5c09012SAndroid Build Coastguard Worker  repeated NpmPackage npm_packages = 1;
263*d5c09012SAndroid Build Coastguard Worker
264*d5c09012SAndroid Build Coastguard Worker  // The token to retrieve the next page of artifacts, or empty if there are no
265*d5c09012SAndroid Build Coastguard Worker  // more artifacts to return.
266*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
267*d5c09012SAndroid Build Coastguard Worker}
268*d5c09012SAndroid Build Coastguard Worker
269*d5c09012SAndroid Build Coastguard Worker// The request to get npm packages.
270*d5c09012SAndroid Build Coastguard Workermessage GetNpmPackageRequest {
271*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the npm package.
272*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
273*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
274*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
275*d5c09012SAndroid Build Coastguard Worker      type: "artifactregistry.googleapis.com/NpmPackage"
276*d5c09012SAndroid Build Coastguard Worker    }
277*d5c09012SAndroid Build Coastguard Worker  ];
278*d5c09012SAndroid Build Coastguard Worker}
279*d5c09012SAndroid Build Coastguard Worker
280*d5c09012SAndroid Build Coastguard Worker// PythonPackage represents a python artifact.
281*d5c09012SAndroid Build Coastguard Workermessage PythonPackage {
282*d5c09012SAndroid Build Coastguard Worker  option (google.api.resource) = {
283*d5c09012SAndroid Build Coastguard Worker    type: "artifactregistry.googleapis.com/PythonPackage"
284*d5c09012SAndroid Build Coastguard Worker    pattern: "projects/{project}/locations/{location}/repositories/{repository}/pythonPackages/{python_package}"
285*d5c09012SAndroid Build Coastguard Worker  };
286*d5c09012SAndroid Build Coastguard Worker
287*d5c09012SAndroid Build Coastguard Worker  // Required. registry_location, project_id, repository_name and python_package
288*d5c09012SAndroid Build Coastguard Worker  // forms a unique package
289*d5c09012SAndroid Build Coastguard Worker  // name:`projects/<project_id>/locations/<location>/repository/<repository_name>/pythonPackages/<python_package>`.
290*d5c09012SAndroid Build Coastguard Worker  // For example,
291*d5c09012SAndroid Build Coastguard Worker  // "projects/test-project/locations/us-west4/repositories/test-repo/pythonPackages/
292*d5c09012SAndroid Build Coastguard Worker  // python_package:1.0.0",
293*d5c09012SAndroid Build Coastguard Worker  // where "us-west4" is the registry_location, "test-project" is the
294*d5c09012SAndroid Build Coastguard Worker  // project_id, "test-repo" is the repository_name and
295*d5c09012SAndroid Build Coastguard Worker  // python_package:1.0.0" is the python package.
296*d5c09012SAndroid Build Coastguard Worker  string name = 1 [(google.api.field_behavior) = REQUIRED];
297*d5c09012SAndroid Build Coastguard Worker
298*d5c09012SAndroid Build Coastguard Worker  // Required. URL to access the package.
299*d5c09012SAndroid Build Coastguard Worker  // Example:
300*d5c09012SAndroid Build Coastguard Worker  // us-west4-python.pkg.dev/test-project/test-repo/python_package/file-name-1.0.0.tar.gz
301*d5c09012SAndroid Build Coastguard Worker  string uri = 2 [(google.api.field_behavior) = REQUIRED];
302*d5c09012SAndroid Build Coastguard Worker
303*d5c09012SAndroid Build Coastguard Worker  // Package for the artifact.
304*d5c09012SAndroid Build Coastguard Worker  string package_name = 3;
305*d5c09012SAndroid Build Coastguard Worker
306*d5c09012SAndroid Build Coastguard Worker  // Version of this package.
307*d5c09012SAndroid Build Coastguard Worker  string version = 4;
308*d5c09012SAndroid Build Coastguard Worker
309*d5c09012SAndroid Build Coastguard Worker  // Output only. Time the package was created.
310*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp create_time = 6
311*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
312*d5c09012SAndroid Build Coastguard Worker
313*d5c09012SAndroid Build Coastguard Worker  // Output only. Time the package was updated.
314*d5c09012SAndroid Build Coastguard Worker  google.protobuf.Timestamp update_time = 7
315*d5c09012SAndroid Build Coastguard Worker      [(google.api.field_behavior) = OUTPUT_ONLY];
316*d5c09012SAndroid Build Coastguard Worker}
317*d5c09012SAndroid Build Coastguard Worker
318*d5c09012SAndroid Build Coastguard Worker// The request to list python packages.
319*d5c09012SAndroid Build Coastguard Workermessage ListPythonPackagesRequest {
320*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the parent resource whose python packages will be
321*d5c09012SAndroid Build Coastguard Worker  // listed.
322*d5c09012SAndroid Build Coastguard Worker  string parent = 1 [
323*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
324*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
325*d5c09012SAndroid Build Coastguard Worker      child_type: "artifactregistry.googleapis.com/PythonPackage"
326*d5c09012SAndroid Build Coastguard Worker    }
327*d5c09012SAndroid Build Coastguard Worker  ];
328*d5c09012SAndroid Build Coastguard Worker
329*d5c09012SAndroid Build Coastguard Worker  // The maximum number of artifacts to return.
330*d5c09012SAndroid Build Coastguard Worker  int32 page_size = 2;
331*d5c09012SAndroid Build Coastguard Worker
332*d5c09012SAndroid Build Coastguard Worker  // The next_page_token value returned from a previous list request, if any.
333*d5c09012SAndroid Build Coastguard Worker  string page_token = 3;
334*d5c09012SAndroid Build Coastguard Worker}
335*d5c09012SAndroid Build Coastguard Worker
336*d5c09012SAndroid Build Coastguard Worker// The response from listing python packages.
337*d5c09012SAndroid Build Coastguard Workermessage ListPythonPackagesResponse {
338*d5c09012SAndroid Build Coastguard Worker  // The python packages returned.
339*d5c09012SAndroid Build Coastguard Worker  repeated PythonPackage python_packages = 1;
340*d5c09012SAndroid Build Coastguard Worker
341*d5c09012SAndroid Build Coastguard Worker  // The token to retrieve the next page of artifacts, or empty if there are no
342*d5c09012SAndroid Build Coastguard Worker  // more artifacts to return.
343*d5c09012SAndroid Build Coastguard Worker  string next_page_token = 2;
344*d5c09012SAndroid Build Coastguard Worker}
345*d5c09012SAndroid Build Coastguard Worker
346*d5c09012SAndroid Build Coastguard Worker// The request to get python packages.
347*d5c09012SAndroid Build Coastguard Workermessage GetPythonPackageRequest {
348*d5c09012SAndroid Build Coastguard Worker  // Required. The name of the python package.
349*d5c09012SAndroid Build Coastguard Worker  string name = 1 [
350*d5c09012SAndroid Build Coastguard Worker    (google.api.field_behavior) = REQUIRED,
351*d5c09012SAndroid Build Coastguard Worker    (google.api.resource_reference) = {
352*d5c09012SAndroid Build Coastguard Worker      type: "artifactregistry.googleapis.com/PythonPackage"
353*d5c09012SAndroid Build Coastguard Worker    }
354*d5c09012SAndroid Build Coastguard Worker  ];
355*d5c09012SAndroid Build Coastguard Worker}
356