Google Cloud OS Config v1 API - Namespace Google.Cloud.OsConfig.V1 (2.3.0)

Classes

AptSettings

Apt patching is completed by executing apt-get update && apt-get upgrade. Additional options can be set to control how this is executed.

AptSettings.Types

Container for nested types declared in the AptSettings message type.

CVSSv3

Common Vulnerability Scoring System version 3. For details, see https://www.first.org/cvss/specification-document

CVSSv3.Types

Container for nested types declared in the CVSSv3 message type.

CancelPatchJobRequest

Message for canceling a patch job.

CreateOSPolicyAssignmentRequest

A request message to create an OS policy assignment

CreatePatchDeploymentRequest

A request message for creating a patch deployment.

DeleteOSPolicyAssignmentRequest

A request message for deleting a OS policy assignment.

DeletePatchDeploymentRequest

A request message for deleting a patch deployment.

ExecStep

A step that runs an executable for a PatchJob.

ExecStepConfig

Common configurations for an ExecStep.

ExecStepConfig.Types

Container for nested types declared in the ExecStepConfig message type.

ExecutePatchJobRequest

A request message to initiate patching across Compute Engine instances.

FixedOrPercent

Message encapsulating a value that can be either absolute ("fixed") or relative ("percent") to a value.

GcsObject

Cloud Storage object representation.

GetInventoryRequest

A request message for getting inventory data for the specified VM.

GetOSPolicyAssignmentReportRequest

Get a report of the OS policy assignment for a VM instance.

GetOSPolicyAssignmentRequest

A request message to get an OS policy assignment

GetPatchDeploymentRequest

A request message for retrieving a patch deployment.

GetPatchJobRequest

Request to get an active or completed patch job.

GetVulnerabilityReportRequest

A request message for getting the vulnerability report for the specified VM.

GooSettings

Googet patching is performed by running googet update.

Instance

Namespace for instance state enums.

Instance.Types

Container for nested types declared in the Instance message type.

InstanceName

Resource name for the Instance resource.

InstanceOSPolicyAssignmentName

Resource name for the InstanceOSPolicyAssignment resource.

Inventory

This API resource represents the available inventory data for a Compute Engine virtual machine (VM) instance at a given point in time.

You can use this API resource to determine the inventory data of your VM.

For more information, see Information provided by OS inventory management.

Inventory.Types

Container for nested types declared in the Inventory message type.

Inventory.Types.Item

A single piece of inventory on a VM.

Inventory.Types.Item.Types

Container for nested types declared in the Item message type.

Inventory.Types.OsInfo

Operating system information for the VM.

Inventory.Types.SoftwarePackage

Software package information of the operating system.

Inventory.Types.VersionedPackage

Information related to the a standard versioned package. This includes package info for APT, Yum, Zypper, and Googet package managers.

Inventory.Types.WindowsApplication

Contains information about a Windows application that is retrieved from the Windows Registry. For more information about these fields, see: https://docs.microsoft.com/en-us/windows/win32/msi/uninstall-registry-key

Inventory.Types.WindowsQuickFixEngineeringPackage

Information related to a Quick Fix Engineering package. Fields are taken from Windows QuickFixEngineering Interface and match the source names: https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-quickfixengineering

Inventory.Types.WindowsUpdatePackage

Details related to a Windows Update package. Field data and names are taken from Windows Update API IUpdate Interface: https://docs.microsoft.com/en-us/windows/win32/api/_wua/ Descriptive fields like title, and description are localized based on the locale of the VM being updated.

Inventory.Types.WindowsUpdatePackage.Types

Container for nested types declared in the WindowsUpdatePackage message type.

Inventory.Types.WindowsUpdatePackage.Types.WindowsUpdateCategory

Categories specified by the Windows Update.

Inventory.Types.ZypperPatch

Details related to a Zypper Patch.

InventoryName

Resource name for the Inventory resource.

ListInventoriesRequest

A request message for listing inventory data for all VMs in the specified location.

