chore: regens API reference docs (#889)

diff --git a/docs/dyn/container_v1beta1.projects.zones.clusters.nodePools.html b/docs/dyn/container_v1beta1.projects.zones.clusters.nodePools.html
index b7e50b5..e3e88a7 100644
--- a/docs/dyn/container_v1beta1.projects.zones.clusters.nodePools.html
+++ b/docs/dyn/container_v1beta1.projects.zones.clusters.nodePools.html
@@ -75,10 +75,10 @@
 <h1><a href="container_v1beta1.html">Kubernetes Engine API</a> . <a href="container_v1beta1.projects.html">projects</a> . <a href="container_v1beta1.projects.zones.html">zones</a> . <a href="container_v1beta1.projects.zones.clusters.html">clusters</a> . <a href="container_v1beta1.projects.zones.clusters.nodePools.html">nodePools</a></h1>
 <h2>Instance Methods</h2>
 <p class="toc_element">
-  <code><a href="#autoscaling">autoscaling(projectId, zone, clusterId, nodePoolId, body, x__xgafv=None)</a></code></p>
+  <code><a href="#autoscaling">autoscaling(projectId, zone, clusterId, nodePoolId, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Sets the autoscaling settings of a specific node pool.</p>
 <p class="toc_element">
-  <code><a href="#create">create(projectId, zone, clusterId, body, x__xgafv=None)</a></code></p>
+  <code><a href="#create">create(projectId, zone, clusterId, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Creates a node pool for a cluster.</p>
 <p class="toc_element">
   <code><a href="#delete">delete(projectId, zone, clusterId, nodePoolId, name=None, x__xgafv=None)</a></code></p>
@@ -90,60 +90,60 @@
   <code><a href="#list">list(projectId, zone, clusterId, parent=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Lists the node pools for a cluster.</p>
 <p class="toc_element">
-  <code><a href="#rollback">rollback(projectId, zone, clusterId, nodePoolId, body, x__xgafv=None)</a></code></p>
+  <code><a href="#rollback">rollback(projectId, zone, clusterId, nodePoolId, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Rolls back a previously Aborted or Failed NodePool upgrade.</p>
 <p class="toc_element">
-  <code><a href="#setManagement">setManagement(projectId, zone, clusterId, nodePoolId, body, x__xgafv=None)</a></code></p>
+  <code><a href="#setManagement">setManagement(projectId, zone, clusterId, nodePoolId, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Sets the NodeManagement options for a node pool.</p>
 <p class="toc_element">
-  <code><a href="#setSize">setSize(projectId, zone, clusterId, nodePoolId, body, x__xgafv=None)</a></code></p>
+  <code><a href="#setSize">setSize(projectId, zone, clusterId, nodePoolId, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Sets the size for a specific node pool.</p>
 <p class="toc_element">
-  <code><a href="#update">update(projectId, zone, clusterId, nodePoolId, body, x__xgafv=None)</a></code></p>
+  <code><a href="#update">update(projectId, zone, clusterId, nodePoolId, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Updates the version and/or image type of a specific node pool.</p>
 <h3>Method Details</h3>
 <div class="method">
-    <code class="details" id="autoscaling">autoscaling(projectId, zone, clusterId, nodePoolId, body, x__xgafv=None)</code>
+    <code class="details" id="autoscaling">autoscaling(projectId, zone, clusterId, nodePoolId, body=None, x__xgafv=None)</code>
   <pre>Sets the autoscaling settings of a specific node pool.
 
 Args:
-  projectId: string, Deprecated. The Google Developers Console [project ID or project
+  projectId: string, 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. (required)
-  zone: string, Deprecated. The name of the Google Compute Engine
-[zone](/compute/docs/zones#available) in which the cluster
-resides.
+  zone: string, Required. Deprecated. The name of the Google Compute Engine
+[zone](https://cloud.google.com/compute/docs/zones#available) in which the
+cluster resides. This field has been deprecated and replaced by the name
+field. (required)
+  clusterId: string, Required. Deprecated. The name of the cluster to upgrade.
 This field has been deprecated and replaced by the name field. (required)
-  clusterId: string, Deprecated. The name of the cluster to upgrade.
+  nodePoolId: string, Required. Deprecated. The name of the node pool to upgrade.
 This field has been deprecated and replaced by the name field. (required)
-  nodePoolId: string, Deprecated. The name of the node pool to upgrade.
-This field has been deprecated and replaced by the name field. (required)
-  body: object, The request body. (required)
+  body: object, The request body.
     The object takes the form of:
 
 { # SetNodePoolAutoscalingRequest sets the autoscaler settings of a node pool.
     "name": "A String", # The name (project, location, cluster, node pool) of the node pool to set
         # autoscaler settings. Specified in the format
         # 'projects/*/locations/*/clusters/*/nodePools/*'.
-    "zone": "A String", # 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.
-    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+    "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
+        # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+        # cluster resides. This field has been deprecated and replaced by the name
+        # field.
+    "projectId": "A String", # 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.
-    "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaling configuration for the node pool.
+    "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Required. Autoscaling configuration for the node pool.
         # adjust the size of the node pool to the current cluster usage.
-      "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
+      "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be &gt;= 1 and &lt;=
           # max_node_count.
       "autoprovisioned": True or False, # Can this node pool be deleted automatically.
       "enabled": True or False, # Is autoscaling enabled for this node pool.
-      "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
+      "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be &gt;= min_node_count. There
           # has to enough quota to scale up the cluster.
     },
-    "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
+    "clusterId": "A String", # Required. Deprecated. The name of the cluster to upgrade.
         # This field has been deprecated and replaced by the name field.
-    "nodePoolId": "A String", # Deprecated. The name of the node pool to upgrade.
+    "nodePoolId": "A String", # Required. Deprecated. The name of the node pool to upgrade.
         # This field has been deprecated and replaced by the name field.
   }
 
@@ -158,20 +158,13 @@
     { # This operation resource represents operations that may have happened or are
       # happening on the cluster. All fields are output only.
     "status": "A String", # The current status of the operation.
+    "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
     "endTime": "A String", # [Output only] The time the operation completed, in
         # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
     "name": "A String", # The server-assigned ID for the operation.
     "zone": "A String", # The name of the Google Compute Engine
-        # [zone](/compute/docs/zones#available) in which the operation
-        # is taking place.
-        # This field is deprecated, use location instead.
-    "location": "A String", # [Output only] The name of the Google Compute Engine
-        # [zone](/compute/docs/regions-zones/regions-zones#available) or
-        # [region](/compute/docs/regions-zones/regions-zones#available) in which
-        # the cluster resides.
-    "startTime": "A String", # [Output only] The time the operation started, in
-        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
-    "detail": "A String", # Detailed operation progress, if available.
+        # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+        # operation is taking place. This field is deprecated, use location instead.
     "clusterConditions": [ # Which conditions caused the current cluster state.
       { # StatusCondition describes why a cluster or a node pool has a certain status
           # (e.g., ERROR or DEGRADED).
@@ -179,9 +172,12 @@
         "code": "A String", # Machine-friendly representation of the condition
       },
     ],
-    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
+    "startTime": "A String", # [Output only] The time the operation started, in
+        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+    "detail": "A String", # Detailed operation progress, if available.
+    "targetLink": "A String", # Server-defined URL for the target of the operation.
     "operationType": "A String", # The operation type.
-    "progress": { # Information about operation (or operation stage) progress. # [Output only] Progress information for an operation.
+    "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
       "status": "A String", # Status of an operation stage.
           # Unset for single-stage operations.
       "metrics": [ # Progress metric bundle, for example:
@@ -193,8 +189,7 @@
         { # Progress metric is (string, int|float|string) pair.
           "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
           "intValue": "A String", # For metrics with integer value.
-          "name": "A String", # Metric name, required.
-              # e.g., "nodes total", "percent done"
+          "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
           "doubleValue": 3.14, # For metrics with floating point value.
         },
       ],
@@ -212,48 +207,50 @@
       },
     ],
     "selfLink": "A String", # Server-defined URL for the resource.
-    "targetLink": "A String", # Server-defined URL for the target of the operation.
+    "location": "A String", # [Output only] The name of the Google Compute Engine
+        # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+        # or
+        # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+        # in which the cluster resides.
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="create">create(projectId, zone, clusterId, body, x__xgafv=None)</code>
+    <code class="details" id="create">create(projectId, zone, clusterId, body=None, x__xgafv=None)</code>
   <pre>Creates a node pool for a cluster.
 
 Args:
-  projectId: string, Deprecated. The Google Developers Console [project ID or project
+  projectId: string, 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. (required)
-  zone: string, Deprecated. The name of the Google Compute Engine
-[zone](/compute/docs/zones#available) in which the cluster
-resides.
+  zone: string, Required. Deprecated. The name of the Google Compute Engine
+[zone](https://cloud.google.com/compute/docs/zones#available) in which the
+cluster resides. This field has been deprecated and replaced by the parent
+field. (required)
+  clusterId: string, Required. Deprecated. The name of the cluster.
 This field has been deprecated and replaced by the parent field. (required)
-  clusterId: string, Deprecated. The name of the cluster.
-This field has been deprecated and replaced by the parent field. (required)
-  body: object, The request body. (required)
+  body: object, The request body.
     The object takes the form of:
 
 { # CreateNodePoolRequest creates a node pool for a cluster.
     "parent": "A String", # The parent (project, location, cluster id) where the node pool will be
         # created. Specified in the format
         # 'projects/*/locations/*/clusters/*'.
-    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+    "projectId": "A String", # 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.
-    "clusterId": "A String", # Deprecated. The name of the cluster.
+    "clusterId": "A String", # Required. Deprecated. The name of the cluster.
         # This field has been deprecated and replaced by the parent field.
-    "nodePool": { # NodePool contains the name and configuration for a cluster's node pool. # The node pool to create.
+    "nodePool": { # NodePool contains the name and configuration for a cluster's node pool. # Required. The node pool to create.
         # Node pools are a set of nodes (i.e. VM's), with a common configuration and
         # specification, under the control of the cluster master. They may have a set
         # of Kubernetes labels applied to them, which may be used to reference them
         # during pod scheduling. They may also be resized up or down, to accommodate
         # the workload.
       "status": "A String", # [Output only] The status of the nodes in this pool instance.
-      "statusMessage": "A String", # [Output only] Additional information about the current status of this
-          # node pool instance, if available.
+      "selfLink": "A String", # [Output only] Server-defined URL for the resource.
       "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
           # node pool.
-        "autoRepair": True or False, # Whether the nodes will be automatically repaired.
         "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
             # the Auto Upgrades will proceed.
           "description": "A String", # [Output only] This field is set when upgrades are about to commence
@@ -262,26 +259,30 @@
               # with the approximate start time for the upgrades, in
               # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
         },
+        "autoRepair": True or False, # Whether the nodes will be automatically repaired.
         "autoUpgrade": True or False, # Whether the nodes will be automatically upgraded.
       },
       "name": "A String", # The name of the node pool.
-      "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
-          # groups](/compute/docs/instance-groups/creating-groups-of-managed-instances)
-          # associated with this node pool.
-        "A String",
+      "conditions": [ # Which conditions caused the current node pool state.
+        { # StatusCondition describes why a cluster or a node pool has a certain status
+            # (e.g., ERROR or DEGRADED).
+          "message": "A String", # Human-friendly representation of the condition
+          "code": "A String", # Machine-friendly representation of the condition
+        },
       ],
       "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
           # only if a valid configuration is present.
           # adjust the size of the node pool to the current cluster usage.
-        "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
+        "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be &gt;= 1 and &lt;=
             # max_node_count.
         "autoprovisioned": True or False, # Can this node pool be deleted automatically.
         "enabled": True or False, # Is autoscaling enabled for this node pool.
-        "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
+        "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be &gt;= min_node_count. There
             # has to enough quota to scale up the cluster.
       },
-      "locations": [ # The list of Google Compute Engine [zones](/compute/docs/zones#available)
-          # in which the NodePool's nodes should be located.
+      "locations": [ # The list of Google Compute Engine
+          # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+          # NodePool's nodes should be located.
         "A String",
       ],
       "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
@@ -289,17 +290,66 @@
         "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
       },
       "version": "A String", # The version of the Kubernetes of this node.
+      "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
+          # disruption caused by an upgrade.
+          #
+          # maxUnavailable controls the number of nodes that can be simultaneously
+          # unavailable.
+          #
+          # maxSurge controls the number of additional nodes that can be added to the
+          # node pool temporarily for the time of the upgrade to increase the number of
+          # available nodes.
+          #
+          # (maxUnavailable + maxSurge) determines the level of parallelism (how many
+          # nodes are being upgraded at the same time).
+          #
+          # Note: upgrades inevitably introduce some disruption since workloads need to
+          # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
+          # this holds true. (Disruption stays within the limits of
+          # PodDisruptionBudget, if it is configured.)
+          #
+          # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
+          # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
+          # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
+          # down 3 old (not yet upgraded) nodes at the same time. This ensures that
+          # there are always at least 4 nodes available.
+        "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
+            # of the node pool during the upgrade process.
+        "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
+            # the upgrade process. A node is considered available if its status is
+            # Ready.
+      },
       "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
-          # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
+          # Compute Engine &lt;a href="/compute/docs/resource-quotas"&gt;resource quota&lt;/a&gt;
           # is sufficient for this number of instances. You must also have available
           # firewall and routes quota.
       "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
+      "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
+          # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
+          # associated with this node pool.
+        "A String",
+      ],
       "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
+        "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
+            # the specified [Zonal Compute
+            # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
+            # to this node pool.
+            # is the configuration of desired reservation which instances could take
+            # capacity from.
+          "values": [ # Corresponds to the label value(s) of reservation resource(s).
+            "A String",
+          ],
+          "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
+          "key": "A String", # Corresponds to the label key of a reservation resource. To target a
+              # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
+              # the key and specify the name of your reservation as its value.
+        },
         "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
+          "type": "A String", # Type of the sandbox to use for the node.
           "sandboxType": "A String", # Type of the sandbox to use for the node (e.g. 'gvisor')
         },
         "machineType": "A String", # The name of a Google Compute Engine [machine
-            # type](/compute/docs/machine-types) (e.g.
+            # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
             # `n1-standard-1`).
             #
             # If unspecified, the default machine type is
@@ -339,8 +389,9 @@
             # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
           "a_key": "A String",
         },
-        "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
-            # no Service Account is specified, the "default" service account is used.
+        "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
+            # Specify the email address of the Service Account; otherwise, if no Service
+            # Account is specified, the "default" service account is used.
         "oauthScopes": [ # The set of Google API scopes to be made available on all of the
             # node VMs under the "default" service account.
             #
@@ -351,7 +402,8 @@
             # persistent storage on your nodes.
             # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
             # communicating with **gcr.io**
-            # (the [Google Container Registry](/container-registry/)).
+            # (the [Google Container
+            # Registry](https://cloud.google.com/container-registry/)).
             #
             # If unspecified, no scopes are added, unless Cloud Logging or Cloud
             # Monitoring are enabled, in which case their required scopes will be added.
@@ -366,13 +418,15 @@
               #
               # For more information, including usage and the valid values, see:
               # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
+            "value": "A String", # Value for taint.
             "key": "A String", # Key for taint.
             "effect": "A String", # Effect for taint.
-            "value": "A String", # Value for taint.
           },
         ],
         "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
             # workloads on the node pool.
+          "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
+              # on the node pool.
           "nodeMetadata": "A String", # NodeMetadata is the configuration for how to expose metadata to the
               # workloads running on the node.
         },
@@ -386,21 +440,28 @@
           { # AcceleratorConfig represents a Hardware Accelerator request.
             "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
             "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
-                # [here](/compute/docs/gpus/#Introduction)
+                # [here](https://cloud.google.com/compute/docs/gpus)
           },
         ],
         "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
             # scheduled on the specified or newer CPU platform. Applicable values are the
             # friendly names of CPU platforms, such as
-            # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
-            # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
+            # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
+            # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
             # information, read [how to specify min CPU
             # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
+        "bootDiskKmsKey": "A String", #
+            # The Customer Managed Encryption Key used to encrypt the boot disk attached
+            # to each node in the node pool. This should be of the form
+            # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
+            # For more information about protecting resources with Cloud KMS Keys please
+            # see:
+            # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
         "localSsdCount": 42, # 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.
         "imageType": "A String", # The image type to use for this node. Note that for a given image type,
             # the latest version of it will be used.
@@ -417,6 +478,7 @@
             #  "containerd-configure-sh"
             #  "enable-oslogin"
             #  "gci-ensure-gke-docker"
+            #  "gci-metrics-enabled"
             #  "gci-update-strategy"
             #  "instance-template"
             #  "kube-env"
@@ -437,19 +499,13 @@
           "a_key": "A String",
         },
       },
-      "conditions": [ # Which conditions caused the current node pool state.
-        { # StatusCondition describes why a cluster or a node pool has a certain status
-            # (e.g., ERROR or DEGRADED).
-          "message": "A String", # Human-friendly representation of the condition
-          "code": "A String", # Machine-friendly representation of the condition
-        },
-      ],
-      "selfLink": "A String", # [Output only] Server-defined URL for the resource.
+      "statusMessage": "A String", # [Output only] Additional information about the current status of this
+          # node pool instance, if available.
     },
-    "zone": "A String", # 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.
+    "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
+        # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+        # cluster resides. This field has been deprecated and replaced by the parent
+        # field.
   }
 
   x__xgafv: string, V1 error format.
@@ -463,20 +519,13 @@
     { # This operation resource represents operations that may have happened or are
       # happening on the cluster. All fields are output only.
     "status": "A String", # The current status of the operation.
+    "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
     "endTime": "A String", # [Output only] The time the operation completed, in
         # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
     "name": "A String", # The server-assigned ID for the operation.
     "zone": "A String", # The name of the Google Compute Engine
-        # [zone](/compute/docs/zones#available) in which the operation
-        # is taking place.
-        # This field is deprecated, use location instead.
-    "location": "A String", # [Output only] The name of the Google Compute Engine
-        # [zone](/compute/docs/regions-zones/regions-zones#available) or
-        # [region](/compute/docs/regions-zones/regions-zones#available) in which
-        # the cluster resides.
-    "startTime": "A String", # [Output only] The time the operation started, in
-        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
-    "detail": "A String", # Detailed operation progress, if available.
+        # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+        # operation is taking place. This field is deprecated, use location instead.
     "clusterConditions": [ # Which conditions caused the current cluster state.
       { # StatusCondition describes why a cluster or a node pool has a certain status
           # (e.g., ERROR or DEGRADED).
@@ -484,9 +533,12 @@
         "code": "A String", # Machine-friendly representation of the condition
       },
     ],
-    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
+    "startTime": "A String", # [Output only] The time the operation started, in
+        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+    "detail": "A String", # Detailed operation progress, if available.
+    "targetLink": "A String", # Server-defined URL for the target of the operation.
     "operationType": "A String", # The operation type.
-    "progress": { # Information about operation (or operation stage) progress. # [Output only] Progress information for an operation.
+    "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
       "status": "A String", # Status of an operation stage.
           # Unset for single-stage operations.
       "metrics": [ # Progress metric bundle, for example:
@@ -498,8 +550,7 @@
         { # Progress metric is (string, int|float|string) pair.
           "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
           "intValue": "A String", # For metrics with integer value.
-          "name": "A String", # Metric name, required.
-              # e.g., "nodes total", "percent done"
+          "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
           "doubleValue": 3.14, # For metrics with floating point value.
         },
       ],
@@ -517,7 +568,11 @@
       },
     ],
     "selfLink": "A String", # Server-defined URL for the resource.
-    "targetLink": "A String", # Server-defined URL for the target of the operation.
+    "location": "A String", # [Output only] The name of the Google Compute Engine
+        # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+        # or
+        # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+        # in which the cluster resides.
   }</pre>
 </div>
 
