docs: update generated docs (#1053)

Updates for both discovery docs and epydoc API Documentation

Fixes: #1049
diff --git a/docs/dyn/osconfig_v1.projects.patchJobs.html b/docs/dyn/osconfig_v1.projects.patchJobs.html
index 2ae1249..3fe0936 100644
--- a/docs/dyn/osconfig_v1.projects.patchJobs.html
+++ b/docs/dyn/osconfig_v1.projects.patchJobs.html
@@ -81,15 +81,18 @@
 
 <p class="toc_element">
   <code><a href="#cancel">cancel(name, body=None, x__xgafv=None)</a></code></p>
-<p class="firstline">Cancel a patch job. The patch job must be active. Canceled patch jobs</p>
+<p class="firstline">Cancel a patch job. The patch job must be active. Canceled patch jobs cannot be restarted.</p>
+<p class="toc_element">
+  <code><a href="#close">close()</a></code></p>
+<p class="firstline">Close httplib2 connections.</p>
 <p class="toc_element">
   <code><a href="#execute">execute(parent, body=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Patch VM instances by creating and running a patch job.</p>
 <p class="toc_element">
   <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
-<p class="firstline">Get the patch job. This can be used to track the progress of an</p>
+<p class="firstline">Get the patch job. This can be used to track the progress of an ongoing patch job or review the details of completed jobs.</p>
 <p class="toc_element">
-  <code><a href="#list">list(parent, pageSize=None, pageToken=None, filter=None, x__xgafv=None)</a></code></p>
+  <code><a href="#list">list(parent, pageToken=None, filter=None, pageSize=None, x__xgafv=None)</a></code></p>
 <p class="firstline">Get a list of patch jobs.</p>
 <p class="toc_element">
   <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
@@ -97,8 +100,7 @@
 <h3>Method Details</h3>
 <div class="method">
     <code class="details" id="cancel">cancel(name, body=None, x__xgafv=None)</code>
-  <pre>Cancel a patch job. The patch job must be active. Canceled patch jobs
-cannot be restarted.
+  <pre>Cancel a patch job. The patch job must be active. Canceled patch jobs cannot be restarted.
 
 Args:
   name: string, Required. Name of the patch in the form `projects/*/patchJobs/*` (required)
@@ -116,277 +118,173 @@
 Returns:
   An object of the form:
 
-    { # A high level representation of a patch job that is either in progress
-      # or has completed.
-      #
-      # Instance details are not included in the job. To paginate through instance
-      # details, use ListPatchJobInstanceDetails.
-      #
-      # For more information about patch jobs, see
-      # [Creating patch
-      # jobs](https://cloud.google.com/compute/docs/os-patch-management/create-patch-job).
-    &quot;name&quot;: &quot;A String&quot;, # Unique identifier for this patch job in the form
-        # `projects/*/patchJobs/*`
+    { # A high level representation of a patch job that is either in progress or has completed. Instance details are not included in the job. To paginate through instance details, use ListPatchJobInstanceDetails. For more information about patch jobs, see [Creating patch jobs](https://cloud.google.com/compute/docs/os-patch-management/create-patch-job).
+    &quot;name&quot;: &quot;A String&quot;, # Unique identifier for this patch job in the form `projects/*/patchJobs/*`
+    &quot;percentComplete&quot;: 3.14, # Reflects the overall progress of the patch job in the range of 0.0 being no progress to 100.0 being complete.
     &quot;updateTime&quot;: &quot;A String&quot;, # Last time this patch job was updated.
-    &quot;state&quot;: &quot;A String&quot;, # The current state of the PatchJob.
-    &quot;instanceDetailsSummary&quot;: { # A summary of the current patch state across all instances that this patch # Summary of instance details.
-        # job affects. Contains counts of instances in different states. These states
-        # map to `InstancePatchState`. List patch job instance details to see the
-        # specific states of each instance.
-      &quot;failedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that failed.
+    &quot;instanceDetailsSummary&quot;: { # A summary of the current patch state across all instances that this patch job affects. Contains counts of instances in different states. These states map to `InstancePatchState`. List patch job instance details to see the specific states of each instance. # Summary of instance details.
       &quot;ackedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that have acked and will start shortly.
-      &quot;succeededRebootRequiredInstanceCount&quot;: &quot;A String&quot;, # Number of instances that require reboot.
-      &quot;prePatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the pre-patch step.
-      &quot;pendingInstanceCount&quot;: &quot;A String&quot;, # Number of instances pending patch job.
-      &quot;applyingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are applying patches.
-      &quot;downloadingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are downloading patches.
-      &quot;noAgentDetectedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that do not appear to be running the agent. Check to
-          # ensure that the agent is installed, running, and able to communicate with
-          # the service.
-      &quot;postPatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the post-patch step.
-      &quot;rebootingInstanceCount&quot;: &quot;A String&quot;, # Number of instances rebooting.
       &quot;startedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that have started.
-      &quot;inactiveInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are inactive.
-      &quot;timedOutInstanceCount&quot;: &quot;A String&quot;, # Number of instances that exceeded the time out while applying the patch.
+      &quot;downloadingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are downloading patches.
+      &quot;pendingInstanceCount&quot;: &quot;A String&quot;, # Number of instances pending patch job.
+      &quot;noAgentDetectedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that do not appear to be running the agent. Check to ensure that the agent is installed, running, and able to communicate with the service.
+      &quot;prePatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the pre-patch step.
       &quot;succeededInstanceCount&quot;: &quot;A String&quot;, # Number of instances that have completed successfully.
+      &quot;failedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that failed.
+      &quot;succeededRebootRequiredInstanceCount&quot;: &quot;A String&quot;, # Number of instances that require reboot.
       &quot;notifiedInstanceCount&quot;: &quot;A String&quot;, # Number of instances notified about patch job.
+      &quot;rebootingInstanceCount&quot;: &quot;A String&quot;, # Number of instances rebooting.
+      &quot;timedOutInstanceCount&quot;: &quot;A String&quot;, # Number of instances that exceeded the time out while applying the patch.
+      &quot;postPatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the post-patch step.
+      &quot;inactiveInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are inactive.
+      &quot;applyingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are applying patches.
     },
-    &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the # Patch configuration being applied.
-        # patch(es) to a VM instance.
-      &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
-        &quot;exclusivePatches&quot;: [ # An exclusive list of kbs to be updated. These are the only patches
-            # that will be updated. This field must not be used with other
-            # patch configurations.
-          &quot;A String&quot;,
-        ],
-        &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all
-            # updates are applied.
-          &quot;A String&quot;,
-        ],
-        &quot;excludes&quot;: [ # List of KBs to exclude from update.
-          &quot;A String&quot;,
-        ],
-      },
-      &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
-        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
-        &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
-      },
-      &quot;yum&quot;: { # Yum patching is performed by executing `yum update`. Additional options # Yum update settings. Use this setting to override the default `yum` patch
-          # rules.
-          # can be set to control how this is executed.
-          #
-          # Note that not all settings are supported on all platforms.
-        &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
-        &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on
-            # all platforms.
-        &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by
-            # using the yum `--exclude` flag.
-          &quot;A String&quot;,
-        ],
-        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages
-            # that will be updated. If these packages are not installed, they will be
-            # ignored. This field must not be specified with any other patch
-            # configuration fields.
-          &quot;A String&quot;,
-        ],
-      },
-      &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch
-          # rules.
-      },
-      &quot;apt&quot;: { # Apt patching is completed by executing `apt-get update &amp;&amp; apt-get # Apt update settings. Use this setting to override the default `apt` patch
-          # rules.
-          # upgrade`. Additional options can be set to control how this is executed.
-        &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
-          &quot;A String&quot;,
-        ],
-        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages
-            # that will be updated. If these packages are not installed, they will be
-            # ignored. This field cannot be specified with any other patch configuration
-            # fields.
-          &quot;A String&quot;,
-        ],
-        &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed
-            # using `apt-get dist-upgrade` instead.
-      },
-      &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
-      &quot;zypper&quot;: { # Zypper patching is performed by running `zypper patch`. # Zypper update settings. Use this setting to override the default `zypper`
-          # patch rules.
-          # See also https://en.opensuse.org/SDB:Zypper_manual.
-        &quot;excludes&quot;: [ # List of patches to exclude from update.
-          &quot;A String&quot;,
-        ],
-        &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
-        &quot;severities&quot;: [ # Install only patches with these severities.
-            # Common severities include critical, important, moderate, and low.
-          &quot;A String&quot;,
-        ],
-        &quot;categories&quot;: [ # Install only patches with these categories.
-            # Common categories include security, recommended, and feature.
-          &quot;A String&quot;,
-        ],
-        &quot;exclusivePatches&quot;: [ # An exclusive list of patches to be updated. These are the only patches
-            # that will be installed using &#x27;zypper patch patch:&lt;patch_name&gt;&#x27; command.
-            # This field must not be used with any other patch configuration fields.
-          &quot;A String&quot;,
-        ],
-        &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
-      },
-      &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
-        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
-        &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
-      },
-    },
-    &quot;createTime&quot;: &quot;A String&quot;, # Time this patch job was created.
-    &quot;instanceFilter&quot;: { # A filter to target VM instances for patching. The targeted # Instances to patch.
-        # VMs must meet all criteria specified. So if both labels and zones are
-        # specified, the patch job targets only VMs with those labels and in those
-        # zones.
-      &quot;instanceNamePrefixes&quot;: [ # Targets VMs whose name starts with one of these prefixes. Similar to
-          # labels, this is another way to group VMs when targeting configs, for
-          # example prefix=&quot;prod-&quot;.
-        &quot;A String&quot;,
-      ],
-      &quot;groupLabels&quot;: [ # Targets VM instances matching ANY of these GroupLabels. This allows
-          # targeting of disparate groups of VM instances.
-        { # Targets a group of VM instances by using their [assigned
-            # labels](https://cloud.google.com/compute/docs/labeling-resources). Labels
-            # are key-value pairs. A `GroupLabel` is a combination of labels
-            # that is used to target VMs for a patch job.
-            #
-            # For example, a patch job can target VMs that have the following
-            # `GroupLabel`: `{&quot;env&quot;:&quot;test&quot;, &quot;app&quot;:&quot;web&quot;}`. This means that the patch job
-            # is applied to VMs that have both the labels `env=test` and `app=web`.
-          &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM
-              # instance to be targeted by this filter.
+    &quot;errorMessage&quot;: &quot;A String&quot;, # If this patch job failed, this message provides information about the failure.
+    &quot;instanceFilter&quot;: { # A filter to target VM instances for patching. The targeted VMs must meet all criteria specified. So if both labels and zones are specified, the patch job targets only VMs with those labels and in those zones. # Instances to patch.
+      &quot;groupLabels&quot;: [ # Targets VM instances matching ANY of these GroupLabels. This allows targeting of disparate groups of VM instances.
+        { # Targets a group of VM instances by using their [assigned labels](https://cloud.google.com/compute/docs/labeling-resources). Labels are key-value pairs. A `GroupLabel` is a combination of labels that is used to target VMs for a patch job. For example, a patch job can target VMs that have the following `GroupLabel`: `{&quot;env&quot;:&quot;test&quot;, &quot;app&quot;:&quot;web&quot;}`. This means that the patch job is applied to VMs that have both the labels `env=test` and `app=web`.
+          &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM instance to be targeted by this filter.
             &quot;a_key&quot;: &quot;A String&quot;,
           },
         },
       ],
-      &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM
-          # instances in any zone.
+      &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM instances in any zone.
         &quot;A String&quot;,
       ],
-      &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is
-          # permitted.
-      &quot;instances&quot;: [ # Targets any of the VM instances specified. Instances are specified by their
-          # URI in the form `zones/[ZONE]/instances/[INSTANCE_NAME]`,
-          # `projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`, or
-          # `https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`
+      &quot;instances&quot;: [ # Targets any of the VM instances specified. Instances are specified by their URI in the form `zones/[ZONE]/instances/[INSTANCE_NAME]`, `projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`, or `https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`
+        &quot;A String&quot;,
+      ],
+      &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is permitted.
+      &quot;instanceNamePrefixes&quot;: [ # Targets VMs whose name starts with one of these prefixes. Similar to labels, this is another way to group VMs when targeting configs, for example prefix=&quot;prod-&quot;.
         &quot;A String&quot;,
       ],
     },
-    &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the # Rollout strategy being applied.
-        # concurrency control when applying patch(es) to all targeted VMs.
-      &quot;disruptionBudget&quot;: { # Message encapsulating a value that can be either absolute (&quot;fixed&quot;) or # The maximum number (or percentage) of VMs per zone to disrupt at any given
-          # moment. The number of VMs calculated from multiplying the percentage by the
-          # total number of VMs in a zone is rounded up.
-          #
-          # During patching, a VM is considered disrupted from the time the agent is
-          # notified to begin until patching has completed. This disruption time
-          # includes the time to complete reboot and any post-patch steps.
-          #
-          # A VM contributes to the disruption budget if its patching operation fails
-          # either when applying the patches, running pre or post patch steps, or if it
-          # fails to respond with a success notification before timing out. VMs that
-          # are not running or do not have an active agent do not count toward this
-          # disruption budget.
-          #
-          # For zone-by-zone rollouts, if the disruption budget in a zone is exceeded,
-          # the patch job stops, because continuing to the next zone requires
-          # completion of the patch process in the previous zone.
-          #
-          # For example, if the disruption budget has a fixed value of `10`, and 8 VMs
-          # fail to patch in the current zone, the patch job continues to patch 2 VMs
-          # at a time until the zone is completed. When that zone is completed
-          # successfully, patching begins with 10 VMs at a time in the next zone. If 10
-          # VMs in the next zone fail to patch, the patch job stops.
-          # relative (&quot;percent&quot;) to a value.
-        &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be
-            # multiplied by a reference value.
-        &quot;fixed&quot;: 42, # Specifies a fixed value.
-      },
-      &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
-    },
-    &quot;description&quot;: &quot;A String&quot;, # Description of the patch job. Length of the description is limited
-        # to 1024 characters.
-    &quot;duration&quot;: &quot;A String&quot;, # Duration of the patch job. After the duration ends, the
-        # patch job times out.
-    &quot;errorMessage&quot;: &quot;A String&quot;, # If this patch job failed, this message provides information about the
-        # failure.
-    &quot;percentComplete&quot;: 3.14, # Reflects the overall progress of the patch job in the range of
-        # 0.0 being no progress to 100.0 being complete.
     &quot;patchDeployment&quot;: &quot;A String&quot;, # Output only. Name of the patch deployment that created this patch job.
+    &quot;createTime&quot;: &quot;A String&quot;, # Time this patch job was created.
+    &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs. # Rollout strategy being applied.
+      &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
+      &quot;disruptionBudget&quot;: { # Message encapsulating a value that can be either absolute (&quot;fixed&quot;) or relative (&quot;percent&quot;) to a value. # The maximum number (or percentage) of VMs per zone to disrupt at any given moment. The number of VMs calculated from multiplying the percentage by the total number of VMs in a zone is rounded up. During patching, a VM is considered disrupted from the time the agent is notified to begin until patching has completed. This disruption time includes the time to complete reboot and any post-patch steps. A VM contributes to the disruption budget if its patching operation fails either when applying the patches, running pre or post patch steps, or if it fails to respond with a success notification before timing out. VMs that are not running or do not have an active agent do not count toward this disruption budget. For zone-by-zone rollouts, if the disruption budget in a zone is exceeded, the patch job stops, because continuing to the next zone requires completion of the patch process in the previous zone. For example, if the disruption budget has a fixed value of `10`, and 8 VMs fail to patch in the current zone, the patch job continues to patch 2 VMs at a time until the zone is completed. When that zone is completed successfully, patching begins with 10 VMs at a time in the next zone. If 10 VMs in the next zone fail to patch, the patch job stops.
+        &quot;fixed&quot;: 42, # Specifies a fixed value.
+        &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be multiplied by a reference value.
+      },
+    },
     &quot;displayName&quot;: &quot;A String&quot;, # Display name for this patch job. This is not a unique identifier.
