Compare commits
3 Commits
6fc9af8280
...
f95a5f9ae5
| Author | SHA1 | Date | |
|---|---|---|---|
| f95a5f9ae5 | |||
| fc117cef39 | |||
| 01111fe676 |
@@ -3,6 +3,7 @@ module git.ohea.xyz/cursorius/server
|
|||||||
go 1.19
|
go 1.19
|
||||||
|
|
||||||
require (
|
require (
|
||||||
|
git.ohea.xyz/cursorius/pipeline-api/go/api/v2 v2.0.0-20230102084147-6d988866458e
|
||||||
git.ohea.xyz/golang/config v0.0.0-20220915224621-b9debd233173
|
git.ohea.xyz/golang/config v0.0.0-20220915224621-b9debd233173
|
||||||
github.com/bufbuild/connect-go v1.4.1
|
github.com/bufbuild/connect-go v1.4.1
|
||||||
github.com/docker/docker v20.10.22+incompatible
|
github.com/docker/docker v20.10.22+incompatible
|
||||||
@@ -11,7 +12,6 @@ require (
|
|||||||
github.com/google/uuid v1.3.0
|
github.com/google/uuid v1.3.0
|
||||||
github.com/op/go-logging v0.0.0-20160315200505-970db520ece7
|
github.com/op/go-logging v0.0.0-20160315200505-970db520ece7
|
||||||
golang.org/x/net v0.2.0
|
golang.org/x/net v0.2.0
|
||||||
google.golang.org/protobuf v1.28.1
|
|
||||||
nhooyr.io/websocket v1.8.7
|
nhooyr.io/websocket v1.8.7
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -50,6 +50,7 @@ require (
|
|||||||
golang.org/x/sys v0.2.0 // indirect
|
golang.org/x/sys v0.2.0 // indirect
|
||||||
golang.org/x/text v0.4.0 // indirect
|
golang.org/x/text v0.4.0 // indirect
|
||||||
golang.org/x/tools v0.1.12 // indirect
|
golang.org/x/tools v0.1.12 // indirect
|
||||||
|
google.golang.org/protobuf v1.28.1 // indirect
|
||||||
gopkg.in/warnings.v0 v0.1.2 // indirect
|
gopkg.in/warnings.v0 v0.1.2 // indirect
|
||||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||||
gotest.tools/v3 v3.4.0 // indirect
|
gotest.tools/v3 v3.4.0 // indirect
|
||||||
|
|||||||
@@ -78,6 +78,8 @@ contrib.go.opencensus.io/exporter/stackdriver v0.13.5/go.mod h1:aXENhDJ1Y4lIg4EU
|
|||||||
contrib.go.opencensus.io/integrations/ocsql v0.1.4/go.mod h1:8DsSdjz3F+APR+0z0WkU1aRorQCFfRxvqjUUPMbF3fE=
|
contrib.go.opencensus.io/integrations/ocsql v0.1.4/go.mod h1:8DsSdjz3F+APR+0z0WkU1aRorQCFfRxvqjUUPMbF3fE=
|
||||||
contrib.go.opencensus.io/resource v0.1.1/go.mod h1:F361eGI91LCmW1I/Saf+rX0+OFcigGlFvXwEGEnkRLA=
|
contrib.go.opencensus.io/resource v0.1.1/go.mod h1:F361eGI91LCmW1I/Saf+rX0+OFcigGlFvXwEGEnkRLA=
|
||||||
dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU=
|
dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU=
|
||||||
|
git.ohea.xyz/cursorius/pipeline-api/go/api/v2 v2.0.0-20230102084147-6d988866458e h1:Rdxx7d/iYk+nazy0/Z0Pp1f9XKiJ6b/3nyiw3MXOfHg=
|
||||||
|
git.ohea.xyz/cursorius/pipeline-api/go/api/v2 v2.0.0-20230102084147-6d988866458e/go.mod h1:D7GGcFIH421mo6KuRaXXXmlXPwWeEsemTZG/BOZA/4o=
|
||||||
git.ohea.xyz/cursorius/webhooks/v6 v6.0.2-0.20221224221147-a2bdbf1756ed h1:gsK15m4Npow74+R6OfZKwwAg1sl7QWQCRXOeE2QLUco=
|
git.ohea.xyz/cursorius/webhooks/v6 v6.0.2-0.20221224221147-a2bdbf1756ed h1:gsK15m4Npow74+R6OfZKwwAg1sl7QWQCRXOeE2QLUco=
|
||||||
git.ohea.xyz/cursorius/webhooks/v6 v6.0.2-0.20221224221147-a2bdbf1756ed/go.mod h1:64JKTmG3kupV+3+ZYJYPB/rGPEKw/diihhIj8lut4UA=
|
git.ohea.xyz/cursorius/webhooks/v6 v6.0.2-0.20221224221147-a2bdbf1756ed/go.mod h1:64JKTmG3kupV+3+ZYJYPB/rGPEKw/diihhIj8lut4UA=
|
||||||
git.ohea.xyz/golang/config v0.0.0-20220915224621-b9debd233173 h1:dhq/W6sa5KkLHVBwwgcNIPWcO4YK2/ecFTTln2W+1n8=
|
git.ohea.xyz/golang/config v0.0.0-20220915224621-b9debd233173 h1:dhq/W6sa5KkLHVBwwgcNIPWcO4YK2/ecFTTln2W+1n8=
|
||||||
|
|||||||
@@ -7,8 +7,8 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
apiv1 "git.ohea.xyz/cursorius/server/proto/gen/api/v1"
|
apiv2 "git.ohea.xyz/cursorius/pipeline-api/go/api/v2"
|
||||||
"git.ohea.xyz/cursorius/server/proto/gen/api/v1/apiv1connect"
|
"git.ohea.xyz/cursorius/pipeline-api/go/api/v2/apiv2connect"
|
||||||
"git.ohea.xyz/cursorius/server/runnermanager"
|
"git.ohea.xyz/cursorius/server/runnermanager"
|
||||||
"github.com/bufbuild/connect-go"
|
"github.com/bufbuild/connect-go"
|
||||||
"github.com/google/uuid"
|
"github.com/google/uuid"
|
||||||
@@ -47,8 +47,8 @@ func (s *ApiServer) GetRunnerFromMap(uuid uuid) *RunnerWrapper {
|
|||||||
|
|
||||||
func (s *ApiServer) GetRunner(
|
func (s *ApiServer) GetRunner(
|
||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
req *connect.Request[apiv1.GetRunnerRequest],
|
req *connect.Request[apiv2.GetRunnerRequest],
|
||||||
) (*connect.Response[apiv1.GetRunnerResponse], error) {
|
) (*connect.Response[apiv2.GetRunnerResponse], error) {
|
||||||
|
|
||||||
respChan := make(chan runnermanager.GetRunnerResponse)
|
respChan := make(chan runnermanager.GetRunnerResponse)
|
||||||
s.getRunnerCh <- runnermanager.GetRunnerRequest{
|
s.getRunnerCh <- runnermanager.GetRunnerRequest{
|
||||||
@@ -76,17 +76,17 @@ func (s *ApiServer) GetRunner(
|
|||||||
s.allocatedRunners[runnerUuid] = &RunnerWrapper{runner: response.Runner}
|
s.allocatedRunners[runnerUuid] = &RunnerWrapper{runner: response.Runner}
|
||||||
s.allocatedRunnersMutex.Unlock()
|
s.allocatedRunnersMutex.Unlock()
|
||||||
|
|
||||||
res := connect.NewResponse(&apiv1.GetRunnerResponse{
|
res := connect.NewResponse(&apiv2.GetRunnerResponse{
|
||||||
Id: runnerUuid.String(),
|
Id: runnerUuid.String(),
|
||||||
})
|
})
|
||||||
res.Header().Set("GetRunner-Version", "v1")
|
res.Header().Set("GetRunner-Version", "v2")
|
||||||
return res, nil
|
return res, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *ApiServer) RunCommand(
|
func (s *ApiServer) RunCommand(
|
||||||
ctx context.Context,
|
ctx context.Context,
|
||||||
req *connect.Request[apiv1.RunCommandRequest],
|
req *connect.Request[apiv2.RunCommandRequest],
|
||||||
) (*connect.Response[apiv1.RunCommandResponse], error) {
|
) (*connect.Response[apiv2.RunCommandResponse], error) {
|
||||||
|
|
||||||
uuid, err := uuid.Parse(req.Msg.Id)
|
uuid, err := uuid.Parse(req.Msg.Id)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@@ -101,12 +101,12 @@ func (s *ApiServer) RunCommand(
|
|||||||
return nil, connect.NewError(connect.CodeInternal, fmt.Errorf("Could not run command"))
|
return nil, connect.NewError(connect.CodeInternal, fmt.Errorf("Could not run command"))
|
||||||
}
|
}
|
||||||
|
|
||||||
res := connect.NewResponse(&apiv1.RunCommandResponse{
|
res := connect.NewResponse(&apiv2.RunCommandResponse{
|
||||||
ReturnCode: return_code,
|
ReturnCode: return_code,
|
||||||
Stdout: stdout,
|
Stdout: stdout,
|
||||||
Stderr: stderr,
|
Stderr: stderr,
|
||||||
})
|
})
|
||||||
res.Header().Set("RunCommand-Version", "v1")
|
res.Header().Set("RunCommand-Version", "v2")
|
||||||
return res, nil
|
return res, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -115,8 +115,8 @@ func CreateHandler(mux *http.ServeMux, getRunnerCh chan runnermanager.GetRunnerR
|
|||||||
getRunnerCh: getRunnerCh,
|
getRunnerCh: getRunnerCh,
|
||||||
allocatedRunners: make(map[uuid.UUID]*RunnerWrapper),
|
allocatedRunners: make(map[uuid.UUID]*RunnerWrapper),
|
||||||
}
|
}
|
||||||
path, handler := apiv1connect.NewGetRunnerServiceHandler(api_server)
|
path, handler := apiv2connect.NewGetRunnerServiceHandler(api_server)
|
||||||
mux.Handle(path, handler)
|
mux.Handle(path, handler)
|
||||||
path, handler = apiv1connect.NewRunCommandServiceHandler(api_server)
|
path, handler = apiv2connect.NewRunCommandServiceHandler(api_server)
|
||||||
mux.Handle(path, handler)
|
mux.Handle(path, handler)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,22 +0,0 @@
|
|||||||
syntax = "proto3";
|
|
||||||
|
|
||||||
package api.v1;
|
|
||||||
|
|
||||||
option go_package = "git.ohea.xyz/cursorius/server/proto/gen/api/v1;apiv1";
|
|
||||||
|
|
||||||
message GetRunnerOptions {
|
|
||||||
bool clone_source = 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
message GetRunnerRequest {
|
|
||||||
repeated string tags = 1;
|
|
||||||
GetRunnerOptions options = 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
message GetRunnerResponse {
|
|
||||||
string id = 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
service GetRunnerService {
|
|
||||||
rpc GetRunner(GetRunnerRequest) returns (GetRunnerResponse) {}
|
|
||||||
}
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
syntax = "proto3";
|
|
||||||
|
|
||||||
package api.v1;
|
|
||||||
|
|
||||||
option go_package = "git.ohea.xyz/cursorius/server/proto/gen/api/v1;apiv1";
|
|
||||||
|
|
||||||
message RunCommandRequest {
|
|
||||||
string id = 1;
|
|
||||||
string command = 2;
|
|
||||||
}
|
|
||||||
|
|
||||||
message RunCommandResponse {
|
|
||||||
int64 return_code = 1;
|
|
||||||
string stdout = 2;
|
|
||||||
string stderr = 3;
|
|
||||||
}
|
|
||||||
|
|
||||||
service RunCommandService {
|
|
||||||
rpc RunCommand(RunCommandRequest) returns (RunCommandResponse) {}
|
|
||||||
}
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
version: v1
|
|
||||||
plugins:
|
|
||||||
- name: go
|
|
||||||
out: gen
|
|
||||||
opt: paths=source_relative
|
|
||||||
- name: connect-go
|
|
||||||
out: gen
|
|
||||||
opt: paths=source_relative
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
version: v1
|
|
||||||
breaking:
|
|
||||||
use:
|
|
||||||
- FILE
|
|
||||||
lint:
|
|
||||||
use:
|
|
||||||
- DEFAULT
|
|
||||||
@@ -1,86 +0,0 @@
|
|||||||
// Code generated by protoc-gen-connect-go. DO NOT EDIT.
|
|
||||||
//
|
|
||||||
// Source: api/v1/get_runner.proto
|
|
||||||
|
|
||||||
package apiv1connect
|
|
||||||
|
|
||||||
import (
|
|
||||||
context "context"
|
|
||||||
errors "errors"
|
|
||||||
v1 "git.ohea.xyz/cursorius/server/proto/gen/api/v1"
|
|
||||||
connect_go "github.com/bufbuild/connect-go"
|
|
||||||
http "net/http"
|
|
||||||
strings "strings"
|
|
||||||
)
|
|
||||||
|
|
||||||
// This is a compile-time assertion to ensure that this generated file and the connect package are
|
|
||||||
// compatible. If you get a compiler error that this constant is not defined, this code was
|
|
||||||
// generated with a version of connect newer than the one compiled into your binary. You can fix the
|
|
||||||
// problem by either regenerating this code with an older version of connect or updating the connect
|
|
||||||
// version compiled into your binary.
|
|
||||||
const _ = connect_go.IsAtLeastVersion0_1_0
|
|
||||||
|
|
||||||
const (
|
|
||||||
// GetRunnerServiceName is the fully-qualified name of the GetRunnerService service.
|
|
||||||
GetRunnerServiceName = "api.v1.GetRunnerService"
|
|
||||||
)
|
|
||||||
|
|
||||||
// GetRunnerServiceClient is a client for the api.v1.GetRunnerService service.
|
|
||||||
type GetRunnerServiceClient interface {
|
|
||||||
GetRunner(context.Context, *connect_go.Request[v1.GetRunnerRequest]) (*connect_go.Response[v1.GetRunnerResponse], error)
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewGetRunnerServiceClient constructs a client for the api.v1.GetRunnerService service. By
|
|
||||||
// default, it uses the Connect protocol with the binary Protobuf Codec, asks for gzipped responses,
|
|
||||||
// and sends uncompressed requests. To use the gRPC or gRPC-Web protocols, supply the
|
|
||||||
// connect.WithGRPC() or connect.WithGRPCWeb() options.
|
|
||||||
//
|
|
||||||
// The URL supplied here should be the base URL for the Connect or gRPC server (for example,
|
|
||||||
// http://api.acme.com or https://acme.com/grpc).
|
|
||||||
func NewGetRunnerServiceClient(httpClient connect_go.HTTPClient, baseURL string, opts ...connect_go.ClientOption) GetRunnerServiceClient {
|
|
||||||
baseURL = strings.TrimRight(baseURL, "/")
|
|
||||||
return &getRunnerServiceClient{
|
|
||||||
getRunner: connect_go.NewClient[v1.GetRunnerRequest, v1.GetRunnerResponse](
|
|
||||||
httpClient,
|
|
||||||
baseURL+"/api.v1.GetRunnerService/GetRunner",
|
|
||||||
opts...,
|
|
||||||
),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// getRunnerServiceClient implements GetRunnerServiceClient.
|
|
||||||
type getRunnerServiceClient struct {
|
|
||||||
getRunner *connect_go.Client[v1.GetRunnerRequest, v1.GetRunnerResponse]
|
|
||||||
}
|
|
||||||
|
|
||||||
// GetRunner calls api.v1.GetRunnerService.GetRunner.
|
|
||||||
func (c *getRunnerServiceClient) GetRunner(ctx context.Context, req *connect_go.Request[v1.GetRunnerRequest]) (*connect_go.Response[v1.GetRunnerResponse], error) {
|
|
||||||
return c.getRunner.CallUnary(ctx, req)
|
|
||||||
}
|
|
||||||
|
|
||||||
// GetRunnerServiceHandler is an implementation of the api.v1.GetRunnerService service.
|
|
||||||
type GetRunnerServiceHandler interface {
|
|
||||||
GetRunner(context.Context, *connect_go.Request[v1.GetRunnerRequest]) (*connect_go.Response[v1.GetRunnerResponse], error)
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewGetRunnerServiceHandler builds an HTTP handler from the service implementation. It returns the
|
|
||||||
// path on which to mount the handler and the handler itself.
|
|
||||||
//
|
|
||||||
// By default, handlers support the Connect, gRPC, and gRPC-Web protocols with the binary Protobuf
|
|
||||||
// and JSON codecs. They also support gzip compression.
|
|
||||||
func NewGetRunnerServiceHandler(svc GetRunnerServiceHandler, opts ...connect_go.HandlerOption) (string, http.Handler) {
|
|
||||||
mux := http.NewServeMux()
|
|
||||||
mux.Handle("/api.v1.GetRunnerService/GetRunner", connect_go.NewUnaryHandler(
|
|
||||||
"/api.v1.GetRunnerService/GetRunner",
|
|
||||||
svc.GetRunner,
|
|
||||||
opts...,
|
|
||||||
))
|
|
||||||
return "/api.v1.GetRunnerService/", mux
|
|
||||||
}
|
|
||||||
|
|
||||||
// UnimplementedGetRunnerServiceHandler returns CodeUnimplemented from all methods.
|
|
||||||
type UnimplementedGetRunnerServiceHandler struct{}
|
|
||||||
|
|
||||||
func (UnimplementedGetRunnerServiceHandler) GetRunner(context.Context, *connect_go.Request[v1.GetRunnerRequest]) (*connect_go.Response[v1.GetRunnerResponse], error) {
|
|
||||||
return nil, connect_go.NewError(connect_go.CodeUnimplemented, errors.New("api.v1.GetRunnerService.GetRunner is not implemented"))
|
|
||||||
}
|
|
||||||
@@ -1,86 +0,0 @@
|
|||||||
// Code generated by protoc-gen-connect-go. DO NOT EDIT.
|
|
||||||
//
|
|
||||||
// Source: api/v1/run_command.proto
|
|
||||||
|
|
||||||
package apiv1connect
|
|
||||||
|
|
||||||
import (
|
|
||||||
context "context"
|
|
||||||
errors "errors"
|
|
||||||
v1 "git.ohea.xyz/cursorius/server/proto/gen/api/v1"
|
|
||||||
connect_go "github.com/bufbuild/connect-go"
|
|
||||||
http "net/http"
|
|
||||||
strings "strings"
|
|
||||||
)
|
|
||||||
|
|
||||||
// This is a compile-time assertion to ensure that this generated file and the connect package are
|
|
||||||
// compatible. If you get a compiler error that this constant is not defined, this code was
|
|
||||||
// generated with a version of connect newer than the one compiled into your binary. You can fix the
|
|
||||||
// problem by either regenerating this code with an older version of connect or updating the connect
|
|
||||||
// version compiled into your binary.
|
|
||||||
const _ = connect_go.IsAtLeastVersion0_1_0
|
|
||||||
|
|
||||||
const (
|
|
||||||
// RunCommandServiceName is the fully-qualified name of the RunCommandService service.
|
|
||||||
RunCommandServiceName = "api.v1.RunCommandService"
|
|
||||||
)
|
|
||||||
|
|
||||||
// RunCommandServiceClient is a client for the api.v1.RunCommandService service.
|
|
||||||
type RunCommandServiceClient interface {
|
|
||||||
RunCommand(context.Context, *connect_go.Request[v1.RunCommandRequest]) (*connect_go.Response[v1.RunCommandResponse], error)
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewRunCommandServiceClient constructs a client for the api.v1.RunCommandService service. By
|
|
||||||
// default, it uses the Connect protocol with the binary Protobuf Codec, asks for gzipped responses,
|
|
||||||
// and sends uncompressed requests. To use the gRPC or gRPC-Web protocols, supply the
|
|
||||||
// connect.WithGRPC() or connect.WithGRPCWeb() options.
|
|
||||||
//
|
|
||||||
// The URL supplied here should be the base URL for the Connect or gRPC server (for example,
|
|
||||||
// http://api.acme.com or https://acme.com/grpc).
|
|
||||||
func NewRunCommandServiceClient(httpClient connect_go.HTTPClient, baseURL string, opts ...connect_go.ClientOption) RunCommandServiceClient {
|
|
||||||
baseURL = strings.TrimRight(baseURL, "/")
|
|
||||||
return &runCommandServiceClient{
|
|
||||||
runCommand: connect_go.NewClient[v1.RunCommandRequest, v1.RunCommandResponse](
|
|
||||||
httpClient,
|
|
||||||
baseURL+"/api.v1.RunCommandService/RunCommand",
|
|
||||||
opts...,
|
|
||||||
),
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// runCommandServiceClient implements RunCommandServiceClient.
|
|
||||||
type runCommandServiceClient struct {
|
|
||||||
runCommand *connect_go.Client[v1.RunCommandRequest, v1.RunCommandResponse]
|
|
||||||
}
|
|
||||||
|
|
||||||
// RunCommand calls api.v1.RunCommandService.RunCommand.
|
|
||||||
func (c *runCommandServiceClient) RunCommand(ctx context.Context, req *connect_go.Request[v1.RunCommandRequest]) (*connect_go.Response[v1.RunCommandResponse], error) {
|
|
||||||
return c.runCommand.CallUnary(ctx, req)
|
|
||||||
}
|
|
||||||
|
|
||||||
// RunCommandServiceHandler is an implementation of the api.v1.RunCommandService service.
|
|
||||||
type RunCommandServiceHandler interface {
|
|
||||||
RunCommand(context.Context, *connect_go.Request[v1.RunCommandRequest]) (*connect_go.Response[v1.RunCommandResponse], error)
|
|
||||||
}
|
|
||||||
|
|
||||||
// NewRunCommandServiceHandler builds an HTTP handler from the service implementation. It returns
|
|
||||||
// the path on which to mount the handler and the handler itself.
|
|
||||||
//
|
|
||||||
// By default, handlers support the Connect, gRPC, and gRPC-Web protocols with the binary Protobuf
|
|
||||||
// and JSON codecs. They also support gzip compression.
|
|
||||||
func NewRunCommandServiceHandler(svc RunCommandServiceHandler, opts ...connect_go.HandlerOption) (string, http.Handler) {
|
|
||||||
mux := http.NewServeMux()
|
|
||||||
mux.Handle("/api.v1.RunCommandService/RunCommand", connect_go.NewUnaryHandler(
|
|
||||||
"/api.v1.RunCommandService/RunCommand",
|
|
||||||
svc.RunCommand,
|
|
||||||
opts...,
|
|
||||||
))
|
|
||||||
return "/api.v1.RunCommandService/", mux
|
|
||||||
}
|
|
||||||
|
|
||||||
// UnimplementedRunCommandServiceHandler returns CodeUnimplemented from all methods.
|
|
||||||
type UnimplementedRunCommandServiceHandler struct{}
|
|
||||||
|
|
||||||
func (UnimplementedRunCommandServiceHandler) RunCommand(context.Context, *connect_go.Request[v1.RunCommandRequest]) (*connect_go.Response[v1.RunCommandResponse], error) {
|
|
||||||
return nil, connect_go.NewError(connect_go.CodeUnimplemented, errors.New("api.v1.RunCommandService.RunCommand is not implemented"))
|
|
||||||
}
|
|
||||||
@@ -1,291 +0,0 @@
|
|||||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
||||||
// versions:
|
|
||||||
// protoc-gen-go v1.28.1
|
|
||||||
// protoc (unknown)
|
|
||||||
// source: api/v1/get_runner.proto
|
|
||||||
|
|
||||||
package apiv1
|
|
||||||
|
|
||||||
import (
|
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
||||||
reflect "reflect"
|
|
||||||
sync "sync"
|
|
||||||
)
|
|
||||||
|
|
||||||
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)
|
|
||||||
)
|
|
||||||
|
|
||||||
type GetRunnerOptions struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
CloneSource bool `protobuf:"varint,2,opt,name=clone_source,json=cloneSource,proto3" json:"clone_source,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *GetRunnerOptions) Reset() {
|
|
||||||
*x = GetRunnerOptions{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_api_v1_get_runner_proto_msgTypes[0]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *GetRunnerOptions) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*GetRunnerOptions) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *GetRunnerOptions) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_api_v1_get_runner_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 GetRunnerOptions.ProtoReflect.Descriptor instead.
|
|
||||||
func (*GetRunnerOptions) Descriptor() ([]byte, []int) {
|
|
||||||
return file_api_v1_get_runner_proto_rawDescGZIP(), []int{0}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *GetRunnerOptions) GetCloneSource() bool {
|
|
||||||
if x != nil {
|
|
||||||
return x.CloneSource
|
|
||||||
}
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
|
|
||||||
type GetRunnerRequest struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
Tags []string `protobuf:"bytes,1,rep,name=tags,proto3" json:"tags,omitempty"`
|
|
||||||
Options *GetRunnerOptions `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *GetRunnerRequest) Reset() {
|
|
||||||
*x = GetRunnerRequest{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_api_v1_get_runner_proto_msgTypes[1]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *GetRunnerRequest) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*GetRunnerRequest) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *GetRunnerRequest) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_api_v1_get_runner_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 GetRunnerRequest.ProtoReflect.Descriptor instead.
|
|
||||||
func (*GetRunnerRequest) Descriptor() ([]byte, []int) {
|
|
||||||
return file_api_v1_get_runner_proto_rawDescGZIP(), []int{1}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *GetRunnerRequest) GetTags() []string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Tags
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *GetRunnerRequest) GetOptions() *GetRunnerOptions {
|
|
||||||
if x != nil {
|
|
||||||
return x.Options
|
|
||||||
}
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
|
|
||||||
type GetRunnerResponse struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *GetRunnerResponse) Reset() {
|
|
||||||
*x = GetRunnerResponse{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_api_v1_get_runner_proto_msgTypes[2]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *GetRunnerResponse) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*GetRunnerResponse) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *GetRunnerResponse) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_api_v1_get_runner_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 GetRunnerResponse.ProtoReflect.Descriptor instead.
|
|
||||||
func (*GetRunnerResponse) Descriptor() ([]byte, []int) {
|
|
||||||
return file_api_v1_get_runner_proto_rawDescGZIP(), []int{2}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *GetRunnerResponse) GetId() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Id
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
var File_api_v1_get_runner_proto protoreflect.FileDescriptor
|
|
||||||
|
|
||||||
var file_api_v1_get_runner_proto_rawDesc = []byte{
|
|
||||||
0x0a, 0x17, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x31, 0x2f, 0x67, 0x65, 0x74, 0x5f, 0x72, 0x75, 0x6e,
|
|
||||||
0x6e, 0x65, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x06, 0x61, 0x70, 0x69, 0x2e, 0x76,
|
|
||||||
0x31, 0x22, 0x35, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x4f, 0x70,
|
|
||||||
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6c, 0x6f, 0x6e, 0x65, 0x5f, 0x73,
|
|
||||||
0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x63, 0x6c, 0x6f,
|
|
||||||
0x6e, 0x65, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x5a, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x52,
|
|
||||||
0x75, 0x6e, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, 0x04,
|
|
||||||
0x74, 0x61, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x61, 0x67, 0x73,
|
|
||||||
0x12, 0x32, 0x0a, 0x07, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
|
|
||||||
0x0b, 0x32, 0x18, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x75,
|
|
||||||
0x6e, 0x6e, 0x65, 0x72, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x07, 0x6f, 0x70, 0x74,
|
|
||||||
0x69, 0x6f, 0x6e, 0x73, 0x22, 0x23, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x52, 0x75, 0x6e, 0x6e, 0x65,
|
|
||||||
0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18,
|
|
||||||
0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x32, 0x56, 0x0a, 0x10, 0x47, 0x65, 0x74,
|
|
||||||
0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x42, 0x0a,
|
|
||||||
0x09, 0x47, 0x65, 0x74, 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x12, 0x18, 0x2e, 0x61, 0x70, 0x69,
|
|
||||||
0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x71,
|
|
||||||
0x75, 0x65, 0x73, 0x74, 0x1a, 0x19, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65,
|
|
||||||
0x74, 0x52, 0x75, 0x6e, 0x6e, 0x65, 0x72, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
|
|
||||||
0x00, 0x42, 0x36, 0x5a, 0x34, 0x67, 0x69, 0x74, 0x2e, 0x6f, 0x68, 0x65, 0x61, 0x2e, 0x78, 0x79,
|
|
||||||
0x7a, 0x2f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x69, 0x75, 0x73, 0x2f, 0x73, 0x65, 0x72, 0x76,
|
|
||||||
0x65, 0x72, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x2f, 0x61, 0x70, 0x69,
|
|
||||||
0x2f, 0x76, 0x31, 0x3b, 0x61, 0x70, 0x69, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
|
|
||||||
0x33,
|
|
||||||
}
|
|
||||||
|
|
||||||
var (
|
|
||||||
file_api_v1_get_runner_proto_rawDescOnce sync.Once
|
|
||||||
file_api_v1_get_runner_proto_rawDescData = file_api_v1_get_runner_proto_rawDesc
|
|
||||||
)
|
|
||||||
|
|
||||||
func file_api_v1_get_runner_proto_rawDescGZIP() []byte {
|
|
||||||
file_api_v1_get_runner_proto_rawDescOnce.Do(func() {
|
|
||||||
file_api_v1_get_runner_proto_rawDescData = protoimpl.X.CompressGZIP(file_api_v1_get_runner_proto_rawDescData)
|
|
||||||
})
|
|
||||||
return file_api_v1_get_runner_proto_rawDescData
|
|
||||||
}
|
|
||||||
|
|
||||||
var file_api_v1_get_runner_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
|
|
||||||
var file_api_v1_get_runner_proto_goTypes = []interface{}{
|
|
||||||
(*GetRunnerOptions)(nil), // 0: api.v1.GetRunnerOptions
|
|
||||||
(*GetRunnerRequest)(nil), // 1: api.v1.GetRunnerRequest
|
|
||||||
(*GetRunnerResponse)(nil), // 2: api.v1.GetRunnerResponse
|
|
||||||
}
|
|
||||||
var file_api_v1_get_runner_proto_depIdxs = []int32{
|
|
||||||
0, // 0: api.v1.GetRunnerRequest.options:type_name -> api.v1.GetRunnerOptions
|
|
||||||
1, // 1: api.v1.GetRunnerService.GetRunner:input_type -> api.v1.GetRunnerRequest
|
|
||||||
2, // 2: api.v1.GetRunnerService.GetRunner:output_type -> api.v1.GetRunnerResponse
|
|
||||||
2, // [2:3] is the sub-list for method output_type
|
|
||||||
1, // [1:2] is the sub-list for method input_type
|
|
||||||
1, // [1:1] is the sub-list for extension type_name
|
|
||||||
1, // [1:1] is the sub-list for extension extendee
|
|
||||||
0, // [0:1] is the sub-list for field type_name
|
|
||||||
}
|
|
||||||
|
|
||||||
func init() { file_api_v1_get_runner_proto_init() }
|
|
||||||
func file_api_v1_get_runner_proto_init() {
|
|
||||||
if File_api_v1_get_runner_proto != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if !protoimpl.UnsafeEnabled {
|
|
||||||
file_api_v1_get_runner_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
|
||||||
switch v := v.(*GetRunnerOptions); i {
|
|
||||||
case 0:
|
|
||||||
return &v.state
|
|
||||||
case 1:
|
|
||||||
return &v.sizeCache
|
|
||||||
case 2:
|
|
||||||
return &v.unknownFields
|
|
||||||
default:
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
file_api_v1_get_runner_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
|
||||||
switch v := v.(*GetRunnerRequest); i {
|
|
||||||
case 0:
|
|
||||||
return &v.state
|
|
||||||
case 1:
|
|
||||||
return &v.sizeCache
|
|
||||||
case 2:
|
|
||||||
return &v.unknownFields
|
|
||||||
default:
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
file_api_v1_get_runner_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
|
|
||||||
switch v := v.(*GetRunnerResponse); i {
|
|
||||||
case 0:
|
|
||||||
return &v.state
|
|
||||||
case 1:
|
|
||||||
return &v.sizeCache
|
|
||||||
case 2:
|
|
||||||
return &v.unknownFields
|
|
||||||
default:
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
type x struct{}
|
|
||||||
out := protoimpl.TypeBuilder{
|
|
||||||
File: protoimpl.DescBuilder{
|
|
||||||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
||||||
RawDescriptor: file_api_v1_get_runner_proto_rawDesc,
|
|
||||||
NumEnums: 0,
|
|
||||||
NumMessages: 3,
|
|
||||||
NumExtensions: 0,
|
|
||||||
NumServices: 1,
|
|
||||||
},
|
|
||||||
GoTypes: file_api_v1_get_runner_proto_goTypes,
|
|
||||||
DependencyIndexes: file_api_v1_get_runner_proto_depIdxs,
|
|
||||||
MessageInfos: file_api_v1_get_runner_proto_msgTypes,
|
|
||||||
}.Build()
|
|
||||||
File_api_v1_get_runner_proto = out.File
|
|
||||||
file_api_v1_get_runner_proto_rawDesc = nil
|
|
||||||
file_api_v1_get_runner_proto_goTypes = nil
|
|
||||||
file_api_v1_get_runner_proto_depIdxs = nil
|
|
||||||
}
|
|
||||||
@@ -1,245 +0,0 @@
|
|||||||
// Code generated by protoc-gen-go. DO NOT EDIT.
|
|
||||||
// versions:
|
|
||||||
// protoc-gen-go v1.28.1
|
|
||||||
// protoc (unknown)
|
|
||||||
// source: api/v1/run_command.proto
|
|
||||||
|
|
||||||
package apiv1
|
|
||||||
|
|
||||||
import (
|
|
||||||
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
|
|
||||||
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
|
|
||||||
reflect "reflect"
|
|
||||||
sync "sync"
|
|
||||||
)
|
|
||||||
|
|
||||||
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)
|
|
||||||
)
|
|
||||||
|
|
||||||
type RunCommandRequest struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
|
|
||||||
Command string `protobuf:"bytes,2,opt,name=command,proto3" json:"command,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *RunCommandRequest) Reset() {
|
|
||||||
*x = RunCommandRequest{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_api_v1_run_command_proto_msgTypes[0]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *RunCommandRequest) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*RunCommandRequest) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *RunCommandRequest) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_api_v1_run_command_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 RunCommandRequest.ProtoReflect.Descriptor instead.
|
|
||||||
func (*RunCommandRequest) Descriptor() ([]byte, []int) {
|
|
||||||
return file_api_v1_run_command_proto_rawDescGZIP(), []int{0}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *RunCommandRequest) GetId() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Id
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *RunCommandRequest) GetCommand() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Command
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
type RunCommandResponse struct {
|
|
||||||
state protoimpl.MessageState
|
|
||||||
sizeCache protoimpl.SizeCache
|
|
||||||
unknownFields protoimpl.UnknownFields
|
|
||||||
|
|
||||||
ReturnCode int64 `protobuf:"varint,1,opt,name=return_code,json=returnCode,proto3" json:"return_code,omitempty"`
|
|
||||||
Stdout string `protobuf:"bytes,2,opt,name=stdout,proto3" json:"stdout,omitempty"`
|
|
||||||
Stderr string `protobuf:"bytes,3,opt,name=stderr,proto3" json:"stderr,omitempty"`
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *RunCommandResponse) Reset() {
|
|
||||||
*x = RunCommandResponse{}
|
|
||||||
if protoimpl.UnsafeEnabled {
|
|
||||||
mi := &file_api_v1_run_command_proto_msgTypes[1]
|
|
||||||
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
|
|
||||||
ms.StoreMessageInfo(mi)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *RunCommandResponse) String() string {
|
|
||||||
return protoimpl.X.MessageStringOf(x)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (*RunCommandResponse) ProtoMessage() {}
|
|
||||||
|
|
||||||
func (x *RunCommandResponse) ProtoReflect() protoreflect.Message {
|
|
||||||
mi := &file_api_v1_run_command_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 RunCommandResponse.ProtoReflect.Descriptor instead.
|
|
||||||
func (*RunCommandResponse) Descriptor() ([]byte, []int) {
|
|
||||||
return file_api_v1_run_command_proto_rawDescGZIP(), []int{1}
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *RunCommandResponse) GetReturnCode() int64 {
|
|
||||||
if x != nil {
|
|
||||||
return x.ReturnCode
|
|
||||||
}
|
|
||||||
return 0
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *RunCommandResponse) GetStdout() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Stdout
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
func (x *RunCommandResponse) GetStderr() string {
|
|
||||||
if x != nil {
|
|
||||||
return x.Stderr
|
|
||||||
}
|
|
||||||
return ""
|
|
||||||
}
|
|
||||||
|
|
||||||
var File_api_v1_run_command_proto protoreflect.FileDescriptor
|
|
||||||
|
|
||||||
var file_api_v1_run_command_proto_rawDesc = []byte{
|
|
||||||
0x0a, 0x18, 0x61, 0x70, 0x69, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x75, 0x6e, 0x5f, 0x63, 0x6f, 0x6d,
|
|
||||||
0x6d, 0x61, 0x6e, 0x64, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x06, 0x61, 0x70, 0x69, 0x2e,
|
|
||||||
0x76, 0x31, 0x22, 0x3d, 0x0a, 0x11, 0x52, 0x75, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64,
|
|
||||||
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20,
|
|
||||||
0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61,
|
|
||||||
0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x63, 0x6f, 0x6d, 0x6d, 0x61, 0x6e,
|
|
||||||
0x64, 0x22, 0x65, 0x0a, 0x12, 0x52, 0x75, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52,
|
|
||||||
0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x74, 0x75, 0x72,
|
|
||||||
0x6e, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x72, 0x65,
|
|
||||||
0x74, 0x75, 0x72, 0x6e, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x6f,
|
|
||||||
0x75, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74,
|
|
||||||
0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
|
|
||||||
0x52, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x32, 0x5a, 0x0a, 0x11, 0x52, 0x75, 0x6e, 0x43,
|
|
||||||
0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x45, 0x0a,
|
|
||||||
0x0a, 0x52, 0x75, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x12, 0x19, 0x2e, 0x61, 0x70,
|
|
||||||
0x69, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x75, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52,
|
|
||||||
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x76, 0x31, 0x2e,
|
|
||||||
0x52, 0x75, 0x6e, 0x43, 0x6f, 0x6d, 0x6d, 0x61, 0x6e, 0x64, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
|
|
||||||
0x73, 0x65, 0x22, 0x00, 0x42, 0x36, 0x5a, 0x34, 0x67, 0x69, 0x74, 0x2e, 0x6f, 0x68, 0x65, 0x61,
|
|
||||||
0x2e, 0x78, 0x79, 0x7a, 0x2f, 0x63, 0x75, 0x72, 0x73, 0x6f, 0x72, 0x69, 0x75, 0x73, 0x2f, 0x73,
|
|
||||||
0x65, 0x72, 0x76, 0x65, 0x72, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x65, 0x6e, 0x2f,
|
|
||||||
0x61, 0x70, 0x69, 0x2f, 0x76, 0x31, 0x3b, 0x61, 0x70, 0x69, 0x76, 0x31, 0x62, 0x06, 0x70, 0x72,
|
|
||||||
0x6f, 0x74, 0x6f, 0x33,
|
|
||||||
}
|
|
||||||
|
|
||||||
var (
|
|
||||||
file_api_v1_run_command_proto_rawDescOnce sync.Once
|
|
||||||
file_api_v1_run_command_proto_rawDescData = file_api_v1_run_command_proto_rawDesc
|
|
||||||
)
|
|
||||||
|
|
||||||
func file_api_v1_run_command_proto_rawDescGZIP() []byte {
|
|
||||||
file_api_v1_run_command_proto_rawDescOnce.Do(func() {
|
|
||||||
file_api_v1_run_command_proto_rawDescData = protoimpl.X.CompressGZIP(file_api_v1_run_command_proto_rawDescData)
|
|
||||||
})
|
|
||||||
return file_api_v1_run_command_proto_rawDescData
|
|
||||||
}
|
|
||||||
|
|
||||||
var file_api_v1_run_command_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
|
|
||||||
var file_api_v1_run_command_proto_goTypes = []interface{}{
|
|
||||||
(*RunCommandRequest)(nil), // 0: api.v1.RunCommandRequest
|
|
||||||
(*RunCommandResponse)(nil), // 1: api.v1.RunCommandResponse
|
|
||||||
}
|
|
||||||
var file_api_v1_run_command_proto_depIdxs = []int32{
|
|
||||||
0, // 0: api.v1.RunCommandService.RunCommand:input_type -> api.v1.RunCommandRequest
|
|
||||||
1, // 1: api.v1.RunCommandService.RunCommand:output_type -> api.v1.RunCommandResponse
|
|
||||||
1, // [1:2] is the sub-list for method output_type
|
|
||||||
0, // [0:1] is the sub-list for method input_type
|
|
||||||
0, // [0:0] is the sub-list for extension type_name
|
|
||||||
0, // [0:0] is the sub-list for extension extendee
|
|
||||||
0, // [0:0] is the sub-list for field type_name
|
|
||||||
}
|
|
||||||
|
|
||||||
func init() { file_api_v1_run_command_proto_init() }
|
|
||||||
func file_api_v1_run_command_proto_init() {
|
|
||||||
if File_api_v1_run_command_proto != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if !protoimpl.UnsafeEnabled {
|
|
||||||
file_api_v1_run_command_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
|
|
||||||
switch v := v.(*RunCommandRequest); i {
|
|
||||||
case 0:
|
|
||||||
return &v.state
|
|
||||||
case 1:
|
|
||||||
return &v.sizeCache
|
|
||||||
case 2:
|
|
||||||
return &v.unknownFields
|
|
||||||
default:
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
file_api_v1_run_command_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
|
|
||||||
switch v := v.(*RunCommandResponse); i {
|
|
||||||
case 0:
|
|
||||||
return &v.state
|
|
||||||
case 1:
|
|
||||||
return &v.sizeCache
|
|
||||||
case 2:
|
|
||||||
return &v.unknownFields
|
|
||||||
default:
|
|
||||||
return nil
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
type x struct{}
|
|
||||||
out := protoimpl.TypeBuilder{
|
|
||||||
File: protoimpl.DescBuilder{
|
|
||||||
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
|
|
||||||
RawDescriptor: file_api_v1_run_command_proto_rawDesc,
|
|
||||||
NumEnums: 0,
|
|
||||||
NumMessages: 2,
|
|
||||||
NumExtensions: 0,
|
|
||||||
NumServices: 1,
|
|
||||||
},
|
|
||||||
GoTypes: file_api_v1_run_command_proto_goTypes,
|
|
||||||
DependencyIndexes: file_api_v1_run_command_proto_depIdxs,
|
|
||||||
MessageInfos: file_api_v1_run_command_proto_msgTypes,
|
|
||||||
}.Build()
|
|
||||||
File_api_v1_run_command_proto = out.File
|
|
||||||
file_api_v1_run_command_proto_rawDesc = nil
|
|
||||||
file_api_v1_run_command_proto_goTypes = nil
|
|
||||||
file_api_v1_run_command_proto_depIdxs = nil
|
|
||||||
}
|
|
||||||
@@ -21,6 +21,6 @@ func (r *Runner) Id() string {
|
|||||||
return r.id
|
return r.id
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *Runner) RunCommand() (int64, string, string, error) {
|
func (r *Runner) RunCommand(string) (int64, string, string, error) {
|
||||||
return 0, "", "", nil
|
return 0, "", "", nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -129,7 +129,7 @@ func (r *runnerManager) processRegistration(reg RunnerRegistration) {
|
|||||||
}()
|
}()
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
log.Errorf("Disconnecting runner with id: %v and invalid secret: %v", reg.Id, registration.Secret)
|
log.Errorf("Disconnecting runner with id: %v and invalid secret: %v", reg.Id, reg.Secret)
|
||||||
reg.conn.Close(websocket.StatusNormalClosure, "registration invalid")
|
reg.conn.Close(websocket.StatusNormalClosure, "registration invalid")
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in New Issue
Block a user