@@ -526,16 +581,16 @@
   <pre>Deletes a node pool from a cluster.
 
 Args:
-  projectId: string, Deprecated. The Google Developers Console [project ID or project
+  projectId: string, 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. (required)
-  zone: string, Deprecated. The name of the Google Compute Engine
-[zone](/compute/docs/zones#available) in which the cluster
-resides.
+  zone: string, Required. Deprecated. The name of the Google Compute Engine
+[zone](https://cloud.google.com/compute/docs/zones#available) in which the
+cluster resides. This field has been deprecated and replaced by the name
+field. (required)
+  clusterId: string, Required. Deprecated. The name of the cluster.
 This field has been deprecated and replaced by the name field. (required)
-  clusterId: string, Deprecated. The name of the cluster.
-This field has been deprecated and replaced by the name field. (required)
-  nodePoolId: string, Deprecated. The name of the node pool to delete.
+  nodePoolId: string, Required. Deprecated. The name of the node pool to delete.
 This field has been deprecated and replaced by the name field. (required)
   name: string, The name (project, location, cluster, node pool id) of the node pool to
 delete. Specified in the format
@@ -551,20 +606,13 @@
     { # This operation resource represents operations that may have happened or are
       # happening on the cluster. All fields are output only.
     "status": "A String", # The current status of the operation.
+    "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
     "endTime": "A String", # [Output only] The time the operation completed, in
         # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
     "name": "A String", # The server-assigned ID for the operation.
     "zone": "A String", # The name of the Google Compute Engine
-        # [zone](/compute/docs/zones#available) in which the operation
-        # is taking place.
-        # This field is deprecated, use location instead.
-    "location": "A String", # [Output only] The name of the Google Compute Engine
-        # [zone](/compute/docs/regions-zones/regions-zones#available) or
-        # [region](/compute/docs/regions-zones/regions-zones#available) in which
-        # the cluster resides.
-    "startTime": "A String", # [Output only] The time the operation started, in
-        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
-    "detail": "A String", # Detailed operation progress, if available.
+        # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+        # operation is taking place. This field is deprecated, use location instead.
     "clusterConditions": [ # Which conditions caused the current cluster state.
       { # StatusCondition describes why a cluster or a node pool has a certain status
           # (e.g., ERROR or DEGRADED).
@@ -572,9 +620,12 @@
         "code": "A String", # Machine-friendly representation of the condition
       },
     ],
-    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
+    "startTime": "A String", # [Output only] The time the operation started, in
+        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+    "detail": "A String", # Detailed operation progress, if available.
+    "targetLink": "A String", # Server-defined URL for the target of the operation.
     "operationType": "A String", # The operation type.
-    "progress": { # Information about operation (or operation stage) progress. # [Output only] Progress information for an operation.
+    "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
       "status": "A String", # Status of an operation stage.
           # Unset for single-stage operations.
       "metrics": [ # Progress metric bundle, for example:
@@ -586,8 +637,7 @@
         { # Progress metric is (string, int|float|string) pair.
           "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
           "intValue": "A String", # For metrics with integer value.
-          "name": "A String", # Metric name, required.
-              # e.g., "nodes total", "percent done"
+          "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
           "doubleValue": 3.14, # For metrics with floating point value.
         },
       ],
@@ -605,7 +655,11 @@
       },
     ],
     "selfLink": "A String", # Server-defined URL for the resource.
-    "targetLink": "A String", # Server-defined URL for the target of the operation.
+    "location": "A String", # [Output only] The name of the Google Compute Engine
+        # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+        # or
+        # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+        # in which the cluster resides.
   }</pre>
 </div>
 
@@ -614,16 +668,16 @@
   <pre>Retrieves the requested node pool.
 
 Args:
-  projectId: string, Deprecated. The Google Developers Console [project ID or project
+  projectId: string, 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. (required)
-  zone: string, Deprecated. The name of the Google Compute Engine
-[zone](/compute/docs/zones#available) in which the cluster
-resides.
+  zone: string, Required. Deprecated. The name of the Google Compute Engine
+[zone](https://cloud.google.com/compute/docs/zones#available) in which the
+cluster resides. This field has been deprecated and replaced by the name
+field. (required)
+  clusterId: string, Required. Deprecated. The name of the cluster.
 This field has been deprecated and replaced by the name field. (required)
-  clusterId: string, Deprecated. The name of the cluster.
-This field has been deprecated and replaced by the name field. (required)
-  nodePoolId: string, Deprecated. The name of the node pool.
+  nodePoolId: string, Required. Deprecated. The name of the node pool.
 This field has been deprecated and replaced by the name field. (required)
   name: string, The name (project, location, cluster, node pool id) of the node pool to
 get. Specified in the format
@@ -643,11 +697,9 @@
       # during pod scheduling. They may also be resized up or down, to accommodate
       # the workload.
     "status": "A String", # [Output only] The status of the nodes in this pool instance.
-    "statusMessage": "A String", # [Output only] Additional information about the current status of this
-        # node pool instance, if available.
+    "selfLink": "A String", # [Output only] Server-defined URL for the resource.
     "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
         # node pool.
-      "autoRepair": True or False, # Whether the nodes will be automatically repaired.
       "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
           # the Auto Upgrades will proceed.
         "description": "A String", # [Output only] This field is set when upgrades are about to commence
@@ -656,26 +708,30 @@
             # with the approximate start time for the upgrades, in
             # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
       },
+      "autoRepair": True or False, # Whether the nodes will be automatically repaired.
       "autoUpgrade": True or False, # Whether the nodes will be automatically upgraded.
     },
     "name": "A String", # The name of the node pool.
-    "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
-        # groups](/compute/docs/instance-groups/creating-groups-of-managed-instances)
-        # associated with this node pool.
-      "A String",
+    "conditions": [ # Which conditions caused the current node pool state.
+      { # StatusCondition describes why a cluster or a node pool has a certain status
+          # (e.g., ERROR or DEGRADED).
+        "message": "A String", # Human-friendly representation of the condition
+        "code": "A String", # Machine-friendly representation of the condition
+      },
     ],
     "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
         # only if a valid configuration is present.
         # adjust the size of the node pool to the current cluster usage.
-      "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
+      "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be &gt;= 1 and &lt;=
           # max_node_count.
       "autoprovisioned": True or False, # Can this node pool be deleted automatically.
       "enabled": True or False, # Is autoscaling enabled for this node pool.
-      "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
+      "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be &gt;= min_node_count. There
           # has to enough quota to scale up the cluster.
     },
-    "locations": [ # The list of Google Compute Engine [zones](/compute/docs/zones#available)
-        # in which the NodePool's nodes should be located.
+    "locations": [ # The list of Google Compute Engine
+        # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+        # NodePool's nodes should be located.
       "A String",
     ],
     "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
@@ -683,17 +739,66 @@
       "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
     },
     "version": "A String", # The version of the Kubernetes of this node.
+    "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
+        # disruption caused by an upgrade.
+        #
+        # maxUnavailable controls the number of nodes that can be simultaneously
+        # unavailable.
+        #
+        # maxSurge controls the number of additional nodes that can be added to the
+        # node pool temporarily for the time of the upgrade to increase the number of
+        # available nodes.
+        #
+        # (maxUnavailable + maxSurge) determines the level of parallelism (how many
+        # nodes are being upgraded at the same time).
+        #
+        # Note: upgrades inevitably introduce some disruption since workloads need to
+        # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
+        # this holds true. (Disruption stays within the limits of
+        # PodDisruptionBudget, if it is configured.)
+        #
+        # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
+        # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
+        # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
+        # down 3 old (not yet upgraded) nodes at the same time. This ensures that
+        # there are always at least 4 nodes available.
+      "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
+          # of the node pool during the upgrade process.
+      "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
+          # the upgrade process. A node is considered available if its status is
+          # Ready.
+    },
     "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
-        # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
+        # Compute Engine &lt;a href="/compute/docs/resource-quotas"&gt;resource quota&lt;/a&gt;
         # is sufficient for this number of instances. You must also have available
         # firewall and routes quota.
     "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
+    "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
+        # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
+        # associated with this node pool.
+      "A String",
+    ],
     "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
