1<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5  margin: 0;
6  padding: 0;
7  border: 0;
8  font-weight: inherit;
9  font-style: inherit;
10  font-size: 100%;
11  font-family: inherit;
12  vertical-align: baseline;
13}
14
15body {
16  font-size: 13px;
17  padding: 1em;
18}
19
20h1 {
21  font-size: 26px;
22  margin-bottom: 1em;
23}
24
25h2 {
26  font-size: 24px;
27  margin-bottom: 1em;
28}
29
30h3 {
31  font-size: 20px;
32  margin-bottom: 1em;
33  margin-top: 1em;
34}
35
36pre, code {
37  line-height: 1.5;
38  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42  margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46  font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50  border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54  margin-top: 0.5em;
55}
56
57.firstline {
58  margin-left: 2 em;
59}
60
61.method  {
62  margin-top: 1em;
63  border: solid 1px #CCC;
64  padding: 1em;
65  background: #EEE;
66}
67
68.details {
69  font-weight: bold;
70  font-size: 14px;
71}
72
73</style>
74
75<h1><a href="osconfig_v1beta.html">OS Config API</a> . <a href="osconfig_v1beta.projects.html">projects</a> . <a href="osconfig_v1beta.projects.patchDeployments.html">patchDeployments</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
78  <code><a href="#close">close()</a></code></p>
79<p class="firstline">Close httplib2 connections.</p>
80<p class="toc_element">
81  <code><a href="#create">create(parent, body=None, patchDeploymentId=None, x__xgafv=None)</a></code></p>
82<p class="firstline">Create an OS Config patch deployment.</p>
83<p class="toc_element">
84  <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
85<p class="firstline">Delete an OS Config patch deployment.</p>
86<p class="toc_element">
87  <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
88<p class="firstline">Get an OS Config patch deployment.</p>
89<p class="toc_element">
90  <code><a href="#list">list(parent, pageSize=None, pageToken=None, x__xgafv=None)</a></code></p>
91<p class="firstline">Get a page of OS Config patch deployments.</p>
92<p class="toc_element">
93  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
94<p class="firstline">Retrieves the next page of results.</p>
95<p class="toc_element">
96  <code><a href="#patch">patch(name, body=None, updateMask=None, x__xgafv=None)</a></code></p>
97<p class="firstline">Update an OS Config patch deployment.</p>
98<p class="toc_element">
99  <code><a href="#pause">pause(name, body=None, x__xgafv=None)</a></code></p>
100<p class="firstline">Change state of patch deployment to "PAUSED". Patch deployment in paused state doesn't generate patch jobs.</p>
101<p class="toc_element">
102  <code><a href="#resume">resume(name, body=None, x__xgafv=None)</a></code></p>
103<p class="firstline">Change state of patch deployment back to "ACTIVE". Patch deployment in active state continues to generate patch jobs.</p>
104<h3>Method Details</h3>
105<div class="method">
106    <code class="details" id="close">close()</code>
107  <pre>Close httplib2 connections.</pre>
108</div>
109
110<div class="method">
111    <code class="details" id="create">create(parent, body=None, patchDeploymentId=None, x__xgafv=None)</code>
112  <pre>Create an OS Config patch deployment.
113
114Args:
115  parent: string, Required. The project to apply this patch deployment to in the form `projects/*`. (required)
116  body: object, The request body.
117    The object takes the form of:
118
119{ # 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).
120  &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.
121  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the patch deployment. Length of the description is limited to 1024 characters.
122  &quot;duration&quot;: &quot;A String&quot;, # Optional. Duration of the patch. After the duration ends, the patch times out.
123  &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. VM instances to patch.
124    &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is permitted.
125    &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;.
126      { # Represents a group of VMs that can be identified as having all these labels, for example &quot;env=prod and app=web&quot;.
127        &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM instance to be targeted by this filter.
128          &quot;a_key&quot;: &quot;A String&quot;,
129        },
130      },
131    ],
132    &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;.
133      &quot;A String&quot;,
134    ],
135    &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]`
136      &quot;A String&quot;,
137    ],
138    &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM instances in any zone.
139      &quot;A String&quot;,
140    ],
141  },
142  &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.
143  &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.
144  &quot;oneTimeSchedule&quot;: { # Sets the time for a one time patch deployment. Timestamp is in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. # Required. Schedule a one-time execution.
145    &quot;executeTime&quot;: &quot;A String&quot;, # Required. The desired patch job execution time.
146  },
147  &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance. # Optional. Patch configuration that is applied.
148    &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.
149      &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
150        &quot;A String&quot;,
151      ],
152      &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.
153        &quot;A String&quot;,
154      ],
155      &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed using `apt-get dist-upgrade` instead.
156    },
157    &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch rules.
158    },
159    &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
160      &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
161        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
162          42,
163        ],
164        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
165          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
166          &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.
167          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
168        },
169        &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\)).
170        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
171      },
172      &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
173        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
174          42,
175        ],
176        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
177          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
178          &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.
179          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
180        },
181        &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\)).
182        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
183      },
184    },
185    &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
186      &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
187        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
188          42,
189        ],
190        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
191          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
192          &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.
193          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
194        },
195        &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\)).
196        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
197      },
198      &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
199        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
200          42,
201        ],
202        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
203          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
204          &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.
205          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
206        },
207        &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\)).
208        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
209      },
210    },
211    &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
212    &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
213      &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all updates are applied.
214        &quot;A String&quot;,
215      ],
216      &quot;excludes&quot;: [ # List of KBs to exclude from update.
217        &quot;A String&quot;,
218      ],
219      &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.
220        &quot;A String&quot;,
221      ],
222    },
223    &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.
224      &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by using the yum `--exclude` flag.
225        &quot;A String&quot;,
226      ],
227      &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.
228        &quot;A String&quot;,
229      ],
230      &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
231      &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on all platforms.
232    },
233    &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.
234      &quot;categories&quot;: [ # Install only patches with these categories. Common categories include security, recommended, and feature.
235        &quot;A String&quot;,
236      ],
237      &quot;excludes&quot;: [ # List of patches to exclude from update.
238        &quot;A String&quot;,
239      ],
240      &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.
241        &quot;A String&quot;,
242      ],
243      &quot;severities&quot;: [ # Install only patches with these severities. Common severities include critical, important, moderate, and low.
244        &quot;A String&quot;,
245      ],
246      &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
247      &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
248    },
249  },
250  &quot;recurringSchedule&quot;: { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
251    &quot;endTime&quot;: &quot;A String&quot;, # Optional. The end time at which a recurring patch deployment schedule is no longer active.
252    &quot;frequency&quot;: &quot;A String&quot;, # Required. The frequency unit of this recurring schedule.
253    &quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the last patch job ran successfully.
254    &quot;monthly&quot;: { # Represents a monthly schedule. An example of a valid monthly schedule is &quot;on the third Tuesday of the month&quot; or &quot;on the 15th of the month&quot;. # Required. Schedule with monthly executions.
255      &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.
256      &quot;weekDayOfMonth&quot;: { # Represents one week day in a month. An example is &quot;the 4th Sunday&quot;. # Required. Week day in a month.
257        &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. A day of the week.
258        &quot;dayOffset&quot;: 42, # Optional. Represents the number of days before or after the given week day of month that the patch deployment is scheduled for. For example if `week_ordinal` and `day_of_week` values point to the second day of the month and this `day_offset` value is set to `3`, the patch deployment takes place three days after the second Tuesday of the month. If this value is negative, for example -5, the patches are deployed five days before before the second Tuesday of the month. Allowed values are in range [-30, 30].
259        &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.
260      },
261    },
262    &quot;nextExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the next patch job is scheduled to run.
263    &quot;startTime&quot;: &quot;A String&quot;, # Optional. The time that the recurring schedule becomes effective. Defaults to `create_time` of the patch deployment.
264    &quot;timeOfDay&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Required. Time of the day to run a recurring deployment.
265      &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.
266      &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
267      &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
268      &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.
269    },
270    &quot;timeZone&quot;: { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # 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.
271      &quot;id&quot;: &quot;A String&quot;, # IANA Time Zone Database time zone, e.g. &quot;America/New_York&quot;.
272      &quot;version&quot;: &quot;A String&quot;, # Optional. IANA Time Zone Database version number, e.g. &quot;2019a&quot;.
273    },
274    &quot;weekly&quot;: { # Represents a weekly schedule. # Required. Schedule with weekly executions.
275      &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week.
276    },
277  },
278  &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs. # Optional. Rollout strategy of the patch job.
279    &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.
280      &quot;fixed&quot;: 42, # Specifies a fixed value.
281      &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be multiplied by a reference value.
282    },
283    &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
284  },
285  &quot;state&quot;: &quot;A String&quot;, # Output only. Current state of the patch deployment.
286  &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.
287}
288
289  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.
290  x__xgafv: string, V1 error format.
291    Allowed values
292      1 - v1 error format
293      2 - v2 error format
294
295Returns:
296  An object of the form:
297
298    { # 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).
299  &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.
300  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the patch deployment. Length of the description is limited to 1024 characters.
301  &quot;duration&quot;: &quot;A String&quot;, # Optional. Duration of the patch. After the duration ends, the patch times out.
302  &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. VM instances to patch.
303    &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is permitted.
304    &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;.
305      { # Represents a group of VMs that can be identified as having all these labels, for example &quot;env=prod and app=web&quot;.
306        &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM instance to be targeted by this filter.
307          &quot;a_key&quot;: &quot;A String&quot;,
308        },
309      },
310    ],
311    &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;.
312      &quot;A String&quot;,
313    ],
314    &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]`
315      &quot;A String&quot;,
316    ],
317    &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM instances in any zone.
318      &quot;A String&quot;,
319    ],
320  },
321  &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.
322  &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.
323  &quot;oneTimeSchedule&quot;: { # Sets the time for a one time patch deployment. Timestamp is in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. # Required. Schedule a one-time execution.
324    &quot;executeTime&quot;: &quot;A String&quot;, # Required. The desired patch job execution time.
325  },
326  &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance. # Optional. Patch configuration that is applied.
327    &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.
328      &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
329        &quot;A String&quot;,
330      ],
331      &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.
332        &quot;A String&quot;,
333      ],
334      &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed using `apt-get dist-upgrade` instead.
335    },
336    &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch rules.
337    },
338    &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
339      &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
340        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
341          42,
342        ],
343        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
344          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
345          &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.
346          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
347        },
348        &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\)).
349        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
350      },
351      &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
352        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
353          42,
354        ],
355        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
356          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
357          &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.
358          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
359        },
360        &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\)).
361        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
362      },
363    },
364    &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
365      &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
366        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
367          42,
368        ],
369        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
370          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
371          &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.
372          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
373        },
374        &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\)).
375        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
376      },
377      &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
378        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
379          42,
380        ],
381        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
382          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
383          &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.
384          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
385        },
386        &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\)).
387        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
388      },
389    },
390    &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
391    &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
392      &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all updates are applied.
393        &quot;A String&quot;,
394      ],
395      &quot;excludes&quot;: [ # List of KBs to exclude from update.
396        &quot;A String&quot;,
397      ],
398      &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.
399        &quot;A String&quot;,
400      ],
401    },
402    &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.
403      &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by using the yum `--exclude` flag.
404        &quot;A String&quot;,
405      ],
406      &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.
407        &quot;A String&quot;,
408      ],
409      &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
410      &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on all platforms.
411    },
412    &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.
413      &quot;categories&quot;: [ # Install only patches with these categories. Common categories include security, recommended, and feature.
414        &quot;A String&quot;,
415      ],
416      &quot;excludes&quot;: [ # List of patches to exclude from update.
417        &quot;A String&quot;,
418      ],
419      &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.
420        &quot;A String&quot;,
421      ],
422      &quot;severities&quot;: [ # Install only patches with these severities. Common severities include critical, important, moderate, and low.
423        &quot;A String&quot;,
424      ],
425      &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
426      &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
427    },
428  },
429  &quot;recurringSchedule&quot;: { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
430    &quot;endTime&quot;: &quot;A String&quot;, # Optional. The end time at which a recurring patch deployment schedule is no longer active.
431    &quot;frequency&quot;: &quot;A String&quot;, # Required. The frequency unit of this recurring schedule.
432    &quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the last patch job ran successfully.
433    &quot;monthly&quot;: { # Represents a monthly schedule. An example of a valid monthly schedule is &quot;on the third Tuesday of the month&quot; or &quot;on the 15th of the month&quot;. # Required. Schedule with monthly executions.
434      &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.
435      &quot;weekDayOfMonth&quot;: { # Represents one week day in a month. An example is &quot;the 4th Sunday&quot;. # Required. Week day in a month.
436        &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. A day of the week.
437        &quot;dayOffset&quot;: 42, # Optional. Represents the number of days before or after the given week day of month that the patch deployment is scheduled for. For example if `week_ordinal` and `day_of_week` values point to the second day of the month and this `day_offset` value is set to `3`, the patch deployment takes place three days after the second Tuesday of the month. If this value is negative, for example -5, the patches are deployed five days before before the second Tuesday of the month. Allowed values are in range [-30, 30].
438        &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.
439      },
440    },
441    &quot;nextExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the next patch job is scheduled to run.
442    &quot;startTime&quot;: &quot;A String&quot;, # Optional. The time that the recurring schedule becomes effective. Defaults to `create_time` of the patch deployment.
443    &quot;timeOfDay&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Required. Time of the day to run a recurring deployment.
444      &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.
445      &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
446      &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
447      &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.
448    },
449    &quot;timeZone&quot;: { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # 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.
450      &quot;id&quot;: &quot;A String&quot;, # IANA Time Zone Database time zone, e.g. &quot;America/New_York&quot;.
451      &quot;version&quot;: &quot;A String&quot;, # Optional. IANA Time Zone Database version number, e.g. &quot;2019a&quot;.
452    },
453    &quot;weekly&quot;: { # Represents a weekly schedule. # Required. Schedule with weekly executions.
454      &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week.
455    },
456  },
457  &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs. # Optional. Rollout strategy of the patch job.
458    &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.
459      &quot;fixed&quot;: 42, # Specifies a fixed value.
460      &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be multiplied by a reference value.
461    },
462    &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
463  },
464  &quot;state&quot;: &quot;A String&quot;, # Output only. Current state of the patch deployment.
465  &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.
466}</pre>
467</div>
468
469<div class="method">
470    <code class="details" id="delete">delete(name, x__xgafv=None)</code>
471  <pre>Delete an OS Config patch deployment.
472
473Args:
474  name: string, Required. The resource name of the patch deployment in the form `projects/*/patchDeployments/*`. (required)
475  x__xgafv: string, V1 error format.
476    Allowed values
477      1 - v1 error format
478      2 - v2 error format
479
480Returns:
481  An object of the form:
482
483    { # 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 `{}`.
484}</pre>
485</div>
486
487<div class="method">
488    <code class="details" id="get">get(name, x__xgafv=None)</code>
489  <pre>Get an OS Config patch deployment.
490
491Args:
492  name: string, Required. The resource name of the patch deployment in the form `projects/*/patchDeployments/*`. (required)
493  x__xgafv: string, V1 error format.
494    Allowed values
495      1 - v1 error format
496      2 - v2 error format
497
498Returns:
499  An object of the form:
500
501    { # 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).
502  &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.
503  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the patch deployment. Length of the description is limited to 1024 characters.
504  &quot;duration&quot;: &quot;A String&quot;, # Optional. Duration of the patch. After the duration ends, the patch times out.
505  &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. VM instances to patch.
506    &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is permitted.
507    &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;.
508      { # Represents a group of VMs that can be identified as having all these labels, for example &quot;env=prod and app=web&quot;.
509        &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM instance to be targeted by this filter.
510          &quot;a_key&quot;: &quot;A String&quot;,
511        },
512      },
513    ],
514    &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;.
515      &quot;A String&quot;,
516    ],
517    &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]`
518      &quot;A String&quot;,
519    ],
520    &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM instances in any zone.
521      &quot;A String&quot;,
522    ],
523  },
524  &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.
525  &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.
526  &quot;oneTimeSchedule&quot;: { # Sets the time for a one time patch deployment. Timestamp is in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. # Required. Schedule a one-time execution.
527    &quot;executeTime&quot;: &quot;A String&quot;, # Required. The desired patch job execution time.
528  },
529  &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance. # Optional. Patch configuration that is applied.
530    &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.
531      &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
532        &quot;A String&quot;,
533      ],
534      &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.
535        &quot;A String&quot;,
536      ],
537      &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed using `apt-get dist-upgrade` instead.
538    },
539    &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch rules.
540    },
541    &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
542      &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
543        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
544          42,
545        ],
546        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
547          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
548          &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.
549          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
550        },
551        &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\)).
552        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
553      },
554      &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
555        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
556          42,
557        ],
558        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
559          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
560          &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.
561          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
562        },
563        &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\)).
564        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
565      },
566    },
567    &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
568      &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
569        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
570          42,
571        ],
572        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
573          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
574          &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.
575          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
576        },
577        &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\)).
578        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
579      },
580      &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
581        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
582          42,
583        ],
584        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
585          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
586          &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.
587          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
588        },
589        &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\)).
590        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
591      },
592    },
593    &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
594    &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
595      &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all updates are applied.
596        &quot;A String&quot;,
597      ],
598      &quot;excludes&quot;: [ # List of KBs to exclude from update.
599        &quot;A String&quot;,
600      ],
601      &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.
602        &quot;A String&quot;,
603      ],
604    },
605    &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.
606      &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by using the yum `--exclude` flag.
607        &quot;A String&quot;,
608      ],
609      &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.
610        &quot;A String&quot;,
611      ],
612      &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
613      &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on all platforms.
614    },
615    &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.
616      &quot;categories&quot;: [ # Install only patches with these categories. Common categories include security, recommended, and feature.
617        &quot;A String&quot;,
618      ],
619      &quot;excludes&quot;: [ # List of patches to exclude from update.
620        &quot;A String&quot;,
621      ],
622      &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.
623        &quot;A String&quot;,
624      ],
625      &quot;severities&quot;: [ # Install only patches with these severities. Common severities include critical, important, moderate, and low.
626        &quot;A String&quot;,
627      ],
628      &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
629      &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
630    },
631  },
632  &quot;recurringSchedule&quot;: { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
633    &quot;endTime&quot;: &quot;A String&quot;, # Optional. The end time at which a recurring patch deployment schedule is no longer active.
634    &quot;frequency&quot;: &quot;A String&quot;, # Required. The frequency unit of this recurring schedule.
635    &quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the last patch job ran successfully.
636    &quot;monthly&quot;: { # Represents a monthly schedule. An example of a valid monthly schedule is &quot;on the third Tuesday of the month&quot; or &quot;on the 15th of the month&quot;. # Required. Schedule with monthly executions.
637      &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.
638      &quot;weekDayOfMonth&quot;: { # Represents one week day in a month. An example is &quot;the 4th Sunday&quot;. # Required. Week day in a month.
639        &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. A day of the week.
640        &quot;dayOffset&quot;: 42, # Optional. Represents the number of days before or after the given week day of month that the patch deployment is scheduled for. For example if `week_ordinal` and `day_of_week` values point to the second day of the month and this `day_offset` value is set to `3`, the patch deployment takes place three days after the second Tuesday of the month. If this value is negative, for example -5, the patches are deployed five days before before the second Tuesday of the month. Allowed values are in range [-30, 30].
641        &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.
642      },
643    },
644    &quot;nextExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the next patch job is scheduled to run.
645    &quot;startTime&quot;: &quot;A String&quot;, # Optional. The time that the recurring schedule becomes effective. Defaults to `create_time` of the patch deployment.
646    &quot;timeOfDay&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Required. Time of the day to run a recurring deployment.
647      &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.
648      &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
649      &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
650      &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.
651    },
652    &quot;timeZone&quot;: { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # 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.
653      &quot;id&quot;: &quot;A String&quot;, # IANA Time Zone Database time zone, e.g. &quot;America/New_York&quot;.
654      &quot;version&quot;: &quot;A String&quot;, # Optional. IANA Time Zone Database version number, e.g. &quot;2019a&quot;.
655    },
656    &quot;weekly&quot;: { # Represents a weekly schedule. # Required. Schedule with weekly executions.
657      &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week.
658    },
659  },
660  &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs. # Optional. Rollout strategy of the patch job.
661    &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.
662      &quot;fixed&quot;: 42, # Specifies a fixed value.
663      &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be multiplied by a reference value.
664    },
665    &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
666  },
667  &quot;state&quot;: &quot;A String&quot;, # Output only. Current state of the patch deployment.
668  &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.
669}</pre>
670</div>
671
672<div class="method">
673    <code class="details" id="list">list(parent, pageSize=None, pageToken=None, x__xgafv=None)</code>
674  <pre>Get a page of OS Config patch deployments.
675
676Args:
677  parent: string, Required. The resource name of the parent in the form `projects/*`. (required)
678  pageSize: integer, Optional. The maximum number of patch deployments to return. Default is 100.
679  pageToken: string, Optional. A pagination token returned from a previous call to ListPatchDeployments that indicates where this listing should continue from.
680  x__xgafv: string, V1 error format.
681    Allowed values
682      1 - v1 error format
683      2 - v2 error format
684
685Returns:
686  An object of the form:
687
688    { # A response message for listing patch deployments.
689  &quot;nextPageToken&quot;: &quot;A String&quot;, # A pagination token that can be used to get the next page of patch deployments.
690  &quot;patchDeployments&quot;: [ # The list of patch deployments.
691    { # 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).
692      &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.
693      &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the patch deployment. Length of the description is limited to 1024 characters.
694      &quot;duration&quot;: &quot;A String&quot;, # Optional. Duration of the patch. After the duration ends, the patch times out.
695      &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. VM instances to patch.
696        &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is permitted.
697        &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;.
698          { # Represents a group of VMs that can be identified as having all these labels, for example &quot;env=prod and app=web&quot;.
699            &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM instance to be targeted by this filter.
700              &quot;a_key&quot;: &quot;A String&quot;,
701            },
702          },
703        ],
704        &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;.
705          &quot;A String&quot;,
706        ],
707        &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]`
708          &quot;A String&quot;,
709        ],
710        &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM instances in any zone.
711          &quot;A String&quot;,
712        ],
713      },
714      &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.
715      &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.
716      &quot;oneTimeSchedule&quot;: { # Sets the time for a one time patch deployment. Timestamp is in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. # Required. Schedule a one-time execution.
717        &quot;executeTime&quot;: &quot;A String&quot;, # Required. The desired patch job execution time.
718      },
719      &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance. # Optional. Patch configuration that is applied.
720        &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.
721          &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
722            &quot;A String&quot;,
723          ],
724          &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.
725            &quot;A String&quot;,
726          ],
727          &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed using `apt-get dist-upgrade` instead.
728        },
729        &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch rules.
730        },
731        &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
732          &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
733            &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
734              42,
735            ],
736            &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
737              &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
738              &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.
739              &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
740            },
741            &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\)).
742            &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
743          },
744          &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
745            &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
746              42,
747            ],
748            &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
749              &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
750              &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.
751              &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
752            },
753            &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\)).
754            &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
755          },
756        },
757        &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
758          &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
759            &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
760              42,
761            ],
762            &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
763              &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
764              &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.
765              &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
766            },
767            &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\)).
768            &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
769          },
770          &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
771            &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
772              42,
773            ],
774            &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
775              &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
776              &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.
777              &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
778            },
779            &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\)).
780            &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
781          },
782        },
783        &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
784        &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
785          &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all updates are applied.
786            &quot;A String&quot;,
787          ],
788          &quot;excludes&quot;: [ # List of KBs to exclude from update.
789            &quot;A String&quot;,
790          ],
791          &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.
792            &quot;A String&quot;,
793          ],
794        },
795        &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.
796          &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by using the yum `--exclude` flag.
797            &quot;A String&quot;,
798          ],
799          &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.
800            &quot;A String&quot;,
801          ],
802          &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
803          &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on all platforms.
804        },
805        &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.
806          &quot;categories&quot;: [ # Install only patches with these categories. Common categories include security, recommended, and feature.
807            &quot;A String&quot;,
808          ],
809          &quot;excludes&quot;: [ # List of patches to exclude from update.
810            &quot;A String&quot;,
811          ],
812          &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.
813            &quot;A String&quot;,
814          ],
815          &quot;severities&quot;: [ # Install only patches with these severities. Common severities include critical, important, moderate, and low.
816            &quot;A String&quot;,
817          ],
818          &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
819          &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
820        },
821      },
822      &quot;recurringSchedule&quot;: { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
823        &quot;endTime&quot;: &quot;A String&quot;, # Optional. The end time at which a recurring patch deployment schedule is no longer active.
824        &quot;frequency&quot;: &quot;A String&quot;, # Required. The frequency unit of this recurring schedule.
825        &quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the last patch job ran successfully.
826        &quot;monthly&quot;: { # Represents a monthly schedule. An example of a valid monthly schedule is &quot;on the third Tuesday of the month&quot; or &quot;on the 15th of the month&quot;. # Required. Schedule with monthly executions.
827          &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.
828          &quot;weekDayOfMonth&quot;: { # Represents one week day in a month. An example is &quot;the 4th Sunday&quot;. # Required. Week day in a month.
829            &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. A day of the week.
830            &quot;dayOffset&quot;: 42, # Optional. Represents the number of days before or after the given week day of month that the patch deployment is scheduled for. For example if `week_ordinal` and `day_of_week` values point to the second day of the month and this `day_offset` value is set to `3`, the patch deployment takes place three days after the second Tuesday of the month. If this value is negative, for example -5, the patches are deployed five days before before the second Tuesday of the month. Allowed values are in range [-30, 30].
831            &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.
832          },
833        },
834        &quot;nextExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the next patch job is scheduled to run.
835        &quot;startTime&quot;: &quot;A String&quot;, # Optional. The time that the recurring schedule becomes effective. Defaults to `create_time` of the patch deployment.
836        &quot;timeOfDay&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Required. Time of the day to run a recurring deployment.
837          &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.
838          &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
839          &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
840          &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.
841        },
842        &quot;timeZone&quot;: { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # 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.
843          &quot;id&quot;: &quot;A String&quot;, # IANA Time Zone Database time zone, e.g. &quot;America/New_York&quot;.
844          &quot;version&quot;: &quot;A String&quot;, # Optional. IANA Time Zone Database version number, e.g. &quot;2019a&quot;.
845        },
846        &quot;weekly&quot;: { # Represents a weekly schedule. # Required. Schedule with weekly executions.
847          &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week.
848        },
849      },
850      &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs. # Optional. Rollout strategy of the patch job.
851        &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.
852          &quot;fixed&quot;: 42, # Specifies a fixed value.
853          &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be multiplied by a reference value.
854        },
855        &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
856      },
857      &quot;state&quot;: &quot;A String&quot;, # Output only. Current state of the patch deployment.
858      &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.
859    },
860  ],
861}</pre>
862</div>
863
864<div class="method">
865    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
866  <pre>Retrieves the next page of results.
867
868Args:
869  previous_request: The request for the previous page. (required)
870  previous_response: The response from the request for the previous page. (required)
871
872Returns:
873  A request object that you can call &#x27;execute()&#x27; on to request the next
874  page. Returns None if there are no more items in the collection.
875    </pre>
876</div>
877
878<div class="method">
879    <code class="details" id="patch">patch(name, body=None, updateMask=None, x__xgafv=None)</code>
880  <pre>Update an OS Config patch deployment.
881
882Args:
883  name: string, 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. (required)
884  body: object, The request body.
885    The object takes the form of:
886
887{ # 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).
888  &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.
889  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the patch deployment. Length of the description is limited to 1024 characters.
890  &quot;duration&quot;: &quot;A String&quot;, # Optional. Duration of the patch. After the duration ends, the patch times out.
891  &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. VM instances to patch.
892    &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is permitted.
893    &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;.
894      { # Represents a group of VMs that can be identified as having all these labels, for example &quot;env=prod and app=web&quot;.
895        &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM instance to be targeted by this filter.
896          &quot;a_key&quot;: &quot;A String&quot;,
897        },
898      },
899    ],
900    &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;.
901      &quot;A String&quot;,
902    ],
903    &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]`
904      &quot;A String&quot;,
905    ],
906    &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM instances in any zone.
907      &quot;A String&quot;,
908    ],
909  },
910  &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.
911  &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.
912  &quot;oneTimeSchedule&quot;: { # Sets the time for a one time patch deployment. Timestamp is in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. # Required. Schedule a one-time execution.
913    &quot;executeTime&quot;: &quot;A String&quot;, # Required. The desired patch job execution time.
914  },
915  &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance. # Optional. Patch configuration that is applied.
916    &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.
917      &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
918        &quot;A String&quot;,
919      ],
920      &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.
921        &quot;A String&quot;,
922      ],
923      &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed using `apt-get dist-upgrade` instead.
924    },
925    &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch rules.
926    },
927    &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
928      &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
929        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
930          42,
931        ],
932        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
933          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
934          &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.
935          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
936        },
937        &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\)).
938        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
939      },
940      &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
941        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
942          42,
943        ],
944        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
945          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
946          &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.
947          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
948        },
949        &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\)).
950        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
951      },
952    },
953    &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
954      &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
955        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
956          42,
957        ],
958        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
959          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
960          &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.
961          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
962        },
963        &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\)).
964        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
965      },
966      &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
967        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
968          42,
969        ],
970        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
971          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
972          &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.
973          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
974        },
975        &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\)).
976        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
977      },
978    },
979    &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
980    &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
981      &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all updates are applied.
982        &quot;A String&quot;,
983      ],
984      &quot;excludes&quot;: [ # List of KBs to exclude from update.
985        &quot;A String&quot;,
986      ],
987      &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.
988        &quot;A String&quot;,
989      ],
990    },
991    &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.
992      &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by using the yum `--exclude` flag.
993        &quot;A String&quot;,
994      ],
995      &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.
996        &quot;A String&quot;,
997      ],
998      &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
999      &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on all platforms.
1000    },
1001    &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.
1002      &quot;categories&quot;: [ # Install only patches with these categories. Common categories include security, recommended, and feature.
1003        &quot;A String&quot;,
1004      ],
1005      &quot;excludes&quot;: [ # List of patches to exclude from update.
1006        &quot;A String&quot;,
1007      ],
1008      &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.
1009        &quot;A String&quot;,
1010      ],
1011      &quot;severities&quot;: [ # Install only patches with these severities. Common severities include critical, important, moderate, and low.
1012        &quot;A String&quot;,
1013      ],
1014      &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
1015      &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
1016    },
1017  },
1018  &quot;recurringSchedule&quot;: { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
1019    &quot;endTime&quot;: &quot;A String&quot;, # Optional. The end time at which a recurring patch deployment schedule is no longer active.
1020    &quot;frequency&quot;: &quot;A String&quot;, # Required. The frequency unit of this recurring schedule.
1021    &quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the last patch job ran successfully.
1022    &quot;monthly&quot;: { # Represents a monthly schedule. An example of a valid monthly schedule is &quot;on the third Tuesday of the month&quot; or &quot;on the 15th of the month&quot;. # Required. Schedule with monthly executions.
1023      &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.
1024      &quot;weekDayOfMonth&quot;: { # Represents one week day in a month. An example is &quot;the 4th Sunday&quot;. # Required. Week day in a month.
1025        &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. A day of the week.
1026        &quot;dayOffset&quot;: 42, # Optional. Represents the number of days before or after the given week day of month that the patch deployment is scheduled for. For example if `week_ordinal` and `day_of_week` values point to the second day of the month and this `day_offset` value is set to `3`, the patch deployment takes place three days after the second Tuesday of the month. If this value is negative, for example -5, the patches are deployed five days before before the second Tuesday of the month. Allowed values are in range [-30, 30].
1027        &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.
1028      },
1029    },
1030    &quot;nextExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the next patch job is scheduled to run.
1031    &quot;startTime&quot;: &quot;A String&quot;, # Optional. The time that the recurring schedule becomes effective. Defaults to `create_time` of the patch deployment.
1032    &quot;timeOfDay&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Required. Time of the day to run a recurring deployment.
1033      &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.
1034      &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
1035      &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
1036      &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.
1037    },
1038    &quot;timeZone&quot;: { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # 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.
1039      &quot;id&quot;: &quot;A String&quot;, # IANA Time Zone Database time zone, e.g. &quot;America/New_York&quot;.
1040      &quot;version&quot;: &quot;A String&quot;, # Optional. IANA Time Zone Database version number, e.g. &quot;2019a&quot;.
1041    },
1042    &quot;weekly&quot;: { # Represents a weekly schedule. # Required. Schedule with weekly executions.
1043      &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week.
1044    },
1045  },
1046  &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs. # Optional. Rollout strategy of the patch job.
1047    &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.
1048      &quot;fixed&quot;: 42, # Specifies a fixed value.
1049      &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be multiplied by a reference value.
1050    },
1051    &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
1052  },
1053  &quot;state&quot;: &quot;A String&quot;, # Output only. Current state of the patch deployment.
1054  &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.
1055}
1056
1057  updateMask: string, Optional. Field mask that controls which fields of the patch deployment should be updated.
1058  x__xgafv: string, V1 error format.
1059    Allowed values
1060      1 - v1 error format
1061      2 - v2 error format
1062
1063Returns:
1064  An object of the form:
1065
1066    { # 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).
1067  &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.
1068  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the patch deployment. Length of the description is limited to 1024 characters.
1069  &quot;duration&quot;: &quot;A String&quot;, # Optional. Duration of the patch. After the duration ends, the patch times out.
1070  &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. VM instances to patch.
1071    &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is permitted.
1072    &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;.
1073      { # Represents a group of VMs that can be identified as having all these labels, for example &quot;env=prod and app=web&quot;.
1074        &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM instance to be targeted by this filter.
1075          &quot;a_key&quot;: &quot;A String&quot;,
1076        },
1077      },
1078    ],
1079    &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;.
1080      &quot;A String&quot;,
1081    ],
1082    &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]`
1083      &quot;A String&quot;,
1084    ],
1085    &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM instances in any zone.
1086      &quot;A String&quot;,
1087    ],
1088  },
1089  &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.
1090  &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.
1091  &quot;oneTimeSchedule&quot;: { # Sets the time for a one time patch deployment. Timestamp is in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. # Required. Schedule a one-time execution.
1092    &quot;executeTime&quot;: &quot;A String&quot;, # Required. The desired patch job execution time.
1093  },
1094  &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance. # Optional. Patch configuration that is applied.
1095    &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.
1096      &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
1097        &quot;A String&quot;,
1098      ],
1099      &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.
1100        &quot;A String&quot;,
1101      ],
1102      &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed using `apt-get dist-upgrade` instead.
1103    },
1104    &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch rules.
1105    },
1106    &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
1107      &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
1108        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
1109          42,
1110        ],
1111        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
1112          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
1113          &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.
1114          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
1115        },
1116        &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\)).
1117        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
1118      },
1119      &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
1120        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
1121          42,
1122        ],
1123        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
1124          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
1125          &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.
1126          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
1127        },
1128        &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\)).
1129        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
1130      },
1131    },
1132    &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
1133      &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
1134        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
1135          42,
1136        ],
1137        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
1138          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
1139          &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.
1140          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
1141        },
1142        &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\)).
1143        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
1144      },
1145      &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
1146        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
1147          42,
1148        ],
1149        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
1150          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
1151          &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.
1152          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
1153        },
1154        &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\)).
1155        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
1156      },
1157    },
1158    &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
1159    &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
1160      &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all updates are applied.
1161        &quot;A String&quot;,
1162      ],
1163      &quot;excludes&quot;: [ # List of KBs to exclude from update.
1164        &quot;A String&quot;,
1165      ],
1166      &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.
1167        &quot;A String&quot;,
1168      ],
1169    },
1170    &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.
1171      &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by using the yum `--exclude` flag.
1172        &quot;A String&quot;,
1173      ],
1174      &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.
1175        &quot;A String&quot;,
1176      ],
1177      &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
1178      &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on all platforms.
1179    },
1180    &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.
1181      &quot;categories&quot;: [ # Install only patches with these categories. Common categories include security, recommended, and feature.
1182        &quot;A String&quot;,
1183      ],
1184      &quot;excludes&quot;: [ # List of patches to exclude from update.
1185        &quot;A String&quot;,
1186      ],
1187      &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.
1188        &quot;A String&quot;,
1189      ],
1190      &quot;severities&quot;: [ # Install only patches with these severities. Common severities include critical, important, moderate, and low.
1191        &quot;A String&quot;,
1192      ],
1193      &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
1194      &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
1195    },
1196  },
1197  &quot;recurringSchedule&quot;: { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
1198    &quot;endTime&quot;: &quot;A String&quot;, # Optional. The end time at which a recurring patch deployment schedule is no longer active.
1199    &quot;frequency&quot;: &quot;A String&quot;, # Required. The frequency unit of this recurring schedule.
1200    &quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the last patch job ran successfully.
1201    &quot;monthly&quot;: { # Represents a monthly schedule. An example of a valid monthly schedule is &quot;on the third Tuesday of the month&quot; or &quot;on the 15th of the month&quot;. # Required. Schedule with monthly executions.
1202      &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.
1203      &quot;weekDayOfMonth&quot;: { # Represents one week day in a month. An example is &quot;the 4th Sunday&quot;. # Required. Week day in a month.
1204        &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. A day of the week.
1205        &quot;dayOffset&quot;: 42, # Optional. Represents the number of days before or after the given week day of month that the patch deployment is scheduled for. For example if `week_ordinal` and `day_of_week` values point to the second day of the month and this `day_offset` value is set to `3`, the patch deployment takes place three days after the second Tuesday of the month. If this value is negative, for example -5, the patches are deployed five days before before the second Tuesday of the month. Allowed values are in range [-30, 30].
1206        &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.
1207      },
1208    },
1209    &quot;nextExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the next patch job is scheduled to run.
1210    &quot;startTime&quot;: &quot;A String&quot;, # Optional. The time that the recurring schedule becomes effective. Defaults to `create_time` of the patch deployment.
1211    &quot;timeOfDay&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Required. Time of the day to run a recurring deployment.
1212      &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.
1213      &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
1214      &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
1215      &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.
1216    },
1217    &quot;timeZone&quot;: { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # 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.
1218      &quot;id&quot;: &quot;A String&quot;, # IANA Time Zone Database time zone, e.g. &quot;America/New_York&quot;.
1219      &quot;version&quot;: &quot;A String&quot;, # Optional. IANA Time Zone Database version number, e.g. &quot;2019a&quot;.
1220    },
1221    &quot;weekly&quot;: { # Represents a weekly schedule. # Required. Schedule with weekly executions.
1222      &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week.
1223    },
1224  },
1225  &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs. # Optional. Rollout strategy of the patch job.
1226    &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.
1227      &quot;fixed&quot;: 42, # Specifies a fixed value.
1228      &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be multiplied by a reference value.
1229    },
1230    &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
1231  },
1232  &quot;state&quot;: &quot;A String&quot;, # Output only. Current state of the patch deployment.
1233  &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.
1234}</pre>
1235</div>
1236
1237<div class="method">
1238    <code class="details" id="pause">pause(name, body=None, x__xgafv=None)</code>
1239  <pre>Change state of patch deployment to &quot;PAUSED&quot;. Patch deployment in paused state doesn&#x27;t generate patch jobs.
1240
1241Args:
1242  name: string, Required. The resource name of the patch deployment in the form `projects/*/patchDeployments/*`. (required)
1243  body: object, The request body.
1244    The object takes the form of:
1245
1246{ # A request message for pausing a patch deployment.
1247}
1248
1249  x__xgafv: string, V1 error format.
1250    Allowed values
1251      1 - v1 error format
1252      2 - v2 error format
1253
1254Returns:
1255  An object of the form:
1256
1257    { # 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).
1258  &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.
1259  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the patch deployment. Length of the description is limited to 1024 characters.
1260  &quot;duration&quot;: &quot;A String&quot;, # Optional. Duration of the patch. After the duration ends, the patch times out.
1261  &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. VM instances to patch.
1262    &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is permitted.
1263    &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;.
1264      { # Represents a group of VMs that can be identified as having all these labels, for example &quot;env=prod and app=web&quot;.
1265        &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM instance to be targeted by this filter.
1266          &quot;a_key&quot;: &quot;A String&quot;,
1267        },
1268      },
1269    ],
1270    &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;.
1271      &quot;A String&quot;,
1272    ],
1273    &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]`
1274      &quot;A String&quot;,
1275    ],
1276    &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM instances in any zone.
1277      &quot;A String&quot;,
1278    ],
1279  },
1280  &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.
1281  &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.
1282  &quot;oneTimeSchedule&quot;: { # Sets the time for a one time patch deployment. Timestamp is in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. # Required. Schedule a one-time execution.
1283    &quot;executeTime&quot;: &quot;A String&quot;, # Required. The desired patch job execution time.
1284  },
1285  &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance. # Optional. Patch configuration that is applied.
1286    &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.
1287      &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
1288        &quot;A String&quot;,
1289      ],
1290      &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.
1291        &quot;A String&quot;,
1292      ],
1293      &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed using `apt-get dist-upgrade` instead.
1294    },
1295    &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch rules.
1296    },
1297    &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
1298      &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
1299        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
1300          42,
1301        ],
1302        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
1303          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
1304          &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.
1305          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
1306        },
1307        &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\)).
1308        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
1309      },
1310      &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
1311        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
1312          42,
1313        ],
1314        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
1315          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
1316          &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.
1317          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
1318        },
1319        &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\)).
1320        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
1321      },
1322    },
1323    &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
1324      &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
1325        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
1326          42,
1327        ],
1328        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
1329          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
1330          &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.
1331          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
1332        },
1333        &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\)).
1334        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
1335      },
1336      &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
1337        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
1338          42,
1339        ],
1340        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
1341          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
1342          &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.
1343          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
1344        },
1345        &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\)).
1346        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
1347      },
1348    },
1349    &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
1350    &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
1351      &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all updates are applied.
1352        &quot;A String&quot;,
1353      ],
1354      &quot;excludes&quot;: [ # List of KBs to exclude from update.
1355        &quot;A String&quot;,
1356      ],
1357      &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.
1358        &quot;A String&quot;,
1359      ],
1360    },
1361    &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.
1362      &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by using the yum `--exclude` flag.
1363        &quot;A String&quot;,
1364      ],
1365      &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.
1366        &quot;A String&quot;,
1367      ],
1368      &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
1369      &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on all platforms.
1370    },
1371    &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.
1372      &quot;categories&quot;: [ # Install only patches with these categories. Common categories include security, recommended, and feature.
1373        &quot;A String&quot;,
1374      ],
1375      &quot;excludes&quot;: [ # List of patches to exclude from update.
1376        &quot;A String&quot;,
1377      ],
1378      &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.
1379        &quot;A String&quot;,
1380      ],
1381      &quot;severities&quot;: [ # Install only patches with these severities. Common severities include critical, important, moderate, and low.
1382        &quot;A String&quot;,
1383      ],
1384      &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
1385      &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
1386    },
1387  },
1388  &quot;recurringSchedule&quot;: { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
1389    &quot;endTime&quot;: &quot;A String&quot;, # Optional. The end time at which a recurring patch deployment schedule is no longer active.
1390    &quot;frequency&quot;: &quot;A String&quot;, # Required. The frequency unit of this recurring schedule.
1391    &quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the last patch job ran successfully.
1392    &quot;monthly&quot;: { # Represents a monthly schedule. An example of a valid monthly schedule is &quot;on the third Tuesday of the month&quot; or &quot;on the 15th of the month&quot;. # Required. Schedule with monthly executions.
1393      &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.
1394      &quot;weekDayOfMonth&quot;: { # Represents one week day in a month. An example is &quot;the 4th Sunday&quot;. # Required. Week day in a month.
1395        &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. A day of the week.
1396        &quot;dayOffset&quot;: 42, # Optional. Represents the number of days before or after the given week day of month that the patch deployment is scheduled for. For example if `week_ordinal` and `day_of_week` values point to the second day of the month and this `day_offset` value is set to `3`, the patch deployment takes place three days after the second Tuesday of the month. If this value is negative, for example -5, the patches are deployed five days before before the second Tuesday of the month. Allowed values are in range [-30, 30].
1397        &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.
1398      },
1399    },
1400    &quot;nextExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the next patch job is scheduled to run.
1401    &quot;startTime&quot;: &quot;A String&quot;, # Optional. The time that the recurring schedule becomes effective. Defaults to `create_time` of the patch deployment.
1402    &quot;timeOfDay&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Required. Time of the day to run a recurring deployment.
1403      &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.
1404      &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
1405      &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
1406      &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.
1407    },
1408    &quot;timeZone&quot;: { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # 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.
1409      &quot;id&quot;: &quot;A String&quot;, # IANA Time Zone Database time zone, e.g. &quot;America/New_York&quot;.
1410      &quot;version&quot;: &quot;A String&quot;, # Optional. IANA Time Zone Database version number, e.g. &quot;2019a&quot;.
1411    },
1412    &quot;weekly&quot;: { # Represents a weekly schedule. # Required. Schedule with weekly executions.
1413      &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week.
1414    },
1415  },
1416  &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs. # Optional. Rollout strategy of the patch job.
1417    &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.
1418      &quot;fixed&quot;: 42, # Specifies a fixed value.
1419      &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be multiplied by a reference value.
1420    },
1421    &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
1422  },
1423  &quot;state&quot;: &quot;A String&quot;, # Output only. Current state of the patch deployment.
1424  &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.
1425}</pre>
1426</div>
1427
1428<div class="method">
1429    <code class="details" id="resume">resume(name, body=None, x__xgafv=None)</code>
1430  <pre>Change state of patch deployment back to &quot;ACTIVE&quot;. Patch deployment in active state continues to generate patch jobs.
1431
1432Args:
1433  name: string, Required. The resource name of the patch deployment in the form `projects/*/patchDeployments/*`. (required)
1434  body: object, The request body.
1435    The object takes the form of:
1436
1437{ # A request message for resuming a patch deployment.
1438}
1439
1440  x__xgafv: string, V1 error format.
1441    Allowed values
1442      1 - v1 error format
1443      2 - v2 error format
1444
1445Returns:
1446  An object of the form:
1447
1448    { # 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).
1449  &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.
1450  &quot;description&quot;: &quot;A String&quot;, # Optional. Description of the patch deployment. Length of the description is limited to 1024 characters.
1451  &quot;duration&quot;: &quot;A String&quot;, # Optional. Duration of the patch. After the duration ends, the patch times out.
1452  &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. VM instances to patch.
1453    &quot;all&quot;: True or False, # Target all VM instances in the project. If true, no other criteria is permitted.
1454    &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;.
1455      { # Represents a group of VMs that can be identified as having all these labels, for example &quot;env=prod and app=web&quot;.
1456        &quot;labels&quot;: { # Compute Engine instance labels that must be present for a VM instance to be targeted by this filter.
1457          &quot;a_key&quot;: &quot;A String&quot;,
1458        },
1459      },
1460    ],
1461    &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;.
1462      &quot;A String&quot;,
1463    ],
1464    &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]`
1465      &quot;A String&quot;,
1466    ],
1467    &quot;zones&quot;: [ # Targets VM instances in ANY of these zones. Leave empty to target VM instances in any zone.
1468      &quot;A String&quot;,
1469    ],
1470  },
1471  &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.
1472  &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.
1473  &quot;oneTimeSchedule&quot;: { # Sets the time for a one time patch deployment. Timestamp is in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. # Required. Schedule a one-time execution.
1474    &quot;executeTime&quot;: &quot;A String&quot;, # Required. The desired patch job execution time.
1475  },
1476  &quot;patchConfig&quot;: { # Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance. # Optional. Patch configuration that is applied.
1477    &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.
1478      &quot;excludes&quot;: [ # List of packages to exclude from update. These packages will be excluded
1479        &quot;A String&quot;,
1480      ],
1481      &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.
1482        &quot;A String&quot;,
1483      ],
1484      &quot;type&quot;: &quot;A String&quot;, # By changing the type to DIST, the patching is performed using `apt-get dist-upgrade` instead.
1485    },
1486    &quot;goo&quot;: { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch rules.
1487    },
1488    &quot;postStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
1489      &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
1490        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
1491          42,
1492        ],
1493        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
1494          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
1495          &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.
1496          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
1497        },
1498        &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\)).
1499        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
1500      },
1501      &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
1502        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
1503          42,
1504        ],
1505        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
1506          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
1507          &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.
1508          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
1509        },
1510        &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\)).
1511        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
1512      },
1513    },
1514    &quot;preStep&quot;: { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
1515      &quot;linuxExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
1516        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
1517          42,
1518        ],
1519        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
1520          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
1521          &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.
1522          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
1523        },
1524        &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\)).
1525        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
1526      },
1527      &quot;windowsExecStepConfig&quot;: { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
1528        &quot;allowedSuccessCodes&quot;: [ # Defaults to [0]. A list of possible return values that the execution can return to indicate a success.
1529          42,
1530        ],
1531        &quot;gcsObject&quot;: { # Google Cloud Storage object representation. # A Google Cloud Storage object containing the executable.
1532          &quot;bucket&quot;: &quot;A String&quot;, # Required. Bucket of the Google Cloud Storage object.
1533          &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.
1534          &quot;object&quot;: &quot;A String&quot;, # Required. Name of the Google Cloud Storage object.
1535        },
1536        &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\)).
1537        &quot;localPath&quot;: &quot;A String&quot;, # An absolute path to the executable on the VM.
1538      },
1539    },
1540    &quot;rebootConfig&quot;: &quot;A String&quot;, # Post-patch reboot settings.
1541    &quot;windowsUpdate&quot;: { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
1542      &quot;classifications&quot;: [ # Only apply updates of these windows update classifications. If empty, all updates are applied.
1543        &quot;A String&quot;,
1544      ],
1545      &quot;excludes&quot;: [ # List of KBs to exclude from update.
1546        &quot;A String&quot;,
1547      ],
1548      &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.
1549        &quot;A String&quot;,
1550      ],
1551    },
1552    &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.
1553      &quot;excludes&quot;: [ # List of packages to exclude from update. These packages are excluded by using the yum `--exclude` flag.
1554        &quot;A String&quot;,
1555      ],
1556      &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.
1557        &quot;A String&quot;,
1558      ],
1559      &quot;minimal&quot;: True or False, # Will cause patch to run `yum update-minimal` instead.
1560      &quot;security&quot;: True or False, # Adds the `--security` flag to `yum update`. Not supported on all platforms.
1561    },
1562    &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.
1563      &quot;categories&quot;: [ # Install only patches with these categories. Common categories include security, recommended, and feature.
1564        &quot;A String&quot;,
1565      ],
1566      &quot;excludes&quot;: [ # List of patches to exclude from update.
1567        &quot;A String&quot;,
1568      ],
1569      &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.
1570        &quot;A String&quot;,
1571      ],
1572      &quot;severities&quot;: [ # Install only patches with these severities. Common severities include critical, important, moderate, and low.
1573        &quot;A String&quot;,
1574      ],
1575      &quot;withOptional&quot;: True or False, # Adds the `--with-optional` flag to `zypper patch`.
1576      &quot;withUpdate&quot;: True or False, # Adds the `--with-update` flag, to `zypper patch`.
1577    },
1578  },
1579  &quot;recurringSchedule&quot;: { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
1580    &quot;endTime&quot;: &quot;A String&quot;, # Optional. The end time at which a recurring patch deployment schedule is no longer active.
1581    &quot;frequency&quot;: &quot;A String&quot;, # Required. The frequency unit of this recurring schedule.
1582    &quot;lastExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the last patch job ran successfully.
1583    &quot;monthly&quot;: { # Represents a monthly schedule. An example of a valid monthly schedule is &quot;on the third Tuesday of the month&quot; or &quot;on the 15th of the month&quot;. # Required. Schedule with monthly executions.
1584      &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.
1585      &quot;weekDayOfMonth&quot;: { # Represents one week day in a month. An example is &quot;the 4th Sunday&quot;. # Required. Week day in a month.
1586        &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. A day of the week.
1587        &quot;dayOffset&quot;: 42, # Optional. Represents the number of days before or after the given week day of month that the patch deployment is scheduled for. For example if `week_ordinal` and `day_of_week` values point to the second day of the month and this `day_offset` value is set to `3`, the patch deployment takes place three days after the second Tuesday of the month. If this value is negative, for example -5, the patches are deployed five days before before the second Tuesday of the month. Allowed values are in range [-30, 30].
1588        &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.
1589      },
1590    },
1591    &quot;nextExecuteTime&quot;: &quot;A String&quot;, # Output only. The time the next patch job is scheduled to run.
1592    &quot;startTime&quot;: &quot;A String&quot;, # Optional. The time that the recurring schedule becomes effective. Defaults to `create_time` of the patch deployment.
1593    &quot;timeOfDay&quot;: { # Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may choose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`. # Required. Time of the day to run a recurring deployment.
1594      &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.
1595      &quot;minutes&quot;: 42, # Minutes of hour of day. Must be from 0 to 59.
1596      &quot;nanos&quot;: 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
1597      &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.
1598    },
1599    &quot;timeZone&quot;: { # Represents a time zone from the [IANA Time Zone Database](https://www.iana.org/time-zones). # 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.
1600      &quot;id&quot;: &quot;A String&quot;, # IANA Time Zone Database time zone, e.g. &quot;America/New_York&quot;.
1601      &quot;version&quot;: &quot;A String&quot;, # Optional. IANA Time Zone Database version number, e.g. &quot;2019a&quot;.
1602    },
1603    &quot;weekly&quot;: { # Represents a weekly schedule. # Required. Schedule with weekly executions.
1604      &quot;dayOfWeek&quot;: &quot;A String&quot;, # Required. Day of the week.
1605    },
1606  },
1607  &quot;rollout&quot;: { # Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs. # Optional. Rollout strategy of the patch job.
1608    &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.
1609      &quot;fixed&quot;: 42, # Specifies a fixed value.
1610      &quot;percent&quot;: 42, # Specifies the relative value defined as a percentage, which will be multiplied by a reference value.
1611    },
1612    &quot;mode&quot;: &quot;A String&quot;, # Mode of the patch rollout.
1613  },
1614  &quot;state&quot;: &quot;A String&quot;, # Output only. Current state of the patch deployment.
1615  &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.
1616}</pre>
1617</div>
1618
1619</body></html>