Class OSPolicy.Resource.ExecResource (2.26.0)

public static final class OSPolicy.Resource.ExecResource extends GeneratedMessageV3 implements OSPolicy.Resource.ExecResourceOrBuilder

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.

Protobuf type google.cloud.osconfig.v1.OSPolicy.Resource.ExecResource

Inheritance

Object > AbstractMessageLite<MessageType,BuilderType> > AbstractMessage > GeneratedMessageV3 > OSPolicy.Resource.ExecResource

Static Fields

ENFORCE_FIELD_NUMBER

public static final int ENFORCE_FIELD_NUMBER
Field Value
TypeDescription
int

VALIDATE_FIELD_NUMBER

public static final int VALIDATE_FIELD_NUMBER
Field Value
TypeDescription
int

Static Methods

getDefaultInstance()

public static OSPolicy.Resource.ExecResource getDefaultInstance()
Returns
TypeDescription
OSPolicy.Resource.ExecResource

getDescriptor()

public static final Descriptors.Descriptor getDescriptor()
Returns
TypeDescription
Descriptor

newBuilder()

public static OSPolicy.Resource.ExecResource.Builder newBuilder()
Returns
TypeDescription
OSPolicy.Resource.ExecResource.Builder

newBuilder(OSPolicy.Resource.ExecResource prototype)

public static OSPolicy.Resource.ExecResource.Builder newBuilder(OSPolicy.Resource.ExecResource prototype)
Parameter
NameDescription
prototypeOSPolicy.Resource.ExecResource
Returns
TypeDescription
OSPolicy.Resource.ExecResource.Builder

parseDelimitedFrom(InputStream input)

public static OSPolicy.Resource.ExecResource parseDelimitedFrom(InputStream input)
Parameter
NameDescription
inputInputStream
Returns
TypeDescription
OSPolicy.Resource.ExecResource
Exceptions
TypeDescription
IOException

parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)

public static OSPolicy.Resource.ExecResource parseDelimitedFrom(InputStream input, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
inputInputStream
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
OSPolicy.Resource.ExecResource
Exceptions
TypeDescription
IOException

parseFrom(byte[] data)

public static OSPolicy.Resource.ExecResource parseFrom(byte[] data)
Parameter
NameDescription
databyte[]
Returns
TypeDescription
OSPolicy.Resource.ExecResource
Exceptions
TypeDescription
InvalidProtocolBufferException

parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)

public static OSPolicy.Resource.ExecResource parseFrom(byte[] data, ExtensionRegistryLite extensionRegistry)
Parameters
NameDescription
databyte[]
extensionRegistryExtensionRegistryLite
Returns
TypeDescription
OSPolicy.Resource.ExecResource
Exceptions
TypeDescription
InvalidProtocolBufferException