-    &quot;dryRun&quot;: True or False, # If this patch job is a dry run, the agent reports that it has
-        # finished without running any updates on the VM instance.
+    &quot;state&quot;: &quot;A String&quot;, # The current state of the PatchJob.
+    &quot;dryRun&quot;: True or False, # If this patch job is a dry run, the agent reports that it has finished without running any updates on the VM instance.
+    &quot;description&quot;: &quot;A String&quot;, # Description of the patch job. Length of the description is limited to 1024 characters.
+    &quot;duration&quot;: &quot;A String&quot;, # Duration of the patch job. After the duration ends, the patch job times out.
+    &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance. # Patch configuration being applied.
+      &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
+        &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+      },
+      &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
+        &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+      },
+      &quot;yum&quot;: { # Yum patching is performed by executing `yum update`. Additional options can be set to control how this is executed. Note that not all settings are supported on all platforms. # Yum update settings. Use this setting to override the default `yum` patch rules.
+        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages that will be updated. If these packages are not installed, they will be ignored. This field must not be specified with any other patch configuration fields.
+          &quot;A String&quot;,
+        ],
+        &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by using the yum `--exclude` flag.
+          &quot;A String&quot;,
+        ],
+        &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
+        &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on all platforms.
+      },
+      &quot;apt&quot;: { # Apt patching is completed by executing `apt-get update &amp;&amp; apt-get upgrade`. Additional options can be set to control how this is executed. # Apt update settings. Use this setting to override the default `apt` patch rules.
+        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages that will be updated. If these packages are not installed, they will be ignored. This field cannot be specified with any other patch configuration fields.
+          &quot;A String&quot;,
+        ],
+        &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed using `apt-get dist-upgrade` instead.
+        &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
+          &quot;A String&quot;,
+        ],
+      },
+      &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
+        &quot;excludes&quot;: [ # List of KBs to exclude from update.
+          &quot;A String&quot;,
+        ],
+        &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all updates are applied.
+          &quot;A String&quot;,
+        ],
+        &quot;exclusivePatches&quot;: [ # An exclusive list of kbs to be updated. These are the only patches that will be updated. This field must not be used with other patch configurations.
+          &quot;A String&quot;,
+        ],
+      },
+      &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch rules.
+      },
+      &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
+      &quot;zypper&quot;: { # Zypper patching is performed by running `zypper patch`. See also https://en.opensuse.org/SDB:Zypper_manual. # Zypper update settings. Use this setting to override the default `zypper` patch rules.
+        &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
+        &quot;excludes&quot;: [ # List of patches to exclude from update.
+          &quot;A String&quot;,
+        ],
+        &quot;exclusivePatches&quot;: [ # An exclusive list of patches to be updated. These are the only patches that will be installed using &#x27;zypper patch patch:&#x27; command. This field must not be used with any other patch configuration fields.
+          &quot;A String&quot;,
+        ],
+        &quot;categories&quot;: [ # Install only patches with these categories. Common categories include security, recommended, and feature.
+          &quot;A String&quot;,
+        ],
+        &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
+        &quot;severities&quot;: [ # Install only patches with these severities. Common severities include critical, important, moderate, and low.
+          &quot;A String&quot;,
+        ],
+      },
+    },
   }</pre>
 </div>
 
 <div class="method">
+    <code class="details" id="close">close()</code>
+  <pre>Close httplib2 connections.</pre>
+</div>
+
+<div class="method">
     <code class="details" id="execute">execute(parent, body=None, x__xgafv=None)</code>
   <pre>Patch VM instances by creating and running a patch job.
 
@@ -395,236 +293,140 @@
   body: object, The request body.
     The object takes the form of:
 