ListInventoriesResponse

A response message for listing inventory data for all VMs in a specified location.

ListOSPolicyAssignmentReportsRequest

List the OS policy assignment reports for VM instances.

ListOSPolicyAssignmentReportsResponse

A response message for listing OS Policy assignment reports including the page of results and page token.

ListOSPolicyAssignmentRevisionsRequest

A request message to list revisions for a OS policy assignment

ListOSPolicyAssignmentRevisionsResponse

A response message for listing all revisions for a OS policy assignment.

ListOSPolicyAssignmentsRequest

A request message to list OS policy assignments for a parent resource

ListOSPolicyAssignmentsResponse

A response message for listing all assignments under given parent.

ListPatchDeploymentsRequest

A request message for listing patch deployments.

ListPatchDeploymentsResponse

A response message for listing patch deployments.

ListPatchJobInstanceDetailsRequest

Request to list details for all instances that are part of a patch job.

ListPatchJobInstanceDetailsResponse

A response message for listing the instances details for a patch job.

ListPatchJobsRequest

A request message for listing patch jobs.

ListPatchJobsResponse

A response message for listing patch jobs.

ListVulnerabilityReportsRequest

A request message for listing vulnerability reports for all VM instances in the specified location.

ListVulnerabilityReportsResponse

A response message for listing vulnerability reports for all VM instances in the specified location.

MonthlySchedule

Represents a monthly schedule. An example of a valid monthly schedule is "on the third Tuesday of the month" or "on the 15th of the month".

OSPolicy

An OS policy defines the desired state configuration for a VM.

OSPolicy.Types

Container for nested types declared in the OSPolicy message type.

OSPolicy.Types.InventoryFilter

Filtering criteria to select VMs based on inventory details.

OSPolicy.Types.Resource

An OS policy resource is used to define the desired state configuration and provides a specific functionality like installing/removing packages, executing a script etc.

The system ensures that resources are always in their desired state by taking necessary actions if they have drifted from their desired state.

OSPolicy.Types.Resource.Types

Container for nested types declared in the Resource message type.

OSPolicy.Types.Resource.Types.ExecResource

A resource that allows executing scripts on the VM.

The ExecResource has 2 stages: validate and enforce and both stages accept a script as an argument to execute.

When the ExecResource is applied by the agent, it first executes the script in the validate stage. The validate stage can signal that the ExecResource is already in the desired state by returning an exit code of 100. If the ExecResource is not in the desired state, it should return an exit code of 101. Any other exit code returned by this stage is considered an error.

If the ExecResource is not in the desired state based on the exit code from the validate stage, the agent proceeds to execute the script from the enforce stage. If the ExecResource is already in the desired state, the enforce stage will not be run. Similar to validate stage, the enforce stage should return an exit code of 100 to indicate that the resource in now in its desired state. Any other exit code is considered an error.

NOTE: An exit code of 100 was chosen over 0 (and 101 vs 1) to have an explicit indicator of in desired state, not in desired state and errors. Because, for example, Powershell will always return an exit code of 0 unless an exit statement is provided in the script. So, for reasons of consistency and being explicit, exit codes 100 and 101 were chosen.

OSPolicy.Types.Resource.Types.ExecResource.Types

Container for nested types declared in the ExecResource message type.

OSPolicy.Types.Resource.Types.ExecResource.Types.Exec

A file or script to execute.

OSPolicy.Types.Resource.Types.ExecResource.Types.Exec.Types

Container for nested types declared in the Exec message type.

OSPolicy.Types.Resource.Types.File

A remote or local file.

OSPolicy.Types.Resource.Types.File.Types

Container for nested types declared in the File message type.

OSPolicy.Types.Resource.Types.File.Types.Gcs

Specifies a file available as a Cloud Storage Object.

OSPolicy.Types.Resource.Types.File.Types.Remote

Specifies a file available via some URI.

OSPolicy.Types.Resource.Types.FileResource

A resource that manages the state of a file.

