create(parent, body=None, patchDeploymentId=None, x__xgafv=None)
Create an OS Config patch deployment.
Delete an OS Config patch deployment.
Get an OS Config patch deployment.
list(parent, pageToken=None, pageSize=None, x__xgafv=None)
Get a page of OS Config patch deployments.
list_next(previous_request, previous_response)
Retrieves the next page of results.
create(parent, body=None, patchDeploymentId=None, x__xgafv=None)
Create an OS Config patch deployment.
Args:
parent: string, Required. The project to apply this patch deployment to in the form `projects/*`. (required)
body: object, The request body.
The object takes the form of:
{ # Patch deployments are configurations that individual patch jobs use to
# complete a patch. These configurations include instance filter, package
# repository settings, and a schedule. For more information about creating and
# managing patch deployments, see [Scheduling patch
# jobs](https://cloud.google.com/compute/docs/os-patch-management/schedule-patch-jobs).
"lastExecuteTime": "A String", # 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.
"patchConfig": { # Patch configuration specifications. Contains details on how to apply the # Optional. Patch configuration that is applied.
# patch(es) to a VM instance.
"apt": { # Apt patching is completed by executing `apt-get update && apt-get # Apt update settings. Use this setting to override the default `apt` patch
# rules.
# upgrade`. Additional options can be set to control how this is executed.
"excludes": [ # List of packages to exclude from update. These packages will be excluded
"A String",
],
"exclusivePackages": [ # 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.
"A String",
],
"type": "A String", # By changing the type to DIST, the patching is performed
# using `apt-get dist-upgrade` instead.
},
"yum": { # Yum patching is performed by executing `yum update`. Additional options # Yum update settings. Use this setting to override the default `yum` patch
# rules.
# can be set to control how this is executed.
#
# Note that not all settings are supported on all platforms.
"minimal": True or False, # Will cause patch to run `yum update-minimal` instead.
"excludes": [ # List of packages to exclude from update. These packages are excluded by
# using the yum `--exclude` flag.
"A String",
],
"exclusivePackages": [ # 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.
"A String",
],
"security": True or False, # Adds the `--security` flag to `yum update`. Not supported on
# all platforms.
},
"goo": { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch
# rules.
},
"rebootConfig": "A String", # Post-patch reboot settings.
"preStep": { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
"linuxExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
"windowsExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
},
"windowsUpdate": { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
"excludes": [ # List of KBs to exclude from update.
"A String",
],
"exclusivePatches": [ # 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.
"A String",
],
"classifications": [ # Only apply updates of these windows update classifications. If empty, all
# updates are applied.
"A String",
],
},
"zypper": { # Zypper patching is performed by running `zypper patch`. # Zypper update settings. Use this setting to override the default `zypper`
# patch rules.
# See also https://en.opensuse.org/SDB:Zypper_manual.
"exclusivePatches": [ # An exclusive list of patches to be updated. These are the only patches
# that will be installed using 'zypper patch patch:<patch_name>' command.
# This field must not be used with any other patch configuration fields.
"A String",
],
"excludes": [ # List of patches to exclude from update.
"A String",
],
"withUpdate": True or False, # Adds the `--with-update` flag, to `zypper patch`.
"withOptional": True or False, # Adds the `--with-optional` flag to `zypper patch`.
"severities": [ # Install only patches with these severities.
# Common severities include critical, important, moderate, and low.
"A String",
],
"categories": [ # Install only patches with these categories.
# Common categories include security, recommended, and feature.
"A String",
],
},
"postStep": { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
"linuxExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
"windowsExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
},
},
"duration": "A String", # Optional. Duration of the patch. After the duration ends, the patch times out.
"instanceFilter": { # A filter to target VM instances for patching. The targeted # Required. VM instances to patch.
# VMs must meet all criteria specified. So if both labels and zones are
# specified, the patch job targets only VMs with those labels and in those
# zones.
"all": True or False, # Target all VM instances in the project. If true, no other criteria is
# permitted.
"instances": [ # 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]`
"A String",
],
"instanceNamePrefixes": [ # 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="prod-".
"A String",
],
"zones": [ # Targets VM instances in ANY of these zones. Leave empty to target VM
# instances in any zone.
"A String",
],
"groupLabels": [ # Targets VM instances matching ANY of these GroupLabels. This allows
# targeting of disparate groups of VM instances.
{ # Targets a group of VM instances by using their [assigned
# labels](https://cloud.google.com/compute/docs/labeling-resources). Labels
# are key-value pairs. A `GroupLabel` is a combination of labels
# that is used to target VMs for a patch job.
#
# For example, a patch job can target VMs that have the following
# `GroupLabel`: `{"env":"test", "app":"web"}`. This means that the patch job
# is applied to VMs that have both the labels `env=test` and `app=web`.
"labels": { # Compute Engine instance labels that must be present for a VM
# instance to be targeted by this filter.
"a_key": "A String",
},
},
],
},
"description": "A String", # Optional. Description of the patch deployment. Length of the description is limited
# to 1024 characters.
"createTime": "A String", # Output only. Time the patch deployment was created. Timestamp is in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"updateTime": "A String", # Output only. Time the patch deployment was last updated. Timestamp is in
# [RFC3339]("https://www.ietf.org/rfc/rfc3339.txt) text format.
"name": "A 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.
"recurringSchedule": { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
"timeOfDay": { # Represents a time of day. The date and time zone are either not significant # Required. Time of the day to run a recurring deployment.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
"seconds": 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.
},
"weekly": { # Represents a weekly schedule. # Required. Schedule with weekly executions.
"dayOfWeek": "A String", # Required. Day of the week.
},
"lastExecuteTime": "A String", # Output only. The time the last patch job ran successfully.
"frequency": "A String", # Required. The frequency unit of this recurring schedule.
"timeZone": { # Represents a time zone from the # Required. Defines the time zone that `time_of_day` is relative to.
# The rules for daylight saving time are determined by the chosen time zone.
# [IANA Time Zone Database](https://www.iana.org/time-zones).
"id": "A String", # IANA Time Zone Database time zone, e.g. "America/New_York".
"version": "A String", # Optional. IANA Time Zone Database version number, e.g. "2019a".
},
"endTime": "A String", # Optional. The end time at which a recurring patch deployment schedule is no longer
# active.
"nextExecuteTime": "A String", # Output only. The time the next patch job is scheduled to run.
"startTime": "A String", # Optional. The time that the recurring schedule becomes effective.
# Defaults to `create_time` of the patch deployment.
"monthly": { # Represents a monthly schedule. An example of a valid monthly schedule is # Required. Schedule with monthly executions.
# "on the third Tuesday of the month" or "on the 15th of the month".
"weekDayOfMonth": { # Represents one week day in a month. An example is "the 4th Sunday". # Required. Week day in a month.
"weekOrdinal": 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.
"dayOfWeek": "A String", # Required. A day of the week.
},
"monthDay": 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 "every month on the 31st" will not run in February, April, June, etc.
},
},
"oneTimeSchedule": { # Sets the time for a one time patch deployment. Timestamp is in # Required. Schedule a one-time execution.
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"executeTime": "A String", # Required. The desired patch job execution time.
},
}
patchDeploymentId: string, Required. A name for the patch deployment in the project. When creating a name
the following rules apply:
* Must contain only lowercase letters, numbers, and hyphens.
* Must start with a letter.
* Must be between 1-63 characters.
* Must end with a number or a letter.
* Must be unique within the project.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Patch deployments are configurations that individual patch jobs use to
# complete a patch. These configurations include instance filter, package
# repository settings, and a schedule. For more information about creating and
# managing patch deployments, see [Scheduling patch
# jobs](https://cloud.google.com/compute/docs/os-patch-management/schedule-patch-jobs).
"lastExecuteTime": "A String", # 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.
"patchConfig": { # Patch configuration specifications. Contains details on how to apply the # Optional. Patch configuration that is applied.
# patch(es) to a VM instance.
"apt": { # Apt patching is completed by executing `apt-get update && apt-get # Apt update settings. Use this setting to override the default `apt` patch
# rules.
# upgrade`. Additional options can be set to control how this is executed.
"excludes": [ # List of packages to exclude from update. These packages will be excluded
"A String",
],
"exclusivePackages": [ # 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.
"A String",
],
"type": "A String", # By changing the type to DIST, the patching is performed
# using `apt-get dist-upgrade` instead.
},
"yum": { # Yum patching is performed by executing `yum update`. Additional options # Yum update settings. Use this setting to override the default `yum` patch
# rules.
# can be set to control how this is executed.
#
# Note that not all settings are supported on all platforms.
"minimal": True or False, # Will cause patch to run `yum update-minimal` instead.
"excludes": [ # List of packages to exclude from update. These packages are excluded by
# using the yum `--exclude` flag.
"A String",
],
"exclusivePackages": [ # 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.
"A String",
],
"security": True or False, # Adds the `--security` flag to `yum update`. Not supported on
# all platforms.
},
"goo": { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch
# rules.
},
"rebootConfig": "A String", # Post-patch reboot settings.
"preStep": { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
"linuxExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
"windowsExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
},
"windowsUpdate": { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
"excludes": [ # List of KBs to exclude from update.
"A String",
],
"exclusivePatches": [ # 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.
"A String",
],
"classifications": [ # Only apply updates of these windows update classifications. If empty, all
# updates are applied.
"A String",
],
},
"zypper": { # Zypper patching is performed by running `zypper patch`. # Zypper update settings. Use this setting to override the default `zypper`
# patch rules.
# See also https://en.opensuse.org/SDB:Zypper_manual.
"exclusivePatches": [ # An exclusive list of patches to be updated. These are the only patches
# that will be installed using 'zypper patch patch:<patch_name>' command.
# This field must not be used with any other patch configuration fields.
"A String",
],
"excludes": [ # List of patches to exclude from update.
"A String",
],
"withUpdate": True or False, # Adds the `--with-update` flag, to `zypper patch`.
"withOptional": True or False, # Adds the `--with-optional` flag to `zypper patch`.
"severities": [ # Install only patches with these severities.
# Common severities include critical, important, moderate, and low.
"A String",
],
"categories": [ # Install only patches with these categories.
# Common categories include security, recommended, and feature.
"A String",
],
},
"postStep": { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
"linuxExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
"windowsExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
},
},
"duration": "A String", # Optional. Duration of the patch. After the duration ends, the patch times out.
"instanceFilter": { # A filter to target VM instances for patching. The targeted # Required. VM instances to patch.
# VMs must meet all criteria specified. So if both labels and zones are
# specified, the patch job targets only VMs with those labels and in those
# zones.
"all": True or False, # Target all VM instances in the project. If true, no other criteria is
# permitted.
"instances": [ # 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]`
"A String",
],
"instanceNamePrefixes": [ # 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="prod-".
"A String",
],
"zones": [ # Targets VM instances in ANY of these zones. Leave empty to target VM
# instances in any zone.
"A String",
],
"groupLabels": [ # Targets VM instances matching ANY of these GroupLabels. This allows
# targeting of disparate groups of VM instances.
{ # Targets a group of VM instances by using their [assigned
# labels](https://cloud.google.com/compute/docs/labeling-resources). Labels
# are key-value pairs. A `GroupLabel` is a combination of labels
# that is used to target VMs for a patch job.
#
# For example, a patch job can target VMs that have the following
# `GroupLabel`: `{"env":"test", "app":"web"}`. This means that the patch job
# is applied to VMs that have both the labels `env=test` and `app=web`.
"labels": { # Compute Engine instance labels that must be present for a VM
# instance to be targeted by this filter.
"a_key": "A String",
},
},
],
},
"description": "A String", # Optional. Description of the patch deployment. Length of the description is limited
# to 1024 characters.
"createTime": "A String", # Output only. Time the patch deployment was created. Timestamp is in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"updateTime": "A String", # Output only. Time the patch deployment was last updated. Timestamp is in
# [RFC3339]("https://www.ietf.org/rfc/rfc3339.txt) text format.
"name": "A 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.
"recurringSchedule": { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
"timeOfDay": { # Represents a time of day. The date and time zone are either not significant # Required. Time of the day to run a recurring deployment.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
"seconds": 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.
},
"weekly": { # Represents a weekly schedule. # Required. Schedule with weekly executions.
"dayOfWeek": "A String", # Required. Day of the week.
},
"lastExecuteTime": "A String", # Output only. The time the last patch job ran successfully.
"frequency": "A String", # Required. The frequency unit of this recurring schedule.
"timeZone": { # Represents a time zone from the # Required. Defines the time zone that `time_of_day` is relative to.
# The rules for daylight saving time are determined by the chosen time zone.
# [IANA Time Zone Database](https://www.iana.org/time-zones).
"id": "A String", # IANA Time Zone Database time zone, e.g. "America/New_York".
"version": "A String", # Optional. IANA Time Zone Database version number, e.g. "2019a".
},
"endTime": "A String", # Optional. The end time at which a recurring patch deployment schedule is no longer
# active.
"nextExecuteTime": "A String", # Output only. The time the next patch job is scheduled to run.
"startTime": "A String", # Optional. The time that the recurring schedule becomes effective.
# Defaults to `create_time` of the patch deployment.
"monthly": { # Represents a monthly schedule. An example of a valid monthly schedule is # Required. Schedule with monthly executions.
# "on the third Tuesday of the month" or "on the 15th of the month".
"weekDayOfMonth": { # Represents one week day in a month. An example is "the 4th Sunday". # Required. Week day in a month.
"weekOrdinal": 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.
"dayOfWeek": "A String", # Required. A day of the week.
},
"monthDay": 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 "every month on the 31st" will not run in February, April, June, etc.
},
},
"oneTimeSchedule": { # Sets the time for a one time patch deployment. Timestamp is in # Required. Schedule a one-time execution.
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"executeTime": "A String", # Required. The desired patch job execution time.
},
}
delete(name, x__xgafv=None)
Delete an OS Config patch deployment.
Args:
name: string, Required. The resource name of the patch deployment in the form
`projects/*/patchDeployments/*`. (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # A generic empty message that you can re-use to avoid defining duplicated
# empty messages in your APIs. A typical example is to use it as the request
# or the response type of an API method. For instance:
#
# service Foo {
# rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
# }
#
# The JSON representation for `Empty` is empty JSON object `{}`.
}
get(name, x__xgafv=None)
Get an OS Config patch deployment.
Args:
name: string, Required. The resource name of the patch deployment in the form
`projects/*/patchDeployments/*`. (required)
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # Patch deployments are configurations that individual patch jobs use to
# complete a patch. These configurations include instance filter, package
# repository settings, and a schedule. For more information about creating and
# managing patch deployments, see [Scheduling patch
# jobs](https://cloud.google.com/compute/docs/os-patch-management/schedule-patch-jobs).
"lastExecuteTime": "A String", # 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.
"patchConfig": { # Patch configuration specifications. Contains details on how to apply the # Optional. Patch configuration that is applied.
# patch(es) to a VM instance.
"apt": { # Apt patching is completed by executing `apt-get update && apt-get # Apt update settings. Use this setting to override the default `apt` patch
# rules.
# upgrade`. Additional options can be set to control how this is executed.
"excludes": [ # List of packages to exclude from update. These packages will be excluded
"A String",
],
"exclusivePackages": [ # 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.
"A String",
],
"type": "A String", # By changing the type to DIST, the patching is performed
# using `apt-get dist-upgrade` instead.
},
"yum": { # Yum patching is performed by executing `yum update`. Additional options # Yum update settings. Use this setting to override the default `yum` patch
# rules.
# can be set to control how this is executed.
#
# Note that not all settings are supported on all platforms.
"minimal": True or False, # Will cause patch to run `yum update-minimal` instead.
"excludes": [ # List of packages to exclude from update. These packages are excluded by
# using the yum `--exclude` flag.
"A String",
],
"exclusivePackages": [ # 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.
"A String",
],
"security": True or False, # Adds the `--security` flag to `yum update`. Not supported on
# all platforms.
},
"goo": { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch
# rules.
},
"rebootConfig": "A String", # Post-patch reboot settings.
"preStep": { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
"linuxExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
"windowsExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
},
"windowsUpdate": { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
"excludes": [ # List of KBs to exclude from update.
"A String",
],
"exclusivePatches": [ # 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.
"A String",
],
"classifications": [ # Only apply updates of these windows update classifications. If empty, all
# updates are applied.
"A String",
],
},
"zypper": { # Zypper patching is performed by running `zypper patch`. # Zypper update settings. Use this setting to override the default `zypper`
# patch rules.
# See also https://en.opensuse.org/SDB:Zypper_manual.
"exclusivePatches": [ # An exclusive list of patches to be updated. These are the only patches
# that will be installed using 'zypper patch patch:<patch_name>' command.
# This field must not be used with any other patch configuration fields.
"A String",
],
"excludes": [ # List of patches to exclude from update.
"A String",
],
"withUpdate": True or False, # Adds the `--with-update` flag, to `zypper patch`.
"withOptional": True or False, # Adds the `--with-optional` flag to `zypper patch`.
"severities": [ # Install only patches with these severities.
# Common severities include critical, important, moderate, and low.
"A String",
],
"categories": [ # Install only patches with these categories.
# Common categories include security, recommended, and feature.
"A String",
],
},
"postStep": { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
"linuxExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
"windowsExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
},
},
"duration": "A String", # Optional. Duration of the patch. After the duration ends, the patch times out.
"instanceFilter": { # A filter to target VM instances for patching. The targeted # Required. VM instances to patch.
# VMs must meet all criteria specified. So if both labels and zones are
# specified, the patch job targets only VMs with those labels and in those
# zones.
"all": True or False, # Target all VM instances in the project. If true, no other criteria is
# permitted.
"instances": [ # 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]`
"A String",
],
"instanceNamePrefixes": [ # 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="prod-".
"A String",
],
"zones": [ # Targets VM instances in ANY of these zones. Leave empty to target VM
# instances in any zone.
"A String",
],
"groupLabels": [ # Targets VM instances matching ANY of these GroupLabels. This allows
# targeting of disparate groups of VM instances.
{ # Targets a group of VM instances by using their [assigned
# labels](https://cloud.google.com/compute/docs/labeling-resources). Labels
# are key-value pairs. A `GroupLabel` is a combination of labels
# that is used to target VMs for a patch job.
#
# For example, a patch job can target VMs that have the following
# `GroupLabel`: `{"env":"test", "app":"web"}`. This means that the patch job
# is applied to VMs that have both the labels `env=test` and `app=web`.
"labels": { # Compute Engine instance labels that must be present for a VM
# instance to be targeted by this filter.
"a_key": "A String",
},
},
],
},
"description": "A String", # Optional. Description of the patch deployment. Length of the description is limited
# to 1024 characters.
"createTime": "A String", # Output only. Time the patch deployment was created. Timestamp is in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"updateTime": "A String", # Output only. Time the patch deployment was last updated. Timestamp is in
# [RFC3339]("https://www.ietf.org/rfc/rfc3339.txt) text format.
"name": "A 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.
"recurringSchedule": { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
"timeOfDay": { # Represents a time of day. The date and time zone are either not significant # Required. Time of the day to run a recurring deployment.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
"seconds": 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.
},
"weekly": { # Represents a weekly schedule. # Required. Schedule with weekly executions.
"dayOfWeek": "A String", # Required. Day of the week.
},
"lastExecuteTime": "A String", # Output only. The time the last patch job ran successfully.
"frequency": "A String", # Required. The frequency unit of this recurring schedule.
"timeZone": { # Represents a time zone from the # Required. Defines the time zone that `time_of_day` is relative to.
# The rules for daylight saving time are determined by the chosen time zone.
# [IANA Time Zone Database](https://www.iana.org/time-zones).
"id": "A String", # IANA Time Zone Database time zone, e.g. "America/New_York".
"version": "A String", # Optional. IANA Time Zone Database version number, e.g. "2019a".
},
"endTime": "A String", # Optional. The end time at which a recurring patch deployment schedule is no longer
# active.
"nextExecuteTime": "A String", # Output only. The time the next patch job is scheduled to run.
"startTime": "A String", # Optional. The time that the recurring schedule becomes effective.
# Defaults to `create_time` of the patch deployment.
"monthly": { # Represents a monthly schedule. An example of a valid monthly schedule is # Required. Schedule with monthly executions.
# "on the third Tuesday of the month" or "on the 15th of the month".
"weekDayOfMonth": { # Represents one week day in a month. An example is "the 4th Sunday". # Required. Week day in a month.
"weekOrdinal": 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.
"dayOfWeek": "A String", # Required. A day of the week.
},
"monthDay": 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 "every month on the 31st" will not run in February, April, June, etc.
},
},
"oneTimeSchedule": { # Sets the time for a one time patch deployment. Timestamp is in # Required. Schedule a one-time execution.
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"executeTime": "A String", # Required. The desired patch job execution time.
},
}
list(parent, pageToken=None, pageSize=None, x__xgafv=None)
Get a page of OS Config patch deployments.
Args:
parent: string, Required. The resource name of the parent in the form `projects/*`. (required)
pageToken: string, Optional. A pagination token returned from a previous call to ListPatchDeployments
that indicates where this listing should continue from.
pageSize: integer, Optional. The maximum number of patch deployments to return. Default is 100.
x__xgafv: string, V1 error format.
Allowed values
1 - v1 error format
2 - v2 error format
Returns:
An object of the form:
{ # A response message for listing patch deployments.
"nextPageToken": "A String", # A pagination token that can be used to get the next page of patch
# deployments.
"patchDeployments": [ # The list of patch deployments.
{ # Patch deployments are configurations that individual patch jobs use to
# complete a patch. These configurations include instance filter, package
# repository settings, and a schedule. For more information about creating and
# managing patch deployments, see [Scheduling patch
# jobs](https://cloud.google.com/compute/docs/os-patch-management/schedule-patch-jobs).
"lastExecuteTime": "A String", # 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.
"patchConfig": { # Patch configuration specifications. Contains details on how to apply the # Optional. Patch configuration that is applied.
# patch(es) to a VM instance.
"apt": { # Apt patching is completed by executing `apt-get update && apt-get # Apt update settings. Use this setting to override the default `apt` patch
# rules.
# upgrade`. Additional options can be set to control how this is executed.
"excludes": [ # List of packages to exclude from update. These packages will be excluded
"A String",
],
"exclusivePackages": [ # 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.
"A String",
],
"type": "A String", # By changing the type to DIST, the patching is performed
# using `apt-get dist-upgrade` instead.
},
"yum": { # Yum patching is performed by executing `yum update`. Additional options # Yum update settings. Use this setting to override the default `yum` patch
# rules.
# can be set to control how this is executed.
#
# Note that not all settings are supported on all platforms.
"minimal": True or False, # Will cause patch to run `yum update-minimal` instead.
"excludes": [ # List of packages to exclude from update. These packages are excluded by
# using the yum `--exclude` flag.
"A String",
],
"exclusivePackages": [ # 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.
"A String",
],
"security": True or False, # Adds the `--security` flag to `yum update`. Not supported on
# all platforms.
},
"goo": { # Googet patching is performed by running `googet update`. # Goo update settings. Use this setting to override the default `goo` patch
# rules.
},
"rebootConfig": "A String", # Post-patch reboot settings.
"preStep": { # A step that runs an executable for a PatchJob. # The `ExecStep` to run before the patch update.
"linuxExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
"windowsExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
},
"windowsUpdate": { # Windows patching is performed using the Windows Update Agent. # Windows update settings. Use this override the default windows patch rules.
"excludes": [ # List of KBs to exclude from update.
"A String",
],
"exclusivePatches": [ # 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.
"A String",
],
"classifications": [ # Only apply updates of these windows update classifications. If empty, all
# updates are applied.
"A String",
],
},
"zypper": { # Zypper patching is performed by running `zypper patch`. # Zypper update settings. Use this setting to override the default `zypper`
# patch rules.
# See also https://en.opensuse.org/SDB:Zypper_manual.
"exclusivePatches": [ # An exclusive list of patches to be updated. These are the only patches
# that will be installed using 'zypper patch patch:<patch_name>' command.
# This field must not be used with any other patch configuration fields.
"A String",
],
"excludes": [ # List of patches to exclude from update.
"A String",
],
"withUpdate": True or False, # Adds the `--with-update` flag, to `zypper patch`.
"withOptional": True or False, # Adds the `--with-optional` flag to `zypper patch`.
"severities": [ # Install only patches with these severities.
# Common severities include critical, important, moderate, and low.
"A String",
],
"categories": [ # Install only patches with these categories.
# Common categories include security, recommended, and feature.
"A String",
],
},
"postStep": { # A step that runs an executable for a PatchJob. # The `ExecStep` to run after the patch update.
"linuxExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Linux VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
"windowsExecStepConfig": { # Common configurations for an ExecStep. # The ExecStepConfig for all Windows VMs targeted by the PatchJob.
"localPath": "A String", # An absolute path to the executable on the VM.
"allowedSuccessCodes": [ # Defaults to [0]. A list of possible return values that the
# execution can return to indicate a success.
42,
],
"gcsObject": { # Cloud Storage object representation. # A Cloud Storage object containing the executable.
"bucket": "A String", # Required. Bucket of the Cloud Storage object.
"object": "A String", # Required. Name of the Cloud Storage object.
"generationNumber": "A String", # Required. Generation number of the Cloud Storage object. This is used to
# ensure that the ExecStep specified by this PatchJob does not change.
},
"interpreter": "A String", # 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\)).
},
},
},
"duration": "A String", # Optional. Duration of the patch. After the duration ends, the patch times out.
"instanceFilter": { # A filter to target VM instances for patching. The targeted # Required. VM instances to patch.
# VMs must meet all criteria specified. So if both labels and zones are
# specified, the patch job targets only VMs with those labels and in those
# zones.
"all": True or False, # Target all VM instances in the project. If true, no other criteria is
# permitted.
"instances": [ # 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]`
"A String",
],
"instanceNamePrefixes": [ # 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="prod-".
"A String",
],
"zones": [ # Targets VM instances in ANY of these zones. Leave empty to target VM
# instances in any zone.
"A String",
],
"groupLabels": [ # Targets VM instances matching ANY of these GroupLabels. This allows
# targeting of disparate groups of VM instances.
{ # Targets a group of VM instances by using their [assigned
# labels](https://cloud.google.com/compute/docs/labeling-resources). Labels
# are key-value pairs. A `GroupLabel` is a combination of labels
# that is used to target VMs for a patch job.
#
# For example, a patch job can target VMs that have the following
# `GroupLabel`: `{"env":"test", "app":"web"}`. This means that the patch job
# is applied to VMs that have both the labels `env=test` and `app=web`.
"labels": { # Compute Engine instance labels that must be present for a VM
# instance to be targeted by this filter.
"a_key": "A String",
},
},
],
},
"description": "A String", # Optional. Description of the patch deployment. Length of the description is limited
# to 1024 characters.
"createTime": "A String", # Output only. Time the patch deployment was created. Timestamp is in
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"updateTime": "A String", # Output only. Time the patch deployment was last updated. Timestamp is in
# [RFC3339]("https://www.ietf.org/rfc/rfc3339.txt) text format.
"name": "A 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.
"recurringSchedule": { # Sets the time for recurring patch deployments. # Required. Schedule recurring executions.
"timeOfDay": { # Represents a time of day. The date and time zone are either not significant # Required. Time of the day to run a recurring deployment.
# or are specified elsewhere. An API may choose to allow leap seconds. Related
# types are google.type.Date and `google.protobuf.Timestamp`.
"minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
"hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
# to allow the value "24:00:00" for scenarios like business closing time.
"nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
"seconds": 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.
},
"weekly": { # Represents a weekly schedule. # Required. Schedule with weekly executions.
"dayOfWeek": "A String", # Required. Day of the week.
},
"lastExecuteTime": "A String", # Output only. The time the last patch job ran successfully.
"frequency": "A String", # Required. The frequency unit of this recurring schedule.
"timeZone": { # Represents a time zone from the # Required. Defines the time zone that `time_of_day` is relative to.
# The rules for daylight saving time are determined by the chosen time zone.
# [IANA Time Zone Database](https://www.iana.org/time-zones).
"id": "A String", # IANA Time Zone Database time zone, e.g. "America/New_York".
"version": "A String", # Optional. IANA Time Zone Database version number, e.g. "2019a".
},
"endTime": "A String", # Optional. The end time at which a recurring patch deployment schedule is no longer
# active.
"nextExecuteTime": "A String", # Output only. The time the next patch job is scheduled to run.
"startTime": "A String", # Optional. The time that the recurring schedule becomes effective.
# Defaults to `create_time` of the patch deployment.
"monthly": { # Represents a monthly schedule. An example of a valid monthly schedule is # Required. Schedule with monthly executions.
# "on the third Tuesday of the month" or "on the 15th of the month".
"weekDayOfMonth": { # Represents one week day in a month. An example is "the 4th Sunday". # Required. Week day in a month.
"weekOrdinal": 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.
"dayOfWeek": "A String", # Required. A day of the week.
},
"monthDay": 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 "every month on the 31st" will not run in February, April, June, etc.
},
},
"oneTimeSchedule": { # Sets the time for a one time patch deployment. Timestamp is in # Required. Schedule a one-time execution.
# [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format.
"executeTime": "A String", # Required. The desired patch job execution time.
},
},
],
}
list_next(previous_request, previous_response)
Retrieves the next page of results.
Args:
previous_request: The request for the previous page. (required)
previous_response: The response from the request for the previous page. (required)
Returns:
A request object that you can call 'execute()' on to request the next
page. Returns None if there are no more items in the collection.