+      "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
+          # the specified [Zonal Compute
+          # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
+          # to this node pool.
+          # is the configuration of desired reservation which instances could take
+          # capacity from.
+        "values": [ # Corresponds to the label value(s) of reservation resource(s).
+          "A String",
+        ],
+        "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
+        "key": "A String", # Corresponds to the label key of a reservation resource. To target a
+            # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
+            # the key and specify the name of your reservation as its value.
+      },
       "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
+        "type": "A String", # Type of the sandbox to use for the node.
         "sandboxType": "A String", # Type of the sandbox to use for the node (e.g. 'gvisor')
       },
       "machineType": "A String", # The name of a Google Compute Engine [machine
-          # type](/compute/docs/machine-types) (e.g.
+          # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
           # `n1-standard-1`).
           #
           # If unspecified, the default machine type is
@@ -733,8 +838,9 @@
           # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
         "a_key": "A String",
       },
-      "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
-          # no Service Account is specified, the "default" service account is used.
+      "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
+          # Specify the email address of the Service Account; otherwise, if no Service
+          # Account is specified, the "default" service account is used.
       "oauthScopes": [ # The set of Google API scopes to be made available on all of the
           # node VMs under the "default" service account.
           #
@@ -745,7 +851,8 @@
           # persistent storage on your nodes.
           # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
           # communicating with **gcr.io**
-          # (the [Google Container Registry](/container-registry/)).
+          # (the [Google Container
+          # Registry](https://cloud.google.com/container-registry/)).
           #
           # If unspecified, no scopes are added, unless Cloud Logging or Cloud
           # Monitoring are enabled, in which case their required scopes will be added.
@@ -760,13 +867,15 @@
             #
             # For more information, including usage and the valid values, see:
             # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
+          "value": "A String", # Value for taint.
           "key": "A String", # Key for taint.
           "effect": "A String", # Effect for taint.
-          "value": "A String", # Value for taint.
         },
       ],
       "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
           # workloads on the node pool.