OSPolicy.Types.Resource.Types.FileResource.Types

Container for nested types declared in the FileResource message type.

OSPolicy.Types.Resource.Types.PackageResource

A resource that manages a system package.

OSPolicy.Types.Resource.Types.PackageResource.Types

Container for nested types declared in the PackageResource message type.

OSPolicy.Types.Resource.Types.PackageResource.Types.APT

A package managed by APT.

  • install: apt-get update && apt-get -y install [name]
  • remove: apt-get -y remove [name]

OSPolicy.Types.Resource.Types.PackageResource.Types.Deb

A deb package file. dpkg packages only support INSTALLED state.

OSPolicy.Types.Resource.Types.PackageResource.Types.GooGet

A package managed by GooGet.

  • install: googet -noconfirm install package
  • remove: googet -noconfirm remove package

OSPolicy.Types.Resource.Types.PackageResource.Types.MSI

An MSI package. MSI packages only support INSTALLED state.

OSPolicy.Types.Resource.Types.PackageResource.Types.RPM

An RPM package file. RPM packages only support INSTALLED state.

OSPolicy.Types.Resource.Types.PackageResource.Types.YUM

A package managed by YUM.

  • install: yum -y install package
  • remove: yum -y remove package

OSPolicy.Types.Resource.Types.PackageResource.Types.Zypper

A package managed by Zypper.

  • install: zypper -y install package
  • remove: zypper -y rm package

OSPolicy.Types.Resource.Types.RepositoryResource

A resource that manages a package repository.

OSPolicy.Types.Resource.Types.RepositoryResource.Types

Container for nested types declared in the RepositoryResource message type.

OSPolicy.Types.Resource.Types.RepositoryResource.Types.AptRepository

Represents a single apt package repository. These will be added to a repo file that will be managed at /etc/apt/sources.list.d/google_osconfig.list.

OSPolicy.Types.Resource.Types.RepositoryResource.Types.AptRepository.Types

Container for nested types declared in the AptRepository message type.

OSPolicy.Types.Resource.Types.RepositoryResource.Types.GooRepository

Represents a Goo package repository. These are added to a repo file that is managed at C:/ProgramData/GooGet/repos/google_osconfig.repo.

OSPolicy.Types.Resource.Types.RepositoryResource.Types.YumRepository

Represents a single yum package repository. These are added to a repo file that is managed at /etc/yum.repos.d/google_osconfig.repo.

OSPolicy.Types.Resource.Types.RepositoryResource.Types.ZypperRepository

Represents a single zypper package repository. These are added to a repo file that is managed at /etc/zypp/repos.d/google_osconfig.repo.

OSPolicy.Types.ResourceGroup

Resource groups provide a mechanism to group OS policy resources.

Resource groups enable OS policy authors to create a single OS policy to be applied to VMs running different operating Systems.

When the OS policy is applied to a target VM, the appropriate resource group within the OS policy is selected based on the OSFilter specified within the resource group.

OSPolicyAssignment

OS policy assignment is an API resource that is used to apply a set of OS policies to a dynamically targeted group of Compute Engine VM instances.

An OS policy is used to define the desired state configuration for a Compute Engine VM instance through a set of configuration resources that provide capabilities such as installing or removing software packages, or executing a script.

For more information, see OS policy and OS policy assignment.

OSPolicyAssignment.Types

Container for nested types declared in the OSPolicyAssignment message type.

OSPolicyAssignment.Types.InstanceFilter

Filters to select target VMs for an assignment.

If more than one filter criteria is specified below, a VM will be selected if and only if it satisfies all of them.

OSPolicyAssignment.Types.InstanceFilter.Types

Container for nested types declared in the InstanceFilter message type.

OSPolicyAssignment.Types.InstanceFilter.Types.Inventory

VM inventory details.

OSPolicyAssignment.Types.LabelSet

