• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1// Copyright 2023 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15syntax = "proto3";
16
17package google.cloud.orchestration.airflow.service.v1beta1;
18
19import "google/api/annotations.proto";
20import "google/api/client.proto";
21import "google/type/date.proto";
22
23option go_package = "cloud.google.com/go/orchestration/airflow/service/apiv1beta1/servicepb;servicepb";
24option java_multiple_files = true;
25option java_package = "com.google.cloud.orchestration.airflow.service.v1beta1";
26
27// Readonly service to query available ImageVersions.
28service ImageVersions {
29  option (google.api.default_host) = "composer.googleapis.com";
30  option (google.api.oauth_scopes) =
31      "https://www.googleapis.com/auth/cloud-platform";
32
33  // List ImageVersions for provided location.
34  rpc ListImageVersions(ListImageVersionsRequest)
35      returns (ListImageVersionsResponse) {
36    option (google.api.http) = {
37      get: "/v1beta1/{parent=projects/*/locations/*}/imageVersions"
38    };
39    option (google.api.method_signature) = "parent";
40  }
41}
42
43// List ImageVersions in a project and location.
44message ListImageVersionsRequest {
45  // List ImageVersions in the given project and location, in the form:
46  // "projects/{projectId}/locations/{locationId}"
47  string parent = 1;
48
49  // The maximum number of image_versions to return.
50  int32 page_size = 2;
51
52  // The next_page_token value returned from a previous List request, if any.
53  string page_token = 3;
54
55  // Whether or not image versions from old releases should be included.
56  bool include_past_releases = 4;
57}
58
59// The ImageVersions in a project and location.
60message ListImageVersionsResponse {
61  // The list of supported ImageVersions in a location.
62  repeated ImageVersion image_versions = 1;
63
64  // The page token used to query for the next page if one exists.
65  string next_page_token = 2;
66}
67
68// Image Version information
69message ImageVersion {
70  // The string identifier of the ImageVersion, in the form:
71  // "composer-x.y.z-airflow-a.b.c"
72  string image_version_id = 1;
73
74  // Whether this is the default ImageVersion used by Composer during
75  // environment creation if no input ImageVersion is specified.
76  bool is_default = 2;
77
78  // supported python versions
79  repeated string supported_python_versions = 3;
80
81  // The date of the version release.
82  google.type.Date release_date = 4;
83
84  // Whether it is impossible to create an environment with the image version.
85  bool creation_disabled = 5;
86
87  // Whether it is impossible to upgrade an environment running with the image
88  // version.
89  bool upgrade_disabled = 6;
90}
91