-{ # A request message to initiate patching across Compute Engine
-      # instances.
-    &quot;displayName&quot;: &quot;A String&quot;, # Display name for this patch job. This does not have to be unique.
-    &quot;instanceFilter&quot;: { # A filter to target VM instances for patching. The targeted # Required. Instances to patch, either explicitly or filtered by some criteria such
-        # as zone or labels.
-        # VMs must meet all criteria specified. So if both labels and zones are
-        # specified, the patch job targets only VMs with those labels and in those
-        # zones.
-      &quot;instanceNamePrefixes&quot;: [ # Targets VMs whose name starts with one of these prefixes. Similar to
-          # labels, this is another way to group VMs when targeting configs, for
-          # example prefix=&quot;prod-&quot;.
-        &quot;A String&quot;,
-      ],
-      &quot;groupLabels&quot;: [ # Targets VM instances matching ANY of these GroupLabels. This allows
-          # targeting of disparate groups of VM instances.
-        { # Targets a group of VM instances by using their [assigned
-            # labels](https://cloud.google.com/compute/docs/labeling-resources). Labels
-            # are key-value pairs. A `GroupLabel` is a combination of labels
-            # that is used to target VMs for a patch job.
-            #
-            # For example, a patch job can target VMs that have the following
-            # `GroupLabel`: `{&quot;env&quot;:&quot;test&quot;, &quot;app&quot;:&quot;web&quot;}`. This means that the patch job
-            # is applied to VMs that have both the labels `env=test` and `app=web`.
-          &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM
-              # instance to be targeted by this filter.
+{ # A request message to initiate patching across Compute Engine instances.
+    &quot;duration&quot;: &quot;A String&quot;, # Duration of the patch job. After the duration ends, the patch job times out.
+    &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs. # Rollout strategy of the patch job.
+      &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
+      &quot;disruptionBudget&quot;: { # Message encapsulating a value that can be either absolute (&quot;fixed&quot;) or relative (&quot;percent&quot;) to a value. # The maximum number (or percentage) of VMs per zone to disrupt at any given moment. The number of VMs calculated from multiplying the percentage by the total number of VMs in a zone is rounded up. During patching, a VM is considered disrupted from the time the agent is notified to begin until patching has completed. This disruption time includes the time to complete reboot and any post-patch steps. A VM contributes to the disruption budget if its patching operation fails either when applying the patches, running pre or post patch steps, or if it fails to respond with a success notification before timing out. VMs that are not running or do not have an active agent do not count toward this disruption budget. For zone-by-zone rollouts, if the disruption budget in a zone is exceeded, the patch job stops, because continuing to the next zone requires completion of the patch process in the previous zone. For example, if the disruption budget has a fixed value of `10`, and 8 VMs fail to patch in the current zone, the patch job continues to patch 2 VMs at a time until the zone is completed. When that zone is completed successfully, patching begins with 10 VMs at a time in the next zone. If 10 VMs in the next zone fail to patch, the patch job stops.
+        &quot;fixed&quot;: 42, # Specifies a fixed value.
+        &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be multiplied by a reference value.
+      },
+    },
+    &quot;dryRun&quot;: True or False, # If this patch is a dry-run only, instances are contacted but will do nothing.
+    &quot;description&quot;: &quot;A String&quot;, # Description of the patch job. Length of the description is limited to 1024 characters.
+    &quot;instanceFilter&quot;: { # A filter to target VM instances for patching. The targeted VMs must meet all criteria specified. So if both labels and zones are specified, the patch job targets only VMs with those labels and in those zones. # Required. Instances to patch, either explicitly or filtered by some criteria such as zone or labels.
+      &quot;groupLabels&quot;: [ # Targets VM instances matching ANY of these GroupLabels. This allows targeting of disparate groups of VM instances.
+        { # Targets a group of VM instances by using their [assigned labels](https://cloud.google.com/compute/docs/labeling-resources). Labels are key-value pairs. A `GroupLabel` is a combination of labels that is used to target VMs for a patch job. For example, a patch job can target VMs that have the following `GroupLabel`: `{&quot;env&quot;:&quot;test&quot;, &quot;app&quot;:&quot;web&quot;}`. This means that the patch job is applied to VMs that have both the labels `env=test` and `app=web`.
+          &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM instance to be targeted by this filter.
             &quot;a_key&quot;: &quot;A String&quot;,
           },
         },
       ],
-      &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM
-          # instances in any zone.
+      &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM instances in any zone.
         &quot;A String&quot;,
       ],
-      &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is
-          # permitted.
-      &quot;instances&quot;: [ # Targets any of the VM instances specified. Instances are specified by their
-          # URI in the form `zones/[ZONE]/instances/[INSTANCE_NAME]`,
-          # `projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`, or
-          # `https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`
+      &quot;instances&quot;: [ # Targets any of the VM instances specified. Instances are specified by their URI in the form `zones/[ZONE]/instances/[INSTANCE_NAME]`, `projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`, or `https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`
+        &quot;A String&quot;,
+      ],
+      &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is permitted.
+      &quot;instanceNamePrefixes&quot;: [ # Targets VMs whose name starts with one of these prefixes. Similar to labels, this is another way to group VMs when targeting configs, for example prefix=&quot;prod-&quot;.
         &quot;A String&quot;,
       ],
     },
-    &quot;duration&quot;: &quot;A String&quot;, # Duration of the patch job. After the duration ends, the patch job
-        # times out.
-    &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the # Rollout strategy of the patch job.
-        # concurrency control when applying patch(es) to all targeted VMs.
-      &quot;disruptionBudget&quot;: { # Message encapsulating a value that can be either absolute (&quot;fixed&quot;) or # The maximum number (or percentage) of VMs per zone to disrupt at any given
-          # moment. The number of VMs calculated from multiplying the percentage by the
-          # total number of VMs in a zone is rounded up.
-          #
-          # During patching, a VM is considered disrupted from the time the agent is
-          # notified to begin until patching has completed. This disruption time
-          # includes the time to complete reboot and any post-patch steps.
-          #
-          # A VM contributes to the disruption budget if its patching operation fails
-          # either when applying the patches, running pre or post patch steps, or if it
-          # fails to respond with a success notification before timing out. VMs that
-          # are not running or do not have an active agent do not count toward this
-          # disruption budget.
-          #
-          # For zone-by-zone rollouts, if the disruption budget in a zone is exceeded,
-          # the patch job stops, because continuing to the next zone requires
-          # completion of the patch process in the previous zone.
-          #
-          # For example, if the disruption budget has a fixed value of `10`, and 8 VMs
-          # fail to patch in the current zone, the patch job continues to patch 2 VMs
-          # at a time until the zone is completed. When that zone is completed
-          # successfully, patching begins with 10 VMs at a time in the next zone. If 10
-          # VMs in the next zone fail to patch, the patch job stops.
-          # relative (&quot;percent&quot;) to a value.
-        &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be
-            # multiplied by a reference value.
-        &quot;fixed&quot;: 42, # Specifies a fixed value.
-      },
-      &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
-    },
-    &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the # Patch configuration being applied. If omitted, instances are
-        # patched using the default configurations.
-        # patch(es) to a VM instance.
-      &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
-        &quot;exclusivePatches&quot;: [ # An exclusive list of kbs to be updated. These are the only patches
-            # that will be updated. This field must not be used with other
-            # patch configurations.
-          &quot;A String&quot;,
-        ],
-        &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all
-            # updates are applied.
-          &quot;A String&quot;,
-        ],
-        &quot;excludes&quot;: [ # List of KBs to exclude from update.
-          &quot;A String&quot;,
-        ],
-      },
+    &quot;displayName&quot;: &quot;A String&quot;, # Display name for this patch job. This does not have to be unique.
+    &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance. # Patch configuration being applied. If omitted, instances are patched using the default configurations.
       &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
-        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
         &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
           &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
             &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
           },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
             42,
           ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
           &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
         },
       },
-      &quot;yum&quot;: { # Yum patching is performed by executing `yum update`. Additional options # Yum update settings. Use this setting to override the default `yum` patch
-          # rules.
-          # can be set to control how this is executed.
-          #
-          # Note that not all settings are supported on all platforms.
+      &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
+        &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+      },
+      &quot;yum&quot;: { # Yum patching is performed by executing `yum update`. Additional options can be set to control how this is executed. Note that not all settings are supported on all platforms. # Yum update settings. Use this setting to override the default `yum` patch rules.
+        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages that will be updated. If these packages are not installed, they will be ignored. This field must not be specified with any other patch configuration fields.
+          &quot;A String&quot;,
+        ],
+        &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by using the yum `--exclude` flag.
+          &quot;A String&quot;,
+        ],
         &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
-        &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on
-            # all platforms.
-        &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by
-            # using the yum `--exclude` flag.
+        &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on all platforms.
+      },
+      &quot;apt&quot;: { # Apt patching is completed by executing `apt-get update &amp;&amp; apt-get upgrade`. Additional options can be set to control how this is executed. # Apt update settings. Use this setting to override the default `apt` patch rules.
+        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages that will be updated. If these packages are not installed, they will be ignored. This field cannot be specified with any other patch configuration fields.
           &quot;A String&quot;,
         ],
-        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages
-            # that will be updated. If these packages are not installed, they will be
-            # ignored. This field must not be specified with any other patch
-            # configuration fields.
-          &quot;A String&quot;,
-        ],
-      },
-      &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch
-          # rules.
-      },
-      &quot;apt&quot;: { # Apt patching is completed by executing `apt-get update &amp;&amp; apt-get # Apt update settings. Use this setting to override the default `apt` patch
-          # rules.
-          # upgrade`. Additional options can be set to control how this is executed.
+        &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed using `apt-get dist-upgrade` instead.
         &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
           &quot;A String&quot;,
         ],
-        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages
-            # that will be updated. If these packages are not installed, they will be
-            # ignored. This field cannot be specified with any other patch configuration
-            # fields.
+      },
+      &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
+        &quot;excludes&quot;: [ # List of KBs to exclude from update.
           &quot;A String&quot;,
         ],
-        &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed
-            # using `apt-get dist-upgrade` instead.
+        &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all updates are applied.
+          &quot;A String&quot;,
+        ],
+        &quot;exclusivePatches&quot;: [ # An exclusive list of kbs to be updated. These are the only patches that will be updated. This field must not be used with other patch configurations.
+          &quot;A String&quot;,
+        ],
+      },
+      &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch rules.
       },
       &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
-      &quot;zypper&quot;: { # Zypper patching is performed by running `zypper patch`. # Zypper update settings. Use this setting to override the default `zypper`
-          # patch rules.
-          # See also https://en.opensuse.org/SDB:Zypper_manual.
+      &quot;zypper&quot;: { # Zypper patching is performed by running `zypper patch`. See also https://en.opensuse.org/SDB:Zypper_manual. # Zypper update settings. Use this setting to override the default `zypper` patch rules.
+        &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
         &quot;excludes&quot;: [ # List of patches to exclude from update.
           &quot;A String&quot;,
         ],
-        &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
-        &quot;severities&quot;: [ # Install only patches with these severities.
-            # Common severities include critical, important, moderate, and low.
+        &quot;exclusivePatches&quot;: [ # An exclusive list of patches to be updated. These are the only patches that will be installed using &#x27;zypper patch patch:&#x27; command. This field must not be used with any other patch configuration fields.
           &quot;A String&quot;,
         ],
-        &quot;categories&quot;: [ # Install only patches with these categories.
-            # Common categories include security, recommended, and feature.
-          &quot;A String&quot;,
-        ],
-        &quot;exclusivePatches&quot;: [ # An exclusive list of patches to be updated. These are the only patches
-            # that will be installed using &#x27;zypper patch patch:&lt;patch_name&gt;&#x27; command.
-            # This field must not be used with any other patch configuration fields.
+        &quot;categories&quot;: [ # Install only patches with these categories. Common categories include security, recommended, and feature.
           &quot;A String&quot;,
         ],
         &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
-      },
-      &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
-        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
-        &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
+        &quot;severities&quot;: [ # Install only patches with these severities. Common severities include critical, important, moderate, and low.
+          &quot;A String&quot;,
+        ],
       },
     },
-    &quot;description&quot;: &quot;A String&quot;, # Description of the patch job. Length of the description is limited
-        # to 1024 characters.
-    &quot;dryRun&quot;: True or False, # If this patch is a dry-run only, instances are contacted but
-        # will do nothing.
   }
 
   x__xgafv: string, V1 error format.
@@ -635,280 +437,170 @@
 Returns:
   An object of the form:
 
