diff options
Diffstat (limited to 'third_party/googleapis/google/cloud/osconfig/agentendpoint/v1beta/tasks.proto')
| -rw-r--r-- | third_party/googleapis/google/cloud/osconfig/agentendpoint/v1beta/tasks.proto | 180 | 
1 files changed, 180 insertions, 0 deletions
diff --git a/third_party/googleapis/google/cloud/osconfig/agentendpoint/v1beta/tasks.proto b/third_party/googleapis/google/cloud/osconfig/agentendpoint/v1beta/tasks.proto new file mode 100644 index 0000000..3d522b0 --- /dev/null +++ b/third_party/googleapis/google/cloud/osconfig/agentendpoint/v1beta/tasks.proto @@ -0,0 +1,180 @@ +// Copyright 2020 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +//     http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +syntax = "proto3"; + +package google.cloud.osconfig.agentendpoint.v1beta; + +import "google/api/field_behavior.proto"; +import "google/cloud/osconfig/agentendpoint/v1beta/patch_jobs.proto"; + +option go_package = "google.golang.org/genproto/googleapis/cloud/osconfig/agentendpoint/v1beta;agentendpoint"; +option java_outer_classname = "Tasks"; +option java_package = "com.google.cloud.osconfig.agentendpoint.v1beta"; +option php_namespace = "Google\\Cloud\\OsConfig\\V1beta"; + +// Specifies the current agent behavior. +enum TaskDirective { +  // Unspecified is invalid. +  TASK_DIRECTIVE_UNSPECIFIED = 0; + +  // The task should continue to progress. +  CONTINUE = 1; + +  // Task should not be started, or if already in progress, should stop +  // at first safe stopping point.  Task should be considered done and will +  // never repeat. +  STOP = 2; +} + +// Specifies the type of task to perform. +enum TaskType { +  // Unspecified is invalid. +  TASK_TYPE_UNSPECIFIED = 0; + +  // The apply patches task. +  APPLY_PATCHES = 1; + +  // The exec step task. +  EXEC_STEP_TASK = 2; +} + +// A unit of work to be performed by the agent. +message Task { +  // Unique task id. +  string task_id = 1; + +  // The type of task to perform. +  // +  // Task details must include the appropriate message based on this enum as +  // specified below: +  // APPLY_PATCHES = ApplyPatchesTask +  // EXEC_STEP = ExecStepTask; +  TaskType task_type = 2; + +  // Current directive to the agent. +  TaskDirective task_directive = 3; + +  // Specific details about the current task to perform. +  oneof task_details { +    // Details about the apply patches task to perform. +    ApplyPatchesTask apply_patches_task = 4; + +    // Details about the exec step task to perform. +    ExecStepTask exec_step_task = 5; +  } + +  // Labels describing the task.  Used for logging by the agent. +  map<string, string> service_labels = 6; +} + +// Message which instructs agent to apply patches. +message ApplyPatchesTask { +  // Specific information about how patches should be applied. +  PatchConfig patch_config = 1; + +  // If true, the agent will report its status as it goes through the motions +  // but won't actually run any updates or perform any reboots. +  bool dry_run = 3; +} + +// Information reported from the agent about applying patches execution. +message ApplyPatchesTaskProgress { +  // The intermediate states of applying patches. +  enum State { +    // Unspecified is invalid. +    STATE_UNSPECIFIED = 0; + +    // The agent has started the patch task. +    STARTED = 4; + +    // The agent is currently downloading patches. +    DOWNLOADING_PATCHES = 1; + +    // The agent is currently applying patches. +    APPLYING_PATCHES = 2; + +    // The agent is currently rebooting the VM instance. +    REBOOTING = 3; +  } + +  // Required. The current state of this patch execution. +  State state = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Information reported from the agent about applying patches execution. +message ApplyPatchesTaskOutput { +  // The final states of applying patches. +  enum State { +    // Unspecified is invalid. +    STATE_UNSPECIFIED = 0; + +    // Applying patches completed successfully. +    SUCCEEDED = 1; + +    // Applying patches completed successfully, but a reboot is required. +    SUCCEEDED_REBOOT_REQUIRED = 2; + +    // Applying patches failed. +    FAILED = 3; +  } + +  // Required. The final state of this task. +  State state = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Message which instructs agent to execute the following command. +message ExecStepTask { +  // Details of the exec step to run. +  ExecStep exec_step = 1; +} + +// Information reported from the agent about the exec step execution. +message ExecStepTaskProgress { +  // The intermediate states of exec steps. +  enum State { +    // Unspecified is invalid. +    STATE_UNSPECIFIED = 0; + +    // The agent has started the exec step task. +    STARTED = 1; +  } + +  // Required. The current state of this exec step. +  State state = 1 [(google.api.field_behavior) = REQUIRED]; +} + +// Information reported from the agent about the exec step execution. +message ExecStepTaskOutput { +  // The final states of exec steps. +  enum State { +    // Unspecified is invalid. +    STATE_UNSPECIFIED = 0; + +    // The exec step completed normally. +    COMPLETED = 1; + +    // The exec step was terminated because it took too long. +    TIMED_OUT = 2; + +    // The exec step task was cancelled before it started. +    CANCELLED = 3; +  } + +  // Required. The final state of the exec step. +  State state = 1 [(google.api.field_behavior) = REQUIRED]; + +  // Required. The exit code received from the script which ran as part of the exec step. +  int32 exit_code = 2 [(google.api.field_behavior) = REQUIRED]; +}  | 
