proto/step.pb.go (2,139 lines of code) (raw):

// Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.29.1 // protoc v4.22.2 // source: step.proto package proto import ( reflect "reflect" sync "sync" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" structpb "google.golang.org/protobuf/types/known/structpb" timestamppb "google.golang.org/protobuf/types/known/timestamppb" ) const ( // Verify that this generated code is sufficiently up-to-date. _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) // Verify that runtime/protoimpl is sufficiently up-to-date. _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) // StepReferenceProtocol is the method of fetching the referenced step. type StepReferenceProtocol int32 const ( StepReferenceProtocol_step_reference_protocol_unspecified StepReferenceProtocol = 0 StepReferenceProtocol_local StepReferenceProtocol = 1 StepReferenceProtocol_git StepReferenceProtocol = 2 StepReferenceProtocol_zip StepReferenceProtocol = 3 StepReferenceProtocol_oci StepReferenceProtocol = 4 StepReferenceProtocol_dist StepReferenceProtocol = 5 StepReferenceProtocol_dynamic StepReferenceProtocol = 6 StepReferenceProtocol_spec_def StepReferenceProtocol = 7 ) // Enum value maps for StepReferenceProtocol. var ( StepReferenceProtocol_name = map[int32]string{ 0: "step_reference_protocol_unspecified", 1: "local", 2: "git", 3: "zip", 4: "oci", 5: "dist", 6: "dynamic", 7: "spec_def", } StepReferenceProtocol_value = map[string]int32{ "step_reference_protocol_unspecified": 0, "local": 1, "git": 2, "zip": 3, "oci": 4, "dist": 5, "dynamic": 6, "spec_def": 7, } ) func (x StepReferenceProtocol) Enum() *StepReferenceProtocol { p := new(StepReferenceProtocol) *p = x return p } func (x StepReferenceProtocol) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (StepReferenceProtocol) Descriptor() protoreflect.EnumDescriptor { return file_step_proto_enumTypes[0].Descriptor() } func (StepReferenceProtocol) Type() protoreflect.EnumType { return &file_step_proto_enumTypes[0] } func (x StepReferenceProtocol) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use StepReferenceProtocol.Descriptor instead. func (StepReferenceProtocol) EnumDescriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{0} } // Definition type is either exec or steps. type DefinitionType int32 const ( DefinitionType_definition_type_unspecified DefinitionType = 0 DefinitionType_exec DefinitionType = 1 DefinitionType_steps DefinitionType = 2 ) // Enum value maps for DefinitionType. var ( DefinitionType_name = map[int32]string{ 0: "definition_type_unspecified", 1: "exec", 2: "steps", } DefinitionType_value = map[string]int32{ "definition_type_unspecified": 0, "exec": 1, "steps": 2, } ) func (x DefinitionType) Enum() *DefinitionType { p := new(DefinitionType) *p = x return p } func (x DefinitionType) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (DefinitionType) Descriptor() protoreflect.EnumDescriptor { return file_step_proto_enumTypes[1].Descriptor() } func (DefinitionType) Type() protoreflect.EnumType { return &file_step_proto_enumTypes[1] } func (x DefinitionType) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use DefinitionType.Descriptor instead. func (DefinitionType) EnumDescriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{1} } // OutputMethod is either outputs or delegate. type OutputMethod int32 const ( OutputMethod_output_method_unspecified OutputMethod = 0 OutputMethod_outputs OutputMethod = 1 OutputMethod_delegate OutputMethod = 2 ) // Enum value maps for OutputMethod. var ( OutputMethod_name = map[int32]string{ 0: "output_method_unspecified", 1: "outputs", 2: "delegate", } OutputMethod_value = map[string]int32{ "output_method_unspecified": 0, "outputs": 1, "delegate": 2, } ) func (x OutputMethod) Enum() *OutputMethod { p := new(OutputMethod) *p = x return p } func (x OutputMethod) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (OutputMethod) Descriptor() protoreflect.EnumDescriptor { return file_step_proto_enumTypes[2].Descriptor() } func (OutputMethod) Type() protoreflect.EnumType { return &file_step_proto_enumTypes[2] } func (x OutputMethod) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use OutputMethod.Descriptor instead. func (OutputMethod) EnumDescriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{2} } // ValueType is an enumerations of the possible types a value can have. type ValueType int32 const ( ValueType_value_type_unspecified ValueType = 0 ValueType_string ValueType = 2 ValueType_number ValueType = 3 ValueType_boolean ValueType = 4 ValueType_struct ValueType = 5 ValueType_array ValueType = 6 ) // Enum value maps for ValueType. var ( ValueType_name = map[int32]string{ 0: "value_type_unspecified", 2: "string", 3: "number", 4: "boolean", 5: "struct", 6: "array", } ValueType_value = map[string]int32{ "value_type_unspecified": 0, "string": 2, "number": 3, "boolean": 4, "struct": 5, "array": 6, } ) func (x ValueType) Enum() *ValueType { p := new(ValueType) *p = x return p } func (x ValueType) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (ValueType) Descriptor() protoreflect.EnumDescriptor { return file_step_proto_enumTypes[3].Descriptor() } func (ValueType) Type() protoreflect.EnumType { return &file_step_proto_enumTypes[3] } func (x ValueType) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use ValueType.Descriptor instead. func (ValueType) EnumDescriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{3} } // Status is an enumerations of the states a step can be in during execution. type StepResult_Status int32 const ( StepResult_unspecified StepResult_Status = 0 StepResult_running StepResult_Status = 1 StepResult_success StepResult_Status = 2 StepResult_failure StepResult_Status = 3 StepResult_cancelled StepResult_Status = 4 ) // Enum value maps for StepResult_Status. var ( StepResult_Status_name = map[int32]string{ 0: "unspecified", 1: "running", 2: "success", 3: "failure", 4: "cancelled", } StepResult_Status_value = map[string]int32{ "unspecified": 0, "running": 1, "success": 2, "failure": 3, "cancelled": 4, } ) func (x StepResult_Status) Enum() *StepResult_Status { p := new(StepResult_Status) *p = x return p } func (x StepResult_Status) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } func (StepResult_Status) Descriptor() protoreflect.EnumDescriptor { return file_step_proto_enumTypes[4].Descriptor() } func (StepResult_Status) Type() protoreflect.EnumType { return &file_step_proto_enumTypes[4] } func (x StepResult_Status) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } // Deprecated: Use StepResult_Status.Descriptor instead. func (StepResult_Status) EnumDescriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{5, 0} } // Step is a single step invocation. type Step struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Name is a unique identifier for this step. Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` // Step is a reference to the step to invoke. Step *Step_Reference `protobuf:"bytes,2,opt,name=step,proto3" json:"step,omitempty"` // Env is a map of environment variable names to string values. Env map[string]string `protobuf:"bytes,3,rep,name=env,proto3" json:"env,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Inputs is a map of step input names to structured values. Inputs map[string]*structpb.Value `protobuf:"bytes,4,rep,name=inputs,proto3" json:"inputs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` } func (x *Step) Reset() { *x = Step{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Step) String() string { return protoimpl.X.MessageStringOf(x) } func (*Step) ProtoMessage() {} func (x *Step) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Step.ProtoReflect.Descriptor instead. func (*Step) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{0} } func (x *Step) GetName() string { if x != nil { return x.Name } return "" } func (x *Step) GetStep() *Step_Reference { if x != nil { return x.Step } return nil } func (x *Step) GetEnv() map[string]string { if x != nil { return x.Env } return nil } func (x *Step) GetInputs() map[string]*structpb.Value { if x != nil { return x.Inputs } return nil } type PathParts struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Parts []string `protobuf:"bytes,1,rep,name=parts,proto3" json:"parts,omitempty"` } func (x *PathParts) Reset() { *x = PathParts{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *PathParts) String() string { return protoimpl.X.MessageStringOf(x) } func (*PathParts) ProtoMessage() {} func (x *PathParts) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use PathParts.ProtoReflect.Descriptor instead. func (*PathParts) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{1} } func (x *PathParts) GetParts() []string { if x != nil { return x.Parts } return nil } // Definition is the implementation of a step. type Definition struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Type is the type of this step. Type DefinitionType `protobuf:"varint,1,opt,name=type,proto3,enum=proto.DefinitionType" json:"type,omitempty"` // Exec is a command to run for the `exec` type. Exec *Definition_Exec `protobuf:"bytes,2,opt,name=exec,proto3" json:"exec,omitempty"` // Steps is a list of sub-steps to run for the `steps` type. Steps []*Step `protobuf:"bytes,3,rep,name=steps,proto3" json:"steps,omitempty"` // Outputs are the output values for a `steps` type. They can reference the outputs of sub-steps. Outputs map[string]*structpb.Value `protobuf:"bytes,4,rep,name=outputs,proto3" json:"outputs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Env is a map of environment variable names to values for all steps Env map[string]string `protobuf:"bytes,5,rep,name=env,proto3" json:"env,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Delegate selects a step by name which will produce the outputs for this step. Delegate string `protobuf:"bytes,6,opt,name=delegate,proto3" json:"delegate,omitempty"` } func (x *Definition) Reset() { *x = Definition{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Definition) String() string { return protoimpl.X.MessageStringOf(x) } func (*Definition) ProtoMessage() {} func (x *Definition) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Definition.ProtoReflect.Descriptor instead. func (*Definition) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{2} } func (x *Definition) GetType() DefinitionType { if x != nil { return x.Type } return DefinitionType_definition_type_unspecified } func (x *Definition) GetExec() *Definition_Exec { if x != nil { return x.Exec } return nil } func (x *Definition) GetSteps() []*Step { if x != nil { return x.Steps } return nil } func (x *Definition) GetOutputs() map[string]*structpb.Value { if x != nil { return x.Outputs } return nil } func (x *Definition) GetEnv() map[string]string { if x != nil { return x.Env } return nil } func (x *Definition) GetDelegate() string { if x != nil { return x.Delegate } return "" } // Spec is a document describing the interface of the step. type Spec struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Content contains the inputs and outputs of the step. Spec *Spec_Content `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` } func (x *Spec) Reset() { *x = Spec{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Spec) String() string { return protoimpl.X.MessageStringOf(x) } func (*Spec) ProtoMessage() {} func (x *Spec) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Spec.ProtoReflect.Descriptor instead. func (*Spec) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{3} } func (x *Spec) GetSpec() *Spec_Content { if x != nil { return x.Spec } return nil } // SpecDefinition is the spec and definition from an exec.yml file. type SpecDefinition struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Spec is the first document in the file. Spec *Spec `protobuf:"bytes,1,opt,name=spec,proto3" json:"spec,omitempty"` // Definition is the second document in the file. Definition *Definition `protobuf:"bytes,2,opt,name=definition,proto3" json:"definition,omitempty"` } func (x *SpecDefinition) Reset() { *x = SpecDefinition{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *SpecDefinition) String() string { return protoimpl.X.MessageStringOf(x) } func (*SpecDefinition) ProtoMessage() {} func (x *SpecDefinition) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use SpecDefinition.ProtoReflect.Descriptor instead. func (*SpecDefinition) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{4} } func (x *SpecDefinition) GetSpec() *Spec { if x != nil { return x.Spec } return nil } func (x *SpecDefinition) GetDefinition() *Definition { if x != nil { return x.Definition } return nil } // StepResult is the result of executing a single step. type StepResult struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Step is the invocation of this step with inputs. Expressions are expanded. Step *Step `protobuf:"bytes,1,opt,name=step,proto3" json:"step,omitempty"` // SpecDefinition is this step's spec and definition. Expressions are not expanded. SpecDefinition *SpecDefinition `protobuf:"bytes,2,opt,name=specDefinition,proto3" json:"specDefinition,omitempty"` // Status is the state of this step. Status StepResult_Status `protobuf:"varint,4,opt,name=status,proto3,enum=proto.StepResult_Status" json:"status,omitempty"` // Outputs are the output values returned from this step. Outputs map[string]*structpb.Value `protobuf:"bytes,5,rep,name=outputs,proto3" json:"outputs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Exports are the environment variables exported from this step. Exports map[string]string `protobuf:"bytes,6,rep,name=exports,proto3" json:"exports,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Env is the environment at the step definition level. Expressions are expanded. Env map[string]string `protobuf:"bytes,7,rep,name=env,proto3" json:"env,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // ExecResult is the details of an exec type step. ExecResult *StepResult_ExecResult `protobuf:"bytes,8,opt,name=exec_result,json=execResult,proto3" json:"exec_result,omitempty"` // SubStepResults are the details of a steps type step. SubStepResults []*StepResult `protobuf:"bytes,9,rep,name=sub_step_results,json=subStepResults,proto3" json:"sub_step_results,omitempty"` } func (x *StepResult) Reset() { *x = StepResult{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StepResult) String() string { return protoimpl.X.MessageStringOf(x) } func (*StepResult) ProtoMessage() {} func (x *StepResult) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use StepResult.ProtoReflect.Descriptor instead. func (*StepResult) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{5} } func (x *StepResult) GetStep() *Step { if x != nil { return x.Step } return nil } func (x *StepResult) GetSpecDefinition() *SpecDefinition { if x != nil { return x.SpecDefinition } return nil } func (x *StepResult) GetStatus() StepResult_Status { if x != nil { return x.Status } return StepResult_unspecified } func (x *StepResult) GetOutputs() map[string]*structpb.Value { if x != nil { return x.Outputs } return nil } func (x *StepResult) GetExports() map[string]string { if x != nil { return x.Exports } return nil } func (x *StepResult) GetEnv() map[string]string { if x != nil { return x.Env } return nil } func (x *StepResult) GetExecResult() *StepResult_ExecResult { if x != nil { return x.ExecResult } return nil } func (x *StepResult) GetSubStepResults() []*StepResult { if x != nil { return x.SubStepResults } return nil } type Variable struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` Value string `protobuf:"bytes,2,opt,name=value,proto3" json:"value,omitempty"` File bool `protobuf:"varint,3,opt,name=file,proto3" json:"file,omitempty"` Masked bool `protobuf:"varint,4,opt,name=masked,proto3" json:"masked,omitempty"` } func (x *Variable) Reset() { *x = Variable{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Variable) String() string { return protoimpl.X.MessageStringOf(x) } func (*Variable) ProtoMessage() {} func (x *Variable) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Variable.ProtoReflect.Descriptor instead. func (*Variable) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{6} } func (x *Variable) GetKey() string { if x != nil { return x.Key } return "" } func (x *Variable) GetValue() string { if x != nil { return x.Value } return "" } func (x *Variable) GetFile() bool { if x != nil { return x.File } return false } func (x *Variable) GetMasked() bool { if x != nil { return x.Masked } return false } type Job struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Variables []*Variable `protobuf:"bytes,1,rep,name=variables,proto3" json:"variables,omitempty"` BuildDir string `protobuf:"bytes,4,opt,name=build_dir,json=buildDir,proto3" json:"build_dir,omitempty"` } func (x *Job) Reset() { *x = Job{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Job) String() string { return protoimpl.X.MessageStringOf(x) } func (*Job) ProtoMessage() {} func (x *Job) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Job.ProtoReflect.Descriptor instead. func (*Job) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{7} } func (x *Job) GetVariables() []*Variable { if x != nil { return x.Variables } return nil } func (x *Job) GetBuildDir() string { if x != nil { return x.BuildDir } return "" } type RunRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` WorkDir string `protobuf:"bytes,2,opt,name=work_dir,json=workDir,proto3" json:"work_dir,omitempty"` Env map[string]string `protobuf:"bytes,3,rep,name=env,proto3" json:"env,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` Job *Job `protobuf:"bytes,5,opt,name=job,proto3" json:"job,omitempty"` Steps string `protobuf:"bytes,6,opt,name=steps,proto3" json:"steps,omitempty"` } func (x *RunRequest) Reset() { *x = RunRequest{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RunRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RunRequest) ProtoMessage() {} func (x *RunRequest) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RunRequest.ProtoReflect.Descriptor instead. func (*RunRequest) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{8} } func (x *RunRequest) GetId() string { if x != nil { return x.Id } return "" } func (x *RunRequest) GetWorkDir() string { if x != nil { return x.WorkDir } return "" } func (x *RunRequest) GetEnv() map[string]string { if x != nil { return x.Env } return nil } func (x *RunRequest) GetJob() *Job { if x != nil { return x.Job } return nil } func (x *RunRequest) GetSteps() string { if x != nil { return x.Steps } return "" } type RunResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *RunResponse) Reset() { *x = RunResponse{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *RunResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RunResponse) ProtoMessage() {} func (x *RunResponse) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RunResponse.ProtoReflect.Descriptor instead. func (*RunResponse) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{9} } type CloseRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` } func (x *CloseRequest) Reset() { *x = CloseRequest{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CloseRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*CloseRequest) ProtoMessage() {} func (x *CloseRequest) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use CloseRequest.ProtoReflect.Descriptor instead. func (*CloseRequest) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{10} } func (x *CloseRequest) GetId() string { if x != nil { return x.Id } return "" } type CloseResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields } func (x *CloseResponse) Reset() { *x = CloseResponse{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *CloseResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*CloseResponse) ProtoMessage() {} func (x *CloseResponse) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use CloseResponse.ProtoReflect.Descriptor instead. func (*CloseResponse) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{11} } type FollowLogsRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` Offset int64 `protobuf:"varint,2,opt,name=offset,proto3" json:"offset,omitempty"` } func (x *FollowLogsRequest) Reset() { *x = FollowLogsRequest{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FollowLogsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*FollowLogsRequest) ProtoMessage() {} func (x *FollowLogsRequest) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[12] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use FollowLogsRequest.ProtoReflect.Descriptor instead. func (*FollowLogsRequest) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{12} } func (x *FollowLogsRequest) GetId() string { if x != nil { return x.Id } return "" } func (x *FollowLogsRequest) GetOffset() int64 { if x != nil { return x.Offset } return 0 } type FollowLogsResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Data []byte `protobuf:"bytes,1,opt,name=data,proto3" json:"data,omitempty"` } func (x *FollowLogsResponse) Reset() { *x = FollowLogsResponse{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *FollowLogsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*FollowLogsResponse) ProtoMessage() {} func (x *FollowLogsResponse) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[13] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use FollowLogsResponse.ProtoReflect.Descriptor instead. func (*FollowLogsResponse) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{13} } func (x *FollowLogsResponse) GetData() []byte { if x != nil { return x.Data } return nil } type Status struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` Message string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"` Status StepResult_Status `protobuf:"varint,3,opt,name=status,proto3,enum=proto.StepResult_Status" json:"status,omitempty"` StartTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"` EndTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"` } func (x *Status) Reset() { *x = Status{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Status) String() string { return protoimpl.X.MessageStringOf(x) } func (*Status) ProtoMessage() {} func (x *Status) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[14] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Status.ProtoReflect.Descriptor instead. func (*Status) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{14} } func (x *Status) GetId() string { if x != nil { return x.Id } return "" } func (x *Status) GetMessage() string { if x != nil { return x.Message } return "" } func (x *Status) GetStatus() StepResult_Status { if x != nil { return x.Status } return StepResult_unspecified } func (x *Status) GetStartTime() *timestamppb.Timestamp { if x != nil { return x.StartTime } return nil } func (x *Status) GetEndTime() *timestamppb.Timestamp { if x != nil { return x.EndTime } return nil } type StatusRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` } func (x *StatusRequest) Reset() { *x = StatusRequest{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StatusRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*StatusRequest) ProtoMessage() {} func (x *StatusRequest) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[15] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use StatusRequest.ProtoReflect.Descriptor instead. func (*StatusRequest) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{15} } func (x *StatusRequest) GetId() string { if x != nil { return x.Id } return "" } type StatusResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields Jobs []*Status `protobuf:"bytes,1,rep,name=jobs,proto3" json:"jobs,omitempty"` } func (x *StatusResponse) Reset() { *x = StatusResponse{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StatusResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*StatusResponse) ProtoMessage() {} func (x *StatusResponse) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[16] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use StatusResponse.ProtoReflect.Descriptor instead. func (*StatusResponse) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{16} } func (x *StatusResponse) GetJobs() []*Status { if x != nil { return x.Jobs } return nil } // Reference is a reference to a step. References can contain either a short or a full form. type Step_Reference struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Protocol determines which step reference protocol to use when fetching the step. Protocol StepReferenceProtocol `protobuf:"varint,1,opt,name=protocol,proto3,enum=proto.StepReferenceProtocol" json:"protocol,omitempty"` // Url is the location of the referenced step. Url string `protobuf:"bytes,2,opt,name=url,proto3" json:"url,omitempty"` // Path is the location of the step spec and definition within the URL. Replaced with step_path // // Deprecated: Marked as deprecated in step.proto. Path []string `protobuf:"bytes,3,rep,name=path,proto3" json:"path,omitempty"` // Filename is the name of the file which contains the step spec and definition. Filename string `protobuf:"bytes,4,opt,name=filename,proto3" json:"filename,omitempty"` // Version is which version of the step to use. Version string `protobuf:"bytes,5,opt,name=version,proto3" json:"version,omitempty"` // Registry is the host and optionally port of the server hosting OCI images. Registry string `protobuf:"bytes,6,opt,name=registry,proto3" json:"registry,omitempty"` // Repository is the path to find an image on an OCI server. Repository string `protobuf:"bytes,7,opt,name=repository,proto3" json:"repository,omitempty"` // Tag is the version of the which version of the step OCI image to use. Tag string `protobuf:"bytes,8,opt,name=tag,proto3" json:"tag,omitempty"` // SpecDef allows the step reference to be inlined or hardcoded SpecDef *SpecDefinition `protobuf:"bytes,9,opt,name=specDef,proto3" json:"specDef,omitempty"` // Step Path is the path to the step // // Types that are assignable to StepPath: // // *Step_Reference_PathExp // *Step_Reference_Paths StepPath isStep_Reference_StepPath `protobuf_oneof:"step_path"` } func (x *Step_Reference) Reset() { *x = Step_Reference{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Step_Reference) String() string { return protoimpl.X.MessageStringOf(x) } func (*Step_Reference) ProtoMessage() {} func (x *Step_Reference) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[19] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Step_Reference.ProtoReflect.Descriptor instead. func (*Step_Reference) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{0, 2} } func (x *Step_Reference) GetProtocol() StepReferenceProtocol { if x != nil { return x.Protocol } return StepReferenceProtocol_step_reference_protocol_unspecified } func (x *Step_Reference) GetUrl() string { if x != nil { return x.Url } return "" } // Deprecated: Marked as deprecated in step.proto. func (x *Step_Reference) GetPath() []string { if x != nil { return x.Path } return nil } func (x *Step_Reference) GetFilename() string { if x != nil { return x.Filename } return "" } func (x *Step_Reference) GetVersion() string { if x != nil { return x.Version } return "" } func (x *Step_Reference) GetRegistry() string { if x != nil { return x.Registry } return "" } func (x *Step_Reference) GetRepository() string { if x != nil { return x.Repository } return "" } func (x *Step_Reference) GetTag() string { if x != nil { return x.Tag } return "" } func (x *Step_Reference) GetSpecDef() *SpecDefinition { if x != nil { return x.SpecDef } return nil } func (m *Step_Reference) GetStepPath() isStep_Reference_StepPath { if m != nil { return m.StepPath } return nil } func (x *Step_Reference) GetPathExp() string { if x, ok := x.GetStepPath().(*Step_Reference_PathExp); ok { return x.PathExp } return "" } func (x *Step_Reference) GetPaths() *PathParts { if x, ok := x.GetStepPath().(*Step_Reference_Paths); ok { return x.Paths } return nil } type isStep_Reference_StepPath interface { isStep_Reference_StepPath() } type Step_Reference_PathExp struct { PathExp string `protobuf:"bytes,10,opt,name=path_exp,json=pathExp,proto3,oneof"` } type Step_Reference_Paths struct { Paths *PathParts `protobuf:"bytes,11,opt,name=paths,proto3,oneof"` } func (*Step_Reference_PathExp) isStep_Reference_StepPath() {} func (*Step_Reference_Paths) isStep_Reference_StepPath() {} // Exec is the details of an exec type step. type Definition_Exec struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Command are the parameters to the system exec API. It does not invoke a shell. Command []string `protobuf:"bytes,1,rep,name=command,proto3" json:"command,omitempty"` // WorkDir is the working directly in which `command` will be exec'ed. WorkDir string `protobuf:"bytes,2,opt,name=work_dir,json=workDir,proto3" json:"work_dir,omitempty"` } func (x *Definition_Exec) Reset() { *x = Definition_Exec{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Definition_Exec) String() string { return protoimpl.X.MessageStringOf(x) } func (*Definition_Exec) ProtoMessage() {} func (x *Definition_Exec) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[20] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Definition_Exec.ProtoReflect.Descriptor instead. func (*Definition_Exec) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{2, 0} } func (x *Definition_Exec) GetCommand() []string { if x != nil { return x.Command } return nil } func (x *Definition_Exec) GetWorkDir() string { if x != nil { return x.WorkDir } return "" } type Spec_Content struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Inputs is a map of input names to their parameters. Inputs map[string]*Spec_Content_Input `protobuf:"bytes,1,rep,name=inputs,proto3" json:"inputs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // Outputs is a map of output names to their parameters. Outputs map[string]*Spec_Content_Output `protobuf:"bytes,2,rep,name=outputs,proto3" json:"outputs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` // OutputMethod selects how this step will return its outputs. OutputMethod OutputMethod `protobuf:"varint,3,opt,name=output_method,json=outputMethod,proto3,enum=proto.OutputMethod" json:"output_method,omitempty"` } func (x *Spec_Content) Reset() { *x = Spec_Content{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Spec_Content) String() string { return protoimpl.X.MessageStringOf(x) } func (*Spec_Content) ProtoMessage() {} func (x *Spec_Content) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[23] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Spec_Content.ProtoReflect.Descriptor instead. func (*Spec_Content) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{3, 0} } func (x *Spec_Content) GetInputs() map[string]*Spec_Content_Input { if x != nil { return x.Inputs } return nil } func (x *Spec_Content) GetOutputs() map[string]*Spec_Content_Output { if x != nil { return x.Outputs } return nil } func (x *Spec_Content) GetOutputMethod() OutputMethod { if x != nil { return x.OutputMethod } return OutputMethod_output_method_unspecified } // Input describes a single step input. type Spec_Content_Input struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Type is the value type of the input. Type ValueType `protobuf:"varint,1,opt,name=type,proto3,enum=proto.ValueType" json:"type,omitempty"` // Default is the default input value. Its type must match `type`. Default *structpb.Value `protobuf:"bytes,2,opt,name=default,proto3" json:"default,omitempty"` // Sensitive implies the input is of sensitive nature and effort should be made to prevent accidental disclosure. Sensitive bool `protobuf:"varint,3,opt,name=sensitive,proto3" json:"sensitive,omitempty"` } func (x *Spec_Content_Input) Reset() { *x = Spec_Content_Input{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Spec_Content_Input) String() string { return protoimpl.X.MessageStringOf(x) } func (*Spec_Content_Input) ProtoMessage() {} func (x *Spec_Content_Input) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[25] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Spec_Content_Input.ProtoReflect.Descriptor instead. func (*Spec_Content_Input) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{3, 0, 1} } func (x *Spec_Content_Input) GetType() ValueType { if x != nil { return x.Type } return ValueType_value_type_unspecified } func (x *Spec_Content_Input) GetDefault() *structpb.Value { if x != nil { return x.Default } return nil } func (x *Spec_Content_Input) GetSensitive() bool { if x != nil { return x.Sensitive } return false } // Output describes a single step output. type Spec_Content_Output struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Type is the value type of the output. Type ValueType `protobuf:"varint,1,opt,name=type,proto3,enum=proto.ValueType" json:"type,omitempty"` // Default is the default output value. Default *structpb.Value `protobuf:"bytes,2,opt,name=default,proto3" json:"default,omitempty"` // Sensitive implies the output is of sensitive nature and effort should be made to prevent accidental disclosure. Sensitive bool `protobuf:"varint,3,opt,name=sensitive,proto3" json:"sensitive,omitempty"` } func (x *Spec_Content_Output) Reset() { *x = Spec_Content_Output{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *Spec_Content_Output) String() string { return protoimpl.X.MessageStringOf(x) } func (*Spec_Content_Output) ProtoMessage() {} func (x *Spec_Content_Output) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[27] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Spec_Content_Output.ProtoReflect.Descriptor instead. func (*Spec_Content_Output) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{3, 0, 3} } func (x *Spec_Content_Output) GetType() ValueType { if x != nil { return x.Type } return ValueType_value_type_unspecified } func (x *Spec_Content_Output) GetDefault() *structpb.Value { if x != nil { return x.Default } return nil } func (x *Spec_Content_Output) GetSensitive() bool { if x != nil { return x.Sensitive } return false } // ExecResult contains the details of an exec call. type StepResult_ExecResult struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields // Command are the exec parameters. Expressions are expanded. Command []string `protobuf:"bytes,1,rep,name=command,proto3" json:"command,omitempty"` // WorkDir is the exec working directory. Expressions are expanded. WorkDir string `protobuf:"bytes,2,opt,name=work_dir,json=workDir,proto3" json:"work_dir,omitempty"` // ExitCode is the exit code of the exec process. ExitCode int32 `protobuf:"varint,3,opt,name=exit_code,json=exitCode,proto3" json:"exit_code,omitempty"` } func (x *StepResult_ExecResult) Reset() { *x = StepResult_ExecResult{} if protoimpl.UnsafeEnabled { mi := &file_step_proto_msgTypes[31] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } } func (x *StepResult_ExecResult) String() string { return protoimpl.X.MessageStringOf(x) } func (*StepResult_ExecResult) ProtoMessage() {} func (x *StepResult_ExecResult) ProtoReflect() protoreflect.Message { mi := &file_step_proto_msgTypes[31] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use StepResult_ExecResult.ProtoReflect.Descriptor instead. func (*StepResult_ExecResult) Descriptor() ([]byte, []int) { return file_step_proto_rawDescGZIP(), []int{5, 3} } func (x *StepResult_ExecResult) GetCommand() []string { if x != nil { return x.Command } return nil } func (x *StepResult_ExecResult) GetWorkDir() string { if x != nil { return x.WorkDir } return "" } func (x *StepResult_ExecResult) GetExitCode() int32 { if x != nil { return x.ExitCode } return 0 } var File_step_proto protoreflect.FileDescriptor var file_step_proto_rawDesc = []byte{ 0x0a, 0x0a, 0x73, 0x74, 0x65, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x05, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa4, 0x05, 0x0a, 0x04, 0x53, 0x74, 0x65, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x04, 0x73, 0x74, 0x65, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x2e, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x52, 0x04, 0x73, 0x74, 0x65, 0x70, 0x12, 0x26, 0x0a, 0x03, 0x65, 0x6e, 0x76, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x2e, 0x45, 0x6e, 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x65, 0x6e, 0x76, 0x12, 0x2f, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x1a, 0x36, 0x0a, 0x08, 0x45, 0x6e, 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x51, 0x0a, 0x0b, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2c, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0xf8, 0x02, 0x0a, 0x09, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x38, 0x0a, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x52, 0x08, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x16, 0x0a, 0x04, 0x70, 0x61, 0x74, 0x68, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x04, 0x70, 0x61, 0x74, 0x68, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x12, 0x1e, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x74, 0x61, 0x67, 0x12, 0x2f, 0x0a, 0x07, 0x73, 0x70, 0x65, 0x63, 0x44, 0x65, 0x66, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x70, 0x65, 0x63, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x73, 0x70, 0x65, 0x63, 0x44, 0x65, 0x66, 0x12, 0x1b, 0x0a, 0x08, 0x70, 0x61, 0x74, 0x68, 0x5f, 0x65, 0x78, 0x70, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x70, 0x61, 0x74, 0x68, 0x45, 0x78, 0x70, 0x12, 0x28, 0x0a, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x10, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x50, 0x61, 0x74, 0x68, 0x50, 0x61, 0x72, 0x74, 0x73, 0x48, 0x00, 0x52, 0x05, 0x70, 0x61, 0x74, 0x68, 0x73, 0x42, 0x0b, 0x0a, 0x09, 0x73, 0x74, 0x65, 0x70, 0x5f, 0x70, 0x61, 0x74, 0x68, 0x22, 0x21, 0x0a, 0x09, 0x50, 0x61, 0x74, 0x68, 0x50, 0x61, 0x72, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x22, 0xd3, 0x03, 0x0a, 0x0a, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x04, 0x65, 0x78, 0x65, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x52, 0x04, 0x65, 0x78, 0x65, 0x63, 0x12, 0x21, 0x0a, 0x05, 0x73, 0x74, 0x65, 0x70, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x52, 0x05, 0x73, 0x74, 0x65, 0x70, 0x73, 0x12, 0x38, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x03, 0x65, 0x6e, 0x76, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x45, 0x6e, 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x65, 0x6e, 0x76, 0x12, 0x1a, 0x0a, 0x08, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x1a, 0x3b, 0x0a, 0x04, 0x45, 0x78, 0x65, 0x63, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x69, 0x72, 0x1a, 0x52, 0x0a, 0x0c, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2c, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x36, 0x0a, 0x08, 0x45, 0x6e, 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x97, 0x05, 0x0a, 0x04, 0x53, 0x70, 0x65, 0x63, 0x12, 0x27, 0x0a, 0x04, 0x73, 0x70, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x04, 0x73, 0x70, 0x65, 0x63, 0x1a, 0xe5, 0x04, 0x0a, 0x07, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x37, 0x0a, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x12, 0x3a, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x38, 0x0a, 0x0d, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x1a, 0x54, 0x0a, 0x0b, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2f, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x7d, 0x0a, 0x05, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x24, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x30, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x1a, 0x56, 0x0a, 0x0c, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x30, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x70, 0x65, 0x63, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x7e, 0x0a, 0x06, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x12, 0x24, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x10, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x30, 0x0a, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x07, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x73, 0x65, 0x6e, 0x73, 0x69, 0x74, 0x69, 0x76, 0x65, 0x22, 0x64, 0x0a, 0x0e, 0x53, 0x70, 0x65, 0x63, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x04, 0x73, 0x70, 0x65, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x73, 0x70, 0x65, 0x63, 0x12, 0x31, 0x0a, 0x0a, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xb5, 0x06, 0x0a, 0x0a, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x1f, 0x0a, 0x04, 0x73, 0x74, 0x65, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x52, 0x04, 0x73, 0x74, 0x65, 0x70, 0x12, 0x3d, 0x0a, 0x0e, 0x73, 0x70, 0x65, 0x63, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x70, 0x65, 0x63, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x73, 0x70, 0x65, 0x63, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x30, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x38, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x12, 0x38, 0x0a, 0x07, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x03, 0x65, 0x6e, 0x76, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x45, 0x6e, 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x65, 0x6e, 0x76, 0x12, 0x3d, 0x0a, 0x0b, 0x65, 0x78, 0x65, 0x63, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x45, 0x78, 0x65, 0x63, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0a, 0x65, 0x78, 0x65, 0x63, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x3b, 0x0a, 0x10, 0x73, 0x75, 0x62, 0x5f, 0x73, 0x74, 0x65, 0x70, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0e, 0x73, 0x75, 0x62, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x1a, 0x52, 0x0a, 0x0c, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x2c, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3a, 0x0a, 0x0c, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x36, 0x0a, 0x08, 0x45, 0x6e, 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x5e, 0x0a, 0x0a, 0x45, 0x78, 0x65, 0x63, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x69, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x78, 0x69, 0x74, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x65, 0x78, 0x69, 0x74, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x4f, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0f, 0x0a, 0x0b, 0x75, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x73, 0x75, 0x63, 0x63, 0x65, 0x73, 0x73, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x66, 0x61, 0x69, 0x6c, 0x75, 0x72, 0x65, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x65, 0x64, 0x10, 0x04, 0x22, 0x5e, 0x0a, 0x08, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x6d, 0x61, 0x73, 0x6b, 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x6d, 0x61, 0x73, 0x6b, 0x65, 0x64, 0x22, 0x51, 0x0a, 0x03, 0x4a, 0x6f, 0x62, 0x12, 0x2d, 0x0a, 0x09, 0x76, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x56, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x52, 0x09, 0x76, 0x61, 0x72, 0x69, 0x61, 0x62, 0x6c, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x62, 0x75, 0x69, 0x6c, 0x64, 0x44, 0x69, 0x72, 0x22, 0xd1, 0x01, 0x0a, 0x0a, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x77, 0x6f, 0x72, 0x6b, 0x5f, 0x64, 0x69, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x77, 0x6f, 0x72, 0x6b, 0x44, 0x69, 0x72, 0x12, 0x2c, 0x0a, 0x03, 0x65, 0x6e, 0x76, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x45, 0x6e, 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x03, 0x65, 0x6e, 0x76, 0x12, 0x1c, 0x0a, 0x03, 0x6a, 0x6f, 0x62, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0a, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x4a, 0x6f, 0x62, 0x52, 0x03, 0x6a, 0x6f, 0x62, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x65, 0x70, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x65, 0x70, 0x73, 0x1a, 0x36, 0x0a, 0x08, 0x45, 0x6e, 0x76, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x0d, 0x0a, 0x0b, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x1e, 0x0a, 0x0c, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x0f, 0x0a, 0x0d, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x3b, 0x0a, 0x11, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x06, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x22, 0x28, 0x0a, 0x12, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x22, 0xd6, 0x01, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x30, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x1f, 0x0a, 0x0d, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x22, 0x33, 0x0a, 0x0e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x21, 0x0a, 0x04, 0x6a, 0x6f, 0x62, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x04, 0x6a, 0x6f, 0x62, 0x73, 0x2a, 0x8b, 0x01, 0x0a, 0x15, 0x53, 0x74, 0x65, 0x70, 0x52, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x12, 0x27, 0x0a, 0x23, 0x73, 0x74, 0x65, 0x70, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x5f, 0x75, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x67, 0x69, 0x74, 0x10, 0x02, 0x12, 0x07, 0x0a, 0x03, 0x7a, 0x69, 0x70, 0x10, 0x03, 0x12, 0x07, 0x0a, 0x03, 0x6f, 0x63, 0x69, 0x10, 0x04, 0x12, 0x08, 0x0a, 0x04, 0x64, 0x69, 0x73, 0x74, 0x10, 0x05, 0x12, 0x0b, 0x0a, 0x07, 0x64, 0x79, 0x6e, 0x61, 0x6d, 0x69, 0x63, 0x10, 0x06, 0x12, 0x0c, 0x0a, 0x08, 0x73, 0x70, 0x65, 0x63, 0x5f, 0x64, 0x65, 0x66, 0x10, 0x07, 0x2a, 0x46, 0x0a, 0x0e, 0x44, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x75, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x65, 0x78, 0x65, 0x63, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x73, 0x74, 0x65, 0x70, 0x73, 0x10, 0x02, 0x2a, 0x48, 0x0a, 0x0c, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x1d, 0x0a, 0x19, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x5f, 0x75, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x73, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x64, 0x65, 0x6c, 0x65, 0x67, 0x61, 0x74, 0x65, 0x10, 0x02, 0x2a, 0x69, 0x0a, 0x09, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1a, 0x0a, 0x16, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x75, 0x6e, 0x73, 0x70, 0x65, 0x63, 0x69, 0x66, 0x69, 0x65, 0x64, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x10, 0x03, 0x12, 0x0b, 0x0a, 0x07, 0x62, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x10, 0x04, 0x12, 0x0a, 0x0a, 0x06, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x10, 0x05, 0x12, 0x09, 0x0a, 0x05, 0x61, 0x72, 0x72, 0x61, 0x79, 0x10, 0x06, 0x22, 0x04, 0x08, 0x01, 0x10, 0x01, 0x32, 0xea, 0x01, 0x0a, 0x0a, 0x53, 0x74, 0x65, 0x70, 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x12, 0x2c, 0x0a, 0x03, 0x52, 0x75, 0x6e, 0x12, 0x11, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x52, 0x75, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x12, 0x13, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x43, 0x6c, 0x6f, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x43, 0x0a, 0x0a, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x4c, 0x6f, 0x67, 0x73, 0x12, 0x18, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x4c, 0x6f, 0x67, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x30, 0x01, 0x12, 0x35, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x14, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x0a, 0x5a, 0x08, 0x2e, 0x2e, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( file_step_proto_rawDescOnce sync.Once file_step_proto_rawDescData = file_step_proto_rawDesc ) func file_step_proto_rawDescGZIP() []byte { file_step_proto_rawDescOnce.Do(func() { file_step_proto_rawDescData = protoimpl.X.CompressGZIP(file_step_proto_rawDescData) }) return file_step_proto_rawDescData } var file_step_proto_enumTypes = make([]protoimpl.EnumInfo, 5) var file_step_proto_msgTypes = make([]protoimpl.MessageInfo, 33) var file_step_proto_goTypes = []interface{}{ (StepReferenceProtocol)(0), // 0: proto.StepReferenceProtocol (DefinitionType)(0), // 1: proto.DefinitionType (OutputMethod)(0), // 2: proto.OutputMethod (ValueType)(0), // 3: proto.ValueType (StepResult_Status)(0), // 4: proto.StepResult.Status (*Step)(nil), // 5: proto.Step (*PathParts)(nil), // 6: proto.PathParts (*Definition)(nil), // 7: proto.Definition (*Spec)(nil), // 8: proto.Spec (*SpecDefinition)(nil), // 9: proto.SpecDefinition (*StepResult)(nil), // 10: proto.StepResult (*Variable)(nil), // 11: proto.Variable (*Job)(nil), // 12: proto.Job (*RunRequest)(nil), // 13: proto.RunRequest (*RunResponse)(nil), // 14: proto.RunResponse (*CloseRequest)(nil), // 15: proto.CloseRequest (*CloseResponse)(nil), // 16: proto.CloseResponse (*FollowLogsRequest)(nil), // 17: proto.FollowLogsRequest (*FollowLogsResponse)(nil), // 18: proto.FollowLogsResponse (*Status)(nil), // 19: proto.Status (*StatusRequest)(nil), // 20: proto.StatusRequest (*StatusResponse)(nil), // 21: proto.StatusResponse nil, // 22: proto.Step.EnvEntry nil, // 23: proto.Step.InputsEntry (*Step_Reference)(nil), // 24: proto.Step.Reference (*Definition_Exec)(nil), // 25: proto.Definition.Exec nil, // 26: proto.Definition.OutputsEntry nil, // 27: proto.Definition.EnvEntry (*Spec_Content)(nil), // 28: proto.Spec.Content nil, // 29: proto.Spec.Content.InputsEntry (*Spec_Content_Input)(nil), // 30: proto.Spec.Content.Input nil, // 31: proto.Spec.Content.OutputsEntry (*Spec_Content_Output)(nil), // 32: proto.Spec.Content.Output nil, // 33: proto.StepResult.OutputsEntry nil, // 34: proto.StepResult.ExportsEntry nil, // 35: proto.StepResult.EnvEntry (*StepResult_ExecResult)(nil), // 36: proto.StepResult.ExecResult nil, // 37: proto.RunRequest.EnvEntry (*timestamppb.Timestamp)(nil), // 38: google.protobuf.Timestamp (*structpb.Value)(nil), // 39: google.protobuf.Value } var file_step_proto_depIdxs = []int32{ 24, // 0: proto.Step.step:type_name -> proto.Step.Reference 22, // 1: proto.Step.env:type_name -> proto.Step.EnvEntry 23, // 2: proto.Step.inputs:type_name -> proto.Step.InputsEntry 1, // 3: proto.Definition.type:type_name -> proto.DefinitionType 25, // 4: proto.Definition.exec:type_name -> proto.Definition.Exec 5, // 5: proto.Definition.steps:type_name -> proto.Step 26, // 6: proto.Definition.outputs:type_name -> proto.Definition.OutputsEntry 27, // 7: proto.Definition.env:type_name -> proto.Definition.EnvEntry 28, // 8: proto.Spec.spec:type_name -> proto.Spec.Content 8, // 9: proto.SpecDefinition.spec:type_name -> proto.Spec 7, // 10: proto.SpecDefinition.definition:type_name -> proto.Definition 5, // 11: proto.StepResult.step:type_name -> proto.Step 9, // 12: proto.StepResult.specDefinition:type_name -> proto.SpecDefinition 4, // 13: proto.StepResult.status:type_name -> proto.StepResult.Status 33, // 14: proto.StepResult.outputs:type_name -> proto.StepResult.OutputsEntry 34, // 15: proto.StepResult.exports:type_name -> proto.StepResult.ExportsEntry 35, // 16: proto.StepResult.env:type_name -> proto.StepResult.EnvEntry 36, // 17: proto.StepResult.exec_result:type_name -> proto.StepResult.ExecResult 10, // 18: proto.StepResult.sub_step_results:type_name -> proto.StepResult 11, // 19: proto.Job.variables:type_name -> proto.Variable 37, // 20: proto.RunRequest.env:type_name -> proto.RunRequest.EnvEntry 12, // 21: proto.RunRequest.job:type_name -> proto.Job 4, // 22: proto.Status.status:type_name -> proto.StepResult.Status 38, // 23: proto.Status.start_time:type_name -> google.protobuf.Timestamp 38, // 24: proto.Status.end_time:type_name -> google.protobuf.Timestamp 19, // 25: proto.StatusResponse.jobs:type_name -> proto.Status 39, // 26: proto.Step.InputsEntry.value:type_name -> google.protobuf.Value 0, // 27: proto.Step.Reference.protocol:type_name -> proto.StepReferenceProtocol 9, // 28: proto.Step.Reference.specDef:type_name -> proto.SpecDefinition 6, // 29: proto.Step.Reference.paths:type_name -> proto.PathParts 39, // 30: proto.Definition.OutputsEntry.value:type_name -> google.protobuf.Value 29, // 31: proto.Spec.Content.inputs:type_name -> proto.Spec.Content.InputsEntry 31, // 32: proto.Spec.Content.outputs:type_name -> proto.Spec.Content.OutputsEntry 2, // 33: proto.Spec.Content.output_method:type_name -> proto.OutputMethod 30, // 34: proto.Spec.Content.InputsEntry.value:type_name -> proto.Spec.Content.Input 3, // 35: proto.Spec.Content.Input.type:type_name -> proto.ValueType 39, // 36: proto.Spec.Content.Input.default:type_name -> google.protobuf.Value 32, // 37: proto.Spec.Content.OutputsEntry.value:type_name -> proto.Spec.Content.Output 3, // 38: proto.Spec.Content.Output.type:type_name -> proto.ValueType 39, // 39: proto.Spec.Content.Output.default:type_name -> google.protobuf.Value 39, // 40: proto.StepResult.OutputsEntry.value:type_name -> google.protobuf.Value 13, // 41: proto.StepRunner.Run:input_type -> proto.RunRequest 15, // 42: proto.StepRunner.Close:input_type -> proto.CloseRequest 17, // 43: proto.StepRunner.FollowLogs:input_type -> proto.FollowLogsRequest 20, // 44: proto.StepRunner.Status:input_type -> proto.StatusRequest 14, // 45: proto.StepRunner.Run:output_type -> proto.RunResponse 16, // 46: proto.StepRunner.Close:output_type -> proto.CloseResponse 18, // 47: proto.StepRunner.FollowLogs:output_type -> proto.FollowLogsResponse 21, // 48: proto.StepRunner.Status:output_type -> proto.StatusResponse 45, // [45:49] is the sub-list for method output_type 41, // [41:45] is the sub-list for method input_type 41, // [41:41] is the sub-list for extension type_name 41, // [41:41] is the sub-list for extension extendee 0, // [0:41] is the sub-list for field type_name } func init() { file_step_proto_init() } func file_step_proto_init() { if File_step_proto != nil { return } if !protoimpl.UnsafeEnabled { file_step_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Step); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*PathParts); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Definition); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Spec); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SpecDefinition); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StepResult); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Variable); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Job); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RunRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*RunResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CloseRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CloseResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FollowLogsRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*FollowLogsResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Status); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StatusRequest); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StatusResponse); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Step_Reference); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Definition_Exec); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Spec_Content); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Spec_Content_Input); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*Spec_Content_Output); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } file_step_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*StepResult_ExecResult); i { case 0: return &v.state case 1: return &v.sizeCache case 2: return &v.unknownFields default: return nil } } } file_step_proto_msgTypes[19].OneofWrappers = []interface{}{ (*Step_Reference_PathExp)(nil), (*Step_Reference_Paths)(nil), } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_step_proto_rawDesc, NumEnums: 5, NumMessages: 33, NumExtensions: 0, NumServices: 1, }, GoTypes: file_step_proto_goTypes, DependencyIndexes: file_step_proto_depIdxs, EnumInfos: file_step_proto_enumTypes, MessageInfos: file_step_proto_msgTypes, }.Build() File_step_proto = out.File file_step_proto_rawDesc = nil file_step_proto_goTypes = nil file_step_proto_depIdxs = nil }