// SPDX-License-Identifier: MIT // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.36.12 // protoc (unknown) // source: ermite/run.proto package ermite import ( protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" timestamppb "google.golang.org/protobuf/types/known/timestamppb" reflect "reflect" sync "sync" unsafe "unsafe" ) 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) ) // Run is one execution of one workflow file for one event, like a GitHub // workflow run. A re-run keeps the run and adds an attempt. type Run struct { state protoimpl.MessageState `protogen:"open.v1"` // Repo is the name of the repository. Repo string `protobuf:"bytes,1,opt,name=repo,proto3" json:"repo,omitempty"` // Id identifies the run on the whole server: it is the "github.run_id". // Increasing, never reused. Id int64 `protobuf:"varint,2,opt,name=id,proto3" json:"id,omitempty"` // Number counts the runs of the same workflow file in the repository, // starting at 1, never reused: it is the "github.run_number". It does not // change on a re-run. Number int64 `protobuf:"varint,3,opt,name=number,proto3" json:"number,omitempty"` // Attempt is the attempt this message describes: 1 for the first, one more // after each RerunRun. ListRuns and events describe the latest attempt; // GetRun can ask for another one. Attempt int32 `protobuf:"varint,4,opt,name=attempt,proto3" json:"attempt,omitempty"` // WorkflowPath is the path of the workflow file at sha, for example // ".github/workflows/ci.yml". WorkflowPath string `protobuf:"bytes,5,opt,name=workflow_path,json=workflowPath,proto3" json:"workflow_path,omitempty"` // WorkflowName is the "name" of the workflow, or workflow_path when it has // none (as GitHub does). It is the "github.workflow" of the run and the // workflow name of its checks. See name for the name of the run itself. WorkflowName string `protobuf:"bytes,6,opt,name=workflow_name,json=workflowName,proto3" json:"workflow_name,omitempty"` // Title is GitHub's display title, at most 256 characters: the evaluated // "run-name" of the workflow when it has one, else for a push to a branch // the first line of the message of the commit sha, and for a push of a tag // the name of the workflow registered for workflow_path (the "name" of that // file on the default branch, else workflow_name). Title string `protobuf:"bytes,7,opt,name=title,proto3" json:"title,omitempty"` // Event is the event that triggered the run, in GitHub's name: "push" (the // only one for now; push to a branch or a tag, and merge of a merge // request). New values may be added; clients show the ones they do not // know as they are. Event string `protobuf:"bytes,8,opt,name=event,proto3" json:"event,omitempty"` // Ref is the full ref name that was pushed, for example "refs/heads/main" // or "refs/tags/v1.0.0". Ref string `protobuf:"bytes,9,opt,name=ref,proto3" json:"ref,omitempty"` // Sha is the full id of the commit the run is for. Sha string `protobuf:"bytes,10,opt,name=sha,proto3" json:"sha,omitempty"` // Actor names who triggered the run: the label of the token that pushed, or // "root", or "owner" (a web session, a merge of the web UI), as // MergeRequest.author. It is informational. Actor string `protobuf:"bytes,11,opt,name=actor,proto3" json:"actor,omitempty"` // Status is where this attempt is: QUEUED until a job starts, IN_PROGRESS // while jobs run or wait, COMPLETED when every job is over. Status CiStatus `protobuf:"varint,12,opt,name=status,proto3,enum=ermite.CiStatus" json:"status,omitempty"` // Conclusion is how this attempt ended, from its jobs' conclusions like // GitHub: CANCELLED if it was cancelled, else FAILURE if a job failed or // timed out, else SUCCESS (also when jobs were skipped). Unset until // status is COMPLETED. Conclusion CiConclusion `protobuf:"varint,13,opt,name=conclusion,proto3,enum=ermite.CiConclusion" json:"conclusion,omitempty"` // Error is set when the run failed without running a job because the // workflow could not be used: an invalid workflow file (the run then has // no jobs and conclusion FAILURE), as GitHub's "Invalid workflow file". // It holds the errors with their positions, one per line, at most 8 KiB. // Empty otherwise. Error string `protobuf:"bytes,14,opt,name=error,proto3" json:"error,omitempty"` // CreatedAt is when this attempt was created: for attempt 1 when the // trigger was planned, for later ones when RerunRun was called. CreatedAt *timestamppb.Timestamp `protobuf:"bytes,15,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` // StartedAt is when the first job of this attempt was given to a runner. // Unset until then. StartedAt *timestamppb.Timestamp `protobuf:"bytes,16,opt,name=started_at,json=startedAt,proto3" json:"started_at,omitempty"` // CompletedAt is when this attempt completed. Unset until then. CompletedAt *timestamppb.Timestamp `protobuf:"bytes,17,opt,name=completed_at,json=completedAt,proto3" json:"completed_at,omitempty"` // Version counts the changes of this run on the server: it grows by at least // one at every change and never goes back, also across attempts. Events are // not delivered in order, and a client that holds two copies of a run keeps // the one with the higher version and drops the other. Version int64 `protobuf:"varint,18,opt,name=version,proto3" json:"version,omitempty"` // Name is the name of the run, GitHub's "name" of a workflow run: the // evaluated "run-name" of the workflow when it has one, else the same value // as workflow_name. It is what GitHub lists as the run's name, whereas // workflow_name stays the name of the workflow ("github.workflow") even when // the workflow has a "run-name". A run stored before this field existed // reads as workflow_name. Name string `protobuf:"bytes,19,opt,name=name,proto3" json:"name,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *Run) Reset() { *x = Run{} mi := &file_ermite_run_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *Run) String() string { return protoimpl.X.MessageStringOf(x) } func (*Run) ProtoMessage() {} func (x *Run) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[0] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Run.ProtoReflect.Descriptor instead. func (*Run) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{0} } func (x *Run) GetRepo() string { if x != nil { return x.Repo } return "" } func (x *Run) GetId() int64 { if x != nil { return x.Id } return 0 } func (x *Run) GetNumber() int64 { if x != nil { return x.Number } return 0 } func (x *Run) GetAttempt() int32 { if x != nil { return x.Attempt } return 0 } func (x *Run) GetWorkflowPath() string { if x != nil { return x.WorkflowPath } return "" } func (x *Run) GetWorkflowName() string { if x != nil { return x.WorkflowName } return "" } func (x *Run) GetTitle() string { if x != nil { return x.Title } return "" } func (x *Run) GetEvent() string { if x != nil { return x.Event } return "" } func (x *Run) GetRef() string { if x != nil { return x.Ref } return "" } func (x *Run) GetSha() string { if x != nil { return x.Sha } return "" } func (x *Run) GetActor() string { if x != nil { return x.Actor } return "" } func (x *Run) GetStatus() CiStatus { if x != nil { return x.Status } return CiStatus_CI_STATUS_UNSPECIFIED } func (x *Run) GetConclusion() CiConclusion { if x != nil { return x.Conclusion } return CiConclusion_CI_CONCLUSION_UNSPECIFIED } func (x *Run) GetError() string { if x != nil { return x.Error } return "" } func (x *Run) GetCreatedAt() *timestamppb.Timestamp { if x != nil { return x.CreatedAt } return nil } func (x *Run) GetStartedAt() *timestamppb.Timestamp { if x != nil { return x.StartedAt } return nil } func (x *Run) GetCompletedAt() *timestamppb.Timestamp { if x != nil { return x.CompletedAt } return nil } func (x *Run) GetVersion() int64 { if x != nil { return x.Version } return 0 } func (x *Run) GetName() string { if x != nil { return x.Name } return "" } // RunJob is a job of a run as people see it: the state of one job instance // (one matrix combination is one job) in one attempt. It is not Job, which is // what a runner receives. type RunJob struct { state protoimpl.MessageState `protogen:"open.v1"` // Id is the Job.job_id. It is the same in every attempt. Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // RunId is the run the job belongs to. RunId int64 `protobuf:"varint,2,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"` // Attempt is the attempt of the run in which this job executed. It is lower // than the attempt of the run when the job was kept from an earlier attempt // by a re-run of the failed jobs only; the log and steps are then those of // that earlier attempt. Pass it to GetJob and GetJobLog. Attempt int32 `protobuf:"varint,3,opt,name=attempt,proto3" json:"attempt,omitempty"` // Repo is the name of the repository. Repo string `protobuf:"bytes,4,opt,name=repo,proto3" json:"repo,omitempty"` // Key is the key of the job under "jobs:" in the workflow (the // "github.job"). Matrix instances of one job share it. Key string `protobuf:"bytes,5,opt,name=key,proto3" json:"key,omitempty"` // Name is the display name of the job, evaluated, with the matrix suffix as // GitHub names them, for example "build (linux, 1.27)". It is also the // name of the job's check. Name string `protobuf:"bytes,6,opt,name=name,proto3" json:"name,omitempty"` // Status is where the job is. A job waits QUEUED for a runner and for the // jobs it needs. Status CiStatus `protobuf:"varint,7,opt,name=status,proto3,enum=ermite.CiStatus" json:"status,omitempty"` // Conclusion is how the job ended. Unset until status is COMPLETED. Conclusion CiConclusion `protobuf:"varint,8,opt,name=conclusion,proto3,enum=ermite.CiConclusion" json:"conclusion,omitempty"` // Error explains a FAILURE, CANCELLED or TIMED_OUT that no step explains, in // GitHub's words where it has them: the runner was lost ("The self-hosted // runner: lost communication with the server..."), it received a // shutdown signal, no runner took the job within 24 hours, the log limit // was reached, the workflow uses a feature that is not supported yet // ("not supported yet: "). At most 4 KiB. Empty otherwise. Error string `protobuf:"bytes,9,opt,name=error,proto3" json:"error,omitempty"` // Labels are the runs-on labels of the job, evaluated. Empty while the job // is not planned yet. Labels []string `protobuf:"bytes,10,rep,name=labels,proto3" json:"labels,omitempty"` // Needs are the keys of the jobs this job needs, for drawing the graph. Needs []string `protobuf:"bytes,11,rep,name=needs,proto3" json:"needs,omitempty"` // RunnerId is the id of the runner that executed or is executing the job. // Empty while queued, and when the runner has since been removed (runner_name // and isolation are kept). RunnerId string `protobuf:"bytes,12,opt,name=runner_id,json=runnerId,proto3" json:"runner_id,omitempty"` // RunnerName is the name of that runner. Empty while queued. RunnerName string `protobuf:"bytes,13,opt,name=runner_name,json=runnerName,proto3" json:"runner_name,omitempty"` // Isolation is how that runner isolated the job. UNSPECIFIED while queued. Isolation RunnerIsolation `protobuf:"varint,14,opt,name=isolation,proto3,enum=ermite.RunnerIsolation" json:"isolation,omitempty"` // Steps are the steps reported so far, ordered by number, including the // implicit "Set up job" and "Complete job". Empty while queued. Always // set, including in JobUpdated events. Steps []*Step `protobuf:"bytes,15,rep,name=steps,proto3" json:"steps,omitempty"` // CreatedAt is when the job was created (planned). CreatedAt *timestamppb.Timestamp `protobuf:"bytes,16,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` // StartedAt is when the job was given to a runner. Unset until then. StartedAt *timestamppb.Timestamp `protobuf:"bytes,17,opt,name=started_at,json=startedAt,proto3" json:"started_at,omitempty"` // CompletedAt is when the job completed. Unset until then. CompletedAt *timestamppb.Timestamp `protobuf:"bytes,18,opt,name=completed_at,json=completedAt,proto3" json:"completed_at,omitempty"` // Version counts the changes of this job on the server (status, conclusion, // runner, steps, with any attempt): it grows by at least one at every change // and never goes back. A client that holds two copies of a job keeps the // one with the higher version and drops the other, as for Run.version. Version int64 `protobuf:"varint,19,opt,name=version,proto3" json:"version,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RunJob) Reset() { *x = RunJob{} mi := &file_ermite_run_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RunJob) String() string { return protoimpl.X.MessageStringOf(x) } func (*RunJob) ProtoMessage() {} func (x *RunJob) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[1] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RunJob.ProtoReflect.Descriptor instead. func (*RunJob) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{1} } func (x *RunJob) GetId() string { if x != nil { return x.Id } return "" } func (x *RunJob) GetRunId() int64 { if x != nil { return x.RunId } return 0 } func (x *RunJob) GetAttempt() int32 { if x != nil { return x.Attempt } return 0 } func (x *RunJob) GetRepo() string { if x != nil { return x.Repo } return "" } func (x *RunJob) GetKey() string { if x != nil { return x.Key } return "" } func (x *RunJob) GetName() string { if x != nil { return x.Name } return "" } func (x *RunJob) GetStatus() CiStatus { if x != nil { return x.Status } return CiStatus_CI_STATUS_UNSPECIFIED } func (x *RunJob) GetConclusion() CiConclusion { if x != nil { return x.Conclusion } return CiConclusion_CI_CONCLUSION_UNSPECIFIED } func (x *RunJob) GetError() string { if x != nil { return x.Error } return "" } func (x *RunJob) GetLabels() []string { if x != nil { return x.Labels } return nil } func (x *RunJob) GetNeeds() []string { if x != nil { return x.Needs } return nil } func (x *RunJob) GetRunnerId() string { if x != nil { return x.RunnerId } return "" } func (x *RunJob) GetRunnerName() string { if x != nil { return x.RunnerName } return "" } func (x *RunJob) GetIsolation() RunnerIsolation { if x != nil { return x.Isolation } return RunnerIsolation_RUNNER_ISOLATION_UNSPECIFIED } func (x *RunJob) GetSteps() []*Step { if x != nil { return x.Steps } return nil } func (x *RunJob) GetCreatedAt() *timestamppb.Timestamp { if x != nil { return x.CreatedAt } return nil } func (x *RunJob) GetStartedAt() *timestamppb.Timestamp { if x != nil { return x.StartedAt } return nil } func (x *RunJob) GetCompletedAt() *timestamppb.Timestamp { if x != nil { return x.CompletedAt } return nil } func (x *RunJob) GetVersion() int64 { if x != nil { return x.Version } return 0 } // Step is one step of a job, with where its lines are in the job log. type Step struct { state protoimpl.MessageState `protogen:"open.v1"` // Number is the 1-based number of the step in the job, the one the runner // uses in UpdateJob and AppendLog. Number int32 `protobuf:"varint,1,opt,name=number,proto3" json:"number,omitempty"` // Name is the display name of the step. Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` // State is where the step is. State StepState `protobuf:"varint,3,opt,name=state,proto3,enum=ermite.StepState" json:"state,omitempty"` // Conclusion is how the step ended. Unset until state is COMPLETED. Conclusion CiConclusion `protobuf:"varint,4,opt,name=conclusion,proto3,enum=ermite.CiConclusion" json:"conclusion,omitempty"` // StartedAt is when the step started. Unset while PENDING. StartedAt *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=started_at,json=startedAt,proto3" json:"started_at,omitempty"` // CompletedAt is when the step ended. Unset until COMPLETED. CompletedAt *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=completed_at,json=completedAt,proto3" json:"completed_at,omitempty"` // LogStart is the number of the first line of the step in the job log (the // offset of GetJobLogRequest and AppendLogRequest), counted from 0. LogStart int64 `protobuf:"varint,7,opt,name=log_start,json=logStart,proto3" json:"log_start,omitempty"` // LogEnd is the number of the line after the last one of the step. For an // IN_PROGRESS step it is the number of lines held at the time of the // call and grows; for a step without a line it equals log_start. LogEnd int64 `protobuf:"varint,8,opt,name=log_end,json=logEnd,proto3" json:"log_end,omitempty"` // Outcome is how the step ended before continue-on-error was applied, as // StepUpdate.outcome: it differs from conclusion only for a failed step with // continue-on-error. Unset until state is COMPLETED, and for a step stored // by a server or runner before this field existed (read it as conclusion). Outcome CiConclusion `protobuf:"varint,9,opt,name=outcome,proto3,enum=ermite.CiConclusion" json:"outcome,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *Step) Reset() { *x = Step{} mi := &file_ermite_run_proto_msgTypes[2] 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_ermite_run_proto_msgTypes[2] if 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_ermite_run_proto_rawDescGZIP(), []int{2} } func (x *Step) GetNumber() int32 { if x != nil { return x.Number } return 0 } func (x *Step) GetName() string { if x != nil { return x.Name } return "" } func (x *Step) GetState() StepState { if x != nil { return x.State } return StepState_STEP_STATE_UNSPECIFIED } func (x *Step) GetConclusion() CiConclusion { if x != nil { return x.Conclusion } return CiConclusion_CI_CONCLUSION_UNSPECIFIED } func (x *Step) GetStartedAt() *timestamppb.Timestamp { if x != nil { return x.StartedAt } return nil } func (x *Step) GetCompletedAt() *timestamppb.Timestamp { if x != nil { return x.CompletedAt } return nil } func (x *Step) GetLogStart() int64 { if x != nil { return x.LogStart } return 0 } func (x *Step) GetLogEnd() int64 { if x != nil { return x.LogEnd } return 0 } func (x *Step) GetOutcome() CiConclusion { if x != nil { return x.Outcome } return CiConclusion_CI_CONCLUSION_UNSPECIFIED } // Check is the result of one job on one commit, the unit shown next to a // commit or a merge request and counted by the merge rules. There is one per // job instance, named like GitHub's checks. type Check struct { state protoimpl.MessageState `protogen:"open.v1"` // Id identifies the check. It is opaque and stable across attempts. Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // Repo is the name of the repository. Repo string `protobuf:"bytes,2,opt,name=repo,proto3" json:"repo,omitempty"` // Sha is the full id of the commit. Sha string `protobuf:"bytes,3,opt,name=sha,proto3" json:"sha,omitempty"` // Name is the name of the check: the RunJob.name of the job. Name string `protobuf:"bytes,4,opt,name=name,proto3" json:"name,omitempty"` // Status is where the check is. Status CiStatus `protobuf:"varint,5,opt,name=status,proto3,enum=ermite.CiStatus" json:"status,omitempty"` // Conclusion is how the check ended. Unset until status is COMPLETED. The // value "stale" of GitHub is never used. Conclusion CiConclusion `protobuf:"varint,6,opt,name=conclusion,proto3,enum=ermite.CiConclusion" json:"conclusion,omitempty"` // RunId is the run of the job. RunId int64 `protobuf:"varint,7,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"` // JobId is the RunJob.id of the job, to open its page and log. JobId string `protobuf:"bytes,8,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` // Attempt is the attempt the check describes: the latest attempt of the run. Attempt int32 `protobuf:"varint,9,opt,name=attempt,proto3" json:"attempt,omitempty"` // WorkflowName is the Run.workflow_name of the run. WorkflowName string `protobuf:"bytes,10,opt,name=workflow_name,json=workflowName,proto3" json:"workflow_name,omitempty"` // StartedAt is when the job was given to a runner. Unset while queued. StartedAt *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=started_at,json=startedAt,proto3" json:"started_at,omitempty"` // CompletedAt is when the job completed. Unset until then. CompletedAt *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=completed_at,json=completedAt,proto3" json:"completed_at,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *Check) Reset() { *x = Check{} mi := &file_ermite_run_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *Check) String() string { return protoimpl.X.MessageStringOf(x) } func (*Check) ProtoMessage() {} func (x *Check) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[3] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Check.ProtoReflect.Descriptor instead. func (*Check) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{3} } func (x *Check) GetId() string { if x != nil { return x.Id } return "" } func (x *Check) GetRepo() string { if x != nil { return x.Repo } return "" } func (x *Check) GetSha() string { if x != nil { return x.Sha } return "" } func (x *Check) GetName() string { if x != nil { return x.Name } return "" } func (x *Check) GetStatus() CiStatus { if x != nil { return x.Status } return CiStatus_CI_STATUS_UNSPECIFIED } func (x *Check) GetConclusion() CiConclusion { if x != nil { return x.Conclusion } return CiConclusion_CI_CONCLUSION_UNSPECIFIED } func (x *Check) GetRunId() int64 { if x != nil { return x.RunId } return 0 } func (x *Check) GetJobId() string { if x != nil { return x.JobId } return "" } func (x *Check) GetAttempt() int32 { if x != nil { return x.Attempt } return 0 } func (x *Check) GetWorkflowName() string { if x != nil { return x.WorkflowName } return "" } func (x *Check) GetStartedAt() *timestamppb.Timestamp { if x != nil { return x.StartedAt } return nil } func (x *Check) GetCompletedAt() *timestamppb.Timestamp { if x != nil { return x.CompletedAt } return nil } // Runner is a registered CI runner. It never contains the runner token nor its // hash. type Runner struct { state protoimpl.MessageState `protogen:"open.v1"` // Id identifies the runner in RemoveRunner. It is not a secret. Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"` // Name is the unique name chosen at registration. Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` // Labels are all the labels the runner can match: the ones chosen at // registration plus the implicit ones ("self-hosted", the os and the arch), // lowercase, sorted. Labels []string `protobuf:"bytes,3,rep,name=labels,proto3" json:"labels,omitempty"` // Isolation is how the runner isolates jobs. Isolation RunnerIsolation `protobuf:"varint,4,opt,name=isolation,proto3,enum=ermite.RunnerIsolation" json:"isolation,omitempty"` // Version is the version of the runner software. Version string `protobuf:"bytes,5,opt,name=version,proto3" json:"version,omitempty"` // Arch is "x64" or "arm64". Arch string `protobuf:"bytes,6,opt,name=arch,proto3" json:"arch,omitempty"` // Os is "linux". Os string `protobuf:"bytes,7,opt,name=os,proto3" json:"os,omitempty"` // RegisteredAt is when the runner was registered. RegisteredAt *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=registered_at,json=registeredAt,proto3" json:"registered_at,omitempty"` // LastSeen is when the server last heard from the runner: a FetchJob poll or // a heartbeat of one of its jobs. Unset if never. It may lag behind the real // time by a short delay. A runner not seen for more than about 2 minutes is // offline. LastSeen *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=last_seen,json=lastSeen,proto3" json:"last_seen,omitempty"` // Busy is true while the runner has a job in progress. Busy bool `protobuf:"varint,10,opt,name=busy,proto3" json:"busy,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *Runner) Reset() { *x = Runner{} mi := &file_ermite_run_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *Runner) String() string { return protoimpl.X.MessageStringOf(x) } func (*Runner) ProtoMessage() {} func (x *Runner) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[4] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use Runner.ProtoReflect.Descriptor instead. func (*Runner) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{4} } func (x *Runner) GetId() string { if x != nil { return x.Id } return "" } func (x *Runner) GetName() string { if x != nil { return x.Name } return "" } func (x *Runner) GetLabels() []string { if x != nil { return x.Labels } return nil } func (x *Runner) GetIsolation() RunnerIsolation { if x != nil { return x.Isolation } return RunnerIsolation_RUNNER_ISOLATION_UNSPECIFIED } func (x *Runner) GetVersion() string { if x != nil { return x.Version } return "" } func (x *Runner) GetArch() string { if x != nil { return x.Arch } return "" } func (x *Runner) GetOs() string { if x != nil { return x.Os } return "" } func (x *Runner) GetRegisteredAt() *timestamppb.Timestamp { if x != nil { return x.RegisteredAt } return nil } func (x *Runner) GetLastSeen() *timestamppb.Timestamp { if x != nil { return x.LastSeen } return nil } func (x *Runner) GetBusy() bool { if x != nil { return x.Busy } return false } // ListRunsRequest selects a page of runs. type ListRunsRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Repo is the repository name. Repo string `protobuf:"bytes,1,opt,name=repo,proto3" json:"repo,omitempty"` // PageSize is the maximum number of runs to return. PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` // PageToken is the next_page_token of a previous response. Empty for the // first page. PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` // Workflow restricts the result to one workflow file: its path // (".github/workflows/ci.yml") or its file name ("ci.yml"). Empty means // every workflow. Ignored by servers without "ci.runs.filters". Workflow string `protobuf:"bytes,4,opt,name=workflow,proto3" json:"workflow,omitempty"` // Branch restricts the result to the runs whose ref is this branch, by // short name ("main"). Empty means every ref. Ignored by servers without // "ci.runs.filters". Branch string `protobuf:"bytes,5,opt,name=branch,proto3" json:"branch,omitempty"` // Status restricts the result to the runs whose latest attempt has this // status. CI_STATUS_UNSPECIFIED means every status. Ignored by servers // without "ci.runs.filters". Status CiStatus `protobuf:"varint,6,opt,name=status,proto3,enum=ermite.CiStatus" json:"status,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ListRunsRequest) Reset() { *x = ListRunsRequest{} mi := &file_ermite_run_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ListRunsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListRunsRequest) ProtoMessage() {} func (x *ListRunsRequest) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[5] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ListRunsRequest.ProtoReflect.Descriptor instead. func (*ListRunsRequest) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{5} } func (x *ListRunsRequest) GetRepo() string { if x != nil { return x.Repo } return "" } func (x *ListRunsRequest) GetPageSize() int32 { if x != nil { return x.PageSize } return 0 } func (x *ListRunsRequest) GetPageToken() string { if x != nil { return x.PageToken } return "" } func (x *ListRunsRequest) GetWorkflow() string { if x != nil { return x.Workflow } return "" } func (x *ListRunsRequest) GetBranch() string { if x != nil { return x.Branch } return "" } func (x *ListRunsRequest) GetStatus() CiStatus { if x != nil { return x.Status } return CiStatus_CI_STATUS_UNSPECIFIED } // ListRunsResponse is one page of runs. type ListRunsResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Runs are the runs of this page, highest id first, without jobs. Runs []*Run `protobuf:"bytes,1,rep,name=runs,proto3" json:"runs,omitempty"` // NextPageToken is passed as page_token to get the next page. Empty when // there is no next page. NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ListRunsResponse) Reset() { *x = ListRunsResponse{} mi := &file_ermite_run_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ListRunsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListRunsResponse) ProtoMessage() {} func (x *ListRunsResponse) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[6] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ListRunsResponse.ProtoReflect.Descriptor instead. func (*ListRunsResponse) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{6} } func (x *ListRunsResponse) GetRuns() []*Run { if x != nil { return x.Runs } return nil } func (x *ListRunsResponse) GetNextPageToken() string { if x != nil { return x.NextPageToken } return "" } // GetRunRequest selects a run. type GetRunRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Repo is the repository name. Repo string `protobuf:"bytes,1,opt,name=repo,proto3" json:"repo,omitempty"` // RunId is the Run.id. RunId int64 `protobuf:"varint,2,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"` // Attempt is the attempt to read. 0 means the latest. Attempt int32 `protobuf:"varint,3,opt,name=attempt,proto3" json:"attempt,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *GetRunRequest) Reset() { *x = GetRunRequest{} mi := &file_ermite_run_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *GetRunRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetRunRequest) ProtoMessage() {} func (x *GetRunRequest) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[7] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetRunRequest.ProtoReflect.Descriptor instead. func (*GetRunRequest) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{7} } func (x *GetRunRequest) GetRepo() string { if x != nil { return x.Repo } return "" } func (x *GetRunRequest) GetRunId() int64 { if x != nil { return x.RunId } return 0 } func (x *GetRunRequest) GetAttempt() int32 { if x != nil { return x.Attempt } return 0 } // GetRunResponse holds a run with its jobs. type GetRunResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Run is the run, as of the attempt asked. Run *Run `protobuf:"bytes,1,opt,name=run,proto3" json:"run,omitempty"` // Jobs are the jobs of that attempt, with their steps, in the order of the // workflow file (matrix instances in the order of the matrix). Jobs kept from // an earlier attempt by a re-run of failed jobs are included, with their own // RunJob.attempt. Empty for a run that failed on an invalid workflow file. Jobs []*RunJob `protobuf:"bytes,2,rep,name=jobs,proto3" json:"jobs,omitempty"` // LatestAttempt is the latest attempt of the run, to offer the other ones. LatestAttempt int32 `protobuf:"varint,3,opt,name=latest_attempt,json=latestAttempt,proto3" json:"latest_attempt,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *GetRunResponse) Reset() { *x = GetRunResponse{} mi := &file_ermite_run_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *GetRunResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetRunResponse) ProtoMessage() {} func (x *GetRunResponse) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[8] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetRunResponse.ProtoReflect.Descriptor instead. func (*GetRunResponse) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{8} } func (x *GetRunResponse) GetRun() *Run { if x != nil { return x.Run } return nil } func (x *GetRunResponse) GetJobs() []*RunJob { if x != nil { return x.Jobs } return nil } func (x *GetRunResponse) GetLatestAttempt() int32 { if x != nil { return x.LatestAttempt } return 0 } // GetJobRequest selects a job. type GetJobRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Repo is the repository name. Repo string `protobuf:"bytes,1,opt,name=repo,proto3" json:"repo,omitempty"` // JobId is the RunJob.id. JobId string `protobuf:"bytes,2,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` // Attempt is the RunJob.attempt to read. 0 means the latest. Attempt int32 `protobuf:"varint,3,opt,name=attempt,proto3" json:"attempt,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *GetJobRequest) Reset() { *x = GetJobRequest{} mi := &file_ermite_run_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *GetJobRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetJobRequest) ProtoMessage() {} func (x *GetJobRequest) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[9] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetJobRequest.ProtoReflect.Descriptor instead. func (*GetJobRequest) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{9} } func (x *GetJobRequest) GetRepo() string { if x != nil { return x.Repo } return "" } func (x *GetJobRequest) GetJobId() string { if x != nil { return x.JobId } return "" } func (x *GetJobRequest) GetAttempt() int32 { if x != nil { return x.Attempt } return 0 } // GetJobResponse holds a job. type GetJobResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Job is the job with its steps. Job *RunJob `protobuf:"bytes,1,opt,name=job,proto3" json:"job,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *GetJobResponse) Reset() { *x = GetJobResponse{} mi := &file_ermite_run_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *GetJobResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetJobResponse) ProtoMessage() {} func (x *GetJobResponse) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[10] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetJobResponse.ProtoReflect.Descriptor instead. func (*GetJobResponse) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{10} } func (x *GetJobResponse) GetJob() *RunJob { if x != nil { return x.Job } return nil } // ListAnnotationsRequest selects the annotations of a run. type ListAnnotationsRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Repo is the repository name. Repo string `protobuf:"bytes,1,opt,name=repo,proto3" json:"repo,omitempty"` // RunId is the Run.id. RunId int64 `protobuf:"varint,2,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"` // Attempt is the attempt to read. 0 means the latest, and then each job // contributes the annotations of its own RunJob.attempt (not necessarily the // latest attempt of the run, see ListAnnotations). Attempt int32 `protobuf:"varint,3,opt,name=attempt,proto3" json:"attempt,omitempty"` // JobId restricts the result to one job (RunJob.id). Empty means every job // of the run. JobId string `protobuf:"bytes,4,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ListAnnotationsRequest) Reset() { *x = ListAnnotationsRequest{} mi := &file_ermite_run_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ListAnnotationsRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListAnnotationsRequest) ProtoMessage() {} func (x *ListAnnotationsRequest) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[11] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ListAnnotationsRequest.ProtoReflect.Descriptor instead. func (*ListAnnotationsRequest) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{11} } func (x *ListAnnotationsRequest) GetRepo() string { if x != nil { return x.Repo } return "" } func (x *ListAnnotationsRequest) GetRunId() int64 { if x != nil { return x.RunId } return 0 } func (x *ListAnnotationsRequest) GetAttempt() int32 { if x != nil { return x.Attempt } return 0 } func (x *ListAnnotationsRequest) GetJobId() string { if x != nil { return x.JobId } return "" } // ListAnnotationsResponse holds the annotations of a run. type ListAnnotationsResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Annotations are the annotations, at most 1,000. Annotations []*JobAnnotation `protobuf:"bytes,1,rep,name=annotations,proto3" json:"annotations,omitempty"` // Truncated is true when there are more annotations than annotations holds. Truncated bool `protobuf:"varint,2,opt,name=truncated,proto3" json:"truncated,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ListAnnotationsResponse) Reset() { *x = ListAnnotationsResponse{} mi := &file_ermite_run_proto_msgTypes[12] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ListAnnotationsResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListAnnotationsResponse) ProtoMessage() {} func (x *ListAnnotationsResponse) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[12] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ListAnnotationsResponse.ProtoReflect.Descriptor instead. func (*ListAnnotationsResponse) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{12} } func (x *ListAnnotationsResponse) GetAnnotations() []*JobAnnotation { if x != nil { return x.Annotations } return nil } func (x *ListAnnotationsResponse) GetTruncated() bool { if x != nil { return x.Truncated } return false } // JobAnnotation is an annotation with the job it belongs to. type JobAnnotation struct { state protoimpl.MessageState `protogen:"open.v1"` // JobId is the RunJob.id of the job. JobId string `protobuf:"bytes,1,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` // Annotation is the annotation as the runner sent it, after the server // checked it. Its step_number is the step of the job. Annotation *Annotation `protobuf:"bytes,2,opt,name=annotation,proto3" json:"annotation,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *JobAnnotation) Reset() { *x = JobAnnotation{} mi := &file_ermite_run_proto_msgTypes[13] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *JobAnnotation) String() string { return protoimpl.X.MessageStringOf(x) } func (*JobAnnotation) ProtoMessage() {} func (x *JobAnnotation) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[13] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use JobAnnotation.ProtoReflect.Descriptor instead. func (*JobAnnotation) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{13} } func (x *JobAnnotation) GetJobId() string { if x != nil { return x.JobId } return "" } func (x *JobAnnotation) GetAnnotation() *Annotation { if x != nil { return x.Annotation } return nil } // GetStepSummariesRequest selects a job. type GetStepSummariesRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Repo is the repository name. Repo string `protobuf:"bytes,1,opt,name=repo,proto3" json:"repo,omitempty"` // JobId is the RunJob.id. JobId string `protobuf:"bytes,2,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` // Attempt is the RunJob.attempt to read. 0 means the latest. Attempt int32 `protobuf:"varint,3,opt,name=attempt,proto3" json:"attempt,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *GetStepSummariesRequest) Reset() { *x = GetStepSummariesRequest{} mi := &file_ermite_run_proto_msgTypes[14] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *GetStepSummariesRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetStepSummariesRequest) ProtoMessage() {} func (x *GetStepSummariesRequest) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[14] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetStepSummariesRequest.ProtoReflect.Descriptor instead. func (*GetStepSummariesRequest) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{14} } func (x *GetStepSummariesRequest) GetRepo() string { if x != nil { return x.Repo } return "" } func (x *GetStepSummariesRequest) GetJobId() string { if x != nil { return x.JobId } return "" } func (x *GetStepSummariesRequest) GetAttempt() int32 { if x != nil { return x.Attempt } return 0 } // GetStepSummariesResponse holds the summaries of a job. type GetStepSummariesResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Summaries are the summaries of the steps that have one, ordered by step // number: at most 20, the first 20 steps having one. Summaries []*StepSummary `protobuf:"bytes,1,rep,name=summaries,proto3" json:"summaries,omitempty"` // Truncated is true when the job has more than 20 steps with a summary and // summaries holds only the first 20. Truncated bool `protobuf:"varint,2,opt,name=truncated,proto3" json:"truncated,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *GetStepSummariesResponse) Reset() { *x = GetStepSummariesResponse{} mi := &file_ermite_run_proto_msgTypes[15] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *GetStepSummariesResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetStepSummariesResponse) ProtoMessage() {} func (x *GetStepSummariesResponse) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[15] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetStepSummariesResponse.ProtoReflect.Descriptor instead. func (*GetStepSummariesResponse) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{15} } func (x *GetStepSummariesResponse) GetSummaries() []*StepSummary { if x != nil { return x.Summaries } return nil } func (x *GetStepSummariesResponse) GetTruncated() bool { if x != nil { return x.Truncated } return false } // StepSummary is the job summary of one step. type StepSummary struct { state protoimpl.MessageState `protogen:"open.v1"` // StepNumber is the number of the step (see Step.number). StepNumber int32 `protobuf:"varint,1,opt,name=step_number,json=stepNumber,proto3" json:"step_number,omitempty"` // Markdown is the summary as uploaded, at most 1 MiB. Clients render it // safely: it is untrusted content (raw HTML and script URLs must not run). Markdown string `protobuf:"bytes,2,opt,name=markdown,proto3" json:"markdown,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *StepSummary) Reset() { *x = StepSummary{} mi := &file_ermite_run_proto_msgTypes[16] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *StepSummary) String() string { return protoimpl.X.MessageStringOf(x) } func (*StepSummary) ProtoMessage() {} func (x *StepSummary) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[16] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use StepSummary.ProtoReflect.Descriptor instead. func (*StepSummary) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{16} } func (x *StepSummary) GetStepNumber() int32 { if x != nil { return x.StepNumber } return 0 } func (x *StepSummary) GetMarkdown() string { if x != nil { return x.Markdown } return "" } // GetJobLogRequest selects the lines to stream. type GetJobLogRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Repo is the repository name. Repo string `protobuf:"bytes,1,opt,name=repo,proto3" json:"repo,omitempty"` // JobId is the RunJob.id. JobId string `protobuf:"bytes,2,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` // Attempt is the RunJob.attempt whose log to read. 0 means the latest. Attempt int32 `protobuf:"varint,3,opt,name=attempt,proto3" json:"attempt,omitempty"` // Offset is the number of the first line to send, counted from 0 across all // steps (see Step.log_start). Negative is invalid_argument. Offset int64 `protobuf:"varint,4,opt,name=offset,proto3" json:"offset,omitempty"` // Follow keeps the stream open while the job runs. See GetJobLog. Follow bool `protobuf:"varint,5,opt,name=follow,proto3" json:"follow,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *GetJobLogRequest) Reset() { *x = GetJobLogRequest{} mi := &file_ermite_run_proto_msgTypes[17] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *GetJobLogRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetJobLogRequest) ProtoMessage() {} func (x *GetJobLogRequest) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[17] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetJobLogRequest.ProtoReflect.Descriptor instead. func (*GetJobLogRequest) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{17} } func (x *GetJobLogRequest) GetRepo() string { if x != nil { return x.Repo } return "" } func (x *GetJobLogRequest) GetJobId() string { if x != nil { return x.JobId } return "" } func (x *GetJobLogRequest) GetAttempt() int32 { if x != nil { return x.Attempt } return 0 } func (x *GetJobLogRequest) GetOffset() int64 { if x != nil { return x.Offset } return 0 } func (x *GetJobLogRequest) GetFollow() bool { if x != nil { return x.Follow } return false } // GetJobLogResponse is one message of the log stream. type GetJobLogResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Offset is the number of the first line of lines. Offset int64 `protobuf:"varint,1,opt,name=offset,proto3" json:"offset,omitempty"` // Lines are consecutive lines of the log, at most 1,000, at most 64 KiB of // text in total. Never empty. Lines []*JobLogLine `protobuf:"bytes,2,rep,name=lines,proto3" json:"lines,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *GetJobLogResponse) Reset() { *x = GetJobLogResponse{} mi := &file_ermite_run_proto_msgTypes[18] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *GetJobLogResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*GetJobLogResponse) ProtoMessage() {} func (x *GetJobLogResponse) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[18] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use GetJobLogResponse.ProtoReflect.Descriptor instead. func (*GetJobLogResponse) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{18} } func (x *GetJobLogResponse) GetOffset() int64 { if x != nil { return x.Offset } return 0 } func (x *GetJobLogResponse) GetLines() []*JobLogLine { if x != nil { return x.Lines } return nil } // JobLogLine is one line of a job log, as the runner sent it. type JobLogLine struct { state protoimpl.MessageState `protogen:"open.v1"` // Step is the number of the step the line belongs to. Step int32 `protobuf:"varint,1,opt,name=step,proto3" json:"step,omitempty"` // Time is when the runner produced the line, with nanosecond precision. Time *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=time,proto3" json:"time,omitempty"` // Text is the line without its terminator, as in LogLine.text, including the // "##[group]" and "##[endgroup]" markers. Clients show it escaped. Text string `protobuf:"bytes,3,opt,name=text,proto3" json:"text,omitempty"` // Continued is true when the line continues the line before it, which was // too long for the runner to send whole (see LogLine.continued). Pieces keep // their own line numbers, so offsets are the same as the runner's; a client // that shows lines joins a continued line to the previous one. The raw log // file already has them joined. Continued bool `protobuf:"varint,4,opt,name=continued,proto3" json:"continued,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *JobLogLine) Reset() { *x = JobLogLine{} mi := &file_ermite_run_proto_msgTypes[19] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *JobLogLine) String() string { return protoimpl.X.MessageStringOf(x) } func (*JobLogLine) ProtoMessage() {} func (x *JobLogLine) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[19] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use JobLogLine.ProtoReflect.Descriptor instead. func (*JobLogLine) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{19} } func (x *JobLogLine) GetStep() int32 { if x != nil { return x.Step } return 0 } func (x *JobLogLine) GetTime() *timestamppb.Timestamp { if x != nil { return x.Time } return nil } func (x *JobLogLine) GetText() string { if x != nil { return x.Text } return "" } func (x *JobLogLine) GetContinued() bool { if x != nil { return x.Continued } return false } // CancelRunRequest names the run to cancel. type CancelRunRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Repo is the repository name. Repo string `protobuf:"bytes,1,opt,name=repo,proto3" json:"repo,omitempty"` // RunId is the Run.id. RunId int64 `protobuf:"varint,2,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *CancelRunRequest) Reset() { *x = CancelRunRequest{} mi := &file_ermite_run_proto_msgTypes[20] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *CancelRunRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*CancelRunRequest) ProtoMessage() {} func (x *CancelRunRequest) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[20] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use CancelRunRequest.ProtoReflect.Descriptor instead. func (*CancelRunRequest) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{20} } func (x *CancelRunRequest) GetRepo() string { if x != nil { return x.Repo } return "" } func (x *CancelRunRequest) GetRunId() int64 { if x != nil { return x.RunId } return 0 } // CancelRunResponse holds the run after the request. type CancelRunResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Run is the latest attempt of the run. Run *Run `protobuf:"bytes,1,opt,name=run,proto3" json:"run,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *CancelRunResponse) Reset() { *x = CancelRunResponse{} mi := &file_ermite_run_proto_msgTypes[21] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *CancelRunResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*CancelRunResponse) ProtoMessage() {} func (x *CancelRunResponse) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[21] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use CancelRunResponse.ProtoReflect.Descriptor instead. func (*CancelRunResponse) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{21} } func (x *CancelRunResponse) GetRun() *Run { if x != nil { return x.Run } return nil } // RerunRunRequest names the run to run again. type RerunRunRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Repo is the repository name. Repo string `protobuf:"bytes,1,opt,name=repo,proto3" json:"repo,omitempty"` // RunId is the Run.id. RunId int64 `protobuf:"varint,2,opt,name=run_id,json=runId,proto3" json:"run_id,omitempty"` // FailedOnly runs again only the jobs of the latest attempt that did not // succeed (conclusion FAILURE, CANCELLED, TIMED_OUT or ACTION_REQUIRED) and // the jobs that need them, directly or not, even if they were skipped. The // other jobs keep their result, steps and log from the earlier attempt. When // false, every job runs again. FailedOnly bool `protobuf:"varint,3,opt,name=failed_only,json=failedOnly,proto3" json:"failed_only,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RerunRunRequest) Reset() { *x = RerunRunRequest{} mi := &file_ermite_run_proto_msgTypes[22] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RerunRunRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RerunRunRequest) ProtoMessage() {} func (x *RerunRunRequest) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[22] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RerunRunRequest.ProtoReflect.Descriptor instead. func (*RerunRunRequest) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{22} } func (x *RerunRunRequest) GetRepo() string { if x != nil { return x.Repo } return "" } func (x *RerunRunRequest) GetRunId() int64 { if x != nil { return x.RunId } return 0 } func (x *RerunRunRequest) GetFailedOnly() bool { if x != nil { return x.FailedOnly } return false } // RerunRunResponse holds the new attempt. type RerunRunResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Run is the run as of the new attempt, QUEUED. Run *Run `protobuf:"bytes,1,opt,name=run,proto3" json:"run,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RerunRunResponse) Reset() { *x = RerunRunResponse{} mi := &file_ermite_run_proto_msgTypes[23] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RerunRunResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RerunRunResponse) ProtoMessage() {} func (x *RerunRunResponse) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[23] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RerunRunResponse.ProtoReflect.Descriptor instead. func (*RerunRunResponse) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{23} } func (x *RerunRunResponse) GetRun() *Run { if x != nil { return x.Run } return nil } // ListChecksRequest names the commit. type ListChecksRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // Repo is the repository name. Repo string `protobuf:"bytes,1,opt,name=repo,proto3" json:"repo,omitempty"` // Sha is the full commit id (40 lowercase hexadecimal characters for SHA-1). // Abbreviations and names are invalid_argument. Sha string `protobuf:"bytes,2,opt,name=sha,proto3" json:"sha,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ListChecksRequest) Reset() { *x = ListChecksRequest{} mi := &file_ermite_run_proto_msgTypes[24] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ListChecksRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListChecksRequest) ProtoMessage() {} func (x *ListChecksRequest) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[24] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ListChecksRequest.ProtoReflect.Descriptor instead. func (*ListChecksRequest) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{24} } func (x *ListChecksRequest) GetRepo() string { if x != nil { return x.Repo } return "" } func (x *ListChecksRequest) GetSha() string { if x != nil { return x.Sha } return "" } // ListChecksResponse holds the checks of a commit. type ListChecksResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Checks are the checks of the commit, one per job of the latest attempt of // each run, ordered by creation time then name. Checks []*Check `protobuf:"bytes,1,rep,name=checks,proto3" json:"checks,omitempty"` // Truncated is true when the commit has more checks than checks holds. Truncated bool `protobuf:"varint,2,opt,name=truncated,proto3" json:"truncated,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ListChecksResponse) Reset() { *x = ListChecksResponse{} mi := &file_ermite_run_proto_msgTypes[25] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ListChecksResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListChecksResponse) ProtoMessage() {} func (x *ListChecksResponse) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[25] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ListChecksResponse.ProtoReflect.Descriptor instead. func (*ListChecksResponse) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{25} } func (x *ListChecksResponse) GetChecks() []*Check { if x != nil { return x.Checks } return nil } func (x *ListChecksResponse) GetTruncated() bool { if x != nil { return x.Truncated } return false } // ListRunnersRequest selects a page of runners. type ListRunnersRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // PageSize is the maximum number of runners to return. PageSize int32 `protobuf:"varint,1,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` // PageToken is the next_page_token of a previous response. Empty for the // first page. PageToken string `protobuf:"bytes,2,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ListRunnersRequest) Reset() { *x = ListRunnersRequest{} mi := &file_ermite_run_proto_msgTypes[26] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ListRunnersRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListRunnersRequest) ProtoMessage() {} func (x *ListRunnersRequest) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[26] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ListRunnersRequest.ProtoReflect.Descriptor instead. func (*ListRunnersRequest) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{26} } func (x *ListRunnersRequest) GetPageSize() int32 { if x != nil { return x.PageSize } return 0 } func (x *ListRunnersRequest) GetPageToken() string { if x != nil { return x.PageToken } return "" } // ListRunnersResponse is one page of runners. type ListRunnersResponse struct { state protoimpl.MessageState `protogen:"open.v1"` // Runners are the runners of this page, ordered by name. Runners []*Runner `protobuf:"bytes,1,rep,name=runners,proto3" json:"runners,omitempty"` // NextPageToken is passed as page_token to get the next page. Empty when // there is no next page. NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *ListRunnersResponse) Reset() { *x = ListRunnersResponse{} mi := &file_ermite_run_proto_msgTypes[27] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *ListRunnersResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*ListRunnersResponse) ProtoMessage() {} func (x *ListRunnersResponse) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[27] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use ListRunnersResponse.ProtoReflect.Descriptor instead. func (*ListRunnersResponse) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{27} } func (x *ListRunnersResponse) GetRunners() []*Runner { if x != nil { return x.Runners } return nil } func (x *ListRunnersResponse) GetNextPageToken() string { if x != nil { return x.NextPageToken } return "" } // RemoveRunnerRequest names the runner to remove. type RemoveRunnerRequest struct { state protoimpl.MessageState `protogen:"open.v1"` // RunnerId is the Runner.id. RunnerId string `protobuf:"bytes,1,opt,name=runner_id,json=runnerId,proto3" json:"runner_id,omitempty"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RemoveRunnerRequest) Reset() { *x = RemoveRunnerRequest{} mi := &file_ermite_run_proto_msgTypes[28] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RemoveRunnerRequest) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveRunnerRequest) ProtoMessage() {} func (x *RemoveRunnerRequest) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[28] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RemoveRunnerRequest.ProtoReflect.Descriptor instead. func (*RemoveRunnerRequest) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{28} } func (x *RemoveRunnerRequest) GetRunnerId() string { if x != nil { return x.RunnerId } return "" } // RemoveRunnerResponse is empty. type RemoveRunnerResponse struct { state protoimpl.MessageState `protogen:"open.v1"` unknownFields protoimpl.UnknownFields sizeCache protoimpl.SizeCache } func (x *RemoveRunnerResponse) Reset() { *x = RemoveRunnerResponse{} mi := &file_ermite_run_proto_msgTypes[29] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } func (x *RemoveRunnerResponse) String() string { return protoimpl.X.MessageStringOf(x) } func (*RemoveRunnerResponse) ProtoMessage() {} func (x *RemoveRunnerResponse) ProtoReflect() protoreflect.Message { mi := &file_ermite_run_proto_msgTypes[29] if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) } return ms } return mi.MessageOf(x) } // Deprecated: Use RemoveRunnerResponse.ProtoReflect.Descriptor instead. func (*RemoveRunnerResponse) Descriptor() ([]byte, []int) { return file_ermite_run_proto_rawDescGZIP(), []int{29} } var File_ermite_run_proto protoreflect.FileDescriptor const file_ermite_run_proto_rawDesc = "" + "\n" + "\x10ermite/run.proto\x12\x06ermite\x1a\x13ermite/runner.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xe4\x04\n" + "\x03Run\x12\x12\n" + "\x04repo\x18\x01 \x01(\tR\x04repo\x12\x0e\n" + "\x02id\x18\x02 \x01(\x03R\x02id\x12\x16\n" + "\x06number\x18\x03 \x01(\x03R\x06number\x12\x18\n" + "\aattempt\x18\x04 \x01(\x05R\aattempt\x12#\n" + "\rworkflow_path\x18\x05 \x01(\tR\fworkflowPath\x12#\n" + "\rworkflow_name\x18\x06 \x01(\tR\fworkflowName\x12\x14\n" + "\x05title\x18\a \x01(\tR\x05title\x12\x14\n" + "\x05event\x18\b \x01(\tR\x05event\x12\x10\n" + "\x03ref\x18\t \x01(\tR\x03ref\x12\x10\n" + "\x03sha\x18\n" + " \x01(\tR\x03sha\x12\x14\n" + "\x05actor\x18\v \x01(\tR\x05actor\x12(\n" + "\x06status\x18\f \x01(\x0e2\x10.ermite.CiStatusR\x06status\x124\n" + "\n" + "conclusion\x18\r \x01(\x0e2\x14.ermite.CiConclusionR\n" + "conclusion\x12\x14\n" + "\x05error\x18\x0e \x01(\tR\x05error\x129\n" + "\n" + "created_at\x18\x0f \x01(\v2\x1a.google.protobuf.TimestampR\tcreatedAt\x129\n" + "\n" + "started_at\x18\x10 \x01(\v2\x1a.google.protobuf.TimestampR\tstartedAt\x12=\n" + "\fcompleted_at\x18\x11 \x01(\v2\x1a.google.protobuf.TimestampR\vcompletedAt\x12\x18\n" + "\aversion\x18\x12 \x01(\x03R\aversion\x12\x12\n" + "\x04name\x18\x13 \x01(\tR\x04name\"\x8f\x05\n" + "\x06RunJob\x12\x0e\n" + "\x02id\x18\x01 \x01(\tR\x02id\x12\x15\n" + "\x06run_id\x18\x02 \x01(\x03R\x05runId\x12\x18\n" + "\aattempt\x18\x03 \x01(\x05R\aattempt\x12\x12\n" + "\x04repo\x18\x04 \x01(\tR\x04repo\x12\x10\n" + "\x03key\x18\x05 \x01(\tR\x03key\x12\x12\n" + "\x04name\x18\x06 \x01(\tR\x04name\x12(\n" + "\x06status\x18\a \x01(\x0e2\x10.ermite.CiStatusR\x06status\x124\n" + "\n" + "conclusion\x18\b \x01(\x0e2\x14.ermite.CiConclusionR\n" + "conclusion\x12\x14\n" + "\x05error\x18\t \x01(\tR\x05error\x12\x16\n" + "\x06labels\x18\n" + " \x03(\tR\x06labels\x12\x14\n" + "\x05needs\x18\v \x03(\tR\x05needs\x12\x1b\n" + "\trunner_id\x18\f \x01(\tR\brunnerId\x12\x1f\n" + "\vrunner_name\x18\r \x01(\tR\n" + "runnerName\x125\n" + "\tisolation\x18\x0e \x01(\x0e2\x17.ermite.RunnerIsolationR\tisolation\x12\"\n" + "\x05steps\x18\x0f \x03(\v2\f.ermite.StepR\x05steps\x129\n" + "\n" + "created_at\x18\x10 \x01(\v2\x1a.google.protobuf.TimestampR\tcreatedAt\x129\n" + "\n" + "started_at\x18\x11 \x01(\v2\x1a.google.protobuf.TimestampR\tstartedAt\x12=\n" + "\fcompleted_at\x18\x12 \x01(\v2\x1a.google.protobuf.TimestampR\vcompletedAt\x12\x18\n" + "\aversion\x18\x13 \x01(\x03R\aversion\"\xf1\x02\n" + "\x04Step\x12\x16\n" + "\x06number\x18\x01 \x01(\x05R\x06number\x12\x12\n" + "\x04name\x18\x02 \x01(\tR\x04name\x12'\n" + "\x05state\x18\x03 \x01(\x0e2\x11.ermite.StepStateR\x05state\x124\n" + "\n" + "conclusion\x18\x04 \x01(\x0e2\x14.ermite.CiConclusionR\n" + "conclusion\x129\n" + "\n" + "started_at\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampR\tstartedAt\x12=\n" + "\fcompleted_at\x18\x06 \x01(\v2\x1a.google.protobuf.TimestampR\vcompletedAt\x12\x1b\n" + "\tlog_start\x18\a \x01(\x03R\blogStart\x12\x17\n" + "\alog_end\x18\b \x01(\x03R\x06logEnd\x12.\n" + "\aoutcome\x18\t \x01(\x0e2\x14.ermite.CiConclusionR\aoutcome\"\x98\x03\n" + "\x05Check\x12\x0e\n" + "\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" + "\x04repo\x18\x02 \x01(\tR\x04repo\x12\x10\n" + "\x03sha\x18\x03 \x01(\tR\x03sha\x12\x12\n" + "\x04name\x18\x04 \x01(\tR\x04name\x12(\n" + "\x06status\x18\x05 \x01(\x0e2\x10.ermite.CiStatusR\x06status\x124\n" + "\n" + "conclusion\x18\x06 \x01(\x0e2\x14.ermite.CiConclusionR\n" + "conclusion\x12\x15\n" + "\x06run_id\x18\a \x01(\x03R\x05runId\x12\x15\n" + "\x06job_id\x18\b \x01(\tR\x05jobId\x12\x18\n" + "\aattempt\x18\t \x01(\x05R\aattempt\x12#\n" + "\rworkflow_name\x18\n" + " \x01(\tR\fworkflowName\x129\n" + "\n" + "started_at\x18\v \x01(\v2\x1a.google.protobuf.TimestampR\tstartedAt\x12=\n" + "\fcompleted_at\x18\f \x01(\v2\x1a.google.protobuf.TimestampR\vcompletedAt\"\xc7\x02\n" + "\x06Runner\x12\x0e\n" + "\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" + "\x04name\x18\x02 \x01(\tR\x04name\x12\x16\n" + "\x06labels\x18\x03 \x03(\tR\x06labels\x125\n" + "\tisolation\x18\x04 \x01(\x0e2\x17.ermite.RunnerIsolationR\tisolation\x12\x18\n" + "\aversion\x18\x05 \x01(\tR\aversion\x12\x12\n" + "\x04arch\x18\x06 \x01(\tR\x04arch\x12\x0e\n" + "\x02os\x18\a \x01(\tR\x02os\x12?\n" + "\rregistered_at\x18\b \x01(\v2\x1a.google.protobuf.TimestampR\fregisteredAt\x127\n" + "\tlast_seen\x18\t \x01(\v2\x1a.google.protobuf.TimestampR\blastSeen\x12\x12\n" + "\x04busy\x18\n" + " \x01(\bR\x04busy\"\xbf\x01\n" + "\x0fListRunsRequest\x12\x12\n" + "\x04repo\x18\x01 \x01(\tR\x04repo\x12\x1b\n" + "\tpage_size\x18\x02 \x01(\x05R\bpageSize\x12\x1d\n" + "\n" + "page_token\x18\x03 \x01(\tR\tpageToken\x12\x1a\n" + "\bworkflow\x18\x04 \x01(\tR\bworkflow\x12\x16\n" + "\x06branch\x18\x05 \x01(\tR\x06branch\x12(\n" + "\x06status\x18\x06 \x01(\x0e2\x10.ermite.CiStatusR\x06status\"[\n" + "\x10ListRunsResponse\x12\x1f\n" + "\x04runs\x18\x01 \x03(\v2\v.ermite.RunR\x04runs\x12&\n" + "\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"T\n" + "\rGetRunRequest\x12\x12\n" + "\x04repo\x18\x01 \x01(\tR\x04repo\x12\x15\n" + "\x06run_id\x18\x02 \x01(\x03R\x05runId\x12\x18\n" + "\aattempt\x18\x03 \x01(\x05R\aattempt\"z\n" + "\x0eGetRunResponse\x12\x1d\n" + "\x03run\x18\x01 \x01(\v2\v.ermite.RunR\x03run\x12\"\n" + "\x04jobs\x18\x02 \x03(\v2\x0e.ermite.RunJobR\x04jobs\x12%\n" + "\x0elatest_attempt\x18\x03 \x01(\x05R\rlatestAttempt\"T\n" + "\rGetJobRequest\x12\x12\n" + "\x04repo\x18\x01 \x01(\tR\x04repo\x12\x15\n" + "\x06job_id\x18\x02 \x01(\tR\x05jobId\x12\x18\n" + "\aattempt\x18\x03 \x01(\x05R\aattempt\"2\n" + "\x0eGetJobResponse\x12 \n" + "\x03job\x18\x01 \x01(\v2\x0e.ermite.RunJobR\x03job\"t\n" + "\x16ListAnnotationsRequest\x12\x12\n" + "\x04repo\x18\x01 \x01(\tR\x04repo\x12\x15\n" + "\x06run_id\x18\x02 \x01(\x03R\x05runId\x12\x18\n" + "\aattempt\x18\x03 \x01(\x05R\aattempt\x12\x15\n" + "\x06job_id\x18\x04 \x01(\tR\x05jobId\"p\n" + "\x17ListAnnotationsResponse\x127\n" + "\vannotations\x18\x01 \x03(\v2\x15.ermite.JobAnnotationR\vannotations\x12\x1c\n" + "\ttruncated\x18\x02 \x01(\bR\ttruncated\"Z\n" + "\rJobAnnotation\x12\x15\n" + "\x06job_id\x18\x01 \x01(\tR\x05jobId\x122\n" + "\n" + "annotation\x18\x02 \x01(\v2\x12.ermite.AnnotationR\n" + "annotation\"^\n" + "\x17GetStepSummariesRequest\x12\x12\n" + "\x04repo\x18\x01 \x01(\tR\x04repo\x12\x15\n" + "\x06job_id\x18\x02 \x01(\tR\x05jobId\x12\x18\n" + "\aattempt\x18\x03 \x01(\x05R\aattempt\"k\n" + "\x18GetStepSummariesResponse\x121\n" + "\tsummaries\x18\x01 \x03(\v2\x13.ermite.StepSummaryR\tsummaries\x12\x1c\n" + "\ttruncated\x18\x02 \x01(\bR\ttruncated\"J\n" + "\vStepSummary\x12\x1f\n" + "\vstep_number\x18\x01 \x01(\x05R\n" + "stepNumber\x12\x1a\n" + "\bmarkdown\x18\x02 \x01(\tR\bmarkdown\"\x87\x01\n" + "\x10GetJobLogRequest\x12\x12\n" + "\x04repo\x18\x01 \x01(\tR\x04repo\x12\x15\n" + "\x06job_id\x18\x02 \x01(\tR\x05jobId\x12\x18\n" + "\aattempt\x18\x03 \x01(\x05R\aattempt\x12\x16\n" + "\x06offset\x18\x04 \x01(\x03R\x06offset\x12\x16\n" + "\x06follow\x18\x05 \x01(\bR\x06follow\"U\n" + "\x11GetJobLogResponse\x12\x16\n" + "\x06offset\x18\x01 \x01(\x03R\x06offset\x12(\n" + "\x05lines\x18\x02 \x03(\v2\x12.ermite.JobLogLineR\x05lines\"\x82\x01\n" + "\n" + "JobLogLine\x12\x12\n" + "\x04step\x18\x01 \x01(\x05R\x04step\x12.\n" + "\x04time\x18\x02 \x01(\v2\x1a.google.protobuf.TimestampR\x04time\x12\x12\n" + "\x04text\x18\x03 \x01(\tR\x04text\x12\x1c\n" + "\tcontinued\x18\x04 \x01(\bR\tcontinued\"=\n" + "\x10CancelRunRequest\x12\x12\n" + "\x04repo\x18\x01 \x01(\tR\x04repo\x12\x15\n" + "\x06run_id\x18\x02 \x01(\x03R\x05runId\"2\n" + "\x11CancelRunResponse\x12\x1d\n" + "\x03run\x18\x01 \x01(\v2\v.ermite.RunR\x03run\"]\n" + "\x0fRerunRunRequest\x12\x12\n" + "\x04repo\x18\x01 \x01(\tR\x04repo\x12\x15\n" + "\x06run_id\x18\x02 \x01(\x03R\x05runId\x12\x1f\n" + "\vfailed_only\x18\x03 \x01(\bR\n" + "failedOnly\"1\n" + "\x10RerunRunResponse\x12\x1d\n" + "\x03run\x18\x01 \x01(\v2\v.ermite.RunR\x03run\"9\n" + "\x11ListChecksRequest\x12\x12\n" + "\x04repo\x18\x01 \x01(\tR\x04repo\x12\x10\n" + "\x03sha\x18\x02 \x01(\tR\x03sha\"Y\n" + "\x12ListChecksResponse\x12%\n" + "\x06checks\x18\x01 \x03(\v2\r.ermite.CheckR\x06checks\x12\x1c\n" + "\ttruncated\x18\x02 \x01(\bR\ttruncated\"P\n" + "\x12ListRunnersRequest\x12\x1b\n" + "\tpage_size\x18\x01 \x01(\x05R\bpageSize\x12\x1d\n" + "\n" + "page_token\x18\x02 \x01(\tR\tpageToken\"g\n" + "\x13ListRunnersResponse\x12(\n" + "\arunners\x18\x01 \x03(\v2\x0e.ermite.RunnerR\arunners\x12&\n" + "\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"2\n" + "\x13RemoveRunnerRequest\x12\x1b\n" + "\trunner_id\x18\x01 \x01(\tR\brunnerId\"\x16\n" + "\x14RemoveRunnerResponse2\x85\x06\n" + "\n" + "RunService\x12=\n" + "\bListRuns\x12\x17.ermite.ListRunsRequest\x1a\x18.ermite.ListRunsResponse\x127\n" + "\x06GetRun\x12\x15.ermite.GetRunRequest\x1a\x16.ermite.GetRunResponse\x127\n" + "\x06GetJob\x12\x15.ermite.GetJobRequest\x1a\x16.ermite.GetJobResponse\x12R\n" + "\x0fListAnnotations\x12\x1e.ermite.ListAnnotationsRequest\x1a\x1f.ermite.ListAnnotationsResponse\x12U\n" + "\x10GetStepSummaries\x12\x1f.ermite.GetStepSummariesRequest\x1a .ermite.GetStepSummariesResponse\x12B\n" + "\tGetJobLog\x12\x18.ermite.GetJobLogRequest\x1a\x19.ermite.GetJobLogResponse0\x01\x12@\n" + "\tCancelRun\x12\x18.ermite.CancelRunRequest\x1a\x19.ermite.CancelRunResponse\x12=\n" + "\bRerunRun\x12\x17.ermite.RerunRunRequest\x1a\x18.ermite.RerunRunResponse\x12C\n" + "\n" + "ListChecks\x12\x19.ermite.ListChecksRequest\x1a\x1a.ermite.ListChecksResponse\x12F\n" + "\vListRunners\x12\x1a.ermite.ListRunnersRequest\x1a\x1b.ermite.ListRunnersResponse\x12I\n" + "\fRemoveRunner\x12\x1b.ermite.RemoveRunnerRequest\x1a\x1c.ermite.RemoveRunnerResponseBo\n" + "\n" + "com.ermiteB\bRunProtoP\x01Z\x1fbnema.dev/ermite-api/gen/ermite\xa2\x02\x03EXX\xaa\x02\x06Ermite\xca\x02\x06Ermite\xe2\x02\x12Ermite\\GPBMetadata\xea\x02\x06Ermiteb\x06proto3" var ( file_ermite_run_proto_rawDescOnce sync.Once file_ermite_run_proto_rawDescData []byte ) func file_ermite_run_proto_rawDescGZIP() []byte { file_ermite_run_proto_rawDescOnce.Do(func() { file_ermite_run_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_ermite_run_proto_rawDesc), len(file_ermite_run_proto_rawDesc))) }) return file_ermite_run_proto_rawDescData } var file_ermite_run_proto_msgTypes = make([]protoimpl.MessageInfo, 30) var file_ermite_run_proto_goTypes = []any{ (*Run)(nil), // 0: ermite.Run (*RunJob)(nil), // 1: ermite.RunJob (*Step)(nil), // 2: ermite.Step (*Check)(nil), // 3: ermite.Check (*Runner)(nil), // 4: ermite.Runner (*ListRunsRequest)(nil), // 5: ermite.ListRunsRequest (*ListRunsResponse)(nil), // 6: ermite.ListRunsResponse (*GetRunRequest)(nil), // 7: ermite.GetRunRequest (*GetRunResponse)(nil), // 8: ermite.GetRunResponse (*GetJobRequest)(nil), // 9: ermite.GetJobRequest (*GetJobResponse)(nil), // 10: ermite.GetJobResponse (*ListAnnotationsRequest)(nil), // 11: ermite.ListAnnotationsRequest (*ListAnnotationsResponse)(nil), // 12: ermite.ListAnnotationsResponse (*JobAnnotation)(nil), // 13: ermite.JobAnnotation (*GetStepSummariesRequest)(nil), // 14: ermite.GetStepSummariesRequest (*GetStepSummariesResponse)(nil), // 15: ermite.GetStepSummariesResponse (*StepSummary)(nil), // 16: ermite.StepSummary (*GetJobLogRequest)(nil), // 17: ermite.GetJobLogRequest (*GetJobLogResponse)(nil), // 18: ermite.GetJobLogResponse (*JobLogLine)(nil), // 19: ermite.JobLogLine (*CancelRunRequest)(nil), // 20: ermite.CancelRunRequest (*CancelRunResponse)(nil), // 21: ermite.CancelRunResponse (*RerunRunRequest)(nil), // 22: ermite.RerunRunRequest (*RerunRunResponse)(nil), // 23: ermite.RerunRunResponse (*ListChecksRequest)(nil), // 24: ermite.ListChecksRequest (*ListChecksResponse)(nil), // 25: ermite.ListChecksResponse (*ListRunnersRequest)(nil), // 26: ermite.ListRunnersRequest (*ListRunnersResponse)(nil), // 27: ermite.ListRunnersResponse (*RemoveRunnerRequest)(nil), // 28: ermite.RemoveRunnerRequest (*RemoveRunnerResponse)(nil), // 29: ermite.RemoveRunnerResponse (CiStatus)(0), // 30: ermite.CiStatus (CiConclusion)(0), // 31: ermite.CiConclusion (*timestamppb.Timestamp)(nil), // 32: google.protobuf.Timestamp (RunnerIsolation)(0), // 33: ermite.RunnerIsolation (StepState)(0), // 34: ermite.StepState (*Annotation)(nil), // 35: ermite.Annotation } var file_ermite_run_proto_depIdxs = []int32{ 30, // 0: ermite.Run.status:type_name -> ermite.CiStatus 31, // 1: ermite.Run.conclusion:type_name -> ermite.CiConclusion 32, // 2: ermite.Run.created_at:type_name -> google.protobuf.Timestamp 32, // 3: ermite.Run.started_at:type_name -> google.protobuf.Timestamp 32, // 4: ermite.Run.completed_at:type_name -> google.protobuf.Timestamp 30, // 5: ermite.RunJob.status:type_name -> ermite.CiStatus 31, // 6: ermite.RunJob.conclusion:type_name -> ermite.CiConclusion 33, // 7: ermite.RunJob.isolation:type_name -> ermite.RunnerIsolation 2, // 8: ermite.RunJob.steps:type_name -> ermite.Step 32, // 9: ermite.RunJob.created_at:type_name -> google.protobuf.Timestamp 32, // 10: ermite.RunJob.started_at:type_name -> google.protobuf.Timestamp 32, // 11: ermite.RunJob.completed_at:type_name -> google.protobuf.Timestamp 34, // 12: ermite.Step.state:type_name -> ermite.StepState 31, // 13: ermite.Step.conclusion:type_name -> ermite.CiConclusion 32, // 14: ermite.Step.started_at:type_name -> google.protobuf.Timestamp 32, // 15: ermite.Step.completed_at:type_name -> google.protobuf.Timestamp 31, // 16: ermite.Step.outcome:type_name -> ermite.CiConclusion 30, // 17: ermite.Check.status:type_name -> ermite.CiStatus 31, // 18: ermite.Check.conclusion:type_name -> ermite.CiConclusion 32, // 19: ermite.Check.started_at:type_name -> google.protobuf.Timestamp 32, // 20: ermite.Check.completed_at:type_name -> google.protobuf.Timestamp 33, // 21: ermite.Runner.isolation:type_name -> ermite.RunnerIsolation 32, // 22: ermite.Runner.registered_at:type_name -> google.protobuf.Timestamp 32, // 23: ermite.Runner.last_seen:type_name -> google.protobuf.Timestamp 30, // 24: ermite.ListRunsRequest.status:type_name -> ermite.CiStatus 0, // 25: ermite.ListRunsResponse.runs:type_name -> ermite.Run 0, // 26: ermite.GetRunResponse.run:type_name -> ermite.Run 1, // 27: ermite.GetRunResponse.jobs:type_name -> ermite.RunJob 1, // 28: ermite.GetJobResponse.job:type_name -> ermite.RunJob 13, // 29: ermite.ListAnnotationsResponse.annotations:type_name -> ermite.JobAnnotation 35, // 30: ermite.JobAnnotation.annotation:type_name -> ermite.Annotation 16, // 31: ermite.GetStepSummariesResponse.summaries:type_name -> ermite.StepSummary 19, // 32: ermite.GetJobLogResponse.lines:type_name -> ermite.JobLogLine 32, // 33: ermite.JobLogLine.time:type_name -> google.protobuf.Timestamp 0, // 34: ermite.CancelRunResponse.run:type_name -> ermite.Run 0, // 35: ermite.RerunRunResponse.run:type_name -> ermite.Run 3, // 36: ermite.ListChecksResponse.checks:type_name -> ermite.Check 4, // 37: ermite.ListRunnersResponse.runners:type_name -> ermite.Runner 5, // 38: ermite.RunService.ListRuns:input_type -> ermite.ListRunsRequest 7, // 39: ermite.RunService.GetRun:input_type -> ermite.GetRunRequest 9, // 40: ermite.RunService.GetJob:input_type -> ermite.GetJobRequest 11, // 41: ermite.RunService.ListAnnotations:input_type -> ermite.ListAnnotationsRequest 14, // 42: ermite.RunService.GetStepSummaries:input_type -> ermite.GetStepSummariesRequest 17, // 43: ermite.RunService.GetJobLog:input_type -> ermite.GetJobLogRequest 20, // 44: ermite.RunService.CancelRun:input_type -> ermite.CancelRunRequest 22, // 45: ermite.RunService.RerunRun:input_type -> ermite.RerunRunRequest 24, // 46: ermite.RunService.ListChecks:input_type -> ermite.ListChecksRequest 26, // 47: ermite.RunService.ListRunners:input_type -> ermite.ListRunnersRequest 28, // 48: ermite.RunService.RemoveRunner:input_type -> ermite.RemoveRunnerRequest 6, // 49: ermite.RunService.ListRuns:output_type -> ermite.ListRunsResponse 8, // 50: ermite.RunService.GetRun:output_type -> ermite.GetRunResponse 10, // 51: ermite.RunService.GetJob:output_type -> ermite.GetJobResponse 12, // 52: ermite.RunService.ListAnnotations:output_type -> ermite.ListAnnotationsResponse 15, // 53: ermite.RunService.GetStepSummaries:output_type -> ermite.GetStepSummariesResponse 18, // 54: ermite.RunService.GetJobLog:output_type -> ermite.GetJobLogResponse 21, // 55: ermite.RunService.CancelRun:output_type -> ermite.CancelRunResponse 23, // 56: ermite.RunService.RerunRun:output_type -> ermite.RerunRunResponse 25, // 57: ermite.RunService.ListChecks:output_type -> ermite.ListChecksResponse 27, // 58: ermite.RunService.ListRunners:output_type -> ermite.ListRunnersResponse 29, // 59: ermite.RunService.RemoveRunner:output_type -> ermite.RemoveRunnerResponse 49, // [49:60] is the sub-list for method output_type 38, // [38:49] is the sub-list for method input_type 38, // [38:38] is the sub-list for extension type_name 38, // [38:38] is the sub-list for extension extendee 0, // [0:38] is the sub-list for field type_name } func init() { file_ermite_run_proto_init() } func file_ermite_run_proto_init() { if File_ermite_run_proto != nil { return } file_ermite_runner_proto_init() type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: unsafe.Slice(unsafe.StringData(file_ermite_run_proto_rawDesc), len(file_ermite_run_proto_rawDesc)), NumEnums: 0, NumMessages: 30, NumExtensions: 0, NumServices: 1, }, GoTypes: file_ermite_run_proto_goTypes, DependencyIndexes: file_ermite_run_proto_depIdxs, MessageInfos: file_ermite_run_proto_msgTypes, }.Build() File_ermite_run_proto = out.File file_ermite_run_proto_goTypes = nil file_ermite_run_proto_depIdxs = nil }