1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC 2*d5c09012SAndroid Build Coastguard Worker// 3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*d5c09012SAndroid Build Coastguard Worker// 7*d5c09012SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*d5c09012SAndroid Build Coastguard Worker// 9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*d5c09012SAndroid Build Coastguard Worker// limitations under the License. 14*d5c09012SAndroid Build Coastguard Worker 15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3"; 16*d5c09012SAndroid Build Coastguard Worker 17*d5c09012SAndroid Build Coastguard Workerpackage google.container.v1beta1; 18*d5c09012SAndroid Build Coastguard Worker 19*d5c09012SAndroid Build Coastguard Workerimport "google/api/annotations.proto"; 20*d5c09012SAndroid Build Coastguard Workerimport "google/api/client.proto"; 21*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto"; 22*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto"; 23*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/duration.proto"; 24*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/empty.proto"; 25*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto"; 26*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/wrappers.proto"; 27*d5c09012SAndroid Build Coastguard Workerimport "google/rpc/code.proto"; 28*d5c09012SAndroid Build Coastguard Workerimport "google/rpc/status.proto"; 29*d5c09012SAndroid Build Coastguard Workerimport "google/type/date.proto"; 30*d5c09012SAndroid Build Coastguard Worker 31*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.Container.V1Beta1"; 32*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/container/apiv1beta1/containerpb;containerpb"; 33*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 34*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "ClusterServiceProto"; 35*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.container.v1beta1"; 36*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\Container\\V1beta1"; 37*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::Container::V1beta1"; 38*d5c09012SAndroid Build Coastguard Workeroption (google.api.resource_definition) = { 39*d5c09012SAndroid Build Coastguard Worker type: "pubsub.googleapis.com/Topic" 40*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/topics/{topic}" 41*d5c09012SAndroid Build Coastguard Worker}; 42*d5c09012SAndroid Build Coastguard Worker 43*d5c09012SAndroid Build Coastguard Worker// Google Kubernetes Engine Cluster Manager v1beta1 44*d5c09012SAndroid Build Coastguard Workerservice ClusterManager { 45*d5c09012SAndroid Build Coastguard Worker option (google.api.default_host) = "container.googleapis.com"; 46*d5c09012SAndroid Build Coastguard Worker option (google.api.oauth_scopes) = 47*d5c09012SAndroid Build Coastguard Worker "https://www.googleapis.com/auth/cloud-platform"; 48*d5c09012SAndroid Build Coastguard Worker 49*d5c09012SAndroid Build Coastguard Worker // Lists all clusters owned by a project in either the specified zone or all 50*d5c09012SAndroid Build Coastguard Worker // zones. 51*d5c09012SAndroid Build Coastguard Worker rpc ListClusters(ListClustersRequest) returns (ListClustersResponse) { 52*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 53*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{parent=projects/*/locations/*}/clusters" 54*d5c09012SAndroid Build Coastguard Worker additional_bindings { 55*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/projects/{project_id}/zones/{zone}/clusters" 56*d5c09012SAndroid Build Coastguard Worker } 57*d5c09012SAndroid Build Coastguard Worker }; 58*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,zone"; 59*d5c09012SAndroid Build Coastguard Worker } 60*d5c09012SAndroid Build Coastguard Worker 61*d5c09012SAndroid Build Coastguard Worker // Gets the details for a specific cluster. 62*d5c09012SAndroid Build Coastguard Worker rpc GetCluster(GetClusterRequest) returns (Cluster) { 63*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 64*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{name=projects/*/locations/*/clusters/*}" 65*d5c09012SAndroid Build Coastguard Worker additional_bindings { 66*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}" 67*d5c09012SAndroid Build Coastguard Worker } 68*d5c09012SAndroid Build Coastguard Worker }; 69*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,zone,cluster_id"; 70*d5c09012SAndroid Build Coastguard Worker } 71*d5c09012SAndroid Build Coastguard Worker 72*d5c09012SAndroid Build Coastguard Worker // Creates a cluster, consisting of the specified number and type of Google 73*d5c09012SAndroid Build Coastguard Worker // Compute Engine instances. 74*d5c09012SAndroid Build Coastguard Worker // 75*d5c09012SAndroid Build Coastguard Worker // By default, the cluster is created in the project's 76*d5c09012SAndroid Build Coastguard Worker // [default 77*d5c09012SAndroid Build Coastguard Worker // network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks). 78*d5c09012SAndroid Build Coastguard Worker // 79*d5c09012SAndroid Build Coastguard Worker // One firewall is added for the cluster. After cluster creation, 80*d5c09012SAndroid Build Coastguard Worker // the Kubelet creates routes for each node to allow the containers 81*d5c09012SAndroid Build Coastguard Worker // on that node to communicate with all other instances in the 82*d5c09012SAndroid Build Coastguard Worker // cluster. 83*d5c09012SAndroid Build Coastguard Worker // 84*d5c09012SAndroid Build Coastguard Worker // Finally, an entry is added to the project's global metadata indicating 85*d5c09012SAndroid Build Coastguard Worker // which CIDR range the cluster is using. 86*d5c09012SAndroid Build Coastguard Worker rpc CreateCluster(CreateClusterRequest) returns (Operation) { 87*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 88*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{parent=projects/*/locations/*}/clusters" 89*d5c09012SAndroid Build Coastguard Worker body: "*" 90*d5c09012SAndroid Build Coastguard Worker additional_bindings { 91*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters" 92*d5c09012SAndroid Build Coastguard Worker body: "*" 93*d5c09012SAndroid Build Coastguard Worker } 94*d5c09012SAndroid Build Coastguard Worker }; 95*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,zone,cluster"; 96*d5c09012SAndroid Build Coastguard Worker } 97*d5c09012SAndroid Build Coastguard Worker 98*d5c09012SAndroid Build Coastguard Worker // Updates the settings for a specific cluster. 99*d5c09012SAndroid Build Coastguard Worker rpc UpdateCluster(UpdateClusterRequest) returns (Operation) { 100*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 101*d5c09012SAndroid Build Coastguard Worker put: "/v1beta1/{name=projects/*/locations/*/clusters/*}" 102*d5c09012SAndroid Build Coastguard Worker body: "*" 103*d5c09012SAndroid Build Coastguard Worker additional_bindings { 104*d5c09012SAndroid Build Coastguard Worker put: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}" 105*d5c09012SAndroid Build Coastguard Worker body: "*" 106*d5c09012SAndroid Build Coastguard Worker } 107*d5c09012SAndroid Build Coastguard Worker }; 108*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,zone,cluster_id,update"; 109*d5c09012SAndroid Build Coastguard Worker } 110*d5c09012SAndroid Build Coastguard Worker 111*d5c09012SAndroid Build Coastguard Worker // Updates the version and/or image type of a specific node pool. 112*d5c09012SAndroid Build Coastguard Worker rpc UpdateNodePool(UpdateNodePoolRequest) returns (Operation) { 113*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 114*d5c09012SAndroid Build Coastguard Worker put: "/v1beta1/{name=projects/*/locations/*/clusters/*/nodePools/*}" 115*d5c09012SAndroid Build Coastguard Worker body: "*" 116*d5c09012SAndroid Build Coastguard Worker additional_bindings { 117*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}/update" 118*d5c09012SAndroid Build Coastguard Worker body: "*" 119*d5c09012SAndroid Build Coastguard Worker } 120*d5c09012SAndroid Build Coastguard Worker }; 121*d5c09012SAndroid Build Coastguard Worker } 122*d5c09012SAndroid Build Coastguard Worker 123*d5c09012SAndroid Build Coastguard Worker // Sets the autoscaling settings of a specific node pool. 124*d5c09012SAndroid Build Coastguard Worker rpc SetNodePoolAutoscaling(SetNodePoolAutoscalingRequest) 125*d5c09012SAndroid Build Coastguard Worker returns (Operation) { 126*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 127*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*/nodePools/*}:setAutoscaling" 128*d5c09012SAndroid Build Coastguard Worker body: "*" 129*d5c09012SAndroid Build Coastguard Worker additional_bindings { 130*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}/autoscaling" 131*d5c09012SAndroid Build Coastguard Worker body: "*" 132*d5c09012SAndroid Build Coastguard Worker } 133*d5c09012SAndroid Build Coastguard Worker }; 134*d5c09012SAndroid Build Coastguard Worker } 135*d5c09012SAndroid Build Coastguard Worker 136*d5c09012SAndroid Build Coastguard Worker // Sets the logging service for a specific cluster. 137*d5c09012SAndroid Build Coastguard Worker rpc SetLoggingService(SetLoggingServiceRequest) returns (Operation) { 138*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 139*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:setLogging" 140*d5c09012SAndroid Build Coastguard Worker body: "*" 141*d5c09012SAndroid Build Coastguard Worker additional_bindings { 142*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/logging" 143*d5c09012SAndroid Build Coastguard Worker body: "*" 144*d5c09012SAndroid Build Coastguard Worker } 145*d5c09012SAndroid Build Coastguard Worker }; 146*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 147*d5c09012SAndroid Build Coastguard Worker "project_id,zone,cluster_id,logging_service"; 148*d5c09012SAndroid Build Coastguard Worker } 149*d5c09012SAndroid Build Coastguard Worker 150*d5c09012SAndroid Build Coastguard Worker // Sets the monitoring service for a specific cluster. 151*d5c09012SAndroid Build Coastguard Worker rpc SetMonitoringService(SetMonitoringServiceRequest) returns (Operation) { 152*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 153*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:setMonitoring" 154*d5c09012SAndroid Build Coastguard Worker body: "*" 155*d5c09012SAndroid Build Coastguard Worker additional_bindings { 156*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/monitoring" 157*d5c09012SAndroid Build Coastguard Worker body: "*" 158*d5c09012SAndroid Build Coastguard Worker } 159*d5c09012SAndroid Build Coastguard Worker }; 160*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 161*d5c09012SAndroid Build Coastguard Worker "project_id,zone,cluster_id,monitoring_service"; 162*d5c09012SAndroid Build Coastguard Worker } 163*d5c09012SAndroid Build Coastguard Worker 164*d5c09012SAndroid Build Coastguard Worker // Sets the addons for a specific cluster. 165*d5c09012SAndroid Build Coastguard Worker rpc SetAddonsConfig(SetAddonsConfigRequest) returns (Operation) { 166*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 167*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:setAddons" 168*d5c09012SAndroid Build Coastguard Worker body: "*" 169*d5c09012SAndroid Build Coastguard Worker additional_bindings { 170*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/addons" 171*d5c09012SAndroid Build Coastguard Worker body: "*" 172*d5c09012SAndroid Build Coastguard Worker } 173*d5c09012SAndroid Build Coastguard Worker }; 174*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 175*d5c09012SAndroid Build Coastguard Worker "project_id,zone,cluster_id,addons_config"; 176*d5c09012SAndroid Build Coastguard Worker } 177*d5c09012SAndroid Build Coastguard Worker 178*d5c09012SAndroid Build Coastguard Worker // Sets the locations for a specific cluster. 179*d5c09012SAndroid Build Coastguard Worker // Deprecated. Use 180*d5c09012SAndroid Build Coastguard Worker // [projects.locations.clusters.update](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1beta1/projects.locations.clusters/update) 181*d5c09012SAndroid Build Coastguard Worker // instead. 182*d5c09012SAndroid Build Coastguard Worker rpc SetLocations(SetLocationsRequest) returns (Operation) { 183*d5c09012SAndroid Build Coastguard Worker option deprecated = true; 184*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 185*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:setLocations" 186*d5c09012SAndroid Build Coastguard Worker body: "*" 187*d5c09012SAndroid Build Coastguard Worker additional_bindings { 188*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/locations" 189*d5c09012SAndroid Build Coastguard Worker body: "*" 190*d5c09012SAndroid Build Coastguard Worker } 191*d5c09012SAndroid Build Coastguard Worker }; 192*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 193*d5c09012SAndroid Build Coastguard Worker "project_id,zone,cluster_id,locations"; 194*d5c09012SAndroid Build Coastguard Worker } 195*d5c09012SAndroid Build Coastguard Worker 196*d5c09012SAndroid Build Coastguard Worker // Updates the master for a specific cluster. 197*d5c09012SAndroid Build Coastguard Worker rpc UpdateMaster(UpdateMasterRequest) returns (Operation) { 198*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 199*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:updateMaster" 200*d5c09012SAndroid Build Coastguard Worker body: "*" 201*d5c09012SAndroid Build Coastguard Worker additional_bindings { 202*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/master" 203*d5c09012SAndroid Build Coastguard Worker body: "*" 204*d5c09012SAndroid Build Coastguard Worker } 205*d5c09012SAndroid Build Coastguard Worker }; 206*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 207*d5c09012SAndroid Build Coastguard Worker "project_id,zone,cluster_id,master_version"; 208*d5c09012SAndroid Build Coastguard Worker } 209*d5c09012SAndroid Build Coastguard Worker 210*d5c09012SAndroid Build Coastguard Worker // Sets master auth materials. Currently supports changing the admin password 211*d5c09012SAndroid Build Coastguard Worker // or a specific cluster, either via password generation or explicitly setting 212*d5c09012SAndroid Build Coastguard Worker // the password. 213*d5c09012SAndroid Build Coastguard Worker rpc SetMasterAuth(SetMasterAuthRequest) returns (Operation) { 214*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 215*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:setMasterAuth" 216*d5c09012SAndroid Build Coastguard Worker body: "*" 217*d5c09012SAndroid Build Coastguard Worker additional_bindings { 218*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}:setMasterAuth" 219*d5c09012SAndroid Build Coastguard Worker body: "*" 220*d5c09012SAndroid Build Coastguard Worker } 221*d5c09012SAndroid Build Coastguard Worker }; 222*d5c09012SAndroid Build Coastguard Worker } 223*d5c09012SAndroid Build Coastguard Worker 224*d5c09012SAndroid Build Coastguard Worker // Deletes the cluster, including the Kubernetes endpoint and all worker 225*d5c09012SAndroid Build Coastguard Worker // nodes. 226*d5c09012SAndroid Build Coastguard Worker // 227*d5c09012SAndroid Build Coastguard Worker // Firewalls and routes that were configured during cluster creation 228*d5c09012SAndroid Build Coastguard Worker // are also deleted. 229*d5c09012SAndroid Build Coastguard Worker // 230*d5c09012SAndroid Build Coastguard Worker // Other Google Compute Engine resources that might be in use by the cluster, 231*d5c09012SAndroid Build Coastguard Worker // such as load balancer resources, are not deleted if they weren't present 232*d5c09012SAndroid Build Coastguard Worker // when the cluster was initially created. 233*d5c09012SAndroid Build Coastguard Worker rpc DeleteCluster(DeleteClusterRequest) returns (Operation) { 234*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 235*d5c09012SAndroid Build Coastguard Worker delete: "/v1beta1/{name=projects/*/locations/*/clusters/*}" 236*d5c09012SAndroid Build Coastguard Worker additional_bindings { 237*d5c09012SAndroid Build Coastguard Worker delete: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}" 238*d5c09012SAndroid Build Coastguard Worker } 239*d5c09012SAndroid Build Coastguard Worker }; 240*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,zone,cluster_id"; 241*d5c09012SAndroid Build Coastguard Worker } 242*d5c09012SAndroid Build Coastguard Worker 243*d5c09012SAndroid Build Coastguard Worker // Lists all operations in a project in the specified zone or all zones. 244*d5c09012SAndroid Build Coastguard Worker rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse) { 245*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 246*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{parent=projects/*/locations/*}/operations" 247*d5c09012SAndroid Build Coastguard Worker additional_bindings { 248*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/projects/{project_id}/zones/{zone}/operations" 249*d5c09012SAndroid Build Coastguard Worker } 250*d5c09012SAndroid Build Coastguard Worker }; 251*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,zone"; 252*d5c09012SAndroid Build Coastguard Worker } 253*d5c09012SAndroid Build Coastguard Worker 254*d5c09012SAndroid Build Coastguard Worker // Gets the specified operation. 255*d5c09012SAndroid Build Coastguard Worker rpc GetOperation(GetOperationRequest) returns (Operation) { 256*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 257*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{name=projects/*/locations/*/operations/*}" 258*d5c09012SAndroid Build Coastguard Worker additional_bindings { 259*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/projects/{project_id}/zones/{zone}/operations/{operation_id}" 260*d5c09012SAndroid Build Coastguard Worker } 261*d5c09012SAndroid Build Coastguard Worker }; 262*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,zone,operation_id"; 263*d5c09012SAndroid Build Coastguard Worker } 264*d5c09012SAndroid Build Coastguard Worker 265*d5c09012SAndroid Build Coastguard Worker // Cancels the specified operation. 266*d5c09012SAndroid Build Coastguard Worker rpc CancelOperation(CancelOperationRequest) returns (google.protobuf.Empty) { 267*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 268*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/operations/*}:cancel" 269*d5c09012SAndroid Build Coastguard Worker body: "*" 270*d5c09012SAndroid Build Coastguard Worker additional_bindings { 271*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/operations/{operation_id}:cancel" 272*d5c09012SAndroid Build Coastguard Worker body: "*" 273*d5c09012SAndroid Build Coastguard Worker } 274*d5c09012SAndroid Build Coastguard Worker }; 275*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,zone,operation_id"; 276*d5c09012SAndroid Build Coastguard Worker } 277*d5c09012SAndroid Build Coastguard Worker 278*d5c09012SAndroid Build Coastguard Worker // Returns configuration info about the Google Kubernetes Engine service. 279*d5c09012SAndroid Build Coastguard Worker rpc GetServerConfig(GetServerConfigRequest) returns (ServerConfig) { 280*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 281*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{name=projects/*/locations/*}/serverConfig" 282*d5c09012SAndroid Build Coastguard Worker additional_bindings { 283*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/projects/{project_id}/zones/{zone}/serverconfig" 284*d5c09012SAndroid Build Coastguard Worker } 285*d5c09012SAndroid Build Coastguard Worker }; 286*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,zone"; 287*d5c09012SAndroid Build Coastguard Worker } 288*d5c09012SAndroid Build Coastguard Worker 289*d5c09012SAndroid Build Coastguard Worker // Gets the public component of the cluster signing keys in 290*d5c09012SAndroid Build Coastguard Worker // JSON Web Key format. 291*d5c09012SAndroid Build Coastguard Worker rpc GetJSONWebKeys(GetJSONWebKeysRequest) returns (GetJSONWebKeysResponse) { 292*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 293*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{parent=projects/*/locations/*/clusters/*}/jwks" 294*d5c09012SAndroid Build Coastguard Worker }; 295*d5c09012SAndroid Build Coastguard Worker } 296*d5c09012SAndroid Build Coastguard Worker 297*d5c09012SAndroid Build Coastguard Worker // Lists the node pools for a cluster. 298*d5c09012SAndroid Build Coastguard Worker rpc ListNodePools(ListNodePoolsRequest) returns (ListNodePoolsResponse) { 299*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 300*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{parent=projects/*/locations/*/clusters/*}/nodePools" 301*d5c09012SAndroid Build Coastguard Worker additional_bindings { 302*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools" 303*d5c09012SAndroid Build Coastguard Worker } 304*d5c09012SAndroid Build Coastguard Worker }; 305*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,zone,cluster_id"; 306*d5c09012SAndroid Build Coastguard Worker } 307*d5c09012SAndroid Build Coastguard Worker 308*d5c09012SAndroid Build Coastguard Worker // Retrieves the requested node pool. 309*d5c09012SAndroid Build Coastguard Worker rpc GetNodePool(GetNodePoolRequest) returns (NodePool) { 310*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 311*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{name=projects/*/locations/*/clusters/*/nodePools/*}" 312*d5c09012SAndroid Build Coastguard Worker additional_bindings { 313*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}" 314*d5c09012SAndroid Build Coastguard Worker } 315*d5c09012SAndroid Build Coastguard Worker }; 316*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 317*d5c09012SAndroid Build Coastguard Worker "project_id,zone,cluster_id,node_pool_id"; 318*d5c09012SAndroid Build Coastguard Worker } 319*d5c09012SAndroid Build Coastguard Worker 320*d5c09012SAndroid Build Coastguard Worker // Creates a node pool for a cluster. 321*d5c09012SAndroid Build Coastguard Worker rpc CreateNodePool(CreateNodePoolRequest) returns (Operation) { 322*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 323*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{parent=projects/*/locations/*/clusters/*}/nodePools" 324*d5c09012SAndroid Build Coastguard Worker body: "*" 325*d5c09012SAndroid Build Coastguard Worker additional_bindings { 326*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools" 327*d5c09012SAndroid Build Coastguard Worker body: "*" 328*d5c09012SAndroid Build Coastguard Worker } 329*d5c09012SAndroid Build Coastguard Worker }; 330*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 331*d5c09012SAndroid Build Coastguard Worker "project_id,zone,cluster_id,node_pool"; 332*d5c09012SAndroid Build Coastguard Worker } 333*d5c09012SAndroid Build Coastguard Worker 334*d5c09012SAndroid Build Coastguard Worker // Deletes a node pool from a cluster. 335*d5c09012SAndroid Build Coastguard Worker rpc DeleteNodePool(DeleteNodePoolRequest) returns (Operation) { 336*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 337*d5c09012SAndroid Build Coastguard Worker delete: "/v1beta1/{name=projects/*/locations/*/clusters/*/nodePools/*}" 338*d5c09012SAndroid Build Coastguard Worker additional_bindings { 339*d5c09012SAndroid Build Coastguard Worker delete: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}" 340*d5c09012SAndroid Build Coastguard Worker } 341*d5c09012SAndroid Build Coastguard Worker }; 342*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 343*d5c09012SAndroid Build Coastguard Worker "project_id,zone,cluster_id,node_pool_id"; 344*d5c09012SAndroid Build Coastguard Worker } 345*d5c09012SAndroid Build Coastguard Worker 346*d5c09012SAndroid Build Coastguard Worker // CompleteNodePoolUpgrade will signal an on-going node pool upgrade to 347*d5c09012SAndroid Build Coastguard Worker // complete. 348*d5c09012SAndroid Build Coastguard Worker rpc CompleteNodePoolUpgrade(CompleteNodePoolUpgradeRequest) 349*d5c09012SAndroid Build Coastguard Worker returns (google.protobuf.Empty) { 350*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 351*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*/nodePools/*}:completeUpgrade" 352*d5c09012SAndroid Build Coastguard Worker body: "*" 353*d5c09012SAndroid Build Coastguard Worker }; 354*d5c09012SAndroid Build Coastguard Worker } 355*d5c09012SAndroid Build Coastguard Worker 356*d5c09012SAndroid Build Coastguard Worker // Rolls back a previously Aborted or Failed NodePool upgrade. 357*d5c09012SAndroid Build Coastguard Worker // This makes no changes if the last upgrade successfully completed. 358*d5c09012SAndroid Build Coastguard Worker rpc RollbackNodePoolUpgrade(RollbackNodePoolUpgradeRequest) 359*d5c09012SAndroid Build Coastguard Worker returns (Operation) { 360*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 361*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*/nodePools/*}:rollback" 362*d5c09012SAndroid Build Coastguard Worker body: "*" 363*d5c09012SAndroid Build Coastguard Worker additional_bindings { 364*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}:rollback" 365*d5c09012SAndroid Build Coastguard Worker body: "*" 366*d5c09012SAndroid Build Coastguard Worker } 367*d5c09012SAndroid Build Coastguard Worker }; 368*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 369*d5c09012SAndroid Build Coastguard Worker "project_id,zone,cluster_id,node_pool_id"; 370*d5c09012SAndroid Build Coastguard Worker } 371*d5c09012SAndroid Build Coastguard Worker 372*d5c09012SAndroid Build Coastguard Worker // Sets the NodeManagement options for a node pool. 373*d5c09012SAndroid Build Coastguard Worker rpc SetNodePoolManagement(SetNodePoolManagementRequest) returns (Operation) { 374*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 375*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*/nodePools/*}:setManagement" 376*d5c09012SAndroid Build Coastguard Worker body: "*" 377*d5c09012SAndroid Build Coastguard Worker additional_bindings { 378*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}/setManagement" 379*d5c09012SAndroid Build Coastguard Worker body: "*" 380*d5c09012SAndroid Build Coastguard Worker } 381*d5c09012SAndroid Build Coastguard Worker }; 382*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 383*d5c09012SAndroid Build Coastguard Worker "project_id,zone,cluster_id,node_pool_id,management"; 384*d5c09012SAndroid Build Coastguard Worker } 385*d5c09012SAndroid Build Coastguard Worker 386*d5c09012SAndroid Build Coastguard Worker // Sets labels on a cluster. 387*d5c09012SAndroid Build Coastguard Worker rpc SetLabels(SetLabelsRequest) returns (Operation) { 388*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 389*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:setResourceLabels" 390*d5c09012SAndroid Build Coastguard Worker body: "*" 391*d5c09012SAndroid Build Coastguard Worker additional_bindings { 392*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/resourceLabels" 393*d5c09012SAndroid Build Coastguard Worker body: "*" 394*d5c09012SAndroid Build Coastguard Worker } 395*d5c09012SAndroid Build Coastguard Worker }; 396*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 397*d5c09012SAndroid Build Coastguard Worker "project_id,zone,cluster_id,resource_labels,label_fingerprint"; 398*d5c09012SAndroid Build Coastguard Worker } 399*d5c09012SAndroid Build Coastguard Worker 400*d5c09012SAndroid Build Coastguard Worker // Enables or disables the ABAC authorization mechanism on a cluster. 401*d5c09012SAndroid Build Coastguard Worker rpc SetLegacyAbac(SetLegacyAbacRequest) returns (Operation) { 402*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 403*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:setLegacyAbac" 404*d5c09012SAndroid Build Coastguard Worker body: "*" 405*d5c09012SAndroid Build Coastguard Worker additional_bindings { 406*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/legacyAbac" 407*d5c09012SAndroid Build Coastguard Worker body: "*" 408*d5c09012SAndroid Build Coastguard Worker } 409*d5c09012SAndroid Build Coastguard Worker }; 410*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,zone,cluster_id,enabled"; 411*d5c09012SAndroid Build Coastguard Worker } 412*d5c09012SAndroid Build Coastguard Worker 413*d5c09012SAndroid Build Coastguard Worker // Starts master IP rotation. 414*d5c09012SAndroid Build Coastguard Worker rpc StartIPRotation(StartIPRotationRequest) returns (Operation) { 415*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 416*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:startIpRotation" 417*d5c09012SAndroid Build Coastguard Worker body: "*" 418*d5c09012SAndroid Build Coastguard Worker additional_bindings { 419*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}:startIpRotation" 420*d5c09012SAndroid Build Coastguard Worker body: "*" 421*d5c09012SAndroid Build Coastguard Worker } 422*d5c09012SAndroid Build Coastguard Worker }; 423*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,zone,cluster_id"; 424*d5c09012SAndroid Build Coastguard Worker } 425*d5c09012SAndroid Build Coastguard Worker 426*d5c09012SAndroid Build Coastguard Worker // Completes master IP rotation. 427*d5c09012SAndroid Build Coastguard Worker rpc CompleteIPRotation(CompleteIPRotationRequest) returns (Operation) { 428*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 429*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:completeIpRotation" 430*d5c09012SAndroid Build Coastguard Worker body: "*" 431*d5c09012SAndroid Build Coastguard Worker additional_bindings { 432*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}:completeIpRotation" 433*d5c09012SAndroid Build Coastguard Worker body: "*" 434*d5c09012SAndroid Build Coastguard Worker } 435*d5c09012SAndroid Build Coastguard Worker }; 436*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "project_id,zone,cluster_id"; 437*d5c09012SAndroid Build Coastguard Worker } 438*d5c09012SAndroid Build Coastguard Worker 439*d5c09012SAndroid Build Coastguard Worker // SetNodePoolSizeRequest sets the size of a node pool. The new size will be 440*d5c09012SAndroid Build Coastguard Worker // used for all replicas, including future replicas created by modifying 441*d5c09012SAndroid Build Coastguard Worker // [NodePool.locations][google.container.v1beta1.NodePool.locations]. 442*d5c09012SAndroid Build Coastguard Worker rpc SetNodePoolSize(SetNodePoolSizeRequest) returns (Operation) { 443*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 444*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*/nodePools/*}:setSize" 445*d5c09012SAndroid Build Coastguard Worker body: "*" 446*d5c09012SAndroid Build Coastguard Worker additional_bindings { 447*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}/setSize" 448*d5c09012SAndroid Build Coastguard Worker body: "*" 449*d5c09012SAndroid Build Coastguard Worker } 450*d5c09012SAndroid Build Coastguard Worker }; 451*d5c09012SAndroid Build Coastguard Worker } 452*d5c09012SAndroid Build Coastguard Worker 453*d5c09012SAndroid Build Coastguard Worker // Enables or disables Network Policy for a cluster. 454*d5c09012SAndroid Build Coastguard Worker rpc SetNetworkPolicy(SetNetworkPolicyRequest) returns (Operation) { 455*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 456*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:setNetworkPolicy" 457*d5c09012SAndroid Build Coastguard Worker body: "*" 458*d5c09012SAndroid Build Coastguard Worker additional_bindings { 459*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}:setNetworkPolicy" 460*d5c09012SAndroid Build Coastguard Worker body: "*" 461*d5c09012SAndroid Build Coastguard Worker } 462*d5c09012SAndroid Build Coastguard Worker }; 463*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 464*d5c09012SAndroid Build Coastguard Worker "project_id,zone,cluster_id,network_policy"; 465*d5c09012SAndroid Build Coastguard Worker } 466*d5c09012SAndroid Build Coastguard Worker 467*d5c09012SAndroid Build Coastguard Worker // Sets the maintenance policy for a cluster. 468*d5c09012SAndroid Build Coastguard Worker rpc SetMaintenancePolicy(SetMaintenancePolicyRequest) returns (Operation) { 469*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 470*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:setMaintenancePolicy" 471*d5c09012SAndroid Build Coastguard Worker body: "*" 472*d5c09012SAndroid Build Coastguard Worker additional_bindings { 473*d5c09012SAndroid Build Coastguard Worker post: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}:setMaintenancePolicy" 474*d5c09012SAndroid Build Coastguard Worker body: "*" 475*d5c09012SAndroid Build Coastguard Worker } 476*d5c09012SAndroid Build Coastguard Worker }; 477*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = 478*d5c09012SAndroid Build Coastguard Worker "project_id,zone,cluster_id,maintenance_policy"; 479*d5c09012SAndroid Build Coastguard Worker } 480*d5c09012SAndroid Build Coastguard Worker 481*d5c09012SAndroid Build Coastguard Worker // Lists subnetworks that can be used for creating clusters in a project. 482*d5c09012SAndroid Build Coastguard Worker rpc ListUsableSubnetworks(ListUsableSubnetworksRequest) 483*d5c09012SAndroid Build Coastguard Worker returns (ListUsableSubnetworksResponse) { 484*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 485*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{parent=projects/*}/aggregated/usableSubnetworks" 486*d5c09012SAndroid Build Coastguard Worker }; 487*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 488*d5c09012SAndroid Build Coastguard Worker } 489*d5c09012SAndroid Build Coastguard Worker 490*d5c09012SAndroid Build Coastguard Worker // Checks the cluster compatibility with Autopilot mode, and returns a list of 491*d5c09012SAndroid Build Coastguard Worker // compatibility issues. 492*d5c09012SAndroid Build Coastguard Worker rpc CheckAutopilotCompatibility(CheckAutopilotCompatibilityRequest) 493*d5c09012SAndroid Build Coastguard Worker returns (CheckAutopilotCompatibilityResponse) { 494*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 495*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{name=projects/*/locations/*/clusters/*}:checkAutopilotCompatibility" 496*d5c09012SAndroid Build Coastguard Worker }; 497*d5c09012SAndroid Build Coastguard Worker } 498*d5c09012SAndroid Build Coastguard Worker 499*d5c09012SAndroid Build Coastguard Worker // Fetches locations that offer Google Kubernetes Engine. 500*d5c09012SAndroid Build Coastguard Worker rpc ListLocations(ListLocationsRequest) returns (ListLocationsResponse) { 501*d5c09012SAndroid Build Coastguard Worker option (google.api.http) = { 502*d5c09012SAndroid Build Coastguard Worker get: "/v1beta1/{parent=projects/*}/locations" 503*d5c09012SAndroid Build Coastguard Worker }; 504*d5c09012SAndroid Build Coastguard Worker option (google.api.method_signature) = "parent"; 505*d5c09012SAndroid Build Coastguard Worker } 506*d5c09012SAndroid Build Coastguard Worker} 507*d5c09012SAndroid Build Coastguard Worker 508*d5c09012SAndroid Build Coastguard Worker// Parameters that can be configured on Linux nodes. 509*d5c09012SAndroid Build Coastguard Workermessage LinuxNodeConfig { 510*d5c09012SAndroid Build Coastguard Worker // Possible cgroup modes that can be used. 511*d5c09012SAndroid Build Coastguard Worker enum CgroupMode { 512*d5c09012SAndroid Build Coastguard Worker // CGROUP_MODE_UNSPECIFIED is when unspecified cgroup configuration is used. 513*d5c09012SAndroid Build Coastguard Worker // The default for the GKE node OS image will be used. 514*d5c09012SAndroid Build Coastguard Worker CGROUP_MODE_UNSPECIFIED = 0; 515*d5c09012SAndroid Build Coastguard Worker 516*d5c09012SAndroid Build Coastguard Worker // CGROUP_MODE_V1 specifies to use cgroupv1 for the cgroup configuration on 517*d5c09012SAndroid Build Coastguard Worker // the node image. 518*d5c09012SAndroid Build Coastguard Worker CGROUP_MODE_V1 = 1; 519*d5c09012SAndroid Build Coastguard Worker 520*d5c09012SAndroid Build Coastguard Worker // CGROUP_MODE_V2 specifies to use cgroupv2 for the cgroup configuration on 521*d5c09012SAndroid Build Coastguard Worker // the node image. 522*d5c09012SAndroid Build Coastguard Worker CGROUP_MODE_V2 = 2; 523*d5c09012SAndroid Build Coastguard Worker } 524*d5c09012SAndroid Build Coastguard Worker 525*d5c09012SAndroid Build Coastguard Worker // The Linux kernel parameters to be applied to the nodes and all pods running 526*d5c09012SAndroid Build Coastguard Worker // on the nodes. 527*d5c09012SAndroid Build Coastguard Worker // 528*d5c09012SAndroid Build Coastguard Worker // The following parameters are supported. 529*d5c09012SAndroid Build Coastguard Worker // 530*d5c09012SAndroid Build Coastguard Worker // net.core.busy_poll 531*d5c09012SAndroid Build Coastguard Worker // net.core.busy_read 532*d5c09012SAndroid Build Coastguard Worker // net.core.netdev_max_backlog 533*d5c09012SAndroid Build Coastguard Worker // net.core.rmem_max 534*d5c09012SAndroid Build Coastguard Worker // net.core.wmem_default 535*d5c09012SAndroid Build Coastguard Worker // net.core.wmem_max 536*d5c09012SAndroid Build Coastguard Worker // net.core.optmem_max 537*d5c09012SAndroid Build Coastguard Worker // net.core.somaxconn 538*d5c09012SAndroid Build Coastguard Worker // net.ipv4.tcp_rmem 539*d5c09012SAndroid Build Coastguard Worker // net.ipv4.tcp_wmem 540*d5c09012SAndroid Build Coastguard Worker // net.ipv4.tcp_tw_reuse 541*d5c09012SAndroid Build Coastguard Worker map<string, string> sysctls = 1; 542*d5c09012SAndroid Build Coastguard Worker 543*d5c09012SAndroid Build Coastguard Worker // cgroup_mode specifies the cgroup mode to be used on the node. 544*d5c09012SAndroid Build Coastguard Worker CgroupMode cgroup_mode = 2; 545*d5c09012SAndroid Build Coastguard Worker} 546*d5c09012SAndroid Build Coastguard Worker 547*d5c09012SAndroid Build Coastguard Worker// Parameters that can be configured on Windows nodes. 548*d5c09012SAndroid Build Coastguard Worker// Windows Node Config that define the parameters that will be used to 549*d5c09012SAndroid Build Coastguard Worker// configure the Windows node pool settings 550*d5c09012SAndroid Build Coastguard Workermessage WindowsNodeConfig { 551*d5c09012SAndroid Build Coastguard Worker // Possible OS version that can be used. 552*d5c09012SAndroid Build Coastguard Worker enum OSVersion { 553*d5c09012SAndroid Build Coastguard Worker // When OSVersion is not specified 554*d5c09012SAndroid Build Coastguard Worker OS_VERSION_UNSPECIFIED = 0; 555*d5c09012SAndroid Build Coastguard Worker 556*d5c09012SAndroid Build Coastguard Worker // LTSC2019 specifies to use LTSC2019 as the Windows Servercore Base Image 557*d5c09012SAndroid Build Coastguard Worker OS_VERSION_LTSC2019 = 1; 558*d5c09012SAndroid Build Coastguard Worker 559*d5c09012SAndroid Build Coastguard Worker // LTSC2022 specifies to use LTSC2022 as the Windows Servercore Base Image 560*d5c09012SAndroid Build Coastguard Worker OS_VERSION_LTSC2022 = 2; 561*d5c09012SAndroid Build Coastguard Worker } 562*d5c09012SAndroid Build Coastguard Worker 563*d5c09012SAndroid Build Coastguard Worker // OSVersion specifies the Windows node config to be used on the node 564*d5c09012SAndroid Build Coastguard Worker OSVersion os_version = 1; 565*d5c09012SAndroid Build Coastguard Worker} 566*d5c09012SAndroid Build Coastguard Worker 567*d5c09012SAndroid Build Coastguard Worker// Node kubelet configs. 568*d5c09012SAndroid Build Coastguard Workermessage NodeKubeletConfig { 569*d5c09012SAndroid Build Coastguard Worker // Control the CPU management policy on the node. 570*d5c09012SAndroid Build Coastguard Worker // See 571*d5c09012SAndroid Build Coastguard Worker // https://kubernetes.io/docs/tasks/administer-cluster/cpu-management-policies/ 572*d5c09012SAndroid Build Coastguard Worker // 573*d5c09012SAndroid Build Coastguard Worker // The following values are allowed. 574*d5c09012SAndroid Build Coastguard Worker // * "none": the default, which represents the existing scheduling behavior. 575*d5c09012SAndroid Build Coastguard Worker // * "static": allows pods with certain resource characteristics to be granted 576*d5c09012SAndroid Build Coastguard Worker // increased CPU affinity and exclusivity on the node. 577*d5c09012SAndroid Build Coastguard Worker // The default value is 'none' if unspecified. 578*d5c09012SAndroid Build Coastguard Worker string cpu_manager_policy = 1; 579*d5c09012SAndroid Build Coastguard Worker 580*d5c09012SAndroid Build Coastguard Worker // Enable CPU CFS quota enforcement for containers that specify CPU limits. 581*d5c09012SAndroid Build Coastguard Worker // 582*d5c09012SAndroid Build Coastguard Worker // This option is enabled by default which makes kubelet use CFS quota 583*d5c09012SAndroid Build Coastguard Worker // (https://www.kernel.org/doc/Documentation/scheduler/sched-bwc.txt) to 584*d5c09012SAndroid Build Coastguard Worker // enforce container CPU limits. Otherwise, CPU limits will not be enforced at 585*d5c09012SAndroid Build Coastguard Worker // all. 586*d5c09012SAndroid Build Coastguard Worker // 587*d5c09012SAndroid Build Coastguard Worker // Disable this option to mitigate CPU throttling problems while still having 588*d5c09012SAndroid Build Coastguard Worker // your pods to be in Guaranteed QoS class by specifying the CPU limits. 589*d5c09012SAndroid Build Coastguard Worker // 590*d5c09012SAndroid Build Coastguard Worker // The default value is 'true' if unspecified. 591*d5c09012SAndroid Build Coastguard Worker google.protobuf.BoolValue cpu_cfs_quota = 2; 592*d5c09012SAndroid Build Coastguard Worker 593*d5c09012SAndroid Build Coastguard Worker // Set the CPU CFS quota period value 'cpu.cfs_period_us'. 594*d5c09012SAndroid Build Coastguard Worker // 595*d5c09012SAndroid Build Coastguard Worker // The string must be a sequence of decimal numbers, each with optional 596*d5c09012SAndroid Build Coastguard Worker // fraction and a unit suffix, such as "300ms". 597*d5c09012SAndroid Build Coastguard Worker // Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". 598*d5c09012SAndroid Build Coastguard Worker // The value must be a positive duration. 599*d5c09012SAndroid Build Coastguard Worker string cpu_cfs_quota_period = 3; 600*d5c09012SAndroid Build Coastguard Worker 601*d5c09012SAndroid Build Coastguard Worker // Set the Pod PID limits. See 602*d5c09012SAndroid Build Coastguard Worker // https://kubernetes.io/docs/concepts/policy/pid-limiting/#pod-pid-limits 603*d5c09012SAndroid Build Coastguard Worker // 604*d5c09012SAndroid Build Coastguard Worker // Controls the maximum number of processes allowed to run in a pod. The value 605*d5c09012SAndroid Build Coastguard Worker // must be greater than or equal to 1024 and less than 4194304. 606*d5c09012SAndroid Build Coastguard Worker int64 pod_pids_limit = 4; 607*d5c09012SAndroid Build Coastguard Worker 608*d5c09012SAndroid Build Coastguard Worker // Enable or disable Kubelet read only port. 609*d5c09012SAndroid Build Coastguard Worker optional bool insecure_kubelet_readonly_port_enabled = 7; 610*d5c09012SAndroid Build Coastguard Worker} 611*d5c09012SAndroid Build Coastguard Worker 612*d5c09012SAndroid Build Coastguard Worker// Parameters that describe the nodes in a cluster. 613*d5c09012SAndroid Build Coastguard Worker// 614*d5c09012SAndroid Build Coastguard Worker// GKE Autopilot clusters do not 615*d5c09012SAndroid Build Coastguard Worker// recognize parameters in `NodeConfig`. Use 616*d5c09012SAndroid Build Coastguard Worker// [AutoprovisioningNodePoolDefaults][google.container.v1beta1.AutoprovisioningNodePoolDefaults] 617*d5c09012SAndroid Build Coastguard Worker// instead. 618*d5c09012SAndroid Build Coastguard Workermessage NodeConfig { 619*d5c09012SAndroid Build Coastguard Worker // The name of a Google Compute Engine [machine 620*d5c09012SAndroid Build Coastguard Worker // type](https://cloud.google.com/compute/docs/machine-types). 621*d5c09012SAndroid Build Coastguard Worker // 622*d5c09012SAndroid Build Coastguard Worker // If unspecified, the default machine type is 623*d5c09012SAndroid Build Coastguard Worker // `e2-medium`. 624*d5c09012SAndroid Build Coastguard Worker string machine_type = 1; 625*d5c09012SAndroid Build Coastguard Worker 626*d5c09012SAndroid Build Coastguard Worker // Size of the disk attached to each node, specified in GB. 627*d5c09012SAndroid Build Coastguard Worker // The smallest allowed disk size is 10GB. 628*d5c09012SAndroid Build Coastguard Worker // 629*d5c09012SAndroid Build Coastguard Worker // If unspecified, the default disk size is 100GB. 630*d5c09012SAndroid Build Coastguard Worker int32 disk_size_gb = 2; 631*d5c09012SAndroid Build Coastguard Worker 632*d5c09012SAndroid Build Coastguard Worker // The set of Google API scopes to be made available on all of the 633*d5c09012SAndroid Build Coastguard Worker // node VMs under the "default" service account. 634*d5c09012SAndroid Build Coastguard Worker // 635*d5c09012SAndroid Build Coastguard Worker // The following scopes are recommended, but not required, and by default are 636*d5c09012SAndroid Build Coastguard Worker // not included: 637*d5c09012SAndroid Build Coastguard Worker // 638*d5c09012SAndroid Build Coastguard Worker // * `https://www.googleapis.com/auth/compute` is required for mounting 639*d5c09012SAndroid Build Coastguard Worker // persistent storage on your nodes. 640*d5c09012SAndroid Build Coastguard Worker // * `https://www.googleapis.com/auth/devstorage.read_only` is required for 641*d5c09012SAndroid Build Coastguard Worker // communicating with **gcr.io** 642*d5c09012SAndroid Build Coastguard Worker // (the [Google Container 643*d5c09012SAndroid Build Coastguard Worker // Registry](https://cloud.google.com/container-registry/)). 644*d5c09012SAndroid Build Coastguard Worker // 645*d5c09012SAndroid Build Coastguard Worker // If unspecified, no scopes are added, unless Cloud Logging or Cloud 646*d5c09012SAndroid Build Coastguard Worker // Monitoring are enabled, in which case their required scopes will be added. 647*d5c09012SAndroid Build Coastguard Worker repeated string oauth_scopes = 3; 648*d5c09012SAndroid Build Coastguard Worker 649*d5c09012SAndroid Build Coastguard Worker // The Google Cloud Platform Service Account to be used by the node VMs. 650*d5c09012SAndroid Build Coastguard Worker // Specify the email address of the Service Account; otherwise, if no Service 651*d5c09012SAndroid Build Coastguard Worker // Account is specified, the "default" service account is used. 652*d5c09012SAndroid Build Coastguard Worker string service_account = 9; 653*d5c09012SAndroid Build Coastguard Worker 654*d5c09012SAndroid Build Coastguard Worker // The metadata key/value pairs assigned to instances in the cluster. 655*d5c09012SAndroid Build Coastguard Worker // 656*d5c09012SAndroid Build Coastguard Worker // Keys must conform to the regexp `[a-zA-Z0-9-_]+` and be less than 128 bytes 657*d5c09012SAndroid Build Coastguard Worker // in length. These are reflected as part of a URL in the metadata server. 658*d5c09012SAndroid Build Coastguard Worker // Additionally, to avoid ambiguity, keys must not conflict with any other 659*d5c09012SAndroid Build Coastguard Worker // metadata keys for the project or be one of the reserved keys: 660*d5c09012SAndroid Build Coastguard Worker // 661*d5c09012SAndroid Build Coastguard Worker // - "cluster-location" 662*d5c09012SAndroid Build Coastguard Worker // - "cluster-name" 663*d5c09012SAndroid Build Coastguard Worker // - "cluster-uid" 664*d5c09012SAndroid Build Coastguard Worker // - "configure-sh" 665*d5c09012SAndroid Build Coastguard Worker // - "containerd-configure-sh" 666*d5c09012SAndroid Build Coastguard Worker // - "enable-oslogin" 667*d5c09012SAndroid Build Coastguard Worker // - "gci-ensure-gke-docker" 668*d5c09012SAndroid Build Coastguard Worker // - "gci-metrics-enabled" 669*d5c09012SAndroid Build Coastguard Worker // - "gci-update-strategy" 670*d5c09012SAndroid Build Coastguard Worker // - "instance-template" 671*d5c09012SAndroid Build Coastguard Worker // - "kube-env" 672*d5c09012SAndroid Build Coastguard Worker // - "startup-script" 673*d5c09012SAndroid Build Coastguard Worker // - "user-data" 674*d5c09012SAndroid Build Coastguard Worker // - "disable-address-manager" 675*d5c09012SAndroid Build Coastguard Worker // - "windows-startup-script-ps1" 676*d5c09012SAndroid Build Coastguard Worker // - "common-psm1" 677*d5c09012SAndroid Build Coastguard Worker // - "k8s-node-setup-psm1" 678*d5c09012SAndroid Build Coastguard Worker // - "install-ssh-psm1" 679*d5c09012SAndroid Build Coastguard Worker // - "user-profile-psm1" 680*d5c09012SAndroid Build Coastguard Worker // 681*d5c09012SAndroid Build Coastguard Worker // Values are free-form strings, and only have meaning as interpreted by 682*d5c09012SAndroid Build Coastguard Worker // the image running in the instance. The only restriction placed on them is 683*d5c09012SAndroid Build Coastguard Worker // that each value's size must be less than or equal to 32 KB. 684*d5c09012SAndroid Build Coastguard Worker // 685*d5c09012SAndroid Build Coastguard Worker // The total size of all keys and values must be less than 512 KB. 686*d5c09012SAndroid Build Coastguard Worker map<string, string> metadata = 4; 687*d5c09012SAndroid Build Coastguard Worker 688*d5c09012SAndroid Build Coastguard Worker // The image type to use for this node. Note that for a given image type, 689*d5c09012SAndroid Build Coastguard Worker // the latest version of it will be used. Please see 690*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/kubernetes-engine/docs/concepts/node-images for 691*d5c09012SAndroid Build Coastguard Worker // available image types. 692*d5c09012SAndroid Build Coastguard Worker string image_type = 5; 693*d5c09012SAndroid Build Coastguard Worker 694*d5c09012SAndroid Build Coastguard Worker // The map of Kubernetes labels (key/value pairs) to be applied to each node. 695*d5c09012SAndroid Build Coastguard Worker // These will added in addition to any default label(s) that 696*d5c09012SAndroid Build Coastguard Worker // Kubernetes may apply to the node. 697*d5c09012SAndroid Build Coastguard Worker // In case of conflict in label keys, the applied set may differ depending on 698*d5c09012SAndroid Build Coastguard Worker // the Kubernetes version -- it's best to assume the behavior is undefined 699*d5c09012SAndroid Build Coastguard Worker // and conflicts should be avoided. 700*d5c09012SAndroid Build Coastguard Worker // For more information, including usage and the valid values, see: 701*d5c09012SAndroid Build Coastguard Worker // https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/ 702*d5c09012SAndroid Build Coastguard Worker map<string, string> labels = 6; 703*d5c09012SAndroid Build Coastguard Worker 704*d5c09012SAndroid Build Coastguard Worker // The number of local SSD disks to be attached to the node. 705*d5c09012SAndroid Build Coastguard Worker // 706*d5c09012SAndroid Build Coastguard Worker // The limit for this value is dependent upon the maximum number of 707*d5c09012SAndroid Build Coastguard Worker // disks available on a machine per zone. See: 708*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/compute/docs/disks/local-ssd 709*d5c09012SAndroid Build Coastguard Worker // for more information. 710*d5c09012SAndroid Build Coastguard Worker int32 local_ssd_count = 7; 711*d5c09012SAndroid Build Coastguard Worker 712*d5c09012SAndroid Build Coastguard Worker // The list of instance tags applied to all nodes. Tags are used to identify 713*d5c09012SAndroid Build Coastguard Worker // valid sources or targets for network firewalls and are specified by 714*d5c09012SAndroid Build Coastguard Worker // the client during cluster or node pool creation. Each tag within the list 715*d5c09012SAndroid Build Coastguard Worker // must comply with RFC1035. 716*d5c09012SAndroid Build Coastguard Worker repeated string tags = 8; 717*d5c09012SAndroid Build Coastguard Worker 718*d5c09012SAndroid Build Coastguard Worker // Whether the nodes are created as preemptible VM instances. See: 719*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/compute/docs/instances/preemptible for more 720*d5c09012SAndroid Build Coastguard Worker // information about preemptible VM instances. 721*d5c09012SAndroid Build Coastguard Worker bool preemptible = 10; 722*d5c09012SAndroid Build Coastguard Worker 723*d5c09012SAndroid Build Coastguard Worker // A list of hardware accelerators to be attached to each node. 724*d5c09012SAndroid Build Coastguard Worker // See https://cloud.google.com/compute/docs/gpus for more information about 725*d5c09012SAndroid Build Coastguard Worker // support for GPUs. 726*d5c09012SAndroid Build Coastguard Worker repeated AcceleratorConfig accelerators = 11; 727*d5c09012SAndroid Build Coastguard Worker 728*d5c09012SAndroid Build Coastguard Worker // Sandbox configuration for this node. 729*d5c09012SAndroid Build Coastguard Worker SandboxConfig sandbox_config = 17; 730*d5c09012SAndroid Build Coastguard Worker 731*d5c09012SAndroid Build Coastguard Worker // Setting this field will assign instances of this 732*d5c09012SAndroid Build Coastguard Worker // pool to run on the specified node group. This is useful for running 733*d5c09012SAndroid Build Coastguard Worker // workloads on [sole tenant 734*d5c09012SAndroid Build Coastguard Worker // nodes](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes). 735*d5c09012SAndroid Build Coastguard Worker string node_group = 18; 736*d5c09012SAndroid Build Coastguard Worker 737*d5c09012SAndroid Build Coastguard Worker // The optional reservation affinity. Setting this field will apply 738*d5c09012SAndroid Build Coastguard Worker // the specified [Zonal Compute 739*d5c09012SAndroid Build Coastguard Worker // Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) 740*d5c09012SAndroid Build Coastguard Worker // to this node pool. 741*d5c09012SAndroid Build Coastguard Worker ReservationAffinity reservation_affinity = 19; 742*d5c09012SAndroid Build Coastguard Worker 743*d5c09012SAndroid Build Coastguard Worker // Type of the disk attached to each node (e.g. 'pd-standard', 'pd-ssd' or 744*d5c09012SAndroid Build Coastguard Worker // 'pd-balanced') 745*d5c09012SAndroid Build Coastguard Worker // 746*d5c09012SAndroid Build Coastguard Worker // If unspecified, the default disk type is 'pd-standard' 747*d5c09012SAndroid Build Coastguard Worker string disk_type = 12; 748*d5c09012SAndroid Build Coastguard Worker 749*d5c09012SAndroid Build Coastguard Worker // Minimum CPU platform to be used by this instance. The instance may be 750*d5c09012SAndroid Build Coastguard Worker // scheduled on the specified or newer CPU platform. Applicable values are the 751*d5c09012SAndroid Build Coastguard Worker // friendly names of CPU platforms, such as 752*d5c09012SAndroid Build Coastguard Worker // `minCpuPlatform: "Intel Haswell"` or 753*d5c09012SAndroid Build Coastguard Worker // `minCpuPlatform: "Intel Sandy Bridge"`. For more 754*d5c09012SAndroid Build Coastguard Worker // information, read [how to specify min CPU 755*d5c09012SAndroid Build Coastguard Worker // platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform). 756*d5c09012SAndroid Build Coastguard Worker string min_cpu_platform = 13; 757*d5c09012SAndroid Build Coastguard Worker 758*d5c09012SAndroid Build Coastguard Worker // The workload metadata configuration for this node. 759*d5c09012SAndroid Build Coastguard Worker WorkloadMetadataConfig workload_metadata_config = 14; 760*d5c09012SAndroid Build Coastguard Worker 761*d5c09012SAndroid Build Coastguard Worker // List of kubernetes taints to be applied to each node. 762*d5c09012SAndroid Build Coastguard Worker // 763*d5c09012SAndroid Build Coastguard Worker // For more information, including usage and the valid values, see: 764*d5c09012SAndroid Build Coastguard Worker // https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/ 765*d5c09012SAndroid Build Coastguard Worker repeated NodeTaint taints = 15; 766*d5c09012SAndroid Build Coastguard Worker 767*d5c09012SAndroid Build Coastguard Worker // 768*d5c09012SAndroid Build Coastguard Worker // The Customer Managed Encryption Key used to encrypt the boot disk attached 769*d5c09012SAndroid Build Coastguard Worker // to each node in the node pool. This should be of the form 770*d5c09012SAndroid Build Coastguard Worker // projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME]. 771*d5c09012SAndroid Build Coastguard Worker // For more information about protecting resources with Cloud KMS Keys please 772*d5c09012SAndroid Build Coastguard Worker // see: 773*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/compute/docs/disks/customer-managed-encryption 774*d5c09012SAndroid Build Coastguard Worker string boot_disk_kms_key = 23; 775*d5c09012SAndroid Build Coastguard Worker 776*d5c09012SAndroid Build Coastguard Worker // Shielded Instance options. 777*d5c09012SAndroid Build Coastguard Worker ShieldedInstanceConfig shielded_instance_config = 20; 778*d5c09012SAndroid Build Coastguard Worker 779*d5c09012SAndroid Build Coastguard Worker // Parameters that can be configured on Linux nodes. 780*d5c09012SAndroid Build Coastguard Worker LinuxNodeConfig linux_node_config = 21; 781*d5c09012SAndroid Build Coastguard Worker 782*d5c09012SAndroid Build Coastguard Worker // Node kubelet configs. 783*d5c09012SAndroid Build Coastguard Worker NodeKubeletConfig kubelet_config = 22; 784*d5c09012SAndroid Build Coastguard Worker 785*d5c09012SAndroid Build Coastguard Worker // Parameters for the ephemeral storage filesystem. 786*d5c09012SAndroid Build Coastguard Worker // If unspecified, ephemeral storage is backed by the boot disk. 787*d5c09012SAndroid Build Coastguard Worker EphemeralStorageConfig ephemeral_storage_config = 24; 788*d5c09012SAndroid Build Coastguard Worker 789*d5c09012SAndroid Build Coastguard Worker // GCFS (Google Container File System) configs. 790*d5c09012SAndroid Build Coastguard Worker GcfsConfig gcfs_config = 25; 791*d5c09012SAndroid Build Coastguard Worker 792*d5c09012SAndroid Build Coastguard Worker // Advanced features for the Compute Engine VM. 793*d5c09012SAndroid Build Coastguard Worker AdvancedMachineFeatures advanced_machine_features = 26; 794*d5c09012SAndroid Build Coastguard Worker 795*d5c09012SAndroid Build Coastguard Worker // Enable or disable gvnic on the node pool. 796*d5c09012SAndroid Build Coastguard Worker VirtualNIC gvnic = 29; 797*d5c09012SAndroid Build Coastguard Worker 798*d5c09012SAndroid Build Coastguard Worker // Spot flag for enabling Spot VM, which is a rebrand of 799*d5c09012SAndroid Build Coastguard Worker // the existing preemptible flag. 800*d5c09012SAndroid Build Coastguard Worker bool spot = 32; 801*d5c09012SAndroid Build Coastguard Worker 802*d5c09012SAndroid Build Coastguard Worker // Confidential nodes config. 803*d5c09012SAndroid Build Coastguard Worker // All the nodes in the node pool will be Confidential VM once enabled. 804*d5c09012SAndroid Build Coastguard Worker ConfidentialNodes confidential_nodes = 35; 805*d5c09012SAndroid Build Coastguard Worker 806*d5c09012SAndroid Build Coastguard Worker // Enable or disable NCCL fast socket for the node pool. 807*d5c09012SAndroid Build Coastguard Worker optional FastSocket fast_socket = 36; 808*d5c09012SAndroid Build Coastguard Worker 809*d5c09012SAndroid Build Coastguard Worker // The resource labels for the node pool to use to annotate any related 810*d5c09012SAndroid Build Coastguard Worker // Google Compute Engine resources. 811*d5c09012SAndroid Build Coastguard Worker map<string, string> resource_labels = 37; 812*d5c09012SAndroid Build Coastguard Worker 813*d5c09012SAndroid Build Coastguard Worker // Logging configuration. 814*d5c09012SAndroid Build Coastguard Worker NodePoolLoggingConfig logging_config = 38; 815*d5c09012SAndroid Build Coastguard Worker 816*d5c09012SAndroid Build Coastguard Worker // Parameters that can be configured on Windows nodes. 817*d5c09012SAndroid Build Coastguard Worker WindowsNodeConfig windows_node_config = 39; 818*d5c09012SAndroid Build Coastguard Worker 819*d5c09012SAndroid Build Coastguard Worker // Parameters for using raw-block Local NVMe SSDs. 820*d5c09012SAndroid Build Coastguard Worker LocalNvmeSsdBlockConfig local_nvme_ssd_block_config = 40; 821*d5c09012SAndroid Build Coastguard Worker 822*d5c09012SAndroid Build Coastguard Worker // Parameters for the node ephemeral storage using Local SSDs. 823*d5c09012SAndroid Build Coastguard Worker // If unspecified, ephemeral storage is backed by the boot disk. 824*d5c09012SAndroid Build Coastguard Worker // This field is functionally equivalent to the ephemeral_storage_config 825*d5c09012SAndroid Build Coastguard Worker EphemeralStorageLocalSsdConfig ephemeral_storage_local_ssd_config = 41; 826*d5c09012SAndroid Build Coastguard Worker 827*d5c09012SAndroid Build Coastguard Worker // Parameters for node pools to be backed by shared sole tenant node groups. 828*d5c09012SAndroid Build Coastguard Worker SoleTenantConfig sole_tenant_config = 42; 829*d5c09012SAndroid Build Coastguard Worker 830*d5c09012SAndroid Build Coastguard Worker // HostMaintenancePolicy contains the desired maintenance policy for the 831*d5c09012SAndroid Build Coastguard Worker // Google Compute Engine hosts. 832*d5c09012SAndroid Build Coastguard Worker HostMaintenancePolicy host_maintenance_policy = 44; 833*d5c09012SAndroid Build Coastguard Worker 834*d5c09012SAndroid Build Coastguard Worker // A map of resource manager tag keys and values to be attached to the nodes. 835*d5c09012SAndroid Build Coastguard Worker ResourceManagerTags resource_manager_tags = 45; 836*d5c09012SAndroid Build Coastguard Worker 837*d5c09012SAndroid Build Coastguard Worker // Optional. Reserved for future use. 838*d5c09012SAndroid Build Coastguard Worker bool enable_confidential_storage = 46 839*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 840*d5c09012SAndroid Build Coastguard Worker 841*d5c09012SAndroid Build Coastguard Worker // List of secondary boot disks attached to the nodes. 842*d5c09012SAndroid Build Coastguard Worker repeated SecondaryBootDisk secondary_boot_disks = 48; 843*d5c09012SAndroid Build Coastguard Worker 844*d5c09012SAndroid Build Coastguard Worker // Secondary boot disk update strategy. 845*d5c09012SAndroid Build Coastguard Worker optional SecondaryBootDiskUpdateStrategy secondary_boot_disk_update_strategy = 846*d5c09012SAndroid Build Coastguard Worker 50; 847*d5c09012SAndroid Build Coastguard Worker} 848*d5c09012SAndroid Build Coastguard Worker 849*d5c09012SAndroid Build Coastguard Worker// Specifies options for controlling advanced machine features. 850*d5c09012SAndroid Build Coastguard Workermessage AdvancedMachineFeatures { 851*d5c09012SAndroid Build Coastguard Worker // The number of threads per physical core. To disable simultaneous 852*d5c09012SAndroid Build Coastguard Worker // multithreading (SMT) set this to 1. If unset, the maximum number of threads 853*d5c09012SAndroid Build Coastguard Worker // supported per core by the underlying processor is assumed. 854*d5c09012SAndroid Build Coastguard Worker optional int64 threads_per_core = 1; 855*d5c09012SAndroid Build Coastguard Worker} 856*d5c09012SAndroid Build Coastguard Worker 857*d5c09012SAndroid Build Coastguard Worker// Parameters for node pool-level network config. 858*d5c09012SAndroid Build Coastguard Workermessage NodeNetworkConfig { 859*d5c09012SAndroid Build Coastguard Worker // Configuration of all network bandwidth tiers 860*d5c09012SAndroid Build Coastguard Worker message NetworkPerformanceConfig { 861*d5c09012SAndroid Build Coastguard Worker // Node network tier 862*d5c09012SAndroid Build Coastguard Worker enum Tier { 863*d5c09012SAndroid Build Coastguard Worker // Default value 864*d5c09012SAndroid Build Coastguard Worker TIER_UNSPECIFIED = 0; 865*d5c09012SAndroid Build Coastguard Worker 866*d5c09012SAndroid Build Coastguard Worker // Higher bandwidth, actual values based on VM size. 867*d5c09012SAndroid Build Coastguard Worker TIER_1 = 1; 868*d5c09012SAndroid Build Coastguard Worker } 869*d5c09012SAndroid Build Coastguard Worker 870*d5c09012SAndroid Build Coastguard Worker // Specifies the total network bandwidth tier for the NodePool. 871*d5c09012SAndroid Build Coastguard Worker optional Tier total_egress_bandwidth_tier = 1; 872*d5c09012SAndroid Build Coastguard Worker 873*d5c09012SAndroid Build Coastguard Worker // Specifies the network bandwidth tier for the NodePool for traffic to 874*d5c09012SAndroid Build Coastguard Worker // external/public IP addresses. 875*d5c09012SAndroid Build Coastguard Worker optional Tier external_ip_egress_bandwidth_tier = 2; 876*d5c09012SAndroid Build Coastguard Worker } 877*d5c09012SAndroid Build Coastguard Worker 878*d5c09012SAndroid Build Coastguard Worker // Input only. Whether to create a new range for pod IPs in this node pool. 879*d5c09012SAndroid Build Coastguard Worker // Defaults are provided for `pod_range` and `pod_ipv4_cidr_block` if they 880*d5c09012SAndroid Build Coastguard Worker // are not specified. 881*d5c09012SAndroid Build Coastguard Worker // 882*d5c09012SAndroid Build Coastguard Worker // If neither `create_pod_range` or `pod_range` are specified, the 883*d5c09012SAndroid Build Coastguard Worker // cluster-level default (`ip_allocation_policy.cluster_ipv4_cidr_block`) is 884*d5c09012SAndroid Build Coastguard Worker // used. 885*d5c09012SAndroid Build Coastguard Worker // 886*d5c09012SAndroid Build Coastguard Worker // Only applicable if `ip_allocation_policy.use_ip_aliases` is true. 887*d5c09012SAndroid Build Coastguard Worker // 888*d5c09012SAndroid Build Coastguard Worker // This field cannot be changed after the node pool has been created. 889*d5c09012SAndroid Build Coastguard Worker bool create_pod_range = 4 [(google.api.field_behavior) = INPUT_ONLY]; 890*d5c09012SAndroid Build Coastguard Worker 891*d5c09012SAndroid Build Coastguard Worker // The ID of the secondary range for pod IPs. 892*d5c09012SAndroid Build Coastguard Worker // If `create_pod_range` is true, this ID is used for the new range. 893*d5c09012SAndroid Build Coastguard Worker // If `create_pod_range` is false, uses an existing secondary range with this 894*d5c09012SAndroid Build Coastguard Worker // ID. 895*d5c09012SAndroid Build Coastguard Worker // 896*d5c09012SAndroid Build Coastguard Worker // Only applicable if `ip_allocation_policy.use_ip_aliases` is true. 897*d5c09012SAndroid Build Coastguard Worker // 898*d5c09012SAndroid Build Coastguard Worker // This field cannot be changed after the node pool has been created. 899*d5c09012SAndroid Build Coastguard Worker string pod_range = 5; 900*d5c09012SAndroid Build Coastguard Worker 901*d5c09012SAndroid Build Coastguard Worker // The IP address range for pod IPs in this node pool. 902*d5c09012SAndroid Build Coastguard Worker // 903*d5c09012SAndroid Build Coastguard Worker // Only applicable if `create_pod_range` is true. 904*d5c09012SAndroid Build Coastguard Worker // 905*d5c09012SAndroid Build Coastguard Worker // Set to blank to have a range chosen with the default size. 906*d5c09012SAndroid Build Coastguard Worker // 907*d5c09012SAndroid Build Coastguard Worker // Set to /netmask (e.g. `/14`) to have a range chosen with a specific 908*d5c09012SAndroid Build Coastguard Worker // netmask. 909*d5c09012SAndroid Build Coastguard Worker // 910*d5c09012SAndroid Build Coastguard Worker // Set to a 911*d5c09012SAndroid Build Coastguard Worker // [CIDR](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) 912*d5c09012SAndroid Build Coastguard Worker // notation (e.g. `10.96.0.0/14`) to pick a specific range to use. 913*d5c09012SAndroid Build Coastguard Worker // 914*d5c09012SAndroid Build Coastguard Worker // Only applicable if `ip_allocation_policy.use_ip_aliases` is true. 915*d5c09012SAndroid Build Coastguard Worker // 916*d5c09012SAndroid Build Coastguard Worker // This field cannot be changed after the node pool has been created. 917*d5c09012SAndroid Build Coastguard Worker string pod_ipv4_cidr_block = 6; 918*d5c09012SAndroid Build Coastguard Worker 919*d5c09012SAndroid Build Coastguard Worker // Whether nodes have internal IP addresses only. 920*d5c09012SAndroid Build Coastguard Worker // If enable_private_nodes is not specified, then the value is derived from 921*d5c09012SAndroid Build Coastguard Worker // [cluster.privateClusterConfig.enablePrivateNodes][google.container.v1beta1.PrivateClusterConfig.enablePrivateNodes] 922*d5c09012SAndroid Build Coastguard Worker optional bool enable_private_nodes = 9; 923*d5c09012SAndroid Build Coastguard Worker 924*d5c09012SAndroid Build Coastguard Worker // Network bandwidth tier configuration. 925*d5c09012SAndroid Build Coastguard Worker optional NetworkPerformanceConfig network_performance_config = 11; 926*d5c09012SAndroid Build Coastguard Worker 927*d5c09012SAndroid Build Coastguard Worker // [PRIVATE FIELD] 928*d5c09012SAndroid Build Coastguard Worker // Pod CIDR size overprovisioning config for the nodepool. 929*d5c09012SAndroid Build Coastguard Worker // 930*d5c09012SAndroid Build Coastguard Worker // Pod CIDR size per node depends on max_pods_per_node. By default, the value 931*d5c09012SAndroid Build Coastguard Worker // of max_pods_per_node is rounded off to next power of 2 and we then double 932*d5c09012SAndroid Build Coastguard Worker // that to get the size of pod CIDR block per node. 933*d5c09012SAndroid Build Coastguard Worker // Example: max_pods_per_node of 30 would result in 64 IPs (/26). 934*d5c09012SAndroid Build Coastguard Worker // 935*d5c09012SAndroid Build Coastguard Worker // This config can disable the doubling of IPs (we still round off to next 936*d5c09012SAndroid Build Coastguard Worker // power of 2) 937*d5c09012SAndroid Build Coastguard Worker // Example: max_pods_per_node of 30 will result in 32 IPs (/27) when 938*d5c09012SAndroid Build Coastguard Worker // overprovisioning is disabled. 939*d5c09012SAndroid Build Coastguard Worker PodCIDROverprovisionConfig pod_cidr_overprovision_config = 13; 940*d5c09012SAndroid Build Coastguard Worker 941*d5c09012SAndroid Build Coastguard Worker // We specify the additional node networks for this node pool using this list. 942*d5c09012SAndroid Build Coastguard Worker // Each node network corresponds to an additional interface 943*d5c09012SAndroid Build Coastguard Worker repeated AdditionalNodeNetworkConfig additional_node_network_configs = 14; 944*d5c09012SAndroid Build Coastguard Worker 945*d5c09012SAndroid Build Coastguard Worker // We specify the additional pod networks for this node pool using this list. 946*d5c09012SAndroid Build Coastguard Worker // Each pod network corresponds to an additional alias IP range for the node 947*d5c09012SAndroid Build Coastguard Worker repeated AdditionalPodNetworkConfig additional_pod_network_configs = 15; 948*d5c09012SAndroid Build Coastguard Worker 949*d5c09012SAndroid Build Coastguard Worker // Output only. [Output only] The utilization of the IPv4 range for the pod. 950*d5c09012SAndroid Build Coastguard Worker // The ratio is Usage/[Total number of IPs in the secondary range], 951*d5c09012SAndroid Build Coastguard Worker // Usage=numNodes*numZones*podIPsPerNode. 952*d5c09012SAndroid Build Coastguard Worker double pod_ipv4_range_utilization = 16 953*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 954*d5c09012SAndroid Build Coastguard Worker} 955*d5c09012SAndroid Build Coastguard Worker 956*d5c09012SAndroid Build Coastguard Worker// AdditionalNodeNetworkConfig is the configuration for additional node networks 957*d5c09012SAndroid Build Coastguard Worker// within the NodeNetworkConfig message 958*d5c09012SAndroid Build Coastguard Workermessage AdditionalNodeNetworkConfig { 959*d5c09012SAndroid Build Coastguard Worker // Name of the VPC where the additional interface belongs 960*d5c09012SAndroid Build Coastguard Worker string network = 1; 961*d5c09012SAndroid Build Coastguard Worker 962*d5c09012SAndroid Build Coastguard Worker // Name of the subnetwork where the additional interface belongs 963*d5c09012SAndroid Build Coastguard Worker string subnetwork = 2; 964*d5c09012SAndroid Build Coastguard Worker} 965*d5c09012SAndroid Build Coastguard Worker 966*d5c09012SAndroid Build Coastguard Worker// AdditionalPodNetworkConfig is the configuration for additional pod networks 967*d5c09012SAndroid Build Coastguard Worker// within the NodeNetworkConfig message 968*d5c09012SAndroid Build Coastguard Workermessage AdditionalPodNetworkConfig { 969*d5c09012SAndroid Build Coastguard Worker // Name of the subnetwork where the additional pod network belongs 970*d5c09012SAndroid Build Coastguard Worker string subnetwork = 1; 971*d5c09012SAndroid Build Coastguard Worker 972*d5c09012SAndroid Build Coastguard Worker // The name of the secondary range on the subnet which provides IP address for 973*d5c09012SAndroid Build Coastguard Worker // this pod range 974*d5c09012SAndroid Build Coastguard Worker string secondary_pod_range = 2; 975*d5c09012SAndroid Build Coastguard Worker 976*d5c09012SAndroid Build Coastguard Worker // The maximum number of pods per node which use this pod network 977*d5c09012SAndroid Build Coastguard Worker optional MaxPodsConstraint max_pods_per_node = 3; 978*d5c09012SAndroid Build Coastguard Worker} 979*d5c09012SAndroid Build Coastguard Worker 980*d5c09012SAndroid Build Coastguard Worker// A set of Shielded Instance options. 981*d5c09012SAndroid Build Coastguard Workermessage ShieldedInstanceConfig { 982*d5c09012SAndroid Build Coastguard Worker // Defines whether the instance has Secure Boot enabled. 983*d5c09012SAndroid Build Coastguard Worker // 984*d5c09012SAndroid Build Coastguard Worker // Secure Boot helps ensure that the system only runs authentic software by 985*d5c09012SAndroid Build Coastguard Worker // verifying the digital signature of all boot components, and halting the 986*d5c09012SAndroid Build Coastguard Worker // boot process if signature verification fails. 987*d5c09012SAndroid Build Coastguard Worker bool enable_secure_boot = 1; 988*d5c09012SAndroid Build Coastguard Worker 989*d5c09012SAndroid Build Coastguard Worker // Defines whether the instance has integrity monitoring enabled. 990*d5c09012SAndroid Build Coastguard Worker // 991*d5c09012SAndroid Build Coastguard Worker // Enables monitoring and attestation of the boot integrity of the instance. 992*d5c09012SAndroid Build Coastguard Worker // The attestation is performed against the integrity policy baseline. This 993*d5c09012SAndroid Build Coastguard Worker // baseline is initially derived from the implicitly trusted boot image when 994*d5c09012SAndroid Build Coastguard Worker // the instance is created. 995*d5c09012SAndroid Build Coastguard Worker bool enable_integrity_monitoring = 2; 996*d5c09012SAndroid Build Coastguard Worker} 997*d5c09012SAndroid Build Coastguard Worker 998*d5c09012SAndroid Build Coastguard Worker// SandboxConfig contains configurations of the sandbox to use for the node. 999*d5c09012SAndroid Build Coastguard Workermessage SandboxConfig { 1000*d5c09012SAndroid Build Coastguard Worker // Possible types of sandboxes. 1001*d5c09012SAndroid Build Coastguard Worker enum Type { 1002*d5c09012SAndroid Build Coastguard Worker // Default value. This should not be used. 1003*d5c09012SAndroid Build Coastguard Worker UNSPECIFIED = 0; 1004*d5c09012SAndroid Build Coastguard Worker 1005*d5c09012SAndroid Build Coastguard Worker // Run sandbox using gvisor. 1006*d5c09012SAndroid Build Coastguard Worker GVISOR = 1; 1007*d5c09012SAndroid Build Coastguard Worker } 1008*d5c09012SAndroid Build Coastguard Worker 1009*d5c09012SAndroid Build Coastguard Worker // Type of the sandbox to use for the node (e.g. 'gvisor') 1010*d5c09012SAndroid Build Coastguard Worker string sandbox_type = 1 [deprecated = true]; 1011*d5c09012SAndroid Build Coastguard Worker 1012*d5c09012SAndroid Build Coastguard Worker // Type of the sandbox to use for the node. 1013*d5c09012SAndroid Build Coastguard Worker Type type = 2; 1014*d5c09012SAndroid Build Coastguard Worker} 1015*d5c09012SAndroid Build Coastguard Worker 1016*d5c09012SAndroid Build Coastguard Worker// EphemeralStorageConfig contains configuration for the ephemeral storage 1017*d5c09012SAndroid Build Coastguard Worker// filesystem. 1018*d5c09012SAndroid Build Coastguard Workermessage EphemeralStorageConfig { 1019*d5c09012SAndroid Build Coastguard Worker // Number of local SSDs to use to back ephemeral storage. Uses NVMe 1020*d5c09012SAndroid Build Coastguard Worker // interfaces. The limit for this value is dependent upon the maximum number 1021*d5c09012SAndroid Build Coastguard Worker // of disk available on a machine per zone. See: 1022*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/compute/docs/disks/local-ssd 1023*d5c09012SAndroid Build Coastguard Worker // for more information. 1024*d5c09012SAndroid Build Coastguard Worker // 1025*d5c09012SAndroid Build Coastguard Worker // A zero (or unset) value has different meanings depending on machine type 1026*d5c09012SAndroid Build Coastguard Worker // being used: 1027*d5c09012SAndroid Build Coastguard Worker // 1. For pre-Gen3 machines, which support flexible numbers of local ssds, 1028*d5c09012SAndroid Build Coastguard Worker // zero (or unset) means to disable using local SSDs as ephemeral storage. 1029*d5c09012SAndroid Build Coastguard Worker // 2. For Gen3 machines which dictate a specific number of local ssds, zero 1030*d5c09012SAndroid Build Coastguard Worker // (or unset) means to use the default number of local ssds that goes with 1031*d5c09012SAndroid Build Coastguard Worker // that machine type. For example, for a c3-standard-8-lssd machine, 2 local 1032*d5c09012SAndroid Build Coastguard Worker // ssds would be provisioned. For c3-standard-8 (which doesn't support local 1033*d5c09012SAndroid Build Coastguard Worker // ssds), 0 will be provisioned. See 1034*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/compute/docs/disks/local-ssd#choose_number_local_ssds 1035*d5c09012SAndroid Build Coastguard Worker // for more info. 1036*d5c09012SAndroid Build Coastguard Worker int32 local_ssd_count = 1; 1037*d5c09012SAndroid Build Coastguard Worker} 1038*d5c09012SAndroid Build Coastguard Worker 1039*d5c09012SAndroid Build Coastguard Worker// LocalNvmeSsdBlockConfig contains configuration for using raw-block local 1040*d5c09012SAndroid Build Coastguard Worker// NVMe SSDs 1041*d5c09012SAndroid Build Coastguard Workermessage LocalNvmeSsdBlockConfig { 1042*d5c09012SAndroid Build Coastguard Worker // Number of local NVMe SSDs to use. The limit for this value is dependent 1043*d5c09012SAndroid Build Coastguard Worker // upon the maximum number of disk available on a machine per zone. See: 1044*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/compute/docs/disks/local-ssd 1045*d5c09012SAndroid Build Coastguard Worker // for more information. 1046*d5c09012SAndroid Build Coastguard Worker // 1047*d5c09012SAndroid Build Coastguard Worker // A zero (or unset) value has different meanings depending on machine type 1048*d5c09012SAndroid Build Coastguard Worker // being used: 1049*d5c09012SAndroid Build Coastguard Worker // 1. For pre-Gen3 machines, which support flexible numbers of local ssds, 1050*d5c09012SAndroid Build Coastguard Worker // zero (or unset) means to disable using local SSDs as ephemeral storage. 1051*d5c09012SAndroid Build Coastguard Worker // 2. For Gen3 machines which dictate a specific number of local ssds, zero 1052*d5c09012SAndroid Build Coastguard Worker // (or unset) means to use the default number of local ssds that goes with 1053*d5c09012SAndroid Build Coastguard Worker // that machine type. For example, for a c3-standard-8-lssd machine, 2 local 1054*d5c09012SAndroid Build Coastguard Worker // ssds would be provisioned. For c3-standard-8 (which doesn't support local 1055*d5c09012SAndroid Build Coastguard Worker // ssds), 0 will be provisioned. See 1056*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/compute/docs/disks/local-ssd#choose_number_local_ssds 1057*d5c09012SAndroid Build Coastguard Worker // for more info. 1058*d5c09012SAndroid Build Coastguard Worker int32 local_ssd_count = 1; 1059*d5c09012SAndroid Build Coastguard Worker} 1060*d5c09012SAndroid Build Coastguard Worker 1061*d5c09012SAndroid Build Coastguard Worker// EphemeralStorageLocalSsdConfig contains configuration for the node ephemeral 1062*d5c09012SAndroid Build Coastguard Worker// storage using Local SSDs. 1063*d5c09012SAndroid Build Coastguard Workermessage EphemeralStorageLocalSsdConfig { 1064*d5c09012SAndroid Build Coastguard Worker // Number of local SSDs to use to back ephemeral storage. Uses NVMe 1065*d5c09012SAndroid Build Coastguard Worker // interfaces. 1066*d5c09012SAndroid Build Coastguard Worker // 1067*d5c09012SAndroid Build Coastguard Worker // A zero (or unset) value has different meanings depending on machine type 1068*d5c09012SAndroid Build Coastguard Worker // being used: 1069*d5c09012SAndroid Build Coastguard Worker // 1. For pre-Gen3 machines, which support flexible numbers of local ssds, 1070*d5c09012SAndroid Build Coastguard Worker // zero (or unset) means to disable using local SSDs as ephemeral storage. The 1071*d5c09012SAndroid Build Coastguard Worker // limit for this value is dependent upon the maximum number of disk 1072*d5c09012SAndroid Build Coastguard Worker // available on a machine per zone. See: 1073*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/compute/docs/disks/local-ssd 1074*d5c09012SAndroid Build Coastguard Worker // for more information. 1075*d5c09012SAndroid Build Coastguard Worker // 2. For Gen3 machines which dictate a specific number of local ssds, zero 1076*d5c09012SAndroid Build Coastguard Worker // (or unset) means to use the default number of local ssds that goes with 1077*d5c09012SAndroid Build Coastguard Worker // that machine type. For example, for a c3-standard-8-lssd machine, 2 local 1078*d5c09012SAndroid Build Coastguard Worker // ssds would be provisioned. For c3-standard-8 (which doesn't support local 1079*d5c09012SAndroid Build Coastguard Worker // ssds), 0 will be provisioned. See 1080*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/compute/docs/disks/local-ssd#choose_number_local_ssds 1081*d5c09012SAndroid Build Coastguard Worker // for more info. 1082*d5c09012SAndroid Build Coastguard Worker int32 local_ssd_count = 1; 1083*d5c09012SAndroid Build Coastguard Worker} 1084*d5c09012SAndroid Build Coastguard Worker 1085*d5c09012SAndroid Build Coastguard Worker// GcfsConfig contains configurations of Google Container File System. 1086*d5c09012SAndroid Build Coastguard Workermessage GcfsConfig { 1087*d5c09012SAndroid Build Coastguard Worker // Whether to use GCFS. 1088*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 1089*d5c09012SAndroid Build Coastguard Worker} 1090*d5c09012SAndroid Build Coastguard Worker 1091*d5c09012SAndroid Build Coastguard Worker// [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) 1092*d5c09012SAndroid Build Coastguard Worker// is the configuration of desired reservation which instances could take 1093*d5c09012SAndroid Build Coastguard Worker// capacity from. 1094*d5c09012SAndroid Build Coastguard Workermessage ReservationAffinity { 1095*d5c09012SAndroid Build Coastguard Worker // Indicates whether to consume capacity from a reservation or not. 1096*d5c09012SAndroid Build Coastguard Worker enum Type { 1097*d5c09012SAndroid Build Coastguard Worker // Default value. This should not be used. 1098*d5c09012SAndroid Build Coastguard Worker UNSPECIFIED = 0; 1099*d5c09012SAndroid Build Coastguard Worker 1100*d5c09012SAndroid Build Coastguard Worker // Do not consume from any reserved capacity. 1101*d5c09012SAndroid Build Coastguard Worker NO_RESERVATION = 1; 1102*d5c09012SAndroid Build Coastguard Worker 1103*d5c09012SAndroid Build Coastguard Worker // Consume any reservation available. 1104*d5c09012SAndroid Build Coastguard Worker ANY_RESERVATION = 2; 1105*d5c09012SAndroid Build Coastguard Worker 1106*d5c09012SAndroid Build Coastguard Worker // Must consume from a specific reservation. Must specify key value fields 1107*d5c09012SAndroid Build Coastguard Worker // for specifying the reservations. 1108*d5c09012SAndroid Build Coastguard Worker SPECIFIC_RESERVATION = 3; 1109*d5c09012SAndroid Build Coastguard Worker } 1110*d5c09012SAndroid Build Coastguard Worker 1111*d5c09012SAndroid Build Coastguard Worker // Corresponds to the type of reservation consumption. 1112*d5c09012SAndroid Build Coastguard Worker Type consume_reservation_type = 1; 1113*d5c09012SAndroid Build Coastguard Worker 1114*d5c09012SAndroid Build Coastguard Worker // Corresponds to the label key of a reservation resource. To target a 1115*d5c09012SAndroid Build Coastguard Worker // SPECIFIC_RESERVATION by name, specify 1116*d5c09012SAndroid Build Coastguard Worker // "compute.googleapis.com/reservation-name" as the key and specify the name 1117*d5c09012SAndroid Build Coastguard Worker // of your reservation as its value. 1118*d5c09012SAndroid Build Coastguard Worker string key = 2; 1119*d5c09012SAndroid Build Coastguard Worker 1120*d5c09012SAndroid Build Coastguard Worker // Corresponds to the label value(s) of reservation resource(s). 1121*d5c09012SAndroid Build Coastguard Worker repeated string values = 3; 1122*d5c09012SAndroid Build Coastguard Worker} 1123*d5c09012SAndroid Build Coastguard Worker 1124*d5c09012SAndroid Build Coastguard Worker// SoleTenantConfig contains the NodeAffinities to specify what shared sole 1125*d5c09012SAndroid Build Coastguard Worker// tenant node groups should back the node pool. 1126*d5c09012SAndroid Build Coastguard Workermessage SoleTenantConfig { 1127*d5c09012SAndroid Build Coastguard Worker // Specifies the NodeAffinity key, values, and affinity operator according to 1128*d5c09012SAndroid Build Coastguard Worker // [shared sole tenant node group 1129*d5c09012SAndroid Build Coastguard Worker // affinities](https://cloud.google.com/compute/docs/nodes/sole-tenant-nodes#node_affinity_and_anti-affinity). 1130*d5c09012SAndroid Build Coastguard Worker message NodeAffinity { 1131*d5c09012SAndroid Build Coastguard Worker // Operator allows user to specify affinity or anti-affinity for the 1132*d5c09012SAndroid Build Coastguard Worker // given key values. 1133*d5c09012SAndroid Build Coastguard Worker enum Operator { 1134*d5c09012SAndroid Build Coastguard Worker // Invalid or unspecified affinity operator. 1135*d5c09012SAndroid Build Coastguard Worker OPERATOR_UNSPECIFIED = 0; 1136*d5c09012SAndroid Build Coastguard Worker 1137*d5c09012SAndroid Build Coastguard Worker // Affinity operator. 1138*d5c09012SAndroid Build Coastguard Worker IN = 1; 1139*d5c09012SAndroid Build Coastguard Worker 1140*d5c09012SAndroid Build Coastguard Worker // Anti-affinity operator. 1141*d5c09012SAndroid Build Coastguard Worker NOT_IN = 2; 1142*d5c09012SAndroid Build Coastguard Worker } 1143*d5c09012SAndroid Build Coastguard Worker 1144*d5c09012SAndroid Build Coastguard Worker // Key for NodeAffinity. 1145*d5c09012SAndroid Build Coastguard Worker string key = 1; 1146*d5c09012SAndroid Build Coastguard Worker 1147*d5c09012SAndroid Build Coastguard Worker // Operator for NodeAffinity. 1148*d5c09012SAndroid Build Coastguard Worker Operator operator = 2; 1149*d5c09012SAndroid Build Coastguard Worker 1150*d5c09012SAndroid Build Coastguard Worker // Values for NodeAffinity. 1151*d5c09012SAndroid Build Coastguard Worker repeated string values = 3; 1152*d5c09012SAndroid Build Coastguard Worker } 1153*d5c09012SAndroid Build Coastguard Worker 1154*d5c09012SAndroid Build Coastguard Worker // NodeAffinities used to match to a shared sole tenant node group. 1155*d5c09012SAndroid Build Coastguard Worker repeated NodeAffinity node_affinities = 1; 1156*d5c09012SAndroid Build Coastguard Worker} 1157*d5c09012SAndroid Build Coastguard Worker 1158*d5c09012SAndroid Build Coastguard Worker// HostMaintenancePolicy contains the maintenance policy for the hosts on which 1159*d5c09012SAndroid Build Coastguard Worker// the GKE VMs run on. 1160*d5c09012SAndroid Build Coastguard Workermessage HostMaintenancePolicy { 1161*d5c09012SAndroid Build Coastguard Worker // Allows selecting how infrastructure upgrades should be applied to the 1162*d5c09012SAndroid Build Coastguard Worker // cluster or node pool. 1163*d5c09012SAndroid Build Coastguard Worker enum MaintenanceInterval { 1164*d5c09012SAndroid Build Coastguard Worker // The maintenance interval is not explicitly specified. 1165*d5c09012SAndroid Build Coastguard Worker MAINTENANCE_INTERVAL_UNSPECIFIED = 0; 1166*d5c09012SAndroid Build Coastguard Worker 1167*d5c09012SAndroid Build Coastguard Worker // Nodes are eligible to receive infrastructure and hypervisor updates as 1168*d5c09012SAndroid Build Coastguard Worker // they become available. This may result in more maintenance operations 1169*d5c09012SAndroid Build Coastguard Worker // (live migrations or terminations) for the node than the PERIODIC option. 1170*d5c09012SAndroid Build Coastguard Worker AS_NEEDED = 1; 1171*d5c09012SAndroid Build Coastguard Worker 1172*d5c09012SAndroid Build Coastguard Worker // Nodes receive infrastructure and hypervisor updates on a periodic basis, 1173*d5c09012SAndroid Build Coastguard Worker // minimizing the number of maintenance operations (live migrations or 1174*d5c09012SAndroid Build Coastguard Worker // terminations) on an individual VM. This may mean underlying VMs will 1175*d5c09012SAndroid Build Coastguard Worker // take longer to receive an update than if it was configured for 1176*d5c09012SAndroid Build Coastguard Worker // AS_NEEDED. Security updates will still be applied as soon 1177*d5c09012SAndroid Build Coastguard Worker // as they are available. 1178*d5c09012SAndroid Build Coastguard Worker PERIODIC = 2; 1179*d5c09012SAndroid Build Coastguard Worker } 1180*d5c09012SAndroid Build Coastguard Worker 1181*d5c09012SAndroid Build Coastguard Worker // Strategy that will trigger maintenance on behalf of the customer. 1182*d5c09012SAndroid Build Coastguard Worker message OpportunisticMaintenanceStrategy { 1183*d5c09012SAndroid Build Coastguard Worker // The amount of time that a node can remain idle (no customer owned 1184*d5c09012SAndroid Build Coastguard Worker // workloads running), before triggering maintenance. 1185*d5c09012SAndroid Build Coastguard Worker optional google.protobuf.Duration node_idle_time_window = 1; 1186*d5c09012SAndroid Build Coastguard Worker 1187*d5c09012SAndroid Build Coastguard Worker // The window of time that opportunistic maintenance can run. Example: A 1188*d5c09012SAndroid Build Coastguard Worker // setting of 14 days implies that opportunistic maintenance can only be ran 1189*d5c09012SAndroid Build Coastguard Worker // in the 2 weeks leading up to the scheduled maintenance date. Setting 28 1190*d5c09012SAndroid Build Coastguard Worker // days allows opportunistic maintenance to run at any time in the scheduled 1191*d5c09012SAndroid Build Coastguard Worker // maintenance window (all `PERIODIC` maintenance is set 28 days in 1192*d5c09012SAndroid Build Coastguard Worker // advance). 1193*d5c09012SAndroid Build Coastguard Worker optional google.protobuf.Duration maintenance_availability_window = 2; 1194*d5c09012SAndroid Build Coastguard Worker 1195*d5c09012SAndroid Build Coastguard Worker // The minimum nodes required to be available in a pool. Blocks maintenance 1196*d5c09012SAndroid Build Coastguard Worker // if it would cause the number of running nodes to dip below this value. 1197*d5c09012SAndroid Build Coastguard Worker optional int64 min_nodes_per_pool = 3; 1198*d5c09012SAndroid Build Coastguard Worker } 1199*d5c09012SAndroid Build Coastguard Worker 1200*d5c09012SAndroid Build Coastguard Worker // Specifies the frequency of planned maintenance events. 1201*d5c09012SAndroid Build Coastguard Worker optional MaintenanceInterval maintenance_interval = 1; 1202*d5c09012SAndroid Build Coastguard Worker 1203*d5c09012SAndroid Build Coastguard Worker // Set of host maintenance strategies available to the customer, all require 1204*d5c09012SAndroid Build Coastguard Worker // the maintenance_interval to be PERIODIC. If no strategy is set, and the 1205*d5c09012SAndroid Build Coastguard Worker // interval is periodic, customer will be expected to trigger maintenance 1206*d5c09012SAndroid Build Coastguard Worker // manually or let maintenance trigger at its initial scheduled time. 1207*d5c09012SAndroid Build Coastguard Worker oneof maintenance_strategy { 1208*d5c09012SAndroid Build Coastguard Worker // Strategy that will trigger maintenance on behalf of the customer. 1209*d5c09012SAndroid Build Coastguard Worker OpportunisticMaintenanceStrategy opportunistic_maintenance_strategy = 2; 1210*d5c09012SAndroid Build Coastguard Worker } 1211*d5c09012SAndroid Build Coastguard Worker} 1212*d5c09012SAndroid Build Coastguard Worker 1213*d5c09012SAndroid Build Coastguard Worker// Kubernetes taint is composed of three fields: key, value, and effect. Effect 1214*d5c09012SAndroid Build Coastguard Worker// can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute. 1215*d5c09012SAndroid Build Coastguard Worker// 1216*d5c09012SAndroid Build Coastguard Worker// See 1217*d5c09012SAndroid Build Coastguard Worker// [here](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration) 1218*d5c09012SAndroid Build Coastguard Worker// for more information, including usage and the valid values. 1219*d5c09012SAndroid Build Coastguard Workermessage NodeTaint { 1220*d5c09012SAndroid Build Coastguard Worker // Possible values for Effect in taint. 1221*d5c09012SAndroid Build Coastguard Worker enum Effect { 1222*d5c09012SAndroid Build Coastguard Worker // Not set 1223*d5c09012SAndroid Build Coastguard Worker EFFECT_UNSPECIFIED = 0; 1224*d5c09012SAndroid Build Coastguard Worker 1225*d5c09012SAndroid Build Coastguard Worker // NoSchedule 1226*d5c09012SAndroid Build Coastguard Worker NO_SCHEDULE = 1; 1227*d5c09012SAndroid Build Coastguard Worker 1228*d5c09012SAndroid Build Coastguard Worker // PreferNoSchedule 1229*d5c09012SAndroid Build Coastguard Worker PREFER_NO_SCHEDULE = 2; 1230*d5c09012SAndroid Build Coastguard Worker 1231*d5c09012SAndroid Build Coastguard Worker // NoExecute 1232*d5c09012SAndroid Build Coastguard Worker NO_EXECUTE = 3; 1233*d5c09012SAndroid Build Coastguard Worker } 1234*d5c09012SAndroid Build Coastguard Worker 1235*d5c09012SAndroid Build Coastguard Worker // Key for taint. 1236*d5c09012SAndroid Build Coastguard Worker string key = 1; 1237*d5c09012SAndroid Build Coastguard Worker 1238*d5c09012SAndroid Build Coastguard Worker // Value for taint. 1239*d5c09012SAndroid Build Coastguard Worker string value = 2; 1240*d5c09012SAndroid Build Coastguard Worker 1241*d5c09012SAndroid Build Coastguard Worker // Effect for taint. 1242*d5c09012SAndroid Build Coastguard Worker Effect effect = 3; 1243*d5c09012SAndroid Build Coastguard Worker} 1244*d5c09012SAndroid Build Coastguard Worker 1245*d5c09012SAndroid Build Coastguard Worker// Collection of Kubernetes [node 1246*d5c09012SAndroid Build Coastguard Worker// taints](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration). 1247*d5c09012SAndroid Build Coastguard Workermessage NodeTaints { 1248*d5c09012SAndroid Build Coastguard Worker // List of node taints. 1249*d5c09012SAndroid Build Coastguard Worker repeated NodeTaint taints = 1; 1250*d5c09012SAndroid Build Coastguard Worker} 1251*d5c09012SAndroid Build Coastguard Worker 1252*d5c09012SAndroid Build Coastguard Worker// Collection of node-level [Kubernetes 1253*d5c09012SAndroid Build Coastguard Worker// labels](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels). 1254*d5c09012SAndroid Build Coastguard Workermessage NodeLabels { 1255*d5c09012SAndroid Build Coastguard Worker // Map of node label keys and node label values. 1256*d5c09012SAndroid Build Coastguard Worker map<string, string> labels = 1; 1257*d5c09012SAndroid Build Coastguard Worker} 1258*d5c09012SAndroid Build Coastguard Worker 1259*d5c09012SAndroid Build Coastguard Worker// Collection of [GCP 1260*d5c09012SAndroid Build Coastguard Worker// labels](https://cloud.google.com/resource-manager/docs/creating-managing-labels). 1261*d5c09012SAndroid Build Coastguard Workermessage ResourceLabels { 1262*d5c09012SAndroid Build Coastguard Worker // Map of node label keys and node label values. 1263*d5c09012SAndroid Build Coastguard Worker map<string, string> labels = 1; 1264*d5c09012SAndroid Build Coastguard Worker} 1265*d5c09012SAndroid Build Coastguard Worker 1266*d5c09012SAndroid Build Coastguard Worker// Collection of Compute Engine network tags that can be applied to a node's 1267*d5c09012SAndroid Build Coastguard Worker// underlying VM instance. (See `tags` field in 1268*d5c09012SAndroid Build Coastguard Worker// [`NodeConfig`](/kubernetes-engine/docs/reference/rest/v1/NodeConfig)). 1269*d5c09012SAndroid Build Coastguard Workermessage NetworkTags { 1270*d5c09012SAndroid Build Coastguard Worker // List of network tags. 1271*d5c09012SAndroid Build Coastguard Worker repeated string tags = 1; 1272*d5c09012SAndroid Build Coastguard Worker} 1273*d5c09012SAndroid Build Coastguard Worker 1274*d5c09012SAndroid Build Coastguard Worker// The authentication information for accessing the master endpoint. 1275*d5c09012SAndroid Build Coastguard Worker// Authentication can be done using HTTP basic auth or using client 1276*d5c09012SAndroid Build Coastguard Worker// certificates. 1277*d5c09012SAndroid Build Coastguard Workermessage MasterAuth { 1278*d5c09012SAndroid Build Coastguard Worker // The username to use for HTTP basic authentication to the master endpoint. 1279*d5c09012SAndroid Build Coastguard Worker // For clusters v1.6.0 and later, basic authentication can be disabled by 1280*d5c09012SAndroid Build Coastguard Worker // leaving username unspecified (or setting it to the empty string). 1281*d5c09012SAndroid Build Coastguard Worker // 1282*d5c09012SAndroid Build Coastguard Worker // Warning: basic authentication is deprecated, and will be removed in GKE 1283*d5c09012SAndroid Build Coastguard Worker // control plane versions 1.19 and newer. For a list of recommended 1284*d5c09012SAndroid Build Coastguard Worker // authentication methods, see: 1285*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/kubernetes-engine/docs/how-to/api-server-authentication 1286*d5c09012SAndroid Build Coastguard Worker string username = 1 [deprecated = true]; 1287*d5c09012SAndroid Build Coastguard Worker 1288*d5c09012SAndroid Build Coastguard Worker // The password to use for HTTP basic authentication to the master endpoint. 1289*d5c09012SAndroid Build Coastguard Worker // Because the master endpoint is open to the Internet, you should create a 1290*d5c09012SAndroid Build Coastguard Worker // strong password. If a password is provided for cluster creation, username 1291*d5c09012SAndroid Build Coastguard Worker // must be non-empty. 1292*d5c09012SAndroid Build Coastguard Worker // 1293*d5c09012SAndroid Build Coastguard Worker // Warning: basic authentication is deprecated, and will be removed in GKE 1294*d5c09012SAndroid Build Coastguard Worker // control plane versions 1.19 and newer. For a list of recommended 1295*d5c09012SAndroid Build Coastguard Worker // authentication methods, see: 1296*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/kubernetes-engine/docs/how-to/api-server-authentication 1297*d5c09012SAndroid Build Coastguard Worker string password = 2 [deprecated = true]; 1298*d5c09012SAndroid Build Coastguard Worker 1299*d5c09012SAndroid Build Coastguard Worker // Configuration for client certificate authentication on the cluster. For 1300*d5c09012SAndroid Build Coastguard Worker // clusters before v1.12, if no configuration is specified, a client 1301*d5c09012SAndroid Build Coastguard Worker // certificate is issued. 1302*d5c09012SAndroid Build Coastguard Worker ClientCertificateConfig client_certificate_config = 3; 1303*d5c09012SAndroid Build Coastguard Worker 1304*d5c09012SAndroid Build Coastguard Worker string cluster_ca_certificate = 100; 1305*d5c09012SAndroid Build Coastguard Worker 1306*d5c09012SAndroid Build Coastguard Worker // [Output only] Base64-encoded public certificate used by clients to 1307*d5c09012SAndroid Build Coastguard Worker // authenticate to the cluster endpoint. 1308*d5c09012SAndroid Build Coastguard Worker string client_certificate = 101; 1309*d5c09012SAndroid Build Coastguard Worker 1310*d5c09012SAndroid Build Coastguard Worker // [Output only] Base64-encoded private key used by clients to authenticate 1311*d5c09012SAndroid Build Coastguard Worker // to the cluster endpoint. 1312*d5c09012SAndroid Build Coastguard Worker string client_key = 102; 1313*d5c09012SAndroid Build Coastguard Worker} 1314*d5c09012SAndroid Build Coastguard Worker 1315*d5c09012SAndroid Build Coastguard Worker// Configuration for client certificates on the cluster. 1316*d5c09012SAndroid Build Coastguard Workermessage ClientCertificateConfig { 1317*d5c09012SAndroid Build Coastguard Worker // Issue a client certificate. 1318*d5c09012SAndroid Build Coastguard Worker bool issue_client_certificate = 1; 1319*d5c09012SAndroid Build Coastguard Worker} 1320*d5c09012SAndroid Build Coastguard Worker 1321*d5c09012SAndroid Build Coastguard Worker// Configuration for the addons that can be automatically spun up in the 1322*d5c09012SAndroid Build Coastguard Worker// cluster, enabling additional functionality. 1323*d5c09012SAndroid Build Coastguard Workermessage AddonsConfig { 1324*d5c09012SAndroid Build Coastguard Worker // Configuration for the HTTP (L7) load balancing controller addon, which 1325*d5c09012SAndroid Build Coastguard Worker // makes it easy to set up HTTP load balancers for services in a cluster. 1326*d5c09012SAndroid Build Coastguard Worker HttpLoadBalancing http_load_balancing = 1; 1327*d5c09012SAndroid Build Coastguard Worker 1328*d5c09012SAndroid Build Coastguard Worker // Configuration for the horizontal pod autoscaling feature, which 1329*d5c09012SAndroid Build Coastguard Worker // increases or decreases the number of replica pods a replication controller 1330*d5c09012SAndroid Build Coastguard Worker // has based on the resource usage of the existing pods. 1331*d5c09012SAndroid Build Coastguard Worker HorizontalPodAutoscaling horizontal_pod_autoscaling = 2; 1332*d5c09012SAndroid Build Coastguard Worker 1333*d5c09012SAndroid Build Coastguard Worker // Configuration for the Kubernetes Dashboard. 1334*d5c09012SAndroid Build Coastguard Worker // This addon is deprecated, and will be disabled in 1.15. It is recommended 1335*d5c09012SAndroid Build Coastguard Worker // to use the Cloud Console to manage and monitor your Kubernetes clusters, 1336*d5c09012SAndroid Build Coastguard Worker // workloads and applications. For more information, see: 1337*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards 1338*d5c09012SAndroid Build Coastguard Worker KubernetesDashboard kubernetes_dashboard = 3 [deprecated = true]; 1339*d5c09012SAndroid Build Coastguard Worker 1340*d5c09012SAndroid Build Coastguard Worker // Configuration for NetworkPolicy. This only tracks whether the addon 1341*d5c09012SAndroid Build Coastguard Worker // is enabled or not on the Master, it does not track whether network policy 1342*d5c09012SAndroid Build Coastguard Worker // is enabled for the nodes. 1343*d5c09012SAndroid Build Coastguard Worker NetworkPolicyConfig network_policy_config = 4; 1344*d5c09012SAndroid Build Coastguard Worker 1345*d5c09012SAndroid Build Coastguard Worker // Configuration for Istio, an open platform to connect, manage, and secure 1346*d5c09012SAndroid Build Coastguard Worker // microservices. 1347*d5c09012SAndroid Build Coastguard Worker IstioConfig istio_config = 5 [deprecated = true]; 1348*d5c09012SAndroid Build Coastguard Worker 1349*d5c09012SAndroid Build Coastguard Worker // Configuration for the Cloud Run addon. The `IstioConfig` addon must be 1350*d5c09012SAndroid Build Coastguard Worker // enabled in order to enable Cloud Run addon. This option can only be enabled 1351*d5c09012SAndroid Build Coastguard Worker // at cluster creation time. 1352*d5c09012SAndroid Build Coastguard Worker CloudRunConfig cloud_run_config = 7; 1353*d5c09012SAndroid Build Coastguard Worker 1354*d5c09012SAndroid Build Coastguard Worker // Configuration for NodeLocalDNS, a dns cache running on cluster nodes 1355*d5c09012SAndroid Build Coastguard Worker DnsCacheConfig dns_cache_config = 8; 1356*d5c09012SAndroid Build Coastguard Worker 1357*d5c09012SAndroid Build Coastguard Worker // Configuration for the ConfigConnector add-on, a Kubernetes 1358*d5c09012SAndroid Build Coastguard Worker // extension to manage hosted GCP services through the Kubernetes API 1359*d5c09012SAndroid Build Coastguard Worker ConfigConnectorConfig config_connector_config = 10; 1360*d5c09012SAndroid Build Coastguard Worker 1361*d5c09012SAndroid Build Coastguard Worker // Configuration for the Compute Engine Persistent Disk CSI driver. 1362*d5c09012SAndroid Build Coastguard Worker GcePersistentDiskCsiDriverConfig gce_persistent_disk_csi_driver_config = 11; 1363*d5c09012SAndroid Build Coastguard Worker 1364*d5c09012SAndroid Build Coastguard Worker // Configuration for the KALM addon, which manages the lifecycle of k8s 1365*d5c09012SAndroid Build Coastguard Worker // applications. 1366*d5c09012SAndroid Build Coastguard Worker KalmConfig kalm_config = 12 [deprecated = true]; 1367*d5c09012SAndroid Build Coastguard Worker 1368*d5c09012SAndroid Build Coastguard Worker // Configuration for the GCP Filestore CSI driver. 1369*d5c09012SAndroid Build Coastguard Worker GcpFilestoreCsiDriverConfig gcp_filestore_csi_driver_config = 14; 1370*d5c09012SAndroid Build Coastguard Worker 1371*d5c09012SAndroid Build Coastguard Worker // Configuration for the Backup for GKE agent addon. 1372*d5c09012SAndroid Build Coastguard Worker GkeBackupAgentConfig gke_backup_agent_config = 16; 1373*d5c09012SAndroid Build Coastguard Worker 1374*d5c09012SAndroid Build Coastguard Worker // Configuration for the Cloud Storage Fuse CSI driver. 1375*d5c09012SAndroid Build Coastguard Worker GcsFuseCsiDriverConfig gcs_fuse_csi_driver_config = 17; 1376*d5c09012SAndroid Build Coastguard Worker 1377*d5c09012SAndroid Build Coastguard Worker // Optional. Configuration for the StatefulHA add-on. 1378*d5c09012SAndroid Build Coastguard Worker StatefulHAConfig stateful_ha_config = 18 1379*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1380*d5c09012SAndroid Build Coastguard Worker} 1381*d5c09012SAndroid Build Coastguard Worker 1382*d5c09012SAndroid Build Coastguard Worker// Configuration options for the HTTP (L7) load balancing controller addon, 1383*d5c09012SAndroid Build Coastguard Worker// which makes it easy to set up HTTP load balancers for services in a cluster. 1384*d5c09012SAndroid Build Coastguard Workermessage HttpLoadBalancing { 1385*d5c09012SAndroid Build Coastguard Worker // Whether the HTTP Load Balancing controller is enabled in the cluster. 1386*d5c09012SAndroid Build Coastguard Worker // When enabled, it runs a small pod in the cluster that manages the load 1387*d5c09012SAndroid Build Coastguard Worker // balancers. 1388*d5c09012SAndroid Build Coastguard Worker bool disabled = 1; 1389*d5c09012SAndroid Build Coastguard Worker} 1390*d5c09012SAndroid Build Coastguard Worker 1391*d5c09012SAndroid Build Coastguard Worker// Configuration options for the horizontal pod autoscaling feature, which 1392*d5c09012SAndroid Build Coastguard Worker// increases or decreases the number of replica pods a replication controller 1393*d5c09012SAndroid Build Coastguard Worker// has based on the resource usage of the existing pods. 1394*d5c09012SAndroid Build Coastguard Workermessage HorizontalPodAutoscaling { 1395*d5c09012SAndroid Build Coastguard Worker // Whether the Horizontal Pod Autoscaling feature is enabled in the cluster. 1396*d5c09012SAndroid Build Coastguard Worker // When enabled, it ensures that metrics are collected into Stackdriver 1397*d5c09012SAndroid Build Coastguard Worker // Monitoring. 1398*d5c09012SAndroid Build Coastguard Worker bool disabled = 1; 1399*d5c09012SAndroid Build Coastguard Worker} 1400*d5c09012SAndroid Build Coastguard Worker 1401*d5c09012SAndroid Build Coastguard Worker// Configuration for the Kubernetes Dashboard. 1402*d5c09012SAndroid Build Coastguard Workermessage KubernetesDashboard { 1403*d5c09012SAndroid Build Coastguard Worker // Whether the Kubernetes Dashboard is enabled for this cluster. 1404*d5c09012SAndroid Build Coastguard Worker bool disabled = 1; 1405*d5c09012SAndroid Build Coastguard Worker} 1406*d5c09012SAndroid Build Coastguard Worker 1407*d5c09012SAndroid Build Coastguard Worker// Configuration for NetworkPolicy. This only tracks whether the addon 1408*d5c09012SAndroid Build Coastguard Worker// is enabled or not on the Master, it does not track whether network policy 1409*d5c09012SAndroid Build Coastguard Worker// is enabled for the nodes. 1410*d5c09012SAndroid Build Coastguard Workermessage NetworkPolicyConfig { 1411*d5c09012SAndroid Build Coastguard Worker // Whether NetworkPolicy is enabled for this cluster. 1412*d5c09012SAndroid Build Coastguard Worker bool disabled = 1; 1413*d5c09012SAndroid Build Coastguard Worker} 1414*d5c09012SAndroid Build Coastguard Worker 1415*d5c09012SAndroid Build Coastguard Worker// Configuration for NodeLocal DNSCache 1416*d5c09012SAndroid Build Coastguard Workermessage DnsCacheConfig { 1417*d5c09012SAndroid Build Coastguard Worker // Whether NodeLocal DNSCache is enabled for this cluster. 1418*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 1419*d5c09012SAndroid Build Coastguard Worker} 1420*d5c09012SAndroid Build Coastguard Worker 1421*d5c09012SAndroid Build Coastguard Worker// Configuration options for the KALM addon. 1422*d5c09012SAndroid Build Coastguard Workermessage KalmConfig { 1423*d5c09012SAndroid Build Coastguard Worker // Whether KALM is enabled for this cluster. 1424*d5c09012SAndroid Build Coastguard Worker bool enabled = 1 [deprecated = true]; 1425*d5c09012SAndroid Build Coastguard Worker} 1426*d5c09012SAndroid Build Coastguard Worker 1427*d5c09012SAndroid Build Coastguard Worker// Configuration for the Backup for GKE Agent. 1428*d5c09012SAndroid Build Coastguard Workermessage GkeBackupAgentConfig { 1429*d5c09012SAndroid Build Coastguard Worker // Whether the Backup for GKE agent is enabled for this cluster. 1430*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 1431*d5c09012SAndroid Build Coastguard Worker} 1432*d5c09012SAndroid Build Coastguard Worker 1433*d5c09012SAndroid Build Coastguard Worker// Configuration for the Stateful HA add-on. 1434*d5c09012SAndroid Build Coastguard Workermessage StatefulHAConfig { 1435*d5c09012SAndroid Build Coastguard Worker // Whether the Stateful HA add-on is enabled for this cluster. 1436*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 1437*d5c09012SAndroid Build Coastguard Worker} 1438*d5c09012SAndroid Build Coastguard Worker 1439*d5c09012SAndroid Build Coastguard Worker// Configuration options for the Config Connector add-on. 1440*d5c09012SAndroid Build Coastguard Workermessage ConfigConnectorConfig { 1441*d5c09012SAndroid Build Coastguard Worker // Whether Cloud Connector is enabled for this cluster. 1442*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 1443*d5c09012SAndroid Build Coastguard Worker} 1444*d5c09012SAndroid Build Coastguard Worker 1445*d5c09012SAndroid Build Coastguard Worker// Configuration for the Compute Engine PD CSI driver. 1446*d5c09012SAndroid Build Coastguard Workermessage GcePersistentDiskCsiDriverConfig { 1447*d5c09012SAndroid Build Coastguard Worker // Whether the Compute Engine PD CSI driver is enabled for this cluster. 1448*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 1449*d5c09012SAndroid Build Coastguard Worker} 1450*d5c09012SAndroid Build Coastguard Worker 1451*d5c09012SAndroid Build Coastguard Worker// Configuration for the GCP Filestore CSI driver. 1452*d5c09012SAndroid Build Coastguard Workermessage GcpFilestoreCsiDriverConfig { 1453*d5c09012SAndroid Build Coastguard Worker // Whether the GCP Filestore CSI driver is enabled for this cluster. 1454*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 1455*d5c09012SAndroid Build Coastguard Worker} 1456*d5c09012SAndroid Build Coastguard Worker 1457*d5c09012SAndroid Build Coastguard Worker// Configuration for the Cloud Storage Fuse CSI driver. 1458*d5c09012SAndroid Build Coastguard Workermessage GcsFuseCsiDriverConfig { 1459*d5c09012SAndroid Build Coastguard Worker // Whether the Cloud Storage Fuse CSI driver is enabled for this cluster. 1460*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 1461*d5c09012SAndroid Build Coastguard Worker} 1462*d5c09012SAndroid Build Coastguard Worker 1463*d5c09012SAndroid Build Coastguard Worker// Configuration for controlling master global access settings. 1464*d5c09012SAndroid Build Coastguard Workermessage PrivateClusterMasterGlobalAccessConfig { 1465*d5c09012SAndroid Build Coastguard Worker // Whenever master is accessible globally or not. 1466*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 1467*d5c09012SAndroid Build Coastguard Worker} 1468*d5c09012SAndroid Build Coastguard Worker 1469*d5c09012SAndroid Build Coastguard Worker// Configuration options for private clusters. 1470*d5c09012SAndroid Build Coastguard Workermessage PrivateClusterConfig { 1471*d5c09012SAndroid Build Coastguard Worker // Whether nodes have internal IP addresses only. If enabled, all nodes are 1472*d5c09012SAndroid Build Coastguard Worker // given only RFC 1918 private addresses and communicate with the master via 1473*d5c09012SAndroid Build Coastguard Worker // private networking. 1474*d5c09012SAndroid Build Coastguard Worker bool enable_private_nodes = 1; 1475*d5c09012SAndroid Build Coastguard Worker 1476*d5c09012SAndroid Build Coastguard Worker // Whether the master's internal IP address is used as the cluster endpoint. 1477*d5c09012SAndroid Build Coastguard Worker bool enable_private_endpoint = 2; 1478*d5c09012SAndroid Build Coastguard Worker 1479*d5c09012SAndroid Build Coastguard Worker // The IP range in CIDR notation to use for the hosted master network. This 1480*d5c09012SAndroid Build Coastguard Worker // range will be used for assigning internal IP addresses to the master or 1481*d5c09012SAndroid Build Coastguard Worker // set of masters, as well as the ILB VIP. This range must not overlap with 1482*d5c09012SAndroid Build Coastguard Worker // any other ranges in use within the cluster's network. 1483*d5c09012SAndroid Build Coastguard Worker string master_ipv4_cidr_block = 3; 1484*d5c09012SAndroid Build Coastguard Worker 1485*d5c09012SAndroid Build Coastguard Worker // Output only. The internal IP address of this cluster's master endpoint. 1486*d5c09012SAndroid Build Coastguard Worker string private_endpoint = 4; 1487*d5c09012SAndroid Build Coastguard Worker 1488*d5c09012SAndroid Build Coastguard Worker // Output only. The external IP address of this cluster's master endpoint. 1489*d5c09012SAndroid Build Coastguard Worker string public_endpoint = 5; 1490*d5c09012SAndroid Build Coastguard Worker 1491*d5c09012SAndroid Build Coastguard Worker // Output only. The peering name in the customer VPC used by this cluster. 1492*d5c09012SAndroid Build Coastguard Worker string peering_name = 7; 1493*d5c09012SAndroid Build Coastguard Worker 1494*d5c09012SAndroid Build Coastguard Worker // Controls master global access settings. 1495*d5c09012SAndroid Build Coastguard Worker PrivateClusterMasterGlobalAccessConfig master_global_access_config = 8; 1496*d5c09012SAndroid Build Coastguard Worker 1497*d5c09012SAndroid Build Coastguard Worker // Subnet to provision the master's private endpoint during cluster creation. 1498*d5c09012SAndroid Build Coastguard Worker // Specified in projects/*/regions/*/subnetworks/* format. 1499*d5c09012SAndroid Build Coastguard Worker string private_endpoint_subnetwork = 10; 1500*d5c09012SAndroid Build Coastguard Worker} 1501*d5c09012SAndroid Build Coastguard Worker 1502*d5c09012SAndroid Build Coastguard Worker// Configuration options for Istio addon. 1503*d5c09012SAndroid Build Coastguard Workermessage IstioConfig { 1504*d5c09012SAndroid Build Coastguard Worker // Istio auth mode, https://istio.io/docs/concepts/security/mutual-tls.html 1505*d5c09012SAndroid Build Coastguard Worker enum IstioAuthMode { 1506*d5c09012SAndroid Build Coastguard Worker // auth not enabled 1507*d5c09012SAndroid Build Coastguard Worker AUTH_NONE = 0; 1508*d5c09012SAndroid Build Coastguard Worker 1509*d5c09012SAndroid Build Coastguard Worker // auth mutual TLS enabled 1510*d5c09012SAndroid Build Coastguard Worker AUTH_MUTUAL_TLS = 1; 1511*d5c09012SAndroid Build Coastguard Worker } 1512*d5c09012SAndroid Build Coastguard Worker 1513*d5c09012SAndroid Build Coastguard Worker // Whether Istio is enabled for this cluster. 1514*d5c09012SAndroid Build Coastguard Worker bool disabled = 1 [deprecated = true]; 1515*d5c09012SAndroid Build Coastguard Worker 1516*d5c09012SAndroid Build Coastguard Worker // The specified Istio auth mode, either none, or mutual TLS. 1517*d5c09012SAndroid Build Coastguard Worker IstioAuthMode auth = 2 [deprecated = true]; 1518*d5c09012SAndroid Build Coastguard Worker} 1519*d5c09012SAndroid Build Coastguard Worker 1520*d5c09012SAndroid Build Coastguard Worker// Configuration options for the Cloud Run feature. 1521*d5c09012SAndroid Build Coastguard Workermessage CloudRunConfig { 1522*d5c09012SAndroid Build Coastguard Worker // Load balancer type of ingress service of Cloud Run. 1523*d5c09012SAndroid Build Coastguard Worker enum LoadBalancerType { 1524*d5c09012SAndroid Build Coastguard Worker // Load balancer type for Cloud Run is unspecified. 1525*d5c09012SAndroid Build Coastguard Worker LOAD_BALANCER_TYPE_UNSPECIFIED = 0; 1526*d5c09012SAndroid Build Coastguard Worker 1527*d5c09012SAndroid Build Coastguard Worker // Install external load balancer for Cloud Run. 1528*d5c09012SAndroid Build Coastguard Worker LOAD_BALANCER_TYPE_EXTERNAL = 1; 1529*d5c09012SAndroid Build Coastguard Worker 1530*d5c09012SAndroid Build Coastguard Worker // Install internal load balancer for Cloud Run. 1531*d5c09012SAndroid Build Coastguard Worker LOAD_BALANCER_TYPE_INTERNAL = 2; 1532*d5c09012SAndroid Build Coastguard Worker } 1533*d5c09012SAndroid Build Coastguard Worker 1534*d5c09012SAndroid Build Coastguard Worker // Whether Cloud Run addon is enabled for this cluster. 1535*d5c09012SAndroid Build Coastguard Worker bool disabled = 1; 1536*d5c09012SAndroid Build Coastguard Worker 1537*d5c09012SAndroid Build Coastguard Worker // Which load balancer type is installed for Cloud Run. 1538*d5c09012SAndroid Build Coastguard Worker LoadBalancerType load_balancer_type = 3; 1539*d5c09012SAndroid Build Coastguard Worker} 1540*d5c09012SAndroid Build Coastguard Worker 1541*d5c09012SAndroid Build Coastguard Worker// Configuration options for the master authorized networks feature. Enabled 1542*d5c09012SAndroid Build Coastguard Worker// master authorized networks will disallow all external traffic to access 1543*d5c09012SAndroid Build Coastguard Worker// Kubernetes master through HTTPS except traffic from the given CIDR blocks, 1544*d5c09012SAndroid Build Coastguard Worker// Google Compute Engine Public IPs and Google Prod IPs. 1545*d5c09012SAndroid Build Coastguard Workermessage MasterAuthorizedNetworksConfig { 1546*d5c09012SAndroid Build Coastguard Worker // CidrBlock contains an optional name and one CIDR block. 1547*d5c09012SAndroid Build Coastguard Worker message CidrBlock { 1548*d5c09012SAndroid Build Coastguard Worker // display_name is an optional field for users to identify CIDR blocks. 1549*d5c09012SAndroid Build Coastguard Worker string display_name = 1; 1550*d5c09012SAndroid Build Coastguard Worker 1551*d5c09012SAndroid Build Coastguard Worker // cidr_block must be specified in CIDR notation. 1552*d5c09012SAndroid Build Coastguard Worker string cidr_block = 2; 1553*d5c09012SAndroid Build Coastguard Worker } 1554*d5c09012SAndroid Build Coastguard Worker 1555*d5c09012SAndroid Build Coastguard Worker // Whether or not master authorized networks is enabled. 1556*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 1557*d5c09012SAndroid Build Coastguard Worker 1558*d5c09012SAndroid Build Coastguard Worker // cidr_blocks define up to 10 external networks that could access 1559*d5c09012SAndroid Build Coastguard Worker // Kubernetes master through HTTPS. 1560*d5c09012SAndroid Build Coastguard Worker repeated CidrBlock cidr_blocks = 2; 1561*d5c09012SAndroid Build Coastguard Worker 1562*d5c09012SAndroid Build Coastguard Worker // Whether master is accessbile via Google Compute Engine Public IP addresses. 1563*d5c09012SAndroid Build Coastguard Worker optional bool gcp_public_cidrs_access_enabled = 3; 1564*d5c09012SAndroid Build Coastguard Worker} 1565*d5c09012SAndroid Build Coastguard Worker 1566*d5c09012SAndroid Build Coastguard Worker// Configuration for the legacy Attribute Based Access Control authorization 1567*d5c09012SAndroid Build Coastguard Worker// mode. 1568*d5c09012SAndroid Build Coastguard Workermessage LegacyAbac { 1569*d5c09012SAndroid Build Coastguard Worker // Whether the ABAC authorizer is enabled for this cluster. When enabled, 1570*d5c09012SAndroid Build Coastguard Worker // identities in the system, including service accounts, nodes, and 1571*d5c09012SAndroid Build Coastguard Worker // controllers, will have statically granted permissions beyond those 1572*d5c09012SAndroid Build Coastguard Worker // provided by the RBAC configuration or IAM. 1573*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 1574*d5c09012SAndroid Build Coastguard Worker} 1575*d5c09012SAndroid Build Coastguard Worker 1576*d5c09012SAndroid Build Coastguard Worker// Configuration options for the NetworkPolicy feature. 1577*d5c09012SAndroid Build Coastguard Worker// https://kubernetes.io/docs/concepts/services-networking/networkpolicies/ 1578*d5c09012SAndroid Build Coastguard Workermessage NetworkPolicy { 1579*d5c09012SAndroid Build Coastguard Worker // Allowed Network Policy providers. 1580*d5c09012SAndroid Build Coastguard Worker enum Provider { 1581*d5c09012SAndroid Build Coastguard Worker // Not set 1582*d5c09012SAndroid Build Coastguard Worker PROVIDER_UNSPECIFIED = 0; 1583*d5c09012SAndroid Build Coastguard Worker 1584*d5c09012SAndroid Build Coastguard Worker // Tigera (Calico Felix). 1585*d5c09012SAndroid Build Coastguard Worker CALICO = 1; 1586*d5c09012SAndroid Build Coastguard Worker } 1587*d5c09012SAndroid Build Coastguard Worker 1588*d5c09012SAndroid Build Coastguard Worker // The selected network policy provider. 1589*d5c09012SAndroid Build Coastguard Worker Provider provider = 1; 1590*d5c09012SAndroid Build Coastguard Worker 1591*d5c09012SAndroid Build Coastguard Worker // Whether network policy is enabled on the cluster. 1592*d5c09012SAndroid Build Coastguard Worker bool enabled = 2; 1593*d5c09012SAndroid Build Coastguard Worker} 1594*d5c09012SAndroid Build Coastguard Worker 1595*d5c09012SAndroid Build Coastguard Worker// [PRIVATE FIELD] 1596*d5c09012SAndroid Build Coastguard Worker// Config for pod CIDR size overprovisioning. 1597*d5c09012SAndroid Build Coastguard Workermessage PodCIDROverprovisionConfig { 1598*d5c09012SAndroid Build Coastguard Worker // Whether Pod CIDR overprovisioning is disabled. 1599*d5c09012SAndroid Build Coastguard Worker // Note: Pod CIDR overprovisioning is enabled by default. 1600*d5c09012SAndroid Build Coastguard Worker bool disable = 1; 1601*d5c09012SAndroid Build Coastguard Worker} 1602*d5c09012SAndroid Build Coastguard Worker 1603*d5c09012SAndroid Build Coastguard Worker// Configuration for controlling how IPs are allocated in the cluster. 1604*d5c09012SAndroid Build Coastguard Workermessage IPAllocationPolicy { 1605*d5c09012SAndroid Build Coastguard Worker // Possible values for IP stack type 1606*d5c09012SAndroid Build Coastguard Worker enum StackType { 1607*d5c09012SAndroid Build Coastguard Worker // By default, the clusters will be IPV4 only 1608*d5c09012SAndroid Build Coastguard Worker STACK_TYPE_UNSPECIFIED = 0; 1609*d5c09012SAndroid Build Coastguard Worker 1610*d5c09012SAndroid Build Coastguard Worker // The value used if the cluster is a IPV4 only 1611*d5c09012SAndroid Build Coastguard Worker IPV4 = 1; 1612*d5c09012SAndroid Build Coastguard Worker 1613*d5c09012SAndroid Build Coastguard Worker // The value used if the cluster is a dual stack cluster 1614*d5c09012SAndroid Build Coastguard Worker IPV4_IPV6 = 2; 1615*d5c09012SAndroid Build Coastguard Worker } 1616*d5c09012SAndroid Build Coastguard Worker 1617*d5c09012SAndroid Build Coastguard Worker // IPv6 access type 1618*d5c09012SAndroid Build Coastguard Worker enum IPv6AccessType { 1619*d5c09012SAndroid Build Coastguard Worker // Default value, will be defaulted as type external. 1620*d5c09012SAndroid Build Coastguard Worker IPV6_ACCESS_TYPE_UNSPECIFIED = 0; 1621*d5c09012SAndroid Build Coastguard Worker 1622*d5c09012SAndroid Build Coastguard Worker // Access type internal (all v6 addresses are internal IPs) 1623*d5c09012SAndroid Build Coastguard Worker INTERNAL = 1; 1624*d5c09012SAndroid Build Coastguard Worker 1625*d5c09012SAndroid Build Coastguard Worker // Access type external (all v6 addresses are external IPs) 1626*d5c09012SAndroid Build Coastguard Worker EXTERNAL = 2; 1627*d5c09012SAndroid Build Coastguard Worker } 1628*d5c09012SAndroid Build Coastguard Worker 1629*d5c09012SAndroid Build Coastguard Worker // Whether alias IPs will be used for pod IPs in the cluster. 1630*d5c09012SAndroid Build Coastguard Worker // This is used in conjunction with use_routes. It cannot 1631*d5c09012SAndroid Build Coastguard Worker // be true if use_routes is true. If both use_ip_aliases and use_routes are 1632*d5c09012SAndroid Build Coastguard Worker // false, then the server picks the default IP allocation mode 1633*d5c09012SAndroid Build Coastguard Worker bool use_ip_aliases = 1; 1634*d5c09012SAndroid Build Coastguard Worker 1635*d5c09012SAndroid Build Coastguard Worker // Whether a new subnetwork will be created automatically for the cluster. 1636*d5c09012SAndroid Build Coastguard Worker // 1637*d5c09012SAndroid Build Coastguard Worker // This field is only applicable when `use_ip_aliases` is true. 1638*d5c09012SAndroid Build Coastguard Worker bool create_subnetwork = 2; 1639*d5c09012SAndroid Build Coastguard Worker 1640*d5c09012SAndroid Build Coastguard Worker // A custom subnetwork name to be used if `create_subnetwork` is true. If 1641*d5c09012SAndroid Build Coastguard Worker // this field is empty, then an automatic name will be chosen for the new 1642*d5c09012SAndroid Build Coastguard Worker // subnetwork. 1643*d5c09012SAndroid Build Coastguard Worker string subnetwork_name = 3; 1644*d5c09012SAndroid Build Coastguard Worker 1645*d5c09012SAndroid Build Coastguard Worker // This field is deprecated, use cluster_ipv4_cidr_block. 1646*d5c09012SAndroid Build Coastguard Worker string cluster_ipv4_cidr = 4 [deprecated = true]; 1647*d5c09012SAndroid Build Coastguard Worker 1648*d5c09012SAndroid Build Coastguard Worker // This field is deprecated, use node_ipv4_cidr_block. 1649*d5c09012SAndroid Build Coastguard Worker string node_ipv4_cidr = 5 [deprecated = true]; 1650*d5c09012SAndroid Build Coastguard Worker 1651*d5c09012SAndroid Build Coastguard Worker // This field is deprecated, use services_ipv4_cidr_block. 1652*d5c09012SAndroid Build Coastguard Worker string services_ipv4_cidr = 6 [deprecated = true]; 1653*d5c09012SAndroid Build Coastguard Worker 1654*d5c09012SAndroid Build Coastguard Worker // The name of the secondary range to be used for the cluster CIDR 1655*d5c09012SAndroid Build Coastguard Worker // block. The secondary range will be used for pod IP 1656*d5c09012SAndroid Build Coastguard Worker // addresses. This must be an existing secondary range associated 1657*d5c09012SAndroid Build Coastguard Worker // with the cluster subnetwork. 1658*d5c09012SAndroid Build Coastguard Worker // 1659*d5c09012SAndroid Build Coastguard Worker // This field is only applicable with use_ip_aliases and 1660*d5c09012SAndroid Build Coastguard Worker // create_subnetwork is false. 1661*d5c09012SAndroid Build Coastguard Worker string cluster_secondary_range_name = 7; 1662*d5c09012SAndroid Build Coastguard Worker 1663*d5c09012SAndroid Build Coastguard Worker // The name of the secondary range to be used as for the services 1664*d5c09012SAndroid Build Coastguard Worker // CIDR block. The secondary range will be used for service 1665*d5c09012SAndroid Build Coastguard Worker // ClusterIPs. This must be an existing secondary range associated 1666*d5c09012SAndroid Build Coastguard Worker // with the cluster subnetwork. 1667*d5c09012SAndroid Build Coastguard Worker // 1668*d5c09012SAndroid Build Coastguard Worker // This field is only applicable with use_ip_aliases and 1669*d5c09012SAndroid Build Coastguard Worker // create_subnetwork is false. 1670*d5c09012SAndroid Build Coastguard Worker string services_secondary_range_name = 8; 1671*d5c09012SAndroid Build Coastguard Worker 1672*d5c09012SAndroid Build Coastguard Worker // The IP address range for the cluster pod IPs. If this field is set, then 1673*d5c09012SAndroid Build Coastguard Worker // `cluster.cluster_ipv4_cidr` must be left blank. 1674*d5c09012SAndroid Build Coastguard Worker // 1675*d5c09012SAndroid Build Coastguard Worker // This field is only applicable when `use_ip_aliases` is true. 1676*d5c09012SAndroid Build Coastguard Worker // 1677*d5c09012SAndroid Build Coastguard Worker // Set to blank to have a range chosen with the default size. 1678*d5c09012SAndroid Build Coastguard Worker // 1679*d5c09012SAndroid Build Coastguard Worker // Set to /netmask (e.g. `/14`) to have a range chosen with a specific 1680*d5c09012SAndroid Build Coastguard Worker // netmask. 1681*d5c09012SAndroid Build Coastguard Worker // 1682*d5c09012SAndroid Build Coastguard Worker // Set to a 1683*d5c09012SAndroid Build Coastguard Worker // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) 1684*d5c09012SAndroid Build Coastguard Worker // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g. 1685*d5c09012SAndroid Build Coastguard Worker // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range 1686*d5c09012SAndroid Build Coastguard Worker // to use. 1687*d5c09012SAndroid Build Coastguard Worker string cluster_ipv4_cidr_block = 9; 1688*d5c09012SAndroid Build Coastguard Worker 1689*d5c09012SAndroid Build Coastguard Worker // The IP address range of the instance IPs in this cluster. 1690*d5c09012SAndroid Build Coastguard Worker // 1691*d5c09012SAndroid Build Coastguard Worker // This is applicable only if `create_subnetwork` is true. 1692*d5c09012SAndroid Build Coastguard Worker // 1693*d5c09012SAndroid Build Coastguard Worker // Set to blank to have a range chosen with the default size. 1694*d5c09012SAndroid Build Coastguard Worker // 1695*d5c09012SAndroid Build Coastguard Worker // Set to /netmask (e.g. `/14`) to have a range chosen with a specific 1696*d5c09012SAndroid Build Coastguard Worker // netmask. 1697*d5c09012SAndroid Build Coastguard Worker // 1698*d5c09012SAndroid Build Coastguard Worker // Set to a 1699*d5c09012SAndroid Build Coastguard Worker // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) 1700*d5c09012SAndroid Build Coastguard Worker // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g. 1701*d5c09012SAndroid Build Coastguard Worker // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range 1702*d5c09012SAndroid Build Coastguard Worker // to use. 1703*d5c09012SAndroid Build Coastguard Worker string node_ipv4_cidr_block = 10; 1704*d5c09012SAndroid Build Coastguard Worker 1705*d5c09012SAndroid Build Coastguard Worker // The IP address range of the services IPs in this cluster. If blank, a range 1706*d5c09012SAndroid Build Coastguard Worker // will be automatically chosen with the default size. 1707*d5c09012SAndroid Build Coastguard Worker // 1708*d5c09012SAndroid Build Coastguard Worker // This field is only applicable when `use_ip_aliases` is true. 1709*d5c09012SAndroid Build Coastguard Worker // 1710*d5c09012SAndroid Build Coastguard Worker // Set to blank to have a range chosen with the default size. 1711*d5c09012SAndroid Build Coastguard Worker // 1712*d5c09012SAndroid Build Coastguard Worker // Set to /netmask (e.g. `/14`) to have a range chosen with a specific 1713*d5c09012SAndroid Build Coastguard Worker // netmask. 1714*d5c09012SAndroid Build Coastguard Worker // 1715*d5c09012SAndroid Build Coastguard Worker // Set to a 1716*d5c09012SAndroid Build Coastguard Worker // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) 1717*d5c09012SAndroid Build Coastguard Worker // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g. 1718*d5c09012SAndroid Build Coastguard Worker // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range 1719*d5c09012SAndroid Build Coastguard Worker // to use. 1720*d5c09012SAndroid Build Coastguard Worker string services_ipv4_cidr_block = 11; 1721*d5c09012SAndroid Build Coastguard Worker 1722*d5c09012SAndroid Build Coastguard Worker // If true, allow allocation of cluster CIDR ranges that overlap with certain 1723*d5c09012SAndroid Build Coastguard Worker // kinds of network routes. By default we do not allow cluster CIDR ranges to 1724*d5c09012SAndroid Build Coastguard Worker // intersect with any user declared routes. With allow_route_overlap == true, 1725*d5c09012SAndroid Build Coastguard Worker // we allow overlapping with CIDR ranges that are larger than the cluster CIDR 1726*d5c09012SAndroid Build Coastguard Worker // range. 1727*d5c09012SAndroid Build Coastguard Worker // 1728*d5c09012SAndroid Build Coastguard Worker // If this field is set to true, then cluster and services CIDRs must be 1729*d5c09012SAndroid Build Coastguard Worker // fully-specified (e.g. `10.96.0.0/14`, but not `/14`), which means: 1730*d5c09012SAndroid Build Coastguard Worker // 1) When `use_ip_aliases` is true, `cluster_ipv4_cidr_block` and 1731*d5c09012SAndroid Build Coastguard Worker // `services_ipv4_cidr_block` must be fully-specified. 1732*d5c09012SAndroid Build Coastguard Worker // 2) When `use_ip_aliases` is false, `cluster.cluster_ipv4_cidr` muse be 1733*d5c09012SAndroid Build Coastguard Worker // fully-specified. 1734*d5c09012SAndroid Build Coastguard Worker bool allow_route_overlap = 12; 1735*d5c09012SAndroid Build Coastguard Worker 1736*d5c09012SAndroid Build Coastguard Worker // The IP address range of the Cloud TPUs in this cluster. If unspecified, a 1737*d5c09012SAndroid Build Coastguard Worker // range will be automatically chosen with the default size. 1738*d5c09012SAndroid Build Coastguard Worker // 1739*d5c09012SAndroid Build Coastguard Worker // This field is only applicable when `use_ip_aliases` is true. 1740*d5c09012SAndroid Build Coastguard Worker // 1741*d5c09012SAndroid Build Coastguard Worker // If unspecified, the range will use the default size. 1742*d5c09012SAndroid Build Coastguard Worker // 1743*d5c09012SAndroid Build Coastguard Worker // Set to /netmask (e.g. `/14`) to have a range chosen with a specific 1744*d5c09012SAndroid Build Coastguard Worker // netmask. 1745*d5c09012SAndroid Build Coastguard Worker // 1746*d5c09012SAndroid Build Coastguard Worker // Set to a 1747*d5c09012SAndroid Build Coastguard Worker // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) 1748*d5c09012SAndroid Build Coastguard Worker // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks (e.g. 1749*d5c09012SAndroid Build Coastguard Worker // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific range 1750*d5c09012SAndroid Build Coastguard Worker // to use. 1751*d5c09012SAndroid Build Coastguard Worker // This field is deprecated, use cluster.tpu_config.ipv4_cidr_block instead. 1752*d5c09012SAndroid Build Coastguard Worker string tpu_ipv4_cidr_block = 13; 1753*d5c09012SAndroid Build Coastguard Worker 1754*d5c09012SAndroid Build Coastguard Worker // Whether routes will be used for pod IPs in the cluster. 1755*d5c09012SAndroid Build Coastguard Worker // This is used in conjunction with use_ip_aliases. It cannot be true if 1756*d5c09012SAndroid Build Coastguard Worker // use_ip_aliases is true. If both use_ip_aliases and use_routes are false, 1757*d5c09012SAndroid Build Coastguard Worker // then the server picks the default IP allocation mode 1758*d5c09012SAndroid Build Coastguard Worker bool use_routes = 15; 1759*d5c09012SAndroid Build Coastguard Worker 1760*d5c09012SAndroid Build Coastguard Worker // IP stack type 1761*d5c09012SAndroid Build Coastguard Worker StackType stack_type = 16; 1762*d5c09012SAndroid Build Coastguard Worker 1763*d5c09012SAndroid Build Coastguard Worker // The ipv6 access type (internal or external) when create_subnetwork is true 1764*d5c09012SAndroid Build Coastguard Worker IPv6AccessType ipv6_access_type = 17; 1765*d5c09012SAndroid Build Coastguard Worker 1766*d5c09012SAndroid Build Coastguard Worker // [PRIVATE FIELD] 1767*d5c09012SAndroid Build Coastguard Worker // Pod CIDR size overprovisioning config for the cluster. 1768*d5c09012SAndroid Build Coastguard Worker // 1769*d5c09012SAndroid Build Coastguard Worker // Pod CIDR size per node depends on max_pods_per_node. By default, the value 1770*d5c09012SAndroid Build Coastguard Worker // of max_pods_per_node is doubled and then rounded off to next power of 2 to 1771*d5c09012SAndroid Build Coastguard Worker // get the size of pod CIDR block per node. 1772*d5c09012SAndroid Build Coastguard Worker // Example: max_pods_per_node of 30 would result in 64 IPs (/26). 1773*d5c09012SAndroid Build Coastguard Worker // 1774*d5c09012SAndroid Build Coastguard Worker // This config can disable the doubling of IPs (we still round off to next 1775*d5c09012SAndroid Build Coastguard Worker // power of 2) 1776*d5c09012SAndroid Build Coastguard Worker // Example: max_pods_per_node of 30 will result in 32 IPs (/27) when 1777*d5c09012SAndroid Build Coastguard Worker // overprovisioning is disabled. 1778*d5c09012SAndroid Build Coastguard Worker PodCIDROverprovisionConfig pod_cidr_overprovision_config = 21; 1779*d5c09012SAndroid Build Coastguard Worker 1780*d5c09012SAndroid Build Coastguard Worker // Output only. [Output only] The subnet's IPv6 CIDR block used by nodes and 1781*d5c09012SAndroid Build Coastguard Worker // pods. 1782*d5c09012SAndroid Build Coastguard Worker string subnet_ipv6_cidr_block = 22 1783*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1784*d5c09012SAndroid Build Coastguard Worker 1785*d5c09012SAndroid Build Coastguard Worker // Output only. [Output only] The services IPv6 CIDR block for the cluster. 1786*d5c09012SAndroid Build Coastguard Worker string services_ipv6_cidr_block = 23 1787*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1788*d5c09012SAndroid Build Coastguard Worker 1789*d5c09012SAndroid Build Coastguard Worker // Output only. [Output only] The additional pod ranges that are added to the 1790*d5c09012SAndroid Build Coastguard Worker // cluster. These pod ranges can be used by new node pools to allocate pod IPs 1791*d5c09012SAndroid Build Coastguard Worker // automatically. Once the range is removed it will not show up in 1792*d5c09012SAndroid Build Coastguard Worker // IPAllocationPolicy. 1793*d5c09012SAndroid Build Coastguard Worker AdditionalPodRangesConfig additional_pod_ranges_config = 24 1794*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1795*d5c09012SAndroid Build Coastguard Worker 1796*d5c09012SAndroid Build Coastguard Worker // Output only. [Output only] The utilization of the cluster default IPv4 1797*d5c09012SAndroid Build Coastguard Worker // range for the pod. The ratio is Usage/[Total number of IPs in the secondary 1798*d5c09012SAndroid Build Coastguard Worker // range], Usage=numNodes*numZones*podIPsPerNode. 1799*d5c09012SAndroid Build Coastguard Worker double default_pod_ipv4_range_utilization = 25 1800*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1801*d5c09012SAndroid Build Coastguard Worker} 1802*d5c09012SAndroid Build Coastguard Worker 1803*d5c09012SAndroid Build Coastguard Worker// Configuration for Binary Authorization. 1804*d5c09012SAndroid Build Coastguard Workermessage BinaryAuthorization { 1805*d5c09012SAndroid Build Coastguard Worker // Binary Authorization mode of operation. 1806*d5c09012SAndroid Build Coastguard Worker enum EvaluationMode { 1807*d5c09012SAndroid Build Coastguard Worker // Default value 1808*d5c09012SAndroid Build Coastguard Worker EVALUATION_MODE_UNSPECIFIED = 0; 1809*d5c09012SAndroid Build Coastguard Worker 1810*d5c09012SAndroid Build Coastguard Worker // Disable BinaryAuthorization 1811*d5c09012SAndroid Build Coastguard Worker DISABLED = 1; 1812*d5c09012SAndroid Build Coastguard Worker 1813*d5c09012SAndroid Build Coastguard Worker // Enforce Kubernetes admission requests with BinaryAuthorization using the 1814*d5c09012SAndroid Build Coastguard Worker // project's singleton policy. This is equivalent to setting the 1815*d5c09012SAndroid Build Coastguard Worker // enabled boolean to true. 1816*d5c09012SAndroid Build Coastguard Worker PROJECT_SINGLETON_POLICY_ENFORCE = 2; 1817*d5c09012SAndroid Build Coastguard Worker 1818*d5c09012SAndroid Build Coastguard Worker // Use Binary Authorization Continuous Validation with the policies 1819*d5c09012SAndroid Build Coastguard Worker // specified in policy_bindings. 1820*d5c09012SAndroid Build Coastguard Worker POLICY_BINDINGS = 5; 1821*d5c09012SAndroid Build Coastguard Worker 1822*d5c09012SAndroid Build Coastguard Worker // Use Binary Authorization Continuous Validation with the policies 1823*d5c09012SAndroid Build Coastguard Worker // specified in policy_bindings and enforce Kubernetes admission requests 1824*d5c09012SAndroid Build Coastguard Worker // with Binary Authorization using the project's singleton policy. 1825*d5c09012SAndroid Build Coastguard Worker POLICY_BINDINGS_AND_PROJECT_SINGLETON_POLICY_ENFORCE = 6; 1826*d5c09012SAndroid Build Coastguard Worker } 1827*d5c09012SAndroid Build Coastguard Worker 1828*d5c09012SAndroid Build Coastguard Worker // Binauthz policy that applies to this cluster. 1829*d5c09012SAndroid Build Coastguard Worker message PolicyBinding { 1830*d5c09012SAndroid Build Coastguard Worker // The relative resource name of the binauthz platform policy to audit. GKE 1831*d5c09012SAndroid Build Coastguard Worker // platform policies have the following format: 1832*d5c09012SAndroid Build Coastguard Worker // `projects/{project_number}/platforms/gke/policies/{policy_id}`. 1833*d5c09012SAndroid Build Coastguard Worker optional string name = 1; 1834*d5c09012SAndroid Build Coastguard Worker } 1835*d5c09012SAndroid Build Coastguard Worker 1836*d5c09012SAndroid Build Coastguard Worker // This field is deprecated. Leave this unset and instead configure 1837*d5c09012SAndroid Build Coastguard Worker // BinaryAuthorization using evaluation_mode. If evaluation_mode is set to 1838*d5c09012SAndroid Build Coastguard Worker // anything other than EVALUATION_MODE_UNSPECIFIED, this field is ignored. 1839*d5c09012SAndroid Build Coastguard Worker bool enabled = 1 [deprecated = true]; 1840*d5c09012SAndroid Build Coastguard Worker 1841*d5c09012SAndroid Build Coastguard Worker // Mode of operation for binauthz policy evaluation. If unspecified, defaults 1842*d5c09012SAndroid Build Coastguard Worker // to DISABLED. 1843*d5c09012SAndroid Build Coastguard Worker EvaluationMode evaluation_mode = 2; 1844*d5c09012SAndroid Build Coastguard Worker 1845*d5c09012SAndroid Build Coastguard Worker // Optional. Binauthz policies that apply to this cluster. 1846*d5c09012SAndroid Build Coastguard Worker repeated PolicyBinding policy_bindings = 5 1847*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OPTIONAL]; 1848*d5c09012SAndroid Build Coastguard Worker} 1849*d5c09012SAndroid Build Coastguard Worker 1850*d5c09012SAndroid Build Coastguard Worker// Configuration for the PodSecurityPolicy feature. 1851*d5c09012SAndroid Build Coastguard Workermessage PodSecurityPolicyConfig { 1852*d5c09012SAndroid Build Coastguard Worker // Enable the PodSecurityPolicy controller for this cluster. If enabled, pods 1853*d5c09012SAndroid Build Coastguard Worker // must be valid under a PodSecurityPolicy to be created. 1854*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 1855*d5c09012SAndroid Build Coastguard Worker} 1856*d5c09012SAndroid Build Coastguard Worker 1857*d5c09012SAndroid Build Coastguard Worker// Configuration for returning group information from authenticators. 1858*d5c09012SAndroid Build Coastguard Workermessage AuthenticatorGroupsConfig { 1859*d5c09012SAndroid Build Coastguard Worker // Whether this cluster should return group membership lookups 1860*d5c09012SAndroid Build Coastguard Worker // during authentication using a group of security groups. 1861*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 1862*d5c09012SAndroid Build Coastguard Worker 1863*d5c09012SAndroid Build Coastguard Worker // The name of the security group-of-groups to be used. Only relevant 1864*d5c09012SAndroid Build Coastguard Worker // if enabled = true. 1865*d5c09012SAndroid Build Coastguard Worker string security_group = 2; 1866*d5c09012SAndroid Build Coastguard Worker} 1867*d5c09012SAndroid Build Coastguard Worker 1868*d5c09012SAndroid Build Coastguard Worker// Telemetry integration for the cluster. 1869*d5c09012SAndroid Build Coastguard Workermessage ClusterTelemetry { 1870*d5c09012SAndroid Build Coastguard Worker // Type of the integration. 1871*d5c09012SAndroid Build Coastguard Worker enum Type { 1872*d5c09012SAndroid Build Coastguard Worker // Not set. 1873*d5c09012SAndroid Build Coastguard Worker UNSPECIFIED = 0; 1874*d5c09012SAndroid Build Coastguard Worker 1875*d5c09012SAndroid Build Coastguard Worker // Monitoring integration is disabled. 1876*d5c09012SAndroid Build Coastguard Worker DISABLED = 1; 1877*d5c09012SAndroid Build Coastguard Worker 1878*d5c09012SAndroid Build Coastguard Worker // Monitoring integration is enabled. 1879*d5c09012SAndroid Build Coastguard Worker ENABLED = 2; 1880*d5c09012SAndroid Build Coastguard Worker 1881*d5c09012SAndroid Build Coastguard Worker // Only system components are monitored and logged. 1882*d5c09012SAndroid Build Coastguard Worker SYSTEM_ONLY = 3; 1883*d5c09012SAndroid Build Coastguard Worker } 1884*d5c09012SAndroid Build Coastguard Worker 1885*d5c09012SAndroid Build Coastguard Worker // Type of the integration. 1886*d5c09012SAndroid Build Coastguard Worker Type type = 1; 1887*d5c09012SAndroid Build Coastguard Worker} 1888*d5c09012SAndroid Build Coastguard Worker 1889*d5c09012SAndroid Build Coastguard Worker// A Google Kubernetes Engine cluster. 1890*d5c09012SAndroid Build Coastguard Workermessage Cluster { 1891*d5c09012SAndroid Build Coastguard Worker // The current status of the cluster. 1892*d5c09012SAndroid Build Coastguard Worker enum Status { 1893*d5c09012SAndroid Build Coastguard Worker // Not set. 1894*d5c09012SAndroid Build Coastguard Worker STATUS_UNSPECIFIED = 0; 1895*d5c09012SAndroid Build Coastguard Worker 1896*d5c09012SAndroid Build Coastguard Worker // The PROVISIONING state indicates the cluster is being created. 1897*d5c09012SAndroid Build Coastguard Worker PROVISIONING = 1; 1898*d5c09012SAndroid Build Coastguard Worker 1899*d5c09012SAndroid Build Coastguard Worker // The RUNNING state indicates the cluster has been created and is fully 1900*d5c09012SAndroid Build Coastguard Worker // usable. 1901*d5c09012SAndroid Build Coastguard Worker RUNNING = 2; 1902*d5c09012SAndroid Build Coastguard Worker 1903*d5c09012SAndroid Build Coastguard Worker // The RECONCILING state indicates that some work is actively being done on 1904*d5c09012SAndroid Build Coastguard Worker // the cluster, such as upgrading the master or node software. Details can 1905*d5c09012SAndroid Build Coastguard Worker // be found in the `statusMessage` field. 1906*d5c09012SAndroid Build Coastguard Worker RECONCILING = 3; 1907*d5c09012SAndroid Build Coastguard Worker 1908*d5c09012SAndroid Build Coastguard Worker // The STOPPING state indicates the cluster is being deleted. 1909*d5c09012SAndroid Build Coastguard Worker STOPPING = 4; 1910*d5c09012SAndroid Build Coastguard Worker 1911*d5c09012SAndroid Build Coastguard Worker // The ERROR state indicates the cluster may be unusable. Details 1912*d5c09012SAndroid Build Coastguard Worker // can be found in the `statusMessage` field. 1913*d5c09012SAndroid Build Coastguard Worker ERROR = 5; 1914*d5c09012SAndroid Build Coastguard Worker 1915*d5c09012SAndroid Build Coastguard Worker // The DEGRADED state indicates the cluster requires user action to restore 1916*d5c09012SAndroid Build Coastguard Worker // full functionality. Details can be found in the `statusMessage` field. 1917*d5c09012SAndroid Build Coastguard Worker DEGRADED = 6; 1918*d5c09012SAndroid Build Coastguard Worker } 1919*d5c09012SAndroid Build Coastguard Worker 1920*d5c09012SAndroid Build Coastguard Worker // The name of this cluster. The name must be unique within this project 1921*d5c09012SAndroid Build Coastguard Worker // and location (e.g. zone or region), and can be up to 40 characters with 1922*d5c09012SAndroid Build Coastguard Worker // the following restrictions: 1923*d5c09012SAndroid Build Coastguard Worker // 1924*d5c09012SAndroid Build Coastguard Worker // * Lowercase letters, numbers, and hyphens only. 1925*d5c09012SAndroid Build Coastguard Worker // * Must start with a letter. 1926*d5c09012SAndroid Build Coastguard Worker // * Must end with a number or a letter. 1927*d5c09012SAndroid Build Coastguard Worker string name = 1; 1928*d5c09012SAndroid Build Coastguard Worker 1929*d5c09012SAndroid Build Coastguard Worker // An optional description of this cluster. 1930*d5c09012SAndroid Build Coastguard Worker string description = 2; 1931*d5c09012SAndroid Build Coastguard Worker 1932*d5c09012SAndroid Build Coastguard Worker // The number of nodes to create in this cluster. You must ensure that your 1933*d5c09012SAndroid Build Coastguard Worker // Compute Engine [resource quota](https://cloud.google.com/compute/quotas) 1934*d5c09012SAndroid Build Coastguard Worker // is sufficient for this number of instances. You must also have available 1935*d5c09012SAndroid Build Coastguard Worker // firewall and routes quota. 1936*d5c09012SAndroid Build Coastguard Worker // For requests, this field should only be used in lieu of a 1937*d5c09012SAndroid Build Coastguard Worker // "node_pool" object, since this configuration (along with the 1938*d5c09012SAndroid Build Coastguard Worker // "node_config") will be used to create a "NodePool" object with an 1939*d5c09012SAndroid Build Coastguard Worker // auto-generated name. Do not use this and a node_pool at the same time. 1940*d5c09012SAndroid Build Coastguard Worker // 1941*d5c09012SAndroid Build Coastguard Worker // This field is deprecated, use node_pool.initial_node_count instead. 1942*d5c09012SAndroid Build Coastguard Worker int32 initial_node_count = 3 [deprecated = true]; 1943*d5c09012SAndroid Build Coastguard Worker 1944*d5c09012SAndroid Build Coastguard Worker // Parameters used in creating the cluster's nodes. 1945*d5c09012SAndroid Build Coastguard Worker // For requests, this field should only be used in lieu of a 1946*d5c09012SAndroid Build Coastguard Worker // "node_pool" object, since this configuration (along with the 1947*d5c09012SAndroid Build Coastguard Worker // "initial_node_count") will be used to create a "NodePool" object with an 1948*d5c09012SAndroid Build Coastguard Worker // auto-generated name. Do not use this and a node_pool at the same time. 1949*d5c09012SAndroid Build Coastguard Worker // For responses, this field will be populated with the node configuration of 1950*d5c09012SAndroid Build Coastguard Worker // the first node pool. (For configuration of each node pool, see 1951*d5c09012SAndroid Build Coastguard Worker // `node_pool.config`) 1952*d5c09012SAndroid Build Coastguard Worker // 1953*d5c09012SAndroid Build Coastguard Worker // If unspecified, the defaults are used. 1954*d5c09012SAndroid Build Coastguard Worker // This field is deprecated, use node_pool.config instead. 1955*d5c09012SAndroid Build Coastguard Worker NodeConfig node_config = 4 [deprecated = true]; 1956*d5c09012SAndroid Build Coastguard Worker 1957*d5c09012SAndroid Build Coastguard Worker // The authentication information for accessing the master endpoint. 1958*d5c09012SAndroid Build Coastguard Worker // If unspecified, the defaults are used: 1959*d5c09012SAndroid Build Coastguard Worker // For clusters before v1.12, if master_auth is unspecified, `username` will 1960*d5c09012SAndroid Build Coastguard Worker // be set to "admin", a random password will be generated, and a client 1961*d5c09012SAndroid Build Coastguard Worker // certificate will be issued. 1962*d5c09012SAndroid Build Coastguard Worker MasterAuth master_auth = 5; 1963*d5c09012SAndroid Build Coastguard Worker 1964*d5c09012SAndroid Build Coastguard Worker // The logging service the cluster should use to write logs. 1965*d5c09012SAndroid Build Coastguard Worker // Currently available options: 1966*d5c09012SAndroid Build Coastguard Worker // 1967*d5c09012SAndroid Build Coastguard Worker // * `logging.googleapis.com/kubernetes` - The Cloud Logging 1968*d5c09012SAndroid Build Coastguard Worker // service with a Kubernetes-native resource model 1969*d5c09012SAndroid Build Coastguard Worker // * `logging.googleapis.com` - The legacy Cloud Logging service (no longer 1970*d5c09012SAndroid Build Coastguard Worker // available as of GKE 1.15). 1971*d5c09012SAndroid Build Coastguard Worker // * `none` - no logs will be exported from the cluster. 1972*d5c09012SAndroid Build Coastguard Worker // 1973*d5c09012SAndroid Build Coastguard Worker // If left as an empty string,`logging.googleapis.com/kubernetes` will be 1974*d5c09012SAndroid Build Coastguard Worker // used for GKE 1.14+ or `logging.googleapis.com` for earlier versions. 1975*d5c09012SAndroid Build Coastguard Worker string logging_service = 6; 1976*d5c09012SAndroid Build Coastguard Worker 1977*d5c09012SAndroid Build Coastguard Worker // The monitoring service the cluster should use to write metrics. 1978*d5c09012SAndroid Build Coastguard Worker // Currently available options: 1979*d5c09012SAndroid Build Coastguard Worker // 1980*d5c09012SAndroid Build Coastguard Worker // * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring 1981*d5c09012SAndroid Build Coastguard Worker // service with a Kubernetes-native resource model 1982*d5c09012SAndroid Build Coastguard Worker // * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no 1983*d5c09012SAndroid Build Coastguard Worker // longer available as of GKE 1.15). 1984*d5c09012SAndroid Build Coastguard Worker // * `none` - No metrics will be exported from the cluster. 1985*d5c09012SAndroid Build Coastguard Worker // 1986*d5c09012SAndroid Build Coastguard Worker // If left as an empty string,`monitoring.googleapis.com/kubernetes` will be 1987*d5c09012SAndroid Build Coastguard Worker // used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions. 1988*d5c09012SAndroid Build Coastguard Worker string monitoring_service = 7; 1989*d5c09012SAndroid Build Coastguard Worker 1990*d5c09012SAndroid Build Coastguard Worker // The name of the Google Compute Engine 1991*d5c09012SAndroid Build Coastguard Worker // [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks) 1992*d5c09012SAndroid Build Coastguard Worker // to which the cluster is connected. If left unspecified, the `default` 1993*d5c09012SAndroid Build Coastguard Worker // network will be used. On output this shows the network ID instead of the 1994*d5c09012SAndroid Build Coastguard Worker // name. 1995*d5c09012SAndroid Build Coastguard Worker string network = 8; 1996*d5c09012SAndroid Build Coastguard Worker 1997*d5c09012SAndroid Build Coastguard Worker // The IP address range of the container pods in this cluster, in 1998*d5c09012SAndroid Build Coastguard Worker // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) 1999*d5c09012SAndroid Build Coastguard Worker // notation (e.g. `10.96.0.0/14`). Leave blank to have 2000*d5c09012SAndroid Build Coastguard Worker // one automatically chosen or specify a `/14` block in `10.0.0.0/8`. 2001*d5c09012SAndroid Build Coastguard Worker string cluster_ipv4_cidr = 9; 2002*d5c09012SAndroid Build Coastguard Worker 2003*d5c09012SAndroid Build Coastguard Worker // Configurations for the various addons available to run in the cluster. 2004*d5c09012SAndroid Build Coastguard Worker AddonsConfig addons_config = 10; 2005*d5c09012SAndroid Build Coastguard Worker 2006*d5c09012SAndroid Build Coastguard Worker // The name of the Google Compute Engine 2007*d5c09012SAndroid Build Coastguard Worker // [subnetwork](https://cloud.google.com/compute/docs/subnetworks) to which 2008*d5c09012SAndroid Build Coastguard Worker // the cluster is connected. On output this shows the subnetwork ID instead of 2009*d5c09012SAndroid Build Coastguard Worker // the name. 2010*d5c09012SAndroid Build Coastguard Worker string subnetwork = 11; 2011*d5c09012SAndroid Build Coastguard Worker 2012*d5c09012SAndroid Build Coastguard Worker // The node pools associated with this cluster. 2013*d5c09012SAndroid Build Coastguard Worker // This field should not be set if "node_config" or "initial_node_count" are 2014*d5c09012SAndroid Build Coastguard Worker // specified. 2015*d5c09012SAndroid Build Coastguard Worker repeated NodePool node_pools = 12; 2016*d5c09012SAndroid Build Coastguard Worker 2017*d5c09012SAndroid Build Coastguard Worker // The list of Google Compute Engine 2018*d5c09012SAndroid Build Coastguard Worker // [zones](https://cloud.google.com/compute/docs/zones#available) in which the 2019*d5c09012SAndroid Build Coastguard Worker // cluster's nodes should be located. 2020*d5c09012SAndroid Build Coastguard Worker // 2021*d5c09012SAndroid Build Coastguard Worker // This field provides a default value if 2022*d5c09012SAndroid Build Coastguard Worker // [NodePool.Locations](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters.nodePools#NodePool.FIELDS.locations) 2023*d5c09012SAndroid Build Coastguard Worker // are not specified during node pool creation. 2024*d5c09012SAndroid Build Coastguard Worker // 2025*d5c09012SAndroid Build Coastguard Worker // Warning: changing cluster locations will update the 2026*d5c09012SAndroid Build Coastguard Worker // [NodePool.Locations](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters.nodePools#NodePool.FIELDS.locations) 2027*d5c09012SAndroid Build Coastguard Worker // of all node pools and will result in nodes being added and/or removed. 2028*d5c09012SAndroid Build Coastguard Worker repeated string locations = 13; 2029*d5c09012SAndroid Build Coastguard Worker 2030*d5c09012SAndroid Build Coastguard Worker // Kubernetes alpha features are enabled on this cluster. This includes alpha 2031*d5c09012SAndroid Build Coastguard Worker // API groups (e.g. v1beta1) and features that may not be production ready in 2032*d5c09012SAndroid Build Coastguard Worker // the kubernetes version of the master and nodes. 2033*d5c09012SAndroid Build Coastguard Worker // The cluster has no SLA for uptime and master/node upgrades are disabled. 2034*d5c09012SAndroid Build Coastguard Worker // Alpha enabled clusters are automatically deleted thirty days after 2035*d5c09012SAndroid Build Coastguard Worker // creation. 2036*d5c09012SAndroid Build Coastguard Worker bool enable_kubernetes_alpha = 14; 2037*d5c09012SAndroid Build Coastguard Worker 2038*d5c09012SAndroid Build Coastguard Worker // Kubernetes open source beta apis enabled on the cluster. Only beta apis. 2039*d5c09012SAndroid Build Coastguard Worker K8sBetaAPIConfig enable_k8s_beta_apis = 143; 2040*d5c09012SAndroid Build Coastguard Worker 2041*d5c09012SAndroid Build Coastguard Worker // The resource labels for the cluster to use to annotate any related 2042*d5c09012SAndroid Build Coastguard Worker // Google Compute Engine resources. 2043*d5c09012SAndroid Build Coastguard Worker map<string, string> resource_labels = 15; 2044*d5c09012SAndroid Build Coastguard Worker 2045*d5c09012SAndroid Build Coastguard Worker // The fingerprint of the set of labels for this cluster. 2046*d5c09012SAndroid Build Coastguard Worker string label_fingerprint = 16; 2047*d5c09012SAndroid Build Coastguard Worker 2048*d5c09012SAndroid Build Coastguard Worker // Configuration for the legacy ABAC authorization mode. 2049*d5c09012SAndroid Build Coastguard Worker LegacyAbac legacy_abac = 18; 2050*d5c09012SAndroid Build Coastguard Worker 2051*d5c09012SAndroid Build Coastguard Worker // Configuration options for the NetworkPolicy feature. 2052*d5c09012SAndroid Build Coastguard Worker NetworkPolicy network_policy = 19; 2053*d5c09012SAndroid Build Coastguard Worker 2054*d5c09012SAndroid Build Coastguard Worker // Configuration for cluster IP allocation. 2055*d5c09012SAndroid Build Coastguard Worker IPAllocationPolicy ip_allocation_policy = 20; 2056*d5c09012SAndroid Build Coastguard Worker 2057*d5c09012SAndroid Build Coastguard Worker // The configuration options for master authorized networks feature. 2058*d5c09012SAndroid Build Coastguard Worker MasterAuthorizedNetworksConfig master_authorized_networks_config = 22; 2059*d5c09012SAndroid Build Coastguard Worker 2060*d5c09012SAndroid Build Coastguard Worker // Configure the maintenance policy for this cluster. 2061*d5c09012SAndroid Build Coastguard Worker MaintenancePolicy maintenance_policy = 23; 2062*d5c09012SAndroid Build Coastguard Worker 2063*d5c09012SAndroid Build Coastguard Worker // Configuration for Binary Authorization. 2064*d5c09012SAndroid Build Coastguard Worker BinaryAuthorization binary_authorization = 24; 2065*d5c09012SAndroid Build Coastguard Worker 2066*d5c09012SAndroid Build Coastguard Worker // Configuration for the PodSecurityPolicy feature. 2067*d5c09012SAndroid Build Coastguard Worker PodSecurityPolicyConfig pod_security_policy_config = 25; 2068*d5c09012SAndroid Build Coastguard Worker 2069*d5c09012SAndroid Build Coastguard Worker // Cluster-level autoscaling configuration. 2070*d5c09012SAndroid Build Coastguard Worker ClusterAutoscaling autoscaling = 26; 2071*d5c09012SAndroid Build Coastguard Worker 2072*d5c09012SAndroid Build Coastguard Worker // Configuration for cluster networking. 2073*d5c09012SAndroid Build Coastguard Worker NetworkConfig network_config = 27; 2074*d5c09012SAndroid Build Coastguard Worker 2075*d5c09012SAndroid Build Coastguard Worker // If this is a private cluster setup. Private clusters are clusters that, by 2076*d5c09012SAndroid Build Coastguard Worker // default have no external IP addresses on the nodes and where nodes and the 2077*d5c09012SAndroid Build Coastguard Worker // master communicate over private IP addresses. 2078*d5c09012SAndroid Build Coastguard Worker // This field is deprecated, use private_cluster_config.enable_private_nodes 2079*d5c09012SAndroid Build Coastguard Worker // instead. 2080*d5c09012SAndroid Build Coastguard Worker bool private_cluster = 28 [deprecated = true]; 2081*d5c09012SAndroid Build Coastguard Worker 2082*d5c09012SAndroid Build Coastguard Worker // The IP prefix in CIDR notation to use for the hosted master network. 2083*d5c09012SAndroid Build Coastguard Worker // This prefix will be used for assigning private IP addresses to the 2084*d5c09012SAndroid Build Coastguard Worker // master or set of masters, as well as the ILB VIP. 2085*d5c09012SAndroid Build Coastguard Worker // This field is deprecated, use 2086*d5c09012SAndroid Build Coastguard Worker // private_cluster_config.master_ipv4_cidr_block instead. 2087*d5c09012SAndroid Build Coastguard Worker string master_ipv4_cidr_block = 29 [deprecated = true]; 2088*d5c09012SAndroid Build Coastguard Worker 2089*d5c09012SAndroid Build Coastguard Worker // The default constraint on the maximum number of pods that can be run 2090*d5c09012SAndroid Build Coastguard Worker // simultaneously on a node in the node pool of this cluster. Only honored 2091*d5c09012SAndroid Build Coastguard Worker // if cluster created with IP Alias support. 2092*d5c09012SAndroid Build Coastguard Worker MaxPodsConstraint default_max_pods_constraint = 30; 2093*d5c09012SAndroid Build Coastguard Worker 2094*d5c09012SAndroid Build Coastguard Worker // Configuration for exporting resource usages. Resource usage export is 2095*d5c09012SAndroid Build Coastguard Worker // disabled when this config unspecified. 2096*d5c09012SAndroid Build Coastguard Worker ResourceUsageExportConfig resource_usage_export_config = 33; 2097*d5c09012SAndroid Build Coastguard Worker 2098*d5c09012SAndroid Build Coastguard Worker // Configuration controlling RBAC group membership information. 2099*d5c09012SAndroid Build Coastguard Worker AuthenticatorGroupsConfig authenticator_groups_config = 34; 2100*d5c09012SAndroid Build Coastguard Worker 2101*d5c09012SAndroid Build Coastguard Worker // Configuration for private cluster. 2102*d5c09012SAndroid Build Coastguard Worker PrivateClusterConfig private_cluster_config = 37; 2103*d5c09012SAndroid Build Coastguard Worker 2104*d5c09012SAndroid Build Coastguard Worker // Cluster-level Vertical Pod Autoscaling configuration. 2105*d5c09012SAndroid Build Coastguard Worker VerticalPodAutoscaling vertical_pod_autoscaling = 39; 2106*d5c09012SAndroid Build Coastguard Worker 2107*d5c09012SAndroid Build Coastguard Worker // Shielded Nodes configuration. 2108*d5c09012SAndroid Build Coastguard Worker ShieldedNodes shielded_nodes = 40; 2109*d5c09012SAndroid Build Coastguard Worker 2110*d5c09012SAndroid Build Coastguard Worker // Release channel configuration. If left unspecified on cluster creation and 2111*d5c09012SAndroid Build Coastguard Worker // a version is specified, the cluster is enrolled in the most mature release 2112*d5c09012SAndroid Build Coastguard Worker // channel where the version is available (first checking STABLE, then 2113*d5c09012SAndroid Build Coastguard Worker // REGULAR, and finally RAPID). Otherwise, if no release channel 2114*d5c09012SAndroid Build Coastguard Worker // configuration and no version is specified, the cluster is enrolled in the 2115*d5c09012SAndroid Build Coastguard Worker // REGULAR channel with its default version. 2116*d5c09012SAndroid Build Coastguard Worker ReleaseChannel release_channel = 41; 2117*d5c09012SAndroid Build Coastguard Worker 2118*d5c09012SAndroid Build Coastguard Worker // Configuration for the use of Kubernetes Service Accounts in GCP IAM 2119*d5c09012SAndroid Build Coastguard Worker // policies. 2120*d5c09012SAndroid Build Coastguard Worker WorkloadIdentityConfig workload_identity_config = 43; 2121*d5c09012SAndroid Build Coastguard Worker 2122*d5c09012SAndroid Build Coastguard Worker // Configuration for issuance of mTLS keys and certificates to Kubernetes 2123*d5c09012SAndroid Build Coastguard Worker // pods. 2124*d5c09012SAndroid Build Coastguard Worker WorkloadCertificates workload_certificates = 52; 2125*d5c09012SAndroid Build Coastguard Worker 2126*d5c09012SAndroid Build Coastguard Worker // Configuration for issuance of mTLS keys and certificates to Kubernetes 2127*d5c09012SAndroid Build Coastguard Worker // pods. 2128*d5c09012SAndroid Build Coastguard Worker MeshCertificates mesh_certificates = 67; 2129*d5c09012SAndroid Build Coastguard Worker 2130*d5c09012SAndroid Build Coastguard Worker // Configuration for direct-path (via ALTS) with workload identity. 2131*d5c09012SAndroid Build Coastguard Worker WorkloadALTSConfig workload_alts_config = 53; 2132*d5c09012SAndroid Build Coastguard Worker 2133*d5c09012SAndroid Build Coastguard Worker // Configuration for the fine-grained cost management feature. 2134*d5c09012SAndroid Build Coastguard Worker CostManagementConfig cost_management_config = 45; 2135*d5c09012SAndroid Build Coastguard Worker 2136*d5c09012SAndroid Build Coastguard Worker // Telemetry integration for the cluster. 2137*d5c09012SAndroid Build Coastguard Worker ClusterTelemetry cluster_telemetry = 46; 2138*d5c09012SAndroid Build Coastguard Worker 2139*d5c09012SAndroid Build Coastguard Worker // Configuration for Cloud TPU support; 2140*d5c09012SAndroid Build Coastguard Worker TpuConfig tpu_config = 47; 2141*d5c09012SAndroid Build Coastguard Worker 2142*d5c09012SAndroid Build Coastguard Worker // Notification configuration of the cluster. 2143*d5c09012SAndroid Build Coastguard Worker NotificationConfig notification_config = 49; 2144*d5c09012SAndroid Build Coastguard Worker 2145*d5c09012SAndroid Build Coastguard Worker // Configuration of Confidential Nodes. 2146*d5c09012SAndroid Build Coastguard Worker // All the nodes in the cluster will be Confidential VM once enabled. 2147*d5c09012SAndroid Build Coastguard Worker ConfidentialNodes confidential_nodes = 50; 2148*d5c09012SAndroid Build Coastguard Worker 2149*d5c09012SAndroid Build Coastguard Worker // Configuration for Identity Service component. 2150*d5c09012SAndroid Build Coastguard Worker IdentityServiceConfig identity_service_config = 54; 2151*d5c09012SAndroid Build Coastguard Worker 2152*d5c09012SAndroid Build Coastguard Worker // [Output only] Server-defined URL for the resource. 2153*d5c09012SAndroid Build Coastguard Worker string self_link = 100; 2154*d5c09012SAndroid Build Coastguard Worker 2155*d5c09012SAndroid Build Coastguard Worker // [Output only] The name of the Google Compute Engine 2156*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 2157*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field is deprecated, use location instead. 2158*d5c09012SAndroid Build Coastguard Worker string zone = 101 [deprecated = true]; 2159*d5c09012SAndroid Build Coastguard Worker 2160*d5c09012SAndroid Build Coastguard Worker // [Output only] The IP address of this cluster's master endpoint. 2161*d5c09012SAndroid Build Coastguard Worker // The endpoint can be accessed from the internet at 2162*d5c09012SAndroid Build Coastguard Worker // `https://username:password@endpoint/`. 2163*d5c09012SAndroid Build Coastguard Worker // 2164*d5c09012SAndroid Build Coastguard Worker // See the `masterAuth` property of this resource for username and 2165*d5c09012SAndroid Build Coastguard Worker // password information. 2166*d5c09012SAndroid Build Coastguard Worker string endpoint = 102; 2167*d5c09012SAndroid Build Coastguard Worker 2168*d5c09012SAndroid Build Coastguard Worker // The initial Kubernetes version for this cluster. Valid versions are those 2169*d5c09012SAndroid Build Coastguard Worker // found in validMasterVersions returned by getServerConfig. The version can 2170*d5c09012SAndroid Build Coastguard Worker // be upgraded over time; such upgrades are reflected in 2171*d5c09012SAndroid Build Coastguard Worker // currentMasterVersion and currentNodeVersion. 2172*d5c09012SAndroid Build Coastguard Worker // 2173*d5c09012SAndroid Build Coastguard Worker // Users may specify either explicit versions offered by 2174*d5c09012SAndroid Build Coastguard Worker // Kubernetes Engine or version aliases, which have the following behavior: 2175*d5c09012SAndroid Build Coastguard Worker // 2176*d5c09012SAndroid Build Coastguard Worker // - "latest": picks the highest valid Kubernetes version 2177*d5c09012SAndroid Build Coastguard Worker // - "1.X": picks the highest valid patch+gke.N patch in the 1.X version 2178*d5c09012SAndroid Build Coastguard Worker // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version 2179*d5c09012SAndroid Build Coastguard Worker // - "1.X.Y-gke.N": picks an explicit Kubernetes version 2180*d5c09012SAndroid Build Coastguard Worker // - "","-": picks the default Kubernetes version 2181*d5c09012SAndroid Build Coastguard Worker string initial_cluster_version = 103; 2182*d5c09012SAndroid Build Coastguard Worker 2183*d5c09012SAndroid Build Coastguard Worker // [Output only] The current software version of the master endpoint. 2184*d5c09012SAndroid Build Coastguard Worker string current_master_version = 104; 2185*d5c09012SAndroid Build Coastguard Worker 2186*d5c09012SAndroid Build Coastguard Worker // [Output only] Deprecated, use 2187*d5c09012SAndroid Build Coastguard Worker // [NodePool.version](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1beta1/projects.locations.clusters.nodePools) 2188*d5c09012SAndroid Build Coastguard Worker // instead. The current version of the node software components. 2189*d5c09012SAndroid Build Coastguard Worker // If they are currently at multiple versions because they're in the process 2190*d5c09012SAndroid Build Coastguard Worker // of being upgraded, this reflects the minimum version of all nodes. 2191*d5c09012SAndroid Build Coastguard Worker string current_node_version = 105 [deprecated = true]; 2192*d5c09012SAndroid Build Coastguard Worker 2193*d5c09012SAndroid Build Coastguard Worker // [Output only] The time the cluster was created, in 2194*d5c09012SAndroid Build Coastguard Worker // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. 2195*d5c09012SAndroid Build Coastguard Worker string create_time = 106; 2196*d5c09012SAndroid Build Coastguard Worker 2197*d5c09012SAndroid Build Coastguard Worker // [Output only] The current status of this cluster. 2198*d5c09012SAndroid Build Coastguard Worker Status status = 107; 2199*d5c09012SAndroid Build Coastguard Worker 2200*d5c09012SAndroid Build Coastguard Worker // [Output only] Deprecated. Use conditions instead. 2201*d5c09012SAndroid Build Coastguard Worker // Additional information about the current status of this 2202*d5c09012SAndroid Build Coastguard Worker // cluster, if available. 2203*d5c09012SAndroid Build Coastguard Worker string status_message = 108 [deprecated = true]; 2204*d5c09012SAndroid Build Coastguard Worker 2205*d5c09012SAndroid Build Coastguard Worker // [Output only] The size of the address space on each node for hosting 2206*d5c09012SAndroid Build Coastguard Worker // containers. This is provisioned from within the `container_ipv4_cidr` 2207*d5c09012SAndroid Build Coastguard Worker // range. This field will only be set when cluster is in route-based network 2208*d5c09012SAndroid Build Coastguard Worker // mode. 2209*d5c09012SAndroid Build Coastguard Worker int32 node_ipv4_cidr_size = 109; 2210*d5c09012SAndroid Build Coastguard Worker 2211*d5c09012SAndroid Build Coastguard Worker // [Output only] The IP address range of the Kubernetes services in 2212*d5c09012SAndroid Build Coastguard Worker // this cluster, in 2213*d5c09012SAndroid Build Coastguard Worker // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) 2214*d5c09012SAndroid Build Coastguard Worker // notation (e.g. `1.2.3.4/29`). Service addresses are 2215*d5c09012SAndroid Build Coastguard Worker // typically put in the last `/16` from the container CIDR. 2216*d5c09012SAndroid Build Coastguard Worker string services_ipv4_cidr = 110; 2217*d5c09012SAndroid Build Coastguard Worker 2218*d5c09012SAndroid Build Coastguard Worker // Deprecated. Use node_pools.instance_group_urls. 2219*d5c09012SAndroid Build Coastguard Worker repeated string instance_group_urls = 111 [deprecated = true]; 2220*d5c09012SAndroid Build Coastguard Worker 2221*d5c09012SAndroid Build Coastguard Worker // [Output only] The number of nodes currently in the cluster. Deprecated. 2222*d5c09012SAndroid Build Coastguard Worker // Call Kubernetes API directly to retrieve node information. 2223*d5c09012SAndroid Build Coastguard Worker int32 current_node_count = 112 [deprecated = true]; 2224*d5c09012SAndroid Build Coastguard Worker 2225*d5c09012SAndroid Build Coastguard Worker // [Output only] The time the cluster will be automatically 2226*d5c09012SAndroid Build Coastguard Worker // deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. 2227*d5c09012SAndroid Build Coastguard Worker string expire_time = 113; 2228*d5c09012SAndroid Build Coastguard Worker 2229*d5c09012SAndroid Build Coastguard Worker // [Output only] The name of the Google Compute Engine 2230*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available) 2231*d5c09012SAndroid Build Coastguard Worker // or 2232*d5c09012SAndroid Build Coastguard Worker // [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available) 2233*d5c09012SAndroid Build Coastguard Worker // in which the cluster resides. 2234*d5c09012SAndroid Build Coastguard Worker string location = 114; 2235*d5c09012SAndroid Build Coastguard Worker 2236*d5c09012SAndroid Build Coastguard Worker // Enable the ability to use Cloud TPUs in this cluster. 2237*d5c09012SAndroid Build Coastguard Worker // This field is deprecated, use tpu_config.enabled instead. 2238*d5c09012SAndroid Build Coastguard Worker bool enable_tpu = 115; 2239*d5c09012SAndroid Build Coastguard Worker 2240*d5c09012SAndroid Build Coastguard Worker // [Output only] The IP address range of the Cloud TPUs in this cluster, in 2241*d5c09012SAndroid Build Coastguard Worker // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) 2242*d5c09012SAndroid Build Coastguard Worker // notation (e.g. `1.2.3.4/29`). 2243*d5c09012SAndroid Build Coastguard Worker string tpu_ipv4_cidr_block = 116; 2244*d5c09012SAndroid Build Coastguard Worker 2245*d5c09012SAndroid Build Coastguard Worker // Configuration of etcd encryption. 2246*d5c09012SAndroid Build Coastguard Worker DatabaseEncryption database_encryption = 38; 2247*d5c09012SAndroid Build Coastguard Worker 2248*d5c09012SAndroid Build Coastguard Worker // Which conditions caused the current cluster state. 2249*d5c09012SAndroid Build Coastguard Worker repeated StatusCondition conditions = 118; 2250*d5c09012SAndroid Build Coastguard Worker 2251*d5c09012SAndroid Build Coastguard Worker // Configuration for master components. 2252*d5c09012SAndroid Build Coastguard Worker Master master = 124; 2253*d5c09012SAndroid Build Coastguard Worker 2254*d5c09012SAndroid Build Coastguard Worker // Autopilot configuration for the cluster. 2255*d5c09012SAndroid Build Coastguard Worker Autopilot autopilot = 128; 2256*d5c09012SAndroid Build Coastguard Worker 2257*d5c09012SAndroid Build Coastguard Worker // Output only. Unique id for the cluster. 2258*d5c09012SAndroid Build Coastguard Worker string id = 129 [(google.api.field_behavior) = OUTPUT_ONLY]; 2259*d5c09012SAndroid Build Coastguard Worker 2260*d5c09012SAndroid Build Coastguard Worker // Default NodePool settings for the entire cluster. These settings are 2261*d5c09012SAndroid Build Coastguard Worker // overridden if specified on the specific NodePool object. 2262*d5c09012SAndroid Build Coastguard Worker optional NodePoolDefaults node_pool_defaults = 131; 2263*d5c09012SAndroid Build Coastguard Worker 2264*d5c09012SAndroid Build Coastguard Worker // Logging configuration for the cluster. 2265*d5c09012SAndroid Build Coastguard Worker LoggingConfig logging_config = 132; 2266*d5c09012SAndroid Build Coastguard Worker 2267*d5c09012SAndroid Build Coastguard Worker // Monitoring configuration for the cluster. 2268*d5c09012SAndroid Build Coastguard Worker MonitoringConfig monitoring_config = 133; 2269*d5c09012SAndroid Build Coastguard Worker 2270*d5c09012SAndroid Build Coastguard Worker // Node pool configs that apply to all auto-provisioned node pools 2271*d5c09012SAndroid Build Coastguard Worker // in autopilot clusters and node auto-provisioning enabled clusters. 2272*d5c09012SAndroid Build Coastguard Worker NodePoolAutoConfig node_pool_auto_config = 136; 2273*d5c09012SAndroid Build Coastguard Worker 2274*d5c09012SAndroid Build Coastguard Worker // Deprecated: Use SecurityPostureConfig instead. 2275*d5c09012SAndroid Build Coastguard Worker // Enable/Disable Protect API features for the cluster. 2276*d5c09012SAndroid Build Coastguard Worker optional ProtectConfig protect_config = 137 [deprecated = true]; 2277*d5c09012SAndroid Build Coastguard Worker 2278*d5c09012SAndroid Build Coastguard Worker // This checksum is computed by the server based on the value of cluster 2279*d5c09012SAndroid Build Coastguard Worker // fields, and may be sent on update requests to ensure the client has an 2280*d5c09012SAndroid Build Coastguard Worker // up-to-date value before proceeding. 2281*d5c09012SAndroid Build Coastguard Worker string etag = 139; 2282*d5c09012SAndroid Build Coastguard Worker 2283*d5c09012SAndroid Build Coastguard Worker // Fleet information for the cluster. 2284*d5c09012SAndroid Build Coastguard Worker Fleet fleet = 140; 2285*d5c09012SAndroid Build Coastguard Worker 2286*d5c09012SAndroid Build Coastguard Worker // Enable/Disable Security Posture API features for the cluster. 2287*d5c09012SAndroid Build Coastguard Worker SecurityPostureConfig security_posture_config = 145; 2288*d5c09012SAndroid Build Coastguard Worker 2289*d5c09012SAndroid Build Coastguard Worker // GKE Enterprise Configuration. 2290*d5c09012SAndroid Build Coastguard Worker EnterpriseConfig enterprise_config = 149; 2291*d5c09012SAndroid Build Coastguard Worker 2292*d5c09012SAndroid Build Coastguard Worker // Secret CSI driver configuration. 2293*d5c09012SAndroid Build Coastguard Worker SecretManagerConfig secret_manager_config = 150; 2294*d5c09012SAndroid Build Coastguard Worker} 2295*d5c09012SAndroid Build Coastguard Worker 2296*d5c09012SAndroid Build Coastguard Worker// Kubernetes open source beta apis enabled on the cluster. 2297*d5c09012SAndroid Build Coastguard Workermessage K8sBetaAPIConfig { 2298*d5c09012SAndroid Build Coastguard Worker // api name, e.g. storage.k8s.io/v1beta1/csistoragecapacities. 2299*d5c09012SAndroid Build Coastguard Worker repeated string enabled_apis = 1; 2300*d5c09012SAndroid Build Coastguard Worker} 2301*d5c09012SAndroid Build Coastguard Worker 2302*d5c09012SAndroid Build Coastguard Worker// WorkloadConfig defines the flags to enable or disable the 2303*d5c09012SAndroid Build Coastguard Worker// workload configurations for the cluster. 2304*d5c09012SAndroid Build Coastguard Workermessage WorkloadConfig { 2305*d5c09012SAndroid Build Coastguard Worker // Mode defines how to audit the workload configs. 2306*d5c09012SAndroid Build Coastguard Worker enum Mode { 2307*d5c09012SAndroid Build Coastguard Worker // Default value meaning that no mode has been specified. 2308*d5c09012SAndroid Build Coastguard Worker MODE_UNSPECIFIED = 0; 2309*d5c09012SAndroid Build Coastguard Worker 2310*d5c09012SAndroid Build Coastguard Worker // This disables Workload Configuration auditing on the cluster, 2311*d5c09012SAndroid Build Coastguard Worker // meaning that nothing is surfaced. 2312*d5c09012SAndroid Build Coastguard Worker DISABLED = 1; 2313*d5c09012SAndroid Build Coastguard Worker 2314*d5c09012SAndroid Build Coastguard Worker // Applies the default set of policy auditing to a cluster's workloads. 2315*d5c09012SAndroid Build Coastguard Worker BASIC = 4; 2316*d5c09012SAndroid Build Coastguard Worker 2317*d5c09012SAndroid Build Coastguard Worker // Surfaces configurations that are not in line with the 2318*d5c09012SAndroid Build Coastguard Worker // Pod Security Standard Baseline policy. 2319*d5c09012SAndroid Build Coastguard Worker BASELINE = 2 [deprecated = true]; 2320*d5c09012SAndroid Build Coastguard Worker 2321*d5c09012SAndroid Build Coastguard Worker // Surfaces configurations that are not in line with the 2322*d5c09012SAndroid Build Coastguard Worker // Pod Security Standard Restricted policy. 2323*d5c09012SAndroid Build Coastguard Worker RESTRICTED = 3 [deprecated = true]; 2324*d5c09012SAndroid Build Coastguard Worker } 2325*d5c09012SAndroid Build Coastguard Worker 2326*d5c09012SAndroid Build Coastguard Worker // Sets which mode of auditing should be used for the cluster's workloads. 2327*d5c09012SAndroid Build Coastguard Worker optional Mode audit_mode = 1; 2328*d5c09012SAndroid Build Coastguard Worker} 2329*d5c09012SAndroid Build Coastguard Worker 2330*d5c09012SAndroid Build Coastguard Worker// ProtectConfig defines the flags needed to enable/disable features for the 2331*d5c09012SAndroid Build Coastguard Worker// Protect API. 2332*d5c09012SAndroid Build Coastguard Workermessage ProtectConfig { 2333*d5c09012SAndroid Build Coastguard Worker // WorkloadVulnerabilityMode defines mode to perform vulnerability scanning. 2334*d5c09012SAndroid Build Coastguard Worker enum WorkloadVulnerabilityMode { 2335*d5c09012SAndroid Build Coastguard Worker // Default value not specified. 2336*d5c09012SAndroid Build Coastguard Worker WORKLOAD_VULNERABILITY_MODE_UNSPECIFIED = 0; 2337*d5c09012SAndroid Build Coastguard Worker 2338*d5c09012SAndroid Build Coastguard Worker // Disables Workload Vulnerability Scanning feature on the cluster. 2339*d5c09012SAndroid Build Coastguard Worker DISABLED = 1; 2340*d5c09012SAndroid Build Coastguard Worker 2341*d5c09012SAndroid Build Coastguard Worker // Applies basic vulnerability scanning settings for cluster workloads. 2342*d5c09012SAndroid Build Coastguard Worker BASIC = 2; 2343*d5c09012SAndroid Build Coastguard Worker } 2344*d5c09012SAndroid Build Coastguard Worker 2345*d5c09012SAndroid Build Coastguard Worker // WorkloadConfig defines which actions are enabled for a cluster's workload 2346*d5c09012SAndroid Build Coastguard Worker // configurations. 2347*d5c09012SAndroid Build Coastguard Worker optional WorkloadConfig workload_config = 1; 2348*d5c09012SAndroid Build Coastguard Worker 2349*d5c09012SAndroid Build Coastguard Worker // Sets which mode to use for Protect workload vulnerability scanning feature. 2350*d5c09012SAndroid Build Coastguard Worker optional WorkloadVulnerabilityMode workload_vulnerability_mode = 2; 2351*d5c09012SAndroid Build Coastguard Worker} 2352*d5c09012SAndroid Build Coastguard Worker 2353*d5c09012SAndroid Build Coastguard Worker// SecurityPostureConfig defines the flags needed to enable/disable features for 2354*d5c09012SAndroid Build Coastguard Worker// the Security Posture API. 2355*d5c09012SAndroid Build Coastguard Workermessage SecurityPostureConfig { 2356*d5c09012SAndroid Build Coastguard Worker // Mode defines enablement mode for GKE Security posture features. 2357*d5c09012SAndroid Build Coastguard Worker enum Mode { 2358*d5c09012SAndroid Build Coastguard Worker // Default value not specified. 2359*d5c09012SAndroid Build Coastguard Worker MODE_UNSPECIFIED = 0; 2360*d5c09012SAndroid Build Coastguard Worker 2361*d5c09012SAndroid Build Coastguard Worker // Disables Security Posture features on the cluster. 2362*d5c09012SAndroid Build Coastguard Worker DISABLED = 1; 2363*d5c09012SAndroid Build Coastguard Worker 2364*d5c09012SAndroid Build Coastguard Worker // Applies Security Posture features on the cluster. 2365*d5c09012SAndroid Build Coastguard Worker BASIC = 2; 2366*d5c09012SAndroid Build Coastguard Worker } 2367*d5c09012SAndroid Build Coastguard Worker 2368*d5c09012SAndroid Build Coastguard Worker // VulnerabilityMode defines enablement mode for vulnerability scanning. 2369*d5c09012SAndroid Build Coastguard Worker enum VulnerabilityMode { 2370*d5c09012SAndroid Build Coastguard Worker // Default value not specified. 2371*d5c09012SAndroid Build Coastguard Worker VULNERABILITY_MODE_UNSPECIFIED = 0; 2372*d5c09012SAndroid Build Coastguard Worker 2373*d5c09012SAndroid Build Coastguard Worker // Disables vulnerability scanning on the cluster. 2374*d5c09012SAndroid Build Coastguard Worker VULNERABILITY_DISABLED = 1; 2375*d5c09012SAndroid Build Coastguard Worker 2376*d5c09012SAndroid Build Coastguard Worker // Applies basic vulnerability scanning on the cluster. 2377*d5c09012SAndroid Build Coastguard Worker VULNERABILITY_BASIC = 2; 2378*d5c09012SAndroid Build Coastguard Worker 2379*d5c09012SAndroid Build Coastguard Worker // Applies the Security Posture's vulnerability on cluster Enterprise level 2380*d5c09012SAndroid Build Coastguard Worker // features. 2381*d5c09012SAndroid Build Coastguard Worker VULNERABILITY_ENTERPRISE = 3; 2382*d5c09012SAndroid Build Coastguard Worker } 2383*d5c09012SAndroid Build Coastguard Worker 2384*d5c09012SAndroid Build Coastguard Worker // Sets which mode to use for Security Posture features. 2385*d5c09012SAndroid Build Coastguard Worker optional Mode mode = 1; 2386*d5c09012SAndroid Build Coastguard Worker 2387*d5c09012SAndroid Build Coastguard Worker // Sets which mode to use for vulnerability scanning. 2388*d5c09012SAndroid Build Coastguard Worker optional VulnerabilityMode vulnerability_mode = 2; 2389*d5c09012SAndroid Build Coastguard Worker} 2390*d5c09012SAndroid Build Coastguard Worker 2391*d5c09012SAndroid Build Coastguard Worker// Subset of Nodepool message that has defaults. 2392*d5c09012SAndroid Build Coastguard Workermessage NodePoolDefaults { 2393*d5c09012SAndroid Build Coastguard Worker // Subset of NodeConfig message that has defaults. 2394*d5c09012SAndroid Build Coastguard Worker NodeConfigDefaults node_config_defaults = 1; 2395*d5c09012SAndroid Build Coastguard Worker} 2396*d5c09012SAndroid Build Coastguard Worker 2397*d5c09012SAndroid Build Coastguard Worker// Subset of NodeConfig message that has defaults. 2398*d5c09012SAndroid Build Coastguard Workermessage NodeConfigDefaults { 2399*d5c09012SAndroid Build Coastguard Worker // GCFS (Google Container File System, also known as Riptide) options. 2400*d5c09012SAndroid Build Coastguard Worker GcfsConfig gcfs_config = 1; 2401*d5c09012SAndroid Build Coastguard Worker 2402*d5c09012SAndroid Build Coastguard Worker // Logging configuration for node pools. 2403*d5c09012SAndroid Build Coastguard Worker NodePoolLoggingConfig logging_config = 3; 2404*d5c09012SAndroid Build Coastguard Worker 2405*d5c09012SAndroid Build Coastguard Worker // HostMaintenancePolicy contains the desired maintenance policy for the 2406*d5c09012SAndroid Build Coastguard Worker // Google Compute Engine hosts. 2407*d5c09012SAndroid Build Coastguard Worker HostMaintenancePolicy host_maintenance_policy = 5; 2408*d5c09012SAndroid Build Coastguard Worker} 2409*d5c09012SAndroid Build Coastguard Worker 2410*d5c09012SAndroid Build Coastguard Worker// node pool configs that apply to all auto-provisioned node pools 2411*d5c09012SAndroid Build Coastguard Worker// in autopilot clusters and node auto-provisioning enabled clusters 2412*d5c09012SAndroid Build Coastguard Workermessage NodePoolAutoConfig { 2413*d5c09012SAndroid Build Coastguard Worker // The list of instance tags applied to all nodes. Tags are used to identify 2414*d5c09012SAndroid Build Coastguard Worker // valid sources or targets for network firewalls and are specified by 2415*d5c09012SAndroid Build Coastguard Worker // the client during cluster creation. Each tag within the list 2416*d5c09012SAndroid Build Coastguard Worker // must comply with RFC1035. 2417*d5c09012SAndroid Build Coastguard Worker NetworkTags network_tags = 1; 2418*d5c09012SAndroid Build Coastguard Worker 2419*d5c09012SAndroid Build Coastguard Worker // Resource manager tag keys and values to be attached to the nodes 2420*d5c09012SAndroid Build Coastguard Worker // for managing Compute Engine firewalls using Network Firewall Policies. 2421*d5c09012SAndroid Build Coastguard Worker ResourceManagerTags resource_manager_tags = 2; 2422*d5c09012SAndroid Build Coastguard Worker} 2423*d5c09012SAndroid Build Coastguard Worker 2424*d5c09012SAndroid Build Coastguard Worker// ClusterUpdate describes an update to the cluster. Exactly one update can 2425*d5c09012SAndroid Build Coastguard Worker// be applied to a cluster with each request, so at most one field can be 2426*d5c09012SAndroid Build Coastguard Worker// provided. 2427*d5c09012SAndroid Build Coastguard Workermessage ClusterUpdate { 2428*d5c09012SAndroid Build Coastguard Worker // The Kubernetes version to change the nodes to (typically an 2429*d5c09012SAndroid Build Coastguard Worker // upgrade). 2430*d5c09012SAndroid Build Coastguard Worker // 2431*d5c09012SAndroid Build Coastguard Worker // Users may specify either explicit versions offered by 2432*d5c09012SAndroid Build Coastguard Worker // Kubernetes Engine or version aliases, which have the following behavior: 2433*d5c09012SAndroid Build Coastguard Worker // 2434*d5c09012SAndroid Build Coastguard Worker // - "latest": picks the highest valid Kubernetes version 2435*d5c09012SAndroid Build Coastguard Worker // - "1.X": picks the highest valid patch+gke.N patch in the 1.X version 2436*d5c09012SAndroid Build Coastguard Worker // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version 2437*d5c09012SAndroid Build Coastguard Worker // - "1.X.Y-gke.N": picks an explicit Kubernetes version 2438*d5c09012SAndroid Build Coastguard Worker // - "-": picks the Kubernetes master version 2439*d5c09012SAndroid Build Coastguard Worker string desired_node_version = 4; 2440*d5c09012SAndroid Build Coastguard Worker 2441*d5c09012SAndroid Build Coastguard Worker // The monitoring service the cluster should use to write metrics. 2442*d5c09012SAndroid Build Coastguard Worker // Currently available options: 2443*d5c09012SAndroid Build Coastguard Worker // 2444*d5c09012SAndroid Build Coastguard Worker // * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring 2445*d5c09012SAndroid Build Coastguard Worker // service with a Kubernetes-native resource model 2446*d5c09012SAndroid Build Coastguard Worker // * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no 2447*d5c09012SAndroid Build Coastguard Worker // longer available as of GKE 1.15). 2448*d5c09012SAndroid Build Coastguard Worker // * `none` - No metrics will be exported from the cluster. 2449*d5c09012SAndroid Build Coastguard Worker // 2450*d5c09012SAndroid Build Coastguard Worker // If left as an empty string,`monitoring.googleapis.com/kubernetes` will be 2451*d5c09012SAndroid Build Coastguard Worker // used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions. 2452*d5c09012SAndroid Build Coastguard Worker string desired_monitoring_service = 5; 2453*d5c09012SAndroid Build Coastguard Worker 2454*d5c09012SAndroid Build Coastguard Worker // Configurations for the various addons available to run in the cluster. 2455*d5c09012SAndroid Build Coastguard Worker AddonsConfig desired_addons_config = 6; 2456*d5c09012SAndroid Build Coastguard Worker 2457*d5c09012SAndroid Build Coastguard Worker // The node pool to be upgraded. This field is mandatory if 2458*d5c09012SAndroid Build Coastguard Worker // "desired_node_version", "desired_image_family", 2459*d5c09012SAndroid Build Coastguard Worker // "desired_node_pool_autoscaling", or "desired_workload_metadata_config" 2460*d5c09012SAndroid Build Coastguard Worker // is specified and there is more than one node pool on the cluster. 2461*d5c09012SAndroid Build Coastguard Worker string desired_node_pool_id = 7; 2462*d5c09012SAndroid Build Coastguard Worker 2463*d5c09012SAndroid Build Coastguard Worker // The desired image type for the node pool. 2464*d5c09012SAndroid Build Coastguard Worker // NOTE: Set the "desired_node_pool" field as well. 2465*d5c09012SAndroid Build Coastguard Worker string desired_image_type = 8; 2466*d5c09012SAndroid Build Coastguard Worker 2467*d5c09012SAndroid Build Coastguard Worker // Autoscaler configuration for the node pool specified in 2468*d5c09012SAndroid Build Coastguard Worker // desired_node_pool_id. If there is only one pool in the 2469*d5c09012SAndroid Build Coastguard Worker // cluster and desired_node_pool_id is not provided then 2470*d5c09012SAndroid Build Coastguard Worker // the change applies to that single node pool. 2471*d5c09012SAndroid Build Coastguard Worker NodePoolAutoscaling desired_node_pool_autoscaling = 9; 2472*d5c09012SAndroid Build Coastguard Worker 2473*d5c09012SAndroid Build Coastguard Worker // The desired list of Google Compute Engine 2474*d5c09012SAndroid Build Coastguard Worker // [zones](https://cloud.google.com/compute/docs/zones#available) in which the 2475*d5c09012SAndroid Build Coastguard Worker // cluster's nodes should be located. 2476*d5c09012SAndroid Build Coastguard Worker // 2477*d5c09012SAndroid Build Coastguard Worker // This list must always include the cluster's primary zone. 2478*d5c09012SAndroid Build Coastguard Worker // 2479*d5c09012SAndroid Build Coastguard Worker // Warning: changing cluster locations will update the locations of all node 2480*d5c09012SAndroid Build Coastguard Worker // pools and will result in nodes being added and/or removed. 2481*d5c09012SAndroid Build Coastguard Worker repeated string desired_locations = 10; 2482*d5c09012SAndroid Build Coastguard Worker 2483*d5c09012SAndroid Build Coastguard Worker // The desired configuration options for master authorized networks feature. 2484*d5c09012SAndroid Build Coastguard Worker MasterAuthorizedNetworksConfig desired_master_authorized_networks_config = 12; 2485*d5c09012SAndroid Build Coastguard Worker 2486*d5c09012SAndroid Build Coastguard Worker // The desired configuration options for the PodSecurityPolicy feature. 2487*d5c09012SAndroid Build Coastguard Worker PodSecurityPolicyConfig desired_pod_security_policy_config = 14; 2488*d5c09012SAndroid Build Coastguard Worker 2489*d5c09012SAndroid Build Coastguard Worker // Cluster-level autoscaling configuration. 2490*d5c09012SAndroid Build Coastguard Worker ClusterAutoscaling desired_cluster_autoscaling = 15; 2491*d5c09012SAndroid Build Coastguard Worker 2492*d5c09012SAndroid Build Coastguard Worker // The desired configuration options for the Binary Authorization feature. 2493*d5c09012SAndroid Build Coastguard Worker BinaryAuthorization desired_binary_authorization = 16; 2494*d5c09012SAndroid Build Coastguard Worker 2495*d5c09012SAndroid Build Coastguard Worker // The logging service the cluster should use to write logs. 2496*d5c09012SAndroid Build Coastguard Worker // Currently available options: 2497*d5c09012SAndroid Build Coastguard Worker // 2498*d5c09012SAndroid Build Coastguard Worker // * `logging.googleapis.com/kubernetes` - The Cloud Logging 2499*d5c09012SAndroid Build Coastguard Worker // service with a Kubernetes-native resource model 2500*d5c09012SAndroid Build Coastguard Worker // * `logging.googleapis.com` - The legacy Cloud Logging service (no longer 2501*d5c09012SAndroid Build Coastguard Worker // available as of GKE 1.15). 2502*d5c09012SAndroid Build Coastguard Worker // * `none` - no logs will be exported from the cluster. 2503*d5c09012SAndroid Build Coastguard Worker // 2504*d5c09012SAndroid Build Coastguard Worker // If left as an empty string,`logging.googleapis.com/kubernetes` will be 2505*d5c09012SAndroid Build Coastguard Worker // used for GKE 1.14+ or `logging.googleapis.com` for earlier versions. 2506*d5c09012SAndroid Build Coastguard Worker string desired_logging_service = 19; 2507*d5c09012SAndroid Build Coastguard Worker 2508*d5c09012SAndroid Build Coastguard Worker // The desired configuration for exporting resource usage. 2509*d5c09012SAndroid Build Coastguard Worker ResourceUsageExportConfig desired_resource_usage_export_config = 21; 2510*d5c09012SAndroid Build Coastguard Worker 2511*d5c09012SAndroid Build Coastguard Worker // Cluster-level Vertical Pod Autoscaling configuration. 2512*d5c09012SAndroid Build Coastguard Worker VerticalPodAutoscaling desired_vertical_pod_autoscaling = 22; 2513*d5c09012SAndroid Build Coastguard Worker 2514*d5c09012SAndroid Build Coastguard Worker // The desired private cluster configuration. 2515*d5c09012SAndroid Build Coastguard Worker PrivateClusterConfig desired_private_cluster_config = 25; 2516*d5c09012SAndroid Build Coastguard Worker 2517*d5c09012SAndroid Build Coastguard Worker // The desired config of Intra-node visibility. 2518*d5c09012SAndroid Build Coastguard Worker IntraNodeVisibilityConfig desired_intra_node_visibility_config = 26; 2519*d5c09012SAndroid Build Coastguard Worker 2520*d5c09012SAndroid Build Coastguard Worker // The desired status of whether to disable default sNAT for this cluster. 2521*d5c09012SAndroid Build Coastguard Worker DefaultSnatStatus desired_default_snat_status = 28; 2522*d5c09012SAndroid Build Coastguard Worker 2523*d5c09012SAndroid Build Coastguard Worker // The desired telemetry integration for the cluster. 2524*d5c09012SAndroid Build Coastguard Worker ClusterTelemetry desired_cluster_telemetry = 30; 2525*d5c09012SAndroid Build Coastguard Worker 2526*d5c09012SAndroid Build Coastguard Worker // The desired release channel configuration. 2527*d5c09012SAndroid Build Coastguard Worker ReleaseChannel desired_release_channel = 31; 2528*d5c09012SAndroid Build Coastguard Worker 2529*d5c09012SAndroid Build Coastguard Worker // The desired Cloud TPU configuration. 2530*d5c09012SAndroid Build Coastguard Worker TpuConfig desired_tpu_config = 38; 2531*d5c09012SAndroid Build Coastguard Worker 2532*d5c09012SAndroid Build Coastguard Worker // The desired L4 Internal Load Balancer Subsetting configuration. 2533*d5c09012SAndroid Build Coastguard Worker ILBSubsettingConfig desired_l4ilb_subsetting_config = 39; 2534*d5c09012SAndroid Build Coastguard Worker 2535*d5c09012SAndroid Build Coastguard Worker // The desired datapath provider for the cluster. 2536*d5c09012SAndroid Build Coastguard Worker DatapathProvider desired_datapath_provider = 50; 2537*d5c09012SAndroid Build Coastguard Worker 2538*d5c09012SAndroid Build Coastguard Worker // The desired state of IPv6 connectivity to Google Services. 2539*d5c09012SAndroid Build Coastguard Worker PrivateIPv6GoogleAccess desired_private_ipv6_google_access = 51; 2540*d5c09012SAndroid Build Coastguard Worker 2541*d5c09012SAndroid Build Coastguard Worker // The desired notification configuration. 2542*d5c09012SAndroid Build Coastguard Worker NotificationConfig desired_notification_config = 55; 2543*d5c09012SAndroid Build Coastguard Worker 2544*d5c09012SAndroid Build Coastguard Worker // The Kubernetes version to change the master to. The only valid value is the 2545*d5c09012SAndroid Build Coastguard Worker // latest supported version. 2546*d5c09012SAndroid Build Coastguard Worker // 2547*d5c09012SAndroid Build Coastguard Worker // Users may specify either explicit versions offered by 2548*d5c09012SAndroid Build Coastguard Worker // Kubernetes Engine or version aliases, which have the following behavior: 2549*d5c09012SAndroid Build Coastguard Worker // 2550*d5c09012SAndroid Build Coastguard Worker // - "latest": picks the highest valid Kubernetes version 2551*d5c09012SAndroid Build Coastguard Worker // - "1.X": picks the highest valid patch+gke.N patch in the 1.X version 2552*d5c09012SAndroid Build Coastguard Worker // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version 2553*d5c09012SAndroid Build Coastguard Worker // - "1.X.Y-gke.N": picks an explicit Kubernetes version 2554*d5c09012SAndroid Build Coastguard Worker // - "-": picks the default Kubernetes version 2555*d5c09012SAndroid Build Coastguard Worker string desired_master_version = 100; 2556*d5c09012SAndroid Build Coastguard Worker 2557*d5c09012SAndroid Build Coastguard Worker // The desired GCFS config for the cluster. 2558*d5c09012SAndroid Build Coastguard Worker GcfsConfig desired_gcfs_config = 109; 2559*d5c09012SAndroid Build Coastguard Worker 2560*d5c09012SAndroid Build Coastguard Worker // Configuration of etcd encryption. 2561*d5c09012SAndroid Build Coastguard Worker DatabaseEncryption desired_database_encryption = 46; 2562*d5c09012SAndroid Build Coastguard Worker 2563*d5c09012SAndroid Build Coastguard Worker // Configuration for Workload Identity. 2564*d5c09012SAndroid Build Coastguard Worker WorkloadIdentityConfig desired_workload_identity_config = 47; 2565*d5c09012SAndroid Build Coastguard Worker 2566*d5c09012SAndroid Build Coastguard Worker // Configuration for issuance of mTLS keys and certificates to Kubernetes 2567*d5c09012SAndroid Build Coastguard Worker // pods. 2568*d5c09012SAndroid Build Coastguard Worker WorkloadCertificates desired_workload_certificates = 61; 2569*d5c09012SAndroid Build Coastguard Worker 2570*d5c09012SAndroid Build Coastguard Worker // Configuration for issuance of mTLS keys and certificates to Kubernetes 2571*d5c09012SAndroid Build Coastguard Worker // pods. 2572*d5c09012SAndroid Build Coastguard Worker MeshCertificates desired_mesh_certificates = 67; 2573*d5c09012SAndroid Build Coastguard Worker 2574*d5c09012SAndroid Build Coastguard Worker // Configuration for direct-path (via ALTS) with workload identity. 2575*d5c09012SAndroid Build Coastguard Worker WorkloadALTSConfig desired_workload_alts_config = 62; 2576*d5c09012SAndroid Build Coastguard Worker 2577*d5c09012SAndroid Build Coastguard Worker // Configuration for Shielded Nodes. 2578*d5c09012SAndroid Build Coastguard Worker ShieldedNodes desired_shielded_nodes = 48; 2579*d5c09012SAndroid Build Coastguard Worker 2580*d5c09012SAndroid Build Coastguard Worker // The desired configuration for the fine-grained cost management feature. 2581*d5c09012SAndroid Build Coastguard Worker CostManagementConfig desired_cost_management_config = 49; 2582*d5c09012SAndroid Build Coastguard Worker 2583*d5c09012SAndroid Build Coastguard Worker // Configuration for master components. 2584*d5c09012SAndroid Build Coastguard Worker Master desired_master = 52; 2585*d5c09012SAndroid Build Coastguard Worker 2586*d5c09012SAndroid Build Coastguard Worker // DNSConfig contains clusterDNS config for this cluster. 2587*d5c09012SAndroid Build Coastguard Worker DNSConfig desired_dns_config = 53; 2588*d5c09012SAndroid Build Coastguard Worker 2589*d5c09012SAndroid Build Coastguard Worker // ServiceExternalIPsConfig specifies the config for the use of Services with 2590*d5c09012SAndroid Build Coastguard Worker // ExternalIPs field. 2591*d5c09012SAndroid Build Coastguard Worker ServiceExternalIPsConfig desired_service_external_ips_config = 60; 2592*d5c09012SAndroid Build Coastguard Worker 2593*d5c09012SAndroid Build Coastguard Worker // AuthenticatorGroupsConfig specifies the config for the cluster security 2594*d5c09012SAndroid Build Coastguard Worker // groups settings. 2595*d5c09012SAndroid Build Coastguard Worker AuthenticatorGroupsConfig desired_authenticator_groups_config = 63; 2596*d5c09012SAndroid Build Coastguard Worker 2597*d5c09012SAndroid Build Coastguard Worker // The desired logging configuration. 2598*d5c09012SAndroid Build Coastguard Worker LoggingConfig desired_logging_config = 64; 2599*d5c09012SAndroid Build Coastguard Worker 2600*d5c09012SAndroid Build Coastguard Worker // The desired monitoring configuration. 2601*d5c09012SAndroid Build Coastguard Worker MonitoringConfig desired_monitoring_config = 65; 2602*d5c09012SAndroid Build Coastguard Worker 2603*d5c09012SAndroid Build Coastguard Worker // The desired Identity Service component configuration. 2604*d5c09012SAndroid Build Coastguard Worker IdentityServiceConfig desired_identity_service_config = 66; 2605*d5c09012SAndroid Build Coastguard Worker 2606*d5c09012SAndroid Build Coastguard Worker // Enable/Disable private endpoint for the cluster's master. 2607*d5c09012SAndroid Build Coastguard Worker optional bool desired_enable_private_endpoint = 71; 2608*d5c09012SAndroid Build Coastguard Worker 2609*d5c09012SAndroid Build Coastguard Worker // The desired network tags that apply to all auto-provisioned node pools 2610*d5c09012SAndroid Build Coastguard Worker // in autopilot clusters and node auto-provisioning enabled clusters. 2611*d5c09012SAndroid Build Coastguard Worker NetworkTags desired_node_pool_auto_config_network_tags = 110; 2612*d5c09012SAndroid Build Coastguard Worker 2613*d5c09012SAndroid Build Coastguard Worker // Deprecated: Use DesiredSecurityPostureConfig instead. 2614*d5c09012SAndroid Build Coastguard Worker // Enable/Disable Protect API features for the cluster. 2615*d5c09012SAndroid Build Coastguard Worker optional ProtectConfig desired_protect_config = 112 [deprecated = true]; 2616*d5c09012SAndroid Build Coastguard Worker 2617*d5c09012SAndroid Build Coastguard Worker // The desired config of Gateway API on this cluster. 2618*d5c09012SAndroid Build Coastguard Worker GatewayAPIConfig desired_gateway_api_config = 114; 2619*d5c09012SAndroid Build Coastguard Worker 2620*d5c09012SAndroid Build Coastguard Worker // The current etag of the cluster. 2621*d5c09012SAndroid Build Coastguard Worker // If an etag is provided and does not match the current etag of the cluster, 2622*d5c09012SAndroid Build Coastguard Worker // update will be blocked and an ABORTED error will be returned. 2623*d5c09012SAndroid Build Coastguard Worker string etag = 115; 2624*d5c09012SAndroid Build Coastguard Worker 2625*d5c09012SAndroid Build Coastguard Worker // The desired node pool logging configuration defaults for the cluster. 2626*d5c09012SAndroid Build Coastguard Worker NodePoolLoggingConfig desired_node_pool_logging_config = 116; 2627*d5c09012SAndroid Build Coastguard Worker 2628*d5c09012SAndroid Build Coastguard Worker // The desired fleet configuration for the cluster. 2629*d5c09012SAndroid Build Coastguard Worker Fleet desired_fleet = 117; 2630*d5c09012SAndroid Build Coastguard Worker 2631*d5c09012SAndroid Build Coastguard Worker // The desired stack type of the cluster. 2632*d5c09012SAndroid Build Coastguard Worker // If a stack type is provided and does not match the current stack type of 2633*d5c09012SAndroid Build Coastguard Worker // the cluster, update will attempt to change the stack type to the new type. 2634*d5c09012SAndroid Build Coastguard Worker StackType desired_stack_type = 119; 2635*d5c09012SAndroid Build Coastguard Worker 2636*d5c09012SAndroid Build Coastguard Worker // The additional pod ranges to be added to the cluster. These pod ranges 2637*d5c09012SAndroid Build Coastguard Worker // can be used by node pools to allocate pod IPs. 2638*d5c09012SAndroid Build Coastguard Worker AdditionalPodRangesConfig additional_pod_ranges_config = 120; 2639*d5c09012SAndroid Build Coastguard Worker 2640*d5c09012SAndroid Build Coastguard Worker // The additional pod ranges that are to be removed from the cluster. 2641*d5c09012SAndroid Build Coastguard Worker // The pod ranges specified here must have been specified earlier in the 2642*d5c09012SAndroid Build Coastguard Worker // 'additional_pod_ranges_config' argument. 2643*d5c09012SAndroid Build Coastguard Worker AdditionalPodRangesConfig removed_additional_pod_ranges_config = 121; 2644*d5c09012SAndroid Build Coastguard Worker 2645*d5c09012SAndroid Build Coastguard Worker // Kubernetes open source beta apis enabled on the cluster. Only beta apis 2646*d5c09012SAndroid Build Coastguard Worker K8sBetaAPIConfig enable_k8s_beta_apis = 122; 2647*d5c09012SAndroid Build Coastguard Worker 2648*d5c09012SAndroid Build Coastguard Worker // Enable/Disable Security Posture API features for the cluster. 2649*d5c09012SAndroid Build Coastguard Worker SecurityPostureConfig desired_security_posture_config = 124; 2650*d5c09012SAndroid Build Coastguard Worker 2651*d5c09012SAndroid Build Coastguard Worker // The desired network performance config. 2652*d5c09012SAndroid Build Coastguard Worker NetworkConfig.ClusterNetworkPerformanceConfig 2653*d5c09012SAndroid Build Coastguard Worker desired_network_performance_config = 125; 2654*d5c09012SAndroid Build Coastguard Worker 2655*d5c09012SAndroid Build Coastguard Worker // Enable/Disable FQDN Network Policy for the cluster. 2656*d5c09012SAndroid Build Coastguard Worker optional bool desired_enable_fqdn_network_policy = 126; 2657*d5c09012SAndroid Build Coastguard Worker 2658*d5c09012SAndroid Build Coastguard Worker // The desired workload policy configuration for the autopilot cluster. 2659*d5c09012SAndroid Build Coastguard Worker WorkloadPolicyConfig desired_autopilot_workload_policy_config = 128; 2660*d5c09012SAndroid Build Coastguard Worker 2661*d5c09012SAndroid Build Coastguard Worker // Beta APIs enabled for cluster. 2662*d5c09012SAndroid Build Coastguard Worker K8sBetaAPIConfig desired_k8s_beta_apis = 131; 2663*d5c09012SAndroid Build Coastguard Worker 2664*d5c09012SAndroid Build Coastguard Worker // HostMaintenancePolicy contains the desired maintenance policy for the 2665*d5c09012SAndroid Build Coastguard Worker // Google Compute Engine hosts. 2666*d5c09012SAndroid Build Coastguard Worker HostMaintenancePolicy desired_host_maintenance_policy = 132; 2667*d5c09012SAndroid Build Coastguard Worker 2668*d5c09012SAndroid Build Coastguard Worker // Enable/Disable Multi-Networking for the cluster 2669*d5c09012SAndroid Build Coastguard Worker optional bool desired_enable_multi_networking = 135; 2670*d5c09012SAndroid Build Coastguard Worker 2671*d5c09012SAndroid Build Coastguard Worker // The desired resource manager tags that apply to all auto-provisioned node 2672*d5c09012SAndroid Build Coastguard Worker // pools in autopilot clusters and node auto-provisioning enabled clusters. 2673*d5c09012SAndroid Build Coastguard Worker ResourceManagerTags desired_node_pool_auto_config_resource_manager_tags = 136; 2674*d5c09012SAndroid Build Coastguard Worker 2675*d5c09012SAndroid Build Coastguard Worker // Specify the details of in-transit encryption. 2676*d5c09012SAndroid Build Coastguard Worker optional InTransitEncryptionConfig desired_in_transit_encryption_config = 137; 2677*d5c09012SAndroid Build Coastguard Worker 2678*d5c09012SAndroid Build Coastguard Worker // Enable/Disable Cilium Clusterwide Network Policy for the cluster. 2679*d5c09012SAndroid Build Coastguard Worker optional bool desired_enable_cilium_clusterwide_network_policy = 138; 2680*d5c09012SAndroid Build Coastguard Worker 2681*d5c09012SAndroid Build Coastguard Worker // Enable/Disable Secret Manager Config. 2682*d5c09012SAndroid Build Coastguard Worker optional SecretManagerConfig desired_secret_manager_config = 139; 2683*d5c09012SAndroid Build Coastguard Worker} 2684*d5c09012SAndroid Build Coastguard Worker 2685*d5c09012SAndroid Build Coastguard Worker// AdditionalPodRangesConfig is the configuration for additional pod secondary 2686*d5c09012SAndroid Build Coastguard Worker// ranges supporting the ClusterUpdate message. 2687*d5c09012SAndroid Build Coastguard Workermessage AdditionalPodRangesConfig { 2688*d5c09012SAndroid Build Coastguard Worker // Name for pod secondary ipv4 range which has the actual range defined ahead. 2689*d5c09012SAndroid Build Coastguard Worker repeated string pod_range_names = 1; 2690*d5c09012SAndroid Build Coastguard Worker 2691*d5c09012SAndroid Build Coastguard Worker // Output only. [Output only] Information for additional pod range. 2692*d5c09012SAndroid Build Coastguard Worker repeated RangeInfo pod_range_info = 2 2693*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 2694*d5c09012SAndroid Build Coastguard Worker} 2695*d5c09012SAndroid Build Coastguard Worker 2696*d5c09012SAndroid Build Coastguard Worker// RangeInfo contains the range name and the range utilization by this cluster. 2697*d5c09012SAndroid Build Coastguard Workermessage RangeInfo { 2698*d5c09012SAndroid Build Coastguard Worker // Output only. [Output only] Name of a range. 2699*d5c09012SAndroid Build Coastguard Worker string range_name = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 2700*d5c09012SAndroid Build Coastguard Worker 2701*d5c09012SAndroid Build Coastguard Worker // Output only. [Output only] The utilization of the range. 2702*d5c09012SAndroid Build Coastguard Worker double utilization = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 2703*d5c09012SAndroid Build Coastguard Worker} 2704*d5c09012SAndroid Build Coastguard Worker 2705*d5c09012SAndroid Build Coastguard Worker// This operation resource represents operations that may have happened or are 2706*d5c09012SAndroid Build Coastguard Worker// happening on the cluster. All fields are output only. 2707*d5c09012SAndroid Build Coastguard Workermessage Operation { 2708*d5c09012SAndroid Build Coastguard Worker // Current status of the operation. 2709*d5c09012SAndroid Build Coastguard Worker enum Status { 2710*d5c09012SAndroid Build Coastguard Worker // Not set. 2711*d5c09012SAndroid Build Coastguard Worker STATUS_UNSPECIFIED = 0; 2712*d5c09012SAndroid Build Coastguard Worker 2713*d5c09012SAndroid Build Coastguard Worker // The operation has been created. 2714*d5c09012SAndroid Build Coastguard Worker PENDING = 1; 2715*d5c09012SAndroid Build Coastguard Worker 2716*d5c09012SAndroid Build Coastguard Worker // The operation is currently running. 2717*d5c09012SAndroid Build Coastguard Worker RUNNING = 2; 2718*d5c09012SAndroid Build Coastguard Worker 2719*d5c09012SAndroid Build Coastguard Worker // The operation is done, either cancelled or completed. 2720*d5c09012SAndroid Build Coastguard Worker DONE = 3; 2721*d5c09012SAndroid Build Coastguard Worker 2722*d5c09012SAndroid Build Coastguard Worker // The operation is aborting. 2723*d5c09012SAndroid Build Coastguard Worker ABORTING = 4; 2724*d5c09012SAndroid Build Coastguard Worker } 2725*d5c09012SAndroid Build Coastguard Worker 2726*d5c09012SAndroid Build Coastguard Worker // Operation type categorizes the operation. 2727*d5c09012SAndroid Build Coastguard Worker enum Type { 2728*d5c09012SAndroid Build Coastguard Worker // Not set. 2729*d5c09012SAndroid Build Coastguard Worker TYPE_UNSPECIFIED = 0; 2730*d5c09012SAndroid Build Coastguard Worker 2731*d5c09012SAndroid Build Coastguard Worker // The cluster is being created. The cluster should be assumed to be 2732*d5c09012SAndroid Build Coastguard Worker // unusable until the operation finishes. 2733*d5c09012SAndroid Build Coastguard Worker // 2734*d5c09012SAndroid Build Coastguard Worker // In the event of the operation failing, the cluster will enter the [ERROR 2735*d5c09012SAndroid Build Coastguard Worker // state][Cluster.Status.ERROR] and eventually be deleted. 2736*d5c09012SAndroid Build Coastguard Worker CREATE_CLUSTER = 1; 2737*d5c09012SAndroid Build Coastguard Worker 2738*d5c09012SAndroid Build Coastguard Worker // The cluster is being deleted. The cluster should be assumed to be 2739*d5c09012SAndroid Build Coastguard Worker // unusable as soon as this operation starts. 2740*d5c09012SAndroid Build Coastguard Worker // 2741*d5c09012SAndroid Build Coastguard Worker // In the event of the operation failing, the cluster will enter the [ERROR 2742*d5c09012SAndroid Build Coastguard Worker // state][Cluster.Status.ERROR] and the deletion will be automatically 2743*d5c09012SAndroid Build Coastguard Worker // retried until completed. 2744*d5c09012SAndroid Build Coastguard Worker DELETE_CLUSTER = 2; 2745*d5c09012SAndroid Build Coastguard Worker 2746*d5c09012SAndroid Build Coastguard Worker // The [cluster 2747*d5c09012SAndroid Build Coastguard Worker // version][google.container.v1beta1.ClusterUpdate.desired_master_version] 2748*d5c09012SAndroid Build Coastguard Worker // is being updated. Note that this includes "upgrades" to the same version, 2749*d5c09012SAndroid Build Coastguard Worker // which are simply a recreation. This also includes 2750*d5c09012SAndroid Build Coastguard Worker // [auto-upgrades](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-upgrades#upgrading_automatically). 2751*d5c09012SAndroid Build Coastguard Worker // For more details, see [documentation on cluster 2752*d5c09012SAndroid Build Coastguard Worker // upgrades](https://cloud.google.com/kubernetes-engine/docs/concepts/cluster-upgrades#cluster_upgrades). 2753*d5c09012SAndroid Build Coastguard Worker UPGRADE_MASTER = 3; 2754*d5c09012SAndroid Build Coastguard Worker 2755*d5c09012SAndroid Build Coastguard Worker // A node pool is being updated. Despite calling this an "upgrade", this 2756*d5c09012SAndroid Build Coastguard Worker // includes most forms of updates to node pools. This also includes 2757*d5c09012SAndroid Build Coastguard Worker // [auto-upgrades](https://cloud.google.com/kubernetes-engine/docs/how-to/node-auto-upgrades). 2758*d5c09012SAndroid Build Coastguard Worker // 2759*d5c09012SAndroid Build Coastguard Worker // This operation sets the 2760*d5c09012SAndroid Build Coastguard Worker // [progress][google.container.v1beta1.Operation.progress] field and may be 2761*d5c09012SAndroid Build Coastguard Worker // [canceled][google.container.v1beta1.ClusterManager.CancelOperation]. 2762*d5c09012SAndroid Build Coastguard Worker // 2763*d5c09012SAndroid Build Coastguard Worker // The upgrade strategy depends on [node pool 2764*d5c09012SAndroid Build Coastguard Worker // configuration](https://cloud.google.com/kubernetes-engine/docs/concepts/node-pool-upgrade-strategies). 2765*d5c09012SAndroid Build Coastguard Worker // The nodes are generally still usable during this operation. 2766*d5c09012SAndroid Build Coastguard Worker UPGRADE_NODES = 4; 2767*d5c09012SAndroid Build Coastguard Worker 2768*d5c09012SAndroid Build Coastguard Worker // A problem has been detected with the control plane and is being repaired. 2769*d5c09012SAndroid Build Coastguard Worker // This operation type is initiated by GKE. For more details, see 2770*d5c09012SAndroid Build Coastguard Worker // [documentation on 2771*d5c09012SAndroid Build Coastguard Worker // repairs](https://cloud.google.com/kubernetes-engine/docs/concepts/maintenance-windows-and-exclusions#repairs). 2772*d5c09012SAndroid Build Coastguard Worker REPAIR_CLUSTER = 5; 2773*d5c09012SAndroid Build Coastguard Worker 2774*d5c09012SAndroid Build Coastguard Worker // The cluster is being updated. This is a broad category of operations and 2775*d5c09012SAndroid Build Coastguard Worker // includes operations that only change metadata as well as those that must 2776*d5c09012SAndroid Build Coastguard Worker // recreate the entire cluster. If the control plane must be recreated, this 2777*d5c09012SAndroid Build Coastguard Worker // will cause temporary downtime for zonal clusters. 2778*d5c09012SAndroid Build Coastguard Worker // 2779*d5c09012SAndroid Build Coastguard Worker // Some features require recreating the nodes as well. Those will be 2780*d5c09012SAndroid Build Coastguard Worker // recreated as separate operations and the update may not be completely 2781*d5c09012SAndroid Build Coastguard Worker // functional until the node pools recreations finish. Node recreations will 2782*d5c09012SAndroid Build Coastguard Worker // generally follow [maintenance 2783*d5c09012SAndroid Build Coastguard Worker // policies](https://cloud.google.com/kubernetes-engine/docs/concepts/maintenance-windows-and-exclusions). 2784*d5c09012SAndroid Build Coastguard Worker // 2785*d5c09012SAndroid Build Coastguard Worker // Some GKE-initiated operations use this type. This includes certain types 2786*d5c09012SAndroid Build Coastguard Worker // of auto-upgrades and incident mitigations. 2787*d5c09012SAndroid Build Coastguard Worker UPDATE_CLUSTER = 6; 2788*d5c09012SAndroid Build Coastguard Worker 2789*d5c09012SAndroid Build Coastguard Worker // A node pool is being created. The node pool should be assumed to be 2790*d5c09012SAndroid Build Coastguard Worker // unusable until this operation finishes. In the event of an error, the 2791*d5c09012SAndroid Build Coastguard Worker // node pool may be partially created. 2792*d5c09012SAndroid Build Coastguard Worker // 2793*d5c09012SAndroid Build Coastguard Worker // If enabled, [node 2794*d5c09012SAndroid Build Coastguard Worker // autoprovisioning](https://cloud.google.com/kubernetes-engine/docs/how-to/node-auto-provisioning) 2795*d5c09012SAndroid Build Coastguard Worker // may have automatically initiated such operations. 2796*d5c09012SAndroid Build Coastguard Worker CREATE_NODE_POOL = 7; 2797*d5c09012SAndroid Build Coastguard Worker 2798*d5c09012SAndroid Build Coastguard Worker // The node pool is being deleted. The node pool should be assumed to be 2799*d5c09012SAndroid Build Coastguard Worker // unusable as soon as this operation starts. 2800*d5c09012SAndroid Build Coastguard Worker DELETE_NODE_POOL = 8; 2801*d5c09012SAndroid Build Coastguard Worker 2802*d5c09012SAndroid Build Coastguard Worker // The node pool's 2803*d5c09012SAndroid Build Coastguard Worker // [manamagent][google.container.v1beta1.NodePool.management] field is being 2804*d5c09012SAndroid Build Coastguard Worker // updated. These operations only update metadata and may be concurrent with 2805*d5c09012SAndroid Build Coastguard Worker // most other operations. 2806*d5c09012SAndroid Build Coastguard Worker SET_NODE_POOL_MANAGEMENT = 9; 2807*d5c09012SAndroid Build Coastguard Worker 2808*d5c09012SAndroid Build Coastguard Worker // A problem has been detected with nodes and [they are being 2809*d5c09012SAndroid Build Coastguard Worker // repaired](https://cloud.google.com/kubernetes-engine/docs/how-to/node-auto-repair). 2810*d5c09012SAndroid Build Coastguard Worker // This operation type is initiated by GKE, typically automatically. This 2811*d5c09012SAndroid Build Coastguard Worker // operation may be concurrent with other operations and there may be 2812*d5c09012SAndroid Build Coastguard Worker // multiple repairs occurring on the same node pool. 2813*d5c09012SAndroid Build Coastguard Worker AUTO_REPAIR_NODES = 10; 2814*d5c09012SAndroid Build Coastguard Worker 2815*d5c09012SAndroid Build Coastguard Worker // Unused. Automatic node upgrade uses 2816*d5c09012SAndroid Build Coastguard Worker // [UPGRADE_NODES][google.container.v1beta1.Operation.Type.UPGRADE_NODES]. 2817*d5c09012SAndroid Build Coastguard Worker AUTO_UPGRADE_NODES = 11 [deprecated = true]; 2818*d5c09012SAndroid Build Coastguard Worker 2819*d5c09012SAndroid Build Coastguard Worker // Unused. Updating labels uses 2820*d5c09012SAndroid Build Coastguard Worker // [UPDATE_CLUSTER][google.container.v1beta1.Operation.Type.UPDATE_CLUSTER]. 2821*d5c09012SAndroid Build Coastguard Worker SET_LABELS = 12 [deprecated = true]; 2822*d5c09012SAndroid Build Coastguard Worker 2823*d5c09012SAndroid Build Coastguard Worker // Unused. Updating master auth uses 2824*d5c09012SAndroid Build Coastguard Worker // [UPDATE_CLUSTER][google.container.v1beta1.Operation.Type.UPDATE_CLUSTER]. 2825*d5c09012SAndroid Build Coastguard Worker SET_MASTER_AUTH = 13 [deprecated = true]; 2826*d5c09012SAndroid Build Coastguard Worker 2827*d5c09012SAndroid Build Coastguard Worker // The node pool is being resized. With the exception of resizing to or from 2828*d5c09012SAndroid Build Coastguard Worker // size zero, the node pool is generally usable during this operation. 2829*d5c09012SAndroid Build Coastguard Worker SET_NODE_POOL_SIZE = 14; 2830*d5c09012SAndroid Build Coastguard Worker 2831*d5c09012SAndroid Build Coastguard Worker // Unused. Updating network policy uses 2832*d5c09012SAndroid Build Coastguard Worker // [UPDATE_CLUSTER][google.container.v1beta1.Operation.Type.UPDATE_CLUSTER]. 2833*d5c09012SAndroid Build Coastguard Worker SET_NETWORK_POLICY = 15 [deprecated = true]; 2834*d5c09012SAndroid Build Coastguard Worker 2835*d5c09012SAndroid Build Coastguard Worker // Unused. Updating maintenance policy uses 2836*d5c09012SAndroid Build Coastguard Worker // [UPDATE_CLUSTER][google.container.v1beta1.Operation.Type.UPDATE_CLUSTER]. 2837*d5c09012SAndroid Build Coastguard Worker SET_MAINTENANCE_POLICY = 16 [deprecated = true]; 2838*d5c09012SAndroid Build Coastguard Worker 2839*d5c09012SAndroid Build Coastguard Worker // The control plane is being resized. This operation type is initiated by 2840*d5c09012SAndroid Build Coastguard Worker // GKE. These operations are often performed preemptively to ensure that the 2841*d5c09012SAndroid Build Coastguard Worker // control plane has sufficient resources and is not typically an indication 2842*d5c09012SAndroid Build Coastguard Worker // of issues. For more details, see 2843*d5c09012SAndroid Build Coastguard Worker // [documentation on 2844*d5c09012SAndroid Build Coastguard Worker // resizes](https://cloud.google.com/kubernetes-engine/docs/concepts/maintenance-windows-and-exclusions#repairs). 2845*d5c09012SAndroid Build Coastguard Worker RESIZE_CLUSTER = 18; 2846*d5c09012SAndroid Build Coastguard Worker 2847*d5c09012SAndroid Build Coastguard Worker // Fleet features of GKE Enterprise are being upgraded. The cluster should 2848*d5c09012SAndroid Build Coastguard Worker // be assumed to be blocked for other upgrades until the operation finishes. 2849*d5c09012SAndroid Build Coastguard Worker FLEET_FEATURE_UPGRADE = 19; 2850*d5c09012SAndroid Build Coastguard Worker } 2851*d5c09012SAndroid Build Coastguard Worker 2852*d5c09012SAndroid Build Coastguard Worker // The server-assigned ID for the operation. 2853*d5c09012SAndroid Build Coastguard Worker string name = 1; 2854*d5c09012SAndroid Build Coastguard Worker 2855*d5c09012SAndroid Build Coastguard Worker // The name of the Google Compute Engine 2856*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 2857*d5c09012SAndroid Build Coastguard Worker // operation is taking place. This field is deprecated, use location instead. 2858*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true]; 2859*d5c09012SAndroid Build Coastguard Worker 2860*d5c09012SAndroid Build Coastguard Worker // The operation type. 2861*d5c09012SAndroid Build Coastguard Worker Type operation_type = 3; 2862*d5c09012SAndroid Build Coastguard Worker 2863*d5c09012SAndroid Build Coastguard Worker // The current status of the operation. 2864*d5c09012SAndroid Build Coastguard Worker Status status = 4; 2865*d5c09012SAndroid Build Coastguard Worker 2866*d5c09012SAndroid Build Coastguard Worker // Detailed operation progress, if available. 2867*d5c09012SAndroid Build Coastguard Worker string detail = 8; 2868*d5c09012SAndroid Build Coastguard Worker 2869*d5c09012SAndroid Build Coastguard Worker // Output only. If an error has occurred, a textual description of the error. 2870*d5c09012SAndroid Build Coastguard Worker // Deprecated. Use field error instead. 2871*d5c09012SAndroid Build Coastguard Worker string status_message = 5 2872*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = OUTPUT_ONLY]; 2873*d5c09012SAndroid Build Coastguard Worker 2874*d5c09012SAndroid Build Coastguard Worker // Server-defined URI for the operation. Example: 2875*d5c09012SAndroid Build Coastguard Worker // `https://container.googleapis.com/v1alpha1/projects/123/locations/us-central1/operations/operation-123`. 2876*d5c09012SAndroid Build Coastguard Worker string self_link = 6; 2877*d5c09012SAndroid Build Coastguard Worker 2878*d5c09012SAndroid Build Coastguard Worker // Server-defined URI for the target of the operation. The format of this is a 2879*d5c09012SAndroid Build Coastguard Worker // URI to the resource being modified (such as a cluster, node pool, or node). 2880*d5c09012SAndroid Build Coastguard Worker // For node pool repairs, there may be multiple nodes being repaired, but only 2881*d5c09012SAndroid Build Coastguard Worker // one will be the target. 2882*d5c09012SAndroid Build Coastguard Worker // 2883*d5c09012SAndroid Build Coastguard Worker // Examples: 2884*d5c09012SAndroid Build Coastguard Worker // 2885*d5c09012SAndroid Build Coastguard Worker // - 2886*d5c09012SAndroid Build Coastguard Worker // ## 2887*d5c09012SAndroid Build Coastguard Worker // `https://container.googleapis.com/v1/projects/123/locations/us-central1/clusters/my-cluster` 2888*d5c09012SAndroid Build Coastguard Worker // 2889*d5c09012SAndroid Build Coastguard Worker // ## 2890*d5c09012SAndroid Build Coastguard Worker // `https://container.googleapis.com/v1/projects/123/zones/us-central1-c/clusters/my-cluster/nodePools/my-np` 2891*d5c09012SAndroid Build Coastguard Worker // 2892*d5c09012SAndroid Build Coastguard Worker // `https://container.googleapis.com/v1/projects/123/zones/us-central1-c/clusters/my-cluster/nodePools/my-np/node/my-node` 2893*d5c09012SAndroid Build Coastguard Worker string target_link = 7; 2894*d5c09012SAndroid Build Coastguard Worker 2895*d5c09012SAndroid Build Coastguard Worker // [Output only] The name of the Google Compute Engine 2896*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available) 2897*d5c09012SAndroid Build Coastguard Worker // or 2898*d5c09012SAndroid Build Coastguard Worker // [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available) 2899*d5c09012SAndroid Build Coastguard Worker // in which the cluster resides. 2900*d5c09012SAndroid Build Coastguard Worker string location = 9; 2901*d5c09012SAndroid Build Coastguard Worker 2902*d5c09012SAndroid Build Coastguard Worker // [Output only] The time the operation started, in 2903*d5c09012SAndroid Build Coastguard Worker // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. 2904*d5c09012SAndroid Build Coastguard Worker string start_time = 10; 2905*d5c09012SAndroid Build Coastguard Worker 2906*d5c09012SAndroid Build Coastguard Worker // [Output only] The time the operation completed, in 2907*d5c09012SAndroid Build Coastguard Worker // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. 2908*d5c09012SAndroid Build Coastguard Worker string end_time = 11; 2909*d5c09012SAndroid Build Coastguard Worker 2910*d5c09012SAndroid Build Coastguard Worker // Output only. [Output only] Progress information for an operation. 2911*d5c09012SAndroid Build Coastguard Worker OperationProgress progress = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; 2912*d5c09012SAndroid Build Coastguard Worker 2913*d5c09012SAndroid Build Coastguard Worker // Which conditions caused the current cluster state. 2914*d5c09012SAndroid Build Coastguard Worker // Deprecated. Use field error instead. 2915*d5c09012SAndroid Build Coastguard Worker repeated StatusCondition cluster_conditions = 13 [deprecated = true]; 2916*d5c09012SAndroid Build Coastguard Worker 2917*d5c09012SAndroid Build Coastguard Worker // Which conditions caused the current node pool state. 2918*d5c09012SAndroid Build Coastguard Worker // Deprecated. Use field error instead. 2919*d5c09012SAndroid Build Coastguard Worker repeated StatusCondition nodepool_conditions = 14 [deprecated = true]; 2920*d5c09012SAndroid Build Coastguard Worker 2921*d5c09012SAndroid Build Coastguard Worker // The error result of the operation in case of failure. 2922*d5c09012SAndroid Build Coastguard Worker google.rpc.Status error = 15; 2923*d5c09012SAndroid Build Coastguard Worker} 2924*d5c09012SAndroid Build Coastguard Worker 2925*d5c09012SAndroid Build Coastguard Worker// Information about operation (or operation stage) progress. 2926*d5c09012SAndroid Build Coastguard Workermessage OperationProgress { 2927*d5c09012SAndroid Build Coastguard Worker // Progress metric is (string, int|float|string) pair. 2928*d5c09012SAndroid Build Coastguard Worker message Metric { 2929*d5c09012SAndroid Build Coastguard Worker // Required. Metric name, e.g., "nodes total", "percent done". 2930*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = REQUIRED]; 2931*d5c09012SAndroid Build Coastguard Worker 2932*d5c09012SAndroid Build Coastguard Worker // Strictly one of the values is required. 2933*d5c09012SAndroid Build Coastguard Worker oneof value { 2934*d5c09012SAndroid Build Coastguard Worker // For metrics with integer value. 2935*d5c09012SAndroid Build Coastguard Worker int64 int_value = 2; 2936*d5c09012SAndroid Build Coastguard Worker 2937*d5c09012SAndroid Build Coastguard Worker // For metrics with floating point value. 2938*d5c09012SAndroid Build Coastguard Worker double double_value = 3; 2939*d5c09012SAndroid Build Coastguard Worker 2940*d5c09012SAndroid Build Coastguard Worker // For metrics with custom values (ratios, visual progress, etc.). 2941*d5c09012SAndroid Build Coastguard Worker string string_value = 4; 2942*d5c09012SAndroid Build Coastguard Worker } 2943*d5c09012SAndroid Build Coastguard Worker } 2944*d5c09012SAndroid Build Coastguard Worker 2945*d5c09012SAndroid Build Coastguard Worker // A non-parameterized string describing an operation stage. 2946*d5c09012SAndroid Build Coastguard Worker // Unset for single-stage operations. 2947*d5c09012SAndroid Build Coastguard Worker string name = 1; 2948*d5c09012SAndroid Build Coastguard Worker 2949*d5c09012SAndroid Build Coastguard Worker // Status of an operation stage. 2950*d5c09012SAndroid Build Coastguard Worker // Unset for single-stage operations. 2951*d5c09012SAndroid Build Coastguard Worker Operation.Status status = 2; 2952*d5c09012SAndroid Build Coastguard Worker 2953*d5c09012SAndroid Build Coastguard Worker // Progress metric bundle, for example: 2954*d5c09012SAndroid Build Coastguard Worker // metrics: [{name: "nodes done", int_value: 15}, 2955*d5c09012SAndroid Build Coastguard Worker // {name: "nodes total", int_value: 32}] 2956*d5c09012SAndroid Build Coastguard Worker // or 2957*d5c09012SAndroid Build Coastguard Worker // metrics: [{name: "progress", double_value: 0.56}, 2958*d5c09012SAndroid Build Coastguard Worker // {name: "progress scale", double_value: 1.0}] 2959*d5c09012SAndroid Build Coastguard Worker repeated Metric metrics = 3; 2960*d5c09012SAndroid Build Coastguard Worker 2961*d5c09012SAndroid Build Coastguard Worker // Substages of an operation or a stage. 2962*d5c09012SAndroid Build Coastguard Worker repeated OperationProgress stages = 4; 2963*d5c09012SAndroid Build Coastguard Worker} 2964*d5c09012SAndroid Build Coastguard Worker 2965*d5c09012SAndroid Build Coastguard Worker// CreateClusterRequest creates a cluster. 2966*d5c09012SAndroid Build Coastguard Workermessage CreateClusterRequest { 2967*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 2968*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 2969*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the parent field. 2970*d5c09012SAndroid Build Coastguard Worker string project_id = 1 2971*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 2972*d5c09012SAndroid Build Coastguard Worker 2973*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 2974*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 2975*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the parent 2976*d5c09012SAndroid Build Coastguard Worker // field. 2977*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 2978*d5c09012SAndroid Build Coastguard Worker 2979*d5c09012SAndroid Build Coastguard Worker // Required. A [cluster 2980*d5c09012SAndroid Build Coastguard Worker // resource](https://cloud.google.com/container-engine/reference/rest/v1beta1/projects.locations.clusters) 2981*d5c09012SAndroid Build Coastguard Worker Cluster cluster = 3 [(google.api.field_behavior) = REQUIRED]; 2982*d5c09012SAndroid Build Coastguard Worker 2983*d5c09012SAndroid Build Coastguard Worker // The parent (project and location) where the cluster will be created. 2984*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*`. 2985*d5c09012SAndroid Build Coastguard Worker string parent = 5; 2986*d5c09012SAndroid Build Coastguard Worker} 2987*d5c09012SAndroid Build Coastguard Worker 2988*d5c09012SAndroid Build Coastguard Worker// GetClusterRequest gets the settings of a cluster. 2989*d5c09012SAndroid Build Coastguard Workermessage GetClusterRequest { 2990*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 2991*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 2992*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 2993*d5c09012SAndroid Build Coastguard Worker string project_id = 1 2994*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 2995*d5c09012SAndroid Build Coastguard Worker 2996*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 2997*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 2998*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 2999*d5c09012SAndroid Build Coastguard Worker // field. 3000*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3001*d5c09012SAndroid Build Coastguard Worker 3002*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to retrieve. 3003*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3004*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3005*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3006*d5c09012SAndroid Build Coastguard Worker 3007*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster) of the cluster to retrieve. 3008*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*`. 3009*d5c09012SAndroid Build Coastguard Worker string name = 5; 3010*d5c09012SAndroid Build Coastguard Worker} 3011*d5c09012SAndroid Build Coastguard Worker 3012*d5c09012SAndroid Build Coastguard Worker// UpdateClusterRequest updates the settings of a cluster. 3013*d5c09012SAndroid Build Coastguard Workermessage UpdateClusterRequest { 3014*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3015*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3016*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3017*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3018*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3019*d5c09012SAndroid Build Coastguard Worker 3020*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3021*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3022*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 3023*d5c09012SAndroid Build Coastguard Worker // field. 3024*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3025*d5c09012SAndroid Build Coastguard Worker 3026*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to upgrade. 3027*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3028*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3029*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3030*d5c09012SAndroid Build Coastguard Worker 3031*d5c09012SAndroid Build Coastguard Worker // Required. A description of the update. 3032*d5c09012SAndroid Build Coastguard Worker ClusterUpdate update = 4 [(google.api.field_behavior) = REQUIRED]; 3033*d5c09012SAndroid Build Coastguard Worker 3034*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster) of the cluster to update. 3035*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*`. 3036*d5c09012SAndroid Build Coastguard Worker string name = 5; 3037*d5c09012SAndroid Build Coastguard Worker} 3038*d5c09012SAndroid Build Coastguard Worker 3039*d5c09012SAndroid Build Coastguard Worker// SetNodePoolVersionRequest updates the version of a node pool. 3040*d5c09012SAndroid Build Coastguard Workermessage UpdateNodePoolRequest { 3041*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3042*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3043*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3044*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3045*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3046*d5c09012SAndroid Build Coastguard Worker 3047*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3048*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3049*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 3050*d5c09012SAndroid Build Coastguard Worker // field. 3051*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3052*d5c09012SAndroid Build Coastguard Worker 3053*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to upgrade. 3054*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3055*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3056*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3057*d5c09012SAndroid Build Coastguard Worker 3058*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the node pool to upgrade. 3059*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3060*d5c09012SAndroid Build Coastguard Worker string node_pool_id = 4 3061*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3062*d5c09012SAndroid Build Coastguard Worker 3063*d5c09012SAndroid Build Coastguard Worker // Required. The Kubernetes version to change the nodes to (typically an 3064*d5c09012SAndroid Build Coastguard Worker // upgrade). 3065*d5c09012SAndroid Build Coastguard Worker // 3066*d5c09012SAndroid Build Coastguard Worker // Users may specify either explicit versions offered by Kubernetes Engine or 3067*d5c09012SAndroid Build Coastguard Worker // version aliases, which have the following behavior: 3068*d5c09012SAndroid Build Coastguard Worker // 3069*d5c09012SAndroid Build Coastguard Worker // - "latest": picks the highest valid Kubernetes version 3070*d5c09012SAndroid Build Coastguard Worker // - "1.X": picks the highest valid patch+gke.N patch in the 1.X version 3071*d5c09012SAndroid Build Coastguard Worker // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version 3072*d5c09012SAndroid Build Coastguard Worker // - "1.X.Y-gke.N": picks an explicit Kubernetes version 3073*d5c09012SAndroid Build Coastguard Worker // - "-": picks the Kubernetes master version 3074*d5c09012SAndroid Build Coastguard Worker string node_version = 5 [(google.api.field_behavior) = REQUIRED]; 3075*d5c09012SAndroid Build Coastguard Worker 3076*d5c09012SAndroid Build Coastguard Worker // Required. The desired image type for the node pool. Please see 3077*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/kubernetes-engine/docs/concepts/node-images for 3078*d5c09012SAndroid Build Coastguard Worker // available image types. 3079*d5c09012SAndroid Build Coastguard Worker string image_type = 6 [(google.api.field_behavior) = REQUIRED]; 3080*d5c09012SAndroid Build Coastguard Worker 3081*d5c09012SAndroid Build Coastguard Worker // The desired list of Google Compute Engine 3082*d5c09012SAndroid Build Coastguard Worker // [zones](https://cloud.google.com/compute/docs/zones#available) in which the 3083*d5c09012SAndroid Build Coastguard Worker // node pool's nodes should be located. Changing the locations for a node pool 3084*d5c09012SAndroid Build Coastguard Worker // will result in nodes being either created or removed from the node pool, 3085*d5c09012SAndroid Build Coastguard Worker // depending on whether locations are being added or removed. 3086*d5c09012SAndroid Build Coastguard Worker repeated string locations = 13; 3087*d5c09012SAndroid Build Coastguard Worker 3088*d5c09012SAndroid Build Coastguard Worker // The desired workload metadata config for the node pool. 3089*d5c09012SAndroid Build Coastguard Worker WorkloadMetadataConfig workload_metadata_config = 14; 3090*d5c09012SAndroid Build Coastguard Worker 3091*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster, node pool) of the node pool to 3092*d5c09012SAndroid Build Coastguard Worker // update. Specified in the format 3093*d5c09012SAndroid Build Coastguard Worker // `projects/*/locations/*/clusters/*/nodePools/*`. 3094*d5c09012SAndroid Build Coastguard Worker string name = 8; 3095*d5c09012SAndroid Build Coastguard Worker 3096*d5c09012SAndroid Build Coastguard Worker // Upgrade settings control disruption and speed of the upgrade. 3097*d5c09012SAndroid Build Coastguard Worker NodePool.UpgradeSettings upgrade_settings = 15; 3098*d5c09012SAndroid Build Coastguard Worker 3099*d5c09012SAndroid Build Coastguard Worker // The desired network tags to be applied to all nodes in the node pool. 3100*d5c09012SAndroid Build Coastguard Worker // If this field is not present, the tags will not be changed. Otherwise, 3101*d5c09012SAndroid Build Coastguard Worker // the existing network tags will be *replaced* with the provided tags. 3102*d5c09012SAndroid Build Coastguard Worker NetworkTags tags = 16; 3103*d5c09012SAndroid Build Coastguard Worker 3104*d5c09012SAndroid Build Coastguard Worker // The desired node taints to be applied to all nodes in the node pool. 3105*d5c09012SAndroid Build Coastguard Worker // If this field is not present, the taints will not be changed. Otherwise, 3106*d5c09012SAndroid Build Coastguard Worker // the existing node taints will be *replaced* with the provided taints. 3107*d5c09012SAndroid Build Coastguard Worker NodeTaints taints = 17; 3108*d5c09012SAndroid Build Coastguard Worker 3109*d5c09012SAndroid Build Coastguard Worker // The desired node labels to be applied to all nodes in the node pool. 3110*d5c09012SAndroid Build Coastguard Worker // If this field is not present, the labels will not be changed. Otherwise, 3111*d5c09012SAndroid Build Coastguard Worker // the existing node labels will be *replaced* with the provided labels. 3112*d5c09012SAndroid Build Coastguard Worker NodeLabels labels = 18; 3113*d5c09012SAndroid Build Coastguard Worker 3114*d5c09012SAndroid Build Coastguard Worker // Parameters that can be configured on Linux nodes. 3115*d5c09012SAndroid Build Coastguard Worker LinuxNodeConfig linux_node_config = 19; 3116*d5c09012SAndroid Build Coastguard Worker 3117*d5c09012SAndroid Build Coastguard Worker // Node kubelet configs. 3118*d5c09012SAndroid Build Coastguard Worker NodeKubeletConfig kubelet_config = 20; 3119*d5c09012SAndroid Build Coastguard Worker 3120*d5c09012SAndroid Build Coastguard Worker // Node network config. 3121*d5c09012SAndroid Build Coastguard Worker NodeNetworkConfig node_network_config = 21; 3122*d5c09012SAndroid Build Coastguard Worker 3123*d5c09012SAndroid Build Coastguard Worker // GCFS config. 3124*d5c09012SAndroid Build Coastguard Worker GcfsConfig gcfs_config = 22; 3125*d5c09012SAndroid Build Coastguard Worker 3126*d5c09012SAndroid Build Coastguard Worker // Confidential nodes config. 3127*d5c09012SAndroid Build Coastguard Worker // All the nodes in the node pool will be Confidential VM once enabled. 3128*d5c09012SAndroid Build Coastguard Worker ConfidentialNodes confidential_nodes = 23; 3129*d5c09012SAndroid Build Coastguard Worker 3130*d5c09012SAndroid Build Coastguard Worker // Enable or disable gvnic on the node pool. 3131*d5c09012SAndroid Build Coastguard Worker VirtualNIC gvnic = 29; 3132*d5c09012SAndroid Build Coastguard Worker 3133*d5c09012SAndroid Build Coastguard Worker // The current etag of the node pool. 3134*d5c09012SAndroid Build Coastguard Worker // If an etag is provided and does not match the current etag of the node 3135*d5c09012SAndroid Build Coastguard Worker // pool, update will be blocked and an ABORTED error will be returned. 3136*d5c09012SAndroid Build Coastguard Worker string etag = 30; 3137*d5c09012SAndroid Build Coastguard Worker 3138*d5c09012SAndroid Build Coastguard Worker // Enable or disable NCCL fast socket for the node pool. 3139*d5c09012SAndroid Build Coastguard Worker FastSocket fast_socket = 31; 3140*d5c09012SAndroid Build Coastguard Worker 3141*d5c09012SAndroid Build Coastguard Worker // Logging configuration. 3142*d5c09012SAndroid Build Coastguard Worker NodePoolLoggingConfig logging_config = 32; 3143*d5c09012SAndroid Build Coastguard Worker 3144*d5c09012SAndroid Build Coastguard Worker // The resource labels for the node pool to use to annotate any related 3145*d5c09012SAndroid Build Coastguard Worker // Google Compute Engine resources. 3146*d5c09012SAndroid Build Coastguard Worker ResourceLabels resource_labels = 33; 3147*d5c09012SAndroid Build Coastguard Worker 3148*d5c09012SAndroid Build Coastguard Worker // Parameters that can be configured on Windows nodes. 3149*d5c09012SAndroid Build Coastguard Worker WindowsNodeConfig windows_node_config = 34; 3150*d5c09012SAndroid Build Coastguard Worker 3151*d5c09012SAndroid Build Coastguard Worker // Optional. The desired machine type for nodes in the node pool. 3152*d5c09012SAndroid Build Coastguard Worker // Initiates an upgrade operation that migrates the nodes in the 3153*d5c09012SAndroid Build Coastguard Worker // node pool to the specified machine type. 3154*d5c09012SAndroid Build Coastguard Worker string machine_type = 36 [(google.api.field_behavior) = OPTIONAL]; 3155*d5c09012SAndroid Build Coastguard Worker 3156*d5c09012SAndroid Build Coastguard Worker // Optional. The desired disk type for nodes in the node pool. 3157*d5c09012SAndroid Build Coastguard Worker // Initiates an upgrade operation that migrates the nodes in the 3158*d5c09012SAndroid Build Coastguard Worker // node pool to the specified disk type. 3159*d5c09012SAndroid Build Coastguard Worker string disk_type = 37 [(google.api.field_behavior) = OPTIONAL]; 3160*d5c09012SAndroid Build Coastguard Worker 3161*d5c09012SAndroid Build Coastguard Worker // Optional. The desired disk size for nodes in the node pool. 3162*d5c09012SAndroid Build Coastguard Worker // Initiates an upgrade operation that migrates the nodes in the 3163*d5c09012SAndroid Build Coastguard Worker // node pool to the specified disk size. 3164*d5c09012SAndroid Build Coastguard Worker int64 disk_size_gb = 38 [(google.api.field_behavior) = OPTIONAL]; 3165*d5c09012SAndroid Build Coastguard Worker 3166*d5c09012SAndroid Build Coastguard Worker // Desired resource manager tag keys and values to be attached to the nodes 3167*d5c09012SAndroid Build Coastguard Worker // for managing Compute Engine firewalls using Network Firewall Policies. 3168*d5c09012SAndroid Build Coastguard Worker // Existing tags will be replaced with new values. 3169*d5c09012SAndroid Build Coastguard Worker ResourceManagerTags resource_manager_tags = 39; 3170*d5c09012SAndroid Build Coastguard Worker 3171*d5c09012SAndroid Build Coastguard Worker // Specifies the configuration of queued provisioning. 3172*d5c09012SAndroid Build Coastguard Worker NodePool.QueuedProvisioning queued_provisioning = 42; 3173*d5c09012SAndroid Build Coastguard Worker} 3174*d5c09012SAndroid Build Coastguard Worker 3175*d5c09012SAndroid Build Coastguard Worker// SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool. 3176*d5c09012SAndroid Build Coastguard Workermessage SetNodePoolAutoscalingRequest { 3177*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3178*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3179*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3180*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3181*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3182*d5c09012SAndroid Build Coastguard Worker 3183*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3184*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3185*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 3186*d5c09012SAndroid Build Coastguard Worker // field. 3187*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3188*d5c09012SAndroid Build Coastguard Worker 3189*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to upgrade. 3190*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3191*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3192*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3193*d5c09012SAndroid Build Coastguard Worker 3194*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the node pool to upgrade. 3195*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3196*d5c09012SAndroid Build Coastguard Worker string node_pool_id = 4 3197*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3198*d5c09012SAndroid Build Coastguard Worker 3199*d5c09012SAndroid Build Coastguard Worker // Required. Autoscaling configuration for the node pool. 3200*d5c09012SAndroid Build Coastguard Worker NodePoolAutoscaling autoscaling = 5 [(google.api.field_behavior) = REQUIRED]; 3201*d5c09012SAndroid Build Coastguard Worker 3202*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster, node pool) of the node pool to set 3203*d5c09012SAndroid Build Coastguard Worker // autoscaler settings. Specified in the format 3204*d5c09012SAndroid Build Coastguard Worker // `projects/*/locations/*/clusters/*/nodePools/*`. 3205*d5c09012SAndroid Build Coastguard Worker string name = 6; 3206*d5c09012SAndroid Build Coastguard Worker} 3207*d5c09012SAndroid Build Coastguard Worker 3208*d5c09012SAndroid Build Coastguard Worker// SetLoggingServiceRequest sets the logging service of a cluster. 3209*d5c09012SAndroid Build Coastguard Workermessage SetLoggingServiceRequest { 3210*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3211*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3212*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3213*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3214*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3215*d5c09012SAndroid Build Coastguard Worker 3216*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3217*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3218*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 3219*d5c09012SAndroid Build Coastguard Worker // field. 3220*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3221*d5c09012SAndroid Build Coastguard Worker 3222*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to upgrade. 3223*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3224*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3225*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3226*d5c09012SAndroid Build Coastguard Worker 3227*d5c09012SAndroid Build Coastguard Worker // Required. The logging service the cluster should use to write logs. 3228*d5c09012SAndroid Build Coastguard Worker // Currently available options: 3229*d5c09012SAndroid Build Coastguard Worker // 3230*d5c09012SAndroid Build Coastguard Worker // * `logging.googleapis.com/kubernetes` - The Cloud Logging 3231*d5c09012SAndroid Build Coastguard Worker // service with a Kubernetes-native resource model 3232*d5c09012SAndroid Build Coastguard Worker // * `logging.googleapis.com` - The legacy Cloud Logging service (no longer 3233*d5c09012SAndroid Build Coastguard Worker // available as of GKE 1.15). 3234*d5c09012SAndroid Build Coastguard Worker // * `none` - no logs will be exported from the cluster. 3235*d5c09012SAndroid Build Coastguard Worker // 3236*d5c09012SAndroid Build Coastguard Worker // If left as an empty string,`logging.googleapis.com/kubernetes` will be 3237*d5c09012SAndroid Build Coastguard Worker // used for GKE 1.14+ or `logging.googleapis.com` for earlier versions. 3238*d5c09012SAndroid Build Coastguard Worker string logging_service = 4 [(google.api.field_behavior) = REQUIRED]; 3239*d5c09012SAndroid Build Coastguard Worker 3240*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster) of the cluster to set logging. 3241*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*`. 3242*d5c09012SAndroid Build Coastguard Worker string name = 5; 3243*d5c09012SAndroid Build Coastguard Worker} 3244*d5c09012SAndroid Build Coastguard Worker 3245*d5c09012SAndroid Build Coastguard Worker// SetMonitoringServiceRequest sets the monitoring service of a cluster. 3246*d5c09012SAndroid Build Coastguard Workermessage SetMonitoringServiceRequest { 3247*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3248*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3249*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3250*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3251*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3252*d5c09012SAndroid Build Coastguard Worker 3253*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3254*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3255*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 3256*d5c09012SAndroid Build Coastguard Worker // field. 3257*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3258*d5c09012SAndroid Build Coastguard Worker 3259*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to upgrade. 3260*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3261*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3262*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3263*d5c09012SAndroid Build Coastguard Worker 3264*d5c09012SAndroid Build Coastguard Worker // Required. The monitoring service the cluster should use to write metrics. 3265*d5c09012SAndroid Build Coastguard Worker // Currently available options: 3266*d5c09012SAndroid Build Coastguard Worker // 3267*d5c09012SAndroid Build Coastguard Worker // * "monitoring.googleapis.com/kubernetes" - The Cloud Monitoring 3268*d5c09012SAndroid Build Coastguard Worker // service with a Kubernetes-native resource model 3269*d5c09012SAndroid Build Coastguard Worker // * `monitoring.googleapis.com` - The legacy Cloud Monitoring service (no 3270*d5c09012SAndroid Build Coastguard Worker // longer available as of GKE 1.15). 3271*d5c09012SAndroid Build Coastguard Worker // * `none` - No metrics will be exported from the cluster. 3272*d5c09012SAndroid Build Coastguard Worker // 3273*d5c09012SAndroid Build Coastguard Worker // If left as an empty string,`monitoring.googleapis.com/kubernetes` will be 3274*d5c09012SAndroid Build Coastguard Worker // used for GKE 1.14+ or `monitoring.googleapis.com` for earlier versions. 3275*d5c09012SAndroid Build Coastguard Worker string monitoring_service = 4 [(google.api.field_behavior) = REQUIRED]; 3276*d5c09012SAndroid Build Coastguard Worker 3277*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster) of the cluster to set monitoring. 3278*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*`. 3279*d5c09012SAndroid Build Coastguard Worker string name = 6; 3280*d5c09012SAndroid Build Coastguard Worker} 3281*d5c09012SAndroid Build Coastguard Worker 3282*d5c09012SAndroid Build Coastguard Worker// SetAddonsRequest sets the addons associated with the cluster. 3283*d5c09012SAndroid Build Coastguard Workermessage SetAddonsConfigRequest { 3284*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3285*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3286*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3287*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3288*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3289*d5c09012SAndroid Build Coastguard Worker 3290*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3291*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3292*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 3293*d5c09012SAndroid Build Coastguard Worker // field. 3294*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3295*d5c09012SAndroid Build Coastguard Worker 3296*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to upgrade. 3297*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3298*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3299*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3300*d5c09012SAndroid Build Coastguard Worker 3301*d5c09012SAndroid Build Coastguard Worker // Required. The desired configurations for the various addons available to 3302*d5c09012SAndroid Build Coastguard Worker // run in the cluster. 3303*d5c09012SAndroid Build Coastguard Worker AddonsConfig addons_config = 4 [(google.api.field_behavior) = REQUIRED]; 3304*d5c09012SAndroid Build Coastguard Worker 3305*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster) of the cluster to set addons. 3306*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*`. 3307*d5c09012SAndroid Build Coastguard Worker string name = 6; 3308*d5c09012SAndroid Build Coastguard Worker} 3309*d5c09012SAndroid Build Coastguard Worker 3310*d5c09012SAndroid Build Coastguard Worker// SetLocationsRequest sets the locations of the cluster. 3311*d5c09012SAndroid Build Coastguard Workermessage SetLocationsRequest { 3312*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3313*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3314*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3315*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3316*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3317*d5c09012SAndroid Build Coastguard Worker 3318*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3319*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3320*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 3321*d5c09012SAndroid Build Coastguard Worker // field. 3322*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3323*d5c09012SAndroid Build Coastguard Worker 3324*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to upgrade. 3325*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3326*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3327*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3328*d5c09012SAndroid Build Coastguard Worker 3329*d5c09012SAndroid Build Coastguard Worker // Required. The desired list of Google Compute Engine 3330*d5c09012SAndroid Build Coastguard Worker // [zones](https://cloud.google.com/compute/docs/zones#available) in which the 3331*d5c09012SAndroid Build Coastguard Worker // cluster's nodes should be located. Changing the locations a cluster is in 3332*d5c09012SAndroid Build Coastguard Worker // will result in nodes being either created or removed from the cluster, 3333*d5c09012SAndroid Build Coastguard Worker // depending on whether locations are being added or removed. 3334*d5c09012SAndroid Build Coastguard Worker // 3335*d5c09012SAndroid Build Coastguard Worker // This list must always include the cluster's primary zone. 3336*d5c09012SAndroid Build Coastguard Worker repeated string locations = 4 [(google.api.field_behavior) = REQUIRED]; 3337*d5c09012SAndroid Build Coastguard Worker 3338*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster) of the cluster to set locations. 3339*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*`. 3340*d5c09012SAndroid Build Coastguard Worker string name = 6; 3341*d5c09012SAndroid Build Coastguard Worker} 3342*d5c09012SAndroid Build Coastguard Worker 3343*d5c09012SAndroid Build Coastguard Worker// UpdateMasterRequest updates the master of the cluster. 3344*d5c09012SAndroid Build Coastguard Workermessage UpdateMasterRequest { 3345*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3346*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3347*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3348*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3349*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3350*d5c09012SAndroid Build Coastguard Worker 3351*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3352*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3353*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 3354*d5c09012SAndroid Build Coastguard Worker // field. 3355*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3356*d5c09012SAndroid Build Coastguard Worker 3357*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to upgrade. 3358*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3359*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3360*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3361*d5c09012SAndroid Build Coastguard Worker 3362*d5c09012SAndroid Build Coastguard Worker // Required. The Kubernetes version to change the master to. 3363*d5c09012SAndroid Build Coastguard Worker // 3364*d5c09012SAndroid Build Coastguard Worker // Users may specify either explicit versions offered by 3365*d5c09012SAndroid Build Coastguard Worker // Kubernetes Engine or version aliases, which have the following behavior: 3366*d5c09012SAndroid Build Coastguard Worker // 3367*d5c09012SAndroid Build Coastguard Worker // - "latest": picks the highest valid Kubernetes version 3368*d5c09012SAndroid Build Coastguard Worker // - "1.X": picks the highest valid patch+gke.N patch in the 1.X version 3369*d5c09012SAndroid Build Coastguard Worker // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version 3370*d5c09012SAndroid Build Coastguard Worker // - "1.X.Y-gke.N": picks an explicit Kubernetes version 3371*d5c09012SAndroid Build Coastguard Worker // - "-": picks the default Kubernetes version 3372*d5c09012SAndroid Build Coastguard Worker string master_version = 4 [(google.api.field_behavior) = REQUIRED]; 3373*d5c09012SAndroid Build Coastguard Worker 3374*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster) of the cluster to update. 3375*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*`. 3376*d5c09012SAndroid Build Coastguard Worker string name = 7; 3377*d5c09012SAndroid Build Coastguard Worker} 3378*d5c09012SAndroid Build Coastguard Worker 3379*d5c09012SAndroid Build Coastguard Worker// SetMasterAuthRequest updates the admin password of a cluster. 3380*d5c09012SAndroid Build Coastguard Workermessage SetMasterAuthRequest { 3381*d5c09012SAndroid Build Coastguard Worker // Operation type: what type update to perform. 3382*d5c09012SAndroid Build Coastguard Worker enum Action { 3383*d5c09012SAndroid Build Coastguard Worker // Operation is unknown and will error out. 3384*d5c09012SAndroid Build Coastguard Worker UNKNOWN = 0; 3385*d5c09012SAndroid Build Coastguard Worker 3386*d5c09012SAndroid Build Coastguard Worker // Set the password to a user generated value. 3387*d5c09012SAndroid Build Coastguard Worker SET_PASSWORD = 1; 3388*d5c09012SAndroid Build Coastguard Worker 3389*d5c09012SAndroid Build Coastguard Worker // Generate a new password and set it to that. 3390*d5c09012SAndroid Build Coastguard Worker GENERATE_PASSWORD = 2; 3391*d5c09012SAndroid Build Coastguard Worker 3392*d5c09012SAndroid Build Coastguard Worker // Set the username. If an empty username is provided, basic authentication 3393*d5c09012SAndroid Build Coastguard Worker // is disabled for the cluster. If a non-empty username is provided, basic 3394*d5c09012SAndroid Build Coastguard Worker // authentication is enabled, with either a provided password or a generated 3395*d5c09012SAndroid Build Coastguard Worker // one. 3396*d5c09012SAndroid Build Coastguard Worker SET_USERNAME = 3; 3397*d5c09012SAndroid Build Coastguard Worker } 3398*d5c09012SAndroid Build Coastguard Worker 3399*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3400*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3401*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3402*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3403*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3404*d5c09012SAndroid Build Coastguard Worker 3405*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3406*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3407*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 3408*d5c09012SAndroid Build Coastguard Worker // field. 3409*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3410*d5c09012SAndroid Build Coastguard Worker 3411*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to upgrade. 3412*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3413*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3414*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3415*d5c09012SAndroid Build Coastguard Worker 3416*d5c09012SAndroid Build Coastguard Worker // Required. The exact form of action to be taken on the master auth. 3417*d5c09012SAndroid Build Coastguard Worker Action action = 4 [(google.api.field_behavior) = REQUIRED]; 3418*d5c09012SAndroid Build Coastguard Worker 3419*d5c09012SAndroid Build Coastguard Worker // Required. A description of the update. 3420*d5c09012SAndroid Build Coastguard Worker MasterAuth update = 5 [(google.api.field_behavior) = REQUIRED]; 3421*d5c09012SAndroid Build Coastguard Worker 3422*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster) of the cluster to set auth. 3423*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*`. 3424*d5c09012SAndroid Build Coastguard Worker string name = 7; 3425*d5c09012SAndroid Build Coastguard Worker} 3426*d5c09012SAndroid Build Coastguard Worker 3427*d5c09012SAndroid Build Coastguard Worker// DeleteClusterRequest deletes a cluster. 3428*d5c09012SAndroid Build Coastguard Workermessage DeleteClusterRequest { 3429*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3430*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3431*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3432*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3433*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3434*d5c09012SAndroid Build Coastguard Worker 3435*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3436*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3437*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 3438*d5c09012SAndroid Build Coastguard Worker // field. 3439*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3440*d5c09012SAndroid Build Coastguard Worker 3441*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to delete. 3442*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3443*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3444*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3445*d5c09012SAndroid Build Coastguard Worker 3446*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster) of the cluster to delete. 3447*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*`. 3448*d5c09012SAndroid Build Coastguard Worker string name = 4; 3449*d5c09012SAndroid Build Coastguard Worker} 3450*d5c09012SAndroid Build Coastguard Worker 3451*d5c09012SAndroid Build Coastguard Worker// ListClustersRequest lists clusters. 3452*d5c09012SAndroid Build Coastguard Workermessage ListClustersRequest { 3453*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3454*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3455*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the parent field. 3456*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3457*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3458*d5c09012SAndroid Build Coastguard Worker 3459*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3460*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3461*d5c09012SAndroid Build Coastguard Worker // cluster resides, or "-" for all zones. This field has been deprecated and 3462*d5c09012SAndroid Build Coastguard Worker // replaced by the parent field. 3463*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3464*d5c09012SAndroid Build Coastguard Worker 3465*d5c09012SAndroid Build Coastguard Worker // The parent (project and location) where the clusters will be listed. 3466*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*`. 3467*d5c09012SAndroid Build Coastguard Worker // Location "-" matches all zones and all regions. 3468*d5c09012SAndroid Build Coastguard Worker string parent = 4; 3469*d5c09012SAndroid Build Coastguard Worker} 3470*d5c09012SAndroid Build Coastguard Worker 3471*d5c09012SAndroid Build Coastguard Worker// ListClustersResponse is the result of ListClustersRequest. 3472*d5c09012SAndroid Build Coastguard Workermessage ListClustersResponse { 3473*d5c09012SAndroid Build Coastguard Worker // A list of clusters in the project in the specified zone, or 3474*d5c09012SAndroid Build Coastguard Worker // across all ones. 3475*d5c09012SAndroid Build Coastguard Worker repeated Cluster clusters = 1; 3476*d5c09012SAndroid Build Coastguard Worker 3477*d5c09012SAndroid Build Coastguard Worker // If any zones are listed here, the list of clusters returned 3478*d5c09012SAndroid Build Coastguard Worker // may be missing those zones. 3479*d5c09012SAndroid Build Coastguard Worker repeated string missing_zones = 2; 3480*d5c09012SAndroid Build Coastguard Worker} 3481*d5c09012SAndroid Build Coastguard Worker 3482*d5c09012SAndroid Build Coastguard Worker// GetOperationRequest gets a single operation. 3483*d5c09012SAndroid Build Coastguard Workermessage GetOperationRequest { 3484*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3485*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3486*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3487*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3488*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3489*d5c09012SAndroid Build Coastguard Worker 3490*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3491*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3492*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 3493*d5c09012SAndroid Build Coastguard Worker // field. 3494*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3495*d5c09012SAndroid Build Coastguard Worker 3496*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The server-assigned `name` of the operation. 3497*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3498*d5c09012SAndroid Build Coastguard Worker string operation_id = 3 3499*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3500*d5c09012SAndroid Build Coastguard Worker 3501*d5c09012SAndroid Build Coastguard Worker // The name (project, location, operation id) of the operation to get. 3502*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/operations/*`. 3503*d5c09012SAndroid Build Coastguard Worker string name = 5; 3504*d5c09012SAndroid Build Coastguard Worker} 3505*d5c09012SAndroid Build Coastguard Worker 3506*d5c09012SAndroid Build Coastguard Worker// ListOperationsRequest lists operations. 3507*d5c09012SAndroid Build Coastguard Workermessage ListOperationsRequest { 3508*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3509*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3510*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the parent field. 3511*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3512*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3513*d5c09012SAndroid Build Coastguard Worker 3514*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3515*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) to return 3516*d5c09012SAndroid Build Coastguard Worker // operations for, or `-` for all zones. This field has been deprecated and 3517*d5c09012SAndroid Build Coastguard Worker // replaced by the parent field. 3518*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3519*d5c09012SAndroid Build Coastguard Worker 3520*d5c09012SAndroid Build Coastguard Worker // The parent (project and location) where the operations will be listed. 3521*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*`. 3522*d5c09012SAndroid Build Coastguard Worker // Location "-" matches all zones and all regions. 3523*d5c09012SAndroid Build Coastguard Worker string parent = 4; 3524*d5c09012SAndroid Build Coastguard Worker} 3525*d5c09012SAndroid Build Coastguard Worker 3526*d5c09012SAndroid Build Coastguard Worker// CancelOperationRequest cancels a single operation. 3527*d5c09012SAndroid Build Coastguard Workermessage CancelOperationRequest { 3528*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3529*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3530*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3531*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3532*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3533*d5c09012SAndroid Build Coastguard Worker 3534*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3535*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3536*d5c09012SAndroid Build Coastguard Worker // operation resides. This field has been deprecated and replaced by the name 3537*d5c09012SAndroid Build Coastguard Worker // field. 3538*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3539*d5c09012SAndroid Build Coastguard Worker 3540*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The server-assigned `name` of the operation. 3541*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3542*d5c09012SAndroid Build Coastguard Worker string operation_id = 3 3543*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3544*d5c09012SAndroid Build Coastguard Worker 3545*d5c09012SAndroid Build Coastguard Worker // The name (project, location, operation id) of the operation to cancel. 3546*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/operations/*`. 3547*d5c09012SAndroid Build Coastguard Worker string name = 4; 3548*d5c09012SAndroid Build Coastguard Worker} 3549*d5c09012SAndroid Build Coastguard Worker 3550*d5c09012SAndroid Build Coastguard Worker// ListOperationsResponse is the result of ListOperationsRequest. 3551*d5c09012SAndroid Build Coastguard Workermessage ListOperationsResponse { 3552*d5c09012SAndroid Build Coastguard Worker // A list of operations in the project in the specified zone. 3553*d5c09012SAndroid Build Coastguard Worker repeated Operation operations = 1; 3554*d5c09012SAndroid Build Coastguard Worker 3555*d5c09012SAndroid Build Coastguard Worker // If any zones are listed here, the list of operations returned 3556*d5c09012SAndroid Build Coastguard Worker // may be missing the operations from those zones. 3557*d5c09012SAndroid Build Coastguard Worker repeated string missing_zones = 2; 3558*d5c09012SAndroid Build Coastguard Worker} 3559*d5c09012SAndroid Build Coastguard Worker 3560*d5c09012SAndroid Build Coastguard Worker// Gets the current Kubernetes Engine service configuration. 3561*d5c09012SAndroid Build Coastguard Workermessage GetServerConfigRequest { 3562*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3563*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3564*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3565*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3566*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3567*d5c09012SAndroid Build Coastguard Worker 3568*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3569*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) to return 3570*d5c09012SAndroid Build Coastguard Worker // operations for. This field has been deprecated and replaced by the name 3571*d5c09012SAndroid Build Coastguard Worker // field. 3572*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3573*d5c09012SAndroid Build Coastguard Worker 3574*d5c09012SAndroid Build Coastguard Worker // The name (project and location) of the server config to get, 3575*d5c09012SAndroid Build Coastguard Worker // specified in the format `projects/*/locations/*`. 3576*d5c09012SAndroid Build Coastguard Worker string name = 4; 3577*d5c09012SAndroid Build Coastguard Worker} 3578*d5c09012SAndroid Build Coastguard Worker 3579*d5c09012SAndroid Build Coastguard Worker// Kubernetes Engine service configuration. 3580*d5c09012SAndroid Build Coastguard Workermessage ServerConfig { 3581*d5c09012SAndroid Build Coastguard Worker // ReleaseChannelConfig exposes configuration for a release channel. 3582*d5c09012SAndroid Build Coastguard Worker message ReleaseChannelConfig { 3583*d5c09012SAndroid Build Coastguard Worker // Deprecated. 3584*d5c09012SAndroid Build Coastguard Worker message AvailableVersion { 3585*d5c09012SAndroid Build Coastguard Worker option deprecated = true; 3586*d5c09012SAndroid Build Coastguard Worker 3587*d5c09012SAndroid Build Coastguard Worker // Kubernetes version. 3588*d5c09012SAndroid Build Coastguard Worker string version = 1; 3589*d5c09012SAndroid Build Coastguard Worker 3590*d5c09012SAndroid Build Coastguard Worker // Reason for availability. 3591*d5c09012SAndroid Build Coastguard Worker string reason = 2; 3592*d5c09012SAndroid Build Coastguard Worker } 3593*d5c09012SAndroid Build Coastguard Worker 3594*d5c09012SAndroid Build Coastguard Worker // The release channel this configuration applies to. 3595*d5c09012SAndroid Build Coastguard Worker ReleaseChannel.Channel channel = 1; 3596*d5c09012SAndroid Build Coastguard Worker 3597*d5c09012SAndroid Build Coastguard Worker // The default version for newly created clusters on the channel. 3598*d5c09012SAndroid Build Coastguard Worker string default_version = 2; 3599*d5c09012SAndroid Build Coastguard Worker 3600*d5c09012SAndroid Build Coastguard Worker // Deprecated. 3601*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced with the valid_versions 3602*d5c09012SAndroid Build Coastguard Worker // field. 3603*d5c09012SAndroid Build Coastguard Worker repeated AvailableVersion available_versions = 3 [deprecated = true]; 3604*d5c09012SAndroid Build Coastguard Worker 3605*d5c09012SAndroid Build Coastguard Worker // List of valid versions for the channel. 3606*d5c09012SAndroid Build Coastguard Worker repeated string valid_versions = 4; 3607*d5c09012SAndroid Build Coastguard Worker } 3608*d5c09012SAndroid Build Coastguard Worker 3609*d5c09012SAndroid Build Coastguard Worker // Version of Kubernetes the service deploys by default. 3610*d5c09012SAndroid Build Coastguard Worker string default_cluster_version = 1; 3611*d5c09012SAndroid Build Coastguard Worker 3612*d5c09012SAndroid Build Coastguard Worker // List of valid node upgrade target versions, in descending order. 3613*d5c09012SAndroid Build Coastguard Worker repeated string valid_node_versions = 3; 3614*d5c09012SAndroid Build Coastguard Worker 3615*d5c09012SAndroid Build Coastguard Worker // Default image type. 3616*d5c09012SAndroid Build Coastguard Worker string default_image_type = 4; 3617*d5c09012SAndroid Build Coastguard Worker 3618*d5c09012SAndroid Build Coastguard Worker // List of valid image types. 3619*d5c09012SAndroid Build Coastguard Worker repeated string valid_image_types = 5; 3620*d5c09012SAndroid Build Coastguard Worker 3621*d5c09012SAndroid Build Coastguard Worker // List of valid master versions, in descending order. 3622*d5c09012SAndroid Build Coastguard Worker repeated string valid_master_versions = 6; 3623*d5c09012SAndroid Build Coastguard Worker 3624*d5c09012SAndroid Build Coastguard Worker // List of release channel configurations. 3625*d5c09012SAndroid Build Coastguard Worker repeated ReleaseChannelConfig channels = 9; 3626*d5c09012SAndroid Build Coastguard Worker 3627*d5c09012SAndroid Build Coastguard Worker // Maps of Kubernetes version and supported Windows server versions. 3628*d5c09012SAndroid Build Coastguard Worker map<string, WindowsVersions> windows_version_maps = 10; 3629*d5c09012SAndroid Build Coastguard Worker} 3630*d5c09012SAndroid Build Coastguard Worker 3631*d5c09012SAndroid Build Coastguard Worker// Best effort provisioning. 3632*d5c09012SAndroid Build Coastguard Workermessage BestEffortProvisioning { 3633*d5c09012SAndroid Build Coastguard Worker // When this is enabled, cluster/node pool creations will ignore non-fatal 3634*d5c09012SAndroid Build Coastguard Worker // errors like stockout to best provision as many nodes as possible right now 3635*d5c09012SAndroid Build Coastguard Worker // and eventually bring up all target number of nodes 3636*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 3637*d5c09012SAndroid Build Coastguard Worker 3638*d5c09012SAndroid Build Coastguard Worker // Minimum number of nodes to be provisioned to be considered as succeeded, 3639*d5c09012SAndroid Build Coastguard Worker // and the rest of nodes will be provisioned gradually and eventually when 3640*d5c09012SAndroid Build Coastguard Worker // stockout issue has been resolved. 3641*d5c09012SAndroid Build Coastguard Worker int32 min_provision_nodes = 2; 3642*d5c09012SAndroid Build Coastguard Worker} 3643*d5c09012SAndroid Build Coastguard Worker 3644*d5c09012SAndroid Build Coastguard Worker// Windows server versions. 3645*d5c09012SAndroid Build Coastguard Workermessage WindowsVersions { 3646*d5c09012SAndroid Build Coastguard Worker // Windows server version. 3647*d5c09012SAndroid Build Coastguard Worker message WindowsVersion { 3648*d5c09012SAndroid Build Coastguard Worker // Windows server image type 3649*d5c09012SAndroid Build Coastguard Worker string image_type = 1; 3650*d5c09012SAndroid Build Coastguard Worker 3651*d5c09012SAndroid Build Coastguard Worker // Windows server build number 3652*d5c09012SAndroid Build Coastguard Worker string os_version = 2; 3653*d5c09012SAndroid Build Coastguard Worker 3654*d5c09012SAndroid Build Coastguard Worker // Mainstream support end date 3655*d5c09012SAndroid Build Coastguard Worker google.type.Date support_end_date = 3; 3656*d5c09012SAndroid Build Coastguard Worker } 3657*d5c09012SAndroid Build Coastguard Worker 3658*d5c09012SAndroid Build Coastguard Worker // List of Windows server versions. 3659*d5c09012SAndroid Build Coastguard Worker repeated WindowsVersion windows_versions = 1; 3660*d5c09012SAndroid Build Coastguard Worker} 3661*d5c09012SAndroid Build Coastguard Worker 3662*d5c09012SAndroid Build Coastguard Worker// CreateNodePoolRequest creates a node pool for a cluster. 3663*d5c09012SAndroid Build Coastguard Workermessage CreateNodePoolRequest { 3664*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3665*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3666*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the parent field. 3667*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3668*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3669*d5c09012SAndroid Build Coastguard Worker 3670*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3671*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3672*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the parent 3673*d5c09012SAndroid Build Coastguard Worker // field. 3674*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3675*d5c09012SAndroid Build Coastguard Worker 3676*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster. 3677*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the parent field. 3678*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3679*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3680*d5c09012SAndroid Build Coastguard Worker 3681*d5c09012SAndroid Build Coastguard Worker // Required. The node pool to create. 3682*d5c09012SAndroid Build Coastguard Worker NodePool node_pool = 4 [(google.api.field_behavior) = REQUIRED]; 3683*d5c09012SAndroid Build Coastguard Worker 3684*d5c09012SAndroid Build Coastguard Worker // The parent (project, location, cluster name) where the node pool will be 3685*d5c09012SAndroid Build Coastguard Worker // created. Specified in the format 3686*d5c09012SAndroid Build Coastguard Worker // `projects/*/locations/*/clusters/*`. 3687*d5c09012SAndroid Build Coastguard Worker string parent = 6; 3688*d5c09012SAndroid Build Coastguard Worker} 3689*d5c09012SAndroid Build Coastguard Worker 3690*d5c09012SAndroid Build Coastguard Worker// DeleteNodePoolRequest deletes a node pool for a cluster. 3691*d5c09012SAndroid Build Coastguard Workermessage DeleteNodePoolRequest { 3692*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3693*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3694*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3695*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3696*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3697*d5c09012SAndroid Build Coastguard Worker 3698*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3699*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3700*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 3701*d5c09012SAndroid Build Coastguard Worker // field. 3702*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3703*d5c09012SAndroid Build Coastguard Worker 3704*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster. 3705*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3706*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3707*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3708*d5c09012SAndroid Build Coastguard Worker 3709*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the node pool to delete. 3710*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3711*d5c09012SAndroid Build Coastguard Worker string node_pool_id = 4 3712*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3713*d5c09012SAndroid Build Coastguard Worker 3714*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster, node pool id) of the node pool to 3715*d5c09012SAndroid Build Coastguard Worker // delete. Specified in the format 3716*d5c09012SAndroid Build Coastguard Worker // `projects/*/locations/*/clusters/*/nodePools/*`. 3717*d5c09012SAndroid Build Coastguard Worker string name = 6; 3718*d5c09012SAndroid Build Coastguard Worker} 3719*d5c09012SAndroid Build Coastguard Worker 3720*d5c09012SAndroid Build Coastguard Worker// ListNodePoolsRequest lists the node pool(s) for a cluster. 3721*d5c09012SAndroid Build Coastguard Workermessage ListNodePoolsRequest { 3722*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3723*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3724*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the parent field. 3725*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3726*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3727*d5c09012SAndroid Build Coastguard Worker 3728*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3729*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3730*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the parent 3731*d5c09012SAndroid Build Coastguard Worker // field. 3732*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3733*d5c09012SAndroid Build Coastguard Worker 3734*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster. 3735*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the parent field. 3736*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3737*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3738*d5c09012SAndroid Build Coastguard Worker 3739*d5c09012SAndroid Build Coastguard Worker // The parent (project, location, cluster name) where the node pools will be 3740*d5c09012SAndroid Build Coastguard Worker // listed. Specified in the format `projects/*/locations/*/clusters/*`. 3741*d5c09012SAndroid Build Coastguard Worker string parent = 5; 3742*d5c09012SAndroid Build Coastguard Worker} 3743*d5c09012SAndroid Build Coastguard Worker 3744*d5c09012SAndroid Build Coastguard Worker// GetNodePoolRequest retrieves a node pool for a cluster. 3745*d5c09012SAndroid Build Coastguard Workermessage GetNodePoolRequest { 3746*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 3747*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 3748*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3749*d5c09012SAndroid Build Coastguard Worker string project_id = 1 3750*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3751*d5c09012SAndroid Build Coastguard Worker 3752*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 3753*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 3754*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 3755*d5c09012SAndroid Build Coastguard Worker // field. 3756*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3757*d5c09012SAndroid Build Coastguard Worker 3758*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster. 3759*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3760*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 3761*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3762*d5c09012SAndroid Build Coastguard Worker 3763*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the node pool. 3764*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 3765*d5c09012SAndroid Build Coastguard Worker string node_pool_id = 4 3766*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 3767*d5c09012SAndroid Build Coastguard Worker 3768*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster, node pool id) of the node pool to 3769*d5c09012SAndroid Build Coastguard Worker // get. Specified in the format 3770*d5c09012SAndroid Build Coastguard Worker // `projects/*/locations/*/clusters/*/nodePools/*`. 3771*d5c09012SAndroid Build Coastguard Worker string name = 6; 3772*d5c09012SAndroid Build Coastguard Worker} 3773*d5c09012SAndroid Build Coastguard Worker 3774*d5c09012SAndroid Build Coastguard Worker// Settings for blue-green upgrade. 3775*d5c09012SAndroid Build Coastguard Workermessage BlueGreenSettings { 3776*d5c09012SAndroid Build Coastguard Worker // Standard rollout policy is the default policy for blue-green. 3777*d5c09012SAndroid Build Coastguard Worker message StandardRolloutPolicy { 3778*d5c09012SAndroid Build Coastguard Worker // Blue pool size to drain in a batch. 3779*d5c09012SAndroid Build Coastguard Worker oneof update_batch_size { 3780*d5c09012SAndroid Build Coastguard Worker // Percentage of the blue pool nodes to drain in a batch. 3781*d5c09012SAndroid Build Coastguard Worker // The range of this field should be (0.0, 1.0]. 3782*d5c09012SAndroid Build Coastguard Worker float batch_percentage = 1; 3783*d5c09012SAndroid Build Coastguard Worker 3784*d5c09012SAndroid Build Coastguard Worker // Number of blue nodes to drain in a batch. 3785*d5c09012SAndroid Build Coastguard Worker int32 batch_node_count = 2; 3786*d5c09012SAndroid Build Coastguard Worker } 3787*d5c09012SAndroid Build Coastguard Worker 3788*d5c09012SAndroid Build Coastguard Worker // Soak time after each batch gets drained. Default to zero. 3789*d5c09012SAndroid Build Coastguard Worker optional google.protobuf.Duration batch_soak_duration = 3; 3790*d5c09012SAndroid Build Coastguard Worker } 3791*d5c09012SAndroid Build Coastguard Worker 3792*d5c09012SAndroid Build Coastguard Worker // Autoscaled rollout policy uses cluster autoscaler during 3793*d5c09012SAndroid Build Coastguard Worker // blue-green upgrades to scale both the green and blue pools. 3794*d5c09012SAndroid Build Coastguard Worker message AutoscaledRolloutPolicy {} 3795*d5c09012SAndroid Build Coastguard Worker 3796*d5c09012SAndroid Build Coastguard Worker // The rollout policy controls the general rollout progress of blue-green. 3797*d5c09012SAndroid Build Coastguard Worker oneof rollout_policy { 3798*d5c09012SAndroid Build Coastguard Worker // Standard policy for the blue-green upgrade. 3799*d5c09012SAndroid Build Coastguard Worker StandardRolloutPolicy standard_rollout_policy = 1; 3800*d5c09012SAndroid Build Coastguard Worker 3801*d5c09012SAndroid Build Coastguard Worker // Autoscaled policy for cluster autoscaler enabled blue-green upgrade. 3802*d5c09012SAndroid Build Coastguard Worker AutoscaledRolloutPolicy autoscaled_rollout_policy = 3; 3803*d5c09012SAndroid Build Coastguard Worker } 3804*d5c09012SAndroid Build Coastguard Worker 3805*d5c09012SAndroid Build Coastguard Worker // Time needed after draining entire blue pool. After this period, blue pool 3806*d5c09012SAndroid Build Coastguard Worker // will be cleaned up. 3807*d5c09012SAndroid Build Coastguard Worker optional google.protobuf.Duration node_pool_soak_duration = 2; 3808*d5c09012SAndroid Build Coastguard Worker} 3809*d5c09012SAndroid Build Coastguard Worker 3810*d5c09012SAndroid Build Coastguard Worker// NodePool contains the name and configuration for a cluster's node pool. 3811*d5c09012SAndroid Build Coastguard Worker// Node pools are a set of nodes (i.e. VM's), with a common configuration and 3812*d5c09012SAndroid Build Coastguard Worker// specification, under the control of the cluster master. They may have a set 3813*d5c09012SAndroid Build Coastguard Worker// of Kubernetes labels applied to them, which may be used to reference them 3814*d5c09012SAndroid Build Coastguard Worker// during pod scheduling. They may also be resized up or down, to accommodate 3815*d5c09012SAndroid Build Coastguard Worker// the workload. 3816*d5c09012SAndroid Build Coastguard Workermessage NodePool { 3817*d5c09012SAndroid Build Coastguard Worker // These upgrade settings control the level of parallelism and the level of 3818*d5c09012SAndroid Build Coastguard Worker // disruption caused by an upgrade. 3819*d5c09012SAndroid Build Coastguard Worker // 3820*d5c09012SAndroid Build Coastguard Worker // maxUnavailable controls the number of nodes that can be simultaneously 3821*d5c09012SAndroid Build Coastguard Worker // unavailable. 3822*d5c09012SAndroid Build Coastguard Worker // 3823*d5c09012SAndroid Build Coastguard Worker // maxSurge controls the number of additional nodes that can be added to the 3824*d5c09012SAndroid Build Coastguard Worker // node pool temporarily for the time of the upgrade to increase the number of 3825*d5c09012SAndroid Build Coastguard Worker // available nodes. 3826*d5c09012SAndroid Build Coastguard Worker // 3827*d5c09012SAndroid Build Coastguard Worker // (maxUnavailable + maxSurge) determines the level of parallelism (how many 3828*d5c09012SAndroid Build Coastguard Worker // nodes are being upgraded at the same time). 3829*d5c09012SAndroid Build Coastguard Worker // 3830*d5c09012SAndroid Build Coastguard Worker // Note: upgrades inevitably introduce some disruption since workloads need to 3831*d5c09012SAndroid Build Coastguard Worker // be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0, 3832*d5c09012SAndroid Build Coastguard Worker // this holds true. (Disruption stays within the limits of 3833*d5c09012SAndroid Build Coastguard Worker // PodDisruptionBudget, if it is configured.) 3834*d5c09012SAndroid Build Coastguard Worker // 3835*d5c09012SAndroid Build Coastguard Worker // Consider a hypothetical node pool with 5 nodes having maxSurge=2, 3836*d5c09012SAndroid Build Coastguard Worker // maxUnavailable=1. This means the upgrade process upgrades 3 nodes 3837*d5c09012SAndroid Build Coastguard Worker // simultaneously. It creates 2 additional (upgraded) nodes, then it brings 3838*d5c09012SAndroid Build Coastguard Worker // down 3 old (not yet upgraded) nodes at the same time. This ensures that 3839*d5c09012SAndroid Build Coastguard Worker // there are always at least 4 nodes available. 3840*d5c09012SAndroid Build Coastguard Worker // 3841*d5c09012SAndroid Build Coastguard Worker // These upgrade settings configure the upgrade strategy for the node pool. 3842*d5c09012SAndroid Build Coastguard Worker // Use strategy to switch between the strategies applied to the node pool. 3843*d5c09012SAndroid Build Coastguard Worker // 3844*d5c09012SAndroid Build Coastguard Worker // If the strategy is SURGE, use max_surge and max_unavailable to control 3845*d5c09012SAndroid Build Coastguard Worker // the level of parallelism and the level of disruption caused by upgrade. 3846*d5c09012SAndroid Build Coastguard Worker // 1. maxSurge controls the number of additional nodes that can be added to 3847*d5c09012SAndroid Build Coastguard Worker // the node pool temporarily for the time of the upgrade to increase the 3848*d5c09012SAndroid Build Coastguard Worker // number of available nodes. 3849*d5c09012SAndroid Build Coastguard Worker // 2. maxUnavailable controls the number of nodes that can be simultaneously 3850*d5c09012SAndroid Build Coastguard Worker // unavailable. 3851*d5c09012SAndroid Build Coastguard Worker // 3. (maxUnavailable + maxSurge) determines the level of parallelism (how 3852*d5c09012SAndroid Build Coastguard Worker // many nodes are being upgraded at the same time). 3853*d5c09012SAndroid Build Coastguard Worker // 3854*d5c09012SAndroid Build Coastguard Worker // If the strategy is BLUE_GREEN, use blue_green_settings to configure the 3855*d5c09012SAndroid Build Coastguard Worker // blue-green upgrade related settings. 3856*d5c09012SAndroid Build Coastguard Worker // 1. standard_rollout_policy is the default policy. The policy is used to 3857*d5c09012SAndroid Build Coastguard Worker // control the way blue pool gets drained. The draining is executed in the 3858*d5c09012SAndroid Build Coastguard Worker // batch mode. The batch size could be specified as either percentage of the 3859*d5c09012SAndroid Build Coastguard Worker // node pool size or the number of nodes. batch_soak_duration is the soak 3860*d5c09012SAndroid Build Coastguard Worker // time after each batch gets drained. 3861*d5c09012SAndroid Build Coastguard Worker // 2. node_pool_soak_duration is the soak time after all blue nodes are 3862*d5c09012SAndroid Build Coastguard Worker // drained. After this period, the blue pool nodes will be deleted. 3863*d5c09012SAndroid Build Coastguard Worker message UpgradeSettings { 3864*d5c09012SAndroid Build Coastguard Worker // The maximum number of nodes that can be created beyond the current size 3865*d5c09012SAndroid Build Coastguard Worker // of the node pool during the upgrade process. 3866*d5c09012SAndroid Build Coastguard Worker int32 max_surge = 1; 3867*d5c09012SAndroid Build Coastguard Worker 3868*d5c09012SAndroid Build Coastguard Worker // The maximum number of nodes that can be simultaneously unavailable during 3869*d5c09012SAndroid Build Coastguard Worker // the upgrade process. A node is considered available if its status is 3870*d5c09012SAndroid Build Coastguard Worker // Ready. 3871*d5c09012SAndroid Build Coastguard Worker int32 max_unavailable = 2; 3872*d5c09012SAndroid Build Coastguard Worker 3873*d5c09012SAndroid Build Coastguard Worker // Update strategy of the node pool. 3874*d5c09012SAndroid Build Coastguard Worker optional NodePoolUpdateStrategy strategy = 3; 3875*d5c09012SAndroid Build Coastguard Worker 3876*d5c09012SAndroid Build Coastguard Worker // Settings for blue-green upgrade strategy. 3877*d5c09012SAndroid Build Coastguard Worker optional BlueGreenSettings blue_green_settings = 4; 3878*d5c09012SAndroid Build Coastguard Worker } 3879*d5c09012SAndroid Build Coastguard Worker 3880*d5c09012SAndroid Build Coastguard Worker // UpdateInfo contains resource (instance groups, etc), status and other 3881*d5c09012SAndroid Build Coastguard Worker // intermediate information relevant to a node pool upgrade. 3882*d5c09012SAndroid Build Coastguard Worker message UpdateInfo { 3883*d5c09012SAndroid Build Coastguard Worker // Information relevant to blue-green upgrade. 3884*d5c09012SAndroid Build Coastguard Worker message BlueGreenInfo { 3885*d5c09012SAndroid Build Coastguard Worker // Phase represents the different stages blue-green upgrade is running in. 3886*d5c09012SAndroid Build Coastguard Worker enum Phase { 3887*d5c09012SAndroid Build Coastguard Worker // Unspecified phase. 3888*d5c09012SAndroid Build Coastguard Worker PHASE_UNSPECIFIED = 0; 3889*d5c09012SAndroid Build Coastguard Worker 3890*d5c09012SAndroid Build Coastguard Worker // blue-green upgrade has been initiated. 3891*d5c09012SAndroid Build Coastguard Worker UPDATE_STARTED = 1; 3892*d5c09012SAndroid Build Coastguard Worker 3893*d5c09012SAndroid Build Coastguard Worker // Start creating green pool nodes. 3894*d5c09012SAndroid Build Coastguard Worker CREATING_GREEN_POOL = 2; 3895*d5c09012SAndroid Build Coastguard Worker 3896*d5c09012SAndroid Build Coastguard Worker // Start cordoning blue pool nodes. 3897*d5c09012SAndroid Build Coastguard Worker CORDONING_BLUE_POOL = 3; 3898*d5c09012SAndroid Build Coastguard Worker 3899*d5c09012SAndroid Build Coastguard Worker // Start waiting after cordoning the blue pool and before draining it. 3900*d5c09012SAndroid Build Coastguard Worker WAITING_TO_DRAIN_BLUE_POOL = 8; 3901*d5c09012SAndroid Build Coastguard Worker 3902*d5c09012SAndroid Build Coastguard Worker // Start draining blue pool nodes. 3903*d5c09012SAndroid Build Coastguard Worker DRAINING_BLUE_POOL = 4; 3904*d5c09012SAndroid Build Coastguard Worker 3905*d5c09012SAndroid Build Coastguard Worker // Start soaking time after draining entire blue pool. 3906*d5c09012SAndroid Build Coastguard Worker NODE_POOL_SOAKING = 5; 3907*d5c09012SAndroid Build Coastguard Worker 3908*d5c09012SAndroid Build Coastguard Worker // Start deleting blue nodes. 3909*d5c09012SAndroid Build Coastguard Worker DELETING_BLUE_POOL = 6; 3910*d5c09012SAndroid Build Coastguard Worker 3911*d5c09012SAndroid Build Coastguard Worker // Rollback has been initiated. 3912*d5c09012SAndroid Build Coastguard Worker ROLLBACK_STARTED = 7; 3913*d5c09012SAndroid Build Coastguard Worker } 3914*d5c09012SAndroid Build Coastguard Worker 3915*d5c09012SAndroid Build Coastguard Worker // Current blue-green upgrade phase. 3916*d5c09012SAndroid Build Coastguard Worker Phase phase = 1; 3917*d5c09012SAndroid Build Coastguard Worker 3918*d5c09012SAndroid Build Coastguard Worker // The resource URLs of the [managed instance groups] 3919*d5c09012SAndroid Build Coastguard Worker // (/compute/docs/instance-groups/creating-groups-of-managed-instances) 3920*d5c09012SAndroid Build Coastguard Worker // associated with blue pool. 3921*d5c09012SAndroid Build Coastguard Worker repeated string blue_instance_group_urls = 2; 3922*d5c09012SAndroid Build Coastguard Worker 3923*d5c09012SAndroid Build Coastguard Worker // The resource URLs of the [managed instance groups] 3924*d5c09012SAndroid Build Coastguard Worker // (/compute/docs/instance-groups/creating-groups-of-managed-instances) 3925*d5c09012SAndroid Build Coastguard Worker // associated with green pool. 3926*d5c09012SAndroid Build Coastguard Worker repeated string green_instance_group_urls = 3; 3927*d5c09012SAndroid Build Coastguard Worker 3928*d5c09012SAndroid Build Coastguard Worker // Time to start deleting blue pool to complete blue-green upgrade, 3929*d5c09012SAndroid Build Coastguard Worker // in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. 3930*d5c09012SAndroid Build Coastguard Worker string blue_pool_deletion_start_time = 4; 3931*d5c09012SAndroid Build Coastguard Worker 3932*d5c09012SAndroid Build Coastguard Worker // Version of green pool. 3933*d5c09012SAndroid Build Coastguard Worker string green_pool_version = 5; 3934*d5c09012SAndroid Build Coastguard Worker } 3935*d5c09012SAndroid Build Coastguard Worker 3936*d5c09012SAndroid Build Coastguard Worker // Information of a blue-green upgrade. 3937*d5c09012SAndroid Build Coastguard Worker BlueGreenInfo blue_green_info = 1; 3938*d5c09012SAndroid Build Coastguard Worker } 3939*d5c09012SAndroid Build Coastguard Worker 3940*d5c09012SAndroid Build Coastguard Worker // The current status of the node pool instance. 3941*d5c09012SAndroid Build Coastguard Worker enum Status { 3942*d5c09012SAndroid Build Coastguard Worker // Not set. 3943*d5c09012SAndroid Build Coastguard Worker STATUS_UNSPECIFIED = 0; 3944*d5c09012SAndroid Build Coastguard Worker 3945*d5c09012SAndroid Build Coastguard Worker // The PROVISIONING state indicates the node pool is being created. 3946*d5c09012SAndroid Build Coastguard Worker PROVISIONING = 1; 3947*d5c09012SAndroid Build Coastguard Worker 3948*d5c09012SAndroid Build Coastguard Worker // The RUNNING state indicates the node pool has been created 3949*d5c09012SAndroid Build Coastguard Worker // and is fully usable. 3950*d5c09012SAndroid Build Coastguard Worker RUNNING = 2; 3951*d5c09012SAndroid Build Coastguard Worker 3952*d5c09012SAndroid Build Coastguard Worker // The RUNNING_WITH_ERROR state indicates the node pool has been created 3953*d5c09012SAndroid Build Coastguard Worker // and is partially usable. Some error state has occurred and some 3954*d5c09012SAndroid Build Coastguard Worker // functionality may be impaired. Customer may need to reissue a request 3955*d5c09012SAndroid Build Coastguard Worker // or trigger a new update. 3956*d5c09012SAndroid Build Coastguard Worker RUNNING_WITH_ERROR = 3; 3957*d5c09012SAndroid Build Coastguard Worker 3958*d5c09012SAndroid Build Coastguard Worker // The RECONCILING state indicates that some work is actively being done on 3959*d5c09012SAndroid Build Coastguard Worker // the node pool, such as upgrading node software. Details can 3960*d5c09012SAndroid Build Coastguard Worker // be found in the `statusMessage` field. 3961*d5c09012SAndroid Build Coastguard Worker RECONCILING = 4; 3962*d5c09012SAndroid Build Coastguard Worker 3963*d5c09012SAndroid Build Coastguard Worker // The STOPPING state indicates the node pool is being deleted. 3964*d5c09012SAndroid Build Coastguard Worker STOPPING = 5; 3965*d5c09012SAndroid Build Coastguard Worker 3966*d5c09012SAndroid Build Coastguard Worker // The ERROR state indicates the node pool may be unusable. Details 3967*d5c09012SAndroid Build Coastguard Worker // can be found in the `statusMessage` field. 3968*d5c09012SAndroid Build Coastguard Worker ERROR = 6; 3969*d5c09012SAndroid Build Coastguard Worker } 3970*d5c09012SAndroid Build Coastguard Worker 3971*d5c09012SAndroid Build Coastguard Worker // PlacementPolicy defines the placement policy used by the node pool. 3972*d5c09012SAndroid Build Coastguard Worker message PlacementPolicy { 3973*d5c09012SAndroid Build Coastguard Worker // Type defines the type of placement policy. 3974*d5c09012SAndroid Build Coastguard Worker enum Type { 3975*d5c09012SAndroid Build Coastguard Worker // TYPE_UNSPECIFIED specifies no requirements on nodes 3976*d5c09012SAndroid Build Coastguard Worker // placement. 3977*d5c09012SAndroid Build Coastguard Worker TYPE_UNSPECIFIED = 0; 3978*d5c09012SAndroid Build Coastguard Worker 3979*d5c09012SAndroid Build Coastguard Worker // COMPACT specifies node placement in the same availability domain to 3980*d5c09012SAndroid Build Coastguard Worker // ensure low communication latency. 3981*d5c09012SAndroid Build Coastguard Worker COMPACT = 1; 3982*d5c09012SAndroid Build Coastguard Worker } 3983*d5c09012SAndroid Build Coastguard Worker 3984*d5c09012SAndroid Build Coastguard Worker // The type of placement. 3985*d5c09012SAndroid Build Coastguard Worker Type type = 1; 3986*d5c09012SAndroid Build Coastguard Worker 3987*d5c09012SAndroid Build Coastguard Worker // TPU placement topology for pod slice node pool. 3988*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/tpu/docs/types-topologies#tpu_topologies 3989*d5c09012SAndroid Build Coastguard Worker string tpu_topology = 2; 3990*d5c09012SAndroid Build Coastguard Worker 3991*d5c09012SAndroid Build Coastguard Worker // If set, refers to the name of a custom resource policy supplied by the 3992*d5c09012SAndroid Build Coastguard Worker // user. The resource policy must be in the same project and region as the 3993*d5c09012SAndroid Build Coastguard Worker // node pool. If not found, InvalidArgument error is returned. 3994*d5c09012SAndroid Build Coastguard Worker string policy_name = 3; 3995*d5c09012SAndroid Build Coastguard Worker } 3996*d5c09012SAndroid Build Coastguard Worker 3997*d5c09012SAndroid Build Coastguard Worker // QueuedProvisioning defines the queued provisioning used by the node pool. 3998*d5c09012SAndroid Build Coastguard Worker message QueuedProvisioning { 3999*d5c09012SAndroid Build Coastguard Worker // Denotes that this nodepool is QRM specific, meaning nodes can be only 4000*d5c09012SAndroid Build Coastguard Worker // obtained through queuing via the Cluster Autoscaler ProvisioningRequest 4001*d5c09012SAndroid Build Coastguard Worker // API. 4002*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 4003*d5c09012SAndroid Build Coastguard Worker } 4004*d5c09012SAndroid Build Coastguard Worker 4005*d5c09012SAndroid Build Coastguard Worker // The name of the node pool. 4006*d5c09012SAndroid Build Coastguard Worker string name = 1; 4007*d5c09012SAndroid Build Coastguard Worker 4008*d5c09012SAndroid Build Coastguard Worker // The node configuration of the pool. 4009*d5c09012SAndroid Build Coastguard Worker NodeConfig config = 2; 4010*d5c09012SAndroid Build Coastguard Worker 4011*d5c09012SAndroid Build Coastguard Worker // The initial node count for the pool. You must ensure that your 4012*d5c09012SAndroid Build Coastguard Worker // Compute Engine [resource quota](https://cloud.google.com/compute/quotas) 4013*d5c09012SAndroid Build Coastguard Worker // is sufficient for this number of instances. You must also have available 4014*d5c09012SAndroid Build Coastguard Worker // firewall and routes quota. 4015*d5c09012SAndroid Build Coastguard Worker int32 initial_node_count = 3; 4016*d5c09012SAndroid Build Coastguard Worker 4017*d5c09012SAndroid Build Coastguard Worker // The list of Google Compute Engine 4018*d5c09012SAndroid Build Coastguard Worker // [zones](https://cloud.google.com/compute/docs/zones#available) in which the 4019*d5c09012SAndroid Build Coastguard Worker // NodePool's nodes should be located. 4020*d5c09012SAndroid Build Coastguard Worker // 4021*d5c09012SAndroid Build Coastguard Worker // If this value is unspecified during node pool creation, the 4022*d5c09012SAndroid Build Coastguard Worker // [Cluster.Locations](https://cloud.google.com/kubernetes-engine/docs/reference/rest/v1/projects.locations.clusters#Cluster.FIELDS.locations) 4023*d5c09012SAndroid Build Coastguard Worker // value will be used, instead. 4024*d5c09012SAndroid Build Coastguard Worker // 4025*d5c09012SAndroid Build Coastguard Worker // Warning: changing node pool locations will result in nodes being added 4026*d5c09012SAndroid Build Coastguard Worker // and/or removed. 4027*d5c09012SAndroid Build Coastguard Worker repeated string locations = 13; 4028*d5c09012SAndroid Build Coastguard Worker 4029*d5c09012SAndroid Build Coastguard Worker // Networking configuration for this NodePool. If specified, it overrides the 4030*d5c09012SAndroid Build Coastguard Worker // cluster-level defaults. 4031*d5c09012SAndroid Build Coastguard Worker NodeNetworkConfig network_config = 14; 4032*d5c09012SAndroid Build Coastguard Worker 4033*d5c09012SAndroid Build Coastguard Worker // [Output only] Server-defined URL for the resource. 4034*d5c09012SAndroid Build Coastguard Worker string self_link = 100; 4035*d5c09012SAndroid Build Coastguard Worker 4036*d5c09012SAndroid Build Coastguard Worker // The version of Kubernetes running on this NodePool's nodes. If unspecified, 4037*d5c09012SAndroid Build Coastguard Worker // it defaults as described 4038*d5c09012SAndroid Build Coastguard Worker // [here](https://cloud.google.com/kubernetes-engine/versioning#specifying_node_version). 4039*d5c09012SAndroid Build Coastguard Worker string version = 101; 4040*d5c09012SAndroid Build Coastguard Worker 4041*d5c09012SAndroid Build Coastguard Worker // [Output only] The resource URLs of the [managed instance 4042*d5c09012SAndroid Build Coastguard Worker // groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances) 4043*d5c09012SAndroid Build Coastguard Worker // associated with this node pool. 4044*d5c09012SAndroid Build Coastguard Worker // During the node pool blue-green upgrade operation, the URLs contain both 4045*d5c09012SAndroid Build Coastguard Worker // blue and green resources. 4046*d5c09012SAndroid Build Coastguard Worker repeated string instance_group_urls = 102; 4047*d5c09012SAndroid Build Coastguard Worker 4048*d5c09012SAndroid Build Coastguard Worker // [Output only] The status of the nodes in this pool instance. 4049*d5c09012SAndroid Build Coastguard Worker Status status = 103; 4050*d5c09012SAndroid Build Coastguard Worker 4051*d5c09012SAndroid Build Coastguard Worker // [Output only] Deprecated. Use conditions instead. 4052*d5c09012SAndroid Build Coastguard Worker // Additional information about the current status of this 4053*d5c09012SAndroid Build Coastguard Worker // node pool instance, if available. 4054*d5c09012SAndroid Build Coastguard Worker string status_message = 104 [deprecated = true]; 4055*d5c09012SAndroid Build Coastguard Worker 4056*d5c09012SAndroid Build Coastguard Worker // Autoscaler configuration for this NodePool. Autoscaler is enabled 4057*d5c09012SAndroid Build Coastguard Worker // only if a valid configuration is present. 4058*d5c09012SAndroid Build Coastguard Worker NodePoolAutoscaling autoscaling = 4; 4059*d5c09012SAndroid Build Coastguard Worker 4060*d5c09012SAndroid Build Coastguard Worker // NodeManagement configuration for this NodePool. 4061*d5c09012SAndroid Build Coastguard Worker NodeManagement management = 5; 4062*d5c09012SAndroid Build Coastguard Worker 4063*d5c09012SAndroid Build Coastguard Worker // The constraint on the maximum number of pods that can be run 4064*d5c09012SAndroid Build Coastguard Worker // simultaneously on a node in the node pool. 4065*d5c09012SAndroid Build Coastguard Worker MaxPodsConstraint max_pods_constraint = 6; 4066*d5c09012SAndroid Build Coastguard Worker 4067*d5c09012SAndroid Build Coastguard Worker // Which conditions caused the current node pool state. 4068*d5c09012SAndroid Build Coastguard Worker repeated StatusCondition conditions = 105; 4069*d5c09012SAndroid Build Coastguard Worker 4070*d5c09012SAndroid Build Coastguard Worker // [Output only] The pod CIDR block size per node in this node pool. 4071*d5c09012SAndroid Build Coastguard Worker int32 pod_ipv4_cidr_size = 7; 4072*d5c09012SAndroid Build Coastguard Worker 4073*d5c09012SAndroid Build Coastguard Worker // Upgrade settings control disruption and speed of the upgrade. 4074*d5c09012SAndroid Build Coastguard Worker UpgradeSettings upgrade_settings = 107; 4075*d5c09012SAndroid Build Coastguard Worker 4076*d5c09012SAndroid Build Coastguard Worker // Specifies the node placement policy. 4077*d5c09012SAndroid Build Coastguard Worker PlacementPolicy placement_policy = 108; 4078*d5c09012SAndroid Build Coastguard Worker 4079*d5c09012SAndroid Build Coastguard Worker // Output only. [Output only] Update info contains relevant information during 4080*d5c09012SAndroid Build Coastguard Worker // a node pool update. 4081*d5c09012SAndroid Build Coastguard Worker UpdateInfo update_info = 109 [(google.api.field_behavior) = OUTPUT_ONLY]; 4082*d5c09012SAndroid Build Coastguard Worker 4083*d5c09012SAndroid Build Coastguard Worker // This checksum is computed by the server based on the value of node pool 4084*d5c09012SAndroid Build Coastguard Worker // fields, and may be sent on update requests to ensure the client has an 4085*d5c09012SAndroid Build Coastguard Worker // up-to-date value before proceeding. 4086*d5c09012SAndroid Build Coastguard Worker string etag = 110; 4087*d5c09012SAndroid Build Coastguard Worker 4088*d5c09012SAndroid Build Coastguard Worker // Specifies the configuration of queued provisioning. 4089*d5c09012SAndroid Build Coastguard Worker QueuedProvisioning queued_provisioning = 112; 4090*d5c09012SAndroid Build Coastguard Worker 4091*d5c09012SAndroid Build Coastguard Worker // Enable best effort provisioning for nodes 4092*d5c09012SAndroid Build Coastguard Worker BestEffortProvisioning best_effort_provisioning = 113; 4093*d5c09012SAndroid Build Coastguard Worker} 4094*d5c09012SAndroid Build Coastguard Worker 4095*d5c09012SAndroid Build Coastguard Worker// NodeManagement defines the set of node management services turned on for the 4096*d5c09012SAndroid Build Coastguard Worker// node pool. 4097*d5c09012SAndroid Build Coastguard Workermessage NodeManagement { 4098*d5c09012SAndroid Build Coastguard Worker // Whether the nodes will be automatically upgraded. 4099*d5c09012SAndroid Build Coastguard Worker bool auto_upgrade = 1; 4100*d5c09012SAndroid Build Coastguard Worker 4101*d5c09012SAndroid Build Coastguard Worker // Whether the nodes will be automatically repaired. 4102*d5c09012SAndroid Build Coastguard Worker bool auto_repair = 2; 4103*d5c09012SAndroid Build Coastguard Worker 4104*d5c09012SAndroid Build Coastguard Worker // Specifies the Auto Upgrade knobs for the node pool. 4105*d5c09012SAndroid Build Coastguard Worker AutoUpgradeOptions upgrade_options = 10; 4106*d5c09012SAndroid Build Coastguard Worker} 4107*d5c09012SAndroid Build Coastguard Worker 4108*d5c09012SAndroid Build Coastguard Worker// AutoUpgradeOptions defines the set of options for the user to control how 4109*d5c09012SAndroid Build Coastguard Worker// the Auto Upgrades will proceed. 4110*d5c09012SAndroid Build Coastguard Workermessage AutoUpgradeOptions { 4111*d5c09012SAndroid Build Coastguard Worker // [Output only] This field is set when upgrades are about to commence 4112*d5c09012SAndroid Build Coastguard Worker // with the approximate start time for the upgrades, in 4113*d5c09012SAndroid Build Coastguard Worker // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. 4114*d5c09012SAndroid Build Coastguard Worker string auto_upgrade_start_time = 1; 4115*d5c09012SAndroid Build Coastguard Worker 4116*d5c09012SAndroid Build Coastguard Worker // [Output only] This field is set when upgrades are about to commence 4117*d5c09012SAndroid Build Coastguard Worker // with the description of the upgrade. 4118*d5c09012SAndroid Build Coastguard Worker string description = 2; 4119*d5c09012SAndroid Build Coastguard Worker} 4120*d5c09012SAndroid Build Coastguard Worker 4121*d5c09012SAndroid Build Coastguard Worker// MaintenancePolicy defines the maintenance policy to be used for the cluster. 4122*d5c09012SAndroid Build Coastguard Workermessage MaintenancePolicy { 4123*d5c09012SAndroid Build Coastguard Worker // Specifies the maintenance window in which maintenance may be performed. 4124*d5c09012SAndroid Build Coastguard Worker MaintenanceWindow window = 1; 4125*d5c09012SAndroid Build Coastguard Worker 4126*d5c09012SAndroid Build Coastguard Worker // A hash identifying the version of this policy, so that updates to fields of 4127*d5c09012SAndroid Build Coastguard Worker // the policy won't accidentally undo intermediate changes (and so that users 4128*d5c09012SAndroid Build Coastguard Worker // of the API unaware of some fields won't accidentally remove other fields). 4129*d5c09012SAndroid Build Coastguard Worker // Make a `get()` request to the cluster to get the current 4130*d5c09012SAndroid Build Coastguard Worker // resource version and include it with requests to set the policy. 4131*d5c09012SAndroid Build Coastguard Worker string resource_version = 3; 4132*d5c09012SAndroid Build Coastguard Worker} 4133*d5c09012SAndroid Build Coastguard Worker 4134*d5c09012SAndroid Build Coastguard Worker// MaintenanceWindow defines the maintenance window to be used for the cluster. 4135*d5c09012SAndroid Build Coastguard Workermessage MaintenanceWindow { 4136*d5c09012SAndroid Build Coastguard Worker // Unimplemented, reserved for future use. 4137*d5c09012SAndroid Build Coastguard Worker // HourlyMaintenanceWindow hourly_maintenance_window = 1; 4138*d5c09012SAndroid Build Coastguard Worker oneof policy { 4139*d5c09012SAndroid Build Coastguard Worker // DailyMaintenanceWindow specifies a daily maintenance operation window. 4140*d5c09012SAndroid Build Coastguard Worker DailyMaintenanceWindow daily_maintenance_window = 2; 4141*d5c09012SAndroid Build Coastguard Worker 4142*d5c09012SAndroid Build Coastguard Worker // RecurringWindow specifies some number of recurring time periods for 4143*d5c09012SAndroid Build Coastguard Worker // maintenance to occur. The time windows may be overlapping. If no 4144*d5c09012SAndroid Build Coastguard Worker // maintenance windows are set, maintenance can occur at any time. 4145*d5c09012SAndroid Build Coastguard Worker RecurringTimeWindow recurring_window = 3; 4146*d5c09012SAndroid Build Coastguard Worker } 4147*d5c09012SAndroid Build Coastguard Worker 4148*d5c09012SAndroid Build Coastguard Worker // Exceptions to maintenance window. Non-emergency maintenance should not 4149*d5c09012SAndroid Build Coastguard Worker // occur in these windows. 4150*d5c09012SAndroid Build Coastguard Worker map<string, TimeWindow> maintenance_exclusions = 4; 4151*d5c09012SAndroid Build Coastguard Worker} 4152*d5c09012SAndroid Build Coastguard Worker 4153*d5c09012SAndroid Build Coastguard Worker// Represents an arbitrary window of time. 4154*d5c09012SAndroid Build Coastguard Workermessage TimeWindow { 4155*d5c09012SAndroid Build Coastguard Worker oneof options { 4156*d5c09012SAndroid Build Coastguard Worker // MaintenanceExclusionOptions provides maintenance exclusion related 4157*d5c09012SAndroid Build Coastguard Worker // options. 4158*d5c09012SAndroid Build Coastguard Worker MaintenanceExclusionOptions maintenance_exclusion_options = 3; 4159*d5c09012SAndroid Build Coastguard Worker } 4160*d5c09012SAndroid Build Coastguard Worker 4161*d5c09012SAndroid Build Coastguard Worker // The time that the window first starts. 4162*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp start_time = 1; 4163*d5c09012SAndroid Build Coastguard Worker 4164*d5c09012SAndroid Build Coastguard Worker // The time that the window ends. The end time should take place after the 4165*d5c09012SAndroid Build Coastguard Worker // start time. 4166*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp end_time = 2; 4167*d5c09012SAndroid Build Coastguard Worker} 4168*d5c09012SAndroid Build Coastguard Worker 4169*d5c09012SAndroid Build Coastguard Worker// Represents the Maintenance exclusion option. 4170*d5c09012SAndroid Build Coastguard Workermessage MaintenanceExclusionOptions { 4171*d5c09012SAndroid Build Coastguard Worker // Scope of exclusion. 4172*d5c09012SAndroid Build Coastguard Worker enum Scope { 4173*d5c09012SAndroid Build Coastguard Worker // NO_UPGRADES excludes all upgrades, including patch upgrades and minor 4174*d5c09012SAndroid Build Coastguard Worker // upgrades across control planes and nodes. This is the default exclusion 4175*d5c09012SAndroid Build Coastguard Worker // behavior. 4176*d5c09012SAndroid Build Coastguard Worker NO_UPGRADES = 0; 4177*d5c09012SAndroid Build Coastguard Worker 4178*d5c09012SAndroid Build Coastguard Worker // NO_MINOR_UPGRADES excludes all minor upgrades for the cluster, only 4179*d5c09012SAndroid Build Coastguard Worker // patches are allowed. 4180*d5c09012SAndroid Build Coastguard Worker NO_MINOR_UPGRADES = 1; 4181*d5c09012SAndroid Build Coastguard Worker 4182*d5c09012SAndroid Build Coastguard Worker // NO_MINOR_OR_NODE_UPGRADES excludes all minor upgrades for the cluster, 4183*d5c09012SAndroid Build Coastguard Worker // and also exclude all node pool upgrades. Only control 4184*d5c09012SAndroid Build Coastguard Worker // plane patches are allowed. 4185*d5c09012SAndroid Build Coastguard Worker NO_MINOR_OR_NODE_UPGRADES = 2; 4186*d5c09012SAndroid Build Coastguard Worker } 4187*d5c09012SAndroid Build Coastguard Worker 4188*d5c09012SAndroid Build Coastguard Worker // Scope specifies the upgrade scope which upgrades are blocked by the 4189*d5c09012SAndroid Build Coastguard Worker // exclusion. 4190*d5c09012SAndroid Build Coastguard Worker Scope scope = 1; 4191*d5c09012SAndroid Build Coastguard Worker} 4192*d5c09012SAndroid Build Coastguard Worker 4193*d5c09012SAndroid Build Coastguard Worker// Represents an arbitrary window of time that recurs. 4194*d5c09012SAndroid Build Coastguard Workermessage RecurringTimeWindow { 4195*d5c09012SAndroid Build Coastguard Worker // The window of the first recurrence. 4196*d5c09012SAndroid Build Coastguard Worker TimeWindow window = 1; 4197*d5c09012SAndroid Build Coastguard Worker 4198*d5c09012SAndroid Build Coastguard Worker // An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how 4199*d5c09012SAndroid Build Coastguard Worker // this window reccurs. They go on for the span of time between the start and 4200*d5c09012SAndroid Build Coastguard Worker // end time. 4201*d5c09012SAndroid Build Coastguard Worker // 4202*d5c09012SAndroid Build Coastguard Worker // For example, to have something repeat every weekday, you'd use: 4203*d5c09012SAndroid Build Coastguard Worker // `FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR` 4204*d5c09012SAndroid Build Coastguard Worker // 4205*d5c09012SAndroid Build Coastguard Worker // To repeat some window daily (equivalent to the DailyMaintenanceWindow): 4206*d5c09012SAndroid Build Coastguard Worker // `FREQ=DAILY` 4207*d5c09012SAndroid Build Coastguard Worker // 4208*d5c09012SAndroid Build Coastguard Worker // For the first weekend of every month: 4209*d5c09012SAndroid Build Coastguard Worker // `FREQ=MONTHLY;BYSETPOS=1;BYDAY=SA,SU` 4210*d5c09012SAndroid Build Coastguard Worker // 4211*d5c09012SAndroid Build Coastguard Worker // This specifies how frequently the window starts. Eg, if you wanted to have 4212*d5c09012SAndroid Build Coastguard Worker // a 9-5 UTC-4 window every weekday, you'd use something like: 4213*d5c09012SAndroid Build Coastguard Worker // ``` 4214*d5c09012SAndroid Build Coastguard Worker // start time = 2019-01-01T09:00:00-0400 4215*d5c09012SAndroid Build Coastguard Worker // end time = 2019-01-01T17:00:00-0400 4216*d5c09012SAndroid Build Coastguard Worker // recurrence = FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR 4217*d5c09012SAndroid Build Coastguard Worker // ``` 4218*d5c09012SAndroid Build Coastguard Worker // 4219*d5c09012SAndroid Build Coastguard Worker // Windows can span multiple days. Eg, to make the window encompass every 4220*d5c09012SAndroid Build Coastguard Worker // weekend from midnight Saturday till the last minute of Sunday UTC: 4221*d5c09012SAndroid Build Coastguard Worker // ``` 4222*d5c09012SAndroid Build Coastguard Worker // start time = 2019-01-05T00:00:00Z 4223*d5c09012SAndroid Build Coastguard Worker // end time = 2019-01-07T23:59:00Z 4224*d5c09012SAndroid Build Coastguard Worker // recurrence = FREQ=WEEKLY;BYDAY=SA 4225*d5c09012SAndroid Build Coastguard Worker // ``` 4226*d5c09012SAndroid Build Coastguard Worker // 4227*d5c09012SAndroid Build Coastguard Worker // Note the start and end time's specific dates are largely arbitrary except 4228*d5c09012SAndroid Build Coastguard Worker // to specify duration of the window and when it first starts. 4229*d5c09012SAndroid Build Coastguard Worker // The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported. 4230*d5c09012SAndroid Build Coastguard Worker string recurrence = 2; 4231*d5c09012SAndroid Build Coastguard Worker} 4232*d5c09012SAndroid Build Coastguard Worker 4233*d5c09012SAndroid Build Coastguard Worker// Time window specified for daily maintenance operations. 4234*d5c09012SAndroid Build Coastguard Workermessage DailyMaintenanceWindow { 4235*d5c09012SAndroid Build Coastguard Worker // Time within the maintenance window to start the maintenance operations. 4236*d5c09012SAndroid Build Coastguard Worker // It must be in format "HH:MM", where HH : [00-23] and MM : [00-59] GMT. 4237*d5c09012SAndroid Build Coastguard Worker string start_time = 2; 4238*d5c09012SAndroid Build Coastguard Worker 4239*d5c09012SAndroid Build Coastguard Worker // [Output only] Duration of the time window, automatically chosen to be 4240*d5c09012SAndroid Build Coastguard Worker // smallest possible in the given scenario. 4241*d5c09012SAndroid Build Coastguard Worker string duration = 3; 4242*d5c09012SAndroid Build Coastguard Worker} 4243*d5c09012SAndroid Build Coastguard Worker 4244*d5c09012SAndroid Build Coastguard Worker// SetNodePoolManagementRequest sets the node management properties of a node 4245*d5c09012SAndroid Build Coastguard Worker// pool. 4246*d5c09012SAndroid Build Coastguard Workermessage SetNodePoolManagementRequest { 4247*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 4248*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 4249*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4250*d5c09012SAndroid Build Coastguard Worker string project_id = 1 4251*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4252*d5c09012SAndroid Build Coastguard Worker 4253*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 4254*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 4255*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 4256*d5c09012SAndroid Build Coastguard Worker // field. 4257*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4258*d5c09012SAndroid Build Coastguard Worker 4259*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to update. 4260*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4261*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 4262*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4263*d5c09012SAndroid Build Coastguard Worker 4264*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the node pool to update. 4265*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4266*d5c09012SAndroid Build Coastguard Worker string node_pool_id = 4 4267*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4268*d5c09012SAndroid Build Coastguard Worker 4269*d5c09012SAndroid Build Coastguard Worker // Required. NodeManagement configuration for the node pool. 4270*d5c09012SAndroid Build Coastguard Worker NodeManagement management = 5 [(google.api.field_behavior) = REQUIRED]; 4271*d5c09012SAndroid Build Coastguard Worker 4272*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster, node pool id) of the node pool to set 4273*d5c09012SAndroid Build Coastguard Worker // management properties. Specified in the format 4274*d5c09012SAndroid Build Coastguard Worker // `projects/*/locations/*/clusters/*/nodePools/*`. 4275*d5c09012SAndroid Build Coastguard Worker string name = 7; 4276*d5c09012SAndroid Build Coastguard Worker} 4277*d5c09012SAndroid Build Coastguard Worker 4278*d5c09012SAndroid Build Coastguard Worker// SetNodePoolSizeRequest sets the size of a node pool. 4279*d5c09012SAndroid Build Coastguard Workermessage SetNodePoolSizeRequest { 4280*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 4281*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 4282*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4283*d5c09012SAndroid Build Coastguard Worker string project_id = 1 4284*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4285*d5c09012SAndroid Build Coastguard Worker 4286*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 4287*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 4288*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 4289*d5c09012SAndroid Build Coastguard Worker // field. 4290*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4291*d5c09012SAndroid Build Coastguard Worker 4292*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to update. 4293*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4294*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 4295*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4296*d5c09012SAndroid Build Coastguard Worker 4297*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the node pool to update. 4298*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4299*d5c09012SAndroid Build Coastguard Worker string node_pool_id = 4 4300*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4301*d5c09012SAndroid Build Coastguard Worker 4302*d5c09012SAndroid Build Coastguard Worker // Required. The desired node count for the pool. 4303*d5c09012SAndroid Build Coastguard Worker int32 node_count = 5 [(google.api.field_behavior) = REQUIRED]; 4304*d5c09012SAndroid Build Coastguard Worker 4305*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster, node pool id) of the node pool to set 4306*d5c09012SAndroid Build Coastguard Worker // size. 4307*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`. 4308*d5c09012SAndroid Build Coastguard Worker string name = 7; 4309*d5c09012SAndroid Build Coastguard Worker} 4310*d5c09012SAndroid Build Coastguard Worker 4311*d5c09012SAndroid Build Coastguard Worker// CompleteNodePoolUpgradeRequest sets the name of target node pool to complete 4312*d5c09012SAndroid Build Coastguard Worker// upgrade. 4313*d5c09012SAndroid Build Coastguard Workermessage CompleteNodePoolUpgradeRequest { 4314*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster, node pool id) of the node pool to 4315*d5c09012SAndroid Build Coastguard Worker // complete upgrade. 4316*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`. 4317*d5c09012SAndroid Build Coastguard Worker string name = 1; 4318*d5c09012SAndroid Build Coastguard Worker} 4319*d5c09012SAndroid Build Coastguard Worker 4320*d5c09012SAndroid Build Coastguard Worker// RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed 4321*d5c09012SAndroid Build Coastguard Worker// NodePool upgrade. This will be an no-op if the last upgrade successfully 4322*d5c09012SAndroid Build Coastguard Worker// completed. 4323*d5c09012SAndroid Build Coastguard Workermessage RollbackNodePoolUpgradeRequest { 4324*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 4325*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 4326*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4327*d5c09012SAndroid Build Coastguard Worker string project_id = 1 4328*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4329*d5c09012SAndroid Build Coastguard Worker 4330*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 4331*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 4332*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 4333*d5c09012SAndroid Build Coastguard Worker // field. 4334*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4335*d5c09012SAndroid Build Coastguard Worker 4336*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to rollback. 4337*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4338*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 4339*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4340*d5c09012SAndroid Build Coastguard Worker 4341*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the node pool to rollback. 4342*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4343*d5c09012SAndroid Build Coastguard Worker string node_pool_id = 4 4344*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4345*d5c09012SAndroid Build Coastguard Worker 4346*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster, node pool id) of the node poll to 4347*d5c09012SAndroid Build Coastguard Worker // rollback upgrade. 4348*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*/nodePools/*`. 4349*d5c09012SAndroid Build Coastguard Worker string name = 6; 4350*d5c09012SAndroid Build Coastguard Worker 4351*d5c09012SAndroid Build Coastguard Worker // Option for rollback to ignore the PodDisruptionBudget. 4352*d5c09012SAndroid Build Coastguard Worker // Default value is false. 4353*d5c09012SAndroid Build Coastguard Worker bool respect_pdb = 7; 4354*d5c09012SAndroid Build Coastguard Worker} 4355*d5c09012SAndroid Build Coastguard Worker 4356*d5c09012SAndroid Build Coastguard Worker// ListNodePoolsResponse is the result of ListNodePoolsRequest. 4357*d5c09012SAndroid Build Coastguard Workermessage ListNodePoolsResponse { 4358*d5c09012SAndroid Build Coastguard Worker // A list of node pools for a cluster. 4359*d5c09012SAndroid Build Coastguard Worker repeated NodePool node_pools = 1; 4360*d5c09012SAndroid Build Coastguard Worker} 4361*d5c09012SAndroid Build Coastguard Worker 4362*d5c09012SAndroid Build Coastguard Worker// ClusterAutoscaling contains global, per-cluster information 4363*d5c09012SAndroid Build Coastguard Worker// required by Cluster Autoscaler to automatically adjust 4364*d5c09012SAndroid Build Coastguard Worker// the size of the cluster and create/delete 4365*d5c09012SAndroid Build Coastguard Worker// node pools based on the current needs. 4366*d5c09012SAndroid Build Coastguard Workermessage ClusterAutoscaling { 4367*d5c09012SAndroid Build Coastguard Worker // Defines possible options for autoscaling_profile field. 4368*d5c09012SAndroid Build Coastguard Worker enum AutoscalingProfile { 4369*d5c09012SAndroid Build Coastguard Worker // No change to autoscaling configuration. 4370*d5c09012SAndroid Build Coastguard Worker PROFILE_UNSPECIFIED = 0; 4371*d5c09012SAndroid Build Coastguard Worker 4372*d5c09012SAndroid Build Coastguard Worker // Prioritize optimizing utilization of resources. 4373*d5c09012SAndroid Build Coastguard Worker OPTIMIZE_UTILIZATION = 1; 4374*d5c09012SAndroid Build Coastguard Worker 4375*d5c09012SAndroid Build Coastguard Worker // Use default (balanced) autoscaling configuration. 4376*d5c09012SAndroid Build Coastguard Worker BALANCED = 2; 4377*d5c09012SAndroid Build Coastguard Worker } 4378*d5c09012SAndroid Build Coastguard Worker 4379*d5c09012SAndroid Build Coastguard Worker // Enables automatic node pool creation and deletion. 4380*d5c09012SAndroid Build Coastguard Worker bool enable_node_autoprovisioning = 1; 4381*d5c09012SAndroid Build Coastguard Worker 4382*d5c09012SAndroid Build Coastguard Worker // Contains global constraints regarding minimum and maximum 4383*d5c09012SAndroid Build Coastguard Worker // amount of resources in the cluster. 4384*d5c09012SAndroid Build Coastguard Worker repeated ResourceLimit resource_limits = 2; 4385*d5c09012SAndroid Build Coastguard Worker 4386*d5c09012SAndroid Build Coastguard Worker // Defines autoscaling behaviour. 4387*d5c09012SAndroid Build Coastguard Worker AutoscalingProfile autoscaling_profile = 3; 4388*d5c09012SAndroid Build Coastguard Worker 4389*d5c09012SAndroid Build Coastguard Worker // AutoprovisioningNodePoolDefaults contains defaults for a node pool 4390*d5c09012SAndroid Build Coastguard Worker // created by NAP. 4391*d5c09012SAndroid Build Coastguard Worker AutoprovisioningNodePoolDefaults autoprovisioning_node_pool_defaults = 4; 4392*d5c09012SAndroid Build Coastguard Worker 4393*d5c09012SAndroid Build Coastguard Worker // The list of Google Compute Engine 4394*d5c09012SAndroid Build Coastguard Worker // [zones](https://cloud.google.com/compute/docs/zones#available) in which the 4395*d5c09012SAndroid Build Coastguard Worker // NodePool's nodes can be created by NAP. 4396*d5c09012SAndroid Build Coastguard Worker repeated string autoprovisioning_locations = 5; 4397*d5c09012SAndroid Build Coastguard Worker} 4398*d5c09012SAndroid Build Coastguard Worker 4399*d5c09012SAndroid Build Coastguard Worker// AutoprovisioningNodePoolDefaults contains defaults for a node pool created 4400*d5c09012SAndroid Build Coastguard Worker// by NAP. 4401*d5c09012SAndroid Build Coastguard Workermessage AutoprovisioningNodePoolDefaults { 4402*d5c09012SAndroid Build Coastguard Worker // The set of Google API scopes to be made available on all of the 4403*d5c09012SAndroid Build Coastguard Worker // node VMs under the "default" service account. 4404*d5c09012SAndroid Build Coastguard Worker // 4405*d5c09012SAndroid Build Coastguard Worker // The following scopes are recommended, but not required, and by default are 4406*d5c09012SAndroid Build Coastguard Worker // not included: 4407*d5c09012SAndroid Build Coastguard Worker // 4408*d5c09012SAndroid Build Coastguard Worker // * `https://www.googleapis.com/auth/compute` is required for mounting 4409*d5c09012SAndroid Build Coastguard Worker // persistent storage on your nodes. 4410*d5c09012SAndroid Build Coastguard Worker // * `https://www.googleapis.com/auth/devstorage.read_only` is required for 4411*d5c09012SAndroid Build Coastguard Worker // communicating with **gcr.io** 4412*d5c09012SAndroid Build Coastguard Worker // (the [Google Container 4413*d5c09012SAndroid Build Coastguard Worker // Registry](https://cloud.google.com/container-registry/)). 4414*d5c09012SAndroid Build Coastguard Worker // 4415*d5c09012SAndroid Build Coastguard Worker // If unspecified, no scopes are added, unless Cloud Logging or Cloud 4416*d5c09012SAndroid Build Coastguard Worker // Monitoring are enabled, in which case their required scopes will be added. 4417*d5c09012SAndroid Build Coastguard Worker repeated string oauth_scopes = 1; 4418*d5c09012SAndroid Build Coastguard Worker 4419*d5c09012SAndroid Build Coastguard Worker // The Google Cloud Platform Service Account to be used by the node VMs. 4420*d5c09012SAndroid Build Coastguard Worker // Specify the email address of the Service Account; otherwise, if no Service 4421*d5c09012SAndroid Build Coastguard Worker // Account is specified, the "default" service account is used. 4422*d5c09012SAndroid Build Coastguard Worker string service_account = 2; 4423*d5c09012SAndroid Build Coastguard Worker 4424*d5c09012SAndroid Build Coastguard Worker // Upgrade settings control disruption and speed of the upgrade. 4425*d5c09012SAndroid Build Coastguard Worker NodePool.UpgradeSettings upgrade_settings = 3; 4426*d5c09012SAndroid Build Coastguard Worker 4427*d5c09012SAndroid Build Coastguard Worker // NodeManagement configuration for this NodePool. 4428*d5c09012SAndroid Build Coastguard Worker NodeManagement management = 4; 4429*d5c09012SAndroid Build Coastguard Worker 4430*d5c09012SAndroid Build Coastguard Worker // Deprecated. Minimum CPU platform to be used for NAP created node pools. 4431*d5c09012SAndroid Build Coastguard Worker // The instance may be scheduled on the specified or newer CPU platform. 4432*d5c09012SAndroid Build Coastguard Worker // Applicable values are the friendly names of CPU platforms, such as 4433*d5c09012SAndroid Build Coastguard Worker // minCpuPlatform: Intel Haswell or 4434*d5c09012SAndroid Build Coastguard Worker // minCpuPlatform: Intel Sandy Bridge. For more 4435*d5c09012SAndroid Build Coastguard Worker // information, read [how to specify min CPU 4436*d5c09012SAndroid Build Coastguard Worker // platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform). 4437*d5c09012SAndroid Build Coastguard Worker // This field is deprecated, min_cpu_platform should be specified using 4438*d5c09012SAndroid Build Coastguard Worker // `cloud.google.com/requested-min-cpu-platform` label selector on the pod. 4439*d5c09012SAndroid Build Coastguard Worker // To unset the min cpu platform field pass "automatic" 4440*d5c09012SAndroid Build Coastguard Worker // as field value. 4441*d5c09012SAndroid Build Coastguard Worker string min_cpu_platform = 5 [deprecated = true]; 4442*d5c09012SAndroid Build Coastguard Worker 4443*d5c09012SAndroid Build Coastguard Worker // Size of the disk attached to each node, specified in GB. 4444*d5c09012SAndroid Build Coastguard Worker // The smallest allowed disk size is 10GB. 4445*d5c09012SAndroid Build Coastguard Worker // 4446*d5c09012SAndroid Build Coastguard Worker // If unspecified, the default disk size is 100GB. 4447*d5c09012SAndroid Build Coastguard Worker int32 disk_size_gb = 6; 4448*d5c09012SAndroid Build Coastguard Worker 4449*d5c09012SAndroid Build Coastguard Worker // Type of the disk attached to each node (e.g. 'pd-standard', 'pd-ssd' or 4450*d5c09012SAndroid Build Coastguard Worker // 'pd-balanced') 4451*d5c09012SAndroid Build Coastguard Worker // 4452*d5c09012SAndroid Build Coastguard Worker // If unspecified, the default disk type is 'pd-standard' 4453*d5c09012SAndroid Build Coastguard Worker string disk_type = 7; 4454*d5c09012SAndroid Build Coastguard Worker 4455*d5c09012SAndroid Build Coastguard Worker // Shielded Instance options. 4456*d5c09012SAndroid Build Coastguard Worker ShieldedInstanceConfig shielded_instance_config = 8; 4457*d5c09012SAndroid Build Coastguard Worker 4458*d5c09012SAndroid Build Coastguard Worker // 4459*d5c09012SAndroid Build Coastguard Worker // The Customer Managed Encryption Key used to encrypt the boot disk attached 4460*d5c09012SAndroid Build Coastguard Worker // to each node in the node pool. This should be of the form 4461*d5c09012SAndroid Build Coastguard Worker // projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME]. 4462*d5c09012SAndroid Build Coastguard Worker // For more information about protecting resources with Cloud KMS Keys please 4463*d5c09012SAndroid Build Coastguard Worker // see: 4464*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/compute/docs/disks/customer-managed-encryption 4465*d5c09012SAndroid Build Coastguard Worker string boot_disk_kms_key = 9; 4466*d5c09012SAndroid Build Coastguard Worker 4467*d5c09012SAndroid Build Coastguard Worker // The image type to use for NAP created node. Please see 4468*d5c09012SAndroid Build Coastguard Worker // https://cloud.google.com/kubernetes-engine/docs/concepts/node-images for 4469*d5c09012SAndroid Build Coastguard Worker // available image types. 4470*d5c09012SAndroid Build Coastguard Worker string image_type = 10; 4471*d5c09012SAndroid Build Coastguard Worker 4472*d5c09012SAndroid Build Coastguard Worker // Enable or disable Kubelet read only port. 4473*d5c09012SAndroid Build Coastguard Worker optional bool insecure_kubelet_readonly_port_enabled = 13; 4474*d5c09012SAndroid Build Coastguard Worker} 4475*d5c09012SAndroid Build Coastguard Worker 4476*d5c09012SAndroid Build Coastguard Worker// Contains information about amount of some resource in the cluster. 4477*d5c09012SAndroid Build Coastguard Worker// For memory, value should be in GB. 4478*d5c09012SAndroid Build Coastguard Workermessage ResourceLimit { 4479*d5c09012SAndroid Build Coastguard Worker // Resource name "cpu", "memory" or gpu-specific string. 4480*d5c09012SAndroid Build Coastguard Worker string resource_type = 1; 4481*d5c09012SAndroid Build Coastguard Worker 4482*d5c09012SAndroid Build Coastguard Worker // Minimum amount of the resource in the cluster. 4483*d5c09012SAndroid Build Coastguard Worker int64 minimum = 2; 4484*d5c09012SAndroid Build Coastguard Worker 4485*d5c09012SAndroid Build Coastguard Worker // Maximum amount of the resource in the cluster. 4486*d5c09012SAndroid Build Coastguard Worker int64 maximum = 3; 4487*d5c09012SAndroid Build Coastguard Worker} 4488*d5c09012SAndroid Build Coastguard Worker 4489*d5c09012SAndroid Build Coastguard Worker// NodePoolAutoscaling contains information required by cluster autoscaler to 4490*d5c09012SAndroid Build Coastguard Worker// adjust the size of the node pool to the current cluster usage. 4491*d5c09012SAndroid Build Coastguard Workermessage NodePoolAutoscaling { 4492*d5c09012SAndroid Build Coastguard Worker // Location policy specifies how zones are picked when scaling up the 4493*d5c09012SAndroid Build Coastguard Worker // nodepool. 4494*d5c09012SAndroid Build Coastguard Worker enum LocationPolicy { 4495*d5c09012SAndroid Build Coastguard Worker // Not set. 4496*d5c09012SAndroid Build Coastguard Worker LOCATION_POLICY_UNSPECIFIED = 0; 4497*d5c09012SAndroid Build Coastguard Worker 4498*d5c09012SAndroid Build Coastguard Worker // BALANCED is a best effort policy that aims to balance the sizes of 4499*d5c09012SAndroid Build Coastguard Worker // different zones. 4500*d5c09012SAndroid Build Coastguard Worker BALANCED = 1; 4501*d5c09012SAndroid Build Coastguard Worker 4502*d5c09012SAndroid Build Coastguard Worker // ANY policy picks zones that have the highest capacity available. 4503*d5c09012SAndroid Build Coastguard Worker ANY = 2; 4504*d5c09012SAndroid Build Coastguard Worker } 4505*d5c09012SAndroid Build Coastguard Worker 4506*d5c09012SAndroid Build Coastguard Worker // Is autoscaling enabled for this node pool. 4507*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 4508*d5c09012SAndroid Build Coastguard Worker 4509*d5c09012SAndroid Build Coastguard Worker // Minimum number of nodes for one location in the NodePool. Must be >= 1 and 4510*d5c09012SAndroid Build Coastguard Worker // <= max_node_count. 4511*d5c09012SAndroid Build Coastguard Worker int32 min_node_count = 2; 4512*d5c09012SAndroid Build Coastguard Worker 4513*d5c09012SAndroid Build Coastguard Worker // Maximum number of nodes for one location in the NodePool. Must be >= 4514*d5c09012SAndroid Build Coastguard Worker // min_node_count. There has to be enough quota to scale up the cluster. 4515*d5c09012SAndroid Build Coastguard Worker int32 max_node_count = 3; 4516*d5c09012SAndroid Build Coastguard Worker 4517*d5c09012SAndroid Build Coastguard Worker // Can this node pool be deleted automatically. 4518*d5c09012SAndroid Build Coastguard Worker bool autoprovisioned = 4; 4519*d5c09012SAndroid Build Coastguard Worker 4520*d5c09012SAndroid Build Coastguard Worker // Location policy used when scaling up a nodepool. 4521*d5c09012SAndroid Build Coastguard Worker LocationPolicy location_policy = 5; 4522*d5c09012SAndroid Build Coastguard Worker 4523*d5c09012SAndroid Build Coastguard Worker // Minimum number of nodes in the node pool. Must be greater than 1 less than 4524*d5c09012SAndroid Build Coastguard Worker // total_max_node_count. 4525*d5c09012SAndroid Build Coastguard Worker // The total_*_node_count fields are mutually exclusive with the *_node_count 4526*d5c09012SAndroid Build Coastguard Worker // fields. 4527*d5c09012SAndroid Build Coastguard Worker int32 total_min_node_count = 6; 4528*d5c09012SAndroid Build Coastguard Worker 4529*d5c09012SAndroid Build Coastguard Worker // Maximum number of nodes in the node pool. Must be greater than 4530*d5c09012SAndroid Build Coastguard Worker // total_min_node_count. There has to be enough quota to scale up the cluster. 4531*d5c09012SAndroid Build Coastguard Worker // The total_*_node_count fields are mutually exclusive with the *_node_count 4532*d5c09012SAndroid Build Coastguard Worker // fields. 4533*d5c09012SAndroid Build Coastguard Worker int32 total_max_node_count = 7; 4534*d5c09012SAndroid Build Coastguard Worker} 4535*d5c09012SAndroid Build Coastguard Worker 4536*d5c09012SAndroid Build Coastguard Worker// SetLabelsRequest sets the Google Cloud Platform labels on a Google Container 4537*d5c09012SAndroid Build Coastguard Worker// Engine cluster, which will in turn set them for Google Compute Engine 4538*d5c09012SAndroid Build Coastguard Worker// resources used by that cluster 4539*d5c09012SAndroid Build Coastguard Workermessage SetLabelsRequest { 4540*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 4541*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 4542*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4543*d5c09012SAndroid Build Coastguard Worker string project_id = 1 4544*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4545*d5c09012SAndroid Build Coastguard Worker 4546*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 4547*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 4548*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 4549*d5c09012SAndroid Build Coastguard Worker // field. 4550*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4551*d5c09012SAndroid Build Coastguard Worker 4552*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster. 4553*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4554*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 4555*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4556*d5c09012SAndroid Build Coastguard Worker 4557*d5c09012SAndroid Build Coastguard Worker // Required. The labels to set for that cluster. 4558*d5c09012SAndroid Build Coastguard Worker map<string, string> resource_labels = 4 4559*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 4560*d5c09012SAndroid Build Coastguard Worker 4561*d5c09012SAndroid Build Coastguard Worker // Required. The fingerprint of the previous set of labels for this resource, 4562*d5c09012SAndroid Build Coastguard Worker // used to detect conflicts. The fingerprint is initially generated by 4563*d5c09012SAndroid Build Coastguard Worker // Kubernetes Engine and changes after every request to modify or update 4564*d5c09012SAndroid Build Coastguard Worker // labels. You must always provide an up-to-date fingerprint hash when 4565*d5c09012SAndroid Build Coastguard Worker // updating or changing labels. Make a `get()` request to the 4566*d5c09012SAndroid Build Coastguard Worker // resource to get the latest fingerprint. 4567*d5c09012SAndroid Build Coastguard Worker string label_fingerprint = 5 [(google.api.field_behavior) = REQUIRED]; 4568*d5c09012SAndroid Build Coastguard Worker 4569*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster name) of the cluster to set labels. 4570*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*`. 4571*d5c09012SAndroid Build Coastguard Worker string name = 7; 4572*d5c09012SAndroid Build Coastguard Worker} 4573*d5c09012SAndroid Build Coastguard Worker 4574*d5c09012SAndroid Build Coastguard Worker// SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for 4575*d5c09012SAndroid Build Coastguard Worker// a cluster. 4576*d5c09012SAndroid Build Coastguard Workermessage SetLegacyAbacRequest { 4577*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 4578*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 4579*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4580*d5c09012SAndroid Build Coastguard Worker string project_id = 1 4581*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4582*d5c09012SAndroid Build Coastguard Worker 4583*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 4584*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 4585*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 4586*d5c09012SAndroid Build Coastguard Worker // field. 4587*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4588*d5c09012SAndroid Build Coastguard Worker 4589*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster to update. 4590*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4591*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 4592*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4593*d5c09012SAndroid Build Coastguard Worker 4594*d5c09012SAndroid Build Coastguard Worker // Required. Whether ABAC authorization will be enabled in the cluster. 4595*d5c09012SAndroid Build Coastguard Worker bool enabled = 4 [(google.api.field_behavior) = REQUIRED]; 4596*d5c09012SAndroid Build Coastguard Worker 4597*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster name) of the cluster to set legacy 4598*d5c09012SAndroid Build Coastguard Worker // abac. Specified in the format `projects/*/locations/*/clusters/*`. 4599*d5c09012SAndroid Build Coastguard Worker string name = 6; 4600*d5c09012SAndroid Build Coastguard Worker} 4601*d5c09012SAndroid Build Coastguard Worker 4602*d5c09012SAndroid Build Coastguard Worker// StartIPRotationRequest creates a new IP for the cluster and then performs 4603*d5c09012SAndroid Build Coastguard Worker// a node upgrade on each node pool to point to the new IP. 4604*d5c09012SAndroid Build Coastguard Workermessage StartIPRotationRequest { 4605*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 4606*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 4607*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4608*d5c09012SAndroid Build Coastguard Worker string project_id = 1 4609*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4610*d5c09012SAndroid Build Coastguard Worker 4611*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 4612*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 4613*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 4614*d5c09012SAndroid Build Coastguard Worker // field. 4615*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4616*d5c09012SAndroid Build Coastguard Worker 4617*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster. 4618*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4619*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 4620*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4621*d5c09012SAndroid Build Coastguard Worker 4622*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster name) of the cluster to start IP 4623*d5c09012SAndroid Build Coastguard Worker // rotation. Specified in the format `projects/*/locations/*/clusters/*`. 4624*d5c09012SAndroid Build Coastguard Worker string name = 6; 4625*d5c09012SAndroid Build Coastguard Worker 4626*d5c09012SAndroid Build Coastguard Worker // Whether to rotate credentials during IP rotation. 4627*d5c09012SAndroid Build Coastguard Worker bool rotate_credentials = 7; 4628*d5c09012SAndroid Build Coastguard Worker} 4629*d5c09012SAndroid Build Coastguard Worker 4630*d5c09012SAndroid Build Coastguard Worker// CompleteIPRotationRequest moves the cluster master back into single-IP mode. 4631*d5c09012SAndroid Build Coastguard Workermessage CompleteIPRotationRequest { 4632*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 4633*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 4634*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4635*d5c09012SAndroid Build Coastguard Worker string project_id = 1 4636*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4637*d5c09012SAndroid Build Coastguard Worker 4638*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 4639*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 4640*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 4641*d5c09012SAndroid Build Coastguard Worker // field. 4642*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4643*d5c09012SAndroid Build Coastguard Worker 4644*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster. 4645*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4646*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 4647*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4648*d5c09012SAndroid Build Coastguard Worker 4649*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster name) of the cluster to complete IP 4650*d5c09012SAndroid Build Coastguard Worker // rotation. Specified in the format `projects/*/locations/*/clusters/*`. 4651*d5c09012SAndroid Build Coastguard Worker string name = 7; 4652*d5c09012SAndroid Build Coastguard Worker} 4653*d5c09012SAndroid Build Coastguard Worker 4654*d5c09012SAndroid Build Coastguard Worker// AcceleratorConfig represents a Hardware Accelerator request. 4655*d5c09012SAndroid Build Coastguard Workermessage AcceleratorConfig { 4656*d5c09012SAndroid Build Coastguard Worker // The number of the accelerator cards exposed to an instance. 4657*d5c09012SAndroid Build Coastguard Worker int64 accelerator_count = 1; 4658*d5c09012SAndroid Build Coastguard Worker 4659*d5c09012SAndroid Build Coastguard Worker // The accelerator type resource name. List of supported accelerators 4660*d5c09012SAndroid Build Coastguard Worker // [here](https://cloud.google.com/compute/docs/gpus) 4661*d5c09012SAndroid Build Coastguard Worker string accelerator_type = 2; 4662*d5c09012SAndroid Build Coastguard Worker 4663*d5c09012SAndroid Build Coastguard Worker // Size of partitions to create on the GPU. Valid values are described in the 4664*d5c09012SAndroid Build Coastguard Worker // NVIDIA [mig user 4665*d5c09012SAndroid Build Coastguard Worker // guide](https://docs.nvidia.com/datacenter/tesla/mig-user-guide/#partitioning). 4666*d5c09012SAndroid Build Coastguard Worker string gpu_partition_size = 3; 4667*d5c09012SAndroid Build Coastguard Worker 4668*d5c09012SAndroid Build Coastguard Worker // The number of time-shared GPU resources to expose for each physical GPU. 4669*d5c09012SAndroid Build Coastguard Worker int64 max_time_shared_clients_per_gpu = 4 [deprecated = true]; 4670*d5c09012SAndroid Build Coastguard Worker 4671*d5c09012SAndroid Build Coastguard Worker // The configuration for GPU sharing options. 4672*d5c09012SAndroid Build Coastguard Worker optional GPUSharingConfig gpu_sharing_config = 5; 4673*d5c09012SAndroid Build Coastguard Worker 4674*d5c09012SAndroid Build Coastguard Worker // The configuration for auto installation of GPU driver. 4675*d5c09012SAndroid Build Coastguard Worker optional GPUDriverInstallationConfig gpu_driver_installation_config = 6; 4676*d5c09012SAndroid Build Coastguard Worker} 4677*d5c09012SAndroid Build Coastguard Worker 4678*d5c09012SAndroid Build Coastguard Worker// GPUSharingConfig represents the GPU sharing configuration for Hardware 4679*d5c09012SAndroid Build Coastguard Worker// Accelerators. 4680*d5c09012SAndroid Build Coastguard Workermessage GPUSharingConfig { 4681*d5c09012SAndroid Build Coastguard Worker // The type of GPU sharing strategy currently provided. 4682*d5c09012SAndroid Build Coastguard Worker enum GPUSharingStrategy { 4683*d5c09012SAndroid Build Coastguard Worker // Default value. 4684*d5c09012SAndroid Build Coastguard Worker GPU_SHARING_STRATEGY_UNSPECIFIED = 0; 4685*d5c09012SAndroid Build Coastguard Worker 4686*d5c09012SAndroid Build Coastguard Worker // GPUs are time-shared between containers. 4687*d5c09012SAndroid Build Coastguard Worker TIME_SHARING = 1; 4688*d5c09012SAndroid Build Coastguard Worker } 4689*d5c09012SAndroid Build Coastguard Worker 4690*d5c09012SAndroid Build Coastguard Worker // The max number of containers that can share a physical GPU. 4691*d5c09012SAndroid Build Coastguard Worker int64 max_shared_clients_per_gpu = 1; 4692*d5c09012SAndroid Build Coastguard Worker 4693*d5c09012SAndroid Build Coastguard Worker // The type of GPU sharing strategy to enable on the GPU node. 4694*d5c09012SAndroid Build Coastguard Worker optional GPUSharingStrategy gpu_sharing_strategy = 2; 4695*d5c09012SAndroid Build Coastguard Worker} 4696*d5c09012SAndroid Build Coastguard Worker 4697*d5c09012SAndroid Build Coastguard Worker// GPUDriverInstallationConfig specifies the version of GPU driver to be auto 4698*d5c09012SAndroid Build Coastguard Worker// installed. 4699*d5c09012SAndroid Build Coastguard Workermessage GPUDriverInstallationConfig { 4700*d5c09012SAndroid Build Coastguard Worker // The GPU driver version to install. 4701*d5c09012SAndroid Build Coastguard Worker enum GPUDriverVersion { 4702*d5c09012SAndroid Build Coastguard Worker // Default value is to not install any GPU driver. 4703*d5c09012SAndroid Build Coastguard Worker GPU_DRIVER_VERSION_UNSPECIFIED = 0; 4704*d5c09012SAndroid Build Coastguard Worker 4705*d5c09012SAndroid Build Coastguard Worker // Disable GPU driver auto installation and needs manual installation 4706*d5c09012SAndroid Build Coastguard Worker INSTALLATION_DISABLED = 1; 4707*d5c09012SAndroid Build Coastguard Worker 4708*d5c09012SAndroid Build Coastguard Worker // "Default" GPU driver in COS and Ubuntu. 4709*d5c09012SAndroid Build Coastguard Worker DEFAULT = 2; 4710*d5c09012SAndroid Build Coastguard Worker 4711*d5c09012SAndroid Build Coastguard Worker // "Latest" GPU driver in COS. 4712*d5c09012SAndroid Build Coastguard Worker LATEST = 3; 4713*d5c09012SAndroid Build Coastguard Worker } 4714*d5c09012SAndroid Build Coastguard Worker 4715*d5c09012SAndroid Build Coastguard Worker // Mode for how the GPU driver is installed. 4716*d5c09012SAndroid Build Coastguard Worker optional GPUDriverVersion gpu_driver_version = 1; 4717*d5c09012SAndroid Build Coastguard Worker} 4718*d5c09012SAndroid Build Coastguard Worker 4719*d5c09012SAndroid Build Coastguard Worker// ManagedPrometheusConfig defines the configuration for 4720*d5c09012SAndroid Build Coastguard Worker// Google Cloud Managed Service for Prometheus. 4721*d5c09012SAndroid Build Coastguard Workermessage ManagedPrometheusConfig { 4722*d5c09012SAndroid Build Coastguard Worker // Enable Managed Collection. 4723*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 4724*d5c09012SAndroid Build Coastguard Worker} 4725*d5c09012SAndroid Build Coastguard Worker 4726*d5c09012SAndroid Build Coastguard Worker// WorkloadMetadataConfig defines the metadata configuration to expose to 4727*d5c09012SAndroid Build Coastguard Worker// workloads on the node pool. 4728*d5c09012SAndroid Build Coastguard Workermessage WorkloadMetadataConfig { 4729*d5c09012SAndroid Build Coastguard Worker // NodeMetadata is the configuration for if and how to expose the node 4730*d5c09012SAndroid Build Coastguard Worker // metadata to the workload running on the node. 4731*d5c09012SAndroid Build Coastguard Worker enum NodeMetadata { 4732*d5c09012SAndroid Build Coastguard Worker // Not set. 4733*d5c09012SAndroid Build Coastguard Worker UNSPECIFIED = 0; 4734*d5c09012SAndroid Build Coastguard Worker 4735*d5c09012SAndroid Build Coastguard Worker // Prevent workloads not in hostNetwork from accessing certain VM metadata, 4736*d5c09012SAndroid Build Coastguard Worker // specifically kube-env, which contains Kubelet credentials, and the 4737*d5c09012SAndroid Build Coastguard Worker // instance identity token. 4738*d5c09012SAndroid Build Coastguard Worker // 4739*d5c09012SAndroid Build Coastguard Worker // Metadata concealment is a temporary security solution available while the 4740*d5c09012SAndroid Build Coastguard Worker // bootstrapping process for cluster nodes is being redesigned with 4741*d5c09012SAndroid Build Coastguard Worker // significant security improvements. This feature is scheduled to be 4742*d5c09012SAndroid Build Coastguard Worker // deprecated in the future and later removed. 4743*d5c09012SAndroid Build Coastguard Worker SECURE = 1; 4744*d5c09012SAndroid Build Coastguard Worker 4745*d5c09012SAndroid Build Coastguard Worker // Expose all VM metadata to pods. 4746*d5c09012SAndroid Build Coastguard Worker EXPOSE = 2; 4747*d5c09012SAndroid Build Coastguard Worker 4748*d5c09012SAndroid Build Coastguard Worker // Run the GKE Metadata Server on this node. The GKE Metadata Server exposes 4749*d5c09012SAndroid Build Coastguard Worker // a metadata API to workloads that is compatible with the V1 Compute 4750*d5c09012SAndroid Build Coastguard Worker // Metadata APIs exposed by the Compute Engine and App Engine Metadata 4751*d5c09012SAndroid Build Coastguard Worker // Servers. This feature can only be enabled if Workload Identity is enabled 4752*d5c09012SAndroid Build Coastguard Worker // at the cluster level. 4753*d5c09012SAndroid Build Coastguard Worker GKE_METADATA_SERVER = 3; 4754*d5c09012SAndroid Build Coastguard Worker } 4755*d5c09012SAndroid Build Coastguard Worker 4756*d5c09012SAndroid Build Coastguard Worker // Mode is the configuration for how to expose metadata to workloads running 4757*d5c09012SAndroid Build Coastguard Worker // on the node. 4758*d5c09012SAndroid Build Coastguard Worker enum Mode { 4759*d5c09012SAndroid Build Coastguard Worker // Not set. 4760*d5c09012SAndroid Build Coastguard Worker MODE_UNSPECIFIED = 0; 4761*d5c09012SAndroid Build Coastguard Worker 4762*d5c09012SAndroid Build Coastguard Worker // Expose all Compute Engine metadata to pods. 4763*d5c09012SAndroid Build Coastguard Worker GCE_METADATA = 1; 4764*d5c09012SAndroid Build Coastguard Worker 4765*d5c09012SAndroid Build Coastguard Worker // Run the GKE Metadata Server on this node. The GKE Metadata Server exposes 4766*d5c09012SAndroid Build Coastguard Worker // a metadata API to workloads that is compatible with the V1 Compute 4767*d5c09012SAndroid Build Coastguard Worker // Metadata APIs exposed by the Compute Engine and App Engine Metadata 4768*d5c09012SAndroid Build Coastguard Worker // Servers. This feature can only be enabled if Workload Identity is enabled 4769*d5c09012SAndroid Build Coastguard Worker // at the cluster level. 4770*d5c09012SAndroid Build Coastguard Worker GKE_METADATA = 2; 4771*d5c09012SAndroid Build Coastguard Worker } 4772*d5c09012SAndroid Build Coastguard Worker 4773*d5c09012SAndroid Build Coastguard Worker // NodeMetadata is the configuration for how to expose metadata to the 4774*d5c09012SAndroid Build Coastguard Worker // workloads running on the node. 4775*d5c09012SAndroid Build Coastguard Worker NodeMetadata node_metadata = 1 [deprecated = true]; 4776*d5c09012SAndroid Build Coastguard Worker 4777*d5c09012SAndroid Build Coastguard Worker // Mode is the configuration for how to expose metadata to workloads running 4778*d5c09012SAndroid Build Coastguard Worker // on the node pool. 4779*d5c09012SAndroid Build Coastguard Worker Mode mode = 2; 4780*d5c09012SAndroid Build Coastguard Worker} 4781*d5c09012SAndroid Build Coastguard Worker 4782*d5c09012SAndroid Build Coastguard Worker// SetNetworkPolicyRequest enables/disables network policy for a cluster. 4783*d5c09012SAndroid Build Coastguard Workermessage SetNetworkPolicyRequest { 4784*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The Google Developers Console [project ID or project 4785*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 4786*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4787*d5c09012SAndroid Build Coastguard Worker string project_id = 1 4788*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4789*d5c09012SAndroid Build Coastguard Worker 4790*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the Google Compute Engine 4791*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 4792*d5c09012SAndroid Build Coastguard Worker // cluster resides. This field has been deprecated and replaced by the name 4793*d5c09012SAndroid Build Coastguard Worker // field. 4794*d5c09012SAndroid Build Coastguard Worker string zone = 2 [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4795*d5c09012SAndroid Build Coastguard Worker 4796*d5c09012SAndroid Build Coastguard Worker // Required. Deprecated. The name of the cluster. 4797*d5c09012SAndroid Build Coastguard Worker // This field has been deprecated and replaced by the name field. 4798*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 4799*d5c09012SAndroid Build Coastguard Worker [deprecated = true, (google.api.field_behavior) = REQUIRED]; 4800*d5c09012SAndroid Build Coastguard Worker 4801*d5c09012SAndroid Build Coastguard Worker // Required. Configuration options for the NetworkPolicy feature. 4802*d5c09012SAndroid Build Coastguard Worker NetworkPolicy network_policy = 4 [(google.api.field_behavior) = REQUIRED]; 4803*d5c09012SAndroid Build Coastguard Worker 4804*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster name) of the cluster to set networking 4805*d5c09012SAndroid Build Coastguard Worker // policy. Specified in the format `projects/*/locations/*/clusters/*`. 4806*d5c09012SAndroid Build Coastguard Worker string name = 6; 4807*d5c09012SAndroid Build Coastguard Worker} 4808*d5c09012SAndroid Build Coastguard Worker 4809*d5c09012SAndroid Build Coastguard Worker// SetMaintenancePolicyRequest sets the maintenance policy for a cluster. 4810*d5c09012SAndroid Build Coastguard Workermessage SetMaintenancePolicyRequest { 4811*d5c09012SAndroid Build Coastguard Worker // Required. The Google Developers Console [project ID or project 4812*d5c09012SAndroid Build Coastguard Worker // number](https://cloud.google.com/resource-manager/docs/creating-managing-projects). 4813*d5c09012SAndroid Build Coastguard Worker string project_id = 1 [(google.api.field_behavior) = REQUIRED]; 4814*d5c09012SAndroid Build Coastguard Worker 4815*d5c09012SAndroid Build Coastguard Worker // Required. The name of the Google Compute Engine 4816*d5c09012SAndroid Build Coastguard Worker // [zone](https://cloud.google.com/compute/docs/zones#available) in which the 4817*d5c09012SAndroid Build Coastguard Worker // cluster resides. 4818*d5c09012SAndroid Build Coastguard Worker string zone = 2 [(google.api.field_behavior) = REQUIRED]; 4819*d5c09012SAndroid Build Coastguard Worker 4820*d5c09012SAndroid Build Coastguard Worker // Required. The name of the cluster to update. 4821*d5c09012SAndroid Build Coastguard Worker string cluster_id = 3 [(google.api.field_behavior) = REQUIRED]; 4822*d5c09012SAndroid Build Coastguard Worker 4823*d5c09012SAndroid Build Coastguard Worker // Required. The maintenance policy to be set for the cluster. An empty field 4824*d5c09012SAndroid Build Coastguard Worker // clears the existing maintenance policy. 4825*d5c09012SAndroid Build Coastguard Worker MaintenancePolicy maintenance_policy = 4 4826*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = REQUIRED]; 4827*d5c09012SAndroid Build Coastguard Worker 4828*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster name) of the cluster to set 4829*d5c09012SAndroid Build Coastguard Worker // maintenance policy. 4830*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*`. 4831*d5c09012SAndroid Build Coastguard Worker string name = 5; 4832*d5c09012SAndroid Build Coastguard Worker} 4833*d5c09012SAndroid Build Coastguard Worker 4834*d5c09012SAndroid Build Coastguard Worker// ListLocationsRequest is used to request the locations that offer GKE. 4835*d5c09012SAndroid Build Coastguard Workermessage ListLocationsRequest { 4836*d5c09012SAndroid Build Coastguard Worker // Required. Contains the name of the resource requested. 4837*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*`. 4838*d5c09012SAndroid Build Coastguard Worker string parent = 1 [(google.api.field_behavior) = REQUIRED]; 4839*d5c09012SAndroid Build Coastguard Worker} 4840*d5c09012SAndroid Build Coastguard Worker 4841*d5c09012SAndroid Build Coastguard Worker// ListLocationsResponse returns the list of all GKE locations and their 4842*d5c09012SAndroid Build Coastguard Worker// recommendation state. 4843*d5c09012SAndroid Build Coastguard Workermessage ListLocationsResponse { 4844*d5c09012SAndroid Build Coastguard Worker // A full list of GKE locations. 4845*d5c09012SAndroid Build Coastguard Worker repeated Location locations = 1; 4846*d5c09012SAndroid Build Coastguard Worker 4847*d5c09012SAndroid Build Coastguard Worker // Only return ListLocationsResponse that occur after the page_token. This 4848*d5c09012SAndroid Build Coastguard Worker // value should be populated from the ListLocationsResponse.next_page_token if 4849*d5c09012SAndroid Build Coastguard Worker // that response token was set (which happens when listing more Locations than 4850*d5c09012SAndroid Build Coastguard Worker // fit in a single ListLocationsResponse). 4851*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 4852*d5c09012SAndroid Build Coastguard Worker} 4853*d5c09012SAndroid Build Coastguard Worker 4854*d5c09012SAndroid Build Coastguard Worker// Location returns the location name, and if the location is recommended 4855*d5c09012SAndroid Build Coastguard Worker// for GKE cluster scheduling. 4856*d5c09012SAndroid Build Coastguard Workermessage Location { 4857*d5c09012SAndroid Build Coastguard Worker // LocationType is the type of GKE location, regional or zonal. 4858*d5c09012SAndroid Build Coastguard Worker enum LocationType { 4859*d5c09012SAndroid Build Coastguard Worker // LOCATION_TYPE_UNSPECIFIED means the location type was not determined. 4860*d5c09012SAndroid Build Coastguard Worker LOCATION_TYPE_UNSPECIFIED = 0; 4861*d5c09012SAndroid Build Coastguard Worker 4862*d5c09012SAndroid Build Coastguard Worker // A GKE Location where Zonal clusters can be created. 4863*d5c09012SAndroid Build Coastguard Worker ZONE = 1; 4864*d5c09012SAndroid Build Coastguard Worker 4865*d5c09012SAndroid Build Coastguard Worker // A GKE Location where Regional clusters can be created. 4866*d5c09012SAndroid Build Coastguard Worker REGION = 2; 4867*d5c09012SAndroid Build Coastguard Worker } 4868*d5c09012SAndroid Build Coastguard Worker 4869*d5c09012SAndroid Build Coastguard Worker // Contains the type of location this Location is for. 4870*d5c09012SAndroid Build Coastguard Worker // Regional or Zonal. 4871*d5c09012SAndroid Build Coastguard Worker LocationType type = 1; 4872*d5c09012SAndroid Build Coastguard Worker 4873*d5c09012SAndroid Build Coastguard Worker // Contains the name of the resource requested. 4874*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*`. 4875*d5c09012SAndroid Build Coastguard Worker string name = 2; 4876*d5c09012SAndroid Build Coastguard Worker 4877*d5c09012SAndroid Build Coastguard Worker // Whether the location is recommended for GKE cluster scheduling. 4878*d5c09012SAndroid Build Coastguard Worker bool recommended = 3; 4879*d5c09012SAndroid Build Coastguard Worker} 4880*d5c09012SAndroid Build Coastguard Worker 4881*d5c09012SAndroid Build Coastguard Worker// StatusCondition describes why a cluster or a node pool has a certain status 4882*d5c09012SAndroid Build Coastguard Worker// (e.g., ERROR or DEGRADED). 4883*d5c09012SAndroid Build Coastguard Workermessage StatusCondition { 4884*d5c09012SAndroid Build Coastguard Worker // Code for each condition 4885*d5c09012SAndroid Build Coastguard Worker enum Code { 4886*d5c09012SAndroid Build Coastguard Worker option deprecated = true; 4887*d5c09012SAndroid Build Coastguard Worker 4888*d5c09012SAndroid Build Coastguard Worker // UNKNOWN indicates a generic condition. 4889*d5c09012SAndroid Build Coastguard Worker UNKNOWN = 0; 4890*d5c09012SAndroid Build Coastguard Worker 4891*d5c09012SAndroid Build Coastguard Worker // GCE_STOCKOUT indicates that Google Compute Engine resources are 4892*d5c09012SAndroid Build Coastguard Worker // temporarily unavailable. 4893*d5c09012SAndroid Build Coastguard Worker GCE_STOCKOUT = 1; 4894*d5c09012SAndroid Build Coastguard Worker 4895*d5c09012SAndroid Build Coastguard Worker // GKE_SERVICE_ACCOUNT_DELETED indicates that the user deleted their robot 4896*d5c09012SAndroid Build Coastguard Worker // service account. 4897*d5c09012SAndroid Build Coastguard Worker GKE_SERVICE_ACCOUNT_DELETED = 2; 4898*d5c09012SAndroid Build Coastguard Worker 4899*d5c09012SAndroid Build Coastguard Worker // Google Compute Engine quota was exceeded. 4900*d5c09012SAndroid Build Coastguard Worker GCE_QUOTA_EXCEEDED = 3; 4901*d5c09012SAndroid Build Coastguard Worker 4902*d5c09012SAndroid Build Coastguard Worker // Cluster state was manually changed by an SRE due to a system logic error. 4903*d5c09012SAndroid Build Coastguard Worker SET_BY_OPERATOR = 4; 4904*d5c09012SAndroid Build Coastguard Worker 4905*d5c09012SAndroid Build Coastguard Worker // Unable to perform an encrypt operation against the CloudKMS key used for 4906*d5c09012SAndroid Build Coastguard Worker // etcd level encryption. 4907*d5c09012SAndroid Build Coastguard Worker CLOUD_KMS_KEY_ERROR = 7; 4908*d5c09012SAndroid Build Coastguard Worker 4909*d5c09012SAndroid Build Coastguard Worker // Cluster CA is expiring soon. 4910*d5c09012SAndroid Build Coastguard Worker // More codes TBA 4911*d5c09012SAndroid Build Coastguard Worker CA_EXPIRING = 9; 4912*d5c09012SAndroid Build Coastguard Worker } 4913*d5c09012SAndroid Build Coastguard Worker 4914*d5c09012SAndroid Build Coastguard Worker // Machine-friendly representation of the condition 4915*d5c09012SAndroid Build Coastguard Worker // Deprecated. Use canonical_code instead. 4916*d5c09012SAndroid Build Coastguard Worker Code code = 1 [deprecated = true]; 4917*d5c09012SAndroid Build Coastguard Worker 4918*d5c09012SAndroid Build Coastguard Worker // Human-friendly representation of the condition 4919*d5c09012SAndroid Build Coastguard Worker string message = 2; 4920*d5c09012SAndroid Build Coastguard Worker 4921*d5c09012SAndroid Build Coastguard Worker // Canonical code of the condition. 4922*d5c09012SAndroid Build Coastguard Worker google.rpc.Code canonical_code = 3; 4923*d5c09012SAndroid Build Coastguard Worker} 4924*d5c09012SAndroid Build Coastguard Worker 4925*d5c09012SAndroid Build Coastguard Worker// NetworkConfig reports the relative names of network & subnetwork. 4926*d5c09012SAndroid Build Coastguard Workermessage NetworkConfig { 4927*d5c09012SAndroid Build Coastguard Worker // Configuration of all network bandwidth tiers 4928*d5c09012SAndroid Build Coastguard Worker message ClusterNetworkPerformanceConfig { 4929*d5c09012SAndroid Build Coastguard Worker // Node network tier 4930*d5c09012SAndroid Build Coastguard Worker enum Tier { 4931*d5c09012SAndroid Build Coastguard Worker // Default value 4932*d5c09012SAndroid Build Coastguard Worker TIER_UNSPECIFIED = 0; 4933*d5c09012SAndroid Build Coastguard Worker 4934*d5c09012SAndroid Build Coastguard Worker // Higher bandwidth, actual values based on VM size. 4935*d5c09012SAndroid Build Coastguard Worker TIER_1 = 1; 4936*d5c09012SAndroid Build Coastguard Worker } 4937*d5c09012SAndroid Build Coastguard Worker 4938*d5c09012SAndroid Build Coastguard Worker // Specifies the total network bandwidth tier for the NodePool. 4939*d5c09012SAndroid Build Coastguard Worker optional Tier total_egress_bandwidth_tier = 1; 4940*d5c09012SAndroid Build Coastguard Worker } 4941*d5c09012SAndroid Build Coastguard Worker 4942*d5c09012SAndroid Build Coastguard Worker // Output only. The relative name of the Google Compute Engine 4943*d5c09012SAndroid Build Coastguard Worker // [network][google.container.v1beta1.NetworkConfig.network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks) 4944*d5c09012SAndroid Build Coastguard Worker // to which the cluster is connected. Example: 4945*d5c09012SAndroid Build Coastguard Worker // projects/my-project/global/networks/my-network 4946*d5c09012SAndroid Build Coastguard Worker string network = 1; 4947*d5c09012SAndroid Build Coastguard Worker 4948*d5c09012SAndroid Build Coastguard Worker // Output only. The relative name of the Google Compute Engine 4949*d5c09012SAndroid Build Coastguard Worker // [subnetwork](https://cloud.google.com/compute/docs/vpc) to which the 4950*d5c09012SAndroid Build Coastguard Worker // cluster is connected. Example: 4951*d5c09012SAndroid Build Coastguard Worker // projects/my-project/regions/us-central1/subnetworks/my-subnet 4952*d5c09012SAndroid Build Coastguard Worker string subnetwork = 2; 4953*d5c09012SAndroid Build Coastguard Worker 4954*d5c09012SAndroid Build Coastguard Worker // Whether Intra-node visibility is enabled for this cluster. 4955*d5c09012SAndroid Build Coastguard Worker // This makes same node pod to pod traffic visible for VPC network. 4956*d5c09012SAndroid Build Coastguard Worker bool enable_intra_node_visibility = 5; 4957*d5c09012SAndroid Build Coastguard Worker 4958*d5c09012SAndroid Build Coastguard Worker // Whether the cluster disables default in-node sNAT rules. In-node sNAT rules 4959*d5c09012SAndroid Build Coastguard Worker // will be disabled when default_snat_status is disabled. When disabled is set 4960*d5c09012SAndroid Build Coastguard Worker // to false, default IP masquerade rules will be applied to the nodes to 4961*d5c09012SAndroid Build Coastguard Worker // prevent sNAT on cluster internal traffic. 4962*d5c09012SAndroid Build Coastguard Worker DefaultSnatStatus default_snat_status = 7; 4963*d5c09012SAndroid Build Coastguard Worker 4964*d5c09012SAndroid Build Coastguard Worker // Whether L4ILB Subsetting is enabled for this cluster. 4965*d5c09012SAndroid Build Coastguard Worker bool enable_l4ilb_subsetting = 10; 4966*d5c09012SAndroid Build Coastguard Worker 4967*d5c09012SAndroid Build Coastguard Worker // The desired datapath provider for this cluster. By default, uses the 4968*d5c09012SAndroid Build Coastguard Worker // IPTables-based kube-proxy implementation. 4969*d5c09012SAndroid Build Coastguard Worker DatapathProvider datapath_provider = 11; 4970*d5c09012SAndroid Build Coastguard Worker 4971*d5c09012SAndroid Build Coastguard Worker // The desired state of IPv6 connectivity to Google Services. 4972*d5c09012SAndroid Build Coastguard Worker // By default, no private IPv6 access to or from Google Services (all access 4973*d5c09012SAndroid Build Coastguard Worker // will be via IPv4) 4974*d5c09012SAndroid Build Coastguard Worker PrivateIPv6GoogleAccess private_ipv6_google_access = 12; 4975*d5c09012SAndroid Build Coastguard Worker 4976*d5c09012SAndroid Build Coastguard Worker // DNSConfig contains clusterDNS config for this cluster. 4977*d5c09012SAndroid Build Coastguard Worker DNSConfig dns_config = 13; 4978*d5c09012SAndroid Build Coastguard Worker 4979*d5c09012SAndroid Build Coastguard Worker // ServiceExternalIPsConfig specifies if services with externalIPs field are 4980*d5c09012SAndroid Build Coastguard Worker // blocked or not. 4981*d5c09012SAndroid Build Coastguard Worker ServiceExternalIPsConfig service_external_ips_config = 15; 4982*d5c09012SAndroid Build Coastguard Worker 4983*d5c09012SAndroid Build Coastguard Worker // GatewayAPIConfig contains the desired config of Gateway API on this 4984*d5c09012SAndroid Build Coastguard Worker // cluster. 4985*d5c09012SAndroid Build Coastguard Worker GatewayAPIConfig gateway_api_config = 16; 4986*d5c09012SAndroid Build Coastguard Worker 4987*d5c09012SAndroid Build Coastguard Worker // Whether multi-networking is enabled for this cluster. 4988*d5c09012SAndroid Build Coastguard Worker bool enable_multi_networking = 17; 4989*d5c09012SAndroid Build Coastguard Worker 4990*d5c09012SAndroid Build Coastguard Worker // Network bandwidth tier configuration. 4991*d5c09012SAndroid Build Coastguard Worker ClusterNetworkPerformanceConfig network_performance_config = 18; 4992*d5c09012SAndroid Build Coastguard Worker 4993*d5c09012SAndroid Build Coastguard Worker // Whether FQDN Network Policy is enabled on this cluster. 4994*d5c09012SAndroid Build Coastguard Worker optional bool enable_fqdn_network_policy = 19; 4995*d5c09012SAndroid Build Coastguard Worker 4996*d5c09012SAndroid Build Coastguard Worker // Specify the details of in-transit encryption. 4997*d5c09012SAndroid Build Coastguard Worker optional InTransitEncryptionConfig in_transit_encryption_config = 20; 4998*d5c09012SAndroid Build Coastguard Worker 4999*d5c09012SAndroid Build Coastguard Worker // Whether CiliumClusterWideNetworkPolicy is enabled on this cluster. 5000*d5c09012SAndroid Build Coastguard Worker optional bool enable_cilium_clusterwide_network_policy = 21; 5001*d5c09012SAndroid Build Coastguard Worker} 5002*d5c09012SAndroid Build Coastguard Worker 5003*d5c09012SAndroid Build Coastguard Worker// GatewayAPIConfig contains the desired config of Gateway API on this cluster. 5004*d5c09012SAndroid Build Coastguard Workermessage GatewayAPIConfig { 5005*d5c09012SAndroid Build Coastguard Worker // Channel describes if/how Gateway API should be installed and implemented in 5006*d5c09012SAndroid Build Coastguard Worker // a cluster. 5007*d5c09012SAndroid Build Coastguard Worker enum Channel { 5008*d5c09012SAndroid Build Coastguard Worker // Default value. 5009*d5c09012SAndroid Build Coastguard Worker CHANNEL_UNSPECIFIED = 0; 5010*d5c09012SAndroid Build Coastguard Worker 5011*d5c09012SAndroid Build Coastguard Worker // Gateway API support is disabled 5012*d5c09012SAndroid Build Coastguard Worker CHANNEL_DISABLED = 1; 5013*d5c09012SAndroid Build Coastguard Worker 5014*d5c09012SAndroid Build Coastguard Worker // Gateway API support is enabled, experimental CRDs are installed 5015*d5c09012SAndroid Build Coastguard Worker CHANNEL_EXPERIMENTAL = 3; 5016*d5c09012SAndroid Build Coastguard Worker 5017*d5c09012SAndroid Build Coastguard Worker // Gateway API support is enabled, standard CRDs are installed 5018*d5c09012SAndroid Build Coastguard Worker CHANNEL_STANDARD = 4; 5019*d5c09012SAndroid Build Coastguard Worker } 5020*d5c09012SAndroid Build Coastguard Worker 5021*d5c09012SAndroid Build Coastguard Worker // The Gateway API release channel to use for Gateway API. 5022*d5c09012SAndroid Build Coastguard Worker Channel channel = 1; 5023*d5c09012SAndroid Build Coastguard Worker} 5024*d5c09012SAndroid Build Coastguard Worker 5025*d5c09012SAndroid Build Coastguard Worker// Config to block services with externalIPs field. 5026*d5c09012SAndroid Build Coastguard Workermessage ServiceExternalIPsConfig { 5027*d5c09012SAndroid Build Coastguard Worker // Whether Services with ExternalIPs field are allowed or not. 5028*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 5029*d5c09012SAndroid Build Coastguard Worker} 5030*d5c09012SAndroid Build Coastguard Worker 5031*d5c09012SAndroid Build Coastguard Worker// ListUsableSubnetworksRequest requests the list of usable subnetworks. 5032*d5c09012SAndroid Build Coastguard Worker// available to a user for creating clusters. 5033*d5c09012SAndroid Build Coastguard Workermessage ListUsableSubnetworksRequest { 5034*d5c09012SAndroid Build Coastguard Worker // Required. The parent project where subnetworks are usable. 5035*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*`. 5036*d5c09012SAndroid Build Coastguard Worker string parent = 1 [(google.api.field_behavior) = REQUIRED]; 5037*d5c09012SAndroid Build Coastguard Worker 5038*d5c09012SAndroid Build Coastguard Worker // Filtering currently only supports equality on the networkProjectId and must 5039*d5c09012SAndroid Build Coastguard Worker // be in the form: "networkProjectId=[PROJECTID]", where `networkProjectId` 5040*d5c09012SAndroid Build Coastguard Worker // is the project which owns the listed subnetworks. This defaults to the 5041*d5c09012SAndroid Build Coastguard Worker // parent project ID. 5042*d5c09012SAndroid Build Coastguard Worker string filter = 2; 5043*d5c09012SAndroid Build Coastguard Worker 5044*d5c09012SAndroid Build Coastguard Worker // The max number of results per page that should be returned. If the number 5045*d5c09012SAndroid Build Coastguard Worker // of available results is larger than `page_size`, a `next_page_token` is 5046*d5c09012SAndroid Build Coastguard Worker // returned which can be used to get the next page of results in subsequent 5047*d5c09012SAndroid Build Coastguard Worker // requests. Acceptable values are 0 to 500, inclusive. (Default: 500) 5048*d5c09012SAndroid Build Coastguard Worker int32 page_size = 3; 5049*d5c09012SAndroid Build Coastguard Worker 5050*d5c09012SAndroid Build Coastguard Worker // Specifies a page token to use. Set this to the nextPageToken returned by 5051*d5c09012SAndroid Build Coastguard Worker // previous list requests to get the next page of results. 5052*d5c09012SAndroid Build Coastguard Worker string page_token = 4; 5053*d5c09012SAndroid Build Coastguard Worker} 5054*d5c09012SAndroid Build Coastguard Worker 5055*d5c09012SAndroid Build Coastguard Worker// ListUsableSubnetworksResponse is the response of 5056*d5c09012SAndroid Build Coastguard Worker// ListUsableSubnetworksRequest. 5057*d5c09012SAndroid Build Coastguard Workermessage ListUsableSubnetworksResponse { 5058*d5c09012SAndroid Build Coastguard Worker // A list of usable subnetworks in the specified network project. 5059*d5c09012SAndroid Build Coastguard Worker repeated UsableSubnetwork subnetworks = 1; 5060*d5c09012SAndroid Build Coastguard Worker 5061*d5c09012SAndroid Build Coastguard Worker // This token allows you to get the next page of results for list requests. 5062*d5c09012SAndroid Build Coastguard Worker // If the number of results is larger than `page_size`, use the 5063*d5c09012SAndroid Build Coastguard Worker // `next_page_token` as a value for the query parameter `page_token` in the 5064*d5c09012SAndroid Build Coastguard Worker // next request. The value will become empty when there are no more pages. 5065*d5c09012SAndroid Build Coastguard Worker string next_page_token = 2; 5066*d5c09012SAndroid Build Coastguard Worker} 5067*d5c09012SAndroid Build Coastguard Worker 5068*d5c09012SAndroid Build Coastguard Worker// Secondary IP range of a usable subnetwork. 5069*d5c09012SAndroid Build Coastguard Workermessage UsableSubnetworkSecondaryRange { 5070*d5c09012SAndroid Build Coastguard Worker // Status shows the current usage of a secondary IP range. 5071*d5c09012SAndroid Build Coastguard Worker enum Status { 5072*d5c09012SAndroid Build Coastguard Worker // UNKNOWN is the zero value of the Status enum. It's not a valid status. 5073*d5c09012SAndroid Build Coastguard Worker UNKNOWN = 0; 5074*d5c09012SAndroid Build Coastguard Worker 5075*d5c09012SAndroid Build Coastguard Worker // UNUSED denotes that this range is unclaimed by any cluster. 5076*d5c09012SAndroid Build Coastguard Worker UNUSED = 1; 5077*d5c09012SAndroid Build Coastguard Worker 5078*d5c09012SAndroid Build Coastguard Worker // IN_USE_SERVICE denotes that this range is claimed by a cluster for 5079*d5c09012SAndroid Build Coastguard Worker // services. It cannot be used for other clusters. 5080*d5c09012SAndroid Build Coastguard Worker IN_USE_SERVICE = 2; 5081*d5c09012SAndroid Build Coastguard Worker 5082*d5c09012SAndroid Build Coastguard Worker // IN_USE_SHAREABLE_POD denotes this range was created by the network admin 5083*d5c09012SAndroid Build Coastguard Worker // and is currently claimed by a cluster for pods. It can only be used by 5084*d5c09012SAndroid Build Coastguard Worker // other clusters as a pod range. 5085*d5c09012SAndroid Build Coastguard Worker IN_USE_SHAREABLE_POD = 3; 5086*d5c09012SAndroid Build Coastguard Worker 5087*d5c09012SAndroid Build Coastguard Worker // IN_USE_MANAGED_POD denotes this range was created by GKE and is claimed 5088*d5c09012SAndroid Build Coastguard Worker // for pods. It cannot be used for other clusters. 5089*d5c09012SAndroid Build Coastguard Worker IN_USE_MANAGED_POD = 4; 5090*d5c09012SAndroid Build Coastguard Worker } 5091*d5c09012SAndroid Build Coastguard Worker 5092*d5c09012SAndroid Build Coastguard Worker // The name associated with this subnetwork secondary range, used when adding 5093*d5c09012SAndroid Build Coastguard Worker // an alias IP range to a VM instance. 5094*d5c09012SAndroid Build Coastguard Worker string range_name = 1; 5095*d5c09012SAndroid Build Coastguard Worker 5096*d5c09012SAndroid Build Coastguard Worker // The range of IP addresses belonging to this subnetwork secondary range. 5097*d5c09012SAndroid Build Coastguard Worker string ip_cidr_range = 2; 5098*d5c09012SAndroid Build Coastguard Worker 5099*d5c09012SAndroid Build Coastguard Worker // This field is to determine the status of the secondary range programmably. 5100*d5c09012SAndroid Build Coastguard Worker Status status = 3; 5101*d5c09012SAndroid Build Coastguard Worker} 5102*d5c09012SAndroid Build Coastguard Worker 5103*d5c09012SAndroid Build Coastguard Worker// UsableSubnetwork resource returns the subnetwork name, its associated network 5104*d5c09012SAndroid Build Coastguard Worker// and the primary CIDR range. 5105*d5c09012SAndroid Build Coastguard Workermessage UsableSubnetwork { 5106*d5c09012SAndroid Build Coastguard Worker // Subnetwork Name. 5107*d5c09012SAndroid Build Coastguard Worker // Example: projects/my-project/regions/us-central1/subnetworks/my-subnet 5108*d5c09012SAndroid Build Coastguard Worker string subnetwork = 1; 5109*d5c09012SAndroid Build Coastguard Worker 5110*d5c09012SAndroid Build Coastguard Worker // Network Name. 5111*d5c09012SAndroid Build Coastguard Worker // Example: projects/my-project/global/networks/my-network 5112*d5c09012SAndroid Build Coastguard Worker string network = 2; 5113*d5c09012SAndroid Build Coastguard Worker 5114*d5c09012SAndroid Build Coastguard Worker // The range of internal addresses that are owned by this subnetwork. 5115*d5c09012SAndroid Build Coastguard Worker string ip_cidr_range = 3; 5116*d5c09012SAndroid Build Coastguard Worker 5117*d5c09012SAndroid Build Coastguard Worker // Secondary IP ranges. 5118*d5c09012SAndroid Build Coastguard Worker repeated UsableSubnetworkSecondaryRange secondary_ip_ranges = 4; 5119*d5c09012SAndroid Build Coastguard Worker 5120*d5c09012SAndroid Build Coastguard Worker // A human readable status message representing the reasons for cases where 5121*d5c09012SAndroid Build Coastguard Worker // the caller cannot use the secondary ranges under the subnet. For example if 5122*d5c09012SAndroid Build Coastguard Worker // the secondary_ip_ranges is empty due to a permission issue, an insufficient 5123*d5c09012SAndroid Build Coastguard Worker // permission message will be given by status_message. 5124*d5c09012SAndroid Build Coastguard Worker string status_message = 5; 5125*d5c09012SAndroid Build Coastguard Worker} 5126*d5c09012SAndroid Build Coastguard Worker 5127*d5c09012SAndroid Build Coastguard Worker// VerticalPodAutoscaling contains global, per-cluster information 5128*d5c09012SAndroid Build Coastguard Worker// required by Vertical Pod Autoscaler to automatically adjust 5129*d5c09012SAndroid Build Coastguard Worker// the resources of pods controlled by it. 5130*d5c09012SAndroid Build Coastguard Workermessage VerticalPodAutoscaling { 5131*d5c09012SAndroid Build Coastguard Worker // Enables vertical pod autoscaling. 5132*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 5133*d5c09012SAndroid Build Coastguard Worker} 5134*d5c09012SAndroid Build Coastguard Worker 5135*d5c09012SAndroid Build Coastguard Worker// DefaultSnatStatus contains the desired state of whether default sNAT should 5136*d5c09012SAndroid Build Coastguard Worker// be disabled on the cluster. 5137*d5c09012SAndroid Build Coastguard Workermessage DefaultSnatStatus { 5138*d5c09012SAndroid Build Coastguard Worker // Disables cluster default sNAT rules. 5139*d5c09012SAndroid Build Coastguard Worker bool disabled = 1; 5140*d5c09012SAndroid Build Coastguard Worker} 5141*d5c09012SAndroid Build Coastguard Worker 5142*d5c09012SAndroid Build Coastguard Worker// IntraNodeVisibilityConfig contains the desired config of the intra-node 5143*d5c09012SAndroid Build Coastguard Worker// visibility on this cluster. 5144*d5c09012SAndroid Build Coastguard Workermessage IntraNodeVisibilityConfig { 5145*d5c09012SAndroid Build Coastguard Worker // Enables intra node visibility for this cluster. 5146*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 5147*d5c09012SAndroid Build Coastguard Worker} 5148*d5c09012SAndroid Build Coastguard Worker 5149*d5c09012SAndroid Build Coastguard Worker// ILBSubsettingConfig contains the desired config of L4 Internal LoadBalancer 5150*d5c09012SAndroid Build Coastguard Worker// subsetting on this cluster. 5151*d5c09012SAndroid Build Coastguard Workermessage ILBSubsettingConfig { 5152*d5c09012SAndroid Build Coastguard Worker // Enables l4 ILB subsetting for this cluster 5153*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 5154*d5c09012SAndroid Build Coastguard Worker} 5155*d5c09012SAndroid Build Coastguard Worker 5156*d5c09012SAndroid Build Coastguard Worker// DNSConfig contains the desired set of options for configuring clusterDNS. 5157*d5c09012SAndroid Build Coastguard Workermessage DNSConfig { 5158*d5c09012SAndroid Build Coastguard Worker // Provider lists the various in-cluster DNS providers. 5159*d5c09012SAndroid Build Coastguard Worker enum Provider { 5160*d5c09012SAndroid Build Coastguard Worker // Default value 5161*d5c09012SAndroid Build Coastguard Worker PROVIDER_UNSPECIFIED = 0; 5162*d5c09012SAndroid Build Coastguard Worker 5163*d5c09012SAndroid Build Coastguard Worker // Use GKE default DNS provider(kube-dns) for DNS resolution. 5164*d5c09012SAndroid Build Coastguard Worker PLATFORM_DEFAULT = 1; 5165*d5c09012SAndroid Build Coastguard Worker 5166*d5c09012SAndroid Build Coastguard Worker // Use CloudDNS for DNS resolution. 5167*d5c09012SAndroid Build Coastguard Worker CLOUD_DNS = 2; 5168*d5c09012SAndroid Build Coastguard Worker 5169*d5c09012SAndroid Build Coastguard Worker // Use KubeDNS for DNS resolution. 5170*d5c09012SAndroid Build Coastguard Worker KUBE_DNS = 3; 5171*d5c09012SAndroid Build Coastguard Worker } 5172*d5c09012SAndroid Build Coastguard Worker 5173*d5c09012SAndroid Build Coastguard Worker // DNSScope lists the various scopes of access to cluster DNS records. 5174*d5c09012SAndroid Build Coastguard Worker enum DNSScope { 5175*d5c09012SAndroid Build Coastguard Worker // Default value, will be inferred as cluster scope. 5176*d5c09012SAndroid Build Coastguard Worker DNS_SCOPE_UNSPECIFIED = 0; 5177*d5c09012SAndroid Build Coastguard Worker 5178*d5c09012SAndroid Build Coastguard Worker // DNS records are accessible from within the cluster. 5179*d5c09012SAndroid Build Coastguard Worker CLUSTER_SCOPE = 1; 5180*d5c09012SAndroid Build Coastguard Worker 5181*d5c09012SAndroid Build Coastguard Worker // DNS records are accessible from within the VPC. 5182*d5c09012SAndroid Build Coastguard Worker VPC_SCOPE = 2; 5183*d5c09012SAndroid Build Coastguard Worker } 5184*d5c09012SAndroid Build Coastguard Worker 5185*d5c09012SAndroid Build Coastguard Worker // cluster_dns indicates which in-cluster DNS provider should be used. 5186*d5c09012SAndroid Build Coastguard Worker Provider cluster_dns = 1; 5187*d5c09012SAndroid Build Coastguard Worker 5188*d5c09012SAndroid Build Coastguard Worker // cluster_dns_scope indicates the scope of access to cluster DNS records. 5189*d5c09012SAndroid Build Coastguard Worker DNSScope cluster_dns_scope = 2; 5190*d5c09012SAndroid Build Coastguard Worker 5191*d5c09012SAndroid Build Coastguard Worker // cluster_dns_domain is the suffix used for all cluster service records. 5192*d5c09012SAndroid Build Coastguard Worker string cluster_dns_domain = 3; 5193*d5c09012SAndroid Build Coastguard Worker} 5194*d5c09012SAndroid Build Coastguard Worker 5195*d5c09012SAndroid Build Coastguard Worker// Constraints applied to pods. 5196*d5c09012SAndroid Build Coastguard Workermessage MaxPodsConstraint { 5197*d5c09012SAndroid Build Coastguard Worker // Constraint enforced on the max num of pods per node. 5198*d5c09012SAndroid Build Coastguard Worker int64 max_pods_per_node = 1; 5199*d5c09012SAndroid Build Coastguard Worker} 5200*d5c09012SAndroid Build Coastguard Worker 5201*d5c09012SAndroid Build Coastguard Worker// Configuration for the use of Kubernetes Service Accounts in GCP IAM 5202*d5c09012SAndroid Build Coastguard Worker// policies. 5203*d5c09012SAndroid Build Coastguard Workermessage WorkloadIdentityConfig { 5204*d5c09012SAndroid Build Coastguard Worker // IAM Identity Namespace to attach all Kubernetes Service Accounts to. 5205*d5c09012SAndroid Build Coastguard Worker string identity_namespace = 1 [deprecated = true]; 5206*d5c09012SAndroid Build Coastguard Worker 5207*d5c09012SAndroid Build Coastguard Worker // The workload pool to attach all Kubernetes service accounts to. 5208*d5c09012SAndroid Build Coastguard Worker string workload_pool = 2; 5209*d5c09012SAndroid Build Coastguard Worker 5210*d5c09012SAndroid Build Coastguard Worker // identity provider is the third party identity provider. 5211*d5c09012SAndroid Build Coastguard Worker string identity_provider = 3; 5212*d5c09012SAndroid Build Coastguard Worker} 5213*d5c09012SAndroid Build Coastguard Worker 5214*d5c09012SAndroid Build Coastguard Worker// Configuration for direct-path (via ALTS) with workload identity. 5215*d5c09012SAndroid Build Coastguard Workermessage WorkloadALTSConfig { 5216*d5c09012SAndroid Build Coastguard Worker // enable_alts controls whether the alts handshaker should be enabled or not 5217*d5c09012SAndroid Build Coastguard Worker // for direct-path. 5218*d5c09012SAndroid Build Coastguard Worker // 5219*d5c09012SAndroid Build Coastguard Worker // Requires Workload Identity 5220*d5c09012SAndroid Build Coastguard Worker // ([workload_pool][google.container.v1beta1.WorkloadIdentityConfig.workload_pool] 5221*d5c09012SAndroid Build Coastguard Worker // must be non-empty). 5222*d5c09012SAndroid Build Coastguard Worker google.protobuf.BoolValue enable_alts = 1; 5223*d5c09012SAndroid Build Coastguard Worker} 5224*d5c09012SAndroid Build Coastguard Worker 5225*d5c09012SAndroid Build Coastguard Worker// Configuration for issuance of mTLS keys and certificates to Kubernetes pods. 5226*d5c09012SAndroid Build Coastguard Workermessage WorkloadCertificates { 5227*d5c09012SAndroid Build Coastguard Worker // enable_certificates controls issuance of workload mTLS certificates. 5228*d5c09012SAndroid Build Coastguard Worker // 5229*d5c09012SAndroid Build Coastguard Worker // If set, the GKE Workload Identity Certificates controller and node agent 5230*d5c09012SAndroid Build Coastguard Worker // will be deployed in the cluster, which can then be configured by creating a 5231*d5c09012SAndroid Build Coastguard Worker // WorkloadCertificateConfig Custom Resource. 5232*d5c09012SAndroid Build Coastguard Worker // 5233*d5c09012SAndroid Build Coastguard Worker // Requires Workload Identity 5234*d5c09012SAndroid Build Coastguard Worker // ([workload_pool][google.container.v1beta1.WorkloadIdentityConfig.workload_pool] 5235*d5c09012SAndroid Build Coastguard Worker // must be non-empty). 5236*d5c09012SAndroid Build Coastguard Worker google.protobuf.BoolValue enable_certificates = 1; 5237*d5c09012SAndroid Build Coastguard Worker} 5238*d5c09012SAndroid Build Coastguard Worker 5239*d5c09012SAndroid Build Coastguard Worker// Configuration for issuance of mTLS keys and certificates to Kubernetes pods. 5240*d5c09012SAndroid Build Coastguard Workermessage MeshCertificates { 5241*d5c09012SAndroid Build Coastguard Worker // enable_certificates controls issuance of workload mTLS certificates. 5242*d5c09012SAndroid Build Coastguard Worker // 5243*d5c09012SAndroid Build Coastguard Worker // If set, the GKE Workload Identity Certificates controller and node agent 5244*d5c09012SAndroid Build Coastguard Worker // will be deployed in the cluster, which can then be configured by creating a 5245*d5c09012SAndroid Build Coastguard Worker // WorkloadCertificateConfig Custom Resource. 5246*d5c09012SAndroid Build Coastguard Worker // 5247*d5c09012SAndroid Build Coastguard Worker // Requires Workload Identity 5248*d5c09012SAndroid Build Coastguard Worker // ([workload_pool][google.container.v1alpha1.WorkloadIdentityConfig.workload_pool] 5249*d5c09012SAndroid Build Coastguard Worker // must be non-empty). 5250*d5c09012SAndroid Build Coastguard Worker google.protobuf.BoolValue enable_certificates = 1; 5251*d5c09012SAndroid Build Coastguard Worker} 5252*d5c09012SAndroid Build Coastguard Worker 5253*d5c09012SAndroid Build Coastguard Worker// Configuration of etcd encryption. 5254*d5c09012SAndroid Build Coastguard Workermessage DatabaseEncryption { 5255*d5c09012SAndroid Build Coastguard Worker // State of etcd encryption. 5256*d5c09012SAndroid Build Coastguard Worker enum State { 5257*d5c09012SAndroid Build Coastguard Worker // Should never be set 5258*d5c09012SAndroid Build Coastguard Worker UNKNOWN = 0; 5259*d5c09012SAndroid Build Coastguard Worker 5260*d5c09012SAndroid Build Coastguard Worker // Secrets in etcd are encrypted. 5261*d5c09012SAndroid Build Coastguard Worker ENCRYPTED = 1; 5262*d5c09012SAndroid Build Coastguard Worker 5263*d5c09012SAndroid Build Coastguard Worker // Secrets in etcd are stored in plain text (at etcd level) - this is 5264*d5c09012SAndroid Build Coastguard Worker // unrelated to Compute Engine level full disk encryption. 5265*d5c09012SAndroid Build Coastguard Worker DECRYPTED = 2; 5266*d5c09012SAndroid Build Coastguard Worker } 5267*d5c09012SAndroid Build Coastguard Worker 5268*d5c09012SAndroid Build Coastguard Worker // Current State of etcd encryption. 5269*d5c09012SAndroid Build Coastguard Worker enum CurrentState { 5270*d5c09012SAndroid Build Coastguard Worker // Should never be set 5271*d5c09012SAndroid Build Coastguard Worker CURRENT_STATE_UNSPECIFIED = 0; 5272*d5c09012SAndroid Build Coastguard Worker 5273*d5c09012SAndroid Build Coastguard Worker // Secrets in etcd are encrypted. 5274*d5c09012SAndroid Build Coastguard Worker CURRENT_STATE_ENCRYPTED = 7; 5275*d5c09012SAndroid Build Coastguard Worker 5276*d5c09012SAndroid Build Coastguard Worker // Secrets in etcd are stored in plain text (at etcd level) - this is 5277*d5c09012SAndroid Build Coastguard Worker // unrelated to Compute Engine level full disk encryption. 5278*d5c09012SAndroid Build Coastguard Worker CURRENT_STATE_DECRYPTED = 2; 5279*d5c09012SAndroid Build Coastguard Worker 5280*d5c09012SAndroid Build Coastguard Worker // Encryption (or re-encryption with a different CloudKMS key) 5281*d5c09012SAndroid Build Coastguard Worker // of Secrets is in progress. 5282*d5c09012SAndroid Build Coastguard Worker CURRENT_STATE_ENCRYPTION_PENDING = 3; 5283*d5c09012SAndroid Build Coastguard Worker 5284*d5c09012SAndroid Build Coastguard Worker // Encryption (or re-encryption with a different CloudKMS key) of Secrets in 5285*d5c09012SAndroid Build Coastguard Worker // etcd encountered an error. 5286*d5c09012SAndroid Build Coastguard Worker CURRENT_STATE_ENCRYPTION_ERROR = 4; 5287*d5c09012SAndroid Build Coastguard Worker 5288*d5c09012SAndroid Build Coastguard Worker // De-crypting Secrets to plain text in etcd is in progress. 5289*d5c09012SAndroid Build Coastguard Worker CURRENT_STATE_DECRYPTION_PENDING = 5; 5290*d5c09012SAndroid Build Coastguard Worker 5291*d5c09012SAndroid Build Coastguard Worker // De-crypting Secrets to plain text in etcd encountered an error. 5292*d5c09012SAndroid Build Coastguard Worker CURRENT_STATE_DECRYPTION_ERROR = 6; 5293*d5c09012SAndroid Build Coastguard Worker } 5294*d5c09012SAndroid Build Coastguard Worker 5295*d5c09012SAndroid Build Coastguard Worker // OperationError records errors seen from CloudKMS keys 5296*d5c09012SAndroid Build Coastguard Worker // encountered during updates to DatabaseEncryption configuration. 5297*d5c09012SAndroid Build Coastguard Worker message OperationError { 5298*d5c09012SAndroid Build Coastguard Worker // CloudKMS key resource that had the error. 5299*d5c09012SAndroid Build Coastguard Worker string key_name = 1; 5300*d5c09012SAndroid Build Coastguard Worker 5301*d5c09012SAndroid Build Coastguard Worker // Description of the error seen during the operation. 5302*d5c09012SAndroid Build Coastguard Worker string error_message = 2; 5303*d5c09012SAndroid Build Coastguard Worker 5304*d5c09012SAndroid Build Coastguard Worker // Time when the CloudKMS error was seen. 5305*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp timestamp = 3; 5306*d5c09012SAndroid Build Coastguard Worker } 5307*d5c09012SAndroid Build Coastguard Worker 5308*d5c09012SAndroid Build Coastguard Worker // Name of CloudKMS key to use for the encryption of secrets in etcd. 5309*d5c09012SAndroid Build Coastguard Worker // Ex. projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key 5310*d5c09012SAndroid Build Coastguard Worker string key_name = 1; 5311*d5c09012SAndroid Build Coastguard Worker 5312*d5c09012SAndroid Build Coastguard Worker // The desired state of etcd encryption. 5313*d5c09012SAndroid Build Coastguard Worker State state = 2; 5314*d5c09012SAndroid Build Coastguard Worker 5315*d5c09012SAndroid Build Coastguard Worker // Output only. The current state of etcd encryption. 5316*d5c09012SAndroid Build Coastguard Worker optional CurrentState current_state = 3 5317*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 5318*d5c09012SAndroid Build Coastguard Worker 5319*d5c09012SAndroid Build Coastguard Worker // Output only. Keys in use by the cluster for decrypting 5320*d5c09012SAndroid Build Coastguard Worker // existing objects, in addition to the key in `key_name`. 5321*d5c09012SAndroid Build Coastguard Worker // 5322*d5c09012SAndroid Build Coastguard Worker // Each item is a CloudKMS key resource. 5323*d5c09012SAndroid Build Coastguard Worker repeated string decryption_keys = 4 5324*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 5325*d5c09012SAndroid Build Coastguard Worker 5326*d5c09012SAndroid Build Coastguard Worker // Output only. Records errors seen during DatabaseEncryption update 5327*d5c09012SAndroid Build Coastguard Worker // operations. 5328*d5c09012SAndroid Build Coastguard Worker repeated OperationError last_operation_errors = 5 5329*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 5330*d5c09012SAndroid Build Coastguard Worker} 5331*d5c09012SAndroid Build Coastguard Worker 5332*d5c09012SAndroid Build Coastguard Worker// Configuration for exporting cluster resource usages. 5333*d5c09012SAndroid Build Coastguard Workermessage ResourceUsageExportConfig { 5334*d5c09012SAndroid Build Coastguard Worker // Parameters for using BigQuery as the destination of resource usage export. 5335*d5c09012SAndroid Build Coastguard Worker message BigQueryDestination { 5336*d5c09012SAndroid Build Coastguard Worker // The ID of a BigQuery Dataset. 5337*d5c09012SAndroid Build Coastguard Worker string dataset_id = 1; 5338*d5c09012SAndroid Build Coastguard Worker } 5339*d5c09012SAndroid Build Coastguard Worker 5340*d5c09012SAndroid Build Coastguard Worker // Parameters for controlling consumption metering. 5341*d5c09012SAndroid Build Coastguard Worker message ConsumptionMeteringConfig { 5342*d5c09012SAndroid Build Coastguard Worker // Whether to enable consumption metering for this cluster. If enabled, a 5343*d5c09012SAndroid Build Coastguard Worker // second BigQuery table will be created to hold resource consumption 5344*d5c09012SAndroid Build Coastguard Worker // records. 5345*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 5346*d5c09012SAndroid Build Coastguard Worker } 5347*d5c09012SAndroid Build Coastguard Worker 5348*d5c09012SAndroid Build Coastguard Worker // Configuration to use BigQuery as usage export destination. 5349*d5c09012SAndroid Build Coastguard Worker BigQueryDestination bigquery_destination = 1; 5350*d5c09012SAndroid Build Coastguard Worker 5351*d5c09012SAndroid Build Coastguard Worker // Whether to enable network egress metering for this cluster. If enabled, a 5352*d5c09012SAndroid Build Coastguard Worker // daemonset will be created in the cluster to meter network egress traffic. 5353*d5c09012SAndroid Build Coastguard Worker bool enable_network_egress_metering = 2; 5354*d5c09012SAndroid Build Coastguard Worker 5355*d5c09012SAndroid Build Coastguard Worker // Configuration to enable resource consumption metering. 5356*d5c09012SAndroid Build Coastguard Worker ConsumptionMeteringConfig consumption_metering_config = 3; 5357*d5c09012SAndroid Build Coastguard Worker} 5358*d5c09012SAndroid Build Coastguard Worker 5359*d5c09012SAndroid Build Coastguard Worker// Configuration of Shielded Nodes feature. 5360*d5c09012SAndroid Build Coastguard Workermessage ShieldedNodes { 5361*d5c09012SAndroid Build Coastguard Worker // Whether Shielded Nodes features are enabled on all nodes in this cluster. 5362*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 5363*d5c09012SAndroid Build Coastguard Worker} 5364*d5c09012SAndroid Build Coastguard Worker 5365*d5c09012SAndroid Build Coastguard Worker// Configuration of gVNIC feature. 5366*d5c09012SAndroid Build Coastguard Workermessage VirtualNIC { 5367*d5c09012SAndroid Build Coastguard Worker // Whether gVNIC features are enabled in the node pool. 5368*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 5369*d5c09012SAndroid Build Coastguard Worker} 5370*d5c09012SAndroid Build Coastguard Worker 5371*d5c09012SAndroid Build Coastguard Worker// Configuration of Fast Socket feature. 5372*d5c09012SAndroid Build Coastguard Workermessage FastSocket { 5373*d5c09012SAndroid Build Coastguard Worker // Whether Fast Socket features are enabled in the node pool. 5374*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 5375*d5c09012SAndroid Build Coastguard Worker} 5376*d5c09012SAndroid Build Coastguard Worker 5377*d5c09012SAndroid Build Coastguard Worker// GetOpenIDConfigRequest gets the OIDC discovery document for the 5378*d5c09012SAndroid Build Coastguard Worker// cluster. See the OpenID Connect Discovery 1.0 specification for details. 5379*d5c09012SAndroid Build Coastguard Workermessage GetOpenIDConfigRequest { 5380*d5c09012SAndroid Build Coastguard Worker // The cluster (project, location, cluster name) to get the discovery document 5381*d5c09012SAndroid Build Coastguard Worker // for. Specified in the format `projects/*/locations/*/clusters/*`. 5382*d5c09012SAndroid Build Coastguard Worker string parent = 1; 5383*d5c09012SAndroid Build Coastguard Worker} 5384*d5c09012SAndroid Build Coastguard Worker 5385*d5c09012SAndroid Build Coastguard Worker// GetOpenIDConfigResponse is an OIDC discovery document for the cluster. 5386*d5c09012SAndroid Build Coastguard Worker// See the OpenID Connect Discovery 1.0 specification for details. 5387*d5c09012SAndroid Build Coastguard Workermessage GetOpenIDConfigResponse { 5388*d5c09012SAndroid Build Coastguard Worker // OIDC Issuer. 5389*d5c09012SAndroid Build Coastguard Worker string issuer = 1; 5390*d5c09012SAndroid Build Coastguard Worker 5391*d5c09012SAndroid Build Coastguard Worker // JSON Web Key uri. 5392*d5c09012SAndroid Build Coastguard Worker string jwks_uri = 2; 5393*d5c09012SAndroid Build Coastguard Worker 5394*d5c09012SAndroid Build Coastguard Worker // Supported response types. 5395*d5c09012SAndroid Build Coastguard Worker repeated string response_types_supported = 3; 5396*d5c09012SAndroid Build Coastguard Worker 5397*d5c09012SAndroid Build Coastguard Worker // Supported subject types. 5398*d5c09012SAndroid Build Coastguard Worker repeated string subject_types_supported = 4; 5399*d5c09012SAndroid Build Coastguard Worker 5400*d5c09012SAndroid Build Coastguard Worker // supported ID Token signing Algorithms. 5401*d5c09012SAndroid Build Coastguard Worker repeated string id_token_signing_alg_values_supported = 5; 5402*d5c09012SAndroid Build Coastguard Worker 5403*d5c09012SAndroid Build Coastguard Worker // Supported claims. 5404*d5c09012SAndroid Build Coastguard Worker repeated string claims_supported = 6; 5405*d5c09012SAndroid Build Coastguard Worker 5406*d5c09012SAndroid Build Coastguard Worker // Supported grant types. 5407*d5c09012SAndroid Build Coastguard Worker repeated string grant_types = 7; 5408*d5c09012SAndroid Build Coastguard Worker} 5409*d5c09012SAndroid Build Coastguard Worker 5410*d5c09012SAndroid Build Coastguard Worker// GetJSONWebKeysRequest gets the public component of the keys used by the 5411*d5c09012SAndroid Build Coastguard Worker// cluster to sign token requests. This will be the jwks_uri for the discover 5412*d5c09012SAndroid Build Coastguard Worker// document returned by getOpenIDConfig. See the OpenID Connect 5413*d5c09012SAndroid Build Coastguard Worker// Discovery 1.0 specification for details. 5414*d5c09012SAndroid Build Coastguard Workermessage GetJSONWebKeysRequest { 5415*d5c09012SAndroid Build Coastguard Worker // The cluster (project, location, cluster name) to get keys for. Specified in 5416*d5c09012SAndroid Build Coastguard Worker // the format `projects/*/locations/*/clusters/*`. 5417*d5c09012SAndroid Build Coastguard Worker string parent = 1; 5418*d5c09012SAndroid Build Coastguard Worker} 5419*d5c09012SAndroid Build Coastguard Worker 5420*d5c09012SAndroid Build Coastguard Worker// Jwk is a JSON Web Key as specified in RFC 7517 5421*d5c09012SAndroid Build Coastguard Workermessage Jwk { 5422*d5c09012SAndroid Build Coastguard Worker // Key Type. 5423*d5c09012SAndroid Build Coastguard Worker string kty = 1; 5424*d5c09012SAndroid Build Coastguard Worker 5425*d5c09012SAndroid Build Coastguard Worker // Algorithm. 5426*d5c09012SAndroid Build Coastguard Worker string alg = 2; 5427*d5c09012SAndroid Build Coastguard Worker 5428*d5c09012SAndroid Build Coastguard Worker // Permitted uses for the public keys. 5429*d5c09012SAndroid Build Coastguard Worker string use = 3; 5430*d5c09012SAndroid Build Coastguard Worker 5431*d5c09012SAndroid Build Coastguard Worker // Key ID. 5432*d5c09012SAndroid Build Coastguard Worker string kid = 4; 5433*d5c09012SAndroid Build Coastguard Worker 5434*d5c09012SAndroid Build Coastguard Worker // Used for RSA keys. 5435*d5c09012SAndroid Build Coastguard Worker string n = 5; 5436*d5c09012SAndroid Build Coastguard Worker 5437*d5c09012SAndroid Build Coastguard Worker // Used for RSA keys. 5438*d5c09012SAndroid Build Coastguard Worker string e = 6; 5439*d5c09012SAndroid Build Coastguard Worker 5440*d5c09012SAndroid Build Coastguard Worker // Used for ECDSA keys. 5441*d5c09012SAndroid Build Coastguard Worker string x = 7; 5442*d5c09012SAndroid Build Coastguard Worker 5443*d5c09012SAndroid Build Coastguard Worker // Used for ECDSA keys. 5444*d5c09012SAndroid Build Coastguard Worker string y = 8; 5445*d5c09012SAndroid Build Coastguard Worker 5446*d5c09012SAndroid Build Coastguard Worker // Used for ECDSA keys. 5447*d5c09012SAndroid Build Coastguard Worker string crv = 9; 5448*d5c09012SAndroid Build Coastguard Worker} 5449*d5c09012SAndroid Build Coastguard Worker 5450*d5c09012SAndroid Build Coastguard Worker// GetJSONWebKeysResponse is a valid JSON Web Key Set as specififed in rfc 7517 5451*d5c09012SAndroid Build Coastguard Workermessage GetJSONWebKeysResponse { 5452*d5c09012SAndroid Build Coastguard Worker // The public component of the keys used by the cluster to sign token 5453*d5c09012SAndroid Build Coastguard Worker // requests. 5454*d5c09012SAndroid Build Coastguard Worker repeated Jwk keys = 1; 5455*d5c09012SAndroid Build Coastguard Worker} 5456*d5c09012SAndroid Build Coastguard Worker 5457*d5c09012SAndroid Build Coastguard Worker// CheckAutopilotCompatibilityRequest requests getting the blockers for the 5458*d5c09012SAndroid Build Coastguard Worker// given operation in the cluster. 5459*d5c09012SAndroid Build Coastguard Workermessage CheckAutopilotCompatibilityRequest { 5460*d5c09012SAndroid Build Coastguard Worker // The name (project, location, cluster) of the cluster to retrieve. 5461*d5c09012SAndroid Build Coastguard Worker // Specified in the format `projects/*/locations/*/clusters/*`. 5462*d5c09012SAndroid Build Coastguard Worker string name = 1; 5463*d5c09012SAndroid Build Coastguard Worker} 5464*d5c09012SAndroid Build Coastguard Worker 5465*d5c09012SAndroid Build Coastguard Worker// AutopilotCompatibilityIssue contains information about a specific 5466*d5c09012SAndroid Build Coastguard Worker// compatibility issue with Autopilot mode. 5467*d5c09012SAndroid Build Coastguard Workermessage AutopilotCompatibilityIssue { 5468*d5c09012SAndroid Build Coastguard Worker // The type of the reported issue. 5469*d5c09012SAndroid Build Coastguard Worker enum IssueType { 5470*d5c09012SAndroid Build Coastguard Worker // Default value, should not be used. 5471*d5c09012SAndroid Build Coastguard Worker UNSPECIFIED = 0; 5472*d5c09012SAndroid Build Coastguard Worker 5473*d5c09012SAndroid Build Coastguard Worker // Indicates that the issue is a known incompatibility between the 5474*d5c09012SAndroid Build Coastguard Worker // cluster and Autopilot mode. 5475*d5c09012SAndroid Build Coastguard Worker INCOMPATIBILITY = 1; 5476*d5c09012SAndroid Build Coastguard Worker 5477*d5c09012SAndroid Build Coastguard Worker // Indicates the issue is an incompatibility if customers take no further 5478*d5c09012SAndroid Build Coastguard Worker // action to resolve. 5479*d5c09012SAndroid Build Coastguard Worker ADDITIONAL_CONFIG_REQUIRED = 2; 5480*d5c09012SAndroid Build Coastguard Worker 5481*d5c09012SAndroid Build Coastguard Worker // Indicates the issue is not an incompatibility, but depending on the 5482*d5c09012SAndroid Build Coastguard Worker // workloads business logic, there is a potential that they won't work on 5483*d5c09012SAndroid Build Coastguard Worker // Autopilot. 5484*d5c09012SAndroid Build Coastguard Worker PASSED_WITH_OPTIONAL_CONFIG = 3; 5485*d5c09012SAndroid Build Coastguard Worker } 5486*d5c09012SAndroid Build Coastguard Worker 5487*d5c09012SAndroid Build Coastguard Worker // The last time when this issue was observed. 5488*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp last_observation = 1; 5489*d5c09012SAndroid Build Coastguard Worker 5490*d5c09012SAndroid Build Coastguard Worker // The constraint type of the issue. 5491*d5c09012SAndroid Build Coastguard Worker string constraint_type = 2; 5492*d5c09012SAndroid Build Coastguard Worker 5493*d5c09012SAndroid Build Coastguard Worker // The incompatibility type of this issue. 5494*d5c09012SAndroid Build Coastguard Worker IssueType incompatibility_type = 3; 5495*d5c09012SAndroid Build Coastguard Worker 5496*d5c09012SAndroid Build Coastguard Worker // The name of the resources which are subject to this issue. 5497*d5c09012SAndroid Build Coastguard Worker repeated string subjects = 4; 5498*d5c09012SAndroid Build Coastguard Worker 5499*d5c09012SAndroid Build Coastguard Worker // A URL to a public documnetation, which addresses resolving this issue. 5500*d5c09012SAndroid Build Coastguard Worker string documentation_url = 5; 5501*d5c09012SAndroid Build Coastguard Worker 5502*d5c09012SAndroid Build Coastguard Worker // The description of the issue. 5503*d5c09012SAndroid Build Coastguard Worker string description = 6; 5504*d5c09012SAndroid Build Coastguard Worker} 5505*d5c09012SAndroid Build Coastguard Worker 5506*d5c09012SAndroid Build Coastguard Worker// CheckAutopilotCompatibilityResponse has a list of compatibility issues. 5507*d5c09012SAndroid Build Coastguard Workermessage CheckAutopilotCompatibilityResponse { 5508*d5c09012SAndroid Build Coastguard Worker // The list of issues for the given operation. 5509*d5c09012SAndroid Build Coastguard Worker repeated AutopilotCompatibilityIssue issues = 1; 5510*d5c09012SAndroid Build Coastguard Worker 5511*d5c09012SAndroid Build Coastguard Worker // The summary of the autopilot compatibility response. 5512*d5c09012SAndroid Build Coastguard Worker string summary = 2; 5513*d5c09012SAndroid Build Coastguard Worker} 5514*d5c09012SAndroid Build Coastguard Worker 5515*d5c09012SAndroid Build Coastguard Worker// ReleaseChannel indicates which release channel a cluster is 5516*d5c09012SAndroid Build Coastguard Worker// subscribed to. Release channels are arranged in order of risk. 5517*d5c09012SAndroid Build Coastguard Worker// 5518*d5c09012SAndroid Build Coastguard Worker// When a cluster is subscribed to a release channel, Google maintains 5519*d5c09012SAndroid Build Coastguard Worker// both the master version and the node version. Node auto-upgrade 5520*d5c09012SAndroid Build Coastguard Worker// defaults to true and cannot be disabled. 5521*d5c09012SAndroid Build Coastguard Workermessage ReleaseChannel { 5522*d5c09012SAndroid Build Coastguard Worker // Possible values for 'channel'. 5523*d5c09012SAndroid Build Coastguard Worker enum Channel { 5524*d5c09012SAndroid Build Coastguard Worker // No channel specified. 5525*d5c09012SAndroid Build Coastguard Worker UNSPECIFIED = 0; 5526*d5c09012SAndroid Build Coastguard Worker 5527*d5c09012SAndroid Build Coastguard Worker // RAPID channel is offered on an early access basis for customers who want 5528*d5c09012SAndroid Build Coastguard Worker // to test new releases. 5529*d5c09012SAndroid Build Coastguard Worker // 5530*d5c09012SAndroid Build Coastguard Worker // WARNING: Versions available in the RAPID Channel may be subject to 5531*d5c09012SAndroid Build Coastguard Worker // unresolved issues with no known workaround and are not subject to any 5532*d5c09012SAndroid Build Coastguard Worker // SLAs. 5533*d5c09012SAndroid Build Coastguard Worker RAPID = 1; 5534*d5c09012SAndroid Build Coastguard Worker 5535*d5c09012SAndroid Build Coastguard Worker // Clusters subscribed to REGULAR receive versions that are considered GA 5536*d5c09012SAndroid Build Coastguard Worker // quality. REGULAR is intended for production users who want to take 5537*d5c09012SAndroid Build Coastguard Worker // advantage of new features. 5538*d5c09012SAndroid Build Coastguard Worker REGULAR = 2; 5539*d5c09012SAndroid Build Coastguard Worker 5540*d5c09012SAndroid Build Coastguard Worker // Clusters subscribed to STABLE receive versions that are known to be 5541*d5c09012SAndroid Build Coastguard Worker // stable and reliable in production. 5542*d5c09012SAndroid Build Coastguard Worker STABLE = 3; 5543*d5c09012SAndroid Build Coastguard Worker } 5544*d5c09012SAndroid Build Coastguard Worker 5545*d5c09012SAndroid Build Coastguard Worker // channel specifies which release channel the cluster is subscribed to. 5546*d5c09012SAndroid Build Coastguard Worker Channel channel = 1; 5547*d5c09012SAndroid Build Coastguard Worker} 5548*d5c09012SAndroid Build Coastguard Worker 5549*d5c09012SAndroid Build Coastguard Worker// Configuration for fine-grained cost management feature. 5550*d5c09012SAndroid Build Coastguard Workermessage CostManagementConfig { 5551*d5c09012SAndroid Build Coastguard Worker // Whether the feature is enabled or not. 5552*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 5553*d5c09012SAndroid Build Coastguard Worker} 5554*d5c09012SAndroid Build Coastguard Worker 5555*d5c09012SAndroid Build Coastguard Worker// Configuration for Cloud TPU. 5556*d5c09012SAndroid Build Coastguard Workermessage TpuConfig { 5557*d5c09012SAndroid Build Coastguard Worker // Whether Cloud TPU integration is enabled or not. 5558*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 5559*d5c09012SAndroid Build Coastguard Worker 5560*d5c09012SAndroid Build Coastguard Worker // Whether to use service networking for Cloud TPU or not. 5561*d5c09012SAndroid Build Coastguard Worker bool use_service_networking = 2; 5562*d5c09012SAndroid Build Coastguard Worker 5563*d5c09012SAndroid Build Coastguard Worker // IPv4 CIDR block reserved for Cloud TPU in the VPC. 5564*d5c09012SAndroid Build Coastguard Worker string ipv4_cidr_block = 3; 5565*d5c09012SAndroid Build Coastguard Worker} 5566*d5c09012SAndroid Build Coastguard Worker 5567*d5c09012SAndroid Build Coastguard Worker// PrivateIPv6GoogleAccess controls whether and how the pods can communicate 5568*d5c09012SAndroid Build Coastguard Worker// with Google Services through gRPC over IPv6. 5569*d5c09012SAndroid Build Coastguard Workerenum PrivateIPv6GoogleAccess { 5570*d5c09012SAndroid Build Coastguard Worker // Default value. Same as DISABLED 5571*d5c09012SAndroid Build Coastguard Worker PRIVATE_IPV6_GOOGLE_ACCESS_UNSPECIFIED = 0; 5572*d5c09012SAndroid Build Coastguard Worker 5573*d5c09012SAndroid Build Coastguard Worker // No private access to or from Google Services 5574*d5c09012SAndroid Build Coastguard Worker PRIVATE_IPV6_GOOGLE_ACCESS_DISABLED = 1; 5575*d5c09012SAndroid Build Coastguard Worker 5576*d5c09012SAndroid Build Coastguard Worker // Enables private IPv6 access to Google Services from GKE 5577*d5c09012SAndroid Build Coastguard Worker PRIVATE_IPV6_GOOGLE_ACCESS_TO_GOOGLE = 2; 5578*d5c09012SAndroid Build Coastguard Worker 5579*d5c09012SAndroid Build Coastguard Worker // Enables private IPv6 access to and from Google Services 5580*d5c09012SAndroid Build Coastguard Worker PRIVATE_IPV6_GOOGLE_ACCESS_BIDIRECTIONAL = 3; 5581*d5c09012SAndroid Build Coastguard Worker} 5582*d5c09012SAndroid Build Coastguard Worker 5583*d5c09012SAndroid Build Coastguard Worker// Master is the configuration for components on master. 5584*d5c09012SAndroid Build Coastguard Workermessage Master {} 5585*d5c09012SAndroid Build Coastguard Worker 5586*d5c09012SAndroid Build Coastguard Worker// AutopilotConversionStatus represents conversion status. 5587*d5c09012SAndroid Build Coastguard Workermessage AutopilotConversionStatus { 5588*d5c09012SAndroid Build Coastguard Worker // The current state of the conversion. 5589*d5c09012SAndroid Build Coastguard Worker enum State { 5590*d5c09012SAndroid Build Coastguard Worker // STATE_UNSPECIFIED indicates the state is unspecified. 5591*d5c09012SAndroid Build Coastguard Worker STATE_UNSPECIFIED = 0; 5592*d5c09012SAndroid Build Coastguard Worker 5593*d5c09012SAndroid Build Coastguard Worker // DONE indicates the conversion has been completed. Old node pools will 5594*d5c09012SAndroid Build Coastguard Worker // continue being deleted in the background. 5595*d5c09012SAndroid Build Coastguard Worker DONE = 5; 5596*d5c09012SAndroid Build Coastguard Worker } 5597*d5c09012SAndroid Build Coastguard Worker 5598*d5c09012SAndroid Build Coastguard Worker // Output only. The current state of the conversion. 5599*d5c09012SAndroid Build Coastguard Worker State state = 2 [(google.api.field_behavior) = OUTPUT_ONLY]; 5600*d5c09012SAndroid Build Coastguard Worker} 5601*d5c09012SAndroid Build Coastguard Worker 5602*d5c09012SAndroid Build Coastguard Worker// Autopilot is the configuration for Autopilot settings on the cluster. 5603*d5c09012SAndroid Build Coastguard Workermessage Autopilot { 5604*d5c09012SAndroid Build Coastguard Worker // Enable Autopilot 5605*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 5606*d5c09012SAndroid Build Coastguard Worker 5607*d5c09012SAndroid Build Coastguard Worker // Workload policy configuration for Autopilot. 5608*d5c09012SAndroid Build Coastguard Worker WorkloadPolicyConfig workload_policy_config = 2; 5609*d5c09012SAndroid Build Coastguard Worker 5610*d5c09012SAndroid Build Coastguard Worker // Output only. ConversionStatus shows conversion status. 5611*d5c09012SAndroid Build Coastguard Worker AutopilotConversionStatus conversion_status = 3 5612*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 5613*d5c09012SAndroid Build Coastguard Worker} 5614*d5c09012SAndroid Build Coastguard Worker 5615*d5c09012SAndroid Build Coastguard Worker// WorkloadPolicyConfig is the configuration of workload policy for autopilot 5616*d5c09012SAndroid Build Coastguard Worker// clusters. 5617*d5c09012SAndroid Build Coastguard Workermessage WorkloadPolicyConfig { 5618*d5c09012SAndroid Build Coastguard Worker // If true, workloads can use NET_ADMIN capability. 5619*d5c09012SAndroid Build Coastguard Worker optional bool allow_net_admin = 1; 5620*d5c09012SAndroid Build Coastguard Worker} 5621*d5c09012SAndroid Build Coastguard Worker 5622*d5c09012SAndroid Build Coastguard Worker// NotificationConfig is the configuration of notifications. 5623*d5c09012SAndroid Build Coastguard Workermessage NotificationConfig { 5624*d5c09012SAndroid Build Coastguard Worker // Types of notifications currently supported. Can be used to filter what 5625*d5c09012SAndroid Build Coastguard Worker // notifications are sent. 5626*d5c09012SAndroid Build Coastguard Worker enum EventType { 5627*d5c09012SAndroid Build Coastguard Worker // Not set, will be ignored. 5628*d5c09012SAndroid Build Coastguard Worker EVENT_TYPE_UNSPECIFIED = 0; 5629*d5c09012SAndroid Build Coastguard Worker 5630*d5c09012SAndroid Build Coastguard Worker // Corresponds with UpgradeAvailableEvent. 5631*d5c09012SAndroid Build Coastguard Worker UPGRADE_AVAILABLE_EVENT = 1; 5632*d5c09012SAndroid Build Coastguard Worker 5633*d5c09012SAndroid Build Coastguard Worker // Corresponds with UpgradeEvent. 5634*d5c09012SAndroid Build Coastguard Worker UPGRADE_EVENT = 2; 5635*d5c09012SAndroid Build Coastguard Worker 5636*d5c09012SAndroid Build Coastguard Worker // Corresponds with SecurityBulletinEvent. 5637*d5c09012SAndroid Build Coastguard Worker SECURITY_BULLETIN_EVENT = 3; 5638*d5c09012SAndroid Build Coastguard Worker } 5639*d5c09012SAndroid Build Coastguard Worker 5640*d5c09012SAndroid Build Coastguard Worker // Pub/Sub specific notification config. 5641*d5c09012SAndroid Build Coastguard Worker message PubSub { 5642*d5c09012SAndroid Build Coastguard Worker // Enable notifications for Pub/Sub. 5643*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 5644*d5c09012SAndroid Build Coastguard Worker 5645*d5c09012SAndroid Build Coastguard Worker // The desired Pub/Sub topic to which notifications will be 5646*d5c09012SAndroid Build Coastguard Worker // sent by GKE. Format is `projects/{project}/topics/{topic}`. 5647*d5c09012SAndroid Build Coastguard Worker string topic = 2 [ 5648*d5c09012SAndroid Build Coastguard Worker (google.api.resource_reference) = { type: "pubsub.googleapis.com/Topic" } 5649*d5c09012SAndroid Build Coastguard Worker ]; 5650*d5c09012SAndroid Build Coastguard Worker 5651*d5c09012SAndroid Build Coastguard Worker // Allows filtering to one or more specific event types. If no filter is 5652*d5c09012SAndroid Build Coastguard Worker // specified, or if a filter is specified with no event types, all event 5653*d5c09012SAndroid Build Coastguard Worker // types will be sent 5654*d5c09012SAndroid Build Coastguard Worker Filter filter = 3; 5655*d5c09012SAndroid Build Coastguard Worker } 5656*d5c09012SAndroid Build Coastguard Worker 5657*d5c09012SAndroid Build Coastguard Worker // Allows filtering to one or more specific event types. If event types are 5658*d5c09012SAndroid Build Coastguard Worker // present, those and only those event types will be transmitted to the 5659*d5c09012SAndroid Build Coastguard Worker // cluster. Other types will be skipped. If no filter is specified, or no 5660*d5c09012SAndroid Build Coastguard Worker // event types are present, all event types will be sent 5661*d5c09012SAndroid Build Coastguard Worker message Filter { 5662*d5c09012SAndroid Build Coastguard Worker // Event types to allowlist. 5663*d5c09012SAndroid Build Coastguard Worker repeated EventType event_type = 1; 5664*d5c09012SAndroid Build Coastguard Worker } 5665*d5c09012SAndroid Build Coastguard Worker 5666*d5c09012SAndroid Build Coastguard Worker // Notification config for Pub/Sub. 5667*d5c09012SAndroid Build Coastguard Worker PubSub pubsub = 1; 5668*d5c09012SAndroid Build Coastguard Worker} 5669*d5c09012SAndroid Build Coastguard Worker 5670*d5c09012SAndroid Build Coastguard Worker// ConfidentialNodes is configuration for the confidential nodes feature, which 5671*d5c09012SAndroid Build Coastguard Worker// makes nodes run on confidential VMs. 5672*d5c09012SAndroid Build Coastguard Workermessage ConfidentialNodes { 5673*d5c09012SAndroid Build Coastguard Worker // Whether Confidential Nodes feature is enabled. 5674*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 5675*d5c09012SAndroid Build Coastguard Worker} 5676*d5c09012SAndroid Build Coastguard Worker 5677*d5c09012SAndroid Build Coastguard Worker// UpgradeResourceType is the resource type that is upgrading. It is used 5678*d5c09012SAndroid Build Coastguard Worker// in upgrade notifications. 5679*d5c09012SAndroid Build Coastguard Workerenum UpgradeResourceType { 5680*d5c09012SAndroid Build Coastguard Worker // Default value. This shouldn't be used. 5681*d5c09012SAndroid Build Coastguard Worker UPGRADE_RESOURCE_TYPE_UNSPECIFIED = 0; 5682*d5c09012SAndroid Build Coastguard Worker 5683*d5c09012SAndroid Build Coastguard Worker // Master / control plane 5684*d5c09012SAndroid Build Coastguard Worker MASTER = 1; 5685*d5c09012SAndroid Build Coastguard Worker 5686*d5c09012SAndroid Build Coastguard Worker // Node pool 5687*d5c09012SAndroid Build Coastguard Worker NODE_POOL = 2; 5688*d5c09012SAndroid Build Coastguard Worker} 5689*d5c09012SAndroid Build Coastguard Worker 5690*d5c09012SAndroid Build Coastguard Worker// UpgradeEvent is a notification sent to customers by the cluster server when 5691*d5c09012SAndroid Build Coastguard Worker// a resource is upgrading. 5692*d5c09012SAndroid Build Coastguard Workermessage UpgradeEvent { 5693*d5c09012SAndroid Build Coastguard Worker // The resource type that is upgrading. 5694*d5c09012SAndroid Build Coastguard Worker UpgradeResourceType resource_type = 1; 5695*d5c09012SAndroid Build Coastguard Worker 5696*d5c09012SAndroid Build Coastguard Worker // The operation associated with this upgrade. 5697*d5c09012SAndroid Build Coastguard Worker string operation = 2; 5698*d5c09012SAndroid Build Coastguard Worker 5699*d5c09012SAndroid Build Coastguard Worker // The time when the operation was started. 5700*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp operation_start_time = 3; 5701*d5c09012SAndroid Build Coastguard Worker 5702*d5c09012SAndroid Build Coastguard Worker // The current version before the upgrade. 5703*d5c09012SAndroid Build Coastguard Worker string current_version = 4; 5704*d5c09012SAndroid Build Coastguard Worker 5705*d5c09012SAndroid Build Coastguard Worker // The target version for the upgrade. 5706*d5c09012SAndroid Build Coastguard Worker string target_version = 5; 5707*d5c09012SAndroid Build Coastguard Worker 5708*d5c09012SAndroid Build Coastguard Worker // Optional relative path to the resource. For example in node pool upgrades, 5709*d5c09012SAndroid Build Coastguard Worker // the relative path of the node pool. 5710*d5c09012SAndroid Build Coastguard Worker string resource = 6; 5711*d5c09012SAndroid Build Coastguard Worker} 5712*d5c09012SAndroid Build Coastguard Worker 5713*d5c09012SAndroid Build Coastguard Worker// UpgradeAvailableEvent is a notification sent to customers when a new 5714*d5c09012SAndroid Build Coastguard Worker// available version is released. 5715*d5c09012SAndroid Build Coastguard Workermessage UpgradeAvailableEvent { 5716*d5c09012SAndroid Build Coastguard Worker // The release version available for upgrade. 5717*d5c09012SAndroid Build Coastguard Worker string version = 1; 5718*d5c09012SAndroid Build Coastguard Worker 5719*d5c09012SAndroid Build Coastguard Worker // The resource type of the release version. 5720*d5c09012SAndroid Build Coastguard Worker UpgradeResourceType resource_type = 2; 5721*d5c09012SAndroid Build Coastguard Worker 5722*d5c09012SAndroid Build Coastguard Worker // The release channel of the version. If empty, it means a non-channel 5723*d5c09012SAndroid Build Coastguard Worker // release. 5724*d5c09012SAndroid Build Coastguard Worker ReleaseChannel release_channel = 3; 5725*d5c09012SAndroid Build Coastguard Worker 5726*d5c09012SAndroid Build Coastguard Worker // Optional relative path to the resource. For example, the relative path of 5727*d5c09012SAndroid Build Coastguard Worker // the node pool. 5728*d5c09012SAndroid Build Coastguard Worker string resource = 4; 5729*d5c09012SAndroid Build Coastguard Worker 5730*d5c09012SAndroid Build Coastguard Worker // Windows node versions info. 5731*d5c09012SAndroid Build Coastguard Worker WindowsVersions windows_versions = 5; 5732*d5c09012SAndroid Build Coastguard Worker} 5733*d5c09012SAndroid Build Coastguard Worker 5734*d5c09012SAndroid Build Coastguard Worker// SecurityBulletinEvent is a notification sent to customers when a security 5735*d5c09012SAndroid Build Coastguard Worker// bulletin has been posted that they are vulnerable to. 5736*d5c09012SAndroid Build Coastguard Workermessage SecurityBulletinEvent { 5737*d5c09012SAndroid Build Coastguard Worker // The resource type (node/control plane) that has the vulnerability. Multiple 5738*d5c09012SAndroid Build Coastguard Worker // notifications (1 notification per resource type) will be sent for a 5739*d5c09012SAndroid Build Coastguard Worker // vulnerability that affects > 1 resource type. 5740*d5c09012SAndroid Build Coastguard Worker string resource_type_affected = 1; 5741*d5c09012SAndroid Build Coastguard Worker 5742*d5c09012SAndroid Build Coastguard Worker // The ID of the bulletin corresponding to the vulnerability. 5743*d5c09012SAndroid Build Coastguard Worker string bulletin_id = 2; 5744*d5c09012SAndroid Build Coastguard Worker 5745*d5c09012SAndroid Build Coastguard Worker // The CVEs associated with this bulletin. 5746*d5c09012SAndroid Build Coastguard Worker repeated string cve_ids = 3; 5747*d5c09012SAndroid Build Coastguard Worker 5748*d5c09012SAndroid Build Coastguard Worker // The severity of this bulletin as it relates to GKE. 5749*d5c09012SAndroid Build Coastguard Worker string severity = 4; 5750*d5c09012SAndroid Build Coastguard Worker 5751*d5c09012SAndroid Build Coastguard Worker // The URI link to the bulletin on the website for more information. 5752*d5c09012SAndroid Build Coastguard Worker string bulletin_uri = 5; 5753*d5c09012SAndroid Build Coastguard Worker 5754*d5c09012SAndroid Build Coastguard Worker // A brief description of the bulletin. See the bulletin pointed to by the 5755*d5c09012SAndroid Build Coastguard Worker // bulletin_uri field for an expanded description. 5756*d5c09012SAndroid Build Coastguard Worker string brief_description = 6; 5757*d5c09012SAndroid Build Coastguard Worker 5758*d5c09012SAndroid Build Coastguard Worker // The GKE minor versions affected by this vulnerability. 5759*d5c09012SAndroid Build Coastguard Worker repeated string affected_supported_minors = 7; 5760*d5c09012SAndroid Build Coastguard Worker 5761*d5c09012SAndroid Build Coastguard Worker // The GKE versions where this vulnerability is patched. 5762*d5c09012SAndroid Build Coastguard Worker repeated string patched_versions = 8; 5763*d5c09012SAndroid Build Coastguard Worker 5764*d5c09012SAndroid Build Coastguard Worker // This represents a version selected from the patched_versions field that 5765*d5c09012SAndroid Build Coastguard Worker // the cluster receiving this notification should most likely want to upgrade 5766*d5c09012SAndroid Build Coastguard Worker // to based on its current version. Note that if this notification is being 5767*d5c09012SAndroid Build Coastguard Worker // received by a given cluster, it means that this version is currently 5768*d5c09012SAndroid Build Coastguard Worker // available as an upgrade target in that cluster's location. 5769*d5c09012SAndroid Build Coastguard Worker string suggested_upgrade_target = 9; 5770*d5c09012SAndroid Build Coastguard Worker 5771*d5c09012SAndroid Build Coastguard Worker // If this field is specified, it means there are manual steps that the user 5772*d5c09012SAndroid Build Coastguard Worker // must take to make their clusters safe. 5773*d5c09012SAndroid Build Coastguard Worker bool manual_steps_required = 10; 5774*d5c09012SAndroid Build Coastguard Worker} 5775*d5c09012SAndroid Build Coastguard Worker 5776*d5c09012SAndroid Build Coastguard Worker// IdentityServiceConfig is configuration for Identity Service which allows 5777*d5c09012SAndroid Build Coastguard Worker// customers to use external identity providers with the K8S API 5778*d5c09012SAndroid Build Coastguard Workermessage IdentityServiceConfig { 5779*d5c09012SAndroid Build Coastguard Worker // Whether to enable the Identity Service component 5780*d5c09012SAndroid Build Coastguard Worker bool enabled = 1; 5781*d5c09012SAndroid Build Coastguard Worker} 5782*d5c09012SAndroid Build Coastguard Worker 5783*d5c09012SAndroid Build Coastguard Worker// Strategy used for node pool update. 5784*d5c09012SAndroid Build Coastguard Workerenum NodePoolUpdateStrategy { 5785*d5c09012SAndroid Build Coastguard Worker // Default value if unset. GKE internally defaults the update strategy to 5786*d5c09012SAndroid Build Coastguard Worker // SURGE for unspecified strategies. 5787*d5c09012SAndroid Build Coastguard Worker NODE_POOL_UPDATE_STRATEGY_UNSPECIFIED = 0; 5788*d5c09012SAndroid Build Coastguard Worker 5789*d5c09012SAndroid Build Coastguard Worker // blue-green upgrade. 5790*d5c09012SAndroid Build Coastguard Worker BLUE_GREEN = 2; 5791*d5c09012SAndroid Build Coastguard Worker 5792*d5c09012SAndroid Build Coastguard Worker // SURGE is the traditional way of upgrading a node pool. 5793*d5c09012SAndroid Build Coastguard Worker // max_surge and max_unavailable determines the level of upgrade parallelism. 5794*d5c09012SAndroid Build Coastguard Worker SURGE = 3; 5795*d5c09012SAndroid Build Coastguard Worker} 5796*d5c09012SAndroid Build Coastguard Worker 5797*d5c09012SAndroid Build Coastguard Worker// LoggingConfig is cluster logging configuration. 5798*d5c09012SAndroid Build Coastguard Workermessage LoggingConfig { 5799*d5c09012SAndroid Build Coastguard Worker // Logging components configuration 5800*d5c09012SAndroid Build Coastguard Worker LoggingComponentConfig component_config = 1; 5801*d5c09012SAndroid Build Coastguard Worker} 5802*d5c09012SAndroid Build Coastguard Worker 5803*d5c09012SAndroid Build Coastguard Worker// LoggingComponentConfig is cluster logging component configuration. 5804*d5c09012SAndroid Build Coastguard Workermessage LoggingComponentConfig { 5805*d5c09012SAndroid Build Coastguard Worker // GKE components exposing logs 5806*d5c09012SAndroid Build Coastguard Worker enum Component { 5807*d5c09012SAndroid Build Coastguard Worker // Default value. This shouldn't be used. 5808*d5c09012SAndroid Build Coastguard Worker COMPONENT_UNSPECIFIED = 0; 5809*d5c09012SAndroid Build Coastguard Worker 5810*d5c09012SAndroid Build Coastguard Worker // system components 5811*d5c09012SAndroid Build Coastguard Worker SYSTEM_COMPONENTS = 1; 5812*d5c09012SAndroid Build Coastguard Worker 5813*d5c09012SAndroid Build Coastguard Worker // workloads 5814*d5c09012SAndroid Build Coastguard Worker WORKLOADS = 2; 5815*d5c09012SAndroid Build Coastguard Worker 5816*d5c09012SAndroid Build Coastguard Worker // kube-apiserver 5817*d5c09012SAndroid Build Coastguard Worker APISERVER = 3; 5818*d5c09012SAndroid Build Coastguard Worker 5819*d5c09012SAndroid Build Coastguard Worker // kube-scheduler 5820*d5c09012SAndroid Build Coastguard Worker SCHEDULER = 4; 5821*d5c09012SAndroid Build Coastguard Worker 5822*d5c09012SAndroid Build Coastguard Worker // kube-controller-manager 5823*d5c09012SAndroid Build Coastguard Worker CONTROLLER_MANAGER = 5; 5824*d5c09012SAndroid Build Coastguard Worker } 5825*d5c09012SAndroid Build Coastguard Worker 5826*d5c09012SAndroid Build Coastguard Worker // Select components to collect logs. An empty set would disable all logging. 5827*d5c09012SAndroid Build Coastguard Worker repeated Component enable_components = 1; 5828*d5c09012SAndroid Build Coastguard Worker} 5829*d5c09012SAndroid Build Coastguard Worker 5830*d5c09012SAndroid Build Coastguard Worker// MonitoringConfig is cluster monitoring configuration. 5831*d5c09012SAndroid Build Coastguard Workermessage MonitoringConfig { 5832*d5c09012SAndroid Build Coastguard Worker // Monitoring components configuration 5833*d5c09012SAndroid Build Coastguard Worker MonitoringComponentConfig component_config = 1; 5834*d5c09012SAndroid Build Coastguard Worker 5835*d5c09012SAndroid Build Coastguard Worker // Enable Google Cloud Managed Service for Prometheus 5836*d5c09012SAndroid Build Coastguard Worker // in the cluster. 5837*d5c09012SAndroid Build Coastguard Worker ManagedPrometheusConfig managed_prometheus_config = 2; 5838*d5c09012SAndroid Build Coastguard Worker 5839*d5c09012SAndroid Build Coastguard Worker // Configuration of Advanced Datapath Observability features. 5840*d5c09012SAndroid Build Coastguard Worker AdvancedDatapathObservabilityConfig advanced_datapath_observability_config = 5841*d5c09012SAndroid Build Coastguard Worker 3; 5842*d5c09012SAndroid Build Coastguard Worker} 5843*d5c09012SAndroid Build Coastguard Worker 5844*d5c09012SAndroid Build Coastguard Worker// AdvancedDatapathObservabilityConfig specifies configuration of observability 5845*d5c09012SAndroid Build Coastguard Worker// features of advanced datapath. 5846*d5c09012SAndroid Build Coastguard Workermessage AdvancedDatapathObservabilityConfig { 5847*d5c09012SAndroid Build Coastguard Worker // Supported Relay modes 5848*d5c09012SAndroid Build Coastguard Worker enum RelayMode { 5849*d5c09012SAndroid Build Coastguard Worker // Default value. This shouldn't be used. 5850*d5c09012SAndroid Build Coastguard Worker RELAY_MODE_UNSPECIFIED = 0; 5851*d5c09012SAndroid Build Coastguard Worker 5852*d5c09012SAndroid Build Coastguard Worker // disabled 5853*d5c09012SAndroid Build Coastguard Worker DISABLED = 1; 5854*d5c09012SAndroid Build Coastguard Worker 5855*d5c09012SAndroid Build Coastguard Worker // exposed via internal load balancer 5856*d5c09012SAndroid Build Coastguard Worker INTERNAL_VPC_LB = 3; 5857*d5c09012SAndroid Build Coastguard Worker 5858*d5c09012SAndroid Build Coastguard Worker // exposed via external load balancer 5859*d5c09012SAndroid Build Coastguard Worker EXTERNAL_LB = 4; 5860*d5c09012SAndroid Build Coastguard Worker } 5861*d5c09012SAndroid Build Coastguard Worker 5862*d5c09012SAndroid Build Coastguard Worker // Expose flow metrics on nodes 5863*d5c09012SAndroid Build Coastguard Worker bool enable_metrics = 1; 5864*d5c09012SAndroid Build Coastguard Worker 5865*d5c09012SAndroid Build Coastguard Worker // Method used to make Relay available 5866*d5c09012SAndroid Build Coastguard Worker RelayMode relay_mode = 2; 5867*d5c09012SAndroid Build Coastguard Worker 5868*d5c09012SAndroid Build Coastguard Worker // Enable Relay component 5869*d5c09012SAndroid Build Coastguard Worker optional bool enable_relay = 3; 5870*d5c09012SAndroid Build Coastguard Worker} 5871*d5c09012SAndroid Build Coastguard Worker 5872*d5c09012SAndroid Build Coastguard Worker// NodePoolLoggingConfig specifies logging configuration for nodepools. 5873*d5c09012SAndroid Build Coastguard Workermessage NodePoolLoggingConfig { 5874*d5c09012SAndroid Build Coastguard Worker // Logging variant configuration. 5875*d5c09012SAndroid Build Coastguard Worker LoggingVariantConfig variant_config = 1; 5876*d5c09012SAndroid Build Coastguard Worker} 5877*d5c09012SAndroid Build Coastguard Worker 5878*d5c09012SAndroid Build Coastguard Worker// LoggingVariantConfig specifies the behaviour of the logging component. 5879*d5c09012SAndroid Build Coastguard Workermessage LoggingVariantConfig { 5880*d5c09012SAndroid Build Coastguard Worker // Logging component variants. 5881*d5c09012SAndroid Build Coastguard Worker enum Variant { 5882*d5c09012SAndroid Build Coastguard Worker // Default value. This shouldn't be used. 5883*d5c09012SAndroid Build Coastguard Worker VARIANT_UNSPECIFIED = 0; 5884*d5c09012SAndroid Build Coastguard Worker 5885*d5c09012SAndroid Build Coastguard Worker // default logging variant. 5886*d5c09012SAndroid Build Coastguard Worker DEFAULT = 1; 5887*d5c09012SAndroid Build Coastguard Worker 5888*d5c09012SAndroid Build Coastguard Worker // maximum logging throughput variant. 5889*d5c09012SAndroid Build Coastguard Worker MAX_THROUGHPUT = 2; 5890*d5c09012SAndroid Build Coastguard Worker } 5891*d5c09012SAndroid Build Coastguard Worker 5892*d5c09012SAndroid Build Coastguard Worker // Logging variant deployed on nodes. 5893*d5c09012SAndroid Build Coastguard Worker Variant variant = 1; 5894*d5c09012SAndroid Build Coastguard Worker} 5895*d5c09012SAndroid Build Coastguard Worker 5896*d5c09012SAndroid Build Coastguard Worker// MonitoringComponentConfig is cluster monitoring component configuration. 5897*d5c09012SAndroid Build Coastguard Workermessage MonitoringComponentConfig { 5898*d5c09012SAndroid Build Coastguard Worker // GKE components exposing metrics 5899*d5c09012SAndroid Build Coastguard Worker enum Component { 5900*d5c09012SAndroid Build Coastguard Worker // Default value. This shouldn't be used. 5901*d5c09012SAndroid Build Coastguard Worker COMPONENT_UNSPECIFIED = 0; 5902*d5c09012SAndroid Build Coastguard Worker 5903*d5c09012SAndroid Build Coastguard Worker // system components 5904*d5c09012SAndroid Build Coastguard Worker SYSTEM_COMPONENTS = 1; 5905*d5c09012SAndroid Build Coastguard Worker 5906*d5c09012SAndroid Build Coastguard Worker // Deprecated: Use Google Cloud Managed Service for Prometheus. 5907*d5c09012SAndroid Build Coastguard Worker WORKLOADS = 2 [deprecated = true]; 5908*d5c09012SAndroid Build Coastguard Worker 5909*d5c09012SAndroid Build Coastguard Worker // kube-apiserver 5910*d5c09012SAndroid Build Coastguard Worker APISERVER = 3; 5911*d5c09012SAndroid Build Coastguard Worker 5912*d5c09012SAndroid Build Coastguard Worker // kube-scheduler 5913*d5c09012SAndroid Build Coastguard Worker SCHEDULER = 4; 5914*d5c09012SAndroid Build Coastguard Worker 5915*d5c09012SAndroid Build Coastguard Worker // kube-controller-manager 5916*d5c09012SAndroid Build Coastguard Worker CONTROLLER_MANAGER = 5; 5917*d5c09012SAndroid Build Coastguard Worker 5918*d5c09012SAndroid Build Coastguard Worker // Storage 5919*d5c09012SAndroid Build Coastguard Worker STORAGE = 7; 5920*d5c09012SAndroid Build Coastguard Worker 5921*d5c09012SAndroid Build Coastguard Worker // Horizontal Pod Autoscaling 5922*d5c09012SAndroid Build Coastguard Worker HPA = 8; 5923*d5c09012SAndroid Build Coastguard Worker 5924*d5c09012SAndroid Build Coastguard Worker // Pod 5925*d5c09012SAndroid Build Coastguard Worker POD = 9; 5926*d5c09012SAndroid Build Coastguard Worker 5927*d5c09012SAndroid Build Coastguard Worker // DaemonSet 5928*d5c09012SAndroid Build Coastguard Worker DAEMONSET = 10; 5929*d5c09012SAndroid Build Coastguard Worker 5930*d5c09012SAndroid Build Coastguard Worker // Deployment 5931*d5c09012SAndroid Build Coastguard Worker DEPLOYMENT = 11; 5932*d5c09012SAndroid Build Coastguard Worker 5933*d5c09012SAndroid Build Coastguard Worker // Statefulset 5934*d5c09012SAndroid Build Coastguard Worker STATEFULSET = 12; 5935*d5c09012SAndroid Build Coastguard Worker } 5936*d5c09012SAndroid Build Coastguard Worker 5937*d5c09012SAndroid Build Coastguard Worker // Select components to collect metrics. An empty set would disable all 5938*d5c09012SAndroid Build Coastguard Worker // monitoring. 5939*d5c09012SAndroid Build Coastguard Worker repeated Component enable_components = 1; 5940*d5c09012SAndroid Build Coastguard Worker} 5941*d5c09012SAndroid Build Coastguard Worker 5942*d5c09012SAndroid Build Coastguard Worker// The datapath provider selects the implementation of the Kubernetes networking 5943*d5c09012SAndroid Build Coastguard Worker// model for service resolution and network policy enforcement. 5944*d5c09012SAndroid Build Coastguard Workerenum DatapathProvider { 5945*d5c09012SAndroid Build Coastguard Worker // Default value. 5946*d5c09012SAndroid Build Coastguard Worker DATAPATH_PROVIDER_UNSPECIFIED = 0; 5947*d5c09012SAndroid Build Coastguard Worker 5948*d5c09012SAndroid Build Coastguard Worker // Use the IPTables implementation based on kube-proxy. 5949*d5c09012SAndroid Build Coastguard Worker LEGACY_DATAPATH = 1; 5950*d5c09012SAndroid Build Coastguard Worker 5951*d5c09012SAndroid Build Coastguard Worker // Use the eBPF based GKE Dataplane V2 with additional features. See the [GKE 5952*d5c09012SAndroid Build Coastguard Worker // Dataplane V2 5953*d5c09012SAndroid Build Coastguard Worker // documentation](https://cloud.google.com/kubernetes-engine/docs/how-to/dataplane-v2) 5954*d5c09012SAndroid Build Coastguard Worker // for more. 5955*d5c09012SAndroid Build Coastguard Worker ADVANCED_DATAPATH = 2; 5956*d5c09012SAndroid Build Coastguard Worker} 5957*d5c09012SAndroid Build Coastguard Worker 5958*d5c09012SAndroid Build Coastguard Worker// Fleet is the fleet configuration for the cluster. 5959*d5c09012SAndroid Build Coastguard Workermessage Fleet { 5960*d5c09012SAndroid Build Coastguard Worker // The Fleet host project(project ID or project number) where this cluster 5961*d5c09012SAndroid Build Coastguard Worker // will be registered to. This field cannot be changed after the cluster has 5962*d5c09012SAndroid Build Coastguard Worker // been registered. 5963*d5c09012SAndroid Build Coastguard Worker string project = 1; 5964*d5c09012SAndroid Build Coastguard Worker 5965*d5c09012SAndroid Build Coastguard Worker // [Output only] The full resource name of the registered fleet membership of 5966*d5c09012SAndroid Build Coastguard Worker // the cluster, in the format 5967*d5c09012SAndroid Build Coastguard Worker // `//gkehub.googleapis.com/projects/*/locations/*/memberships/*`. 5968*d5c09012SAndroid Build Coastguard Worker string membership = 2; 5969*d5c09012SAndroid Build Coastguard Worker 5970*d5c09012SAndroid Build Coastguard Worker // [Output only] Whether the cluster has been registered through the fleet 5971*d5c09012SAndroid Build Coastguard Worker // API. 5972*d5c09012SAndroid Build Coastguard Worker bool pre_registered = 3; 5973*d5c09012SAndroid Build Coastguard Worker} 5974*d5c09012SAndroid Build Coastguard Worker 5975*d5c09012SAndroid Build Coastguard Worker// Possible values for IP stack type 5976*d5c09012SAndroid Build Coastguard Workerenum StackType { 5977*d5c09012SAndroid Build Coastguard Worker // By default, the clusters will be IPV4 only 5978*d5c09012SAndroid Build Coastguard Worker STACK_TYPE_UNSPECIFIED = 0; 5979*d5c09012SAndroid Build Coastguard Worker 5980*d5c09012SAndroid Build Coastguard Worker // The value used if the cluster is a IPV4 only 5981*d5c09012SAndroid Build Coastguard Worker IPV4 = 1; 5982*d5c09012SAndroid Build Coastguard Worker 5983*d5c09012SAndroid Build Coastguard Worker // The value used if the cluster is a dual stack cluster 5984*d5c09012SAndroid Build Coastguard Worker IPV4_IPV6 = 2; 5985*d5c09012SAndroid Build Coastguard Worker} 5986*d5c09012SAndroid Build Coastguard Worker 5987*d5c09012SAndroid Build Coastguard Worker// A map of resource manager tag keys and values to be attached to the nodes 5988*d5c09012SAndroid Build Coastguard Worker// for managing Compute Engine firewalls using Network Firewall Policies. 5989*d5c09012SAndroid Build Coastguard Worker// Tags must be according to specifications in 5990*d5c09012SAndroid Build Coastguard Worker// https://cloud.google.com/vpc/docs/tags-firewalls-overview#specifications. 5991*d5c09012SAndroid Build Coastguard Worker// A maximum of 5 tag key-value pairs can be specified. 5992*d5c09012SAndroid Build Coastguard Worker// Existing tags will be replaced with new values. 5993*d5c09012SAndroid Build Coastguard Workermessage ResourceManagerTags { 5994*d5c09012SAndroid Build Coastguard Worker // Tags must be in one of the following formats ([KEY]=[VALUE]) 5995*d5c09012SAndroid Build Coastguard Worker // 1. `tagKeys/{tag_key_id}=tagValues/{tag_value_id}` 5996*d5c09012SAndroid Build Coastguard Worker // 2. `{org_id}/{tag_key_name}={tag_value_name}` 5997*d5c09012SAndroid Build Coastguard Worker // 3. `{project_id}/{tag_key_name}={tag_value_name}` 5998*d5c09012SAndroid Build Coastguard Worker map<string, string> tags = 1; 5999*d5c09012SAndroid Build Coastguard Worker} 6000*d5c09012SAndroid Build Coastguard Worker 6001*d5c09012SAndroid Build Coastguard Worker// EnterpriseConfig is the cluster enterprise configuration. 6002*d5c09012SAndroid Build Coastguard Workermessage EnterpriseConfig { 6003*d5c09012SAndroid Build Coastguard Worker // Premium tiers for GKE Cluster. 6004*d5c09012SAndroid Build Coastguard Worker enum ClusterTier { 6005*d5c09012SAndroid Build Coastguard Worker // CLUSTER_TIER_UNSPECIFIED is when cluster_tier is not set. 6006*d5c09012SAndroid Build Coastguard Worker CLUSTER_TIER_UNSPECIFIED = 0; 6007*d5c09012SAndroid Build Coastguard Worker 6008*d5c09012SAndroid Build Coastguard Worker // STANDARD indicates a standard GKE cluster. 6009*d5c09012SAndroid Build Coastguard Worker STANDARD = 1; 6010*d5c09012SAndroid Build Coastguard Worker 6011*d5c09012SAndroid Build Coastguard Worker // ENTERPRISE indicates a GKE Enterprise cluster. 6012*d5c09012SAndroid Build Coastguard Worker ENTERPRISE = 2; 6013*d5c09012SAndroid Build Coastguard Worker } 6014*d5c09012SAndroid Build Coastguard Worker 6015*d5c09012SAndroid Build Coastguard Worker // Output only. [Output only] cluster_tier specifies the premium tier of the 6016*d5c09012SAndroid Build Coastguard Worker // cluster. 6017*d5c09012SAndroid Build Coastguard Worker ClusterTier cluster_tier = 1 [(google.api.field_behavior) = OUTPUT_ONLY]; 6018*d5c09012SAndroid Build Coastguard Worker} 6019*d5c09012SAndroid Build Coastguard Worker 6020*d5c09012SAndroid Build Coastguard Worker// SecretManagerConfig is config for secret manager enablement. 6021*d5c09012SAndroid Build Coastguard Workermessage SecretManagerConfig { 6022*d5c09012SAndroid Build Coastguard Worker // Whether the cluster is configured to use secret manager CSI component. 6023*d5c09012SAndroid Build Coastguard Worker optional bool enabled = 1; 6024*d5c09012SAndroid Build Coastguard Worker} 6025*d5c09012SAndroid Build Coastguard Worker 6026*d5c09012SAndroid Build Coastguard Worker// SecondaryBootDisk represents a persistent disk attached to a node 6027*d5c09012SAndroid Build Coastguard Worker// with special configurations based on its mode. 6028*d5c09012SAndroid Build Coastguard Workermessage SecondaryBootDisk { 6029*d5c09012SAndroid Build Coastguard Worker // Mode specifies how the secondary boot disk will be used. 6030*d5c09012SAndroid Build Coastguard Worker // This triggers mode-specified logic in the control plane. 6031*d5c09012SAndroid Build Coastguard Worker enum Mode { 6032*d5c09012SAndroid Build Coastguard Worker // MODE_UNSPECIFIED is when mode is not set. 6033*d5c09012SAndroid Build Coastguard Worker MODE_UNSPECIFIED = 0; 6034*d5c09012SAndroid Build Coastguard Worker 6035*d5c09012SAndroid Build Coastguard Worker // CONTAINER_IMAGE_CACHE is for using the secondary boot disk as 6036*d5c09012SAndroid Build Coastguard Worker // a container image cache. 6037*d5c09012SAndroid Build Coastguard Worker CONTAINER_IMAGE_CACHE = 1; 6038*d5c09012SAndroid Build Coastguard Worker } 6039*d5c09012SAndroid Build Coastguard Worker 6040*d5c09012SAndroid Build Coastguard Worker // Disk mode (container image cache, etc.) 6041*d5c09012SAndroid Build Coastguard Worker Mode mode = 1; 6042*d5c09012SAndroid Build Coastguard Worker 6043*d5c09012SAndroid Build Coastguard Worker // Fully-qualified resource ID for an existing disk image. 6044*d5c09012SAndroid Build Coastguard Worker string disk_image = 2; 6045*d5c09012SAndroid Build Coastguard Worker} 6046*d5c09012SAndroid Build Coastguard Worker 6047*d5c09012SAndroid Build Coastguard Worker// Options for in-transit encryption. 6048*d5c09012SAndroid Build Coastguard Workerenum InTransitEncryptionConfig { 6049*d5c09012SAndroid Build Coastguard Worker // Unspecified, will be inferred as default - 6050*d5c09012SAndroid Build Coastguard Worker // IN_TRANSIT_ENCRYPTION_UNSPECIFIED. 6051*d5c09012SAndroid Build Coastguard Worker IN_TRANSIT_ENCRYPTION_CONFIG_UNSPECIFIED = 0; 6052*d5c09012SAndroid Build Coastguard Worker 6053*d5c09012SAndroid Build Coastguard Worker // In-transit encryption is disabled. 6054*d5c09012SAndroid Build Coastguard Worker IN_TRANSIT_ENCRYPTION_DISABLED = 1; 6055*d5c09012SAndroid Build Coastguard Worker 6056*d5c09012SAndroid Build Coastguard Worker // Data in-transit is encrypted using inter-node transparent encryption. 6057*d5c09012SAndroid Build Coastguard Worker IN_TRANSIT_ENCRYPTION_INTER_NODE_TRANSPARENT = 2; 6058*d5c09012SAndroid Build Coastguard Worker} 6059*d5c09012SAndroid Build Coastguard Worker 6060*d5c09012SAndroid Build Coastguard Worker// SecondaryBootDiskUpdateStrategy is a placeholder which will be extended 6061*d5c09012SAndroid Build Coastguard Worker// in the future to define different options for updating secondary boot disks. 6062*d5c09012SAndroid Build Coastguard Workermessage SecondaryBootDiskUpdateStrategy {} 6063