diff --git a/google/container/artman_container_v1beta1.yaml b/google/container/artman_container_v1beta1.yaml
index 9a81ab4b..befe0780 100644
--- a/google/container/artman_container_v1beta1.yaml
+++ b/google/container/artman_container_v1beta1.yaml
@@ -3,11 +3,12 @@ common:
api_version: v1beta1
organization_name: google-cloud
proto_deps:
- - name: google-common-protos
+ - name: google-common-protos
src_proto_paths:
- v1beta1
- service_yaml: container_v1beta1.yaml
+ service_yaml: v1beta1/container_v1beta1.yaml
gapic_yaml: v1beta1/container_gapic.yaml
+ proto_package: google.container.v1beta1
artifacts:
- name: gapic_config
type: GAPIC_CONFIG
diff --git a/google/container/container_v1beta1.yaml b/google/container/container_v1beta1.yaml
deleted file mode 100644
index 223e518b..00000000
--- a/google/container/container_v1beta1.yaml
+++ /dev/null
@@ -1,86 +0,0 @@
-type: google.api.Service
-config_version: 3
-name: container.googleapis.com
-title: Kubernetes Engine API
-
-apis:
-- name: google.container.v1beta1.ClusterManager
-
-documentation:
- summary: |-
- Builds and manages container-based applications, powered by the open source
- Kubernetes technology.
-
-backend:
- rules:
- - selector: google.container.v1beta1.ClusterManager.ListClusters
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.GetCluster
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.CreateCluster
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.UpdateCluster
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.UpdateNodePool
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.SetNodePoolAutoscaling
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.SetLoggingService
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.SetMonitoringService
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.SetAddonsConfig
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.SetLocations
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.UpdateMaster
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.SetMasterAuth
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.DeleteCluster
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.ListOperations
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.GetOperation
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.CancelOperation
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.GetServerConfig
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.ListNodePools
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.GetNodePool
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.CreateNodePool
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.DeleteNodePool
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.RollbackNodePoolUpgrade
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.SetNodePoolManagement
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.SetLabels
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.SetLegacyAbac
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.StartIPRotation
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.CompleteIPRotation
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.SetNodePoolSize
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.SetNetworkPolicy
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.SetMaintenancePolicy
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.ListUsableSubnetworks
- deadline: 20.0
- - selector: google.container.v1beta1.ClusterManager.ListLocations
- deadline: 20.0
-
-authentication:
- rules:
- - selector: '*'
- oauth:
- canonical_scopes: |-
- https://www.googleapis.com/auth/cloud-platform
diff --git a/google/container/v1beta1/cluster_service.proto b/google/container/v1beta1/cluster_service.proto
index 37918d7c..be882ad4 100644
--- a/google/container/v1beta1/cluster_service.proto
+++ b/google/container/v1beta1/cluster_service.proto
@@ -1,4 +1,4 @@
-// Copyright 2018 Google LLC.
+// Copyright 2019 Google LLC.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@@ -18,9 +18,10 @@ syntax = "proto3";
package google.container.v1beta1;
import "google/api/annotations.proto";
-import "google/iam/v1/iam_policy.proto";
-import "google/iam/v1/policy.proto";
+import "google/api/client.proto";
+import "google/api/field_behavior.proto";
import "google/protobuf/empty.proto";
+import "google/protobuf/timestamp.proto";
option csharp_namespace = "Google.Cloud.Container.V1Beta1";
option go_package = "google.golang.org/genproto/googleapis/container/v1beta1;container";
@@ -29,9 +30,11 @@ option java_outer_classname = "ClusterServiceProto";
option java_package = "com.google.container.v1beta1";
option php_namespace = "Google\\Cloud\\Container\\V1beta1";
-
// Google Kubernetes Engine Cluster Manager v1beta1
service ClusterManager {
+ option (google.api.default_host) = "container.googleapis.com";
+ option (google.api.oauth_scopes) = "https://www.googleapis.com/auth/cloud-platform";
+
// Lists all clusters owned by a project in either the specified zone or all
// zones.
rpc ListClusters(ListClustersRequest) returns (ListClustersResponse) {
@@ -41,6 +44,7 @@ service ClusterManager {
get: "/v1beta1/projects/{project_id}/zones/{zone}/clusters"
}
};
+ option (google.api.method_signature) = "project_id,zone";
}
// Gets the details for a specific cluster.
@@ -51,6 +55,7 @@ service ClusterManager {
get: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id";
}
// Creates a cluster, consisting of the specified number and type of Google
@@ -60,12 +65,12 @@ service ClusterManager {
// [default network](/compute/docs/networks-and-firewalls#networks).
//
// One firewall is added for the cluster. After cluster creation,
- // the cluster creates routes for each node to allow the containers
+ // the Kubelet creates routes for each node to allow the containers
// on that node to communicate with all other instances in the
// cluster.
//
// Finally, an entry is added to the project's global metadata indicating
- // which CIDR range is being used by the cluster.
+ // which CIDR range the cluster is using.
rpc CreateCluster(CreateClusterRequest) returns (Operation) {
option (google.api.http) = {
post: "/v1beta1/{parent=projects/*/locations/*}/clusters"
@@ -75,6 +80,7 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster";
}
// Updates the settings for a specific cluster.
@@ -87,6 +93,7 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,update";
}
// Updates the version and/or image type of a specific node pool.
@@ -123,6 +130,7 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,logging_service";
}
// Sets the monitoring service for a specific cluster.
@@ -135,6 +143,7 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,monitoring_service";
}
// Sets the addons for a specific cluster.
@@ -147,6 +156,7 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,addons_config";
}
// Sets the locations for a specific cluster.
@@ -159,6 +169,7 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,locations";
}
// Updates the master for a specific cluster.
@@ -171,12 +182,12 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,master_version";
}
- // Used to set master auth materials. Currently supports :-
- // Changing the admin password for a specific cluster.
- // This can be either via password generation or explicitly set.
- // Modify basic_auth.csv and reset the K8S API server.
+ // Sets master auth materials. Currently supports changing the admin password
+ // or a specific cluster, either via password generation or explicitly setting
+ // the password.
rpc SetMasterAuth(SetMasterAuthRequest) returns (Operation) {
option (google.api.http) = {
post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:setMasterAuth"
@@ -194,9 +205,9 @@ service ClusterManager {
// Firewalls and routes that were configured during cluster creation
// are also deleted.
//
- // Other Google Compute Engine resources that might be in use by the cluster
- // (e.g. load balancer resources) will not be deleted if they weren't present
- // at the initial create time.
+ // Other Google Compute Engine resources that might be in use by the cluster,
+ // such as load balancer resources, are not deleted if they weren't present
+ // when the cluster was initially created.
rpc DeleteCluster(DeleteClusterRequest) returns (Operation) {
option (google.api.http) = {
delete: "/v1beta1/{name=projects/*/locations/*/clusters/*}"
@@ -204,9 +215,10 @@ service ClusterManager {
delete: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id";
}
- // Lists all operations in a project in a specific zone or all zones.
+ // Lists all operations in a project in the specified zone or all zones.
rpc ListOperations(ListOperationsRequest) returns (ListOperationsResponse) {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*/locations/*}/operations"
@@ -214,6 +226,7 @@ service ClusterManager {
get: "/v1beta1/projects/{project_id}/zones/{zone}/operations"
}
};
+ option (google.api.method_signature) = "project_id,zone";
}
// Gets the specified operation.
@@ -224,6 +237,7 @@ service ClusterManager {
get: "/v1beta1/projects/{project_id}/zones/{zone}/operations/{operation_id}"
}
};
+ option (google.api.method_signature) = "project_id,zone,operation_id";
}
// Cancels the specified operation.
@@ -236,9 +250,10 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,operation_id";
}
- // Returns configuration info about the Kubernetes Engine service.
+ // Returns configuration info about the Google Kubernetes Engine service.
rpc GetServerConfig(GetServerConfigRequest) returns (ServerConfig) {
option (google.api.http) = {
get: "/v1beta1/{name=projects/*/locations/*}/serverConfig"
@@ -246,6 +261,7 @@ service ClusterManager {
get: "/v1beta1/projects/{project_id}/zones/{zone}/serverconfig"
}
};
+ option (google.api.method_signature) = "project_id,zone";
}
// Lists the node pools for a cluster.
@@ -256,9 +272,10 @@ service ClusterManager {
get: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id";
}
- // Retrieves the node pool requested.
+ // Retrieves the requested node pool.
rpc GetNodePool(GetNodePoolRequest) returns (NodePool) {
option (google.api.http) = {
get: "/v1beta1/{name=projects/*/locations/*/clusters/*/nodePools/*}"
@@ -266,6 +283,7 @@ service ClusterManager {
get: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,node_pool_id";
}
// Creates a node pool for a cluster.
@@ -278,6 +296,7 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,node_pool";
}
// Deletes a node pool from a cluster.
@@ -288,10 +307,11 @@ service ClusterManager {
delete: "/v1beta1/projects/{project_id}/zones/{zone}/clusters/{cluster_id}/nodePools/{node_pool_id}"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,node_pool_id";
}
- // Roll back the previously Aborted or Failed NodePool upgrade.
- // This will be an no-op if the last upgrade successfully completed.
+ // Rolls back a previously Aborted or Failed NodePool upgrade.
+ // This makes no changes if the last upgrade successfully completed.
rpc RollbackNodePoolUpgrade(RollbackNodePoolUpgradeRequest) returns (Operation) {
option (google.api.http) = {
post: "/v1beta1/{name=projects/*/locations/*/clusters/*/nodePools/*}:rollback"
@@ -301,6 +321,7 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,node_pool_id";
}
// Sets the NodeManagement options for a node pool.
@@ -313,6 +334,7 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,node_pool_id,management";
}
// Sets labels on a cluster.
@@ -325,6 +347,7 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,resource_labels,label_fingerprint";
}
// Enables or disables the ABAC authorization mechanism on a cluster.
@@ -337,9 +360,10 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,enabled";
}
- // Start master IP rotation.
+ // Starts master IP rotation.
rpc StartIPRotation(StartIPRotationRequest) returns (Operation) {
option (google.api.http) = {
post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:startIpRotation"
@@ -349,6 +373,7 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id";
}
// Completes master IP rotation.
@@ -361,6 +386,7 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id";
}
// Sets the size for a specific node pool.
@@ -375,7 +401,7 @@ service ClusterManager {
};
}
- // Enables/Disables Network Policy for a cluster.
+ // Enables or disables Network Policy for a cluster.
rpc SetNetworkPolicy(SetNetworkPolicyRequest) returns (Operation) {
option (google.api.http) = {
post: "/v1beta1/{name=projects/*/locations/*/clusters/*}:setNetworkPolicy"
@@ -385,6 +411,7 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,network_policy";
}
// Sets the maintenance policy for a cluster.
@@ -397,20 +424,23 @@ service ClusterManager {
body: "*"
}
};
+ option (google.api.method_signature) = "project_id,zone,cluster_id,maintenance_policy";
}
- // Lists subnetworks that are usable for creating clusters in a project.
+ // Lists subnetworks that can be used for creating clusters in a project.
rpc ListUsableSubnetworks(ListUsableSubnetworksRequest) returns (ListUsableSubnetworksResponse) {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*}/aggregated/usableSubnetworks"
};
+ option (google.api.method_signature) = "parent";
}
- // Used to fetch locations that offer GKE.
+ // Fetches locations that offer Google Kubernetes Engine.
rpc ListLocations(ListLocationsRequest) returns (ListLocationsResponse) {
option (google.api.http) = {
get: "/v1beta1/{parent=projects/*}/locations"
};
+ option (google.api.method_signature) = "parent";
}
}
@@ -460,14 +490,22 @@ message NodeConfig {
// "cluster-name"
// "cluster-uid"
// "configure-sh"
+ // "containerd-configure-sh"
// "enable-oslogin"
// "gci-ensure-gke-docker"
+ // "gci-metrics-enabled"
// "gci-update-strategy"
// "instance-template"
// "kube-env"
// "startup-script"
// "user-data"
- //
+ // "disable-address-manager"
+ // "windows-startup-script-ps1"
+ // "common-psm1"
+ // "k8s-node-setup-psm1"
+ // "install-ssh-psm1"
+ // "user-profile-psm1"
+ // "serial-port-logging-enable"
// Values are free-form strings, and only have meaning as interpreted by
// the image running in the instance. The only restriction placed on them is
// that each value's size must be less than or equal to 32 KB.
@@ -491,9 +529,9 @@ message NodeConfig {
// The number of local SSD disks to be attached to the node.
//
- // The limit for this value is dependant upon the maximum number of
+ // The limit for this value is dependent upon the maximum number of
// disks available on a machine per zone. See:
- // https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_limits
+ // https://cloud.google.com/compute/docs/disks/local-ssd
// for more information.
int32 local_ssd_count = 7;
@@ -525,6 +563,7 @@ message NodeConfig {
// minCpuPlatform: "Intel Sandy Bridge". For more
// information, read [how to specify min CPU
// platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
+ // To unset the min cpu platform field pass "automatic" as field value.
string min_cpu_platform = 13;
// The workload metadata configuration for this node.
@@ -535,6 +574,27 @@ message NodeConfig {
// For more information, including usage and the valid values, see:
// https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
repeated NodeTaint taints = 15;
+
+ // Shielded Instance options.
+ ShieldedInstanceConfig shielded_instance_config = 20;
+}
+
+// A set of Shielded Instance options.
+message ShieldedInstanceConfig {
+ // Defines whether the instance has Secure Boot enabled.
+ //
+ // Secure Boot helps ensure that the system only runs authentic software by
+ // verifying the digital signature of all boot components, and halting the
+ // boot process if signature verification fails.
+ bool enable_secure_boot = 1;
+
+ // Defines whether the instance has integrity monitoring enabled.
+ //
+ // Enables monitoring and attestation of the boot integrity of the instance.
+ // The attestation is performed against the integrity policy baseline. This
+ // baseline is initially derived from the implicitly trusted boot image when
+ // the instance is created.
+ bool enable_integrity_monitoring = 2;
}
// Kubernetes taint is comprised of three fields: key, value, and effect. Effect
@@ -620,7 +680,11 @@ message AddonsConfig {
HorizontalPodAutoscaling horizontal_pod_autoscaling = 2;
// Configuration for the Kubernetes Dashboard.
- KubernetesDashboard kubernetes_dashboard = 3;
+ // This addon is deprecated, and will be disabled in 1.15. It is recommended
+ // to use the Cloud Console to manage and monitor your Kubernetes clusters,
+ // workloads and applications. For more information, see:
+ // https://cloud.google.com/kubernetes-engine/docs/concepts/dashboards
+ KubernetesDashboard kubernetes_dashboard = 3 [deprecated = true];
// Configuration for NetworkPolicy. This only tracks whether the addon
// is enabled or not on the Master, it does not track whether network policy
@@ -906,6 +970,17 @@ message PodSecurityPolicyConfig {
bool enabled = 1;
}
+// Configuration for returning group information from authenticators.
+message AuthenticatorGroupsConfig {
+ // Whether this cluster should return group membership lookups
+ // during authentication using a group of security groups.
+ bool enabled = 1;
+
+ // The name of the security group-of-groups to be used. Only relevant
+ // if enabled = true.
+ string security_group = 2;
+}
+
// A Google Kubernetes Engine cluster.
message Cluster {
// The current status of the cluster.
@@ -938,7 +1013,8 @@ message Cluster {
}
// The name of this cluster. The name must be unique within this project
- // and zone, and can be up to 40 characters with the following restrictions:
+ // and location (e.g. zone or region), and can be up to 40 characters with
+ // the following restrictions:
//
// * Lowercase letters, numbers, and hyphens only.
// * Must start with a letter.
@@ -956,19 +1032,22 @@ message Cluster {
// "node_pool" object, since this configuration (along with the
// "node_config") will be used to create a "NodePool" object with an
// auto-generated name. Do not use this and a node_pool at the same time.
- int32 initial_node_count = 3;
+ //
+ // This field is deprecated, use node_pool.initial_node_count instead.
+ int32 initial_node_count = 3 [deprecated = true];
// Parameters used in creating the cluster's nodes.
- // See `nodeConfig` for the description of its properties.
// For requests, this field should only be used in lieu of a
// "node_pool" object, since this configuration (along with the
// "initial_node_count") will be used to create a "NodePool" object with an
// auto-generated name. Do not use this and a node_pool at the same time.
// For responses, this field will be populated with the node configuration of
- // the first node pool.
+ // the first node pool. (For configuration of each node pool, see
+ // `node_pool.config`)
//
// If unspecified, the defaults are used.
- NodeConfig node_config = 4;
+ // This field is deprecated, use node_pool.config instead.
+ NodeConfig node_config = 4 [deprecated = true];
// The authentication information for accessing the master endpoint.
// If unspecified, the defaults are used:
@@ -1090,6 +1169,9 @@ message Cluster {
// disabled when this config unspecified.
ResourceUsageExportConfig resource_usage_export_config = 33;
+ // Configuration controlling RBAC group membership information.
+ AuthenticatorGroupsConfig authenticator_groups_config = 34;
+
// Configuration for private cluster.
PrivateClusterConfig private_cluster_config = 37;
@@ -1132,7 +1214,7 @@ message Cluster {
string current_master_version = 104;
// [Output only] Deprecated, use
- // [NodePool.version](/kubernetes-engine/docs/reference/rest/v1beta1/projects.zones.clusters.nodePool)
+ // [NodePool.version](/kubernetes-engine/docs/reference/rest/v1beta1/projects.locations.clusters.nodePools)
// instead. The current version of the node software components.
// If they are currently at multiple versions because they're in the process
// of being upgraded, this reflects the minimum version of all nodes.
@@ -1147,11 +1229,12 @@ message Cluster {
// [Output only] Additional information about the current status of this
// cluster, if available.
- string status_message = 108;
+ string status_message = 108 [deprecated = true];
// [Output only] The size of the address space on each node for hosting
// containers. This is provisioned from within the `container_ipv4_cidr`
- // range.
+ // range. This field will only be set when cluster is in route-based network
+ // mode.
int32 node_ipv4_cidr_size = 109;
// [Output only] The IP address range of the Kubernetes services in
@@ -1186,6 +1269,9 @@ message Cluster {
// notation (e.g. `1.2.3.4/29`).
string tpu_ipv4_cidr_block = 116;
+ // Configuration of etcd encryption.
+ DatabaseEncryption database_encryption = 38;
+
// Which conditions caused the current cluster state.
repeated StatusCondition conditions = 118;
}
@@ -1211,7 +1297,7 @@ message ClusterUpdate {
// Currently available options:
//
// * "monitoring.googleapis.com/kubernetes" - the Google Cloud Monitoring
- // service with Kubernetes-native resource model in Stackdriver
+ // service with Kubernetes-native resource model
// * "monitoring.googleapis.com" - the Google Cloud Monitoring service
// * "none" - no metrics will be exported from the cluster
string desired_monitoring_service = 5;
@@ -1220,9 +1306,9 @@ message ClusterUpdate {
AddonsConfig desired_addons_config = 6;
// The node pool to be upgraded. This field is mandatory if
- // "desired_node_version", "desired_image_family" or
- // "desired_node_pool_autoscaling" is specified and there is more than one
- // node pool on the cluster.
+ // "desired_node_version", "desired_image_family",
+ // "desired_node_pool_autoscaling", or "desired_workload_metadata_config"
+ // is specified and there is more than one node pool on the cluster.
string desired_node_pool_id = 7;
// The desired image type for the node pool.
@@ -1260,7 +1346,7 @@ message ClusterUpdate {
// Currently available options:
//
// * "logging.googleapis.com/kubernetes" - the Google Cloud Logging
- // service with Kubernetes-native resource model in Stackdriver
+ // service with Kubernetes-native resource model
// * "logging.googleapis.com" - the Google Cloud Logging service
// * "none" - no logs will be exported from the cluster
string desired_logging_service = 19;
@@ -1271,6 +1357,9 @@ message ClusterUpdate {
// Cluster-level Vertical Pod Autoscaling configuration.
VerticalPodAutoscaling desired_vertical_pod_autoscaling = 22;
+ // The desired config of Intra-node visibility.
+ IntraNodeVisibilityConfig desired_intra_node_visibility_config = 26;
+
// The Kubernetes version to change the master to. The only valid value is the
// latest supported version.
//
@@ -1379,7 +1468,7 @@ message Operation {
string detail = 8;
// If an error has occurred, a textual description of the error.
- string status_message = 5;
+ string status_message = 5 [deprecated = true];
// Server-defined URL for the resource.
string self_link = 6;
@@ -1454,20 +1543,26 @@ message OperationProgress {
// CreateClusterRequest creates a cluster.
message CreateClusterRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the parent field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the parent field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // A [cluster
+ // Required. A [cluster
// resource](/container-engine/reference/rest/v1beta1/projects.zones.clusters)
- Cluster cluster = 3;
+ Cluster cluster = 3 [(google.api.field_behavior) = REQUIRED];
// The parent (project and location) where the cluster will be created.
// Specified in the format 'projects/*/locations/*'.
@@ -1476,20 +1571,29 @@ message CreateClusterRequest {
// GetClusterRequest gets the settings of a cluster.
message GetClusterRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster to retrieve.
+ // Required. Deprecated. The name of the cluster to retrieve.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
// The name (project, location, cluster) of the cluster to retrieve.
// Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -1498,23 +1602,32 @@ message GetClusterRequest {
// UpdateClusterRequest updates the settings of a cluster.
message UpdateClusterRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster to upgrade.
+ // Required. Deprecated. The name of the cluster to upgrade.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // A description of the update.
- ClusterUpdate update = 4;
+ // Required. A description of the update.
+ ClusterUpdate update = 4 [(google.api.field_behavior) = REQUIRED];
// The name (project, location, cluster) of the cluster to update.
// Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -1523,26 +1636,38 @@ message UpdateClusterRequest {
// SetNodePoolVersionRequest updates the version of a node pool.
message UpdateNodePoolRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster to upgrade.
+ // Required. Deprecated. The name of the cluster to upgrade.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the node pool to upgrade.
+ // Required. Deprecated. The name of the node pool to upgrade.
// This field has been deprecated and replaced by the name field.
- string node_pool_id = 4 [deprecated = true];
+ string node_pool_id = 4 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // The Kubernetes version to change the nodes to (typically an
+ // Required. The Kubernetes version to change the nodes to (typically an
// upgrade).
//
// Users may specify either explicit versions offered by Kubernetes Engine or
@@ -1553,10 +1678,13 @@ message UpdateNodePoolRequest {
// - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
// - "1.X.Y-gke.N": picks an explicit Kubernetes version
// - "-": picks the Kubernetes master version
- string node_version = 5;
+ string node_version = 5 [(google.api.field_behavior) = REQUIRED];
+
+ // Required. The desired image type for the node pool.
+ string image_type = 6 [(google.api.field_behavior) = REQUIRED];
// The desired image type for the node pool.
- string image_type = 6;
+ WorkloadMetadataConfig workload_metadata_config = 14;
// The name (project, location, cluster, node pool) of the node pool to
// update. Specified in the format
@@ -1566,27 +1694,39 @@ message UpdateNodePoolRequest {
// SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.
message SetNodePoolAutoscalingRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster to upgrade.
+ // Required. Deprecated. The name of the cluster to upgrade.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the node pool to upgrade.
+ // Required. Deprecated. The name of the node pool to upgrade.
// This field has been deprecated and replaced by the name field.
- string node_pool_id = 4 [deprecated = true];
+ string node_pool_id = 4 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Autoscaling configuration for the node pool.
- NodePoolAutoscaling autoscaling = 5;
+ // Required. Autoscaling configuration for the node pool.
+ NodePoolAutoscaling autoscaling = 5 [(google.api.field_behavior) = REQUIRED];
// The name (project, location, cluster, node pool) of the node pool to set
// autoscaler settings. Specified in the format
@@ -1596,27 +1736,33 @@ message SetNodePoolAutoscalingRequest {
// SetLoggingServiceRequest sets the logging service of a cluster.
message SetLoggingServiceRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2;
+ string zone = 2 [(google.api.field_behavior) = REQUIRED];
- // Deprecated. The name of the cluster to upgrade.
+ // Required. Deprecated. The name of the cluster to upgrade.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // The logging service the cluster should use to write metrics.
+ // Required. The logging service the cluster should use to write metrics.
// Currently available options:
//
// * "logging.googleapis.com" - the Google Cloud Logging service
// * "none" - no metrics will be exported from the cluster
- string logging_service = 4;
+ string logging_service = 4 [(google.api.field_behavior) = REQUIRED];
// The name (project, location, cluster) of the cluster to set logging.
// Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -1625,27 +1771,36 @@ message SetLoggingServiceRequest {
// SetMonitoringServiceRequest sets the monitoring service of a cluster.
message SetMonitoringServiceRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster to upgrade.
+ // Required. Deprecated. The name of the cluster to upgrade.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // The monitoring service the cluster should use to write metrics.
+ // Required. The monitoring service the cluster should use to write metrics.
// Currently available options:
//
// * "monitoring.googleapis.com" - the Google Cloud Monitoring service
// * "none" - no metrics will be exported from the cluster
- string monitoring_service = 4;
+ string monitoring_service = 4 [(google.api.field_behavior) = REQUIRED];
// The name (project, location, cluster) of the cluster to set monitoring.
// Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -1654,24 +1809,33 @@ message SetMonitoringServiceRequest {
// SetAddonsRequest sets the addons associated with the cluster.
message SetAddonsConfigRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster to upgrade.
+ // Required. Deprecated. The name of the cluster to upgrade.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // The desired configurations for the various addons available to run in the
+ // Required. The desired configurations for the various addons available to run in the
// cluster.
- AddonsConfig addons_config = 4;
+ AddonsConfig addons_config = 4 [(google.api.field_behavior) = REQUIRED];
// The name (project, location, cluster) of the cluster to set addons.
// Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -1680,29 +1844,38 @@ message SetAddonsConfigRequest {
// SetLocationsRequest sets the locations of the cluster.
message SetLocationsRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster to upgrade.
+ // Required. Deprecated. The name of the cluster to upgrade.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // The desired list of Google Compute Engine
+ // Required. The desired list of Google Compute Engine
// [zones](/compute/docs/zones#available) in which the cluster's nodes
// should be located. Changing the locations a cluster is in will result
// in nodes being either created or removed from the cluster, depending on
// whether locations are being added or removed.
//
// This list must always include the cluster's primary zone.
- repeated string locations = 4;
+ repeated string locations = 4 [(google.api.field_behavior) = REQUIRED];
// The name (project, location, cluster) of the cluster to set locations.
// Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -1711,22 +1884,31 @@ message SetLocationsRequest {
// UpdateMasterRequest updates the master of the cluster.
message UpdateMasterRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster to upgrade.
+ // Required. Deprecated. The name of the cluster to upgrade.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // The Kubernetes version to change the master to.
+ // Required. The Kubernetes version to change the master to.
//
// Users may specify either explicit versions offered by
// Kubernetes Engine or version aliases, which have the following behavior:
@@ -1736,7 +1918,7 @@ message UpdateMasterRequest {
// - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version
// - "1.X.Y-gke.N": picks an explicit Kubernetes version
// - "-": picks the default Kubernetes version
- string master_version = 4;
+ string master_version = 4 [(google.api.field_behavior) = REQUIRED];
// The name (project, location, cluster) of the cluster to update.
// Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -1763,26 +1945,35 @@ message SetMasterAuthRequest {
SET_USERNAME = 3;
}
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster to upgrade.
+ // Required. Deprecated. The name of the cluster to upgrade.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // The exact form of action to be taken on the master auth.
- Action action = 4;
+ // Required. The exact form of action to be taken on the master auth.
+ Action action = 4 [(google.api.field_behavior) = REQUIRED];
- // A description of the update.
- MasterAuth update = 5;
+ // Required. A description of the update.
+ MasterAuth update = 5 [(google.api.field_behavior) = REQUIRED];
// The name (project, location, cluster) of the cluster to set auth.
// Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -1791,20 +1982,29 @@ message SetMasterAuthRequest {
// DeleteClusterRequest deletes a cluster.
message DeleteClusterRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster to delete.
+ // Required. Deprecated. The name of the cluster to delete.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
// The name (project, location, cluster) of the cluster to delete.
// Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -1813,16 +2013,22 @@ message DeleteClusterRequest {
// ListClustersRequest lists clusters.
message ListClustersRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the parent field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides, or "-" for all zones.
// This field has been deprecated and replaced by the parent field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
// The parent (project and location) where the clusters will be listed.
// Specified in the format 'projects/*/locations/*'.
@@ -1843,20 +2049,29 @@ message ListClustersResponse {
// GetOperationRequest gets a single operation.
message GetOperationRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The server-assigned `name` of the operation.
+ // Required. Deprecated. The server-assigned `name` of the operation.
// This field has been deprecated and replaced by the name field.
- string operation_id = 3 [deprecated = true];
+ string operation_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
// The name (project, location, operation id) of the operation to get.
// Specified in the format 'projects/*/locations/*/operations/*'.
@@ -1865,15 +2080,21 @@ message GetOperationRequest {
// ListOperationsRequest lists operations.
message ListOperationsRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the parent field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) to return operations for, or `-` for
// all zones. This field has been deprecated and replaced by the parent field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
// The parent (project and location) where the operations will be listed.
// Specified in the format 'projects/*/locations/*'.
@@ -1883,19 +2104,28 @@ message ListOperationsRequest {
// CancelOperationRequest cancels a single operation.
message CancelOperationRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the operation resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The server-assigned `name` of the operation.
+ // Required. Deprecated. The server-assigned `name` of the operation.
// This field has been deprecated and replaced by the name field.
- string operation_id = 3 [deprecated = true];
+ string operation_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
// The name (project, location, operation id) of the operation to cancel.
// Specified in the format 'projects/*/locations/*/operations/*'.
@@ -1914,18 +2144,24 @@ message ListOperationsResponse {
// Gets the current Kubernetes Engine service configuration.
message GetServerConfigRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) to return operations for.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // The name (project and location) of the server config to get
- // Specified in the format 'projects/*/locations/*'.
+ // The name (project and location) of the server config to get,
+ // specified in the format 'projects/*/locations/*'.
string name = 4;
}
@@ -1949,23 +2185,32 @@ message ServerConfig {
// CreateNodePoolRequest creates a node pool for a cluster.
message CreateNodePoolRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://developers.google.com/console/help/new/#projectnumber).
// This field has been deprecated and replaced by the parent field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the parent field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster.
+ // Required. Deprecated. The name of the cluster.
// This field has been deprecated and replaced by the parent field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // The node pool to create.
- NodePool node_pool = 4;
+ // Required. The node pool to create.
+ NodePool node_pool = 4 [(google.api.field_behavior) = REQUIRED];
// The parent (project, location, cluster id) where the node pool will be
// created. Specified in the format
@@ -1975,24 +2220,36 @@ message CreateNodePoolRequest {
// DeleteNodePoolRequest deletes a node pool for a cluster.
message DeleteNodePoolRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://developers.google.com/console/help/new/#projectnumber).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster.
+ // Required. Deprecated. The name of the cluster.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the node pool to delete.
+ // Required. Deprecated. The name of the node pool to delete.
// This field has been deprecated and replaced by the name field.
- string node_pool_id = 4 [deprecated = true];
+ string node_pool_id = 4 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
// The name (project, location, cluster, node pool id) of the node pool to
// delete. Specified in the format
@@ -2002,20 +2259,29 @@ message DeleteNodePoolRequest {
// ListNodePoolsRequest lists the node pool(s) for a cluster.
message ListNodePoolsRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://developers.google.com/console/help/new/#projectnumber).
// This field has been deprecated and replaced by the parent field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the parent field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster.
+ // Required. Deprecated. The name of the cluster.
// This field has been deprecated and replaced by the parent field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
// The parent (project, location, cluster id) where the node pools will be
// listed. Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -2024,24 +2290,36 @@ message ListNodePoolsRequest {
// GetNodePoolRequest retrieves a node pool for a cluster.
message GetNodePoolRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://developers.google.com/console/help/new/#projectnumber).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster.
+ // Required. Deprecated. The name of the cluster.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the node pool.
+ // Required. Deprecated. The name of the node pool.
// This field has been deprecated and replaced by the name field.
- string node_pool_id = 4 [deprecated = true];
+ string node_pool_id = 4 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
// The name (project, location, cluster, node pool id) of the node pool to
// get. Specified in the format
@@ -2115,7 +2393,7 @@ message NodePool {
// [Output only] Additional information about the current status of this
// node pool instance, if available.
- string status_message = 104;
+ string status_message = 104 [deprecated = true];
// Autoscaler configuration for this NodePool. Autoscaler is enabled
// only if a valid configuration is present.
@@ -2130,6 +2408,9 @@ message NodePool {
// Which conditions caused the current node pool state.
repeated StatusCondition conditions = 105;
+
+ // [Output only] The pod CIDR block size per node in this node pool.
+ int32 pod_ipv4_cidr_size = 7;
}
// NodeManagement defines the set of node management services turned on for the
@@ -2162,6 +2443,13 @@ message AutoUpgradeOptions {
message MaintenancePolicy {
// Specifies the maintenance window in which maintenance may be performed.
MaintenanceWindow window = 1;
+
+ // A hash identifying the version of this policy, so that updates to fields of
+ // the policy won't accidentally undo intermediate changes (and so that users
+ // of the API unaware of some fields won't accidentally remove other fields).
+ // Make a get() request to the cluster to get the current
+ // resource version and include it with requests to set the policy.
+ string resource_version = 3;
}
// MaintenanceWindow defines the maintenance window to be used for the cluster.
@@ -2171,13 +2459,67 @@ message MaintenanceWindow {
oneof policy {
// DailyMaintenanceWindow specifies a daily maintenance operation window.
DailyMaintenanceWindow daily_maintenance_window = 2;
+
+ // RecurringWindow specifies some number of recurring time periods for
+ // maintenance to occur. The time windows may be overlapping. If no
+ // maintenance windows are set, maintenance can occur at any time.
+ RecurringTimeWindow recurring_window = 3;
}
+
+ // Exceptions to maintenance window. Non-emergency maintenance should not
+ // occur in these windows.
+ map maintenance_exclusions = 4;
+}
+
+// Represents an arbitrary window of time.
+message TimeWindow {
+ // The time that the window first starts.
+ google.protobuf.Timestamp start_time = 1;
+
+ // The time that the window ends. The end time should take place after the
+ // start time.
+ google.protobuf.Timestamp end_time = 2;
+}
+
+// Represents an arbitrary window of time that recurs.
+message RecurringTimeWindow {
+ // The window of the first recurrence.
+ TimeWindow window = 1;
+
+ // An RRULE (https://tools.ietf.org/html/rfc5545#section-3.8.5.3) for how
+ // this window reccurs. They go on for the span of time between the start and
+ // end time.
+ //
+ // For example, to have something repeat every weekday, you'd use:
+ // FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR
+ // To repeat some window daily (equivalent to the DailyMaintenanceWindow):
+ // FREQ=DAILY
+ // For the first weekend of every month:
+ // FREQ=MONTHLY;BYSETPOS=1;BYDAY=SA,SU
+ // This specifies how frequently the window starts. Eg, if you wanted to have
+ // a 9-5 UTC-4 window every weekday, you'd use something like:
+ //
+ // start time = 2019-01-01T09:00:00-0400
+ // end time = 2019-01-01T17:00:00-0400
+ // recurrence = FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR
+ //
+ // Windows can span multiple days. Eg, to make the window encompass every
+ // weekend from midnight Saturday till the last minute of Sunday UTC:
+ //
+ // start time = 2019-01-05T00:00:00Z
+ // end time = 2019-01-07T23:59:00Z
+ // recurrence = FREQ=WEEKLY;BYDAY=SA
+ //
+ // Note the start and end time's specific dates are largely arbitrary except
+ // to specify duration of the window and when it first starts.
+ // The FREQ values of HOURLY, MINUTELY, and SECONDLY are not supported.
+ string recurrence = 2;
}
// Time window specified for daily maintenance operations.
message DailyMaintenanceWindow {
// Time within the maintenance window to start the maintenance operations.
- // It must be in format "HH:MM”, where HH : [00-23] and MM : [00-59] GMT.
+ // It must be in format "HH:MM", where HH : [00-23] and MM : [00-59] GMT.
string start_time = 2;
// [Output only] Duration of the time window, automatically chosen to be
@@ -2188,27 +2530,39 @@ message DailyMaintenanceWindow {
// SetNodePoolManagementRequest sets the node management properties of a node
// pool.
message SetNodePoolManagementRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster to update.
+ // Required. Deprecated. The name of the cluster to update.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the node pool to update.
+ // Required. Deprecated. The name of the node pool to update.
// This field has been deprecated and replaced by the name field.
- string node_pool_id = 4 [deprecated = true];
+ string node_pool_id = 4 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // NodeManagement configuration for the node pool.
- NodeManagement management = 5;
+ // Required. NodeManagement configuration for the node pool.
+ NodeManagement management = 5 [(google.api.field_behavior) = REQUIRED];
// The name (project, location, cluster, node pool id) of the node pool to set
// management properties. Specified in the format
@@ -2219,27 +2573,39 @@ message SetNodePoolManagementRequest {
// SetNodePoolSizeRequest sets the size a node
// pool.
message SetNodePoolSizeRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster to update.
+ // Required. Deprecated. The name of the cluster to update.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the node pool to update.
+ // Required. Deprecated. The name of the node pool to update.
// This field has been deprecated and replaced by the name field.
- string node_pool_id = 4 [deprecated = true];
+ string node_pool_id = 4 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // The desired node count for the pool.
- int32 node_count = 5;
+ // Required. The desired node count for the pool.
+ int32 node_count = 5 [(google.api.field_behavior) = REQUIRED];
// The name (project, location, cluster, node pool id) of the node pool to set
// size.
@@ -2251,24 +2617,36 @@ message SetNodePoolSizeRequest {
// NodePool upgrade. This will be an no-op if the last upgrade successfully
// completed.
message RollbackNodePoolUpgradeRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster to rollback.
+ // Required. Deprecated. The name of the cluster to rollback.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the node pool to rollback.
+ // Required. Deprecated. The name of the node pool to rollback.
// This field has been deprecated and replaced by the name field.
- string node_pool_id = 4 [deprecated = true];
+ string node_pool_id = 4 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
// The name (project, location, cluster, node pool id) of the node poll to
// rollback upgrade.
@@ -2293,6 +2671,26 @@ message ClusterAutoscaling {
// Contains global constraints regarding minimum and maximum
// amount of resources in the cluster.
repeated ResourceLimit resource_limits = 2;
+
+ // AutoprovisioningNodePoolDefaults contains defaults for a node pool
+ // created by NAP.
+ AutoprovisioningNodePoolDefaults autoprovisioning_node_pool_defaults = 4;
+
+ // The list of Google Compute Engine [zones](/compute/docs/zones#available)
+ // in which the NodePool's nodes can be created by NAP.
+ repeated string autoprovisioning_locations = 5;
+}
+
+// AutoprovisioningNodePoolDefaults contains defaults for a node pool created
+// by NAP.
+message AutoprovisioningNodePoolDefaults {
+ // Scopes that are used by NAP when creating node pools. If oauth_scopes are
+ // specified, service_account should be empty.
+ repeated string oauth_scopes = 1;
+
+ // The Google Cloud Platform Service Account to be used by the node VMs. If
+ // service_account is specified, scopes should be empty.
+ string service_account = 2;
}
// Contains information about amount of some resource in the cluster.
@@ -2330,31 +2728,40 @@ message NodePoolAutoscaling {
// Engine cluster, which will in turn set them for Google Compute Engine
// resources used by that cluster
message SetLabelsRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://developers.google.com/console/help/new/#projectnumber).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster.
+ // Required. Deprecated. The name of the cluster.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // The labels to set for that cluster.
- map resource_labels = 4;
+ // Required. The labels to set for that cluster.
+ map resource_labels = 4 [(google.api.field_behavior) = REQUIRED];
- // The fingerprint of the previous set of labels for this resource,
+ // Required. The fingerprint of the previous set of labels for this resource,
// used to detect conflicts. The fingerprint is initially generated by
// Kubernetes Engine and changes after every request to modify or update
// labels. You must always provide an up-to-date fingerprint hash when
// updating or changing labels. Make a get() request to the
// resource to get the latest fingerprint.
- string label_fingerprint = 5;
+ string label_fingerprint = 5 [(google.api.field_behavior) = REQUIRED];
// The name (project, location, cluster id) of the cluster to set labels.
// Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -2364,23 +2771,32 @@ message SetLabelsRequest {
// SetLegacyAbacRequest enables or disables the ABAC authorization mechanism for
// a cluster.
message SetLegacyAbacRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster to update.
+ // Required. Deprecated. The name of the cluster to update.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Whether ABAC authorization will be enabled in the cluster.
- bool enabled = 4;
+ // Required. Whether ABAC authorization will be enabled in the cluster.
+ bool enabled = 4 [(google.api.field_behavior) = REQUIRED];
// The name (project, location, cluster id) of the cluster to set legacy abac.
// Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -2390,20 +2806,29 @@ message SetLegacyAbacRequest {
// StartIPRotationRequest creates a new IP for the cluster and then performs
// a node upgrade on each node pool to point to the new IP.
message StartIPRotationRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://developers.google.com/console/help/new/#projectnumber).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster.
+ // Required. Deprecated. The name of the cluster.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
// The name (project, location, cluster id) of the cluster to start IP
// rotation. Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -2415,20 +2840,29 @@ message StartIPRotationRequest {
// CompleteIPRotationRequest moves the cluster master back into single-IP mode.
message CompleteIPRotationRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://developers.google.com/console/help/new/#projectnumber).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster.
+ // Required. Deprecated. The name of the cluster.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
// The name (project, location, cluster id) of the cluster to complete IP
// rotation. Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -2441,7 +2875,7 @@ message AcceleratorConfig {
int64 accelerator_count = 1;
// The accelerator type resource name. List of supported accelerators
- // [here](/compute/docs/gpus/#Introduction)
+ // [here](/compute/docs/gpus)
string accelerator_type = 2;
}
@@ -2468,30 +2902,39 @@ message WorkloadMetadataConfig {
EXPOSE = 2;
}
- // NodeMetadata is the configuration for how to expose the node metadata to
- // the workload running on the node.
+ // NodeMetadata is the configuration for how to expose metadata to the
+ // workloads running on the node.
NodeMetadata node_metadata = 1;
}
// SetNetworkPolicyRequest enables/disables network policy for a cluster.
message SetNetworkPolicyRequest {
- // Deprecated. The Google Developers Console [project ID or project
+ // Required. Deprecated. The Google Developers Console [project ID or project
// number](https://developers.google.com/console/help/new/#projectnumber).
// This field has been deprecated and replaced by the name field.
- string project_id = 1 [deprecated = true];
+ string project_id = 1 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the Google Compute Engine
+ // Required. Deprecated. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
// This field has been deprecated and replaced by the name field.
- string zone = 2 [deprecated = true];
+ string zone = 2 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Deprecated. The name of the cluster.
+ // Required. Deprecated. The name of the cluster.
// This field has been deprecated and replaced by the name field.
- string cluster_id = 3 [deprecated = true];
+ string cluster_id = 3 [
+ deprecated = true,
+ (google.api.field_behavior) = REQUIRED
+ ];
- // Configuration options for the NetworkPolicy feature.
- NetworkPolicy network_policy = 4;
+ // Required. Configuration options for the NetworkPolicy feature.
+ NetworkPolicy network_policy = 4 [(google.api.field_behavior) = REQUIRED];
// The name (project, location, cluster id) of the cluster to set networking
// policy. Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -2500,21 +2943,21 @@ message SetNetworkPolicyRequest {
// SetMaintenancePolicyRequest sets the maintenance policy for a cluster.
message SetMaintenancePolicyRequest {
- // The Google Developers Console [project ID or project
+ // Required. The Google Developers Console [project ID or project
// number](https://support.google.com/cloud/answer/6158840).
- string project_id = 1;
+ string project_id = 1 [(google.api.field_behavior) = REQUIRED];
- // The name of the Google Compute Engine
+ // Required. The name of the Google Compute Engine
// [zone](/compute/docs/zones#available) in which the cluster
// resides.
- string zone = 2;
+ string zone = 2 [(google.api.field_behavior) = REQUIRED];
- // The name of the cluster to update.
- string cluster_id = 3;
+ // Required. The name of the cluster to update.
+ string cluster_id = 3 [(google.api.field_behavior) = REQUIRED];
- // The maintenance policy to be set for the cluster. An empty field
+ // Required. The maintenance policy to be set for the cluster. An empty field
// clears the existing maintenance policy.
- MaintenancePolicy maintenance_policy = 4;
+ MaintenancePolicy maintenance_policy = 4 [(google.api.field_behavior) = REQUIRED];
// The name (project, location, cluster id) of the cluster to set maintenance
// policy.
@@ -2524,9 +2967,9 @@ message SetMaintenancePolicyRequest {
// ListLocationsRequest is used to request the locations that offer GKE.
message ListLocationsRequest {
- // Contains the name of the resource requested.
+ // Required. Contains the name of the resource requested.
// Specified in the format 'projects/*'.
- string parent = 1;
+ string parent = 1 [(google.api.field_behavior) = REQUIRED];
}
// ListLocationsResponse returns the list of all GKE locations and their
@@ -2588,8 +3031,12 @@ message StatusCondition {
GCE_QUOTA_EXCEEDED = 3;
// Cluster state was manually changed by an SRE due to a system logic error.
- // More codes TBA
SET_BY_OPERATOR = 4;
+
+ // Unable to perform an encrypt operation against the CloudKMS key used for
+ // etcd level encryption.
+ // More codes TBA
+ CLOUD_KMS_KEY_ERROR = 7;
}
// Machine-friendly representation of the condition
@@ -2611,14 +3058,18 @@ message NetworkConfig {
// [subnetwork](/compute/docs/vpc) to which the cluster is connected.
// Example: projects/my-project/regions/us-central1/subnetworks/my-subnet
string subnetwork = 2;
+
+ // Whether Intra-node visibility is enabled for this cluster.
+ // This makes same node pod to pod traffic visible for VPC network.
+ bool enable_intra_node_visibility = 5;
}
// ListUsableSubnetworksRequest requests the list of usable subnetworks.
// available to a user for creating clusters.
message ListUsableSubnetworksRequest {
- // The parent project where subnetworks are usable.
+ // Required. The parent project where subnetworks are usable.
// Specified in the format 'projects/*'.
- string parent = 1;
+ string parent = 1 [(google.api.field_behavior) = REQUIRED];
// Filtering currently only supports equality on the networkProjectId and must
// be in the form: "networkProjectId=[PROJECTID]", where `networkProjectId`
@@ -2717,12 +3168,42 @@ message VerticalPodAutoscaling {
bool enabled = 1;
}
+// IntraNodeVisibilityConfig contains the desired config of the intra-node
+// visibility on this cluster.
+message IntraNodeVisibilityConfig {
+ // Enables intra node visibility for this cluster.
+ bool enabled = 1;
+}
+
// Constraints applied to pods.
message MaxPodsConstraint {
// Constraint enforced on the max num of pods per node.
int64 max_pods_per_node = 1;
}
+// Configuration of etcd encryption.
+message DatabaseEncryption {
+ // State of etcd encryption.
+ enum State {
+ // Should never be set
+ UNKNOWN = 0;
+
+ // Secrets in etcd are encrypted.
+ ENCRYPTED = 1;
+
+ // Secrets in etcd are stored in plain text (at etcd level) - this is
+ // unrelated to Google Compute Engine level full disk encryption.
+ DECRYPTED = 2;
+ }
+
+ // Denotes the state of etcd encryption.
+ State state = 2;
+
+ // Name of CloudKMS key to use for the encryption of secrets in etcd.
+ // Ex. projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-key
+ string key_name = 1;
+}
+
// Configuration for exporting cluster resource usages.
message ResourceUsageExportConfig {
// Parameters for using BigQuery as the destination of resource usage export.
@@ -2731,10 +3212,21 @@ message ResourceUsageExportConfig {
string dataset_id = 1;
}
+ // Parameters for controlling consumption metering.
+ message ConsumptionMeteringConfig {
+ // Whether to enable consumption metering for this cluster. If enabled, a
+ // second BigQuery table will be created to hold resource consumption
+ // records.
+ bool enabled = 1;
+ }
+
// Configuration to use BigQuery as usage export destination.
BigQueryDestination bigquery_destination = 1;
// Whether to enable network egress metering for this cluster. If enabled, a
// daemonset will be created in the cluster to meter network egress traffic.
bool enable_network_egress_metering = 2;
+
+ // Configuration to enable resource consumption metering.
+ ConsumptionMeteringConfig consumption_metering_config = 3;
}
diff --git a/google/container/v1beta1/container_gapic.legacy.yaml b/google/container/v1beta1/container_gapic.legacy.yaml
new file mode 100644
index 00000000..f3e63dd0
--- /dev/null
+++ b/google/container/v1beta1/container_gapic.legacy.yaml
@@ -0,0 +1,551 @@
+type: com.google.api.codegen.ConfigProto
+config_schema_version: 1.0.0
+# The settings of generated code in a specific language.
+language_settings:
+ java:
+ package_name: com.google.cloud.container.v1beta1
+ python:
+ package_name: google.cloud.container_v1beta1.gapic
+ go:
+ package_name: cloud.google.com/go/container/apiv1beta1
+ csharp:
+ package_name: Google.Cloud.Container.V1beta1
+ ruby:
+ package_name: Google::Cloud::Container::V1beta1
+ release_level: BETA
+ php:
+ package_name: Google\Cloud\Container\V1beta1
+ nodejs:
+ package_name: container.v1beta1
+ domain_layer_location: google-cloud
+# A list of API interface configurations.
+interfaces:
+- name: google.container.v1beta1.ClusterManager
+ # A list of resource collection configurations.
+ # Consists of a name_pattern and an entity_name.
+ # The name_pattern is a pattern to describe the names of the resources of this
+ # collection, using the platform's conventions for URI patterns. A generator
+ # may use this to generate methods to compose and decompose such names. The
+ # pattern should use named placeholders as in `shelves/{shelf}/books/{book}`;
+ # those will be taken as hints for the parameter names of the generated
+ # methods. If empty, no name methods are generated.
+ # The entity_name is the name to be used as a basis for generated methods and
+ # classes.
+ collections: []
+ # Definition for smoke test
+ smoke_test:
+ method: ListClusters
+ init_fields:
+ - project_id=$PROJECT_ID
+ - zone="us-central1-a"
+ # Definition for retryable codes.
+ retry_codes_def:
+ - name: idempotent
+ retry_codes:
+ - UNAVAILABLE
+ - DEADLINE_EXCEEDED
+ - name: non_idempotent
+ retry_codes: []
+ # Definition for retry/backoff parameters.
+ retry_params_def:
+ - name: default
+ initial_retry_delay_millis: 100
+ retry_delay_multiplier: 1.3
+ max_retry_delay_millis: 60000
+ initial_rpc_timeout_millis: 20000
+ rpc_timeout_multiplier: 1
+ max_rpc_timeout_millis: 20000
+ total_timeout_millis: 600000
+ # A list of method configurations.
+ # Common properties:
+ # name - The simple name of the method.
+ # flattening - Specifies the configuration for parameter flattening.
+ # Describes the parameter groups for which a generator should produce
+ # method overloads which allow a client to directly pass request message
+ # fields as method parameters. This information may or may not be used,
+ # depending on the target language.
+ # Consists of groups, which each represent a list of parameters to be
+ # flattened. Each parameter listed must be a field of the request
+ # message.
+ # required_fields - Fields that are always required for a request to be
+ # valid.
+ #
+ # resource_name_treatment - An enum that specifies how to treat the
+ # resource name formats defined in the field_name_patterns
+ # and response_field_name_patterns fields.
+ # UNSET: default value
+ # NONE: the collection configs will not be used by the generated code.
+ # VALIDATE: string fields will be validated by the client against the
+ # specified resource name formats.
+ # STATIC_TYPES: the client will use generated types for resource names.
+ # page_streaming - Specifies the configuration for paging.
+ # Describes information for generating a method which transforms a
+ # paging list RPC into a stream of resources.
+ # Consists of a request and a response.
+ # The request specifies request information of the list method. It
+ # defines which fields match the paging pattern in the request. The
+ # request consists of a page_size_field and a token_field. The
+ # page_size_field is the name of the optional field specifying the
+ # maximum number of elements to be returned in the response. The
+ # token_field is the name of the field in the request containing the
+ # page token.
+ # The response specifies response information of the list method. It
+ # defines which fields match the paging pattern in the response. The
+ # response consists of a token_field and a resources_field. The
+ # token_field is the name of the field in the response containing the
+ # next page token. The resources_field is the name of the field in the
+ # response containing the list of resources belonging to the page.
+ # retry_codes_name - Specifies the configuration for retryable codes. The
+ # name must be defined in interfaces.retry_codes_def.
+ # retry_params_name - Specifies the configuration for retry/backoff
+ # parameters. The name must be defined in interfaces.retry_params_def.
+ # field_name_patterns - Maps the field name of the request type to
+ # entity_name of interfaces.collections.
+ # Specifies the string pattern that the field must follow.
+ # timeout_millis - Specifies the default timeout for a non-retrying call. If
+ # the call is retrying, refer to retry_params_name instead.
+ methods:
+ - name: ListClusters
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ required_fields:
+ - project_id
+ - zone
+ retry_codes_name: idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: GetCluster
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ retry_codes_name: idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: CreateCluster
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster
+ required_fields:
+ - project_id
+ - zone
+ - cluster
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: UpdateCluster
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ - update
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - update
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: UpdateNodePool
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - node_pool_id
+ - node_version
+ - image_type
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: SetNodePoolAutoscaling
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - node_pool_id
+ - autoscaling
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: SetLoggingService
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ - logging_service
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - logging_service
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: SetMonitoringService
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ - monitoring_service
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - monitoring_service
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: SetAddonsConfig
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ - addons_config
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - addons_config
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: SetLocations
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ - locations
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - locations
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: UpdateMaster
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ - master_version
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - master_version
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: SetMasterAuth
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - action
+ - update
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: DeleteCluster
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ retry_codes_name: idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: ListOperations
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ required_fields:
+ - project_id
+ - zone
+ retry_codes_name: idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: GetOperation
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - operation_id
+ required_fields:
+ - project_id
+ - zone
+ - operation_id
+ retry_codes_name: idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: CancelOperation
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - operation_id
+ required_fields:
+ - project_id
+ - zone
+ - operation_id
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: GetServerConfig
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ required_fields:
+ - project_id
+ - zone
+ retry_codes_name: idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: ListNodePools
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ retry_codes_name: idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: GetNodePool
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ - node_pool_id
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - node_pool_id
+ retry_codes_name: idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: CreateNodePool
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ - node_pool
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - node_pool
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: DeleteNodePool
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ - node_pool_id
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - node_pool_id
+ retry_codes_name: idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: RollbackNodePoolUpgrade
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ - node_pool_id
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - node_pool_id
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: SetNodePoolManagement
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - node_pool_id
+ - management
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: SetLabels
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - resource_labels
+ - label_fingerprint
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: SetLegacyAbac
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ - enabled
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - enabled
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: StartIPRotation
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: CompleteIPRotation
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: SetNodePoolSize
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - node_pool_id
+ - node_count
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: SetNetworkPolicy
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ - network_policy
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - network_policy
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: SetMaintenancePolicy
+ flattening:
+ groups:
+ - parameters:
+ - project_id
+ - zone
+ - cluster_id
+ - maintenance_policy
+ required_fields:
+ - project_id
+ - zone
+ - cluster_id
+ - maintenance_policy
+ retry_codes_name: non_idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: ListUsableSubnetworks
+ flattening:
+ groups:
+ - parameters:
+ - parent
+ required_fields:
+ - parent
+ page_streaming:
+ request:
+ page_size_field: page_size
+ token_field: page_token
+ response:
+ token_field: next_page_token
+ resources_field: subnetworks
+ retry_codes_name: idempotent
+ retry_params_name: default
+ timeout_millis: 20000
+ - name: ListLocations
+ flattening:
+ groups:
+ - parameters:
+ - parent
+ required_fields:
+ - parent
+ retry_codes_name: idempotent
+ retry_params_name: default
+ timeout_millis: 20000
diff --git a/google/container/v1beta1/container_gapic.yaml b/google/container/v1beta1/container_gapic.yaml
index 20dcd151..725f78bc 100644
--- a/google/container/v1beta1/container_gapic.yaml
+++ b/google/container/v1beta1/container_gapic.yaml
@@ -1,5 +1,5 @@
type: com.google.api.codegen.ConfigProto
-config_schema_version: 1.0.0
+config_schema_version: 2.0.0
# The settings of generated code in a specific language.
language_settings:
java:
@@ -20,533 +20,9 @@ language_settings:
domain_layer_location: google-cloud
# A list of API interface configurations.
interfaces:
- # The fully qualified name of the API interface.
- name: google.container.v1beta1.ClusterManager
- # A list of resource collection configurations.
- # Consists of a name_pattern and an entity_name.
- # The name_pattern is a pattern to describe the names of the resources of this
- # collection, using the platform's conventions for URI patterns. A generator
- # may use this to generate methods to compose and decompose such names. The
- # pattern should use named placeholders as in `shelves/{shelf}/books/{book}`;
- # those will be taken as hints for the parameter names of the generated
- # methods. If empty, no name methods are generated.
- # The entity_name is the name to be used as a basis for generated methods and
- # classes.
- collections: []
- # Definition for smoke test
smoke_test:
method: ListClusters
init_fields:
- project_id=$PROJECT_ID
- zone="us-central1-a"
- # Definition for retryable codes.
- retry_codes_def:
- - name: idempotent
- retry_codes:
- - UNAVAILABLE
- - DEADLINE_EXCEEDED
- - name: non_idempotent
- retry_codes: []
- # Definition for retry/backoff parameters.
- retry_params_def:
- - name: default
- initial_retry_delay_millis: 100
- retry_delay_multiplier: 1.3
- max_retry_delay_millis: 60000
- initial_rpc_timeout_millis: 20000
- rpc_timeout_multiplier: 1
- max_rpc_timeout_millis: 20000
- total_timeout_millis: 600000
- # A list of method configurations.
- # Common properties:
- # name - The simple name of the method.
- # flattening - Specifies the configuration for parameter flattening.
- # Describes the parameter groups for which a generator should produce
- # method overloads which allow a client to directly pass request message
- # fields as method parameters. This information may or may not be used,
- # depending on the target language.
- # Consists of groups, which each represent a list of parameters to be
- # flattened. Each parameter listed must be a field of the request
- # message.
- # required_fields - Fields that are always required for a request to be
- # valid.
- #
- # resource_name_treatment - An enum that specifies how to treat the
- # resource name formats defined in the field_name_patterns
- # and response_field_name_patterns fields.
- # UNSET: default value
- # NONE: the collection configs will not be used by the generated code.
- # VALIDATE: string fields will be validated by the client against the
- # specified resource name formats.
- # STATIC_TYPES: the client will use generated types for resource names.
- # page_streaming - Specifies the configuration for paging.
- # Describes information for generating a method which transforms a
- # paging list RPC into a stream of resources.
- # Consists of a request and a response.
- # The request specifies request information of the list method. It
- # defines which fields match the paging pattern in the request. The
- # request consists of a page_size_field and a token_field. The
- # page_size_field is the name of the optional field specifying the
- # maximum number of elements to be returned in the response. The
- # token_field is the name of the field in the request containing the
- # page token.
- # The response specifies response information of the list method. It
- # defines which fields match the paging pattern in the response. The
- # response consists of a token_field and a resources_field. The
- # token_field is the name of the field in the response containing the
- # next page token. The resources_field is the name of the field in the
- # response containing the list of resources belonging to the page.
- # retry_codes_name - Specifies the configuration for retryable codes. The
- # name must be defined in interfaces.retry_codes_def.
- # retry_params_name - Specifies the configuration for retry/backoff
- # parameters. The name must be defined in interfaces.retry_params_def.
- # field_name_patterns - Maps the field name of the request type to
- # entity_name of interfaces.collections.
- # Specifies the string pattern that the field must follow.
- # timeout_millis - Specifies the default timeout for a non-retrying call. If
- # the call is retrying, refer to retry_params_name instead.
- methods:
- - name: ListClusters
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- required_fields:
- - project_id
- - zone
- retry_codes_name: idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: GetCluster
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- required_fields:
- - project_id
- - zone
- - cluster_id
- retry_codes_name: idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: CreateCluster
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster
- required_fields:
- - project_id
- - zone
- - cluster
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: UpdateCluster
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- - update
- required_fields:
- - project_id
- - zone
- - cluster_id
- - update
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: UpdateNodePool
- required_fields:
- - project_id
- - zone
- - cluster_id
- - node_pool_id
- - node_version
- - image_type
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: SetNodePoolAutoscaling
- required_fields:
- - project_id
- - zone
- - cluster_id
- - node_pool_id
- - autoscaling
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: SetLoggingService
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- - logging_service
- required_fields:
- - project_id
- - zone
- - cluster_id
- - logging_service
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: SetMonitoringService
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- - monitoring_service
- required_fields:
- - project_id
- - zone
- - cluster_id
- - monitoring_service
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: SetAddonsConfig
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- - addons_config
- required_fields:
- - project_id
- - zone
- - cluster_id
- - addons_config
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: SetLocations
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- - locations
- required_fields:
- - project_id
- - zone
- - cluster_id
- - locations
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: UpdateMaster
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- - master_version
- required_fields:
- - project_id
- - zone
- - cluster_id
- - master_version
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: SetMasterAuth
- required_fields:
- - project_id
- - zone
- - cluster_id
- - action
- - update
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: DeleteCluster
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- required_fields:
- - project_id
- - zone
- - cluster_id
- retry_codes_name: idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: ListOperations
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- required_fields:
- - project_id
- - zone
- retry_codes_name: idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: GetOperation
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - operation_id
- required_fields:
- - project_id
- - zone
- - operation_id
- retry_codes_name: idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: CancelOperation
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - operation_id
- required_fields:
- - project_id
- - zone
- - operation_id
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: GetServerConfig
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- required_fields:
- - project_id
- - zone
- retry_codes_name: idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: ListNodePools
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- required_fields:
- - project_id
- - zone
- - cluster_id
- retry_codes_name: idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: GetNodePool
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- - node_pool_id
- required_fields:
- - project_id
- - zone
- - cluster_id
- - node_pool_id
- retry_codes_name: idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: CreateNodePool
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- - node_pool
- required_fields:
- - project_id
- - zone
- - cluster_id
- - node_pool
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: DeleteNodePool
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- - node_pool_id
- required_fields:
- - project_id
- - zone
- - cluster_id
- - node_pool_id
- retry_codes_name: idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: RollbackNodePoolUpgrade
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- - node_pool_id
- required_fields:
- - project_id
- - zone
- - cluster_id
- - node_pool_id
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: SetNodePoolManagement
- required_fields:
- - project_id
- - zone
- - cluster_id
- - node_pool_id
- - management
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: SetLabels
- required_fields:
- - project_id
- - zone
- - cluster_id
- - resource_labels
- - label_fingerprint
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: SetLegacyAbac
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- - enabled
- required_fields:
- - project_id
- - zone
- - cluster_id
- - enabled
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: StartIPRotation
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- required_fields:
- - project_id
- - zone
- - cluster_id
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: CompleteIPRotation
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- required_fields:
- - project_id
- - zone
- - cluster_id
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: SetNodePoolSize
- required_fields:
- - project_id
- - zone
- - cluster_id
- - node_pool_id
- - node_count
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: SetNetworkPolicy
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- - network_policy
- required_fields:
- - project_id
- - zone
- - cluster_id
- - network_policy
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: SetMaintenancePolicy
- flattening:
- groups:
- - parameters:
- - project_id
- - zone
- - cluster_id
- - maintenance_policy
- required_fields:
- - project_id
- - zone
- - cluster_id
- - maintenance_policy
- retry_codes_name: non_idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: ListUsableSubnetworks
- flattening:
- groups:
- - parameters:
- - parent
- required_fields:
- - parent
- page_streaming:
- request:
- page_size_field: page_size
- token_field: page_token
- response:
- token_field: next_page_token
- resources_field: subnetworks
- retry_codes_name: idempotent
- retry_params_name: default
- timeout_millis: 20000
- - name: ListLocations
- flattening:
- groups:
- - parameters:
- - parent
- required_fields:
- - parent
- retry_codes_name: idempotent
- retry_params_name: default
- timeout_millis: 20000
diff --git a/google/container/v1beta1/container_grpc_service_config.json b/google/container/v1beta1/container_grpc_service_config.json
new file mode 100755
index 00000000..38dbefdb
--- /dev/null
+++ b/google/container/v1beta1/container_grpc_service_config.json
@@ -0,0 +1,152 @@
+{
+ "methodConfig": [
+ {
+ "name": [
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "ListClusters"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "GetCluster"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "DeleteCluster"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "ListOperations"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "GetOperation"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "GetServerConfig"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "ListNodePools"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "GetNodePool"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "DeleteNodePool"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "ListUsableSubnetworks"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "ListLocations"
+ }
+ ],
+ "timeout": "20s",
+ "retryPolicy": {
+ "maxAttempts": 5,
+ "initialBackoff": "0.100s",
+ "maxBackoff": "60s",
+ "backoffMultiplier": 1.3,
+ "retryableStatusCodes": [
+ "UNAVAILABLE",
+ "DEADLINE_EXCEEDED"
+ ]
+ }
+ },
+ {
+ "name": [
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "CreateCluster"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "UpdateCluster"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "UpdateNodePool"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "SetNodePoolAutoscaling"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "SetLoggingService"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "SetMonitoringService"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "SetAddonsConfig"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "SetLocations"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "UpdateMaster"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "SetMasterAuth"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "CancelOperation"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "CreateNodePool"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "RollbackNodePoolUpgrade"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "SetNodePoolManagement"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "SetLabels"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "SetLegacyAbac"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "StartIPRotation"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "CompleteIPRotation"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "SetNodePoolSize"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "SetNetworkPolicy"
+ },
+ {
+ "service": "google.container.v1beta1.ClusterManager",
+ "method": "SetMaintenancePolicy"
+ }
+ ],
+ "timeout": "45s"
+ }
+ ]
+}
diff --git a/google/container/v1beta1/container_v1beta1.yaml b/google/container/v1beta1/container_v1beta1.yaml
new file mode 100644
index 00000000..ca2ecfa0
--- /dev/null
+++ b/google/container/v1beta1/container_v1beta1.yaml
@@ -0,0 +1,24 @@
+type: google.api.Service
+config_version: 3
+name: container.googleapis.com
+title: Kubernetes Engine API
+
+apis:
+- name: google.container.v1beta1.ClusterManager
+
+documentation:
+ summary: |-
+ Builds and manages container-based applications, powered by the open source
+ Kubernetes technology.
+
+backend:
+ rules:
+ - selector: 'google.container.v1beta1.ClusterManager.*'
+ deadline: 20.0
+
+authentication:
+ rules:
+ - selector: 'google.container.v1beta1.ClusterManager.*'
+ oauth:
+ canonical_scopes: |-
+ https://www.googleapis.com/auth/cloud-platform