-    { # A high level representation of a patch job that is either in progress
-      # or has completed.
-      #
-      # Instance details are not included in the job. To paginate through instance
-      # details, use ListPatchJobInstanceDetails.
-      #
-      # For more information about patch jobs, see
-      # [Creating patch
-      # jobs](https://cloud.google.com/compute/docs/os-patch-management/create-patch-job).
-    &quot;name&quot;: &quot;A String&quot;, # Unique identifier for this patch job in the form
-        # `projects/*/patchJobs/*`
+    { # A high level representation of a patch job that is either in progress or has completed. Instance details are not included in the job. To paginate through instance details, use ListPatchJobInstanceDetails. For more information about patch jobs, see [Creating patch jobs](https://cloud.google.com/compute/docs/os-patch-management/create-patch-job).
+    &quot;name&quot;: &quot;A String&quot;, # Unique identifier for this patch job in the form `projects/*/patchJobs/*`
+    &quot;percentComplete&quot;: 3.14, # Reflects the overall progress of the patch job in the range of 0.0 being no progress to 100.0 being complete.
     &quot;updateTime&quot;: &quot;A String&quot;, # Last time this patch job was updated.
-    &quot;state&quot;: &quot;A String&quot;, # The current state of the PatchJob.
-    &quot;instanceDetailsSummary&quot;: { # A summary of the current patch state across all instances that this patch # Summary of instance details.
-        # job affects. Contains counts of instances in different states. These states
-        # map to `InstancePatchState`. List patch job instance details to see the
-        # specific states of each instance.
-      &quot;failedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that failed.
+    &quot;instanceDetailsSummary&quot;: { # A summary of the current patch state across all instances that this patch job affects. Contains counts of instances in different states. These states map to `InstancePatchState`. List patch job instance details to see the specific states of each instance. # Summary of instance details.
       &quot;ackedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that have acked and will start shortly.
-      &quot;succeededRebootRequiredInstanceCount&quot;: &quot;A String&quot;, # Number of instances that require reboot.
-      &quot;prePatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the pre-patch step.
-      &quot;pendingInstanceCount&quot;: &quot;A String&quot;, # Number of instances pending patch job.
-      &quot;applyingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are applying patches.
-      &quot;downloadingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are downloading patches.
-      &quot;noAgentDetectedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that do not appear to be running the agent. Check to
-          # ensure that the agent is installed, running, and able to communicate with
-          # the service.
-      &quot;postPatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the post-patch step.
-      &quot;rebootingInstanceCount&quot;: &quot;A String&quot;, # Number of instances rebooting.
       &quot;startedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that have started.
-      &quot;inactiveInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are inactive.
-      &quot;timedOutInstanceCount&quot;: &quot;A String&quot;, # Number of instances that exceeded the time out while applying the patch.
+      &quot;downloadingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are downloading patches.
+      &quot;pendingInstanceCount&quot;: &quot;A String&quot;, # Number of instances pending patch job.
+      &quot;noAgentDetectedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that do not appear to be running the agent. Check to ensure that the agent is installed, running, and able to communicate with the service.
+      &quot;prePatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the pre-patch step.
       &quot;succeededInstanceCount&quot;: &quot;A String&quot;, # Number of instances that have completed successfully.
+      &quot;failedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that failed.
+      &quot;succeededRebootRequiredInstanceCount&quot;: &quot;A String&quot;, # Number of instances that require reboot.
       &quot;notifiedInstanceCount&quot;: &quot;A String&quot;, # Number of instances notified about patch job.
+      &quot;rebootingInstanceCount&quot;: &quot;A String&quot;, # Number of instances rebooting.
+      &quot;timedOutInstanceCount&quot;: &quot;A String&quot;, # Number of instances that exceeded the time out while applying the patch.
+      &quot;postPatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the post-patch step.
+      &quot;inactiveInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are inactive.
+      &quot;applyingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are applying patches.
     },
-    &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the # Patch configuration being applied.
-        # patch(es) to a VM instance.
-      &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
-        &quot;exclusivePatches&quot;: [ # An exclusive list of kbs to be updated. These are the only patches
-            # that will be updated. This field must not be used with other
-            # patch configurations.
-          &quot;A String&quot;,
-        ],
-        &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all
-            # updates are applied.
-          &quot;A String&quot;,
-        ],
-        &quot;excludes&quot;: [ # List of KBs to exclude from update.
-          &quot;A String&quot;,
-        ],
-      },
-      &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
-        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
-        &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
-      },
-      &quot;yum&quot;: { # Yum patching is performed by executing `yum update`. Additional options # Yum update settings. Use this setting to override the default `yum` patch
-          # rules.
-          # can be set to control how this is executed.
-          #
-          # Note that not all settings are supported on all platforms.
-        &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
-        &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on
-            # all platforms.
-        &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by
-            # using the yum `--exclude` flag.
-          &quot;A String&quot;,
-        ],
-        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages
-            # that will be updated. If these packages are not installed, they will be
-            # ignored. This field must not be specified with any other patch
-            # configuration fields.
-          &quot;A String&quot;,
-        ],
-      },
-      &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch
-          # rules.
-      },
-      &quot;apt&quot;: { # Apt patching is completed by executing `apt-get update &amp;&amp; apt-get # Apt update settings. Use this setting to override the default `apt` patch
-          # rules.
-          # upgrade`. Additional options can be set to control how this is executed.
-        &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
-          &quot;A String&quot;,
-        ],
-        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages
-            # that will be updated. If these packages are not installed, they will be
-            # ignored. This field cannot be specified with any other patch configuration
-            # fields.
-          &quot;A String&quot;,
-        ],
-        &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed
-            # using `apt-get dist-upgrade` instead.
-      },
-      &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
-      &quot;zypper&quot;: { # Zypper patching is performed by running `zypper patch`. # Zypper update settings. Use this setting to override the default `zypper`
-          # patch rules.
-          # See also https://en.opensuse.org/SDB:Zypper_manual.
-        &quot;excludes&quot;: [ # List of patches to exclude from update.
-          &quot;A String&quot;,
-        ],
-        &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
-        &quot;severities&quot;: [ # Install only patches with these severities.
-            # Common severities include critical, important, moderate, and low.
-          &quot;A String&quot;,
-        ],
-        &quot;categories&quot;: [ # Install only patches with these categories.
-            # Common categories include security, recommended, and feature.
-          &quot;A String&quot;,
-        ],
-        &quot;exclusivePatches&quot;: [ # An exclusive list of patches to be updated. These are the only patches
-            # that will be installed using &#x27;zypper patch patch:&lt;patch_name&gt;&#x27; command.
-            # This field must not be used with any other patch configuration fields.
-          &quot;A String&quot;,
-        ],
-        &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
-      },
-      &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
-        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
-        &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
-      },
-    },
-    &quot;createTime&quot;: &quot;A String&quot;, # Time this patch job was created.
-    &quot;instanceFilter&quot;: { # A filter to target VM instances for patching. The targeted # Instances to patch.
-        # VMs must meet all criteria specified. So if both labels and zones are
-        # specified, the patch job targets only VMs with those labels and in those
-        # zones.
-      &quot;instanceNamePrefixes&quot;: [ # Targets VMs whose name starts with one of these prefixes. Similar to
-          # labels, this is another way to group VMs when targeting configs, for
-          # example prefix=&quot;prod-&quot;.
-        &quot;A String&quot;,
-      ],
-      &quot;groupLabels&quot;: [ # Targets VM instances matching ANY of these GroupLabels. This allows
-          # targeting of disparate groups of VM instances.
-        { # Targets a group of VM instances by using their [assigned
-            # labels](https://cloud.google.com/compute/docs/labeling-resources). Labels
-            # are key-value pairs. A `GroupLabel` is a combination of labels
-            # that is used to target VMs for a patch job.
-            #
-            # For example, a patch job can target VMs that have the following
-            # `GroupLabel`: `{&quot;env&quot;:&quot;test&quot;, &quot;app&quot;:&quot;web&quot;}`. This means that the patch job
-            # is applied to VMs that have both the labels `env=test` and `app=web`.
-          &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM
-              # instance to be targeted by this filter.
+    &quot;errorMessage&quot;: &quot;A String&quot;, # If this patch job failed, this message provides information about the failure.
+    &quot;instanceFilter&quot;: { # A filter to target VM instances for patching. The targeted VMs must meet all criteria specified. So if both labels and zones are specified, the patch job targets only VMs with those labels and in those zones. # Instances to patch.
+      &quot;groupLabels&quot;: [ # Targets VM instances matching ANY of these GroupLabels. This allows targeting of disparate groups of VM instances.
+        { # Targets a group of VM instances by using their [assigned labels](https://cloud.google.com/compute/docs/labeling-resources). Labels are key-value pairs. A `GroupLabel` is a combination of labels that is used to target VMs for a patch job. For example, a patch job can target VMs that have the following `GroupLabel`: `{&quot;env&quot;:&quot;test&quot;, &quot;app&quot;:&quot;web&quot;}`. This means that the patch job is applied to VMs that have both the labels `env=test` and `app=web`.
+          &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM instance to be targeted by this filter.
             &quot;a_key&quot;: &quot;A String&quot;,
           },
         },
       ],
-      &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM
-          # instances in any zone.
+      &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM instances in any zone.
         &quot;A String&quot;,
       ],
-      &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is
-          # permitted.
-      &quot;instances&quot;: [ # Targets any of the VM instances specified. Instances are specified by their
-          # URI in the form `zones/[ZONE]/instances/[INSTANCE_NAME]`,
-          # `projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`, or
-          # `https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`
+      &quot;instances&quot;: [ # Targets any of the VM instances specified. Instances are specified by their URI in the form `zones/[ZONE]/instances/[INSTANCE_NAME]`, `projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`, or `https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`
+        &quot;A String&quot;,
+      ],
+      &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is permitted.
+      &quot;instanceNamePrefixes&quot;: [ # Targets VMs whose name starts with one of these prefixes. Similar to labels, this is another way to group VMs when targeting configs, for example prefix=&quot;prod-&quot;.
         &quot;A String&quot;,
       ],
     },
-    &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the # Rollout strategy being applied.
-        # concurrency control when applying patch(es) to all targeted VMs.
-      &quot;disruptionBudget&quot;: { # Message encapsulating a value that can be either absolute (&quot;fixed&quot;) or # The maximum number (or percentage) of VMs per zone to disrupt at any given
-          # moment. The number of VMs calculated from multiplying the percentage by the
-          # total number of VMs in a zone is rounded up.
-          #
-          # During patching, a VM is considered disrupted from the time the agent is
-          # notified to begin until patching has completed. This disruption time
-          # includes the time to complete reboot and any post-patch steps.
-          #
-          # A VM contributes to the disruption budget if its patching operation fails
-          # either when applying the patches, running pre or post patch steps, or if it
-          # fails to respond with a success notification before timing out. VMs that
-          # are not running or do not have an active agent do not count toward this
-          # disruption budget.
-          #
-          # For zone-by-zone rollouts, if the disruption budget in a zone is exceeded,
-          # the patch job stops, because continuing to the next zone requires
-          # completion of the patch process in the previous zone.
-          #
-          # For example, if the disruption budget has a fixed value of `10`, and 8 VMs
-          # fail to patch in the current zone, the patch job continues to patch 2 VMs
-          # at a time until the zone is completed. When that zone is completed
-          # successfully, patching begins with 10 VMs at a time in the next zone. If 10
-          # VMs in the next zone fail to patch, the patch job stops.
-          # relative (&quot;percent&quot;) to a value.
-        &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be
-            # multiplied by a reference value.
-        &quot;fixed&quot;: 42, # Specifies a fixed value.
-      },
-      &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
-    },
-    &quot;description&quot;: &quot;A String&quot;, # Description of the patch job. Length of the description is limited
-        # to 1024 characters.
-    &quot;duration&quot;: &quot;A String&quot;, # Duration of the patch job. After the duration ends, the
-        # patch job times out.
-    &quot;errorMessage&quot;: &quot;A String&quot;, # If this patch job failed, this message provides information about the
-        # failure.
-    &quot;percentComplete&quot;: 3.14, # Reflects the overall progress of the patch job in the range of
-        # 0.0 being no progress to 100.0 being complete.
     &quot;patchDeployment&quot;: &quot;A String&quot;, # Output only. Name of the patch deployment that created this patch job.
+    &quot;createTime&quot;: &quot;A String&quot;, # Time this patch job was created.
+    &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs. # Rollout strategy being applied.
+      &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
+      &quot;disruptionBudget&quot;: { # Message encapsulating a value that can be either absolute (&quot;fixed&quot;) or relative (&quot;percent&quot;) to a value. # The maximum number (or percentage) of VMs per zone to disrupt at any given moment. The number of VMs calculated from multiplying the percentage by the total number of VMs in a zone is rounded up. During patching, a VM is considered disrupted from the time the agent is notified to begin until patching has completed. This disruption time includes the time to complete reboot and any post-patch steps. A VM contributes to the disruption budget if its patching operation fails either when applying the patches, running pre or post patch steps, or if it fails to respond with a success notification before timing out. VMs that are not running or do not have an active agent do not count toward this disruption budget. For zone-by-zone rollouts, if the disruption budget in a zone is exceeded, the patch job stops, because continuing to the next zone requires completion of the patch process in the previous zone. For example, if the disruption budget has a fixed value of `10`, and 8 VMs fail to patch in the current zone, the patch job continues to patch 2 VMs at a time until the zone is completed. When that zone is completed successfully, patching begins with 10 VMs at a time in the next zone. If 10 VMs in the next zone fail to patch, the patch job stops.
+        &quot;fixed&quot;: 42, # Specifies a fixed value.
+        &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be multiplied by a reference value.
+      },
+    },
     &quot;displayName&quot;: &quot;A String&quot;, # Display name for this patch job. This is not a unique identifier.