+        "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
+            # on the node pool.
         "nodeMetadata": "A String", # NodeMetadata is the configuration for how to expose metadata to the
             # workloads running on the node.
       },
@@ -780,21 +889,28 @@
         { # AcceleratorConfig represents a Hardware Accelerator request.
           "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
           "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
-              # [here](/compute/docs/gpus/#Introduction)
+              # [here](https://cloud.google.com/compute/docs/gpus)
         },
       ],
       "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
           # scheduled on the specified or newer CPU platform. Applicable values are the
           # friendly names of CPU platforms, such as
-          # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
-          # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
+          # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
+          # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
           # information, read [how to specify min CPU
           # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
+      "bootDiskKmsKey": "A String", #
+          # The Customer Managed Encryption Key used to encrypt the boot disk attached
+          # to each node in the node pool. This should be of the form
+          # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
+          # For more information about protecting resources with Cloud KMS Keys please
+          # see:
+          # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
       "localSsdCount": 42, # 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.
       "imageType": "A String", # The image type to use for this node. Note that for a given image type,
           # the latest version of it will be used.
@@ -811,6 +927,7 @@
           #  "containerd-configure-sh"
           #  "enable-oslogin"
           #  "gci-ensure-gke-docker"
+          #  "gci-metrics-enabled"
           #  "gci-update-strategy"
           #  "instance-template"
           #  "kube-env"
@@ -831,14 +948,8 @@
         "a_key": "A String",
       },
     },
-    "conditions": [ # Which conditions caused the current node pool state.
-      { # StatusCondition describes why a cluster or a node pool has a certain status
-          # (e.g., ERROR or DEGRADED).
-        "message": "A String", # Human-friendly representation of the condition
-        "code": "A String", # Machine-friendly representation of the condition
-      },
-    ],
-    "selfLink": "A String", # [Output only] Server-defined URL for the resource.
+    "statusMessage": "A String", # [Output only] Additional information about the current status of this
+        # node pool instance, if available.
   }</pre>
 </div>
 
@@ -847,14 +958,14 @@
   <pre>Lists the node pools for a cluster.
 
 Args:
-  projectId: string, Deprecated. The Google Developers Console [project ID or project
+  projectId: string, 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. (required)
-  zone: string, 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. (required)
-  clusterId: string, Deprecated. The name of the cluster.
+  zone: string, Required. Deprecated. The name of the Google Compute Engine
+[zone](https://cloud.google.com/compute/docs/zones#available) in which the
+cluster resides. This field has been deprecated and replaced by the parent
+field. (required)
+  clusterId: string, Required. Deprecated. The name of the cluster.
 This field has been deprecated and replaced by the parent field. (required)
   parent: string, The parent (project, location, cluster id) where the node pools will be
 listed. Specified in the format 'projects/*/locations/*/clusters/*'.
@@ -875,11 +986,9 @@
           # during pod scheduling. They may also be resized up or down, to accommodate
           # the workload.
         "status": "A String", # [Output only] The status of the nodes in this pool instance.
-        "statusMessage": "A String", # [Output only] Additional information about the current status of this
-            # node pool instance, if available.
+        "selfLink": "A String", # [Output only] Server-defined URL for the resource.
         "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for this NodePool.
             # node pool.
-          "autoRepair": True or False, # Whether the nodes will be automatically repaired.
           "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
               # the Auto Upgrades will proceed.
             "description": "A String", # [Output only] This field is set when upgrades are about to commence
@@ -888,26 +997,30 @@
                 # with the approximate start time for the upgrades, in
                 # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
           },
+          "autoRepair": True or False, # Whether the nodes will be automatically repaired.
           "autoUpgrade": True or False, # Whether the nodes will be automatically upgraded.
         },
         "name": "A String", # The name of the node pool.