Message representing label set.

  • A label is a key value pair set for a VM.
  • A LabelSet is a set of labels.
  • Labels within a LabelSet are ANDed. In other words, a LabelSet is applicable for a VM only if it matches all the labels in the LabelSet.
  • Example: A LabelSet with 2 labels: env=prod and type=webserver will only be applicable for those VMs with both labels present.

OSPolicyAssignment.Types.Rollout

Message to configure the rollout at the zonal level for the OS policy assignment.

OSPolicyAssignmentName

Resource name for the OSPolicyAssignment resource.

OSPolicyAssignmentOperationMetadata

OS policy assignment operation metadata provided by OS policy assignment API methods that return long running operations.

OSPolicyAssignmentOperationMetadata.Types

Container for nested types declared in the OSPolicyAssignmentOperationMetadata message type.

OSPolicyAssignmentReport

A report of the OS policy assignment status for a given instance.

OSPolicyAssignmentReport.Types

Container for nested types declared in the OSPolicyAssignmentReport message type.

OSPolicyAssignmentReport.Types.OSPolicyCompliance

Compliance data for an OS policy

OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types

Container for nested types declared in the OSPolicyCompliance message type.

OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance

Compliance data for an OS policy resource.

OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance.Types

Container for nested types declared in the OSPolicyResourceCompliance message type.

OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance.Types.ExecResourceOutput

ExecResource specific output.

OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance.Types.OSPolicyResourceConfigStep

Step performed by the OS Config agent for configuring an OSPolicy resource to its desired state.

OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance.Types.OSPolicyResourceConfigStep.Types

Container for nested types declared in the OSPolicyResourceConfigStep message type.

OSPolicyAssignmentReportName

Resource name for the OSPolicyAssignmentReport resource.

OneTimeSchedule

Sets the time for a one time patch deployment. Timestamp is in RFC3339 text format.

OsConfigService

OS Config API

The OS Config service is a server-side component that you can use to manage package installations and patch jobs for virtual machine instances.

OsConfigService.OsConfigServiceBase

Base class for server-side implementations of OsConfigService

OsConfigService.OsConfigServiceClient

Client for OsConfigService

OsConfigServiceClient

OsConfigService client wrapper, for convenient use.

OsConfigServiceClientBuilder

Builder class for OsConfigServiceClient to provide simple configuration of credentials, endpoint etc.

OsConfigServiceClientImpl

OsConfigService client wrapper implementation, for convenient use.

OsConfigServiceSettings

Settings for OsConfigServiceClient instances.

OsConfigZonalService

Zonal OS Config API

The OS Config service is the server-side component that allows users to manage package installations and patch jobs for Compute Engine VM instances.

OsConfigZonalService.OsConfigZonalServiceBase

Base class for server-side implementations of OsConfigZonalService

OsConfigZonalService.OsConfigZonalServiceClient

Client for OsConfigZonalService

OsConfigZonalServiceClient

OsConfigZonalService client wrapper, for convenient use.

OsConfigZonalServiceClientBuilder

Builder class for OsConfigZonalServiceClient to provide simple configuration of credentials, endpoint etc.

OsConfigZonalServiceClientImpl

OsConfigZonalService client wrapper implementation, for convenient use.

OsConfigZonalServiceSettings

Settings for OsConfigZonalServiceClient instances.

PatchConfig

Patch configuration specifications. Contains details on how to apply the patch(es) to a VM instance.

PatchConfig.Types

Container for nested types declared in the PatchConfig message type.

PatchDeployment

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.

PatchDeployment.Types

Container for nested types declared in the PatchDeployment message type.

PatchDeploymentName

Resource name for the PatchDeployment resource.

PatchInstanceFilter

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.

PatchInstanceFilter.Types

Container for nested types declared in the PatchInstanceFilter message type.

PatchInstanceFilter.Types.GroupLabel

Targets a group of VM instances by using their assigned labels. 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.

PatchJob

A high level representation of a patch job that is either in progress or has completed.

Instance details are not included in the job. To paginate through instance details, use ListPatchJobInstanceDetails.

For more information about patch jobs, see Creating patch jobs.