-    &quot;dryRun&quot;: True or False, # If this patch job is a dry run, the agent reports that it has
-        # finished without running any updates on the VM instance.
+    &quot;state&quot;: &quot;A String&quot;, # The current state of the PatchJob.
+    &quot;dryRun&quot;: True or False, # If this patch job is a dry run, the agent reports that it has finished without running any updates on the VM instance.
+    &quot;description&quot;: &quot;A String&quot;, # Description of the patch job. Length of the description is limited to 1024 characters.
+    &quot;duration&quot;: &quot;A String&quot;, # Duration of the patch job. After the duration ends, the patch job times out.
+    &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance. # Patch configuration being applied.
+      &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
+        &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+      },
+      &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
+        &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+      },
+      &quot;yum&quot;: { # Yum patching is performed by executing `yum update`. Additional options can be set to control how this is executed. Note that not all settings are supported on all platforms. # Yum update settings. Use this setting to override the default `yum` patch rules.
+        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages that will be updated. If these packages are not installed, they will be ignored. This field must not be specified with any other patch configuration fields.
+          &quot;A String&quot;,
+        ],
+        &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by using the yum `--exclude` flag.
+          &quot;A String&quot;,
+        ],
+        &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
+        &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on all platforms.
+      },
+      &quot;apt&quot;: { # Apt patching is completed by executing `apt-get update &amp;&amp; apt-get upgrade`. Additional options can be set to control how this is executed. # Apt update settings. Use this setting to override the default `apt` patch rules.
+        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages that will be updated. If these packages are not installed, they will be ignored. This field cannot be specified with any other patch configuration fields.
+          &quot;A String&quot;,
+        ],
+        &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed using `apt-get dist-upgrade` instead.
+        &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
+          &quot;A String&quot;,
+        ],
+      },
+      &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
+        &quot;excludes&quot;: [ # List of KBs to exclude from update.
+          &quot;A String&quot;,
+        ],
+        &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all updates are applied.
+          &quot;A String&quot;,
+        ],
+        &quot;exclusivePatches&quot;: [ # An exclusive list of kbs to be updated. These are the only patches that will be updated. This field must not be used with other patch configurations.
+          &quot;A String&quot;,
+        ],
+      },
+      &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch rules.
+      },
+      &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
+      &quot;zypper&quot;: { # Zypper patching is performed by running `zypper patch`. See also https://en.opensuse.org/SDB:Zypper_manual. # Zypper update settings. Use this setting to override the default `zypper` patch rules.
+        &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
+        &quot;excludes&quot;: [ # List of patches to exclude from update.
+          &quot;A String&quot;,
+        ],
+        &quot;exclusivePatches&quot;: [ # An exclusive list of patches to be updated. These are the only patches that will be installed using &#x27;zypper patch patch:&#x27; command. This field must not be used with any other patch configuration fields.
+          &quot;A String&quot;,
+        ],
+        &quot;categories&quot;: [ # Install only patches with these categories. Common categories include security, recommended, and feature.
+          &quot;A String&quot;,
+        ],
+        &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
+        &quot;severities&quot;: [ # Install only patches with these severities. Common severities include critical, important, moderate, and low.
+          &quot;A String&quot;,
+        ],
+      },
+    },
   }</pre>
 </div>
 
 <div class="method">
     <code class="details" id="get">get(name, x__xgafv=None)</code>
-  <pre>Get the patch job. This can be used to track the progress of an
-ongoing patch job or review the details of completed jobs.
+  <pre>Get the patch job. This can be used to track the progress of an ongoing patch job or review the details of completed jobs.
 
 Args:
   name: string, Required. Name of the patch in the form `projects/*/patchJobs/*` (required)
@@ -920,288 +612,176 @@
 Returns:
   An object of the form:
 
