blob: 75b5911ad87d9ef93379be6fe445a6af473bf34d [file] [log] [blame]
<html><body>
<style>
body, h1, h2, h3, div, span, p, pre, a {
margin: 0;
padding: 0;
border: 0;
font-weight: inherit;
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline;
}
body {
font-size: 13px;
padding: 1em;
}
h1 {
font-size: 26px;
margin-bottom: 1em;
}
h2 {
font-size: 24px;
margin-bottom: 1em;
}
h3 {
font-size: 20px;
margin-bottom: 1em;
margin-top: 1em;
}
pre, code {
line-height: 1.5;
font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
}
pre {
margin-top: 0.5em;
}
h1, h2, h3, p {
font-family: Arial, sans serif;
}
h1, h2, h3 {
border-bottom: solid #CCC 1px;
}
.toc_element {
margin-top: 0.5em;
}
.firstline {
margin-left: 2 em;
}
.method {
margin-top: 1em;
border: solid 1px #CCC;
padding: 1em;
background: #EEE;
}
.details {
font-weight: bold;
font-size: 14px;
}
</style>
<h1><a href="osconfig_v1beta.html">Cloud OS Config API</a> . <a href="osconfig_v1beta.projects.html">projects</a> . <a href="osconfig_v1beta.projects.patchDeployments.html">patchDeployments</a></h1>
<h2>Instance Methods</h2>
<p class="toc_element">
<code><a href="#create">create(parent, body=None, patchDeploymentId=None, x__xgafv=None)</a></code></p>
<p class="firstline">Create an OS Config patch deployment.</p>
<p class="toc_element">
<code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
<p class="firstline">Delete an OS Config patch deployment.</p>
<p class="toc_element">
<code><a href="#get">get(name, x__xgafv=None)</a></code></p>
<p class="firstline">Get an OS Config patch deployment.</p>
<p class="toc_element">
<code><a href="#list">list(parent, pageToken=None, pageSize=None, x__xgafv=None)</a></code></p>
<p class="firstline">Get a page of OS Config patch deployments.</p>
<p class="toc_element">
<code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
<p class="firstline">Retrieves the next page of results.</p>
<h3>Method Details</h3>
<div class="method">
<code class="details" id="create">create(parent, body=None, patchDeploymentId=None, x__xgafv=None)</code>
<pre>Create an OS Config patch deployment.
Args:
parent: string, Required. The project to apply this patch deployment to in the form `projects/*`. (required)
body: object, The request body.
The object takes the form of:
{ # Patch deployments are configurations that individual patch jobs use to
# complete a patch. These configurations include instance filter, package
# repository settings, and a schedule. For more information about creating and
# managing patch deployments, see [Scheduling patch
# jobs](https://cloud.google.com/compute/docs/os-patch-management/schedule-patch-jobs).
&quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the # Optional. Patch configuration that is applied.
# patch(es) to a VM instance.
&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;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;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;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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;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;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;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;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;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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;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;excludes&quot;: [ # List of patches to exclude from update.
&quot;A String&quot;,
],
&quot;severities&quot;: [ # Install only patches with these severities.
# Common severities include critical, important, moderate, and low.
&quot;A String&quot;,
],
&quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
&quot;categories&quot;: [ # Install only patches with these categories.
# Common categories include security, recommended, and feature.
&quot;A String&quot;,
],
},
},
&quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The last time a patch job was started by this deployment.
# Timestamp is in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text
# format.
&quot;instanceFilter&quot;: { # A filter to target VM instances for patching. The targeted # Required. VM 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;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is
# permitted.
&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;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;groupLabels&quot;: [ # Targets VM instances matching at least one of these label sets. This allows
# targeting of disparate groups, for example &quot;env=prod or env=staging&quot;.
{ # Represents a group of VMs that can be identified as having all these
# labels, for example &quot;env=prod and app=web&quot;.
&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;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;, # Optional. Duration of the patch. After the duration ends, the patch times out.
&quot;recurringSchedule&quot;: { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
&quot;endTime&quot;: &quot;A String&quot;, # Optional. The end time at which a recurring patch deployment schedule is no longer
# active.
&quot;timeZone&quot;: { # Represents a time zone from the # Required. Defines the time zone that `time_of_day` is relative to.
# The rules for daylight saving time are determined by the chosen time zone.
# [IANA Time Zone Database](https://www.iana.org/time-zones).
&quot;id&quot;: &quot;A String&quot;, # IANA Time Zone Database time zone, e.g. &quot;America/New_York&quot;.
&quot;version&quot;: &quot;A String&quot;, # Optional. IANA Time Zone Database version number, e.g. &quot;2019a&quot;.
},
&quot;frequency&quot;: &quot;A String&quot;, # Required. The frequency unit of this recurring schedule.
&quot;nextExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the next patch job is scheduled to run.
&quot;weekly&quot;: { # Represents a weekly schedule. # Required. Schedule with weekly executions.
&quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week.
},
&quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the last patch job ran successfully.
&quot;monthly&quot;: { # Represents a monthly schedule. An example of a valid monthly schedule is # Required. Schedule with monthly executions.
# &quot;on the third Tuesday of the month&quot; or &quot;on the 15th of the month&quot;.
&quot;monthDay&quot;: 42, # Required. One day of the month. 1-31 indicates the 1st to the 31st day. -1
# indicates the last day of the month.
# Months without the target day will be skipped. For example, a schedule to
# run &quot;every month on the 31st&quot; will not run in February, April, June, etc.
&quot;weekDayOfMonth&quot;: { # Represents one week day in a month. An example is &quot;the 4th Sunday&quot;. # Required. Week day in a month.
&quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. A day of the week.
&quot;weekOrdinal&quot;: 42, # Required. Week number in a month. 1-4 indicates the 1st to 4th week of the month. -1
# indicates the last week of the month.
},
},
&quot;startTime&quot;: &quot;A String&quot;, # Optional. The time that the recurring schedule becomes effective.
# Defaults to `create_time` of the patch deployment.
&quot;timeOfDay&quot;: { # Represents a time of day. The date and time zone are either not significant # Required. Time of the day to run a recurring deployment.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
&quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
&quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
&quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
&quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
},
},
&quot;description&quot;: &quot;A String&quot;, # Optional. Description of the patch deployment. Length of the description is limited
# to 1024 characters.
&quot;oneTimeSchedule&quot;: { # Sets the time for a one time patch deployment. Timestamp is in # Required. Schedule a one-time execution.
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;executeTime&quot;: &quot;A String&quot;, # Required. The desired patch job execution time.
},
&quot;name&quot;: &quot;A String&quot;, # Unique name for the patch deployment resource in a project. The patch
# deployment name is in the form:
# `projects/{project_id}/patchDeployments/{patch_deployment_id}`.
# This field is ignored when you create a new patch deployment.
&quot;createTime&quot;: &quot;A String&quot;, # Output only. Time the patch deployment was created. Timestamp is in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time the patch deployment was last updated. Timestamp is in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the # Optional. 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.
},
}
patchDeploymentId: string, Required. A name for the patch deployment in the project. When creating a name
the following rules apply:
* Must contain only lowercase letters, numbers, and hyphens.
* Must start with a letter.
* Must be between 1-63 characters.
* Must end with a number or a letter.
* Must be unique within the project.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Patch deployments are configurations that individual patch jobs use to
# complete a patch. These configurations include instance filter, package
# repository settings, and a schedule. For more information about creating and
# managing patch deployments, see [Scheduling patch
# jobs](https://cloud.google.com/compute/docs/os-patch-management/schedule-patch-jobs).
&quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the # Optional. Patch configuration that is applied.
# patch(es) to a VM instance.
&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;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;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;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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;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;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;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;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;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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;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;excludes&quot;: [ # List of patches to exclude from update.
&quot;A String&quot;,
],
&quot;severities&quot;: [ # Install only patches with these severities.
# Common severities include critical, important, moderate, and low.
&quot;A String&quot;,
],
&quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
&quot;categories&quot;: [ # Install only patches with these categories.
# Common categories include security, recommended, and feature.
&quot;A String&quot;,
],
},
},
&quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The last time a patch job was started by this deployment.
# Timestamp is in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text
# format.
&quot;instanceFilter&quot;: { # A filter to target VM instances for patching. The targeted # Required. VM 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;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is
# permitted.
&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;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;groupLabels&quot;: [ # Targets VM instances matching at least one of these label sets. This allows
# targeting of disparate groups, for example &quot;env=prod or env=staging&quot;.
{ # Represents a group of VMs that can be identified as having all these
# labels, for example &quot;env=prod and app=web&quot;.
&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;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;, # Optional. Duration of the patch. After the duration ends, the patch times out.
&quot;recurringSchedule&quot;: { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
&quot;endTime&quot;: &quot;A String&quot;, # Optional. The end time at which a recurring patch deployment schedule is no longer
# active.
&quot;timeZone&quot;: { # Represents a time zone from the # Required. Defines the time zone that `time_of_day` is relative to.
# The rules for daylight saving time are determined by the chosen time zone.
# [IANA Time Zone Database](https://www.iana.org/time-zones).
&quot;id&quot;: &quot;A String&quot;, # IANA Time Zone Database time zone, e.g. &quot;America/New_York&quot;.
&quot;version&quot;: &quot;A String&quot;, # Optional. IANA Time Zone Database version number, e.g. &quot;2019a&quot;.
},
&quot;frequency&quot;: &quot;A String&quot;, # Required. The frequency unit of this recurring schedule.
&quot;nextExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the next patch job is scheduled to run.
&quot;weekly&quot;: { # Represents a weekly schedule. # Required. Schedule with weekly executions.
&quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week.
},
&quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the last patch job ran successfully.
&quot;monthly&quot;: { # Represents a monthly schedule. An example of a valid monthly schedule is # Required. Schedule with monthly executions.
# &quot;on the third Tuesday of the month&quot; or &quot;on the 15th of the month&quot;.
&quot;monthDay&quot;: 42, # Required. One day of the month. 1-31 indicates the 1st to the 31st day. -1
# indicates the last day of the month.
# Months without the target day will be skipped. For example, a schedule to
# run &quot;every month on the 31st&quot; will not run in February, April, June, etc.
&quot;weekDayOfMonth&quot;: { # Represents one week day in a month. An example is &quot;the 4th Sunday&quot;. # Required. Week day in a month.
&quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. A day of the week.
&quot;weekOrdinal&quot;: 42, # Required. Week number in a month. 1-4 indicates the 1st to 4th week of the month. -1
# indicates the last week of the month.
},
},
&quot;startTime&quot;: &quot;A String&quot;, # Optional. The time that the recurring schedule becomes effective.
# Defaults to `create_time` of the patch deployment.
&quot;timeOfDay&quot;: { # Represents a time of day. The date and time zone are either not significant # Required. Time of the day to run a recurring deployment.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
&quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
&quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
&quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
&quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
},
},
&quot;description&quot;: &quot;A String&quot;, # Optional. Description of the patch deployment. Length of the description is limited
# to 1024 characters.
&quot;oneTimeSchedule&quot;: { # Sets the time for a one time patch deployment. Timestamp is in # Required. Schedule a one-time execution.
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;executeTime&quot;: &quot;A String&quot;, # Required. The desired patch job execution time.
},
&quot;name&quot;: &quot;A String&quot;, # Unique name for the patch deployment resource in a project. The patch
# deployment name is in the form:
# `projects/{project_id}/patchDeployments/{patch_deployment_id}`.
# This field is ignored when you create a new patch deployment.
&quot;createTime&quot;: &quot;A String&quot;, # Output only. Time the patch deployment was created. Timestamp is in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time the patch deployment was last updated. Timestamp is in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the # Optional. 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.
},
}</pre>
</div>
<div class="method">
<code class="details" id="delete">delete(name, x__xgafv=None)</code>
<pre>Delete an OS Config patch deployment.
Args:
name: string, Required. The resource name of the patch deployment in the form
`projects/*/patchDeployments/*`. (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # A generic empty message that you can re-use to avoid defining duplicated
# empty messages in your APIs. A typical example is to use it as the request
# or the response type of an API method. For instance:
#
# service Foo {
# rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
# }
#
# The JSON representation for `Empty` is empty JSON object `{}`.
}</pre>
</div>
<div class="method">
<code class="details" id="get">get(name, x__xgafv=None)</code>
<pre>Get an OS Config patch deployment.
Args:
name: string, Required. The resource name of the patch deployment in the form
`projects/*/patchDeployments/*`. (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Patch deployments are configurations that individual patch jobs use to
# complete a patch. These configurations include instance filter, package
# repository settings, and a schedule. For more information about creating and
# managing patch deployments, see [Scheduling patch
# jobs](https://cloud.google.com/compute/docs/os-patch-management/schedule-patch-jobs).
&quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the # Optional. Patch configuration that is applied.
# patch(es) to a VM instance.
&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;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;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;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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;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;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;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;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;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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;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;excludes&quot;: [ # List of patches to exclude from update.
&quot;A String&quot;,
],
&quot;severities&quot;: [ # Install only patches with these severities.
# Common severities include critical, important, moderate, and low.
&quot;A String&quot;,
],
&quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
&quot;categories&quot;: [ # Install only patches with these categories.
# Common categories include security, recommended, and feature.
&quot;A String&quot;,
],
},
},
&quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The last time a patch job was started by this deployment.
# Timestamp is in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text
# format.
&quot;instanceFilter&quot;: { # A filter to target VM instances for patching. The targeted # Required. VM 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;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is
# permitted.
&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;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;groupLabels&quot;: [ # Targets VM instances matching at least one of these label sets. This allows
# targeting of disparate groups, for example &quot;env=prod or env=staging&quot;.
{ # Represents a group of VMs that can be identified as having all these
# labels, for example &quot;env=prod and app=web&quot;.
&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;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;, # Optional. Duration of the patch. After the duration ends, the patch times out.
&quot;recurringSchedule&quot;: { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
&quot;endTime&quot;: &quot;A String&quot;, # Optional. The end time at which a recurring patch deployment schedule is no longer
# active.
&quot;timeZone&quot;: { # Represents a time zone from the # Required. Defines the time zone that `time_of_day` is relative to.
# The rules for daylight saving time are determined by the chosen time zone.
# [IANA Time Zone Database](https://www.iana.org/time-zones).
&quot;id&quot;: &quot;A String&quot;, # IANA Time Zone Database time zone, e.g. &quot;America/New_York&quot;.
&quot;version&quot;: &quot;A String&quot;, # Optional. IANA Time Zone Database version number, e.g. &quot;2019a&quot;.
},
&quot;frequency&quot;: &quot;A String&quot;, # Required. The frequency unit of this recurring schedule.
&quot;nextExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the next patch job is scheduled to run.
&quot;weekly&quot;: { # Represents a weekly schedule. # Required. Schedule with weekly executions.
&quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week.
},
&quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the last patch job ran successfully.
&quot;monthly&quot;: { # Represents a monthly schedule. An example of a valid monthly schedule is # Required. Schedule with monthly executions.
# &quot;on the third Tuesday of the month&quot; or &quot;on the 15th of the month&quot;.
&quot;monthDay&quot;: 42, # Required. One day of the month. 1-31 indicates the 1st to the 31st day. -1
# indicates the last day of the month.
# Months without the target day will be skipped. For example, a schedule to
# run &quot;every month on the 31st&quot; will not run in February, April, June, etc.
&quot;weekDayOfMonth&quot;: { # Represents one week day in a month. An example is &quot;the 4th Sunday&quot;. # Required. Week day in a month.
&quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. A day of the week.
&quot;weekOrdinal&quot;: 42, # Required. Week number in a month. 1-4 indicates the 1st to 4th week of the month. -1
# indicates the last week of the month.
},
},
&quot;startTime&quot;: &quot;A String&quot;, # Optional. The time that the recurring schedule becomes effective.
# Defaults to `create_time` of the patch deployment.
&quot;timeOfDay&quot;: { # Represents a time of day. The date and time zone are either not significant # Required. Time of the day to run a recurring deployment.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
&quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
&quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
&quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
&quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
},
},
&quot;description&quot;: &quot;A String&quot;, # Optional. Description of the patch deployment. Length of the description is limited
# to 1024 characters.
&quot;oneTimeSchedule&quot;: { # Sets the time for a one time patch deployment. Timestamp is in # Required. Schedule a one-time execution.
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;executeTime&quot;: &quot;A String&quot;, # Required. The desired patch job execution time.
},
&quot;name&quot;: &quot;A String&quot;, # Unique name for the patch deployment resource in a project. The patch
# deployment name is in the form:
# `projects/{project_id}/patchDeployments/{patch_deployment_id}`.
# This field is ignored when you create a new patch deployment.
&quot;createTime&quot;: &quot;A String&quot;, # Output only. Time the patch deployment was created. Timestamp is in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time the patch deployment was last updated. Timestamp is in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the # Optional. 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.
},
}</pre>
</div>
<div class="method">
<code class="details" id="list">list(parent, pageToken=None, pageSize=None, x__xgafv=None)</code>
<pre>Get a page of OS Config patch deployments.
Args:
parent: string, Required. The resource name of the parent in the form `projects/*`. (required)
pageToken: string, Optional. A pagination token returned from a previous call to ListPatchDeployments
that indicates where this listing should continue from.
pageSize: integer, Optional. The maximum number of patch deployments to return. Default is 100.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # A response message for listing patch deployments.
&quot;nextPageToken&quot;: &quot;A String&quot;, # A pagination token that can be used to get the next page of patch
# deployments.
&quot;patchDeployments&quot;: [ # The list of patch deployments.
{ # Patch deployments are configurations that individual patch jobs use to
# complete a patch. These configurations include instance filter, package
# repository settings, and a schedule. For more information about creating and
# managing patch deployments, see [Scheduling patch
# jobs](https://cloud.google.com/compute/docs/os-patch-management/schedule-patch-jobs).
&quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the # Optional. Patch configuration that is applied.
# patch(es) to a VM instance.
&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;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;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;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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;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;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;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;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;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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
&quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
&quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
&quot;generationNumber&quot;: &quot;A String&quot;, # Required. Generation number of the Google 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;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;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;excludes&quot;: [ # List of patches to exclude from update.
&quot;A String&quot;,
],
&quot;severities&quot;: [ # Install only patches with these severities.
# Common severities include critical, important, moderate, and low.
&quot;A String&quot;,
],
&quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
&quot;categories&quot;: [ # Install only patches with these categories.
# Common categories include security, recommended, and feature.
&quot;A String&quot;,
],
},
},
&quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The last time a patch job was started by this deployment.
# Timestamp is in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text
# format.
&quot;instanceFilter&quot;: { # A filter to target VM instances for patching. The targeted # Required. VM 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;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is
# permitted.
&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;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;groupLabels&quot;: [ # Targets VM instances matching at least one of these label sets. This allows
# targeting of disparate groups, for example &quot;env=prod or env=staging&quot;.
{ # Represents a group of VMs that can be identified as having all these
# labels, for example &quot;env=prod and app=web&quot;.
&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;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;, # Optional. Duration of the patch. After the duration ends, the patch times out.
&quot;recurringSchedule&quot;: { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
&quot;endTime&quot;: &quot;A String&quot;, # Optional. The end time at which a recurring patch deployment schedule is no longer
# active.
&quot;timeZone&quot;: { # Represents a time zone from the # Required. Defines the time zone that `time_of_day` is relative to.
# The rules for daylight saving time are determined by the chosen time zone.
# [IANA Time Zone Database](https://www.iana.org/time-zones).
&quot;id&quot;: &quot;A String&quot;, # IANA Time Zone Database time zone, e.g. &quot;America/New_York&quot;.
&quot;version&quot;: &quot;A String&quot;, # Optional. IANA Time Zone Database version number, e.g. &quot;2019a&quot;.
},
&quot;frequency&quot;: &quot;A String&quot;, # Required. The frequency unit of this recurring schedule.
&quot;nextExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the next patch job is scheduled to run.
&quot;weekly&quot;: { # Represents a weekly schedule. # Required. Schedule with weekly executions.
&quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week.
},
&quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the last patch job ran successfully.
&quot;monthly&quot;: { # Represents a monthly schedule. An example of a valid monthly schedule is # Required. Schedule with monthly executions.
# &quot;on the third Tuesday of the month&quot; or &quot;on the 15th of the month&quot;.
&quot;monthDay&quot;: 42, # Required. One day of the month. 1-31 indicates the 1st to the 31st day. -1
# indicates the last day of the month.
# Months without the target day will be skipped. For example, a schedule to
# run &quot;every month on the 31st&quot; will not run in February, April, June, etc.
&quot;weekDayOfMonth&quot;: { # Represents one week day in a month. An example is &quot;the 4th Sunday&quot;. # Required. Week day in a month.
&quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. A day of the week.
&quot;weekOrdinal&quot;: 42, # Required. Week number in a month. 1-4 indicates the 1st to 4th week of the month. -1
# indicates the last week of the month.
},
},
&quot;startTime&quot;: &quot;A String&quot;, # Optional. The time that the recurring schedule becomes effective.
# Defaults to `create_time` of the patch deployment.
&quot;timeOfDay&quot;: { # Represents a time of day. The date and time zone are either not significant # Required. Time of the day to run a recurring deployment.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
&quot;seconds&quot;: 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
# allow the value 60 if it allows leap-seconds.
&quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
&quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
&quot;hours&quot;: 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value &quot;24:00:00&quot; for scenarios like business closing time.
},
},
&quot;description&quot;: &quot;A String&quot;, # Optional. Description of the patch deployment. Length of the description is limited
# to 1024 characters.
&quot;oneTimeSchedule&quot;: { # Sets the time for a one time patch deployment. Timestamp is in # Required. Schedule a one-time execution.
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;executeTime&quot;: &quot;A String&quot;, # Required. The desired patch job execution time.
},
&quot;name&quot;: &quot;A String&quot;, # Unique name for the patch deployment resource in a project. The patch
# deployment name is in the form:
# `projects/{project_id}/patchDeployments/{patch_deployment_id}`.
# This field is ignored when you create a new patch deployment.
&quot;createTime&quot;: &quot;A String&quot;, # Output only. Time the patch deployment was created. Timestamp is in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;updateTime&quot;: &quot;A String&quot;, # Output only. Time the patch deployment was last updated. Timestamp is in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
&quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the # Optional. 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.
},
},
],
}</pre>
</div>
<div class="method">
<code class="details" id="list_next">list_next(previous_request, previous_response)</code>
<pre>Retrieves the next page of results.
Args:
previous_request: The request for the previous page. (required)
previous_response: The response from the request for the previous page. (required)
Returns:
A request object that you can call &#x27;execute()&#x27; on to request the next
page. Returns None if there are no more items in the collection.
</pre>
</div>
</body></html>