PatchJob.Types

Container for nested types declared in the PatchJob message type.

PatchJob.Types.InstanceDetailsSummary

A summary of the current patch state across all instances that this patch job affects. Contains counts of instances in different states. These states map to InstancePatchState. List patch job instance details to see the specific states of each instance.

PatchJobInstanceDetails

Patch details for a VM instance. For more information about reviewing VM instance details, see Listing all VM instance details for a specific patch job.

PatchJobName

Resource name for the PatchJob resource.

PatchRollout

Patch rollout configuration specifications. Contains details on the concurrency control when applying patch(es) to all targeted VMs.

PatchRollout.Types

Container for nested types declared in the PatchRollout message type.

PausePatchDeploymentRequest

A request message for pausing a patch deployment.

RecurringSchedule

Sets the time for recurring patch deployments.

RecurringSchedule.Types

Container for nested types declared in the RecurringSchedule message type.

ResumePatchDeploymentRequest

A request message for resuming a patch deployment.

UpdateOSPolicyAssignmentRequest

A request message to update an OS policy assignment

UpdatePatchDeploymentRequest

A request message for updating a patch deployment.

VulnerabilityReport

This API resource represents the vulnerability report for a specified Compute Engine virtual machine (VM) instance at a given point in time.

For more information, see Vulnerability reports.

VulnerabilityReport.Types

Container for nested types declared in the VulnerabilityReport message type.

VulnerabilityReport.Types.Vulnerability

A vulnerability affecting the VM instance.

VulnerabilityReport.Types.Vulnerability.Types

Container for nested types declared in the Vulnerability message type.

VulnerabilityReport.Types.Vulnerability.Types.Details

Contains metadata information for the vulnerability. This information is collected from the upstream feed of the operating system.

VulnerabilityReport.Types.Vulnerability.Types.Details.Types

Container for nested types declared in the Details message type.

VulnerabilityReport.Types.Vulnerability.Types.Details.Types.Reference

A reference for this vulnerability.

VulnerabilityReport.Types.Vulnerability.Types.Item

OS inventory item that is affected by a vulnerability or fixed as a result of a vulnerability.

VulnerabilityReportName

Resource name for the VulnerabilityReport resource.

WeekDayOfMonth

Represents one week day in a month. An example is "the 4th Sunday".

WeeklySchedule

Represents a weekly schedule.

WindowsUpdateSettings

Windows patching is performed using the Windows Update Agent.

WindowsUpdateSettings.Types

Container for nested types declared in the WindowsUpdateSettings message type.

YumSettings

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.

ZypperSettings

Zypper patching is performed by running zypper patch. See also https://en.opensuse.org/SDB:Zypper_manual.

Enums

AptSettings.Types.Type

Apt patch type.

CVSSv3.Types.AttackComplexity

This metric describes the conditions beyond the attacker's control that must exist in order to exploit the vulnerability.

CVSSv3.Types.AttackVector

This metric reflects the context by which vulnerability exploitation is possible.

CVSSv3.Types.Impact

The Impact metrics capture the effects of a successfully exploited vulnerability on the component that suffers the worst outcome that is most directly and predictably associated with the attack.

CVSSv3.Types.PrivilegesRequired

This metric describes the level of privileges an attacker must possess before successfully exploiting the vulnerability.

CVSSv3.Types.Scope

The Scope metric captures whether a vulnerability in one vulnerable component impacts resources in components beyond its security scope.

CVSSv3.Types.UserInteraction

This metric captures the requirement for a human user, other than the attacker, to participate in the successful compromise of the vulnerable component.

ExecStepConfig.ExecutableOneofCase

Enum of possible cases for the "executable" oneof.

ExecStepConfig.Types.Interpreter

The interpreter used to execute the a file.

FixedOrPercent.ModeOneofCase

Enum of possible cases for the "mode" oneof.

Instance.Types.PatchState

Patch state of an instance.

InstanceName.ResourceNameType

The possible contents of InstanceName.

