Class OSPolicy.Resource.ExecResource.Builder

java.lang.Object
com.google.protobuf.AbstractMessageLite.Builder
com.google.protobuf.AbstractMessage.Builder<BuilderT>
com.google.protobuf.GeneratedMessage.Builder<OSPolicy.Resource.ExecResource.Builder>
com.google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Builder
All Implemented Interfaces:
OSPolicy.Resource.ExecResourceOrBuilder, com.google.protobuf.Message.Builder, com.google.protobuf.MessageLite.Builder, com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder, Cloneable
Enclosing class:
OSPolicy.Resource.ExecResource

public static final class OSPolicy.Resource.ExecResource.Builder extends com.google.protobuf.GeneratedMessage.Builder<OSPolicy.Resource.ExecResource.Builder> 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.v1alpha.OSPolicy.Resource.ExecResource
  • Method Details

    • getDescriptor

      public static final com.google.protobuf.Descriptors.Descriptor getDescriptor()
    • internalGetFieldAccessorTable

      protected com.google.protobuf.GeneratedMessage.FieldAccessorTable internalGetFieldAccessorTable()
      Specified by:
      internalGetFieldAccessorTable in class com.google.protobuf.GeneratedMessage.Builder<OSPolicy.Resource.ExecResource.Builder>
    • clear

      Specified by:
      clear in interface com.google.protobuf.Message.Builder
      Specified by:
      clear in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      clear in class com.google.protobuf.GeneratedMessage.Builder<OSPolicy.Resource.ExecResource.Builder>
    • getDescriptorForType

      public com.google.protobuf.Descriptors.Descriptor getDescriptorForType()
      Specified by:
      getDescriptorForType in interface com.google.protobuf.Message.Builder
      Specified by:
      getDescriptorForType in interface com.google.protobuf.MessageOrBuilder
      Overrides:
      getDescriptorForType in class com.google.protobuf.GeneratedMessage.Builder<OSPolicy.Resource.ExecResource.Builder>
    • getDefaultInstanceForType

      public OSPolicy.Resource.ExecResource getDefaultInstanceForType()
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageLiteOrBuilder
      Specified by:
      getDefaultInstanceForType in interface com.google.protobuf.MessageOrBuilder
    • build

      Specified by:
      build in interface com.google.protobuf.Message.Builder
      Specified by:
      build in interface com.google.protobuf.MessageLite.Builder
    • buildPartial

      public OSPolicy.Resource.ExecResource buildPartial()
      Specified by:
      buildPartial in interface com.google.protobuf.Message.Builder
      Specified by:
      buildPartial in interface com.google.protobuf.MessageLite.Builder
    • mergeFrom

      public OSPolicy.Resource.ExecResource.Builder mergeFrom(com.google.protobuf.Message other)
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<OSPolicy.Resource.ExecResource.Builder>
    • mergeFrom

    • isInitialized

      public final boolean isInitialized()
      Specified by:
      isInitialized in interface com.google.protobuf.MessageLiteOrBuilder
      Overrides:
      isInitialized in class com.google.protobuf.GeneratedMessage.Builder<OSPolicy.Resource.ExecResource.Builder>
    • mergeFrom

      public OSPolicy.Resource.ExecResource.Builder mergeFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException
      Specified by:
      mergeFrom in interface com.google.protobuf.Message.Builder
      Specified by:
      mergeFrom in interface com.google.protobuf.MessageLite.Builder
      Overrides:
      mergeFrom in class com.google.protobuf.AbstractMessage.Builder<OSPolicy.Resource.ExecResource.Builder>
      Throws:
      IOException
    • hasValidate

      public boolean hasValidate()
       Required. What to run to validate this resource is in the desired state.
       An exit code of 100 indicates "in desired state", and exit code of 101
       indicates "not in desired state". Any other exit code indicates a
       failure running validate.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec validate = 1 [(.google.api.field_behavior) = REQUIRED];
      Specified by:
      hasValidate in interface OSPolicy.Resource.ExecResourceOrBuilder
      Returns:
      Whether the validate field is set.
    • getValidate

       Required. What to run to validate this resource is in the desired state.
       An exit code of 100 indicates "in desired state", and exit code of 101
       indicates "not in desired state". Any other exit code indicates a
       failure running validate.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec validate = 1 [(.google.api.field_behavior) = REQUIRED];
      Specified by:
      getValidate in interface OSPolicy.Resource.ExecResourceOrBuilder
      Returns:
      The validate.
    • setValidate

       Required. What to run to validate this resource is in the desired state.
       An exit code of 100 indicates "in desired state", and exit code of 101
       indicates "not in desired state". Any other exit code indicates a
       failure running validate.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec validate = 1 [(.google.api.field_behavior) = REQUIRED];
    • setValidate

       Required. What to run to validate this resource is in the desired state.
       An exit code of 100 indicates "in desired state", and exit code of 101
       indicates "not in desired state". Any other exit code indicates a
       failure running validate.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec validate = 1 [(.google.api.field_behavior) = REQUIRED];
    • mergeValidate

       Required. What to run to validate this resource is in the desired state.
       An exit code of 100 indicates "in desired state", and exit code of 101
       indicates "not in desired state". Any other exit code indicates a
       failure running validate.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec validate = 1 [(.google.api.field_behavior) = REQUIRED];
    • clearValidate

       Required. What to run to validate this resource is in the desired state.
       An exit code of 100 indicates "in desired state", and exit code of 101
       indicates "not in desired state". Any other exit code indicates a
       failure running validate.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec validate = 1 [(.google.api.field_behavior) = REQUIRED];
    • getValidateBuilder

      public OSPolicy.Resource.ExecResource.Exec.Builder getValidateBuilder()
       Required. What to run to validate this resource is in the desired state.
       An exit code of 100 indicates "in desired state", and exit code of 101
       indicates "not in desired state". Any other exit code indicates a
       failure running validate.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec validate = 1 [(.google.api.field_behavior) = REQUIRED];
    • getValidateOrBuilder

      public OSPolicy.Resource.ExecResource.ExecOrBuilder getValidateOrBuilder()
       Required. What to run to validate this resource is in the desired state.
       An exit code of 100 indicates "in desired state", and exit code of 101
       indicates "not in desired state". Any other exit code indicates a
       failure running validate.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec validate = 1 [(.google.api.field_behavior) = REQUIRED];
      Specified by:
      getValidateOrBuilder in interface OSPolicy.Resource.ExecResourceOrBuilder
    • hasEnforce

      public boolean hasEnforce()
       What to run to bring this resource into the desired state.
       An exit code of 100 indicates "success", any other exit code indicates
       a failure running enforce.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec enforce = 2;
      Specified by:
      hasEnforce in interface OSPolicy.Resource.ExecResourceOrBuilder
      Returns:
      Whether the enforce field is set.
    • getEnforce

       What to run to bring this resource into the desired state.
       An exit code of 100 indicates "success", any other exit code indicates
       a failure running enforce.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec enforce = 2;
      Specified by:
      getEnforce in interface OSPolicy.Resource.ExecResourceOrBuilder
      Returns:
      The enforce.
    • setEnforce

       What to run to bring this resource into the desired state.
       An exit code of 100 indicates "success", any other exit code indicates
       a failure running enforce.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec enforce = 2;
    • setEnforce

       What to run to bring this resource into the desired state.
       An exit code of 100 indicates "success", any other exit code indicates
       a failure running enforce.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec enforce = 2;
    • mergeEnforce

       What to run to bring this resource into the desired state.
       An exit code of 100 indicates "success", any other exit code indicates
       a failure running enforce.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec enforce = 2;
    • clearEnforce

       What to run to bring this resource into the desired state.
       An exit code of 100 indicates "success", any other exit code indicates
       a failure running enforce.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec enforce = 2;
    • getEnforceBuilder

      public OSPolicy.Resource.ExecResource.Exec.Builder getEnforceBuilder()
       What to run to bring this resource into the desired state.
       An exit code of 100 indicates "success", any other exit code indicates
       a failure running enforce.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec enforce = 2;
    • getEnforceOrBuilder

      public OSPolicy.Resource.ExecResource.ExecOrBuilder getEnforceOrBuilder()
       What to run to bring this resource into the desired state.
       An exit code of 100 indicates "success", any other exit code indicates
       a failure running enforce.
       
      .google.cloud.osconfig.v1alpha.OSPolicy.Resource.ExecResource.Exec enforce = 2;
      Specified by:
      getEnforceOrBuilder in interface OSPolicy.Resource.ExecResourceOrBuilder