-    { # A high level representation of a patch job that is either in progress
-      # or has completed.
-      #
-      # Instance details are not included in the job. To paginate through instance
-      # details, use ListPatchJobInstanceDetails.
-      #
-      # For more information about patch jobs, see
-      # [Creating patch
-      # jobs](https://cloud.google.com/compute/docs/os-patch-management/create-patch-job).
-    &quot;name&quot;: &quot;A String&quot;, # Unique identifier for this patch job in the form
-        # `projects/*/patchJobs/*`
+    { # A high level representation of a patch job that is either in progress or has completed. Instance details are not included in the job. To paginate through instance details, use ListPatchJobInstanceDetails. For more information about patch jobs, see [Creating patch jobs](https://cloud.google.com/compute/docs/os-patch-management/create-patch-job).
+    &quot;name&quot;: &quot;A String&quot;, # Unique identifier for this patch job in the form `projects/*/patchJobs/*`
+    &quot;percentComplete&quot;: 3.14, # Reflects the overall progress of the patch job in the range of 0.0 being no progress to 100.0 being complete.
     &quot;updateTime&quot;: &quot;A String&quot;, # Last time this patch job was updated.
-    &quot;state&quot;: &quot;A String&quot;, # The current state of the PatchJob.
-    &quot;instanceDetailsSummary&quot;: { # A summary of the current patch state across all instances that this patch # Summary of instance details.
-        # job affects. Contains counts of instances in different states. These states
-        # map to `InstancePatchState`. List patch job instance details to see the
-        # specific states of each instance.
-      &quot;failedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that failed.
+    &quot;instanceDetailsSummary&quot;: { # A summary of the current patch state across all instances that this patch job affects. Contains counts of instances in different states. These states map to `InstancePatchState`. List patch job instance details to see the specific states of each instance. # Summary of instance details.
       &quot;ackedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that have acked and will start shortly.
-      &quot;succeededRebootRequiredInstanceCount&quot;: &quot;A String&quot;, # Number of instances that require reboot.
-      &quot;prePatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the pre-patch step.
-      &quot;pendingInstanceCount&quot;: &quot;A String&quot;, # Number of instances pending patch job.
-      &quot;applyingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are applying patches.
-      &quot;downloadingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are downloading patches.
-      &quot;noAgentDetectedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that do not appear to be running the agent. Check to
-          # ensure that the agent is installed, running, and able to communicate with
-          # the service.
-      &quot;postPatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the post-patch step.
-      &quot;rebootingInstanceCount&quot;: &quot;A String&quot;, # Number of instances rebooting.
       &quot;startedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that have started.
-      &quot;inactiveInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are inactive.
-      &quot;timedOutInstanceCount&quot;: &quot;A String&quot;, # Number of instances that exceeded the time out while applying the patch.
+      &quot;downloadingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are downloading patches.
+      &quot;pendingInstanceCount&quot;: &quot;A String&quot;, # Number of instances pending patch job.
+      &quot;noAgentDetectedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that do not appear to be running the agent. Check to ensure that the agent is installed, running, and able to communicate with the service.
+      &quot;prePatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the pre-patch step.
       &quot;succeededInstanceCount&quot;: &quot;A String&quot;, # Number of instances that have completed successfully.
+      &quot;failedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that failed.
+      &quot;succeededRebootRequiredInstanceCount&quot;: &quot;A String&quot;, # Number of instances that require reboot.
       &quot;notifiedInstanceCount&quot;: &quot;A String&quot;, # Number of instances notified about patch job.
+      &quot;rebootingInstanceCount&quot;: &quot;A String&quot;, # Number of instances rebooting.
+      &quot;timedOutInstanceCount&quot;: &quot;A String&quot;, # Number of instances that exceeded the time out while applying the patch.
+      &quot;postPatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the post-patch step.
+      &quot;inactiveInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are inactive.
+      &quot;applyingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are applying patches.
     },
-    &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the # Patch configuration being applied.
-        # patch(es) to a VM instance.
-      &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
-        &quot;exclusivePatches&quot;: [ # An exclusive list of kbs to be updated. These are the only patches
-            # that will be updated. This field must not be used with other
-            # patch configurations.
-          &quot;A String&quot;,
-        ],
-        &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all
-            # updates are applied.
-          &quot;A String&quot;,
-        ],
-        &quot;excludes&quot;: [ # List of KBs to exclude from update.
-          &quot;A String&quot;,
-        ],
-      },
-      &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
-        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
-        &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
-      },
-      &quot;yum&quot;: { # Yum patching is performed by executing `yum update`. Additional options # Yum update settings. Use this setting to override the default `yum` patch
-          # rules.
-          # can be set to control how this is executed.
-          #
-          # Note that not all settings are supported on all platforms.
-        &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
-        &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on
-            # all platforms.
-        &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by
-            # using the yum `--exclude` flag.
-          &quot;A String&quot;,
-        ],
-        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages
-            # that will be updated. If these packages are not installed, they will be
-            # ignored. This field must not be specified with any other patch
-            # configuration fields.
-          &quot;A String&quot;,
-        ],
-      },
-      &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch
-          # rules.
-      },
-      &quot;apt&quot;: { # Apt patching is completed by executing `apt-get update &amp;&amp; apt-get # Apt update settings. Use this setting to override the default `apt` patch
-          # rules.
-          # upgrade`. Additional options can be set to control how this is executed.
-        &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
-          &quot;A String&quot;,
-        ],
-        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages
-            # that will be updated. If these packages are not installed, they will be
-            # ignored. This field cannot be specified with any other patch configuration
-            # fields.
-          &quot;A String&quot;,
-        ],
-        &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed
-            # using `apt-get dist-upgrade` instead.
-      },
-      &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
-      &quot;zypper&quot;: { # Zypper patching is performed by running `zypper patch`. # Zypper update settings. Use this setting to override the default `zypper`
-          # patch rules.
-          # See also https://en.opensuse.org/SDB:Zypper_manual.
-        &quot;excludes&quot;: [ # List of patches to exclude from update.
-          &quot;A String&quot;,
-        ],
-        &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
-        &quot;severities&quot;: [ # Install only patches with these severities.
-            # Common severities include critical, important, moderate, and low.
-          &quot;A String&quot;,
-        ],
-        &quot;categories&quot;: [ # Install only patches with these categories.
-            # Common categories include security, recommended, and feature.
-          &quot;A String&quot;,
-        ],
-        &quot;exclusivePatches&quot;: [ # An exclusive list of patches to be updated. These are the only patches
-            # that will be installed using &#x27;zypper patch patch:&lt;patch_name&gt;&#x27; command.
-            # This field must not be used with any other patch configuration fields.
-          &quot;A String&quot;,
-        ],
-        &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
-      },
-      &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
-        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
-        &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
-          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-              # specified the script will be executed directly, which will likely
-              # only succeed for scripts with [shebang lines]
-              # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                # ensure that the ExecStep specified by this PatchJob does not change.
-          },
-          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-              # execution can return to indicate a success.
-            42,
-          ],
-          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-        },
-      },
-    },
-    &quot;createTime&quot;: &quot;A String&quot;, # Time this patch job was created.
-    &quot;instanceFilter&quot;: { # A filter to target VM instances for patching. The targeted # Instances to patch.
-        # VMs must meet all criteria specified. So if both labels and zones are
-        # specified, the patch job targets only VMs with those labels and in those
-        # zones.
-      &quot;instanceNamePrefixes&quot;: [ # Targets VMs whose name starts with one of these prefixes. Similar to
-          # labels, this is another way to group VMs when targeting configs, for
-          # example prefix=&quot;prod-&quot;.
-        &quot;A String&quot;,
-      ],
-      &quot;groupLabels&quot;: [ # Targets VM instances matching ANY of these GroupLabels. This allows
-          # targeting of disparate groups of VM instances.
-        { # Targets a group of VM instances by using their [assigned
-            # labels](https://cloud.google.com/compute/docs/labeling-resources). Labels
-            # are key-value pairs. A `GroupLabel` is a combination of labels
-            # that is used to target VMs for a patch job.
-            #
-            # For example, a patch job can target VMs that have the following
-            # `GroupLabel`: `{&quot;env&quot;:&quot;test&quot;, &quot;app&quot;:&quot;web&quot;}`. This means that the patch job
-            # is applied to VMs that have both the labels `env=test` and `app=web`.
-          &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM
-              # instance to be targeted by this filter.
+    &quot;errorMessage&quot;: &quot;A String&quot;, # If this patch job failed, this message provides information about the failure.
+    &quot;instanceFilter&quot;: { # A filter to target VM instances for patching. The targeted VMs must meet all criteria specified. So if both labels and zones are specified, the patch job targets only VMs with those labels and in those zones. # Instances to patch.
+      &quot;groupLabels&quot;: [ # Targets VM instances matching ANY of these GroupLabels. This allows targeting of disparate groups of VM instances.
+        { # Targets a group of VM instances by using their [assigned labels](https://cloud.google.com/compute/docs/labeling-resources). Labels are key-value pairs. A `GroupLabel` is a combination of labels that is used to target VMs for a patch job. For example, a patch job can target VMs that have the following `GroupLabel`: `{&quot;env&quot;:&quot;test&quot;, &quot;app&quot;:&quot;web&quot;}`. This means that the patch job is applied to VMs that have both the labels `env=test` and `app=web`.
+          &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM instance to be targeted by this filter.
             &quot;a_key&quot;: &quot;A String&quot;,
           },
         },
       ],
-      &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM
-          # instances in any zone.
+      &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM instances in any zone.
         &quot;A String&quot;,
       ],
-      &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is
-          # permitted.
-      &quot;instances&quot;: [ # Targets any of the VM instances specified. Instances are specified by their
-          # URI in the form `zones/[ZONE]/instances/[INSTANCE_NAME]`,
-          # `projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`, or
-          # `https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`
+      &quot;instances&quot;: [ # Targets any of the VM instances specified. Instances are specified by their URI in the form `zones/[ZONE]/instances/[INSTANCE_NAME]`, `projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`, or `https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`
+        &quot;A String&quot;,
+      ],
+      &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is permitted.
+      &quot;instanceNamePrefixes&quot;: [ # Targets VMs whose name starts with one of these prefixes. Similar to labels, this is another way to group VMs when targeting configs, for example prefix=&quot;prod-&quot;.
         &quot;A String&quot;,
       ],
     },
-    &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the # Rollout strategy being applied.
-        # concurrency control when applying patch(es) to all targeted VMs.
-      &quot;disruptionBudget&quot;: { # Message encapsulating a value that can be either absolute (&quot;fixed&quot;) or # The maximum number (or percentage) of VMs per zone to disrupt at any given
-          # moment. The number of VMs calculated from multiplying the percentage by the
-          # total number of VMs in a zone is rounded up.
-          #
-          # During patching, a VM is considered disrupted from the time the agent is
-          # notified to begin until patching has completed. This disruption time
-          # includes the time to complete reboot and any post-patch steps.
-          #
-          # A VM contributes to the disruption budget if its patching operation fails
-          # either when applying the patches, running pre or post patch steps, or if it
-          # fails to respond with a success notification before timing out. VMs that
-          # are not running or do not have an active agent do not count toward this
-          # disruption budget.
-          #
-          # For zone-by-zone rollouts, if the disruption budget in a zone is exceeded,
-          # the patch job stops, because continuing to the next zone requires
-          # completion of the patch process in the previous zone.
-          #
-          # For example, if the disruption budget has a fixed value of `10`, and 8 VMs
-          # fail to patch in the current zone, the patch job continues to patch 2 VMs
-          # at a time until the zone is completed. When that zone is completed
-          # successfully, patching begins with 10 VMs at a time in the next zone. If 10
-          # VMs in the next zone fail to patch, the patch job stops.
-          # relative (&quot;percent&quot;) to a value.
-        &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be
-            # multiplied by a reference value.
-        &quot;fixed&quot;: 42, # Specifies a fixed value.
-      },
-      &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
-    },
-    &quot;description&quot;: &quot;A String&quot;, # Description of the patch job. Length of the description is limited
-        # to 1024 characters.
-    &quot;duration&quot;: &quot;A String&quot;, # Duration of the patch job. After the duration ends, the
-        # patch job times out.
-    &quot;errorMessage&quot;: &quot;A String&quot;, # If this patch job failed, this message provides information about the
-        # failure.
-    &quot;percentComplete&quot;: 3.14, # Reflects the overall progress of the patch job in the range of
-        # 0.0 being no progress to 100.0 being complete.
     &quot;patchDeployment&quot;: &quot;A String&quot;, # Output only. Name of the patch deployment that created this patch job.
+    &quot;createTime&quot;: &quot;A String&quot;, # Time this patch job was created.
+    &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs. # Rollout strategy being applied.
+      &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
+      &quot;disruptionBudget&quot;: { # Message encapsulating a value that can be either absolute (&quot;fixed&quot;) or relative (&quot;percent&quot;) to a value. # The maximum number (or percentage) of VMs per zone to disrupt at any given moment. The number of VMs calculated from multiplying the percentage by the total number of VMs in a zone is rounded up. During patching, a VM is considered disrupted from the time the agent is notified to begin until patching has completed. This disruption time includes the time to complete reboot and any post-patch steps. A VM contributes to the disruption budget if its patching operation fails either when applying the patches, running pre or post patch steps, or if it fails to respond with a success notification before timing out. VMs that are not running or do not have an active agent do not count toward this disruption budget. For zone-by-zone rollouts, if the disruption budget in a zone is exceeded, the patch job stops, because continuing to the next zone requires completion of the patch process in the previous zone. For example, if the disruption budget has a fixed value of `10`, and 8 VMs fail to patch in the current zone, the patch job continues to patch 2 VMs at a time until the zone is completed. When that zone is completed successfully, patching begins with 10 VMs at a time in the next zone. If 10 VMs in the next zone fail to patch, the patch job stops.
+        &quot;fixed&quot;: 42, # Specifies a fixed value.
+        &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be multiplied by a reference value.
+      },
+    },
     &quot;displayName&quot;: &quot;A String&quot;, # Display name for this patch job. This is not a unique identifier.
-    &quot;dryRun&quot;: True or False, # If this patch job is a dry run, the agent reports that it has
-        # finished without running any updates on the VM instance.
+    &quot;state&quot;: &quot;A String&quot;, # The current state of the PatchJob.
+    &quot;dryRun&quot;: True or False, # If this patch job is a dry run, the agent reports that it has finished without running any updates on the VM instance.
+    &quot;description&quot;: &quot;A String&quot;, # Description of the patch job. Length of the description is limited to 1024 characters.
+    &quot;duration&quot;: &quot;A String&quot;, # Duration of the patch job. After the duration ends, the patch job times out.
+    &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance. # Patch configuration being applied.
+      &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
+        &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+      },
+      &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
+        &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+        &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
+          &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+          &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+            &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+            &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+            &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+          },
+          &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+            42,
+          ],
+          &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+        },
+      },
+      &quot;yum&quot;: { # Yum patching is performed by executing `yum update`. Additional options can be set to control how this is executed. Note that not all settings are supported on all platforms. # Yum update settings. Use this setting to override the default `yum` patch rules.
+        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages that will be updated. If these packages are not installed, they will be ignored. This field must not be specified with any other patch configuration fields.
+          &quot;A String&quot;,
+        ],
+        &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by using the yum `--exclude` flag.
+          &quot;A String&quot;,
+        ],
+        &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
+        &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on all platforms.
+      },
+      &quot;apt&quot;: { # Apt patching is completed by executing `apt-get update &amp;&amp; apt-get upgrade`. Additional options can be set to control how this is executed. # Apt update settings. Use this setting to override the default `apt` patch rules.
+        &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages that will be updated. If these packages are not installed, they will be ignored. This field cannot be specified with any other patch configuration fields.
+          &quot;A String&quot;,
+        ],
+        &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed using `apt-get dist-upgrade` instead.
+        &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
+          &quot;A String&quot;,
+        ],
+      },
+      &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
+        &quot;excludes&quot;: [ # List of KBs to exclude from update.
+          &quot;A String&quot;,
+        ],
+        &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all updates are applied.
+          &quot;A String&quot;,
+        ],
+        &quot;exclusivePatches&quot;: [ # An exclusive list of kbs to be updated. These are the only patches that will be updated. This field must not be used with other patch configurations.
+          &quot;A String&quot;,
+        ],
+      },
+      &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch rules.
+      },
+      &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
+      &quot;zypper&quot;: { # Zypper patching is performed by running `zypper patch`. See also https://en.opensuse.org/SDB:Zypper_manual. # Zypper update settings. Use this setting to override the default `zypper` patch rules.
+        &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
+        &quot;excludes&quot;: [ # List of patches to exclude from update.
+          &quot;A String&quot;,
+        ],
+        &quot;exclusivePatches&quot;: [ # An exclusive list of patches to be updated. These are the only patches that will be installed using &#x27;zypper patch patch:&#x27; command. This field must not be used with any other patch configuration fields.
+          &quot;A String&quot;,
+        ],
+        &quot;categories&quot;: [ # Install only patches with these categories. Common categories include security, recommended, and feature.
+          &quot;A String&quot;,
+        ],
+        &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
+        &quot;severities&quot;: [ # Install only patches with these severities. Common severities include critical, important, moderate, and low.
+          &quot;A String&quot;,
+        ],
+      },
+    },
   }</pre>
 </div>
 
 <div class="method">