-        "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
-            # groups](/compute/docs/instance-groups/creating-groups-of-managed-instances)
-            # associated with this node pool.
-          "A String",
+        "conditions": [ # Which conditions caused the current node pool state.
+          { # StatusCondition describes why a cluster or a node pool has a certain status
+              # (e.g., ERROR or DEGRADED).
+            "message": "A String", # Human-friendly representation of the condition
+            "code": "A String", # Machine-friendly representation of the condition
+          },
         ],
         "autoscaling": { # NodePoolAutoscaling contains information required by cluster autoscaler to # Autoscaler configuration for this NodePool. Autoscaler is enabled
             # only if a valid configuration is present.
             # adjust the size of the node pool to the current cluster usage.
-          "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be >= 1 and <=
+          "minNodeCount": 42, # Minimum number of nodes in the NodePool. Must be &gt;= 1 and &lt;=
               # max_node_count.
           "autoprovisioned": True or False, # Can this node pool be deleted automatically.
           "enabled": True or False, # Is autoscaling enabled for this node pool.
-          "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be >= min_node_count. There
+          "maxNodeCount": 42, # Maximum number of nodes in the NodePool. Must be &gt;= min_node_count. There
               # has to enough quota to scale up the cluster.
         },
-        "locations": [ # The list of Google Compute Engine [zones](/compute/docs/zones#available)
-            # in which the NodePool's nodes should be located.
+        "locations": [ # The list of Google Compute Engine
+            # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+            # NodePool's nodes should be located.
           "A String",
         ],
         "maxPodsConstraint": { # Constraints applied to pods. # The constraint on the maximum number of pods that can be run
@@ -915,17 +1028,66 @@
           "maxPodsPerNode": "A String", # Constraint enforced on the max num of pods per node.
         },
         "version": "A String", # The version of the Kubernetes of this node.
+        "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
+            # disruption caused by an upgrade.
+            #
+            # maxUnavailable controls the number of nodes that can be simultaneously
+            # unavailable.
+            #
+            # maxSurge controls the number of additional nodes that can be added to the
+            # node pool temporarily for the time of the upgrade to increase the number of
+            # available nodes.
+            #
+            # (maxUnavailable + maxSurge) determines the level of parallelism (how many
+            # nodes are being upgraded at the same time).
+            #
+            # Note: upgrades inevitably introduce some disruption since workloads need to
+            # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
+            # this holds true. (Disruption stays within the limits of
+            # PodDisruptionBudget, if it is configured.)
+            #
+            # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
+            # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
+            # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
+            # down 3 old (not yet upgraded) nodes at the same time. This ensures that
+            # there are always at least 4 nodes available.
+          "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
+              # of the node pool during the upgrade process.
+          "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
+              # the upgrade process. A node is considered available if its status is
+              # Ready.
+        },
         "initialNodeCount": 42, # The initial node count for the pool. You must ensure that your
-            # Compute Engine <a href="/compute/docs/resource-quotas">resource quota</a>
+            # Compute Engine &lt;a href="/compute/docs/resource-quotas"&gt;resource quota&lt;/a&gt;
             # is sufficient for this number of instances. You must also have available
             # firewall and routes quota.
         "podIpv4CidrSize": 42, # [Output only] The pod CIDR block size per node in this node pool.
+        "instanceGroupUrls": [ # [Output only] The resource URLs of the [managed instance
+            # groups](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances)
+            # associated with this node pool.
+          "A String",
+        ],
         "config": { # Parameters that describe the nodes in a cluster. # The node configuration of the pool.
+          "reservationAffinity": { # [ReservationAffinity](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources) # The optional reservation affinity. Setting this field will apply
+              # the specified [Zonal Compute
+              # Reservation](https://cloud.google.com/compute/docs/instances/reserving-zonal-resources)
+              # to this node pool.
+              # is the configuration of desired reservation which instances could take
+              # capacity from.
+            "values": [ # Corresponds to the label value(s) of reservation resource(s).
+              "A String",
+            ],
+            "consumeReservationType": "A String", # Corresponds to the type of reservation consumption.
+            "key": "A String", # Corresponds to the label key of a reservation resource. To target a
+                # SPECIFIC_RESERVATION by name, specify "googleapis.com/reservation-name" as
+                # the key and specify the name of your reservation as its value.
+          },
           "sandboxConfig": { # SandboxConfig contains configurations of the sandbox to use for the node. # Sandbox configuration for this node.
+            "type": "A String", # Type of the sandbox to use for the node.
             "sandboxType": "A String", # Type of the sandbox to use for the node (e.g. 'gvisor')
           },
           "machineType": "A String", # The name of a Google Compute Engine [machine
-              # type](/compute/docs/machine-types) (e.g.
+              # type](https://cloud.google.com/compute/docs/machine-types) (e.g.
               # `n1-standard-1`).
               #
               # If unspecified, the default machine type is
@@ -965,8 +1127,9 @@
               # https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
             "a_key": "A String",
           },
-          "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs. If
-              # no Service Account is specified, the "default" service account is used.
+          "serviceAccount": "A String", # The Google Cloud Platform Service Account to be used by the node VMs.
+              # Specify the email address of the Service Account; otherwise, if no Service
+              # Account is specified, the "default" service account is used.
           "oauthScopes": [ # The set of Google API scopes to be made available on all of the
               # node VMs under the "default" service account.
               #
@@ -977,7 +1140,8 @@
               # persistent storage on your nodes.
               # * `https://www.googleapis.com/auth/devstorage.read_only` is required for
               # communicating with **gcr.io**
-              # (the [Google Container Registry](/container-registry/)).
+              # (the [Google Container
+              # Registry](https://cloud.google.com/container-registry/)).
               #
               # If unspecified, no scopes are added, unless Cloud Logging or Cloud
               # Monitoring are enabled, in which case their required scopes will be added.
@@ -992,13 +1156,15 @@
                 #
                 # For more information, including usage and the valid values, see:
                 # https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
+              "value": "A String", # Value for taint.
               "key": "A String", # Key for taint.
               "effect": "A String", # Effect for taint.
-              "value": "A String", # Value for taint.
             },
           ],
           "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The workload metadata configuration for this node.
               # workloads on the node pool.
+            "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
+                # on the node pool.
             "nodeMetadata": "A String", # NodeMetadata is the configuration for how to expose metadata to the
                 # workloads running on the node.
           },
@@ -1012,21 +1178,28 @@
             { # AcceleratorConfig represents a Hardware Accelerator request.
               "acceleratorCount": "A String", # The number of the accelerator cards exposed to an instance.
               "acceleratorType": "A String", # The accelerator type resource name. List of supported accelerators
-                  # [here](/compute/docs/gpus/#Introduction)
+                  # [here](https://cloud.google.com/compute/docs/gpus)
             },
           ],
           "minCpuPlatform": "A String", # Minimum CPU platform to be used by this instance. The instance may be
               # scheduled on the specified or newer CPU platform. Applicable values are the
               # friendly names of CPU platforms, such as
-              # <code>minCpuPlatform: &quot;Intel Haswell&quot;</code> or
-              # <code>minCpuPlatform: &quot;Intel Sandy Bridge&quot;</code>. For more
+              # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Haswell&amp;quot;&lt;/code&gt; or
+              # &lt;code&gt;minCpuPlatform: &amp;quot;Intel Sandy Bridge&amp;quot;&lt;/code&gt;. For more
               # information, read [how to specify min CPU
               # platform](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform)