InstanceOSPolicyAssignmentName.ResourceNameType

The possible contents of InstanceOSPolicyAssignmentName.

Inventory.Types.Item.DetailsOneofCase

Enum of possible cases for the "details" oneof.

Inventory.Types.Item.Types.OriginType

The origin of a specific inventory item.

Inventory.Types.Item.Types.Type

The different types of inventory that are tracked on a VM.

Inventory.Types.SoftwarePackage.DetailsOneofCase

Enum of possible cases for the "details" oneof.

InventoryName.ResourceNameType

The possible contents of InventoryName.

InventoryView

The view for inventory objects.

MonthlySchedule.DayOfMonthOneofCase

Enum of possible cases for the "day_of_month" oneof.

OSPolicy.Types.Mode

Policy mode

OSPolicy.Types.Resource.ResourceTypeOneofCase

Enum of possible cases for the "resource_type" oneof.

OSPolicy.Types.Resource.Types.ExecResource.Types.Exec.SourceOneofCase

Enum of possible cases for the "source" oneof.

OSPolicy.Types.Resource.Types.ExecResource.Types.Exec.Types.Interpreter

The interpreter to use.

OSPolicy.Types.Resource.Types.File.TypeOneofCase

Enum of possible cases for the "type" oneof.

OSPolicy.Types.Resource.Types.FileResource.SourceOneofCase

Enum of possible cases for the "source" oneof.

OSPolicy.Types.Resource.Types.FileResource.Types.DesiredState

Desired state of the file.

OSPolicy.Types.Resource.Types.PackageResource.SystemPackageOneofCase

Enum of possible cases for the "system_package" oneof.

OSPolicy.Types.Resource.Types.PackageResource.Types.DesiredState

The desired state that the OS Config agent maintains on the VM.

OSPolicy.Types.Resource.Types.RepositoryResource.RepositoryOneofCase

Enum of possible cases for the "repository" oneof.

OSPolicy.Types.Resource.Types.RepositoryResource.Types.AptRepository.Types.ArchiveType

Type of archive.

OSPolicyAssignment.Types.RolloutState

OS policy assignment rollout state

OSPolicyAssignmentName.ResourceNameType

The possible contents of OSPolicyAssignmentName.

OSPolicyAssignmentOperationMetadata.Types.APIMethod

The OS policy assignment API method.

OSPolicyAssignmentOperationMetadata.Types.RolloutState

State of the rollout

OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.ComplianceState

Possible compliance states for an os policy.

OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance.OutputOneofCase

Enum of possible cases for the "output" oneof.

OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance.Types.ComplianceState

Possible compliance states for a resource.

OSPolicyAssignmentReport.Types.OSPolicyCompliance.Types.OSPolicyResourceCompliance.Types.OSPolicyResourceConfigStep.Types.Type

Supported configuration step types

OSPolicyAssignmentReportName.ResourceNameType

The possible contents of OSPolicyAssignmentReportName.

PatchConfig.Types.RebootConfig

Post-patch reboot settings.

PatchDeployment.ScheduleOneofCase

Enum of possible cases for the "schedule" oneof.

PatchDeployment.Types.State

Represents state of patch peployment.

PatchDeploymentName.ResourceNameType

The possible contents of PatchDeploymentName.

PatchJob.Types.State

Enumeration of the various states a patch job passes through as it executes.

PatchJobName.ResourceNameType

The possible contents of PatchJobName.

PatchRollout.Types.Mode

Type of the rollout.

RecurringSchedule.ScheduleConfigOneofCase

Enum of possible cases for the "schedule_config" oneof.

RecurringSchedule.Types.Frequency

Specifies the frequency of the recurring patch deployments.

VulnerabilityReportName.ResourceNameType

The possible contents of VulnerabilityReportName.

WindowsUpdateSettings.Types.Classification

Microsoft Windows update classifications as defined in [1] https://support.microsoft.com/en-us/help/824684/description-of-the-standard-terminology-that-is-used-to-describe-micro