-    <code class="details" id="list">list(parent, pageSize=None, pageToken=None, filter=None, x__xgafv=None)</code>
+    <code class="details" id="list">list(parent, pageToken=None, filter=None, pageSize=None, x__xgafv=None)</code>
   <pre>Get a list of patch jobs.
 
 Args:
   parent: string, Required. In the form of `projects/*` (required)
+  pageToken: string, A pagination token returned from a previous call that indicates where this listing should continue from.
+  filter: string, If provided, this field specifies the criteria that must be met by patch jobs to be included in the response. Currently, filtering is only available on the patch_deployment field.
   pageSize: integer, The maximum number of instance status to return.
-  pageToken: string, A pagination token returned from a previous call
-that indicates where this listing should continue from.
-  filter: string, If provided, this field specifies the criteria that must be met by patch
-jobs to be included in the response.
-Currently, filtering is only available on the patch_deployment field.
   x__xgafv: string, V1 error format.
     Allowed values
       1 - v1 error format
@@ -1211,277 +791,168 @@
   An object of the form:
 
     { # A response message for listing patch jobs.
+    &quot;nextPageToken&quot;: &quot;A String&quot;, # A pagination token that can be used to get the next page of results.
     &quot;patchJobs&quot;: [ # The list of patch jobs.
-      { # A high level representation of a patch job that is either in progress
-          # or has completed.
-          #
-          # Instance details are not included in the job. To paginate through instance
-          # details, use ListPatchJobInstanceDetails.
-          #
-          # For more information about patch jobs, see
-          # [Creating patch
-          # jobs](https://cloud.google.com/compute/docs/os-patch-management/create-patch-job).
-        &quot;name&quot;: &quot;A String&quot;, # Unique identifier for this patch job in the form
-            # `projects/*/patchJobs/*`
+      { # A high level representation of a patch job that is either in progress or has completed. Instance details are not included in the job. To paginate through instance details, use ListPatchJobInstanceDetails. For more information about patch jobs, see [Creating patch jobs](https://cloud.google.com/compute/docs/os-patch-management/create-patch-job).
+        &quot;name&quot;: &quot;A String&quot;, # Unique identifier for this patch job in the form `projects/*/patchJobs/*`
+        &quot;percentComplete&quot;: 3.14, # Reflects the overall progress of the patch job in the range of 0.0 being no progress to 100.0 being complete.
         &quot;updateTime&quot;: &quot;A String&quot;, # Last time this patch job was updated.
-        &quot;state&quot;: &quot;A String&quot;, # The current state of the PatchJob.
-        &quot;instanceDetailsSummary&quot;: { # A summary of the current patch state across all instances that this patch # Summary of instance details.
-            # job affects. Contains counts of instances in different states. These states
-            # map to `InstancePatchState`. List patch job instance details to see the
-            # specific states of each instance.
-          &quot;failedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that failed.
+        &quot;instanceDetailsSummary&quot;: { # A summary of the current patch state across all instances that this patch job affects. Contains counts of instances in different states. These states map to `InstancePatchState`. List patch job instance details to see the specific states of each instance. # Summary of instance details.
           &quot;ackedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that have acked and will start shortly.
-          &quot;succeededRebootRequiredInstanceCount&quot;: &quot;A String&quot;, # Number of instances that require reboot.
-          &quot;prePatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the pre-patch step.
-          &quot;pendingInstanceCount&quot;: &quot;A String&quot;, # Number of instances pending patch job.
-          &quot;applyingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are applying patches.
-          &quot;downloadingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are downloading patches.
-          &quot;noAgentDetectedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that do not appear to be running the agent. Check to
-              # ensure that the agent is installed, running, and able to communicate with
-              # the service.
-          &quot;postPatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the post-patch step.
-          &quot;rebootingInstanceCount&quot;: &quot;A String&quot;, # Number of instances rebooting.
           &quot;startedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that have started.
-          &quot;inactiveInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are inactive.
-          &quot;timedOutInstanceCount&quot;: &quot;A String&quot;, # Number of instances that exceeded the time out while applying the patch.
+          &quot;downloadingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are downloading patches.
+          &quot;pendingInstanceCount&quot;: &quot;A String&quot;, # Number of instances pending patch job.
+          &quot;noAgentDetectedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that do not appear to be running the agent. Check to ensure that the agent is installed, running, and able to communicate with the service.
+          &quot;prePatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the pre-patch step.
           &quot;succeededInstanceCount&quot;: &quot;A String&quot;, # Number of instances that have completed successfully.
+          &quot;failedInstanceCount&quot;: &quot;A String&quot;, # Number of instances that failed.
+          &quot;succeededRebootRequiredInstanceCount&quot;: &quot;A String&quot;, # Number of instances that require reboot.
           &quot;notifiedInstanceCount&quot;: &quot;A String&quot;, # Number of instances notified about patch job.
+          &quot;rebootingInstanceCount&quot;: &quot;A String&quot;, # Number of instances rebooting.
+          &quot;timedOutInstanceCount&quot;: &quot;A String&quot;, # Number of instances that exceeded the time out while applying the patch.
+          &quot;postPatchStepInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are running the post-patch step.
+          &quot;inactiveInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are inactive.
+          &quot;applyingPatchesInstanceCount&quot;: &quot;A String&quot;, # Number of instances that are applying patches.
         },
-        &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the # Patch configuration being applied.
-            # patch(es) to a VM instance.
-          &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
-            &quot;exclusivePatches&quot;: [ # An exclusive list of kbs to be updated. These are the only patches
-                # that will be updated. This field must not be used with other
-                # patch configurations.
-              &quot;A String&quot;,
-            ],
-            &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all
-                # updates are applied.
-              &quot;A String&quot;,
-            ],
-            &quot;excludes&quot;: [ # List of KBs to exclude from update.
-              &quot;A String&quot;,
-            ],
-          },
-          &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
-            &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
-              &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-                  # specified the script will be executed directly, which will likely
-                  # only succeed for scripts with [shebang lines]
-                  # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-              &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-                &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-                &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-                &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                    # ensure that the ExecStep specified by this PatchJob does not change.
-              },
-              &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-                  # execution can return to indicate a success.
-                42,
-              ],
-              &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-            },
-            &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
-              &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-                  # specified the script will be executed directly, which will likely
-                  # only succeed for scripts with [shebang lines]
-                  # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-              &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-                &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-                &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-                &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                    # ensure that the ExecStep specified by this PatchJob does not change.
-              },
-              &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-                  # execution can return to indicate a success.
-                42,
-              ],
-              &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-            },
-          },
-          &quot;yum&quot;: { # Yum patching is performed by executing `yum update`. Additional options # Yum update settings. Use this setting to override the default `yum` patch
-              # rules.
-              # can be set to control how this is executed.
-              #
-              # Note that not all settings are supported on all platforms.
-            &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
-            &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on
-                # all platforms.
-            &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by
-                # using the yum `--exclude` flag.
-              &quot;A String&quot;,
-            ],
-            &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages
-                # that will be updated. If these packages are not installed, they will be
-                # ignored. This field must not be specified with any other patch
-                # configuration fields.
-              &quot;A String&quot;,
-            ],
-          },
-          &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch
-              # rules.
-          },
-          &quot;apt&quot;: { # Apt patching is completed by executing `apt-get update &amp;&amp; apt-get # Apt update settings. Use this setting to override the default `apt` patch
-              # rules.
-              # upgrade`. Additional options can be set to control how this is executed.
-            &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
-              &quot;A String&quot;,
-            ],
-            &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages
-                # that will be updated. If these packages are not installed, they will be
-                # ignored. This field cannot be specified with any other patch configuration
-                # fields.
-              &quot;A String&quot;,
-            ],
-            &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed
-                # using `apt-get dist-upgrade` instead.
-          },
-          &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
-          &quot;zypper&quot;: { # Zypper patching is performed by running `zypper patch`. # Zypper update settings. Use this setting to override the default `zypper`
-              # patch rules.
-              # See also https://en.opensuse.org/SDB:Zypper_manual.
-            &quot;excludes&quot;: [ # List of patches to exclude from update.
-              &quot;A String&quot;,
-            ],
-            &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
-            &quot;severities&quot;: [ # Install only patches with these severities.
-                # Common severities include critical, important, moderate, and low.
-              &quot;A String&quot;,
-            ],
-            &quot;categories&quot;: [ # Install only patches with these categories.
-                # Common categories include security, recommended, and feature.
-              &quot;A String&quot;,
-            ],
-            &quot;exclusivePatches&quot;: [ # An exclusive list of patches to be updated. These are the only patches
-                # that will be installed using &#x27;zypper patch patch:&lt;patch_name&gt;&#x27; command.
-                # This field must not be used with any other patch configuration fields.
-              &quot;A String&quot;,
-            ],
-            &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
-          },
-          &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
-            &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
-              &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-                  # specified the script will be executed directly, which will likely
-                  # only succeed for scripts with [shebang lines]
-                  # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-              &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-                &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-                &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-                &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                    # ensure that the ExecStep specified by this PatchJob does not change.
-              },
-              &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-                  # execution can return to indicate a success.
-                42,
-              ],
-              &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-            },
-            &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
-              &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is
-                  # specified the script will be executed directly, which will likely
-                  # only succeed for scripts with [shebang lines]
-                  # (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
-              &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
-                &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
-                &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
-                &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to
-                    # ensure that the ExecStep specified by this PatchJob does not change.
-              },
-              &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the
-                  # execution can return to indicate a success.
-                42,
-              ],
-              &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
-            },
-          },
-        },
-        &quot;createTime&quot;: &quot;A String&quot;, # Time this patch job was created.
-        &quot;instanceFilter&quot;: { # A filter to target VM instances for patching. The targeted # Instances to patch.
-            # VMs must meet all criteria specified. So if both labels and zones are
-            # specified, the patch job targets only VMs with those labels and in those
-            # zones.
-          &quot;instanceNamePrefixes&quot;: [ # Targets VMs whose name starts with one of these prefixes. Similar to
-              # labels, this is another way to group VMs when targeting configs, for
-              # example prefix=&quot;prod-&quot;.
-            &quot;A String&quot;,
-          ],
-          &quot;groupLabels&quot;: [ # Targets VM instances matching ANY of these GroupLabels. This allows
-              # targeting of disparate groups of VM instances.
-            { # Targets a group of VM instances by using their [assigned
-                # labels](https://cloud.google.com/compute/docs/labeling-resources). Labels
-                # are key-value pairs. A `GroupLabel` is a combination of labels
-                # that is used to target VMs for a patch job.
-                #
-                # For example, a patch job can target VMs that have the following
-                # `GroupLabel`: `{&quot;env&quot;:&quot;test&quot;, &quot;app&quot;:&quot;web&quot;}`. This means that the patch job
-                # is applied to VMs that have both the labels `env=test` and `app=web`.
-              &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM
-                  # instance to be targeted by this filter.
+        &quot;errorMessage&quot;: &quot;A String&quot;, # If this patch job failed, this message provides information about the failure.
+        &quot;instanceFilter&quot;: { # A filter to target VM instances for patching. The targeted VMs must meet all criteria specified. So if both labels and zones are specified, the patch job targets only VMs with those labels and in those zones. # Instances to patch.
+          &quot;groupLabels&quot;: [ # Targets VM instances matching ANY of these GroupLabels. This allows targeting of disparate groups of VM instances.
+            { # Targets a group of VM instances by using their [assigned labels](https://cloud.google.com/compute/docs/labeling-resources). Labels are key-value pairs. A `GroupLabel` is a combination of labels that is used to target VMs for a patch job. For example, a patch job can target VMs that have the following `GroupLabel`: `{&quot;env&quot;:&quot;test&quot;, &quot;app&quot;:&quot;web&quot;}`. This means that the patch job is applied to VMs that have both the labels `env=test` and `app=web`.
+              &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM instance to be targeted by this filter.
                 &quot;a_key&quot;: &quot;A String&quot;,
               },
             },
           ],
-          &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM
-              # instances in any zone.
+          &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM instances in any zone.
             &quot;A String&quot;,
           ],
-          &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is
-              # permitted.
-          &quot;instances&quot;: [ # Targets any of the VM instances specified. Instances are specified by their
-              # URI in the form `zones/[ZONE]/instances/[INSTANCE_NAME]`,
-              # `projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`, or
-              # `https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`
+          &quot;instances&quot;: [ # Targets any of the VM instances specified. Instances are specified by their URI in the form `zones/[ZONE]/instances/[INSTANCE_NAME]`, `projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`, or `https://www.googleapis.com/compute/v1/projects/[PROJECT_ID]/zones/[ZONE]/instances/[INSTANCE_NAME]`
+            &quot;A String&quot;,
+          ],
+          &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is permitted.
+          &quot;instanceNamePrefixes&quot;: [ # Targets VMs whose name starts with one of these prefixes. Similar to labels, this is another way to group VMs when targeting configs, for example prefix=&quot;prod-&quot;.
             &quot;A String&quot;,
           ],
         },
-        &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the # Rollout strategy being applied.
-            # concurrency control when applying patch(es) to all targeted VMs.
-          &quot;disruptionBudget&quot;: { # Message encapsulating a value that can be either absolute (&quot;fixed&quot;) or # The maximum number (or percentage) of VMs per zone to disrupt at any given
-              # moment. The number of VMs calculated from multiplying the percentage by the
-              # total number of VMs in a zone is rounded up.
-              #
-              # During patching, a VM is considered disrupted from the time the agent is
-              # notified to begin until patching has completed. This disruption time
-              # includes the time to complete reboot and any post-patch steps.
-              #
-              # A VM contributes to the disruption budget if its patching operation fails
-              # either when applying the patches, running pre or post patch steps, or if it
-              # fails to respond with a success notification before timing out. VMs that
-              # are not running or do not have an active agent do not count toward this
-              # disruption budget.
-              #
-              # For zone-by-zone rollouts, if the disruption budget in a zone is exceeded,
-              # the patch job stops, because continuing to the next zone requires
-              # completion of the patch process in the previous zone.
-              #
-              # For example, if the disruption budget has a fixed value of `10`, and 8 VMs
-              # fail to patch in the current zone, the patch job continues to patch 2 VMs
-              # at a time until the zone is completed. When that zone is completed
-              # successfully, patching begins with 10 VMs at a time in the next zone. If 10
-              # VMs in the next zone fail to patch, the patch job stops.
-              # relative (&quot;percent&quot;) to a value.
-            &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be
-                # multiplied by a reference value.
-            &quot;fixed&quot;: 42, # Specifies a fixed value.
-          },
-          &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
-        },
-        &quot;description&quot;: &quot;A String&quot;, # Description of the patch job. Length of the description is limited
-            # to 1024 characters.
-        &quot;duration&quot;: &quot;A String&quot;, # Duration of the patch job. After the duration ends, the
-            # patch job times out.
-        &quot;errorMessage&quot;: &quot;A String&quot;, # If this patch job failed, this message provides information about the
-            # failure.
-        &quot;percentComplete&quot;: 3.14, # Reflects the overall progress of the patch job in the range of
-            # 0.0 being no progress to 100.0 being complete.
         &quot;patchDeployment&quot;: &quot;A String&quot;, # Output only. Name of the patch deployment that created this patch job.
+        &quot;createTime&quot;: &quot;A String&quot;, # Time this patch job was created.
+        &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs. # Rollout strategy being applied.
+          &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
+          &quot;disruptionBudget&quot;: { # Message encapsulating a value that can be either absolute (&quot;fixed&quot;) or relative (&quot;percent&quot;) to a value. # The maximum number (or percentage) of VMs per zone to disrupt at any given moment. The number of VMs calculated from multiplying the percentage by the total number of VMs in a zone is rounded up. During patching, a VM is considered disrupted from the time the agent is notified to begin until patching has completed. This disruption time includes the time to complete reboot and any post-patch steps. A VM contributes to the disruption budget if its patching operation fails either when applying the patches, running pre or post patch steps, or if it fails to respond with a success notification before timing out. VMs that are not running or do not have an active agent do not count toward this disruption budget. For zone-by-zone rollouts, if the disruption budget in a zone is exceeded, the patch job stops, because continuing to the next zone requires completion of the patch process in the previous zone. For example, if the disruption budget has a fixed value of `10`, and 8 VMs fail to patch in the current zone, the patch job continues to patch 2 VMs at a time until the zone is completed. When that zone is completed successfully, patching begins with 10 VMs at a time in the next zone. If 10 VMs in the next zone fail to patch, the patch job stops.
+            &quot;fixed&quot;: 42, # Specifies a fixed value.
+            &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be multiplied by a reference value.
+          },
+        },
         &quot;displayName&quot;: &quot;A String&quot;, # Display name for this patch job. This is not a unique identifier.