+          "bootDiskKmsKey": "A String", #
+              # The Customer Managed Encryption Key used to encrypt the boot disk attached
+              # to each node in the node pool. This should be of the form
+              # projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME].
+              # For more information about protecting resources with Cloud KMS Keys please
+              # see:
+              # https://cloud.google.com/compute/docs/disks/customer-managed-encryption
           "localSsdCount": 42, # 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.
           "imageType": "A String", # The image type to use for this node. Note that for a given image type,
               # the latest version of it will be used.
@@ -1043,6 +1216,7 @@
               #  "containerd-configure-sh"
               #  "enable-oslogin"
               #  "gci-ensure-gke-docker"
+              #  "gci-metrics-enabled"
               #  "gci-update-strategy"
               #  "instance-template"
               #  "kube-env"
@@ -1063,55 +1237,49 @@
             "a_key": "A String",
           },
         },
-        "conditions": [ # Which conditions caused the current node pool state.
-          { # StatusCondition describes why a cluster or a node pool has a certain status
-              # (e.g., ERROR or DEGRADED).
-            "message": "A String", # Human-friendly representation of the condition
-            "code": "A String", # Machine-friendly representation of the condition
-          },
-        ],
-        "selfLink": "A String", # [Output only] Server-defined URL for the resource.
+        "statusMessage": "A String", # [Output only] Additional information about the current status of this
+            # node pool instance, if available.
       },
     ],
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="rollback">rollback(projectId, zone, clusterId, nodePoolId, body, x__xgafv=None)</code>
+    <code class="details" id="rollback">rollback(projectId, zone, clusterId, nodePoolId, body=None, x__xgafv=None)</code>
   <pre>Rolls back a previously Aborted or Failed NodePool upgrade.
 This makes no changes if the last upgrade successfully completed.
 
 Args:
