xref: /aosp_15_r20/external/googleapis/google/container/v1alpha1/cluster_service.proto (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
1*d5c09012SAndroid Build Coastguard Worker// Copyright 2017 Google Inc.
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.container.v1alpha1;
18*d5c09012SAndroid Build Coastguard Worker
19*d5c09012SAndroid Build Coastguard Workerimport "google/api/annotations.proto";
20*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/empty.proto";
21*d5c09012SAndroid Build Coastguard Worker
22*d5c09012SAndroid Build Coastguard Workeroption go_package = "google.golang.org/genproto/googleapis/container/v1alpha1;container";
23*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true;
24*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "ClusterServiceProto";
25*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.container.v1alpha1";
26*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.Container.V1Alpha1";
27*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\Container\\V1alpha1";
28*d5c09012SAndroid Build Coastguard Worker
29*d5c09012SAndroid Build Coastguard Worker
30*d5c09012SAndroid Build Coastguard Worker// Google Container Engine Cluster Manager v1alpha1
31*d5c09012SAndroid Build Coastguard Workerservice ClusterManager {
32*d5c09012SAndroid Build Coastguard Worker  // Lists all clusters owned by a project in either the specified zone or all
33*d5c09012SAndroid Build Coastguard Worker  // zones.
34*d5c09012SAndroid Build Coastguard Worker  rpc ListClusters(ListClustersRequest) returns (ListClustersResponse) {
35*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { get: "/v1alpha1/{parent=projects/*/locations/*}/clusters" };
36*d5c09012SAndroid Build Coastguard Worker  }
37*d5c09012SAndroid Build Coastguard Worker
38*d5c09012SAndroid Build Coastguard Worker  // Gets the details of a specific cluster.
39*d5c09012SAndroid Build Coastguard Worker  rpc GetCluster(GetClusterRequest) returns (Cluster) {
40*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { get: "/v1alpha1/{name=projects/*/locations/*/clusters/*}" };
41*d5c09012SAndroid Build Coastguard Worker  }
42*d5c09012SAndroid Build Coastguard Worker
43*d5c09012SAndroid Build Coastguard Worker  // Creates a cluster, consisting of the specified number and type of Google
44*d5c09012SAndroid Build Coastguard Worker  // Compute Engine instances.
45*d5c09012SAndroid Build Coastguard Worker  //
46*d5c09012SAndroid Build Coastguard Worker  // By default, the cluster is created in the project's
47*d5c09012SAndroid Build Coastguard Worker  // [default network](/compute/docs/networks-and-firewalls#networks).
48*d5c09012SAndroid Build Coastguard Worker  //
49*d5c09012SAndroid Build Coastguard Worker  // One firewall is added for the cluster. After cluster creation,
50*d5c09012SAndroid Build Coastguard Worker  // the cluster creates routes for each node to allow the containers
51*d5c09012SAndroid Build Coastguard Worker  // on that node to communicate with all other instances in the
52*d5c09012SAndroid Build Coastguard Worker  // cluster.
53*d5c09012SAndroid Build Coastguard Worker  //
54*d5c09012SAndroid Build Coastguard Worker  // Finally, an entry is added to the project's global metadata indicating
55*d5c09012SAndroid Build Coastguard Worker  // which CIDR range is being used by the cluster.
56*d5c09012SAndroid Build Coastguard Worker  rpc CreateCluster(CreateClusterRequest) returns (Operation) {
57*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{parent=projects/*/locations/*}/clusters" body: "*" };
58*d5c09012SAndroid Build Coastguard Worker  }
59*d5c09012SAndroid Build Coastguard Worker
60*d5c09012SAndroid Build Coastguard Worker  // Updates the settings of a specific cluster.
61*d5c09012SAndroid Build Coastguard Worker  rpc UpdateCluster(UpdateClusterRequest) returns (Operation) {
62*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { put: "/v1alpha1/{name=projects/*/locations/*/clusters/*}" body: "*" };
63*d5c09012SAndroid Build Coastguard Worker  }
64*d5c09012SAndroid Build Coastguard Worker
65*d5c09012SAndroid Build Coastguard Worker  // Updates the version and/or iamge type of a specific node pool.
66*d5c09012SAndroid Build Coastguard Worker  rpc UpdateNodePool(UpdateNodePoolRequest) returns (Operation) {
67*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { put: "/v1alpha1/{name=projects/*/locations/*/clusters/*/nodePools/*}" body: "*" };
68*d5c09012SAndroid Build Coastguard Worker  }
69*d5c09012SAndroid Build Coastguard Worker
70*d5c09012SAndroid Build Coastguard Worker  // Sets the autoscaling settings of a specific node pool.
71*d5c09012SAndroid Build Coastguard Worker  rpc SetNodePoolAutoscaling(SetNodePoolAutoscalingRequest) returns (Operation) {
72*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*/nodePools/*}:setAutoscaling" body: "*" };
73*d5c09012SAndroid Build Coastguard Worker  }
74*d5c09012SAndroid Build Coastguard Worker
75*d5c09012SAndroid Build Coastguard Worker  // Sets the logging service of a specific cluster.
76*d5c09012SAndroid Build Coastguard Worker  rpc SetLoggingService(SetLoggingServiceRequest) returns (Operation) {
77*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*}:setLogging" body: "*" };
78*d5c09012SAndroid Build Coastguard Worker  }
79*d5c09012SAndroid Build Coastguard Worker
80*d5c09012SAndroid Build Coastguard Worker  // Sets the monitoring service of a specific cluster.
81*d5c09012SAndroid Build Coastguard Worker  rpc SetMonitoringService(SetMonitoringServiceRequest) returns (Operation) {
82*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*}:setMonitoring" body: "*" };
83*d5c09012SAndroid Build Coastguard Worker  }
84*d5c09012SAndroid Build Coastguard Worker
85*d5c09012SAndroid Build Coastguard Worker  // Sets the addons of a specific cluster.
86*d5c09012SAndroid Build Coastguard Worker  rpc SetAddonsConfig(SetAddonsConfigRequest) returns (Operation) {
87*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*}:setAddons" body: "*" };
88*d5c09012SAndroid Build Coastguard Worker  }
89*d5c09012SAndroid Build Coastguard Worker
90*d5c09012SAndroid Build Coastguard Worker  // Sets the locations of a specific cluster.
91*d5c09012SAndroid Build Coastguard Worker  rpc SetLocations(SetLocationsRequest) returns (Operation) {
92*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*}:setLocations" body: "*" };
93*d5c09012SAndroid Build Coastguard Worker  }
94*d5c09012SAndroid Build Coastguard Worker
95*d5c09012SAndroid Build Coastguard Worker  // Updates the master of a specific cluster.
96*d5c09012SAndroid Build Coastguard Worker  rpc UpdateMaster(UpdateMasterRequest) returns (Operation) {
97*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*}:updateMaster" body: "*" };
98*d5c09012SAndroid Build Coastguard Worker  }
99*d5c09012SAndroid Build Coastguard Worker
100*d5c09012SAndroid Build Coastguard Worker  // Used to set master auth materials. Currently supports :-
101*d5c09012SAndroid Build Coastguard Worker  // Changing the admin password of a specific cluster.
102*d5c09012SAndroid Build Coastguard Worker  // This can be either via password generation or explicitly set.
103*d5c09012SAndroid Build Coastguard Worker  // Modify basic_auth.csv and reset the K8S API server.
104*d5c09012SAndroid Build Coastguard Worker  rpc SetMasterAuth(SetMasterAuthRequest) returns (Operation) {
105*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*}:setMasterAuth" body: "*" };
106*d5c09012SAndroid Build Coastguard Worker  }
107*d5c09012SAndroid Build Coastguard Worker
108*d5c09012SAndroid Build Coastguard Worker  // Deletes the cluster, including the Kubernetes endpoint and all worker
109*d5c09012SAndroid Build Coastguard Worker  // nodes.
110*d5c09012SAndroid Build Coastguard Worker  //
111*d5c09012SAndroid Build Coastguard Worker  // Firewalls and routes that were configured during cluster creation
112*d5c09012SAndroid Build Coastguard Worker  // are also deleted.
113*d5c09012SAndroid Build Coastguard Worker  //
114*d5c09012SAndroid Build Coastguard Worker  // Other Google Compute Engine resources that might be in use by the cluster
115*d5c09012SAndroid Build Coastguard Worker  // (e.g. load balancer resources) will not be deleted if they weren't present
116*d5c09012SAndroid Build Coastguard Worker  // at the initial create time.
117*d5c09012SAndroid Build Coastguard Worker  rpc DeleteCluster(DeleteClusterRequest) returns (Operation) {
118*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { delete: "/v1alpha1/{name=projects/*/locations/*/clusters/*}" };
119*d5c09012SAndroid Build Coastguard Worker  }
120*d5c09012SAndroid Build Coastguard Worker
121*d5c09012SAndroid Build Coastguard Worker  // Lists all operations in a project in a specific zone or all zones.
122*d5c09012SAndroid Build Coastguard Worker  rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse) {
123*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { get: "/v1alpha1/{parent=projects/*/locations/*}/operations" };
124*d5c09012SAndroid Build Coastguard Worker  }
125*d5c09012SAndroid Build Coastguard Worker
126*d5c09012SAndroid Build Coastguard Worker  // Gets the specified operation.
127*d5c09012SAndroid Build Coastguard Worker  rpc GetOperation(GetOperationRequest) returns (Operation) {
128*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { get: "/v1alpha1/{name=projects/*/locations/*/operations/*}" };
129*d5c09012SAndroid Build Coastguard Worker  }
130*d5c09012SAndroid Build Coastguard Worker
131*d5c09012SAndroid Build Coastguard Worker  // Cancels the specified operation.
132*d5c09012SAndroid Build Coastguard Worker  rpc CancelOperation(CancelOperationRequest) returns (google.protobuf.Empty) {
133*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/operations/*}:cancel" body: "*" };
134*d5c09012SAndroid Build Coastguard Worker  }
135*d5c09012SAndroid Build Coastguard Worker
136*d5c09012SAndroid Build Coastguard Worker  // Returns configuration info about the Container Engine service.
137*d5c09012SAndroid Build Coastguard Worker  rpc GetServerConfig(GetServerConfigRequest) returns (ServerConfig) {
138*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { get: "/v1alpha1/{name=projects/*/locations/*}/serverConfig" };
139*d5c09012SAndroid Build Coastguard Worker  }
140*d5c09012SAndroid Build Coastguard Worker
141*d5c09012SAndroid Build Coastguard Worker  // Lists the node pools for a cluster.
142*d5c09012SAndroid Build Coastguard Worker  rpc ListNodePools(ListNodePoolsRequest) returns (ListNodePoolsResponse) {
143*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { get: "/v1alpha1/{parent=projects/*/locations/*/clusters/*}/nodePools" };
144*d5c09012SAndroid Build Coastguard Worker  }
145*d5c09012SAndroid Build Coastguard Worker
146*d5c09012SAndroid Build Coastguard Worker  // Retrieves the node pool requested.
147*d5c09012SAndroid Build Coastguard Worker  rpc GetNodePool(GetNodePoolRequest) returns (NodePool) {
148*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { get: "/v1alpha1/{name=projects/*/locations/*/clusters/*/nodePools/*}" };
149*d5c09012SAndroid Build Coastguard Worker  }
150*d5c09012SAndroid Build Coastguard Worker
151*d5c09012SAndroid Build Coastguard Worker  // Creates a node pool for a cluster.
152*d5c09012SAndroid Build Coastguard Worker  rpc CreateNodePool(CreateNodePoolRequest) returns (Operation) {
153*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{parent=projects/*/locations/*/clusters/*}/nodePools" body: "*" };
154*d5c09012SAndroid Build Coastguard Worker  }
155*d5c09012SAndroid Build Coastguard Worker
156*d5c09012SAndroid Build Coastguard Worker  // Deletes a node pool from a cluster.
157*d5c09012SAndroid Build Coastguard Worker  rpc DeleteNodePool(DeleteNodePoolRequest) returns (Operation) {
158*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { delete: "/v1alpha1/{name=projects/*/locations/*/clusters/*/nodePools/*}" };
159*d5c09012SAndroid Build Coastguard Worker  }
160*d5c09012SAndroid Build Coastguard Worker
161*d5c09012SAndroid Build Coastguard Worker  // Roll back the previously Aborted or Failed NodePool upgrade.
162*d5c09012SAndroid Build Coastguard Worker  // This will be an no-op if the last upgrade successfully completed.
163*d5c09012SAndroid Build Coastguard Worker  rpc RollbackNodePoolUpgrade(RollbackNodePoolUpgradeRequest) returns (Operation) {
164*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*/nodePools/*}:rollback" body: "*" };
165*d5c09012SAndroid Build Coastguard Worker  }
166*d5c09012SAndroid Build Coastguard Worker
167*d5c09012SAndroid Build Coastguard Worker  // Sets the NodeManagement options for a node pool.
168*d5c09012SAndroid Build Coastguard Worker  rpc SetNodePoolManagement(SetNodePoolManagementRequest) returns (Operation) {
169*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*/nodePools/*}:setManagement" body: "*" };
170*d5c09012SAndroid Build Coastguard Worker  }
171*d5c09012SAndroid Build Coastguard Worker
172*d5c09012SAndroid Build Coastguard Worker  // Sets labels on a cluster.
173*d5c09012SAndroid Build Coastguard Worker  rpc SetLabels(SetLabelsRequest) returns (Operation) {
174*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*}:setResourceLabels" body: "*" };
175*d5c09012SAndroid Build Coastguard Worker  }
176*d5c09012SAndroid Build Coastguard Worker
177*d5c09012SAndroid Build Coastguard Worker  // Enables or disables the ABAC authorization mechanism on a cluster.
178*d5c09012SAndroid Build Coastguard Worker  rpc SetLegacyAbac(SetLegacyAbacRequest) returns (Operation) {
179*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*}:setLegacyAbac" body: "*" };
180*d5c09012SAndroid Build Coastguard Worker  }
181*d5c09012SAndroid Build Coastguard Worker
182*d5c09012SAndroid Build Coastguard Worker  // Start master IP rotation.
183*d5c09012SAndroid Build Coastguard Worker  rpc StartIPRotation(StartIPRotationRequest) returns (Operation) {
184*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*}:startIpRotation" body: "*" };
185*d5c09012SAndroid Build Coastguard Worker  }
186*d5c09012SAndroid Build Coastguard Worker
187*d5c09012SAndroid Build Coastguard Worker  // Completes master IP rotation.
188*d5c09012SAndroid Build Coastguard Worker  rpc CompleteIPRotation(CompleteIPRotationRequest) returns (Operation) {
189*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*}:completeIpRotation" body: "*" };
190*d5c09012SAndroid Build Coastguard Worker  }
191*d5c09012SAndroid Build Coastguard Worker
192*d5c09012SAndroid Build Coastguard Worker  // Sets the size of a specific node pool.
193*d5c09012SAndroid Build Coastguard Worker  rpc SetNodePoolSize(SetNodePoolSizeRequest) returns (Operation) {
194*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*/nodePools/*}:setSize" body: "*" };
195*d5c09012SAndroid Build Coastguard Worker  }
196*d5c09012SAndroid Build Coastguard Worker
197*d5c09012SAndroid Build Coastguard Worker  // Enables/Disables Network Policy for a cluster.
198*d5c09012SAndroid Build Coastguard Worker  rpc SetNetworkPolicy(SetNetworkPolicyRequest) returns (Operation) {
199*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*}:setNetworkPolicy" body: "*" };
200*d5c09012SAndroid Build Coastguard Worker  }
201*d5c09012SAndroid Build Coastguard Worker
202*d5c09012SAndroid Build Coastguard Worker  // Sets the maintenance policy for a cluster.
203*d5c09012SAndroid Build Coastguard Worker  rpc SetMaintenancePolicy(SetMaintenancePolicyRequest) returns (Operation) {
204*d5c09012SAndroid Build Coastguard Worker    option (google.api.http) = { post: "/v1alpha1/{name=projects/*/locations/*/clusters/*}:setMaintenancePolicy" body: "*" };
205*d5c09012SAndroid Build Coastguard Worker  }
206*d5c09012SAndroid Build Coastguard Worker}
207*d5c09012SAndroid Build Coastguard Worker
208*d5c09012SAndroid Build Coastguard Worker// Parameters that describe the nodes in a cluster.
209*d5c09012SAndroid Build Coastguard Workermessage NodeConfig {
210*d5c09012SAndroid Build Coastguard Worker  // The name of a Google Compute Engine [machine
211*d5c09012SAndroid Build Coastguard Worker  // type](/compute/docs/machine-types) (e.g.
212*d5c09012SAndroid Build Coastguard Worker  // `n1-standard-1`).
213*d5c09012SAndroid Build Coastguard Worker  //
214*d5c09012SAndroid Build Coastguard Worker  // If unspecified, the default machine type is
215*d5c09012SAndroid Build Coastguard Worker  // `n1-standard-1`.
216*d5c09012SAndroid Build Coastguard Worker  string machine_type = 1;
217*d5c09012SAndroid Build Coastguard Worker
218*d5c09012SAndroid Build Coastguard Worker  // Size of the disk attached to each node, specified in GB.
219*d5c09012SAndroid Build Coastguard Worker  // The smallest allowed disk size is 10GB.
220*d5c09012SAndroid Build Coastguard Worker  //
221*d5c09012SAndroid Build Coastguard Worker  // If unspecified, the default disk size is 100GB.
222*d5c09012SAndroid Build Coastguard Worker  int32 disk_size_gb = 2;
223*d5c09012SAndroid Build Coastguard Worker
224*d5c09012SAndroid Build Coastguard Worker  // The set of Google API scopes to be made available on all of the
225*d5c09012SAndroid Build Coastguard Worker  // node VMs under the "default" service account.
226*d5c09012SAndroid Build Coastguard Worker  //
227*d5c09012SAndroid Build Coastguard Worker  // The following scopes are recommended, but not required, and by default are
228*d5c09012SAndroid Build Coastguard Worker  // not included:
229*d5c09012SAndroid Build Coastguard Worker  //
230*d5c09012SAndroid Build Coastguard Worker  // * `https://www.googleapis.com/auth/compute` is required for mounting
231*d5c09012SAndroid Build Coastguard Worker  // persistent storage on your nodes.
232*d5c09012SAndroid Build Coastguard Worker  // * `https://www.googleapis.com/auth/devstorage.read_only` is required for
233*d5c09012SAndroid Build Coastguard Worker  // communicating with **gcr.io**
234*d5c09012SAndroid Build Coastguard Worker  // (the [Google Container Registry](/container-registry/)).
235*d5c09012SAndroid Build Coastguard Worker  //
236*d5c09012SAndroid Build Coastguard Worker  // If unspecified, no scopes are added, unless Cloud Logging or Cloud
237*d5c09012SAndroid Build Coastguard Worker  // Monitoring are enabled, in which case their required scopes will be added.
238*d5c09012SAndroid Build Coastguard Worker  repeated string oauth_scopes = 3;
239*d5c09012SAndroid Build Coastguard Worker
240*d5c09012SAndroid Build Coastguard Worker  // The Google Cloud Platform Service Account to be used by the node VMs. If
241*d5c09012SAndroid Build Coastguard Worker  // no Service Account is specified, the "default" service account is used.
242*d5c09012SAndroid Build Coastguard Worker  string service_account = 9;
243*d5c09012SAndroid Build Coastguard Worker
244*d5c09012SAndroid Build Coastguard Worker  // The metadata key/value pairs assigned to instances in the cluster.
245*d5c09012SAndroid Build Coastguard Worker  //
246*d5c09012SAndroid Build Coastguard Worker  // Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 bytes
247*d5c09012SAndroid Build Coastguard Worker  // in length. These are reflected as part of a URL in the metadata server.
248*d5c09012SAndroid Build Coastguard Worker  // Additionally, to avoid ambiguity, keys must not conflict with any other
249*d5c09012SAndroid Build Coastguard Worker  // metadata keys for the project or be one of the four reserved keys:
250*d5c09012SAndroid Build Coastguard Worker  // "instance-template", "kube-env", "startup-script", and "user-data"
251*d5c09012SAndroid Build Coastguard Worker  //
252*d5c09012SAndroid Build Coastguard Worker  // Values are free-form strings, and only have meaning as interpreted by
253*d5c09012SAndroid Build Coastguard Worker  // the image running in the instance. The only restriction placed on them is
254*d5c09012SAndroid Build Coastguard Worker  // that each value's size must be less than or equal to 32 KB.
255*d5c09012SAndroid Build Coastguard Worker  //
256*d5c09012SAndroid Build Coastguard Worker  // The total size of all keys and values must be less than 512 KB.
257*d5c09012SAndroid Build Coastguard Worker  map<string, string> metadata = 4;
258*d5c09012SAndroid Build Coastguard Worker
259*d5c09012SAndroid Build Coastguard Worker  // The image type to use for this node. Note that for a given image type,
260*d5c09012SAndroid Build Coastguard Worker  // the latest version of it will be used.
261*d5c09012SAndroid Build Coastguard Worker  string image_type = 5;
262*d5c09012SAndroid Build Coastguard Worker
263*d5c09012SAndroid Build Coastguard Worker  // The map of Kubernetes labels (key/value pairs) to be applied to each node.
264*d5c09012SAndroid Build Coastguard Worker  // These will added in addition to any default label(s) that
265*d5c09012SAndroid Build Coastguard Worker  // Kubernetes may apply to the node.
266*d5c09012SAndroid Build Coastguard Worker  // In case of conflict in label keys, the applied set may differ depending on
267*d5c09012SAndroid Build Coastguard Worker  // the Kubernetes version -- it's best to assume the behavior is undefined
268*d5c09012SAndroid Build Coastguard Worker  // and conflicts should be avoided.
269*d5c09012SAndroid Build Coastguard Worker  // For more information, including usage and the valid values, see:
270*d5c09012SAndroid Build Coastguard Worker  // https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
271*d5c09012SAndroid Build Coastguard Worker  map<string, string> labels = 6;
272*d5c09012SAndroid Build Coastguard Worker
273*d5c09012SAndroid Build Coastguard Worker  // The number of local SSD disks to be attached to the node.
274*d5c09012SAndroid Build Coastguard Worker  //
275*d5c09012SAndroid Build Coastguard Worker  // The limit for this value is dependant upon the maximum number of
276*d5c09012SAndroid Build Coastguard Worker  // disks available on a machine per zone. See:
277*d5c09012SAndroid Build Coastguard Worker  // https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits
278*d5c09012SAndroid Build Coastguard Worker  // for more information.
279*d5c09012SAndroid Build Coastguard Worker  int32 local_ssd_count = 7;
280*d5c09012SAndroid Build Coastguard Worker
281*d5c09012SAndroid Build Coastguard Worker  // The list of instance tags applied to all nodes. Tags are used to identify
282*d5c09012SAndroid Build Coastguard Worker  // valid sources or targets for network firewalls and are specified by
283*d5c09012SAndroid Build Coastguard Worker  // the client during cluster or node pool creation. Each tag within the list
284*d5c09012SAndroid Build Coastguard Worker  // must comply with RFC1035.
285*d5c09012SAndroid Build Coastguard Worker  repeated string tags = 8;
286*d5c09012SAndroid Build Coastguard Worker
287*d5c09012SAndroid Build Coastguard Worker  // Whether the nodes are created as preemptible VM instances. See:
288*d5c09012SAndroid Build Coastguard Worker  // https://cloud.google.com/compute/docs/instances/preemptible for more
289*d5c09012SAndroid Build Coastguard Worker  // inforamtion about preemptible VM instances.
290*d5c09012SAndroid Build Coastguard Worker  bool preemptible = 10;
291*d5c09012SAndroid Build Coastguard Worker
292*d5c09012SAndroid Build Coastguard Worker  // A list of hardware accelerators to be attached to each node.
293*d5c09012SAndroid Build Coastguard Worker  // See https://cloud.google.com/compute/docs/gpus for more information about
294*d5c09012SAndroid Build Coastguard Worker  // support for GPUs.
295*d5c09012SAndroid Build Coastguard Worker  repeated AcceleratorConfig accelerators = 11;
296*d5c09012SAndroid Build Coastguard Worker
297*d5c09012SAndroid Build Coastguard Worker  // Minimum CPU platform to be used by this instance. The instance may be
298*d5c09012SAndroid Build Coastguard Worker  // scheduled on the specified or newer CPU platform. Applicable values are the
299*d5c09012SAndroid Build Coastguard Worker  // friendly names of CPU platforms, such as
300*d5c09012SAndroid Build Coastguard Worker  // <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
301*d5c09012SAndroid Build Coastguard Worker  // <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
302*d5c09012SAndroid Build Coastguard Worker  // information, read [how to specify min CPU platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
303*d5c09012SAndroid Build Coastguard Worker  string min_cpu_platform = 13;
304*d5c09012SAndroid Build Coastguard Worker
305*d5c09012SAndroid Build Coastguard Worker  // List of kubernetes taints to be applied to each node.
306*d5c09012SAndroid Build Coastguard Worker  //
307*d5c09012SAndroid Build Coastguard Worker  // For more information, including usage and the valid values, see:
308*d5c09012SAndroid Build Coastguard Worker  // https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
309*d5c09012SAndroid Build Coastguard Worker  repeated NodeTaint taints = 15;
310*d5c09012SAndroid Build Coastguard Worker}
311*d5c09012SAndroid Build Coastguard Worker
312*d5c09012SAndroid Build Coastguard Worker// Kubernetes taint is comprised of three fields: key, value, and effect. Effect
313*d5c09012SAndroid Build Coastguard Worker// can only be one of three types:  NoSchedule, PreferNoSchedule or NoExecute.
314*d5c09012SAndroid Build Coastguard Worker//
315*d5c09012SAndroid Build Coastguard Worker// For more information, including usage and the valid values, see:
316*d5c09012SAndroid Build Coastguard Worker// https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
317*d5c09012SAndroid Build Coastguard Workermessage NodeTaint {
318*d5c09012SAndroid Build Coastguard Worker  // Possible values for Effect in taint.
319*d5c09012SAndroid Build Coastguard Worker  enum Effect {
320*d5c09012SAndroid Build Coastguard Worker    // Not set
321*d5c09012SAndroid Build Coastguard Worker    EFFECT_UNSPECIFIED = 0;
322*d5c09012SAndroid Build Coastguard Worker
323*d5c09012SAndroid Build Coastguard Worker    // NoSchedule
324*d5c09012SAndroid Build Coastguard Worker    NO_SCHEDULE = 1;
325*d5c09012SAndroid Build Coastguard Worker
326*d5c09012SAndroid Build Coastguard Worker    // PreferNoSchedule
327*d5c09012SAndroid Build Coastguard Worker    PREFER_NO_SCHEDULE = 2;
328*d5c09012SAndroid Build Coastguard Worker
329*d5c09012SAndroid Build Coastguard Worker    // NoExecute
330*d5c09012SAndroid Build Coastguard Worker    NO_EXECUTE = 3;
331*d5c09012SAndroid Build Coastguard Worker  }
332*d5c09012SAndroid Build Coastguard Worker
333*d5c09012SAndroid Build Coastguard Worker  // Key for taint.
334*d5c09012SAndroid Build Coastguard Worker  string key = 1;
335*d5c09012SAndroid Build Coastguard Worker
336*d5c09012SAndroid Build Coastguard Worker  // Value for taint.
337*d5c09012SAndroid Build Coastguard Worker  string value = 2;
338*d5c09012SAndroid Build Coastguard Worker
339*d5c09012SAndroid Build Coastguard Worker  // Effect for taint.
340*d5c09012SAndroid Build Coastguard Worker  Effect effect = 3;
341*d5c09012SAndroid Build Coastguard Worker}
342*d5c09012SAndroid Build Coastguard Worker
343*d5c09012SAndroid Build Coastguard Worker// The authentication information for accessing the master endpoint.
344*d5c09012SAndroid Build Coastguard Worker// Authentication can be done using HTTP basic auth or using client
345*d5c09012SAndroid Build Coastguard Worker// certificates.
346*d5c09012SAndroid Build Coastguard Workermessage MasterAuth {
347*d5c09012SAndroid Build Coastguard Worker  // The username to use for HTTP basic authentication to the master endpoint.
348*d5c09012SAndroid Build Coastguard Worker  // For clusters v1.6.0 and later, you can disable basic authentication by
349*d5c09012SAndroid Build Coastguard Worker  // providing an empty username.
350*d5c09012SAndroid Build Coastguard Worker  string username = 1;
351*d5c09012SAndroid Build Coastguard Worker
352*d5c09012SAndroid Build Coastguard Worker  // The password to use for HTTP basic authentication to the master endpoint.
353*d5c09012SAndroid Build Coastguard Worker  // Because the master endpoint is open to the Internet, you should create a
354*d5c09012SAndroid Build Coastguard Worker  // strong password.  If a password is provided for cluster creation, username
355*d5c09012SAndroid Build Coastguard Worker  // must be non-empty.
356*d5c09012SAndroid Build Coastguard Worker  string password = 2;
357*d5c09012SAndroid Build Coastguard Worker
358*d5c09012SAndroid Build Coastguard Worker  // Configuration for client certificate authentication on the cluster.  If no
359*d5c09012SAndroid Build Coastguard Worker  // configuration is specified, a client certificate is issued.
360*d5c09012SAndroid Build Coastguard Worker  ClientCertificateConfig client_certificate_config = 3;
361*d5c09012SAndroid Build Coastguard Worker
362*d5c09012SAndroid Build Coastguard Worker  // [Output only] Base64-encoded public certificate that is the root of
363*d5c09012SAndroid Build Coastguard Worker  // trust for the cluster.
364*d5c09012SAndroid Build Coastguard Worker  string cluster_ca_certificate = 100;
365*d5c09012SAndroid Build Coastguard Worker
366*d5c09012SAndroid Build Coastguard Worker  // [Output only] Base64-encoded public certificate used by clients to
367*d5c09012SAndroid Build Coastguard Worker  // authenticate to the cluster endpoint.
368*d5c09012SAndroid Build Coastguard Worker  string client_certificate = 101;
369*d5c09012SAndroid Build Coastguard Worker
370*d5c09012SAndroid Build Coastguard Worker  // [Output only] Base64-encoded private key used by clients to authenticate
371*d5c09012SAndroid Build Coastguard Worker  // to the cluster endpoint.
372*d5c09012SAndroid Build Coastguard Worker  string client_key = 102;
373*d5c09012SAndroid Build Coastguard Worker}
374*d5c09012SAndroid Build Coastguard Worker
375*d5c09012SAndroid Build Coastguard Worker// Configuration for client certificates on the cluster.
376*d5c09012SAndroid Build Coastguard Workermessage ClientCertificateConfig {
377*d5c09012SAndroid Build Coastguard Worker  // Issue a client certificate.
378*d5c09012SAndroid Build Coastguard Worker  bool issue_client_certificate = 1;
379*d5c09012SAndroid Build Coastguard Worker}
380*d5c09012SAndroid Build Coastguard Worker
381*d5c09012SAndroid Build Coastguard Worker// Configuration for the addons that can be automatically spun up in the
382*d5c09012SAndroid Build Coastguard Worker// cluster, enabling additional functionality.
383*d5c09012SAndroid Build Coastguard Workermessage AddonsConfig {
384*d5c09012SAndroid Build Coastguard Worker  // Configuration for the HTTP (L7) load balancing controller addon, which
385*d5c09012SAndroid Build Coastguard Worker  // makes it easy to set up HTTP load balancers for services in a cluster.
386*d5c09012SAndroid Build Coastguard Worker  HttpLoadBalancing http_load_balancing = 1;
387*d5c09012SAndroid Build Coastguard Worker
388*d5c09012SAndroid Build Coastguard Worker  // Configuration for the horizontal pod autoscaling feature, which
389*d5c09012SAndroid Build Coastguard Worker  // increases or decreases the number of replica pods a replication controller
390*d5c09012SAndroid Build Coastguard Worker  // has based on the resource usage of the existing pods.
391*d5c09012SAndroid Build Coastguard Worker  HorizontalPodAutoscaling horizontal_pod_autoscaling = 2;
392*d5c09012SAndroid Build Coastguard Worker
393*d5c09012SAndroid Build Coastguard Worker  // Configuration for the Kubernetes Dashboard.
394*d5c09012SAndroid Build Coastguard Worker  KubernetesDashboard kubernetes_dashboard = 3;
395*d5c09012SAndroid Build Coastguard Worker
396*d5c09012SAndroid Build Coastguard Worker  // Configuration for NetworkPolicy. This only tracks whether the addon
397*d5c09012SAndroid Build Coastguard Worker  // is enabled or not on the Master, it does not track whether network policy
398*d5c09012SAndroid Build Coastguard Worker  // is enabled for the nodes.
399*d5c09012SAndroid Build Coastguard Worker  NetworkPolicyConfig network_policy_config = 4;
400*d5c09012SAndroid Build Coastguard Worker}
401*d5c09012SAndroid Build Coastguard Worker
402*d5c09012SAndroid Build Coastguard Worker// Configuration options for the HTTP (L7) load balancing controller addon,
403*d5c09012SAndroid Build Coastguard Worker// which makes it easy to set up HTTP load balancers for services in a cluster.
404*d5c09012SAndroid Build Coastguard Workermessage HttpLoadBalancing {
405*d5c09012SAndroid Build Coastguard Worker  // Whether the HTTP Load Balancing controller is enabled in the cluster.
406*d5c09012SAndroid Build Coastguard Worker  // When enabled, it runs a small pod in the cluster that manages the load
407*d5c09012SAndroid Build Coastguard Worker  // balancers.
408*d5c09012SAndroid Build Coastguard Worker  bool disabled = 1;
409*d5c09012SAndroid Build Coastguard Worker}
410*d5c09012SAndroid Build Coastguard Worker
411*d5c09012SAndroid Build Coastguard Worker// Configuration options for the horizontal pod autoscaling feature, which
412*d5c09012SAndroid Build Coastguard Worker// increases or decreases the number of replica pods a replication controller
413*d5c09012SAndroid Build Coastguard Worker// has based on the resource usage of the existing pods.
414*d5c09012SAndroid Build Coastguard Workermessage HorizontalPodAutoscaling {
415*d5c09012SAndroid Build Coastguard Worker  // Whether the Horizontal Pod Autoscaling feature is enabled in the cluster.
416*d5c09012SAndroid Build Coastguard Worker  // When enabled, it ensures that a Heapster pod is running in the cluster,
417*d5c09012SAndroid Build Coastguard Worker  // which is also used by the Cloud Monitoring service.
418*d5c09012SAndroid Build Coastguard Worker  bool disabled = 1;
419*d5c09012SAndroid Build Coastguard Worker}
420*d5c09012SAndroid Build Coastguard Worker
421*d5c09012SAndroid Build Coastguard Worker// Configuration for the Kubernetes Dashboard.
422*d5c09012SAndroid Build Coastguard Workermessage KubernetesDashboard {
423*d5c09012SAndroid Build Coastguard Worker  // Whether the Kubernetes Dashboard is enabled for this cluster.
424*d5c09012SAndroid Build Coastguard Worker  bool disabled = 1;
425*d5c09012SAndroid Build Coastguard Worker}
426*d5c09012SAndroid Build Coastguard Worker
427*d5c09012SAndroid Build Coastguard Worker// Configuration for NetworkPolicy. This only tracks whether the addon
428*d5c09012SAndroid Build Coastguard Worker// is enabled or not on the Master, it does not track whether network policy
429*d5c09012SAndroid Build Coastguard Worker// is enabled for the nodes.
430*d5c09012SAndroid Build Coastguard Workermessage NetworkPolicyConfig {
431*d5c09012SAndroid Build Coastguard Worker  // Whether NetworkPolicy is enabled for this cluster.
432*d5c09012SAndroid Build Coastguard Worker  bool disabled = 1;
433*d5c09012SAndroid Build Coastguard Worker}
434*d5c09012SAndroid Build Coastguard Worker
435*d5c09012SAndroid Build Coastguard Worker// Configuration options for the master authorized networks feature. Enabled
436*d5c09012SAndroid Build Coastguard Worker// master authorized networks will disallow all external traffic to access
437*d5c09012SAndroid Build Coastguard Worker// Kubernetes master through HTTPS except traffic from the given CIDR blocks,
438*d5c09012SAndroid Build Coastguard Worker// Google Compute Engine Public IPs and Google Prod IPs.
439*d5c09012SAndroid Build Coastguard Workermessage MasterAuthorizedNetworksConfig {
440*d5c09012SAndroid Build Coastguard Worker  // CidrBlock contains an optional name and one CIDR block.
441*d5c09012SAndroid Build Coastguard Worker  message CidrBlock {
442*d5c09012SAndroid Build Coastguard Worker    // display_name is an optional field for users to identify CIDR blocks.
443*d5c09012SAndroid Build Coastguard Worker    string display_name = 1;
444*d5c09012SAndroid Build Coastguard Worker
445*d5c09012SAndroid Build Coastguard Worker    // cidr_block must be specified in CIDR notation.
446*d5c09012SAndroid Build Coastguard Worker    string cidr_block = 2;
447*d5c09012SAndroid Build Coastguard Worker  }
448*d5c09012SAndroid Build Coastguard Worker
449*d5c09012SAndroid Build Coastguard Worker  // Whether or not master authorized networks is enabled.
450*d5c09012SAndroid Build Coastguard Worker  bool enabled = 1;
451*d5c09012SAndroid Build Coastguard Worker
452*d5c09012SAndroid Build Coastguard Worker  // cidr_blocks define up to 10 external networks that could access
453*d5c09012SAndroid Build Coastguard Worker  // Kubernetes master through HTTPS.
454*d5c09012SAndroid Build Coastguard Worker  repeated CidrBlock cidr_blocks = 2;
455*d5c09012SAndroid Build Coastguard Worker}
456*d5c09012SAndroid Build Coastguard Worker
457*d5c09012SAndroid Build Coastguard Worker// Configuration options for the NetworkPolicy feature.
458*d5c09012SAndroid Build Coastguard Worker// https://kubernetes.io/docs/concepts/services-networking/networkpolicies/
459*d5c09012SAndroid Build Coastguard Workermessage NetworkPolicy {
460*d5c09012SAndroid Build Coastguard Worker  // Allowed Network Policy providers.
461*d5c09012SAndroid Build Coastguard Worker  enum Provider {
462*d5c09012SAndroid Build Coastguard Worker    // Not set
463*d5c09012SAndroid Build Coastguard Worker    PROVIDER_UNSPECIFIED = 0;
464*d5c09012SAndroid Build Coastguard Worker
465*d5c09012SAndroid Build Coastguard Worker    // Tigera (Calico Felix).
466*d5c09012SAndroid Build Coastguard Worker    CALICO = 1;
467*d5c09012SAndroid Build Coastguard Worker  }
468*d5c09012SAndroid Build Coastguard Worker
469*d5c09012SAndroid Build Coastguard Worker  // The selected network policy provider.
470*d5c09012SAndroid Build Coastguard Worker  Provider provider = 1;
471*d5c09012SAndroid Build Coastguard Worker
472*d5c09012SAndroid Build Coastguard Worker  // Whether network policy is enabled on the cluster.
473*d5c09012SAndroid Build Coastguard Worker  bool enabled = 2;
474*d5c09012SAndroid Build Coastguard Worker}
475*d5c09012SAndroid Build Coastguard Worker
476*d5c09012SAndroid Build Coastguard Worker// Configuration for controlling how IPs are allocated in the cluster.
477*d5c09012SAndroid Build Coastguard Workermessage IPAllocationPolicy {
478*d5c09012SAndroid Build Coastguard Worker  // Whether alias IPs will be used for pod IPs in the cluster.
479*d5c09012SAndroid Build Coastguard Worker  bool use_ip_aliases = 1;
480*d5c09012SAndroid Build Coastguard Worker
481*d5c09012SAndroid Build Coastguard Worker  // Whether a new subnetwork will be created automatically for the cluster.
482*d5c09012SAndroid Build Coastguard Worker  //
483*d5c09012SAndroid Build Coastguard Worker  // This field is only applicable when `use_ip_aliases` is true.
484*d5c09012SAndroid Build Coastguard Worker  bool create_subnetwork = 2;
485*d5c09012SAndroid Build Coastguard Worker
486*d5c09012SAndroid Build Coastguard Worker  // A custom subnetwork name to be used if `create_subnetwork` is true.  If
487*d5c09012SAndroid Build Coastguard Worker  // this field is empty, then an automatic name will be chosen for the new
488*d5c09012SAndroid Build Coastguard Worker  // subnetwork.
489*d5c09012SAndroid Build Coastguard Worker  string subnetwork_name = 3;
490*d5c09012SAndroid Build Coastguard Worker
491*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use cluster_ipv4_cidr_block.
492*d5c09012SAndroid Build Coastguard Worker  string cluster_ipv4_cidr = 4;
493*d5c09012SAndroid Build Coastguard Worker
494*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use node_ipv4_cidr_block.
495*d5c09012SAndroid Build Coastguard Worker  string node_ipv4_cidr = 5;
496*d5c09012SAndroid Build Coastguard Worker
497*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use services_ipv4_cidr_block.
498*d5c09012SAndroid Build Coastguard Worker  string services_ipv4_cidr = 6;
499*d5c09012SAndroid Build Coastguard Worker
500*d5c09012SAndroid Build Coastguard Worker  // The name of the secondary range to be used for the cluster CIDR
501*d5c09012SAndroid Build Coastguard Worker  // block.  The secondary range will be used for pod IP
502*d5c09012SAndroid Build Coastguard Worker  // addresses. This must be an existing secondary range associated
503*d5c09012SAndroid Build Coastguard Worker  // with the cluster subnetwork.
504*d5c09012SAndroid Build Coastguard Worker  //
505*d5c09012SAndroid Build Coastguard Worker  // This field is only applicable if use_ip_aliases is true and
506*d5c09012SAndroid Build Coastguard Worker  // create_subnetwork is false.
507*d5c09012SAndroid Build Coastguard Worker  string cluster_secondary_range_name = 7;
508*d5c09012SAndroid Build Coastguard Worker
509*d5c09012SAndroid Build Coastguard Worker  // The name of the secondary range to be used as for the services
510*d5c09012SAndroid Build Coastguard Worker  // CIDR block.  The secondary range will be used for service
511*d5c09012SAndroid Build Coastguard Worker  // ClusterIPs. This must be an existing secondary range associated
512*d5c09012SAndroid Build Coastguard Worker  // with the cluster subnetwork.
513*d5c09012SAndroid Build Coastguard Worker  //
514*d5c09012SAndroid Build Coastguard Worker  // This field is only applicable with use_ip_aliases is true and
515*d5c09012SAndroid Build Coastguard Worker  // create_subnetwork is false.
516*d5c09012SAndroid Build Coastguard Worker  string services_secondary_range_name = 8;
517*d5c09012SAndroid Build Coastguard Worker
518*d5c09012SAndroid Build Coastguard Worker  // The IP address range for the cluster pod IPs. If this field is set, then
519*d5c09012SAndroid Build Coastguard Worker  // `cluster.cluster_ipv4_cidr` must be left blank.
520*d5c09012SAndroid Build Coastguard Worker  //
521*d5c09012SAndroid Build Coastguard Worker  // This field is only applicable when `use_ip_aliases` is true.
522*d5c09012SAndroid Build Coastguard Worker  //
523*d5c09012SAndroid Build Coastguard Worker  // Set to blank to have a range chosen with the default size.
524*d5c09012SAndroid Build Coastguard Worker  //
525*d5c09012SAndroid Build Coastguard Worker  // Set to /netmask (e.g. `/14`) to have a range chosen with a specific
526*d5c09012SAndroid Build Coastguard Worker  // netmask.
527*d5c09012SAndroid Build Coastguard Worker  //
528*d5c09012SAndroid Build Coastguard Worker  // Set to a
529*d5c09012SAndroid Build Coastguard Worker  // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
530*d5c09012SAndroid Build Coastguard Worker  // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
531*d5c09012SAndroid Build Coastguard Worker  // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
532*d5c09012SAndroid Build Coastguard Worker  // to use.
533*d5c09012SAndroid Build Coastguard Worker  string cluster_ipv4_cidr_block = 9;
534*d5c09012SAndroid Build Coastguard Worker
535*d5c09012SAndroid Build Coastguard Worker  // The IP address range of the instance IPs in this cluster.
536*d5c09012SAndroid Build Coastguard Worker  //
537*d5c09012SAndroid Build Coastguard Worker  // This is applicable only if `create_subnetwork` is true.
538*d5c09012SAndroid Build Coastguard Worker  //
539*d5c09012SAndroid Build Coastguard Worker  // Set to blank to have a range chosen with the default size.
540*d5c09012SAndroid Build Coastguard Worker  //
541*d5c09012SAndroid Build Coastguard Worker  // Set to /netmask (e.g. `/14`) to have a range chosen with a specific
542*d5c09012SAndroid Build Coastguard Worker  // netmask.
543*d5c09012SAndroid Build Coastguard Worker  //
544*d5c09012SAndroid Build Coastguard Worker  // Set to a
545*d5c09012SAndroid Build Coastguard Worker  // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
546*d5c09012SAndroid Build Coastguard Worker  // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
547*d5c09012SAndroid Build Coastguard Worker  // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
548*d5c09012SAndroid Build Coastguard Worker  // to use.
549*d5c09012SAndroid Build Coastguard Worker  string node_ipv4_cidr_block = 10;
550*d5c09012SAndroid Build Coastguard Worker
551*d5c09012SAndroid Build Coastguard Worker  // The IP address range of the services IPs in this cluster. If blank, a range
552*d5c09012SAndroid Build Coastguard Worker  // will be automatically chosen with the default size.
553*d5c09012SAndroid Build Coastguard Worker  //
554*d5c09012SAndroid Build Coastguard Worker  // This field is only applicable when `use_ip_aliases` is true.
555*d5c09012SAndroid Build Coastguard Worker  //
556*d5c09012SAndroid Build Coastguard Worker  // Set to blank to have a range chosen with the default size.
557*d5c09012SAndroid Build Coastguard Worker  //
558*d5c09012SAndroid Build Coastguard Worker  // Set to /netmask (e.g. `/14`) to have a range chosen with a specific
559*d5c09012SAndroid Build Coastguard Worker  // netmask.
560*d5c09012SAndroid Build Coastguard Worker  //
561*d5c09012SAndroid Build Coastguard Worker  // Set to a
562*d5c09012SAndroid Build Coastguard Worker  // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
563*d5c09012SAndroid Build Coastguard Worker  // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g.
564*d5c09012SAndroid Build Coastguard Worker  // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range
565*d5c09012SAndroid Build Coastguard Worker  // to use.
566*d5c09012SAndroid Build Coastguard Worker  string services_ipv4_cidr_block = 11;
567*d5c09012SAndroid Build Coastguard Worker}
568*d5c09012SAndroid Build Coastguard Worker
569*d5c09012SAndroid Build Coastguard Worker// Configuration for the PodSecurityPolicy feature.
570*d5c09012SAndroid Build Coastguard Workermessage PodSecurityPolicyConfig {
571*d5c09012SAndroid Build Coastguard Worker  // Enable the PodSecurityPolicy controller for this cluster. If enabled, pods
572*d5c09012SAndroid Build Coastguard Worker  // must be valid under a PodSecurityPolicy to be created.
573*d5c09012SAndroid Build Coastguard Worker  bool enabled = 1;
574*d5c09012SAndroid Build Coastguard Worker}
575*d5c09012SAndroid Build Coastguard Worker
576*d5c09012SAndroid Build Coastguard Worker// A Google Container Engine cluster.
577*d5c09012SAndroid Build Coastguard Workermessage Cluster {
578*d5c09012SAndroid Build Coastguard Worker  // The current status of the cluster.
579*d5c09012SAndroid Build Coastguard Worker  enum Status {
580*d5c09012SAndroid Build Coastguard Worker    // Not set.
581*d5c09012SAndroid Build Coastguard Worker    STATUS_UNSPECIFIED = 0;
582*d5c09012SAndroid Build Coastguard Worker
583*d5c09012SAndroid Build Coastguard Worker    // The PROVISIONING state indicates the cluster is being created.
584*d5c09012SAndroid Build Coastguard Worker    PROVISIONING = 1;
585*d5c09012SAndroid Build Coastguard Worker
586*d5c09012SAndroid Build Coastguard Worker    // The RUNNING state indicates the cluster has been created and is fully
587*d5c09012SAndroid Build Coastguard Worker    // usable.
588*d5c09012SAndroid Build Coastguard Worker    RUNNING = 2;
589*d5c09012SAndroid Build Coastguard Worker
590*d5c09012SAndroid Build Coastguard Worker    // The RECONCILING state indicates that some work is actively being done on
591*d5c09012SAndroid Build Coastguard Worker    // the cluster, such as upgrading the master or node software. Details can
592*d5c09012SAndroid Build Coastguard Worker    // be found in the `statusMessage` field.
593*d5c09012SAndroid Build Coastguard Worker    RECONCILING = 3;
594*d5c09012SAndroid Build Coastguard Worker
595*d5c09012SAndroid Build Coastguard Worker    // The STOPPING state indicates the cluster is being deleted.
596*d5c09012SAndroid Build Coastguard Worker    STOPPING = 4;
597*d5c09012SAndroid Build Coastguard Worker
598*d5c09012SAndroid Build Coastguard Worker    // The ERROR state indicates the cluster may be unusable. Details
599*d5c09012SAndroid Build Coastguard Worker    // can be found in the `statusMessage` field.
600*d5c09012SAndroid Build Coastguard Worker    ERROR = 5;
601*d5c09012SAndroid Build Coastguard Worker  }
602*d5c09012SAndroid Build Coastguard Worker
603*d5c09012SAndroid Build Coastguard Worker  // The name of this cluster. The name must be unique within this project
604*d5c09012SAndroid Build Coastguard Worker  // and zone, and can be up to 40 characters with the following restrictions:
605*d5c09012SAndroid Build Coastguard Worker  //
606*d5c09012SAndroid Build Coastguard Worker  // * Lowercase letters, numbers, and hyphens only.
607*d5c09012SAndroid Build Coastguard Worker  // * Must start with a letter.
608*d5c09012SAndroid Build Coastguard Worker  // * Must end with a number or a letter.
609*d5c09012SAndroid Build Coastguard Worker  string name = 1;
610*d5c09012SAndroid Build Coastguard Worker
611*d5c09012SAndroid Build Coastguard Worker  // An optional description of this cluster.
612*d5c09012SAndroid Build Coastguard Worker  string description = 2;
613*d5c09012SAndroid Build Coastguard Worker
614*d5c09012SAndroid Build Coastguard Worker  // The number of nodes to create in this cluster. You must ensure that your
615*d5c09012SAndroid Build Coastguard Worker  // Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
616*d5c09012SAndroid Build Coastguard Worker  // is sufficient for this number of instances. You must also have available
617*d5c09012SAndroid Build Coastguard Worker  // firewall and routes quota.
618*d5c09012SAndroid Build Coastguard Worker  // For requests, this field should only be used in lieu of a
619*d5c09012SAndroid Build Coastguard Worker  // "node_pool" object, since this configuration (along with the
620*d5c09012SAndroid Build Coastguard Worker  // "node_config") will be used to create a "NodePool" object with an
621*d5c09012SAndroid Build Coastguard Worker  // auto-generated name. Do not use this and a node_pool at the same time.
622*d5c09012SAndroid Build Coastguard Worker  int32 initial_node_count = 3;
623*d5c09012SAndroid Build Coastguard Worker
624*d5c09012SAndroid Build Coastguard Worker  // Parameters used in creating the cluster's nodes.
625*d5c09012SAndroid Build Coastguard Worker  // See `nodeConfig` for the description of its properties.
626*d5c09012SAndroid Build Coastguard Worker  // For requests, this field should only be used in lieu of a
627*d5c09012SAndroid Build Coastguard Worker  // "node_pool" object, since this configuration (along with the
628*d5c09012SAndroid Build Coastguard Worker  // "initial_node_count") will be used to create a "NodePool" object with an
629*d5c09012SAndroid Build Coastguard Worker  // auto-generated name. Do not use this and a node_pool at the same time.
630*d5c09012SAndroid Build Coastguard Worker  // For responses, this field will be populated with the node configuration of
631*d5c09012SAndroid Build Coastguard Worker  // the first node pool.
632*d5c09012SAndroid Build Coastguard Worker  //
633*d5c09012SAndroid Build Coastguard Worker  // If unspecified, the defaults are used.
634*d5c09012SAndroid Build Coastguard Worker  NodeConfig node_config = 4;
635*d5c09012SAndroid Build Coastguard Worker
636*d5c09012SAndroid Build Coastguard Worker  // The authentication information for accessing the master endpoint.
637*d5c09012SAndroid Build Coastguard Worker  MasterAuth master_auth = 5;
638*d5c09012SAndroid Build Coastguard Worker
639*d5c09012SAndroid Build Coastguard Worker  // The logging service the cluster should use to write logs.
640*d5c09012SAndroid Build Coastguard Worker  // Currently available options:
641*d5c09012SAndroid Build Coastguard Worker  //
642*d5c09012SAndroid Build Coastguard Worker  // * `logging.googleapis.com` - the Google Cloud Logging service.
643*d5c09012SAndroid Build Coastguard Worker  // * `none` - no logs will be exported from the cluster.
644*d5c09012SAndroid Build Coastguard Worker  // * if left as an empty string,`logging.googleapis.com` will be used.
645*d5c09012SAndroid Build Coastguard Worker  string logging_service = 6;
646*d5c09012SAndroid Build Coastguard Worker
647*d5c09012SAndroid Build Coastguard Worker  // The monitoring service the cluster should use to write metrics.
648*d5c09012SAndroid Build Coastguard Worker  // Currently available options:
649*d5c09012SAndroid Build Coastguard Worker  //
650*d5c09012SAndroid Build Coastguard Worker  // * `monitoring.googleapis.com` - the Google Cloud Monitoring service.
651*d5c09012SAndroid Build Coastguard Worker  // * `none` - no metrics will be exported from the cluster.
652*d5c09012SAndroid Build Coastguard Worker  // * if left as an empty string, `monitoring.googleapis.com` will be used.
653*d5c09012SAndroid Build Coastguard Worker  string monitoring_service = 7;
654*d5c09012SAndroid Build Coastguard Worker
655*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
656*d5c09012SAndroid Build Coastguard Worker  // [network](/compute/docs/networks-and-firewalls#networks) to which the
657*d5c09012SAndroid Build Coastguard Worker  // cluster is connected. If left unspecified, the `default` network
658*d5c09012SAndroid Build Coastguard Worker  // will be used.
659*d5c09012SAndroid Build Coastguard Worker  string network = 8;
660*d5c09012SAndroid Build Coastguard Worker
661*d5c09012SAndroid Build Coastguard Worker  // The IP address range of the container pods in this cluster, in
662*d5c09012SAndroid Build Coastguard Worker  // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
663*d5c09012SAndroid Build Coastguard Worker  // notation (e.g. `10.96.0.0/14`). Leave blank to have
664*d5c09012SAndroid Build Coastguard Worker  // one automatically chosen or specify a `/14` block in `10.0.0.0/8`.
665*d5c09012SAndroid Build Coastguard Worker  string cluster_ipv4_cidr = 9;
666*d5c09012SAndroid Build Coastguard Worker
667*d5c09012SAndroid Build Coastguard Worker  // Configurations for the various addons available to run in the cluster.
668*d5c09012SAndroid Build Coastguard Worker  AddonsConfig addons_config = 10;
669*d5c09012SAndroid Build Coastguard Worker
670*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
671*d5c09012SAndroid Build Coastguard Worker  // [subnetwork](/compute/docs/subnetworks) to which the
672*d5c09012SAndroid Build Coastguard Worker  // cluster is connected.
673*d5c09012SAndroid Build Coastguard Worker  string subnetwork = 11;
674*d5c09012SAndroid Build Coastguard Worker
675*d5c09012SAndroid Build Coastguard Worker  // The node pools associated with this cluster.
676*d5c09012SAndroid Build Coastguard Worker  // This field should not be set if "node_config" or "initial_node_count" are
677*d5c09012SAndroid Build Coastguard Worker  // specified.
678*d5c09012SAndroid Build Coastguard Worker  repeated NodePool node_pools = 12;
679*d5c09012SAndroid Build Coastguard Worker
680*d5c09012SAndroid Build Coastguard Worker  // The list of Google Compute Engine
681*d5c09012SAndroid Build Coastguard Worker  // [locations](/compute/docs/zones#available) in which the cluster's nodes
682*d5c09012SAndroid Build Coastguard Worker  // should be located.
683*d5c09012SAndroid Build Coastguard Worker  repeated string locations = 13;
684*d5c09012SAndroid Build Coastguard Worker
685*d5c09012SAndroid Build Coastguard Worker  // Kubernetes alpha features are enabled on this cluster. This includes alpha
686*d5c09012SAndroid Build Coastguard Worker  // API groups (e.g. v1alpha1) and features that may not be production ready in
687*d5c09012SAndroid Build Coastguard Worker  // the kubernetes version of the master and nodes.
688*d5c09012SAndroid Build Coastguard Worker  // The cluster has no SLA for uptime and master/node upgrades are disabled.
689*d5c09012SAndroid Build Coastguard Worker  // Alpha enabled clusters are automatically deleted thirty days after
690*d5c09012SAndroid Build Coastguard Worker  // creation.
691*d5c09012SAndroid Build Coastguard Worker  bool enable_kubernetes_alpha = 14;
692*d5c09012SAndroid Build Coastguard Worker
693*d5c09012SAndroid Build Coastguard Worker  // Configuration options for the NetworkPolicy feature.
694*d5c09012SAndroid Build Coastguard Worker  NetworkPolicy network_policy = 19;
695*d5c09012SAndroid Build Coastguard Worker
696*d5c09012SAndroid Build Coastguard Worker  // Configuration for cluster IP allocation.
697*d5c09012SAndroid Build Coastguard Worker  IPAllocationPolicy ip_allocation_policy = 20;
698*d5c09012SAndroid Build Coastguard Worker
699*d5c09012SAndroid Build Coastguard Worker  // The configuration options for master authorized networks feature.
700*d5c09012SAndroid Build Coastguard Worker  MasterAuthorizedNetworksConfig master_authorized_networks_config = 22;
701*d5c09012SAndroid Build Coastguard Worker
702*d5c09012SAndroid Build Coastguard Worker  // Configure the maintenance policy for this cluster.
703*d5c09012SAndroid Build Coastguard Worker  MaintenancePolicy maintenance_policy = 23;
704*d5c09012SAndroid Build Coastguard Worker
705*d5c09012SAndroid Build Coastguard Worker  // Configuration for the PodSecurityPolicy feature.
706*d5c09012SAndroid Build Coastguard Worker  PodSecurityPolicyConfig pod_security_policy_config = 25;
707*d5c09012SAndroid Build Coastguard Worker
708*d5c09012SAndroid Build Coastguard Worker  // [Output only] Server-defined URL for the resource.
709*d5c09012SAndroid Build Coastguard Worker  string self_link = 100;
710*d5c09012SAndroid Build Coastguard Worker
711*d5c09012SAndroid Build Coastguard Worker  // [Output only] The name of the Google Compute Engine
712*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
713*d5c09012SAndroid Build Coastguard Worker  // resides.
714*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use location instead.
715*d5c09012SAndroid Build Coastguard Worker  string zone = 101;
716*d5c09012SAndroid Build Coastguard Worker
717*d5c09012SAndroid Build Coastguard Worker  // [Output only] The IP address of this cluster's master endpoint.
718*d5c09012SAndroid Build Coastguard Worker  // The endpoint can be accessed from the internet at
719*d5c09012SAndroid Build Coastguard Worker  // `https://username:password@endpoint/`.
720*d5c09012SAndroid Build Coastguard Worker  //
721*d5c09012SAndroid Build Coastguard Worker  // See the `masterAuth` property of this resource for username and
722*d5c09012SAndroid Build Coastguard Worker  // password information.
723*d5c09012SAndroid Build Coastguard Worker  string endpoint = 102;
724*d5c09012SAndroid Build Coastguard Worker
725*d5c09012SAndroid Build Coastguard Worker  // The initial Kubernetes version for this cluster.  Valid versions are those
726*d5c09012SAndroid Build Coastguard Worker  // found in validMasterVersions returned by getServerConfig.  The version can
727*d5c09012SAndroid Build Coastguard Worker  // be upgraded over time; such upgrades are reflected in
728*d5c09012SAndroid Build Coastguard Worker  // currentMasterVersion and currentNodeVersion.
729*d5c09012SAndroid Build Coastguard Worker  string initial_cluster_version = 103;
730*d5c09012SAndroid Build Coastguard Worker
731*d5c09012SAndroid Build Coastguard Worker  // [Output only] The current software version of the master endpoint.
732*d5c09012SAndroid Build Coastguard Worker  string current_master_version = 104;
733*d5c09012SAndroid Build Coastguard Worker
734*d5c09012SAndroid Build Coastguard Worker  // [Output only] The current version of the node software components.
735*d5c09012SAndroid Build Coastguard Worker  // If they are currently at multiple versions because they're in the process
736*d5c09012SAndroid Build Coastguard Worker  // of being upgraded, this reflects the minimum version of all nodes.
737*d5c09012SAndroid Build Coastguard Worker  string current_node_version = 105;
738*d5c09012SAndroid Build Coastguard Worker
739*d5c09012SAndroid Build Coastguard Worker  // [Output only] The time the cluster was created, in
740*d5c09012SAndroid Build Coastguard Worker  // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
741*d5c09012SAndroid Build Coastguard Worker  string create_time = 106;
742*d5c09012SAndroid Build Coastguard Worker
743*d5c09012SAndroid Build Coastguard Worker  // [Output only] The current status of this cluster.
744*d5c09012SAndroid Build Coastguard Worker  Status status = 107;
745*d5c09012SAndroid Build Coastguard Worker
746*d5c09012SAndroid Build Coastguard Worker  // [Output only] Additional information about the current status of this
747*d5c09012SAndroid Build Coastguard Worker  // cluster, if available.
748*d5c09012SAndroid Build Coastguard Worker  string status_message = 108;
749*d5c09012SAndroid Build Coastguard Worker
750*d5c09012SAndroid Build Coastguard Worker  // [Output only] The size of the address space on each node for hosting
751*d5c09012SAndroid Build Coastguard Worker  // containers. This is provisioned from within the `container_ipv4_cidr`
752*d5c09012SAndroid Build Coastguard Worker  // range.
753*d5c09012SAndroid Build Coastguard Worker  int32 node_ipv4_cidr_size = 109;
754*d5c09012SAndroid Build Coastguard Worker
755*d5c09012SAndroid Build Coastguard Worker  // [Output only] The IP address range of the Kubernetes services in
756*d5c09012SAndroid Build Coastguard Worker  // this cluster, in
757*d5c09012SAndroid Build Coastguard Worker  // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing)
758*d5c09012SAndroid Build Coastguard Worker  // notation (e.g. `1.2.3.4/29`). Service addresses are
759*d5c09012SAndroid Build Coastguard Worker  // typically put in the last `/16` from the container CIDR.
760*d5c09012SAndroid Build Coastguard Worker  string services_ipv4_cidr = 110;
761*d5c09012SAndroid Build Coastguard Worker
762*d5c09012SAndroid Build Coastguard Worker  // [Output only] The resource URLs of [instance
763*d5c09012SAndroid Build Coastguard Worker  // groups](/compute/docs/instance-groups/) associated with this
764*d5c09012SAndroid Build Coastguard Worker  // cluster.
765*d5c09012SAndroid Build Coastguard Worker  repeated string instance_group_urls = 111;
766*d5c09012SAndroid Build Coastguard Worker
767*d5c09012SAndroid Build Coastguard Worker  // [Output only] The number of nodes currently in the cluster.
768*d5c09012SAndroid Build Coastguard Worker  int32 current_node_count = 112;
769*d5c09012SAndroid Build Coastguard Worker
770*d5c09012SAndroid Build Coastguard Worker  // [Output only] The time the cluster will be automatically
771*d5c09012SAndroid Build Coastguard Worker  // deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
772*d5c09012SAndroid Build Coastguard Worker  string expire_time = 113;
773*d5c09012SAndroid Build Coastguard Worker
774*d5c09012SAndroid Build Coastguard Worker  // [Output only] The name of the Google Compute Engine
775*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/regions-zones/regions-zones#available) or
776*d5c09012SAndroid Build Coastguard Worker  // [region](/compute/docs/regions-zones/regions-zones#available) in which
777*d5c09012SAndroid Build Coastguard Worker  // the cluster resides.
778*d5c09012SAndroid Build Coastguard Worker  string location = 114;
779*d5c09012SAndroid Build Coastguard Worker}
780*d5c09012SAndroid Build Coastguard Worker
781*d5c09012SAndroid Build Coastguard Worker// ClusterUpdate describes an update to the cluster. Exactly one update can
782*d5c09012SAndroid Build Coastguard Worker// be applied to a cluster with each request, so at most one field can be
783*d5c09012SAndroid Build Coastguard Worker// provided.
784*d5c09012SAndroid Build Coastguard Workermessage ClusterUpdate {
785*d5c09012SAndroid Build Coastguard Worker  // The Kubernetes version to change the nodes to (typically an
786*d5c09012SAndroid Build Coastguard Worker  // upgrade). Use `-` to upgrade to the latest version supported by
787*d5c09012SAndroid Build Coastguard Worker  // the server.
788*d5c09012SAndroid Build Coastguard Worker  string desired_node_version = 4;
789*d5c09012SAndroid Build Coastguard Worker
790*d5c09012SAndroid Build Coastguard Worker  // The monitoring service the cluster should use to write metrics.
791*d5c09012SAndroid Build Coastguard Worker  // Currently available options:
792*d5c09012SAndroid Build Coastguard Worker  //
793*d5c09012SAndroid Build Coastguard Worker  // * "monitoring.googleapis.com" - the Google Cloud Monitoring service
794*d5c09012SAndroid Build Coastguard Worker  // * "none" - no metrics will be exported from the cluster
795*d5c09012SAndroid Build Coastguard Worker  string desired_monitoring_service = 5;
796*d5c09012SAndroid Build Coastguard Worker
797*d5c09012SAndroid Build Coastguard Worker  // Configurations for the various addons available to run in the cluster.
798*d5c09012SAndroid Build Coastguard Worker  AddonsConfig desired_addons_config = 6;
799*d5c09012SAndroid Build Coastguard Worker
800*d5c09012SAndroid Build Coastguard Worker  // The node pool to be upgraded. This field is mandatory if
801*d5c09012SAndroid Build Coastguard Worker  // "desired_node_version", "desired_image_family" or
802*d5c09012SAndroid Build Coastguard Worker  // "desired_node_pool_autoscaling" is specified and there is more than one
803*d5c09012SAndroid Build Coastguard Worker  // node pool on the cluster.
804*d5c09012SAndroid Build Coastguard Worker  string desired_node_pool_id = 7;
805*d5c09012SAndroid Build Coastguard Worker
806*d5c09012SAndroid Build Coastguard Worker  // The desired image type for the node pool.
807*d5c09012SAndroid Build Coastguard Worker  // NOTE: Set the "desired_node_pool" field as well.
808*d5c09012SAndroid Build Coastguard Worker  string desired_image_type = 8;
809*d5c09012SAndroid Build Coastguard Worker
810*d5c09012SAndroid Build Coastguard Worker  // Autoscaler configuration for the node pool specified in
811*d5c09012SAndroid Build Coastguard Worker  // desired_node_pool_id. If there is only one pool in the
812*d5c09012SAndroid Build Coastguard Worker  // cluster and desired_node_pool_id is not provided then
813*d5c09012SAndroid Build Coastguard Worker  // the change applies to that single node pool.
814*d5c09012SAndroid Build Coastguard Worker  NodePoolAutoscaling desired_node_pool_autoscaling = 9;
815*d5c09012SAndroid Build Coastguard Worker
816*d5c09012SAndroid Build Coastguard Worker  // The desired list of Google Compute Engine
817*d5c09012SAndroid Build Coastguard Worker  // [locations](/compute/docs/zones#available) in which the cluster's nodes
818*d5c09012SAndroid Build Coastguard Worker  // should be located. Changing the locations a cluster is in will result
819*d5c09012SAndroid Build Coastguard Worker  // in nodes being either created or removed from the cluster, depending on
820*d5c09012SAndroid Build Coastguard Worker  // whether locations are being added or removed.
821*d5c09012SAndroid Build Coastguard Worker  //
822*d5c09012SAndroid Build Coastguard Worker  // This list must always include the cluster's primary zone.
823*d5c09012SAndroid Build Coastguard Worker  repeated string desired_locations = 10;
824*d5c09012SAndroid Build Coastguard Worker
825*d5c09012SAndroid Build Coastguard Worker  // The desired configuration options for master authorized networks feature.
826*d5c09012SAndroid Build Coastguard Worker  MasterAuthorizedNetworksConfig desired_master_authorized_networks_config = 12;
827*d5c09012SAndroid Build Coastguard Worker
828*d5c09012SAndroid Build Coastguard Worker  // The desired configuration options for the PodSecurityPolicy feature.
829*d5c09012SAndroid Build Coastguard Worker  PodSecurityPolicyConfig desired_pod_security_policy_config = 14;
830*d5c09012SAndroid Build Coastguard Worker
831*d5c09012SAndroid Build Coastguard Worker  // The Kubernetes version to change the master to. The only valid value is the
832*d5c09012SAndroid Build Coastguard Worker  // latest supported version. Use "-" to have the server automatically select
833*d5c09012SAndroid Build Coastguard Worker  // the latest version.
834*d5c09012SAndroid Build Coastguard Worker  string desired_master_version = 100;
835*d5c09012SAndroid Build Coastguard Worker}
836*d5c09012SAndroid Build Coastguard Worker
837*d5c09012SAndroid Build Coastguard Worker// This operation resource represents operations that may have happened or are
838*d5c09012SAndroid Build Coastguard Worker// happening on the cluster. All fields are output only.
839*d5c09012SAndroid Build Coastguard Workermessage Operation {
840*d5c09012SAndroid Build Coastguard Worker  // Current status of the operation.
841*d5c09012SAndroid Build Coastguard Worker  enum Status {
842*d5c09012SAndroid Build Coastguard Worker    // Not set.
843*d5c09012SAndroid Build Coastguard Worker    STATUS_UNSPECIFIED = 0;
844*d5c09012SAndroid Build Coastguard Worker
845*d5c09012SAndroid Build Coastguard Worker    // The operation has been created.
846*d5c09012SAndroid Build Coastguard Worker    PENDING = 1;
847*d5c09012SAndroid Build Coastguard Worker
848*d5c09012SAndroid Build Coastguard Worker    // The operation is currently running.
849*d5c09012SAndroid Build Coastguard Worker    RUNNING = 2;
850*d5c09012SAndroid Build Coastguard Worker
851*d5c09012SAndroid Build Coastguard Worker    // The operation is done, either cancelled or completed.
852*d5c09012SAndroid Build Coastguard Worker    DONE = 3;
853*d5c09012SAndroid Build Coastguard Worker
854*d5c09012SAndroid Build Coastguard Worker    // The operation is aborting.
855*d5c09012SAndroid Build Coastguard Worker    ABORTING = 4;
856*d5c09012SAndroid Build Coastguard Worker  }
857*d5c09012SAndroid Build Coastguard Worker
858*d5c09012SAndroid Build Coastguard Worker  // Operation type.
859*d5c09012SAndroid Build Coastguard Worker  enum Type {
860*d5c09012SAndroid Build Coastguard Worker    // Not set.
861*d5c09012SAndroid Build Coastguard Worker    TYPE_UNSPECIFIED = 0;
862*d5c09012SAndroid Build Coastguard Worker
863*d5c09012SAndroid Build Coastguard Worker    // Cluster create.
864*d5c09012SAndroid Build Coastguard Worker    CREATE_CLUSTER = 1;
865*d5c09012SAndroid Build Coastguard Worker
866*d5c09012SAndroid Build Coastguard Worker    // Cluster delete.
867*d5c09012SAndroid Build Coastguard Worker    DELETE_CLUSTER = 2;
868*d5c09012SAndroid Build Coastguard Worker
869*d5c09012SAndroid Build Coastguard Worker    // A master upgrade.
870*d5c09012SAndroid Build Coastguard Worker    UPGRADE_MASTER = 3;
871*d5c09012SAndroid Build Coastguard Worker
872*d5c09012SAndroid Build Coastguard Worker    // A node upgrade.
873*d5c09012SAndroid Build Coastguard Worker    UPGRADE_NODES = 4;
874*d5c09012SAndroid Build Coastguard Worker
875*d5c09012SAndroid Build Coastguard Worker    // Cluster repair.
876*d5c09012SAndroid Build Coastguard Worker    REPAIR_CLUSTER = 5;
877*d5c09012SAndroid Build Coastguard Worker
878*d5c09012SAndroid Build Coastguard Worker    // Cluster update.
879*d5c09012SAndroid Build Coastguard Worker    UPDATE_CLUSTER = 6;
880*d5c09012SAndroid Build Coastguard Worker
881*d5c09012SAndroid Build Coastguard Worker    // Node pool create.
882*d5c09012SAndroid Build Coastguard Worker    CREATE_NODE_POOL = 7;
883*d5c09012SAndroid Build Coastguard Worker
884*d5c09012SAndroid Build Coastguard Worker    // Node pool delete.
885*d5c09012SAndroid Build Coastguard Worker    DELETE_NODE_POOL = 8;
886*d5c09012SAndroid Build Coastguard Worker
887*d5c09012SAndroid Build Coastguard Worker    // Set node pool management.
888*d5c09012SAndroid Build Coastguard Worker    SET_NODE_POOL_MANAGEMENT = 9;
889*d5c09012SAndroid Build Coastguard Worker
890*d5c09012SAndroid Build Coastguard Worker    // Automatic node pool repair.
891*d5c09012SAndroid Build Coastguard Worker    AUTO_REPAIR_NODES = 10;
892*d5c09012SAndroid Build Coastguard Worker
893*d5c09012SAndroid Build Coastguard Worker    // Automatic node upgrade.
894*d5c09012SAndroid Build Coastguard Worker    AUTO_UPGRADE_NODES = 11;
895*d5c09012SAndroid Build Coastguard Worker
896*d5c09012SAndroid Build Coastguard Worker    // Set labels.
897*d5c09012SAndroid Build Coastguard Worker    SET_LABELS = 12;
898*d5c09012SAndroid Build Coastguard Worker
899*d5c09012SAndroid Build Coastguard Worker    // Set/generate master auth materials
900*d5c09012SAndroid Build Coastguard Worker    SET_MASTER_AUTH = 13;
901*d5c09012SAndroid Build Coastguard Worker
902*d5c09012SAndroid Build Coastguard Worker    // Set node pool size.
903*d5c09012SAndroid Build Coastguard Worker    SET_NODE_POOL_SIZE = 14;
904*d5c09012SAndroid Build Coastguard Worker
905*d5c09012SAndroid Build Coastguard Worker    // Updates network policy for a cluster.
906*d5c09012SAndroid Build Coastguard Worker    SET_NETWORK_POLICY = 15;
907*d5c09012SAndroid Build Coastguard Worker
908*d5c09012SAndroid Build Coastguard Worker    // Set the maintenance policy.
909*d5c09012SAndroid Build Coastguard Worker    SET_MAINTENANCE_POLICY = 16;
910*d5c09012SAndroid Build Coastguard Worker  }
911*d5c09012SAndroid Build Coastguard Worker
912*d5c09012SAndroid Build Coastguard Worker  // The server-assigned ID for the operation.
913*d5c09012SAndroid Build Coastguard Worker  string name = 1;
914*d5c09012SAndroid Build Coastguard Worker
915*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
916*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the operation
917*d5c09012SAndroid Build Coastguard Worker  // is taking place.
918*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use location instead.
919*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
920*d5c09012SAndroid Build Coastguard Worker
921*d5c09012SAndroid Build Coastguard Worker  // The operation type.
922*d5c09012SAndroid Build Coastguard Worker  Type operation_type = 3;
923*d5c09012SAndroid Build Coastguard Worker
924*d5c09012SAndroid Build Coastguard Worker  // The current status of the operation.
925*d5c09012SAndroid Build Coastguard Worker  Status status = 4;
926*d5c09012SAndroid Build Coastguard Worker
927*d5c09012SAndroid Build Coastguard Worker  // Detailed operation progress, if available.
928*d5c09012SAndroid Build Coastguard Worker  string detail = 8;
929*d5c09012SAndroid Build Coastguard Worker
930*d5c09012SAndroid Build Coastguard Worker  // If an error has occurred, a textual description of the error.
931*d5c09012SAndroid Build Coastguard Worker  string status_message = 5;
932*d5c09012SAndroid Build Coastguard Worker
933*d5c09012SAndroid Build Coastguard Worker  // Server-defined URL for the resource.
934*d5c09012SAndroid Build Coastguard Worker  string self_link = 6;
935*d5c09012SAndroid Build Coastguard Worker
936*d5c09012SAndroid Build Coastguard Worker  // Server-defined URL for the target of the operation.
937*d5c09012SAndroid Build Coastguard Worker  string target_link = 7;
938*d5c09012SAndroid Build Coastguard Worker
939*d5c09012SAndroid Build Coastguard Worker  // [Output only] The name of the Google Compute Engine
940*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/regions-zones/regions-zones#available) or
941*d5c09012SAndroid Build Coastguard Worker  // [region](/compute/docs/regions-zones/regions-zones#available) in which
942*d5c09012SAndroid Build Coastguard Worker  // the cluster resides.
943*d5c09012SAndroid Build Coastguard Worker  string location = 9;
944*d5c09012SAndroid Build Coastguard Worker
945*d5c09012SAndroid Build Coastguard Worker  // [Output only] The time the operation started, in
946*d5c09012SAndroid Build Coastguard Worker  // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
947*d5c09012SAndroid Build Coastguard Worker  string start_time = 10;
948*d5c09012SAndroid Build Coastguard Worker
949*d5c09012SAndroid Build Coastguard Worker  // [Output only] The time the operation completed, in
950*d5c09012SAndroid Build Coastguard Worker  // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
951*d5c09012SAndroid Build Coastguard Worker  string end_time = 11;
952*d5c09012SAndroid Build Coastguard Worker}
953*d5c09012SAndroid Build Coastguard Worker
954*d5c09012SAndroid Build Coastguard Worker// CreateClusterRequest creates a cluster.
955*d5c09012SAndroid Build Coastguard Workermessage CreateClusterRequest {
956*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
957*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
958*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use parent instead.
959*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
960*d5c09012SAndroid Build Coastguard Worker
961*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
962*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
963*d5c09012SAndroid Build Coastguard Worker  // resides.
964*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use parent instead.
965*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
966*d5c09012SAndroid Build Coastguard Worker
967*d5c09012SAndroid Build Coastguard Worker  // A [cluster
968*d5c09012SAndroid Build Coastguard Worker  // resource](/container-engine/reference/rest/v1alpha1/projects.zones.clusters)
969*d5c09012SAndroid Build Coastguard Worker  Cluster cluster = 3;
970*d5c09012SAndroid Build Coastguard Worker
971*d5c09012SAndroid Build Coastguard Worker  // The parent (project and location) where the cluster will be created.
972*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*'.
973*d5c09012SAndroid Build Coastguard Worker  string parent = 5;
974*d5c09012SAndroid Build Coastguard Worker}
975*d5c09012SAndroid Build Coastguard Worker
976*d5c09012SAndroid Build Coastguard Worker// GetClusterRequest gets the settings of a cluster.
977*d5c09012SAndroid Build Coastguard Workermessage GetClusterRequest {
978*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
979*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
980*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
981*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
982*d5c09012SAndroid Build Coastguard Worker
983*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
984*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
985*d5c09012SAndroid Build Coastguard Worker  // resides.
986*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
987*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
988*d5c09012SAndroid Build Coastguard Worker
989*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to retrieve.
990*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
991*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
992*d5c09012SAndroid Build Coastguard Worker
993*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster) of the cluster to retrieve.
994*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
995*d5c09012SAndroid Build Coastguard Worker  string name = 5;
996*d5c09012SAndroid Build Coastguard Worker}
997*d5c09012SAndroid Build Coastguard Worker
998*d5c09012SAndroid Build Coastguard Worker// UpdateClusterRequest updates the settings of a cluster.
999*d5c09012SAndroid Build Coastguard Workermessage UpdateClusterRequest {
1000*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1001*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1002*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1003*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1004*d5c09012SAndroid Build Coastguard Worker
1005*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1006*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1007*d5c09012SAndroid Build Coastguard Worker  // resides.
1008*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1009*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1010*d5c09012SAndroid Build Coastguard Worker
1011*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to upgrade.
1012*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1013*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1014*d5c09012SAndroid Build Coastguard Worker
1015*d5c09012SAndroid Build Coastguard Worker  // A description of the update.
1016*d5c09012SAndroid Build Coastguard Worker  ClusterUpdate update = 4;
1017*d5c09012SAndroid Build Coastguard Worker
1018*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster) of the cluster to update.
1019*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1020*d5c09012SAndroid Build Coastguard Worker  string name = 5;
1021*d5c09012SAndroid Build Coastguard Worker}
1022*d5c09012SAndroid Build Coastguard Worker
1023*d5c09012SAndroid Build Coastguard Worker// SetNodePoolVersionRequest updates the version of a node pool.
1024*d5c09012SAndroid Build Coastguard Workermessage UpdateNodePoolRequest {
1025*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1026*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1027*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1028*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1029*d5c09012SAndroid Build Coastguard Worker
1030*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1031*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1032*d5c09012SAndroid Build Coastguard Worker  // resides.
1033*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1034*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1035*d5c09012SAndroid Build Coastguard Worker
1036*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to upgrade.
1037*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1038*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1039*d5c09012SAndroid Build Coastguard Worker
1040*d5c09012SAndroid Build Coastguard Worker  // The name of the node pool to upgrade.
1041*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1042*d5c09012SAndroid Build Coastguard Worker  string node_pool_id = 4;
1043*d5c09012SAndroid Build Coastguard Worker
1044*d5c09012SAndroid Build Coastguard Worker  // The Kubernetes version to change the nodes to (typically an
1045*d5c09012SAndroid Build Coastguard Worker  // upgrade). Use `-` to upgrade to the latest version supported by
1046*d5c09012SAndroid Build Coastguard Worker  // the server.
1047*d5c09012SAndroid Build Coastguard Worker  string node_version = 5;
1048*d5c09012SAndroid Build Coastguard Worker
1049*d5c09012SAndroid Build Coastguard Worker  // The desired image type for the node pool.
1050*d5c09012SAndroid Build Coastguard Worker  string image_type = 6;
1051*d5c09012SAndroid Build Coastguard Worker
1052*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster, node pool) of the node pool to update.
1053*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.
1054*d5c09012SAndroid Build Coastguard Worker  string name = 8;
1055*d5c09012SAndroid Build Coastguard Worker}
1056*d5c09012SAndroid Build Coastguard Worker
1057*d5c09012SAndroid Build Coastguard Worker// SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.
1058*d5c09012SAndroid Build Coastguard Workermessage SetNodePoolAutoscalingRequest {
1059*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1060*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1061*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1062*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1063*d5c09012SAndroid Build Coastguard Worker
1064*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1065*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1066*d5c09012SAndroid Build Coastguard Worker  // resides.
1067*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1068*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1069*d5c09012SAndroid Build Coastguard Worker
1070*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to upgrade.
1071*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1072*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1073*d5c09012SAndroid Build Coastguard Worker
1074*d5c09012SAndroid Build Coastguard Worker  // The name of the node pool to upgrade.
1075*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1076*d5c09012SAndroid Build Coastguard Worker  string node_pool_id = 4;
1077*d5c09012SAndroid Build Coastguard Worker
1078*d5c09012SAndroid Build Coastguard Worker  // Autoscaling configuration for the node pool.
1079*d5c09012SAndroid Build Coastguard Worker  NodePoolAutoscaling autoscaling = 5;
1080*d5c09012SAndroid Build Coastguard Worker
1081*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster, node pool) of the node pool to set
1082*d5c09012SAndroid Build Coastguard Worker  // autoscaler settings. Specified in the format
1083*d5c09012SAndroid Build Coastguard Worker  // 'projects/*/locations/*/clusters/*/nodePools/*'.
1084*d5c09012SAndroid Build Coastguard Worker  string name = 6;
1085*d5c09012SAndroid Build Coastguard Worker}
1086*d5c09012SAndroid Build Coastguard Worker
1087*d5c09012SAndroid Build Coastguard Worker// SetLoggingServiceRequest sets the logging service of a cluster.
1088*d5c09012SAndroid Build Coastguard Workermessage SetLoggingServiceRequest {
1089*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1090*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1091*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1092*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1093*d5c09012SAndroid Build Coastguard Worker
1094*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1095*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1096*d5c09012SAndroid Build Coastguard Worker  // resides.
1097*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1098*d5c09012SAndroid Build Coastguard Worker
1099*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to upgrade.
1100*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1101*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1102*d5c09012SAndroid Build Coastguard Worker
1103*d5c09012SAndroid Build Coastguard Worker  // The logging service the cluster should use to write metrics.
1104*d5c09012SAndroid Build Coastguard Worker  // Currently available options:
1105*d5c09012SAndroid Build Coastguard Worker  //
1106*d5c09012SAndroid Build Coastguard Worker  // * "logging.googleapis.com" - the Google Cloud Logging service
1107*d5c09012SAndroid Build Coastguard Worker  // * "none" - no metrics will be exported from the cluster
1108*d5c09012SAndroid Build Coastguard Worker  string logging_service = 4;
1109*d5c09012SAndroid Build Coastguard Worker
1110*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster) of the cluster to set logging.
1111*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1112*d5c09012SAndroid Build Coastguard Worker  string name = 5;
1113*d5c09012SAndroid Build Coastguard Worker}
1114*d5c09012SAndroid Build Coastguard Worker
1115*d5c09012SAndroid Build Coastguard Worker// SetMonitoringServiceRequest sets the monitoring service of a cluster.
1116*d5c09012SAndroid Build Coastguard Workermessage SetMonitoringServiceRequest {
1117*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1118*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1119*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1120*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1121*d5c09012SAndroid Build Coastguard Worker
1122*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1123*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1124*d5c09012SAndroid Build Coastguard Worker  // resides.
1125*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1126*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1127*d5c09012SAndroid Build Coastguard Worker
1128*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to upgrade.
1129*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1130*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1131*d5c09012SAndroid Build Coastguard Worker
1132*d5c09012SAndroid Build Coastguard Worker  // The monitoring service the cluster should use to write metrics.
1133*d5c09012SAndroid Build Coastguard Worker  // Currently available options:
1134*d5c09012SAndroid Build Coastguard Worker  //
1135*d5c09012SAndroid Build Coastguard Worker  // * "monitoring.googleapis.com" - the Google Cloud Monitoring service
1136*d5c09012SAndroid Build Coastguard Worker  // * "none" - no metrics will be exported from the cluster
1137*d5c09012SAndroid Build Coastguard Worker  string monitoring_service = 4;
1138*d5c09012SAndroid Build Coastguard Worker
1139*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster) of the cluster to set monitoring.
1140*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1141*d5c09012SAndroid Build Coastguard Worker  string name = 6;
1142*d5c09012SAndroid Build Coastguard Worker}
1143*d5c09012SAndroid Build Coastguard Worker
1144*d5c09012SAndroid Build Coastguard Worker// SetAddonsRequest sets the addons associated with the cluster.
1145*d5c09012SAndroid Build Coastguard Workermessage SetAddonsConfigRequest {
1146*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1147*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1148*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1149*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1150*d5c09012SAndroid Build Coastguard Worker
1151*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1152*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1153*d5c09012SAndroid Build Coastguard Worker  // resides.
1154*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1155*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1156*d5c09012SAndroid Build Coastguard Worker
1157*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to upgrade.
1158*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1159*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1160*d5c09012SAndroid Build Coastguard Worker
1161*d5c09012SAndroid Build Coastguard Worker  // The desired configurations for the various addons available to run in the
1162*d5c09012SAndroid Build Coastguard Worker  // cluster.
1163*d5c09012SAndroid Build Coastguard Worker  AddonsConfig addons_config = 4;
1164*d5c09012SAndroid Build Coastguard Worker
1165*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster) of the cluster to set addons.
1166*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1167*d5c09012SAndroid Build Coastguard Worker  string name = 6;
1168*d5c09012SAndroid Build Coastguard Worker}
1169*d5c09012SAndroid Build Coastguard Worker
1170*d5c09012SAndroid Build Coastguard Worker// SetLocationsRequest sets the locations of the cluster.
1171*d5c09012SAndroid Build Coastguard Workermessage SetLocationsRequest {
1172*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1173*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1174*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1175*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1176*d5c09012SAndroid Build Coastguard Worker
1177*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1178*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1179*d5c09012SAndroid Build Coastguard Worker  // resides.
1180*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1181*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1182*d5c09012SAndroid Build Coastguard Worker
1183*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to upgrade.
1184*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1185*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1186*d5c09012SAndroid Build Coastguard Worker
1187*d5c09012SAndroid Build Coastguard Worker  // The desired list of Google Compute Engine
1188*d5c09012SAndroid Build Coastguard Worker  // [locations](/compute/docs/zones#available) in which the cluster's nodes
1189*d5c09012SAndroid Build Coastguard Worker  // should be located. Changing the locations a cluster is in will result
1190*d5c09012SAndroid Build Coastguard Worker  // in nodes being either created or removed from the cluster, depending on
1191*d5c09012SAndroid Build Coastguard Worker  // whether locations are being added or removed.
1192*d5c09012SAndroid Build Coastguard Worker  //
1193*d5c09012SAndroid Build Coastguard Worker  // This list must always include the cluster's primary zone.
1194*d5c09012SAndroid Build Coastguard Worker  repeated string locations = 4;
1195*d5c09012SAndroid Build Coastguard Worker
1196*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster) of the cluster to set locations.
1197*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1198*d5c09012SAndroid Build Coastguard Worker  string name = 6;
1199*d5c09012SAndroid Build Coastguard Worker}
1200*d5c09012SAndroid Build Coastguard Worker
1201*d5c09012SAndroid Build Coastguard Worker// UpdateMasterRequest updates the master of the cluster.
1202*d5c09012SAndroid Build Coastguard Workermessage UpdateMasterRequest {
1203*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1204*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1205*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1206*d5c09012SAndroid Build Coastguard Worker
1207*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1208*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1209*d5c09012SAndroid Build Coastguard Worker  // resides.
1210*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1211*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1212*d5c09012SAndroid Build Coastguard Worker
1213*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to upgrade.
1214*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1215*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1216*d5c09012SAndroid Build Coastguard Worker
1217*d5c09012SAndroid Build Coastguard Worker  // The Kubernetes version to change the master to. The only valid value is the
1218*d5c09012SAndroid Build Coastguard Worker  // latest supported version. Use "-" to have the server automatically select
1219*d5c09012SAndroid Build Coastguard Worker  // the latest version.
1220*d5c09012SAndroid Build Coastguard Worker  string master_version = 4;
1221*d5c09012SAndroid Build Coastguard Worker
1222*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster) of the cluster to update.
1223*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1224*d5c09012SAndroid Build Coastguard Worker  string name = 7;
1225*d5c09012SAndroid Build Coastguard Worker}
1226*d5c09012SAndroid Build Coastguard Worker
1227*d5c09012SAndroid Build Coastguard Worker// SetMasterAuthRequest updates the admin password of a cluster.
1228*d5c09012SAndroid Build Coastguard Workermessage SetMasterAuthRequest {
1229*d5c09012SAndroid Build Coastguard Worker  // Operation type: what type update to perform.
1230*d5c09012SAndroid Build Coastguard Worker  enum Action {
1231*d5c09012SAndroid Build Coastguard Worker    // Operation is unknown and will error out.
1232*d5c09012SAndroid Build Coastguard Worker    UNKNOWN = 0;
1233*d5c09012SAndroid Build Coastguard Worker
1234*d5c09012SAndroid Build Coastguard Worker    // Set the password to a user generated value.
1235*d5c09012SAndroid Build Coastguard Worker    SET_PASSWORD = 1;
1236*d5c09012SAndroid Build Coastguard Worker
1237*d5c09012SAndroid Build Coastguard Worker    // Generate a new password and set it to that.
1238*d5c09012SAndroid Build Coastguard Worker    GENERATE_PASSWORD = 2;
1239*d5c09012SAndroid Build Coastguard Worker
1240*d5c09012SAndroid Build Coastguard Worker    // Set the username.  If an empty username is provided, basic authentication
1241*d5c09012SAndroid Build Coastguard Worker    // is disabled for the cluster.  If a non-empty username is provided, basic
1242*d5c09012SAndroid Build Coastguard Worker    // authentication is enabled, with either a provided password or a generated
1243*d5c09012SAndroid Build Coastguard Worker    // one.
1244*d5c09012SAndroid Build Coastguard Worker    SET_USERNAME = 3;
1245*d5c09012SAndroid Build Coastguard Worker  }
1246*d5c09012SAndroid Build Coastguard Worker
1247*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1248*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1249*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1250*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1251*d5c09012SAndroid Build Coastguard Worker
1252*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1253*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1254*d5c09012SAndroid Build Coastguard Worker  // resides.
1255*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1256*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1257*d5c09012SAndroid Build Coastguard Worker
1258*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to upgrade.
1259*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1260*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1261*d5c09012SAndroid Build Coastguard Worker
1262*d5c09012SAndroid Build Coastguard Worker  // The exact form of action to be taken on the master auth.
1263*d5c09012SAndroid Build Coastguard Worker  Action action = 4;
1264*d5c09012SAndroid Build Coastguard Worker
1265*d5c09012SAndroid Build Coastguard Worker  // A description of the update.
1266*d5c09012SAndroid Build Coastguard Worker  MasterAuth update = 5;
1267*d5c09012SAndroid Build Coastguard Worker
1268*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster) of the cluster to set auth.
1269*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1270*d5c09012SAndroid Build Coastguard Worker  string name = 7;
1271*d5c09012SAndroid Build Coastguard Worker}
1272*d5c09012SAndroid Build Coastguard Worker
1273*d5c09012SAndroid Build Coastguard Worker// DeleteClusterRequest deletes a cluster.
1274*d5c09012SAndroid Build Coastguard Workermessage DeleteClusterRequest {
1275*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1276*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1277*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1278*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1279*d5c09012SAndroid Build Coastguard Worker
1280*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1281*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1282*d5c09012SAndroid Build Coastguard Worker  // resides.
1283*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1284*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1285*d5c09012SAndroid Build Coastguard Worker
1286*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to delete.
1287*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1288*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1289*d5c09012SAndroid Build Coastguard Worker
1290*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster) of the cluster to delete.
1291*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1292*d5c09012SAndroid Build Coastguard Worker  string name = 4;
1293*d5c09012SAndroid Build Coastguard Worker}
1294*d5c09012SAndroid Build Coastguard Worker
1295*d5c09012SAndroid Build Coastguard Worker// ListClustersRequest lists clusters.
1296*d5c09012SAndroid Build Coastguard Workermessage ListClustersRequest {
1297*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1298*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1299*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use parent instead.
1300*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1301*d5c09012SAndroid Build Coastguard Worker
1302*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1303*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1304*d5c09012SAndroid Build Coastguard Worker  // resides, or "-" for all zones.
1305*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use parent instead.
1306*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1307*d5c09012SAndroid Build Coastguard Worker
1308*d5c09012SAndroid Build Coastguard Worker  // The parent (project and location) where the clusters will be listed.
1309*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*'.
1310*d5c09012SAndroid Build Coastguard Worker  // Location "-" matches all zones and all regions.
1311*d5c09012SAndroid Build Coastguard Worker  string parent = 4;
1312*d5c09012SAndroid Build Coastguard Worker}
1313*d5c09012SAndroid Build Coastguard Worker
1314*d5c09012SAndroid Build Coastguard Worker// ListClustersResponse is the result of ListClustersRequest.
1315*d5c09012SAndroid Build Coastguard Workermessage ListClustersResponse {
1316*d5c09012SAndroid Build Coastguard Worker  // A list of clusters in the project in the specified zone, or
1317*d5c09012SAndroid Build Coastguard Worker  // across all ones.
1318*d5c09012SAndroid Build Coastguard Worker  repeated Cluster clusters = 1;
1319*d5c09012SAndroid Build Coastguard Worker
1320*d5c09012SAndroid Build Coastguard Worker  // If any zones are listed here, the list of clusters returned
1321*d5c09012SAndroid Build Coastguard Worker  // may be missing those zones.
1322*d5c09012SAndroid Build Coastguard Worker  repeated string missing_zones = 2;
1323*d5c09012SAndroid Build Coastguard Worker}
1324*d5c09012SAndroid Build Coastguard Worker
1325*d5c09012SAndroid Build Coastguard Worker// GetOperationRequest gets a single operation.
1326*d5c09012SAndroid Build Coastguard Workermessage GetOperationRequest {
1327*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1328*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1329*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1330*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1331*d5c09012SAndroid Build Coastguard Worker
1332*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1333*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1334*d5c09012SAndroid Build Coastguard Worker  // resides.
1335*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1336*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1337*d5c09012SAndroid Build Coastguard Worker
1338*d5c09012SAndroid Build Coastguard Worker  // The server-assigned `name` of the operation.
1339*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1340*d5c09012SAndroid Build Coastguard Worker  string operation_id = 3;
1341*d5c09012SAndroid Build Coastguard Worker
1342*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, operation id) of the operation to get.
1343*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/operations/*'.
1344*d5c09012SAndroid Build Coastguard Worker  string name = 5;
1345*d5c09012SAndroid Build Coastguard Worker}
1346*d5c09012SAndroid Build Coastguard Worker
1347*d5c09012SAndroid Build Coastguard Worker// ListOperationsRequest lists operations.
1348*d5c09012SAndroid Build Coastguard Workermessage ListOperationsRequest {
1349*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1350*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1351*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use parent instead.
1352*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1353*d5c09012SAndroid Build Coastguard Worker
1354*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine [zone](/compute/docs/zones#available)
1355*d5c09012SAndroid Build Coastguard Worker  // to return operations for, or `-` for all zones.
1356*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use parent instead.
1357*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1358*d5c09012SAndroid Build Coastguard Worker
1359*d5c09012SAndroid Build Coastguard Worker  // The parent (project and location) where the operations will be listed.
1360*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*'.
1361*d5c09012SAndroid Build Coastguard Worker  // Location "-" matches all zones and all regions.
1362*d5c09012SAndroid Build Coastguard Worker  string parent = 4;
1363*d5c09012SAndroid Build Coastguard Worker}
1364*d5c09012SAndroid Build Coastguard Worker
1365*d5c09012SAndroid Build Coastguard Worker// CancelOperationRequest cancels a single operation.
1366*d5c09012SAndroid Build Coastguard Workermessage CancelOperationRequest {
1367*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1368*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1369*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1370*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1371*d5c09012SAndroid Build Coastguard Worker
1372*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1373*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the operation resides.
1374*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1375*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1376*d5c09012SAndroid Build Coastguard Worker
1377*d5c09012SAndroid Build Coastguard Worker  // The server-assigned `name` of the operation.
1378*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1379*d5c09012SAndroid Build Coastguard Worker  string operation_id = 3;
1380*d5c09012SAndroid Build Coastguard Worker
1381*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, operation id) of the operation to cancel.
1382*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/operations/*'.
1383*d5c09012SAndroid Build Coastguard Worker  string name = 4;
1384*d5c09012SAndroid Build Coastguard Worker}
1385*d5c09012SAndroid Build Coastguard Worker
1386*d5c09012SAndroid Build Coastguard Worker// ListOperationsResponse is the result of ListOperationsRequest.
1387*d5c09012SAndroid Build Coastguard Workermessage ListOperationsResponse {
1388*d5c09012SAndroid Build Coastguard Worker  // A list of operations in the project in the specified zone.
1389*d5c09012SAndroid Build Coastguard Worker  repeated Operation operations = 1;
1390*d5c09012SAndroid Build Coastguard Worker
1391*d5c09012SAndroid Build Coastguard Worker  // If any zones are listed here, the list of operations returned
1392*d5c09012SAndroid Build Coastguard Worker  // may be missing the operations from those zones.
1393*d5c09012SAndroid Build Coastguard Worker  repeated string missing_zones = 2;
1394*d5c09012SAndroid Build Coastguard Worker}
1395*d5c09012SAndroid Build Coastguard Worker
1396*d5c09012SAndroid Build Coastguard Worker// Gets the current Container Engine service configuration.
1397*d5c09012SAndroid Build Coastguard Workermessage GetServerConfigRequest {
1398*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1399*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1400*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1401*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1402*d5c09012SAndroid Build Coastguard Worker
1403*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine [zone](/compute/docs/zones#available)
1404*d5c09012SAndroid Build Coastguard Worker  // to return operations for.
1405*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1406*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1407*d5c09012SAndroid Build Coastguard Worker
1408*d5c09012SAndroid Build Coastguard Worker  // The name (project and location) of the server config to get
1409*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*'.
1410*d5c09012SAndroid Build Coastguard Worker  string name = 4;
1411*d5c09012SAndroid Build Coastguard Worker}
1412*d5c09012SAndroid Build Coastguard Worker
1413*d5c09012SAndroid Build Coastguard Worker// Container Engine service configuration.
1414*d5c09012SAndroid Build Coastguard Workermessage ServerConfig {
1415*d5c09012SAndroid Build Coastguard Worker  // Version of Kubernetes the service deploys by default.
1416*d5c09012SAndroid Build Coastguard Worker  string default_cluster_version = 1;
1417*d5c09012SAndroid Build Coastguard Worker
1418*d5c09012SAndroid Build Coastguard Worker  // List of valid node upgrade target versions.
1419*d5c09012SAndroid Build Coastguard Worker  repeated string valid_node_versions = 3;
1420*d5c09012SAndroid Build Coastguard Worker
1421*d5c09012SAndroid Build Coastguard Worker  // Default image type.
1422*d5c09012SAndroid Build Coastguard Worker  string default_image_type = 4;
1423*d5c09012SAndroid Build Coastguard Worker
1424*d5c09012SAndroid Build Coastguard Worker  // List of valid image types.
1425*d5c09012SAndroid Build Coastguard Worker  repeated string valid_image_types = 5;
1426*d5c09012SAndroid Build Coastguard Worker
1427*d5c09012SAndroid Build Coastguard Worker  // List of valid master versions.
1428*d5c09012SAndroid Build Coastguard Worker  repeated string valid_master_versions = 6;
1429*d5c09012SAndroid Build Coastguard Worker}
1430*d5c09012SAndroid Build Coastguard Worker
1431*d5c09012SAndroid Build Coastguard Worker// CreateNodePoolRequest creates a node pool for a cluster.
1432*d5c09012SAndroid Build Coastguard Workermessage CreateNodePoolRequest {
1433*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1434*d5c09012SAndroid Build Coastguard Worker  // number](https://developers.google.com/console/help/new/#projectnumber).
1435*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use parent instead.
1436*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1437*d5c09012SAndroid Build Coastguard Worker
1438*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1439*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1440*d5c09012SAndroid Build Coastguard Worker  // resides.
1441*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use parent instead.
1442*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1443*d5c09012SAndroid Build Coastguard Worker
1444*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster.
1445*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use parent instead.
1446*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1447*d5c09012SAndroid Build Coastguard Worker
1448*d5c09012SAndroid Build Coastguard Worker  // The node pool to create.
1449*d5c09012SAndroid Build Coastguard Worker  NodePool node_pool = 4;
1450*d5c09012SAndroid Build Coastguard Worker
1451*d5c09012SAndroid Build Coastguard Worker  // The parent (project, location, cluster id) where the node pool will be created.
1452*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.
1453*d5c09012SAndroid Build Coastguard Worker  string parent = 6;
1454*d5c09012SAndroid Build Coastguard Worker}
1455*d5c09012SAndroid Build Coastguard Worker
1456*d5c09012SAndroid Build Coastguard Worker// DeleteNodePoolRequest deletes a node pool for a cluster.
1457*d5c09012SAndroid Build Coastguard Workermessage DeleteNodePoolRequest {
1458*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1459*d5c09012SAndroid Build Coastguard Worker  // number](https://developers.google.com/console/help/new/#projectnumber).
1460*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1461*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1462*d5c09012SAndroid Build Coastguard Worker
1463*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1464*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1465*d5c09012SAndroid Build Coastguard Worker  // resides.
1466*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1467*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1468*d5c09012SAndroid Build Coastguard Worker
1469*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster.
1470*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1471*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1472*d5c09012SAndroid Build Coastguard Worker
1473*d5c09012SAndroid Build Coastguard Worker  // The name of the node pool to delete.
1474*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1475*d5c09012SAndroid Build Coastguard Worker  string node_pool_id = 4;
1476*d5c09012SAndroid Build Coastguard Worker
1477*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster, node pool id) of the node pool to delete.
1478*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.
1479*d5c09012SAndroid Build Coastguard Worker  string name = 6;
1480*d5c09012SAndroid Build Coastguard Worker}
1481*d5c09012SAndroid Build Coastguard Worker
1482*d5c09012SAndroid Build Coastguard Worker// ListNodePoolsRequest lists the node pool(s) for a cluster.
1483*d5c09012SAndroid Build Coastguard Workermessage ListNodePoolsRequest {
1484*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1485*d5c09012SAndroid Build Coastguard Worker  // number](https://developers.google.com/console/help/new/#projectnumber).
1486*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use parent instead.
1487*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1488*d5c09012SAndroid Build Coastguard Worker
1489*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1490*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1491*d5c09012SAndroid Build Coastguard Worker  // resides.
1492*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use parent instead.
1493*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1494*d5c09012SAndroid Build Coastguard Worker
1495*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster.
1496*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use parent instead.
1497*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1498*d5c09012SAndroid Build Coastguard Worker
1499*d5c09012SAndroid Build Coastguard Worker  // The parent (project, location, cluster id) where the node pools will be listed.
1500*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1501*d5c09012SAndroid Build Coastguard Worker  string parent = 5;
1502*d5c09012SAndroid Build Coastguard Worker}
1503*d5c09012SAndroid Build Coastguard Worker
1504*d5c09012SAndroid Build Coastguard Worker// GetNodePoolRequest retrieves a node pool for a cluster.
1505*d5c09012SAndroid Build Coastguard Workermessage GetNodePoolRequest {
1506*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1507*d5c09012SAndroid Build Coastguard Worker  // number](https://developers.google.com/console/help/new/#projectnumber).
1508*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1509*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1510*d5c09012SAndroid Build Coastguard Worker
1511*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1512*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1513*d5c09012SAndroid Build Coastguard Worker  // resides.
1514*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1515*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1516*d5c09012SAndroid Build Coastguard Worker
1517*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster.
1518*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1519*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1520*d5c09012SAndroid Build Coastguard Worker
1521*d5c09012SAndroid Build Coastguard Worker  // The name of the node pool.
1522*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1523*d5c09012SAndroid Build Coastguard Worker  string node_pool_id = 4;
1524*d5c09012SAndroid Build Coastguard Worker
1525*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster, node pool id) of the node pool to get.
1526*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.
1527*d5c09012SAndroid Build Coastguard Worker  string name = 6;
1528*d5c09012SAndroid Build Coastguard Worker}
1529*d5c09012SAndroid Build Coastguard Worker
1530*d5c09012SAndroid Build Coastguard Worker// NodePool contains the name and configuration for a cluster's node pool.
1531*d5c09012SAndroid Build Coastguard Worker// Node pools are a set of nodes (i.e. VM's), with a common configuration and
1532*d5c09012SAndroid Build Coastguard Worker// specification, under the control of the cluster master. They may have a set
1533*d5c09012SAndroid Build Coastguard Worker// of Kubernetes labels applied to them, which may be used to reference them
1534*d5c09012SAndroid Build Coastguard Worker// during pod scheduling. They may also be resized up or down, to accommodate
1535*d5c09012SAndroid Build Coastguard Worker// the workload.
1536*d5c09012SAndroid Build Coastguard Workermessage NodePool {
1537*d5c09012SAndroid Build Coastguard Worker  // The current status of the node pool instance.
1538*d5c09012SAndroid Build Coastguard Worker  enum Status {
1539*d5c09012SAndroid Build Coastguard Worker    // Not set.
1540*d5c09012SAndroid Build Coastguard Worker    STATUS_UNSPECIFIED = 0;
1541*d5c09012SAndroid Build Coastguard Worker
1542*d5c09012SAndroid Build Coastguard Worker    // The PROVISIONING state indicates the node pool is being created.
1543*d5c09012SAndroid Build Coastguard Worker    PROVISIONING = 1;
1544*d5c09012SAndroid Build Coastguard Worker
1545*d5c09012SAndroid Build Coastguard Worker    // The RUNNING state indicates the node pool has been created
1546*d5c09012SAndroid Build Coastguard Worker    // and is fully usable.
1547*d5c09012SAndroid Build Coastguard Worker    RUNNING = 2;
1548*d5c09012SAndroid Build Coastguard Worker
1549*d5c09012SAndroid Build Coastguard Worker    // The RUNNING_WITH_ERROR state indicates the node pool has been created
1550*d5c09012SAndroid Build Coastguard Worker    // and is partially usable. Some error state has occurred and some
1551*d5c09012SAndroid Build Coastguard Worker    // functionality may be impaired. Customer may need to reissue a request
1552*d5c09012SAndroid Build Coastguard Worker    // or trigger a new update.
1553*d5c09012SAndroid Build Coastguard Worker    RUNNING_WITH_ERROR = 3;
1554*d5c09012SAndroid Build Coastguard Worker
1555*d5c09012SAndroid Build Coastguard Worker    // The RECONCILING state indicates that some work is actively being done on
1556*d5c09012SAndroid Build Coastguard Worker    // the node pool, such as upgrading node software. Details can
1557*d5c09012SAndroid Build Coastguard Worker    // be found in the `statusMessage` field.
1558*d5c09012SAndroid Build Coastguard Worker    RECONCILING = 4;
1559*d5c09012SAndroid Build Coastguard Worker
1560*d5c09012SAndroid Build Coastguard Worker    // The STOPPING state indicates the node pool is being deleted.
1561*d5c09012SAndroid Build Coastguard Worker    STOPPING = 5;
1562*d5c09012SAndroid Build Coastguard Worker
1563*d5c09012SAndroid Build Coastguard Worker    // The ERROR state indicates the node pool may be unusable. Details
1564*d5c09012SAndroid Build Coastguard Worker    // can be found in the `statusMessage` field.
1565*d5c09012SAndroid Build Coastguard Worker    ERROR = 6;
1566*d5c09012SAndroid Build Coastguard Worker  }
1567*d5c09012SAndroid Build Coastguard Worker
1568*d5c09012SAndroid Build Coastguard Worker  // The name of the node pool.
1569*d5c09012SAndroid Build Coastguard Worker  string name = 1;
1570*d5c09012SAndroid Build Coastguard Worker
1571*d5c09012SAndroid Build Coastguard Worker  // The node configuration of the pool.
1572*d5c09012SAndroid Build Coastguard Worker  NodeConfig config = 2;
1573*d5c09012SAndroid Build Coastguard Worker
1574*d5c09012SAndroid Build Coastguard Worker  // The initial node count for the pool. You must ensure that your
1575*d5c09012SAndroid Build Coastguard Worker  // Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
1576*d5c09012SAndroid Build Coastguard Worker  // is sufficient for this number of instances. You must also have available
1577*d5c09012SAndroid Build Coastguard Worker  // firewall and routes quota.
1578*d5c09012SAndroid Build Coastguard Worker  int32 initial_node_count = 3;
1579*d5c09012SAndroid Build Coastguard Worker
1580*d5c09012SAndroid Build Coastguard Worker  // Autoscaler configuration for this NodePool. Autoscaler is enabled
1581*d5c09012SAndroid Build Coastguard Worker  // only if a valid configuration is present.
1582*d5c09012SAndroid Build Coastguard Worker  NodePoolAutoscaling autoscaling = 4;
1583*d5c09012SAndroid Build Coastguard Worker
1584*d5c09012SAndroid Build Coastguard Worker  // NodeManagement configuration for this NodePool.
1585*d5c09012SAndroid Build Coastguard Worker  NodeManagement management = 5;
1586*d5c09012SAndroid Build Coastguard Worker
1587*d5c09012SAndroid Build Coastguard Worker  // [Output only] Server-defined URL for the resource.
1588*d5c09012SAndroid Build Coastguard Worker  string self_link = 100;
1589*d5c09012SAndroid Build Coastguard Worker
1590*d5c09012SAndroid Build Coastguard Worker  // [Output only] The version of the Kubernetes of this node.
1591*d5c09012SAndroid Build Coastguard Worker  string version = 101;
1592*d5c09012SAndroid Build Coastguard Worker
1593*d5c09012SAndroid Build Coastguard Worker  // [Output only] The resource URLs of [instance
1594*d5c09012SAndroid Build Coastguard Worker  // groups](/compute/docs/instance-groups/) associated with this
1595*d5c09012SAndroid Build Coastguard Worker  // node pool.
1596*d5c09012SAndroid Build Coastguard Worker  repeated string instance_group_urls = 102;
1597*d5c09012SAndroid Build Coastguard Worker
1598*d5c09012SAndroid Build Coastguard Worker  // [Output only] The status of the nodes in this pool instance.
1599*d5c09012SAndroid Build Coastguard Worker  Status status = 103;
1600*d5c09012SAndroid Build Coastguard Worker
1601*d5c09012SAndroid Build Coastguard Worker  // [Output only] Additional information about the current status of this
1602*d5c09012SAndroid Build Coastguard Worker  // node pool instance, if available.
1603*d5c09012SAndroid Build Coastguard Worker  string status_message = 104;
1604*d5c09012SAndroid Build Coastguard Worker}
1605*d5c09012SAndroid Build Coastguard Worker
1606*d5c09012SAndroid Build Coastguard Worker// NodeManagement defines the set of node management services turned on for the
1607*d5c09012SAndroid Build Coastguard Worker// node pool.
1608*d5c09012SAndroid Build Coastguard Workermessage NodeManagement {
1609*d5c09012SAndroid Build Coastguard Worker  // Whether the nodes will be automatically upgraded.
1610*d5c09012SAndroid Build Coastguard Worker  bool auto_upgrade = 1;
1611*d5c09012SAndroid Build Coastguard Worker
1612*d5c09012SAndroid Build Coastguard Worker  // Whether the nodes will be automatically repaired.
1613*d5c09012SAndroid Build Coastguard Worker  bool auto_repair = 2;
1614*d5c09012SAndroid Build Coastguard Worker
1615*d5c09012SAndroid Build Coastguard Worker  // Specifies the Auto Upgrade knobs for the node pool.
1616*d5c09012SAndroid Build Coastguard Worker  AutoUpgradeOptions upgrade_options = 10;
1617*d5c09012SAndroid Build Coastguard Worker}
1618*d5c09012SAndroid Build Coastguard Worker
1619*d5c09012SAndroid Build Coastguard Worker// AutoUpgradeOptions defines the set of options for the user to control how
1620*d5c09012SAndroid Build Coastguard Worker// the Auto Upgrades will proceed.
1621*d5c09012SAndroid Build Coastguard Workermessage AutoUpgradeOptions {
1622*d5c09012SAndroid Build Coastguard Worker  // [Output only] This field is set when upgrades are about to commence
1623*d5c09012SAndroid Build Coastguard Worker  // with the approximate start time for the upgrades, in
1624*d5c09012SAndroid Build Coastguard Worker  // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
1625*d5c09012SAndroid Build Coastguard Worker  string auto_upgrade_start_time = 1;
1626*d5c09012SAndroid Build Coastguard Worker
1627*d5c09012SAndroid Build Coastguard Worker  // [Output only] This field is set when upgrades are about to commence
1628*d5c09012SAndroid Build Coastguard Worker  // with the description of the upgrade.
1629*d5c09012SAndroid Build Coastguard Worker  string description = 2;
1630*d5c09012SAndroid Build Coastguard Worker}
1631*d5c09012SAndroid Build Coastguard Worker
1632*d5c09012SAndroid Build Coastguard Worker// MaintenancePolicy defines the maintenance policy to be used for the cluster.
1633*d5c09012SAndroid Build Coastguard Workermessage MaintenancePolicy {
1634*d5c09012SAndroid Build Coastguard Worker  // Specifies the maintenance window in which maintenance may be performed.
1635*d5c09012SAndroid Build Coastguard Worker  MaintenanceWindow window = 1;
1636*d5c09012SAndroid Build Coastguard Worker}
1637*d5c09012SAndroid Build Coastguard Worker
1638*d5c09012SAndroid Build Coastguard Worker// MaintenanceWindow defines the maintenance window to be used for the cluster.
1639*d5c09012SAndroid Build Coastguard Workermessage MaintenanceWindow {
1640*d5c09012SAndroid Build Coastguard Worker  // Unimplemented, reserved for future use.
1641*d5c09012SAndroid Build Coastguard Worker  // HourlyMaintenanceWindow hourly_maintenance_window = 1;
1642*d5c09012SAndroid Build Coastguard Worker  oneof policy {
1643*d5c09012SAndroid Build Coastguard Worker    // DailyMaintenanceWindow specifies a daily maintenance operation window.
1644*d5c09012SAndroid Build Coastguard Worker    DailyMaintenanceWindow daily_maintenance_window = 2;
1645*d5c09012SAndroid Build Coastguard Worker  }
1646*d5c09012SAndroid Build Coastguard Worker}
1647*d5c09012SAndroid Build Coastguard Worker
1648*d5c09012SAndroid Build Coastguard Worker// Time window specified for daily maintenance operations.
1649*d5c09012SAndroid Build Coastguard Workermessage DailyMaintenanceWindow {
1650*d5c09012SAndroid Build Coastguard Worker  // Time within the maintenance window to start the maintenance operations.
1651*d5c09012SAndroid Build Coastguard Worker  // It must be in format "HH:MM”, where HH : [00-23] and MM : [00-59] GMT.
1652*d5c09012SAndroid Build Coastguard Worker  string start_time = 2;
1653*d5c09012SAndroid Build Coastguard Worker
1654*d5c09012SAndroid Build Coastguard Worker  // [Output only] Duration of the time window, automatically chosen to be
1655*d5c09012SAndroid Build Coastguard Worker  // smallest possible in the given scenario.
1656*d5c09012SAndroid Build Coastguard Worker  string duration = 3;
1657*d5c09012SAndroid Build Coastguard Worker}
1658*d5c09012SAndroid Build Coastguard Worker
1659*d5c09012SAndroid Build Coastguard Worker// SetNodePoolManagementRequest sets the node management properties of a node
1660*d5c09012SAndroid Build Coastguard Worker// pool.
1661*d5c09012SAndroid Build Coastguard Workermessage SetNodePoolManagementRequest {
1662*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1663*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1664*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1665*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1666*d5c09012SAndroid Build Coastguard Worker
1667*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1668*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1669*d5c09012SAndroid Build Coastguard Worker  // resides.
1670*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1671*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1672*d5c09012SAndroid Build Coastguard Worker
1673*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to update.
1674*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1675*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1676*d5c09012SAndroid Build Coastguard Worker
1677*d5c09012SAndroid Build Coastguard Worker  // The name of the node pool to update.
1678*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1679*d5c09012SAndroid Build Coastguard Worker  string node_pool_id = 4;
1680*d5c09012SAndroid Build Coastguard Worker
1681*d5c09012SAndroid Build Coastguard Worker  // NodeManagement configuration for the node pool.
1682*d5c09012SAndroid Build Coastguard Worker  NodeManagement management = 5;
1683*d5c09012SAndroid Build Coastguard Worker
1684*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster, node pool id) of the node pool to set
1685*d5c09012SAndroid Build Coastguard Worker  // management properties. Specified in the format
1686*d5c09012SAndroid Build Coastguard Worker  // 'projects/*/locations/*/clusters/*/nodePools/*'.
1687*d5c09012SAndroid Build Coastguard Worker  string name = 7;
1688*d5c09012SAndroid Build Coastguard Worker}
1689*d5c09012SAndroid Build Coastguard Worker
1690*d5c09012SAndroid Build Coastguard Worker// SetNodePoolSizeRequest sets the size a node
1691*d5c09012SAndroid Build Coastguard Worker// pool.
1692*d5c09012SAndroid Build Coastguard Workermessage SetNodePoolSizeRequest {
1693*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1694*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1695*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1696*d5c09012SAndroid Build Coastguard Worker
1697*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1698*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1699*d5c09012SAndroid Build Coastguard Worker  // resides.
1700*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1701*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1702*d5c09012SAndroid Build Coastguard Worker
1703*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to update.
1704*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1705*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1706*d5c09012SAndroid Build Coastguard Worker
1707*d5c09012SAndroid Build Coastguard Worker  // The name of the node pool to update.
1708*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1709*d5c09012SAndroid Build Coastguard Worker  string node_pool_id = 4;
1710*d5c09012SAndroid Build Coastguard Worker
1711*d5c09012SAndroid Build Coastguard Worker  // The desired node count for the pool.
1712*d5c09012SAndroid Build Coastguard Worker  int32 node_count = 5;
1713*d5c09012SAndroid Build Coastguard Worker
1714*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster, node pool id) of the node pool to set
1715*d5c09012SAndroid Build Coastguard Worker  // size.
1716*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.
1717*d5c09012SAndroid Build Coastguard Worker  string name = 7;
1718*d5c09012SAndroid Build Coastguard Worker}
1719*d5c09012SAndroid Build Coastguard Worker
1720*d5c09012SAndroid Build Coastguard Worker// RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed
1721*d5c09012SAndroid Build Coastguard Worker// NodePool upgrade. This will be an no-op if the last upgrade successfully
1722*d5c09012SAndroid Build Coastguard Worker// completed.
1723*d5c09012SAndroid Build Coastguard Workermessage RollbackNodePoolUpgradeRequest {
1724*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1725*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1726*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1727*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1728*d5c09012SAndroid Build Coastguard Worker
1729*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1730*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1731*d5c09012SAndroid Build Coastguard Worker  // resides.
1732*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1733*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1734*d5c09012SAndroid Build Coastguard Worker
1735*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to rollback.
1736*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1737*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1738*d5c09012SAndroid Build Coastguard Worker
1739*d5c09012SAndroid Build Coastguard Worker  // The name of the node pool to rollback.
1740*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1741*d5c09012SAndroid Build Coastguard Worker  string node_pool_id = 4;
1742*d5c09012SAndroid Build Coastguard Worker
1743*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster, node pool id) of the node poll to
1744*d5c09012SAndroid Build Coastguard Worker  // rollback upgrade.
1745*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.
1746*d5c09012SAndroid Build Coastguard Worker  string name = 6;
1747*d5c09012SAndroid Build Coastguard Worker}
1748*d5c09012SAndroid Build Coastguard Worker
1749*d5c09012SAndroid Build Coastguard Worker// ListNodePoolsResponse is the result of ListNodePoolsRequest.
1750*d5c09012SAndroid Build Coastguard Workermessage ListNodePoolsResponse {
1751*d5c09012SAndroid Build Coastguard Worker  // A list of node pools for a cluster.
1752*d5c09012SAndroid Build Coastguard Worker  repeated NodePool node_pools = 1;
1753*d5c09012SAndroid Build Coastguard Worker}
1754*d5c09012SAndroid Build Coastguard Worker
1755*d5c09012SAndroid Build Coastguard Worker// NodePoolAutoscaling contains information required by cluster autoscaler to
1756*d5c09012SAndroid Build Coastguard Worker// adjust the size of the node pool to the current cluster usage.
1757*d5c09012SAndroid Build Coastguard Workermessage NodePoolAutoscaling {
1758*d5c09012SAndroid Build Coastguard Worker  // Is autoscaling enabled for this node pool.
1759*d5c09012SAndroid Build Coastguard Worker  bool enabled = 1;
1760*d5c09012SAndroid Build Coastguard Worker
1761*d5c09012SAndroid Build Coastguard Worker  // Minimum number of nodes in the NodePool. Must be >= 1 and <=
1762*d5c09012SAndroid Build Coastguard Worker  // max_node_count.
1763*d5c09012SAndroid Build Coastguard Worker  int32 min_node_count = 2;
1764*d5c09012SAndroid Build Coastguard Worker
1765*d5c09012SAndroid Build Coastguard Worker  // Maximum number of nodes in the NodePool. Must be >= min_node_count. There
1766*d5c09012SAndroid Build Coastguard Worker  // has to enough quota to scale up the cluster.
1767*d5c09012SAndroid Build Coastguard Worker  int32 max_node_count = 3;
1768*d5c09012SAndroid Build Coastguard Worker}
1769*d5c09012SAndroid Build Coastguard Worker
1770*d5c09012SAndroid Build Coastguard Worker// SetLabelsRequest sets the Google Cloud Platform labels on a Google Container
1771*d5c09012SAndroid Build Coastguard Worker// Engine cluster, which will in turn set them for Google Compute Engine
1772*d5c09012SAndroid Build Coastguard Worker// resources used by that cluster
1773*d5c09012SAndroid Build Coastguard Workermessage SetLabelsRequest {
1774*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1775*d5c09012SAndroid Build Coastguard Worker  // number](https://developers.google.com/console/help/new/#projectnumber).
1776*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1777*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1778*d5c09012SAndroid Build Coastguard Worker
1779*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1780*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1781*d5c09012SAndroid Build Coastguard Worker  // resides.
1782*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1783*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1784*d5c09012SAndroid Build Coastguard Worker
1785*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster.
1786*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1787*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1788*d5c09012SAndroid Build Coastguard Worker
1789*d5c09012SAndroid Build Coastguard Worker  // The labels to set for that cluster.
1790*d5c09012SAndroid Build Coastguard Worker  map<string, string> resource_labels = 4;
1791*d5c09012SAndroid Build Coastguard Worker
1792*d5c09012SAndroid Build Coastguard Worker  // The fingerprint of the previous set of labels for this resource,
1793*d5c09012SAndroid Build Coastguard Worker  // used to detect conflicts. The fingerprint is initially generated by
1794*d5c09012SAndroid Build Coastguard Worker  // Container Engine and changes after every request to modify or update
1795*d5c09012SAndroid Build Coastguard Worker  // labels. You must always provide an up-to-date fingerprint hash when
1796*d5c09012SAndroid Build Coastguard Worker  // updating or changing labels. Make a <code>get()</code> request to the
1797*d5c09012SAndroid Build Coastguard Worker  // resource to get the latest fingerprint.
1798*d5c09012SAndroid Build Coastguard Worker  string label_fingerprint = 5;
1799*d5c09012SAndroid Build Coastguard Worker
1800*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster id) of the cluster to set labels.
1801*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1802*d5c09012SAndroid Build Coastguard Worker  string name = 7;
1803*d5c09012SAndroid Build Coastguard Worker}
1804*d5c09012SAndroid Build Coastguard Worker
1805*d5c09012SAndroid Build Coastguard Worker// SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for
1806*d5c09012SAndroid Build Coastguard Worker// a cluster.
1807*d5c09012SAndroid Build Coastguard Workermessage SetLegacyAbacRequest {
1808*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1809*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1810*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1811*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1812*d5c09012SAndroid Build Coastguard Worker
1813*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1814*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1815*d5c09012SAndroid Build Coastguard Worker  // resides.
1816*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1817*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1818*d5c09012SAndroid Build Coastguard Worker
1819*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to update.
1820*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1821*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1822*d5c09012SAndroid Build Coastguard Worker
1823*d5c09012SAndroid Build Coastguard Worker  // Whether ABAC authorization will be enabled in the cluster.
1824*d5c09012SAndroid Build Coastguard Worker  bool enabled = 4;
1825*d5c09012SAndroid Build Coastguard Worker
1826*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster id) of the cluster to set legacy abac.
1827*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1828*d5c09012SAndroid Build Coastguard Worker  string name = 6;
1829*d5c09012SAndroid Build Coastguard Worker}
1830*d5c09012SAndroid Build Coastguard Worker
1831*d5c09012SAndroid Build Coastguard Worker// StartIPRotationRequest creates a new IP for the cluster and then performs
1832*d5c09012SAndroid Build Coastguard Worker// a node upgrade on each node pool to point to the new IP.
1833*d5c09012SAndroid Build Coastguard Workermessage StartIPRotationRequest {
1834*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1835*d5c09012SAndroid Build Coastguard Worker  // number](https://developers.google.com/console/help/new/#projectnumber).
1836*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1837*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1838*d5c09012SAndroid Build Coastguard Worker
1839*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1840*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1841*d5c09012SAndroid Build Coastguard Worker  // resides.
1842*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1843*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1844*d5c09012SAndroid Build Coastguard Worker
1845*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster.
1846*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1847*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1848*d5c09012SAndroid Build Coastguard Worker
1849*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster id) of the cluster to start IP rotation.
1850*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1851*d5c09012SAndroid Build Coastguard Worker  string name = 6;
1852*d5c09012SAndroid Build Coastguard Worker}
1853*d5c09012SAndroid Build Coastguard Worker
1854*d5c09012SAndroid Build Coastguard Worker// CompleteIPRotationRequest moves the cluster master back into single-IP mode.
1855*d5c09012SAndroid Build Coastguard Workermessage CompleteIPRotationRequest {
1856*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1857*d5c09012SAndroid Build Coastguard Worker  // number](https://developers.google.com/console/help/new/#projectnumber).
1858*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1859*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1860*d5c09012SAndroid Build Coastguard Worker
1861*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1862*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1863*d5c09012SAndroid Build Coastguard Worker  // resides.
1864*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1865*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1866*d5c09012SAndroid Build Coastguard Worker
1867*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster.
1868*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1869*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1870*d5c09012SAndroid Build Coastguard Worker
1871*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster id) of the cluster to complete IP rotation.
1872*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1873*d5c09012SAndroid Build Coastguard Worker  string name = 7;
1874*d5c09012SAndroid Build Coastguard Worker}
1875*d5c09012SAndroid Build Coastguard Worker
1876*d5c09012SAndroid Build Coastguard Worker// AcceleratorConfig represents a Hardware Accelerator request.
1877*d5c09012SAndroid Build Coastguard Workermessage AcceleratorConfig {
1878*d5c09012SAndroid Build Coastguard Worker  // The number of the accelerator cards exposed to an instance.
1879*d5c09012SAndroid Build Coastguard Worker  int64 accelerator_count = 1;
1880*d5c09012SAndroid Build Coastguard Worker
1881*d5c09012SAndroid Build Coastguard Worker  // The accelerator type resource name. List of supported accelerators
1882*d5c09012SAndroid Build Coastguard Worker  // [here](/compute/docs/gpus/#Introduction)
1883*d5c09012SAndroid Build Coastguard Worker  string accelerator_type = 2;
1884*d5c09012SAndroid Build Coastguard Worker}
1885*d5c09012SAndroid Build Coastguard Worker
1886*d5c09012SAndroid Build Coastguard Worker// SetNetworkPolicyRequest enables/disables network policy for a cluster.
1887*d5c09012SAndroid Build Coastguard Workermessage SetNetworkPolicyRequest {
1888*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1889*d5c09012SAndroid Build Coastguard Worker  // number](https://developers.google.com/console/help/new/#projectnumber).
1890*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1891*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1892*d5c09012SAndroid Build Coastguard Worker
1893*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1894*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1895*d5c09012SAndroid Build Coastguard Worker  // resides.
1896*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1897*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1898*d5c09012SAndroid Build Coastguard Worker
1899*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster.
1900*d5c09012SAndroid Build Coastguard Worker  // This field is deprecated, use name instead.
1901*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1902*d5c09012SAndroid Build Coastguard Worker
1903*d5c09012SAndroid Build Coastguard Worker  // Configuration options for the NetworkPolicy feature.
1904*d5c09012SAndroid Build Coastguard Worker  NetworkPolicy network_policy = 4;
1905*d5c09012SAndroid Build Coastguard Worker
1906*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster id) of the cluster to set networking
1907*d5c09012SAndroid Build Coastguard Worker  // policy.
1908*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1909*d5c09012SAndroid Build Coastguard Worker  string name = 6;
1910*d5c09012SAndroid Build Coastguard Worker}
1911*d5c09012SAndroid Build Coastguard Worker
1912*d5c09012SAndroid Build Coastguard Worker// SetMaintenancePolicyRequest sets the maintenance policy for a cluster.
1913*d5c09012SAndroid Build Coastguard Workermessage SetMaintenancePolicyRequest {
1914*d5c09012SAndroid Build Coastguard Worker  // The Google Developers Console [project ID or project
1915*d5c09012SAndroid Build Coastguard Worker  // number](https://support.google.com/cloud/answer/6158840).
1916*d5c09012SAndroid Build Coastguard Worker  string project_id = 1;
1917*d5c09012SAndroid Build Coastguard Worker
1918*d5c09012SAndroid Build Coastguard Worker  // The name of the Google Compute Engine
1919*d5c09012SAndroid Build Coastguard Worker  // [zone](/compute/docs/zones#available) in which the cluster
1920*d5c09012SAndroid Build Coastguard Worker  // resides.
1921*d5c09012SAndroid Build Coastguard Worker  string zone = 2;
1922*d5c09012SAndroid Build Coastguard Worker
1923*d5c09012SAndroid Build Coastguard Worker  // The name of the cluster to update.
1924*d5c09012SAndroid Build Coastguard Worker  string cluster_id = 3;
1925*d5c09012SAndroid Build Coastguard Worker
1926*d5c09012SAndroid Build Coastguard Worker  // The maintenance policy to be set for the cluster. An empty field
1927*d5c09012SAndroid Build Coastguard Worker  // clears the existing maintenance policy.
1928*d5c09012SAndroid Build Coastguard Worker  MaintenancePolicy maintenance_policy = 4;
1929*d5c09012SAndroid Build Coastguard Worker
1930*d5c09012SAndroid Build Coastguard Worker  // The name (project, location, cluster id) of the cluster to set maintenance
1931*d5c09012SAndroid Build Coastguard Worker  // policy.
1932*d5c09012SAndroid Build Coastguard Worker  // Specified in the format 'projects/*/locations/*/clusters/*'.
1933*d5c09012SAndroid Build Coastguard Worker  string name = 5;
1934*d5c09012SAndroid Build Coastguard Worker}
1935