-        &quot;dryRun&quot;: True or False, # If this patch job is a dry run, the agent reports that it has
-            # finished without running any updates on the VM instance.
+        &quot;state&quot;: &quot;A String&quot;, # The current state of the PatchJob.
+        &quot;dryRun&quot;: True or False, # If this patch job is a dry run, the agent reports that it has finished without running any updates on the VM instance.
+        &quot;description&quot;: &quot;A String&quot;, # Description of the patch job. Length of the description is limited to 1024 characters.
+        &quot;duration&quot;: &quot;A String&quot;, # Duration of the patch job. After the duration ends, the patch job times out.
+        &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance. # Patch configuration being applied.
+          &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
+            &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
+              &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+              &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+                &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+                &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+                &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+              },
+              &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+                42,
+              ],
+              &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+            },
+            &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
+              &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+              &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+                &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+                &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+                &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+              },
+              &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+                42,
+              ],
+              &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+            },
+          },
+          &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
+            &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
+              &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+              &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+                &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+                &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+                &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+              },
+              &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+                42,
+              ],
+              &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+            },
+            &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
+              &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
+              &quot;gcsObject&quot;: { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
+                &quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Cloud Storage object. This is used to ensure that the ExecStep specified by this PatchJob does not change.
+                &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Cloud Storage object.
+                &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Cloud Storage object.
+              },
+              &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
+                42,
+              ],
+              &quot;interpreter&quot;: &quot;A String&quot;, # The script interpreter to use to run the script. If no interpreter is specified the script will be executed directly, which will likely only succeed for scripts with [shebang lines] (https://en.wikipedia.org/wiki/Shebang_\(Unix\)).
+            },
+          },
+          &quot;yum&quot;: { # Yum patching is performed by executing `yum update`. Additional options can be set to control how this is executed. Note that not all settings are supported on all platforms. # Yum update settings. Use this setting to override the default `yum` patch rules.
+            &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages that will be updated. If these packages are not installed, they will be ignored. This field must not be specified with any other patch configuration fields.
+              &quot;A String&quot;,
+            ],
+            &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by using the yum `--exclude` flag.
+              &quot;A String&quot;,
+            ],
+            &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
+            &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on all platforms.
+          },
+          &quot;apt&quot;: { # Apt patching is completed by executing `apt-get update &amp;&amp; apt-get upgrade`. Additional options can be set to control how this is executed. # Apt update settings. Use this setting to override the default `apt` patch rules.
+            &quot;exclusivePackages&quot;: [ # An exclusive list of packages to be updated. These are the only packages that will be updated. If these packages are not installed, they will be ignored. This field cannot be specified with any other patch configuration fields.
+              &quot;A String&quot;,
+            ],
+            &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed using `apt-get dist-upgrade` instead.
+            &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
+              &quot;A String&quot;,
+            ],
+          },
+          &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
+            &quot;excludes&quot;: [ # List of KBs to exclude from update.
+              &quot;A String&quot;,
+            ],
+            &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all updates are applied.
+              &quot;A String&quot;,
+            ],
+            &quot;exclusivePatches&quot;: [ # An exclusive list of kbs to be updated. These are the only patches that will be updated. This field must not be used with other patch configurations.
+              &quot;A String&quot;,
+            ],
+          },
+          &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch rules.
+          },
+          &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
+          &quot;zypper&quot;: { # Zypper patching is performed by running `zypper patch`. See also https://en.opensuse.org/SDB:Zypper_manual. # Zypper update settings. Use this setting to override the default `zypper` patch rules.
+            &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
+            &quot;excludes&quot;: [ # List of patches to exclude from update.
+              &quot;A String&quot;,
+            ],
+            &quot;exclusivePatches&quot;: [ # An exclusive list of patches to be updated. These are the only patches that will be installed using &#x27;zypper patch patch:&#x27; command. This field must not be used with any other patch configuration fields.
+              &quot;A String&quot;,
+            ],
+            &quot;categories&quot;: [ # Install only patches with these categories. Common categories include security, recommended, and feature.
+              &quot;A String&quot;,
+            ],
+            &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
+            &quot;severities&quot;: [ # Install only patches with these severities. Common severities include critical, important, moderate, and low.
+              &quot;A String&quot;,
+            ],
+          },
+        },
       },
     ],
-    &quot;nextPageToken&quot;: &quot;A String&quot;, # A pagination token that can be used to get the next page of results.
   }</pre>
 </div>