-  projectId: string, Deprecated. The Google Developers Console [project ID or project
+  projectId: string, 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. (required)
-  zone: string, Deprecated. The name of the Google Compute Engine
-[zone](/compute/docs/zones#available) in which the cluster
-resides.
+  zone: string, Required. Deprecated. The name of the Google Compute Engine
+[zone](https://cloud.google.com/compute/docs/zones#available) in which the
+cluster resides. This field has been deprecated and replaced by the name
+field. (required)
+  clusterId: string, Required. Deprecated. The name of the cluster to rollback.
 This field has been deprecated and replaced by the name field. (required)
-  clusterId: string, Deprecated. The name of the cluster to rollback.
+  nodePoolId: string, Required. Deprecated. The name of the node pool to rollback.
 This field has been deprecated and replaced by the name field. (required)
-  nodePoolId: string, Deprecated. The name of the node pool to rollback.
-This field has been deprecated and replaced by the name field. (required)
-  body: object, The request body. (required)
+  body: object, The request body.
     The object takes the form of:
 
 { # RollbackNodePoolUpgradeRequest rollbacks the previously Aborted or Failed
       # NodePool upgrade. This will be an no-op if the last upgrade successfully
       # completed.
-    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+    "projectId": "A String", # 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.
-    "clusterId": "A String", # Deprecated. The name of the cluster to rollback.
+    "clusterId": "A String", # Required. Deprecated. The name of the cluster to rollback.
         # This field has been deprecated and replaced by the name field.
     "name": "A String", # The name (project, location, cluster, node pool id) of the node poll to
         # rollback upgrade.
         # Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.
-    "zone": "A String", # 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.
-    "nodePoolId": "A String", # Deprecated. The name of the node pool to rollback.
+    "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
+        # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+        # cluster resides. This field has been deprecated and replaced by the name
+        # field.
+    "nodePoolId": "A String", # Required. Deprecated. The name of the node pool to rollback.
         # This field has been deprecated and replaced by the name field.
   }
 
@@ -1126,20 +1294,13 @@
     { # This operation resource represents operations that may have happened or are
       # happening on the cluster. All fields are output only.
     "status": "A String", # The current status of the operation.
+    "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
     "endTime": "A String", # [Output only] The time the operation completed, in
         # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
     "name": "A String", # The server-assigned ID for the operation.
     "zone": "A String", # The name of the Google Compute Engine
-        # [zone](/compute/docs/zones#available) in which the operation
-        # is taking place.
-        # This field is deprecated, use location instead.
-    "location": "A String", # [Output only] The name of the Google Compute Engine
-        # [zone](/compute/docs/regions-zones/regions-zones#available) or
-        # [region](/compute/docs/regions-zones/regions-zones#available) in which
-        # the cluster resides.
-    "startTime": "A String", # [Output only] The time the operation started, in
-        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
-    "detail": "A String", # Detailed operation progress, if available.
+        # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+        # operation is taking place. This field is deprecated, use location instead.
     "clusterConditions": [ # Which conditions caused the current cluster state.
       { # StatusCondition describes why a cluster or a node pool has a certain status
           # (e.g., ERROR or DEGRADED).
@@ -1147,9 +1308,12 @@
         "code": "A String", # Machine-friendly representation of the condition
       },
     ],
-    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
+    "startTime": "A String", # [Output only] The time the operation started, in
+        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+    "detail": "A String", # Detailed operation progress, if available.
+    "targetLink": "A String", # Server-defined URL for the target of the operation.
     "operationType": "A String", # The operation type.
-    "progress": { # Information about operation (or operation stage) progress. # [Output only] Progress information for an operation.
+    "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
       "status": "A String", # Status of an operation stage.
           # Unset for single-stage operations.
       "metrics": [ # Progress metric bundle, for example:
@@ -1161,8 +1325,7 @@
         { # Progress metric is (string, int|float|string) pair.
           "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
           "intValue": "A String", # For metrics with integer value.
-          "name": "A String", # Metric name, required.
-              # e.g., "nodes total", "percent done"
+          "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
           "doubleValue": 3.14, # For metrics with floating point value.
         },
       ],
@@ -1180,34 +1343,37 @@
       },
     ],
     "selfLink": "A String", # Server-defined URL for the resource.
-    "targetLink": "A String", # Server-defined URL for the target of the operation.
+    "location": "A String", # [Output only] The name of the Google Compute Engine
+        # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+        # or
+        # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+        # in which the cluster resides.
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="setManagement">setManagement(projectId, zone, clusterId, nodePoolId, body, x__xgafv=None)</code>
+    <code class="details" id="setManagement">setManagement(projectId, zone, clusterId, nodePoolId, body=None, x__xgafv=None)</code>
   <pre>Sets the NodeManagement options for a node pool.
 
 Args:
-  projectId: string, Deprecated. The Google Developers Console [project ID or project
+  projectId: string, 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. (required)
-  zone: string, Deprecated. The name of the Google Compute Engine
-[zone](/compute/docs/zones#available) in which the cluster
-resides.
+  zone: string, Required. Deprecated. The name of the Google Compute Engine
+[zone](https://cloud.google.com/compute/docs/zones#available) in which the
+cluster resides. This field has been deprecated and replaced by the name
+field. (required)
+  clusterId: string, Required. Deprecated. The name of the cluster to update.
 This field has been deprecated and replaced by the name field. (required)
-  clusterId: string, Deprecated. The name of the cluster to update.
+  nodePoolId: string, Required. Deprecated. The name of the node pool to update.
 This field has been deprecated and replaced by the name field. (required)
-  nodePoolId: string, Deprecated. The name of the node pool to update.
-This field has been deprecated and replaced by the name field. (required)
-  body: object, The request body. (required)
+  body: object, The request body.
     The object takes the form of:
 
 { # SetNodePoolManagementRequest sets the node management properties of a node
       # pool.
-    "management": { # NodeManagement defines the set of node management services turned on for the # NodeManagement configuration for the node pool.
+    "management": { # NodeManagement defines the set of node management services turned on for the # Required. NodeManagement configuration for the node pool.
         # node pool.
-      "autoRepair": True or False, # Whether the nodes will be automatically repaired.
       "upgradeOptions": { # AutoUpgradeOptions defines the set of options for the user to control how # Specifies the Auto Upgrade knobs for the node pool.
           # the Auto Upgrades will proceed.
         "description": "A String", # [Output only] This field is set when upgrades are about to commence
@@ -1216,21 +1382,22 @@
             # with the approximate start time for the upgrades, in
             # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
       },
+      "autoRepair": True or False, # Whether the nodes will be automatically repaired.
       "autoUpgrade": True or False, # Whether the nodes will be automatically upgraded.
     },
     "name": "A String", # The name (project, location, cluster, node pool id) of the node pool to set
         # management properties. Specified in the format
         # 'projects/*/locations/*/clusters/*/nodePools/*'.
-    "zone": "A String", # 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.
-    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+    "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
+        # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+        # cluster resides. This field has been deprecated and replaced by the name
+        # field.
+    "projectId": "A String", # 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.
-    "clusterId": "A String", # Deprecated. The name of the cluster to update.
+    "clusterId": "A String", # Required. Deprecated. The name of the cluster to update.
         # This field has been deprecated and replaced by the name field.
-    "nodePoolId": "A String", # Deprecated. The name of the node pool to update.
+    "nodePoolId": "A String", # Required. Deprecated. The name of the node pool to update.
         # This field has been deprecated and replaced by the name field.
   }
 
@@ -1245,20 +1412,13 @@
     { # This operation resource represents operations that may have happened or are
       # happening on the cluster. All fields are output only.
     "status": "A String", # The current status of the operation.
+    "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
     "endTime": "A String", # [Output only] The time the operation completed, in
         # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
     "name": "A String", # The server-assigned ID for the operation.
     "zone": "A String", # The name of the Google Compute Engine
-        # [zone](/compute/docs/zones#available) in which the operation
-        # is taking place.
-        # This field is deprecated, use location instead.
-    "location": "A String", # [Output only] The name of the Google Compute Engine
-        # [zone](/compute/docs/regions-zones/regions-zones#available) or
-        # [region](/compute/docs/regions-zones/regions-zones#available) in which
-        # the cluster resides.
-    "startTime": "A String", # [Output only] The time the operation started, in
-        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
-    "detail": "A String", # Detailed operation progress, if available.
+        # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+        # operation is taking place. This field is deprecated, use location instead.
     "clusterConditions": [ # Which conditions caused the current cluster state.
       { # StatusCondition describes why a cluster or a node pool has a certain status
           # (e.g., ERROR or DEGRADED).
@@ -1266,9 +1426,12 @@
         "code": "A String", # Machine-friendly representation of the condition
       },
     ],
-    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
+    "startTime": "A String", # [Output only] The time the operation started, in
+        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+    "detail": "A String", # Detailed operation progress, if available.
+    "targetLink": "A String", # Server-defined URL for the target of the operation.
     "operationType": "A String", # The operation type.
-    "progress": { # Information about operation (or operation stage) progress. # [Output only] Progress information for an operation.
+    "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
       "status": "A String", # Status of an operation stage.
           # Unset for single-stage operations.
       "metrics": [ # Progress metric bundle, for example:
@@ -1280,8 +1443,7 @@
         { # Progress metric is (string, int|float|string) pair.
           "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
           "intValue": "A String", # For metrics with integer value.
-          "name": "A String", # Metric name, required.
-              # e.g., "nodes total", "percent done"
+          "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
           "doubleValue": 3.14, # For metrics with floating point value.
         },
       ],
@@ -1299,27 +1461,31 @@
       },
     ],
     "selfLink": "A String", # Server-defined URL for the resource.
-    "targetLink": "A String", # Server-defined URL for the target of the operation.
+    "location": "A String", # [Output only] The name of the Google Compute Engine
+        # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+        # or
+        # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+        # in which the cluster resides.
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="setSize">setSize(projectId, zone, clusterId, nodePoolId, body, x__xgafv=None)</code>
+    <code class="details" id="setSize">setSize(projectId, zone, clusterId, nodePoolId, body=None, x__xgafv=None)</code>
   <pre>Sets the size for a specific node pool.
 
 Args:
-  projectId: string, Deprecated. The Google Developers Console [project ID or project
+  projectId: string, 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. (required)
-  zone: string, Deprecated. The name of the Google Compute Engine
-[zone](/compute/docs/zones#available) in which the cluster
-resides.
+  zone: string, Required. Deprecated. The name of the Google Compute Engine
+[zone](https://cloud.google.com/compute/docs/zones#available) in which the
+cluster resides. This field has been deprecated and replaced by the name
+field. (required)
+  clusterId: string, Required. Deprecated. The name of the cluster to update.
 This field has been deprecated and replaced by the name field. (required)
-  clusterId: string, Deprecated. The name of the cluster to update.
+  nodePoolId: string, Required. Deprecated. The name of the node pool to update.
 This field has been deprecated and replaced by the name field. (required)
-  nodePoolId: string, Deprecated. The name of the node pool to update.
-This field has been deprecated and replaced by the name field. (required)
-  body: object, The request body. (required)
+  body: object, The request body.
     The object takes the form of:
 
 { # SetNodePoolSizeRequest sets the size a node
@@ -1327,18 +1493,18 @@
     "name": "A String", # The name (project, location, cluster, node pool id) of the node pool to set
         # size.
         # Specified in the format 'projects/*/locations/*/clusters/*/nodePools/*'.
-    "zone": "A String", # 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.
-    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+    "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
+        # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+        # cluster resides. This field has been deprecated and replaced by the name
+        # field.
+    "projectId": "A String", # 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.
-    "clusterId": "A String", # Deprecated. The name of the cluster to update.
+    "clusterId": "A String", # Required. Deprecated. The name of the cluster to update.
         # This field has been deprecated and replaced by the name field.
-    "nodePoolId": "A String", # Deprecated. The name of the node pool to update.
+    "nodePoolId": "A String", # Required. Deprecated. The name of the node pool to update.
         # This field has been deprecated and replaced by the name field.
-    "nodeCount": 42, # The desired node count for the pool.
+    "nodeCount": 42, # Required. The desired node count for the pool.
   }
 
   x__xgafv: string, V1 error format.
@@ -1352,20 +1518,13 @@
     { # This operation resource represents operations that may have happened or are
       # happening on the cluster. All fields are output only.
     "status": "A String", # The current status of the operation.
+    "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
     "endTime": "A String", # [Output only] The time the operation completed, in
         # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
     "name": "A String", # The server-assigned ID for the operation.
     "zone": "A String", # The name of the Google Compute Engine
-        # [zone](/compute/docs/zones#available) in which the operation
-        # is taking place.
-        # This field is deprecated, use location instead.
-    "location": "A String", # [Output only] The name of the Google Compute Engine
-        # [zone](/compute/docs/regions-zones/regions-zones#available) or
-        # [region](/compute/docs/regions-zones/regions-zones#available) in which
-        # the cluster resides.
-    "startTime": "A String", # [Output only] The time the operation started, in
-        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
-    "detail": "A String", # Detailed operation progress, if available.
+        # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+        # operation is taking place. This field is deprecated, use location instead.
     "clusterConditions": [ # Which conditions caused the current cluster state.
       { # StatusCondition describes why a cluster or a node pool has a certain status
           # (e.g., ERROR or DEGRADED).
@@ -1373,9 +1532,12 @@
         "code": "A String", # Machine-friendly representation of the condition
       },
     ],
-    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
+    "startTime": "A String", # [Output only] The time the operation started, in
+        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+    "detail": "A String", # Detailed operation progress, if available.
+    "targetLink": "A String", # Server-defined URL for the target of the operation.
     "operationType": "A String", # The operation type.
-    "progress": { # Information about operation (or operation stage) progress. # [Output only] Progress information for an operation.
+    "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
       "status": "A String", # Status of an operation stage.
           # Unset for single-stage operations.
       "metrics": [ # Progress metric bundle, for example:
@@ -1387,8 +1549,7 @@
         { # Progress metric is (string, int|float|string) pair.
           "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
           "intValue": "A String", # For metrics with integer value.
-          "name": "A String", # Metric name, required.
-              # e.g., "nodes total", "percent done"
+          "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
           "doubleValue": 3.14, # For metrics with floating point value.
         },
       ],
@@ -1406,57 +1567,92 @@
       },
     ],
     "selfLink": "A String", # Server-defined URL for the resource.
-    "targetLink": "A String", # Server-defined URL for the target of the operation.
+    "location": "A String", # [Output only] The name of the Google Compute Engine
+        # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+        # or
+        # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+        # in which the cluster resides.
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="update">update(projectId, zone, clusterId, nodePoolId, body, x__xgafv=None)</code>
+    <code class="details" id="update">update(projectId, zone, clusterId, nodePoolId, body=None, x__xgafv=None)</code>
   <pre>Updates the version and/or image type of a specific node pool.
 
 Args:
-  projectId: string, Deprecated. The Google Developers Console [project ID or project
+  projectId: string, 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. (required)
-  zone: string, Deprecated. The name of the Google Compute Engine
-[zone](/compute/docs/zones#available) in which the cluster
-resides.
+  zone: string, Required. Deprecated. The name of the Google Compute Engine
+[zone](https://cloud.google.com/compute/docs/zones#available) in which the
+cluster resides. This field has been deprecated and replaced by the name
+field. (required)
+  clusterId: string, Required. Deprecated. The name of the cluster to upgrade.
 This field has been deprecated and replaced by the name field. (required)
-  clusterId: string, Deprecated. The name of the cluster to upgrade.
+  nodePoolId: string, Required. Deprecated. The name of the node pool to upgrade.
 This field has been deprecated and replaced by the name field. (required)
-  nodePoolId: string, Deprecated. The name of the node pool to upgrade.
-This field has been deprecated and replaced by the name field. (required)
-  body: object, The request body. (required)
+  body: object, The request body.
     The object takes the form of:
 
 { # SetNodePoolVersionRequest updates the version of a node pool.
     "name": "A String", # The name (project, location, cluster, node pool) of the node pool to
         # update. Specified in the format
         # 'projects/*/locations/*/clusters/*/nodePools/*'.
-    "zone": "A String", # 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.
-    "projectId": "A String", # Deprecated. The Google Developers Console [project ID or project
+    "zone": "A String", # Required. Deprecated. The name of the Google Compute Engine
+        # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+        # cluster resides. This field has been deprecated and replaced by the name
+        # field.
+    "projectId": "A String", # 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.
-    "clusterId": "A String", # Deprecated. The name of the cluster to upgrade.
+    "clusterId": "A String", # Required. Deprecated. The name of the cluster to upgrade.
         # This field has been deprecated and replaced by the name field.
     "locations": [ # The desired list of Google Compute Engine
-        # [zones](/compute/docs/zones#available) in which the node pool's nodes
-        # should be located. Changing the locations for a node pool will result
-        # in nodes being either created or removed from the node pool, depending
-        # on whether locations are being added or removed.
+        # [zones](https://cloud.google.com/compute/docs/zones#available) in which the
+        # node pool's nodes should be located. Changing the locations for a node pool
+        # will result in nodes being either created or removed from the node pool,
+        # depending on whether locations are being added or removed.
       "A String",
     ],
-    "nodePoolId": "A String", # Deprecated. The name of the node pool to upgrade.
+    "nodePoolId": "A String", # Required. Deprecated. The name of the node pool to upgrade.
         # This field has been deprecated and replaced by the name field.
-    "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The desired image type for the node pool.
+    "workloadMetadataConfig": { # WorkloadMetadataConfig defines the metadata configuration to expose to # The desired workload metadata config for the node pool.
         # workloads on the node pool.
+      "mode": "A String", # Mode is the configuration for how to expose metadata to workloads running
+          # on the node pool.
       "nodeMetadata": "A String", # NodeMetadata is the configuration for how to expose metadata to the
           # workloads running on the node.
     },
-    "nodeVersion": "A String", # The Kubernetes version to change the nodes to (typically an
+    "upgradeSettings": { # These upgrade settings control the level of parallelism and the level of # Upgrade settings control disruption and speed of the upgrade.
+        # disruption caused by an upgrade.
+        #
+        # maxUnavailable controls the number of nodes that can be simultaneously
+        # unavailable.
+        #
+        # maxSurge controls the number of additional nodes that can be added to the
+        # node pool temporarily for the time of the upgrade to increase the number of
+        # available nodes.
+        #
+        # (maxUnavailable + maxSurge) determines the level of parallelism (how many
+        # nodes are being upgraded at the same time).
+        #
+        # Note: upgrades inevitably introduce some disruption since workloads need to
+        # be moved from old nodes to new, upgraded ones. Even if maxUnavailable=0,
+        # this holds true. (Disruption stays within the limits of
+        # PodDisruptionBudget, if it is configured.)
+        #
+        # Consider a hypothetical node pool with 5 nodes having maxSurge=2,
+        # maxUnavailable=1. This means the upgrade process upgrades 3 nodes
+        # simultaneously. It creates 2 additional (upgraded) nodes, then it brings
+        # down 3 old (not yet upgraded) nodes at the same time. This ensures that
+        # there are always at least 4 nodes available.
+      "maxSurge": 42, # The maximum number of nodes that can be created beyond the current size
+          # of the node pool during the upgrade process.
+      "maxUnavailable": 42, # The maximum number of nodes that can be simultaneously unavailable during
+          # the upgrade process. A node is considered available if its status is
+          # Ready.
+    },
+    "nodeVersion": "A String", # Required. The Kubernetes version to change the nodes to (typically an
         # upgrade).
         # 
         # Users may specify either explicit versions offered by Kubernetes Engine or
@@ -1467,7 +1663,7 @@
         # - "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
-    "imageType": "A String", # The desired image type for the node pool.
+    "imageType": "A String", # Required. The desired image type for the node pool.
   }
 
   x__xgafv: string, V1 error format.
@@ -1481,20 +1677,13 @@
     { # This operation resource represents operations that may have happened or are
       # happening on the cluster. All fields are output only.
     "status": "A String", # The current status of the operation.
+    "statusMessage": "A String", # Output only. If an error has occurred, a textual description of the error.
     "endTime": "A String", # [Output only] The time the operation completed, in
         # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
     "name": "A String", # The server-assigned ID for the operation.
     "zone": "A String", # The name of the Google Compute Engine
-        # [zone](/compute/docs/zones#available) in which the operation
-        # is taking place.
-        # This field is deprecated, use location instead.
-    "location": "A String", # [Output only] The name of the Google Compute Engine
-        # [zone](/compute/docs/regions-zones/regions-zones#available) or
-        # [region](/compute/docs/regions-zones/regions-zones#available) in which
-        # the cluster resides.
-    "startTime": "A String", # [Output only] The time the operation started, in
-        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
-    "detail": "A String", # Detailed operation progress, if available.
+        # [zone](https://cloud.google.com/compute/docs/zones#available) in which the
+        # operation is taking place. This field is deprecated, use location instead.
     "clusterConditions": [ # Which conditions caused the current cluster state.
       { # StatusCondition describes why a cluster or a node pool has a certain status
           # (e.g., ERROR or DEGRADED).
@@ -1502,9 +1691,12 @@
         "code": "A String", # Machine-friendly representation of the condition
       },
     ],
-    "statusMessage": "A String", # If an error has occurred, a textual description of the error.
+    "startTime": "A String", # [Output only] The time the operation started, in
+        # [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
+    "detail": "A String", # Detailed operation progress, if available.
+    "targetLink": "A String", # Server-defined URL for the target of the operation.
     "operationType": "A String", # The operation type.
-    "progress": { # Information about operation (or operation stage) progress. # [Output only] Progress information for an operation.
+    "progress": { # Information about operation (or operation stage) progress. # Output only. [Output only] Progress information for an operation.
       "status": "A String", # Status of an operation stage.
           # Unset for single-stage operations.
       "metrics": [ # Progress metric bundle, for example:
@@ -1516,8 +1708,7 @@
         { # Progress metric is (string, int|float|string) pair.
           "stringValue": "A String", # For metrics with custom values (ratios, visual progress, etc.).
           "intValue": "A String", # For metrics with integer value.
-          "name": "A String", # Metric name, required.
-              # e.g., "nodes total", "percent done"
+          "name": "A String", # Required. Metric name, e.g., "nodes total", "percent done".
           "doubleValue": 3.14, # For metrics with floating point value.
         },
       ],
@@ -1535,7 +1726,11 @@
       },
     ],
     "selfLink": "A String", # Server-defined URL for the resource.
-    "targetLink": "A String", # Server-defined URL for the target of the operation.
+    "location": "A String", # [Output only] The name of the Google Compute Engine
+        # [zone](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+        # or
+        # [region](https://cloud.google.com/compute/docs/regions-zones/regions-zones#available)
+        # in which the cluster resides.
   }</pre>
 </div>