From b937f7b13c7623d683a82755ca526c4b4dccc1b1 Mon Sep 17 00:00:00 2001 From: Bojan Djurkovic Date: Wed, 11 Sep 2024 16:11:00 -0300 Subject: [PATCH 1/6] proto: initial definition of debug bundle api --- .../debug_bundle.connect.go | 209 +++++ .../debug_bundle.connect.gw.go | 60 ++ .../api/console/v1alpha1/debug_bundle.pb.go | 766 ++++++++++++++++++ .../console/v1alpha1/debug_bundle.pb.gw.go | 426 ++++++++++ .../console/v1alpha1/debug_bundle_grpc.pb.go | 221 +++++ .../console/v1alpha1/debug_bundle_connect.ts | 53 ++ .../api/console/v1alpha1/debug_bundle_pb.ts | 366 +++++++++ .../api/console/v1alpha1/debug_bundle.proto | 54 ++ 8 files changed, 2155 insertions(+) create mode 100644 backend/pkg/protogen/redpanda/api/console/v1alpha1/consolev1alpha1connect/debug_bundle.connect.go create mode 100644 backend/pkg/protogen/redpanda/api/console/v1alpha1/consolev1alpha1connect/debug_bundle.connect.gw.go create mode 100644 backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go create mode 100644 backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.gw.go create mode 100644 backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle_grpc.pb.go create mode 100644 frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_connect.ts create mode 100644 frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts create mode 100644 proto/redpanda/api/console/v1alpha1/debug_bundle.proto diff --git a/backend/pkg/protogen/redpanda/api/console/v1alpha1/consolev1alpha1connect/debug_bundle.connect.go b/backend/pkg/protogen/redpanda/api/console/v1alpha1/consolev1alpha1connect/debug_bundle.connect.go new file mode 100644 index 000000000..5cd68a33c --- /dev/null +++ b/backend/pkg/protogen/redpanda/api/console/v1alpha1/consolev1alpha1connect/debug_bundle.connect.go @@ -0,0 +1,209 @@ +// Code generated by protoc-gen-connect-go. DO NOT EDIT. +// +// Source: redpanda/api/console/v1alpha1/debug_bundle.proto + +package consolev1alpha1connect + +import ( + context "context" + errors "errors" + http "net/http" + strings "strings" + + connect "connectrpc.com/connect" + + v1alpha1 "github.com/redpanda-data/console/backend/pkg/protogen/redpanda/api/console/v1alpha1" +) + +// 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.IsAtLeastVersion1_13_0 + +const ( + // DebugBundleServiceName is the fully-qualified name of the DebugBundleService service. + DebugBundleServiceName = "redpanda.api.console.v1alpha1.DebugBundleService" +) + +// These constants are the fully-qualified names of the RPCs defined in this package. They're +// exposed at runtime as Spec.Procedure and as the final two segments of the HTTP route. +// +// Note that these are different from the fully-qualified method names used by +// google.golang.org/protobuf/reflect/protoreflect. To convert from these constants to +// reflection-formatted method names, remove the leading slash and convert the remaining slash to a +// period. +const ( + // DebugBundleServiceCreateDebugBundleProcedure is the fully-qualified name of the + // DebugBundleService's CreateDebugBundle RPC. + DebugBundleServiceCreateDebugBundleProcedure = "/redpanda.api.console.v1alpha1.DebugBundleService/CreateDebugBundle" + // DebugBundleServiceGetDebugBundleStatusProcedure is the fully-qualified name of the + // DebugBundleService's GetDebugBundleStatus RPC. + DebugBundleServiceGetDebugBundleStatusProcedure = "/redpanda.api.console.v1alpha1.DebugBundleService/GetDebugBundleStatus" + // DebugBundleServiceDeleteDebugBundleProcedure is the fully-qualified name of the + // DebugBundleService's DeleteDebugBundle RPC. + DebugBundleServiceDeleteDebugBundleProcedure = "/redpanda.api.console.v1alpha1.DebugBundleService/DeleteDebugBundle" + // DebugBundleServiceDeleteDebugBundleFileProcedure is the fully-qualified name of the + // DebugBundleService's DeleteDebugBundleFile RPC. + DebugBundleServiceDeleteDebugBundleFileProcedure = "/redpanda.api.console.v1alpha1.DebugBundleService/DeleteDebugBundleFile" +) + +// These variables are the protoreflect.Descriptor objects for the RPCs defined in this package. +var ( + debugBundleServiceServiceDescriptor = v1alpha1.File_redpanda_api_console_v1alpha1_debug_bundle_proto.Services().ByName("DebugBundleService") + debugBundleServiceCreateDebugBundleMethodDescriptor = debugBundleServiceServiceDescriptor.Methods().ByName("CreateDebugBundle") + debugBundleServiceGetDebugBundleStatusMethodDescriptor = debugBundleServiceServiceDescriptor.Methods().ByName("GetDebugBundleStatus") + debugBundleServiceDeleteDebugBundleMethodDescriptor = debugBundleServiceServiceDescriptor.Methods().ByName("DeleteDebugBundle") + debugBundleServiceDeleteDebugBundleFileMethodDescriptor = debugBundleServiceServiceDescriptor.Methods().ByName("DeleteDebugBundleFile") +) + +// DebugBundleServiceClient is a client for the redpanda.api.console.v1alpha1.DebugBundleService +// service. +type DebugBundleServiceClient interface { + CreateDebugBundle(context.Context, *connect.Request[v1alpha1.CreateDebugBundleRequest]) (*connect.Response[v1alpha1.CreateDebugBundleResponse], error) + GetDebugBundleStatus(context.Context, *connect.Request[v1alpha1.GetDebugBundleStatusRequest]) (*connect.Response[v1alpha1.GetDebugBundleStatusResponse], error) + DeleteDebugBundle(context.Context, *connect.Request[v1alpha1.DeleteDebugBundleRequest]) (*connect.Response[v1alpha1.DeleteDebugBundleResponse], error) + DeleteDebugBundleFile(context.Context, *connect.Request[v1alpha1.DeleteDebugBundleFileRequest]) (*connect.Response[v1alpha1.DeleteDebugBundleFileResponse], error) +} + +// NewDebugBundleServiceClient constructs a client for the +// redpanda.api.console.v1alpha1.DebugBundleService 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 NewDebugBundleServiceClient(httpClient connect.HTTPClient, baseURL string, opts ...connect.ClientOption) DebugBundleServiceClient { + baseURL = strings.TrimRight(baseURL, "/") + return &debugBundleServiceClient{ + createDebugBundle: connect.NewClient[v1alpha1.CreateDebugBundleRequest, v1alpha1.CreateDebugBundleResponse]( + httpClient, + baseURL+DebugBundleServiceCreateDebugBundleProcedure, + connect.WithSchema(debugBundleServiceCreateDebugBundleMethodDescriptor), + connect.WithClientOptions(opts...), + ), + getDebugBundleStatus: connect.NewClient[v1alpha1.GetDebugBundleStatusRequest, v1alpha1.GetDebugBundleStatusResponse]( + httpClient, + baseURL+DebugBundleServiceGetDebugBundleStatusProcedure, + connect.WithSchema(debugBundleServiceGetDebugBundleStatusMethodDescriptor), + connect.WithClientOptions(opts...), + ), + deleteDebugBundle: connect.NewClient[v1alpha1.DeleteDebugBundleRequest, v1alpha1.DeleteDebugBundleResponse]( + httpClient, + baseURL+DebugBundleServiceDeleteDebugBundleProcedure, + connect.WithSchema(debugBundleServiceDeleteDebugBundleMethodDescriptor), + connect.WithClientOptions(opts...), + ), + deleteDebugBundleFile: connect.NewClient[v1alpha1.DeleteDebugBundleFileRequest, v1alpha1.DeleteDebugBundleFileResponse]( + httpClient, + baseURL+DebugBundleServiceDeleteDebugBundleFileProcedure, + connect.WithSchema(debugBundleServiceDeleteDebugBundleFileMethodDescriptor), + connect.WithClientOptions(opts...), + ), + } +} + +// debugBundleServiceClient implements DebugBundleServiceClient. +type debugBundleServiceClient struct { + createDebugBundle *connect.Client[v1alpha1.CreateDebugBundleRequest, v1alpha1.CreateDebugBundleResponse] + getDebugBundleStatus *connect.Client[v1alpha1.GetDebugBundleStatusRequest, v1alpha1.GetDebugBundleStatusResponse] + deleteDebugBundle *connect.Client[v1alpha1.DeleteDebugBundleRequest, v1alpha1.DeleteDebugBundleResponse] + deleteDebugBundleFile *connect.Client[v1alpha1.DeleteDebugBundleFileRequest, v1alpha1.DeleteDebugBundleFileResponse] +} + +// CreateDebugBundle calls redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle. +func (c *debugBundleServiceClient) CreateDebugBundle(ctx context.Context, req *connect.Request[v1alpha1.CreateDebugBundleRequest]) (*connect.Response[v1alpha1.CreateDebugBundleResponse], error) { + return c.createDebugBundle.CallUnary(ctx, req) +} + +// GetDebugBundleStatus calls redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus. +func (c *debugBundleServiceClient) GetDebugBundleStatus(ctx context.Context, req *connect.Request[v1alpha1.GetDebugBundleStatusRequest]) (*connect.Response[v1alpha1.GetDebugBundleStatusResponse], error) { + return c.getDebugBundleStatus.CallUnary(ctx, req) +} + +// DeleteDebugBundle calls redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle. +func (c *debugBundleServiceClient) DeleteDebugBundle(ctx context.Context, req *connect.Request[v1alpha1.DeleteDebugBundleRequest]) (*connect.Response[v1alpha1.DeleteDebugBundleResponse], error) { + return c.deleteDebugBundle.CallUnary(ctx, req) +} + +// DeleteDebugBundleFile calls +// redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile. +func (c *debugBundleServiceClient) DeleteDebugBundleFile(ctx context.Context, req *connect.Request[v1alpha1.DeleteDebugBundleFileRequest]) (*connect.Response[v1alpha1.DeleteDebugBundleFileResponse], error) { + return c.deleteDebugBundleFile.CallUnary(ctx, req) +} + +// DebugBundleServiceHandler is an implementation of the +// redpanda.api.console.v1alpha1.DebugBundleService service. +type DebugBundleServiceHandler interface { + CreateDebugBundle(context.Context, *connect.Request[v1alpha1.CreateDebugBundleRequest]) (*connect.Response[v1alpha1.CreateDebugBundleResponse], error) + GetDebugBundleStatus(context.Context, *connect.Request[v1alpha1.GetDebugBundleStatusRequest]) (*connect.Response[v1alpha1.GetDebugBundleStatusResponse], error) + DeleteDebugBundle(context.Context, *connect.Request[v1alpha1.DeleteDebugBundleRequest]) (*connect.Response[v1alpha1.DeleteDebugBundleResponse], error) + DeleteDebugBundleFile(context.Context, *connect.Request[v1alpha1.DeleteDebugBundleFileRequest]) (*connect.Response[v1alpha1.DeleteDebugBundleFileResponse], error) +} + +// NewDebugBundleServiceHandler 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 NewDebugBundleServiceHandler(svc DebugBundleServiceHandler, opts ...connect.HandlerOption) (string, http.Handler) { + debugBundleServiceCreateDebugBundleHandler := connect.NewUnaryHandler( + DebugBundleServiceCreateDebugBundleProcedure, + svc.CreateDebugBundle, + connect.WithSchema(debugBundleServiceCreateDebugBundleMethodDescriptor), + connect.WithHandlerOptions(opts...), + ) + debugBundleServiceGetDebugBundleStatusHandler := connect.NewUnaryHandler( + DebugBundleServiceGetDebugBundleStatusProcedure, + svc.GetDebugBundleStatus, + connect.WithSchema(debugBundleServiceGetDebugBundleStatusMethodDescriptor), + connect.WithHandlerOptions(opts...), + ) + debugBundleServiceDeleteDebugBundleHandler := connect.NewUnaryHandler( + DebugBundleServiceDeleteDebugBundleProcedure, + svc.DeleteDebugBundle, + connect.WithSchema(debugBundleServiceDeleteDebugBundleMethodDescriptor), + connect.WithHandlerOptions(opts...), + ) + debugBundleServiceDeleteDebugBundleFileHandler := connect.NewUnaryHandler( + DebugBundleServiceDeleteDebugBundleFileProcedure, + svc.DeleteDebugBundleFile, + connect.WithSchema(debugBundleServiceDeleteDebugBundleFileMethodDescriptor), + connect.WithHandlerOptions(opts...), + ) + return "/redpanda.api.console.v1alpha1.DebugBundleService/", http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + switch r.URL.Path { + case DebugBundleServiceCreateDebugBundleProcedure: + debugBundleServiceCreateDebugBundleHandler.ServeHTTP(w, r) + case DebugBundleServiceGetDebugBundleStatusProcedure: + debugBundleServiceGetDebugBundleStatusHandler.ServeHTTP(w, r) + case DebugBundleServiceDeleteDebugBundleProcedure: + debugBundleServiceDeleteDebugBundleHandler.ServeHTTP(w, r) + case DebugBundleServiceDeleteDebugBundleFileProcedure: + debugBundleServiceDeleteDebugBundleFileHandler.ServeHTTP(w, r) + default: + http.NotFound(w, r) + } + }) +} + +// UnimplementedDebugBundleServiceHandler returns CodeUnimplemented from all methods. +type UnimplementedDebugBundleServiceHandler struct{} + +func (UnimplementedDebugBundleServiceHandler) CreateDebugBundle(context.Context, *connect.Request[v1alpha1.CreateDebugBundleRequest]) (*connect.Response[v1alpha1.CreateDebugBundleResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle is not implemented")) +} + +func (UnimplementedDebugBundleServiceHandler) GetDebugBundleStatus(context.Context, *connect.Request[v1alpha1.GetDebugBundleStatusRequest]) (*connect.Response[v1alpha1.GetDebugBundleStatusResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus is not implemented")) +} + +func (UnimplementedDebugBundleServiceHandler) DeleteDebugBundle(context.Context, *connect.Request[v1alpha1.DeleteDebugBundleRequest]) (*connect.Response[v1alpha1.DeleteDebugBundleResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle is not implemented")) +} + +func (UnimplementedDebugBundleServiceHandler) DeleteDebugBundleFile(context.Context, *connect.Request[v1alpha1.DeleteDebugBundleFileRequest]) (*connect.Response[v1alpha1.DeleteDebugBundleFileResponse], error) { + return nil, connect.NewError(connect.CodeUnimplemented, errors.New("redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile is not implemented")) +} diff --git a/backend/pkg/protogen/redpanda/api/console/v1alpha1/consolev1alpha1connect/debug_bundle.connect.gw.go b/backend/pkg/protogen/redpanda/api/console/v1alpha1/consolev1alpha1connect/debug_bundle.connect.gw.go new file mode 100644 index 000000000..22cb838bd --- /dev/null +++ b/backend/pkg/protogen/redpanda/api/console/v1alpha1/consolev1alpha1connect/debug_bundle.connect.gw.go @@ -0,0 +1,60 @@ +// Code generated by protoc-gen-connect-gateway. DO NOT EDIT. +// +// Source: redpanda/api/console/v1alpha1/debug_bundle.proto + +package consolev1alpha1connect + +import ( + context "context" + fmt "fmt" + + runtime "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" + connect_gateway "go.vallahaye.net/connect-gateway" + + v1alpha1 "github.com/redpanda-data/console/backend/pkg/protogen/redpanda/api/console/v1alpha1" +) + +// DebugBundleServiceGatewayServer implements the gRPC server API for the DebugBundleService +// service. +type DebugBundleServiceGatewayServer struct { + v1alpha1.UnimplementedDebugBundleServiceServer + createDebugBundle connect_gateway.UnaryHandler[v1alpha1.CreateDebugBundleRequest, v1alpha1.CreateDebugBundleResponse] + getDebugBundleStatus connect_gateway.UnaryHandler[v1alpha1.GetDebugBundleStatusRequest, v1alpha1.GetDebugBundleStatusResponse] + deleteDebugBundle connect_gateway.UnaryHandler[v1alpha1.DeleteDebugBundleRequest, v1alpha1.DeleteDebugBundleResponse] + deleteDebugBundleFile connect_gateway.UnaryHandler[v1alpha1.DeleteDebugBundleFileRequest, v1alpha1.DeleteDebugBundleFileResponse] +} + +// NewDebugBundleServiceGatewayServer constructs a Connect-Gateway gRPC server for the +// DebugBundleService service. +func NewDebugBundleServiceGatewayServer(svc DebugBundleServiceHandler, opts ...connect_gateway.HandlerOption) *DebugBundleServiceGatewayServer { + return &DebugBundleServiceGatewayServer{ + createDebugBundle: connect_gateway.NewUnaryHandler(DebugBundleServiceCreateDebugBundleProcedure, svc.CreateDebugBundle, opts...), + getDebugBundleStatus: connect_gateway.NewUnaryHandler(DebugBundleServiceGetDebugBundleStatusProcedure, svc.GetDebugBundleStatus, opts...), + deleteDebugBundle: connect_gateway.NewUnaryHandler(DebugBundleServiceDeleteDebugBundleProcedure, svc.DeleteDebugBundle, opts...), + deleteDebugBundleFile: connect_gateway.NewUnaryHandler(DebugBundleServiceDeleteDebugBundleFileProcedure, svc.DeleteDebugBundleFile, opts...), + } +} + +func (s *DebugBundleServiceGatewayServer) CreateDebugBundle(ctx context.Context, req *v1alpha1.CreateDebugBundleRequest) (*v1alpha1.CreateDebugBundleResponse, error) { + return s.createDebugBundle(ctx, req) +} + +func (s *DebugBundleServiceGatewayServer) GetDebugBundleStatus(ctx context.Context, req *v1alpha1.GetDebugBundleStatusRequest) (*v1alpha1.GetDebugBundleStatusResponse, error) { + return s.getDebugBundleStatus(ctx, req) +} + +func (s *DebugBundleServiceGatewayServer) DeleteDebugBundle(ctx context.Context, req *v1alpha1.DeleteDebugBundleRequest) (*v1alpha1.DeleteDebugBundleResponse, error) { + return s.deleteDebugBundle(ctx, req) +} + +func (s *DebugBundleServiceGatewayServer) DeleteDebugBundleFile(ctx context.Context, req *v1alpha1.DeleteDebugBundleFileRequest) (*v1alpha1.DeleteDebugBundleFileResponse, error) { + return s.deleteDebugBundleFile(ctx, req) +} + +// RegisterDebugBundleServiceHandlerGatewayServer registers the Connect handlers for the +// DebugBundleService "svc" to "mux". +func RegisterDebugBundleServiceHandlerGatewayServer(mux *runtime.ServeMux, svc DebugBundleServiceHandler, opts ...connect_gateway.HandlerOption) { + if err := v1alpha1.RegisterDebugBundleServiceHandlerServer(context.TODO(), mux, NewDebugBundleServiceGatewayServer(svc, opts...)); err != nil { + panic(fmt.Errorf("connect-gateway: %w", err)) + } +} diff --git a/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go new file mode 100644 index 000000000..2e4250c71 --- /dev/null +++ b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go @@ -0,0 +1,766 @@ +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.31.0 +// protoc (unknown) +// source: redpanda/api/console/v1alpha1/debug_bundle.proto + +package consolev1alpha1 + +import ( + reflect "reflect" + sync "sync" + + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" +) + +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 GetDebugBundleStatusResponse_Status int32 + +const ( + GetDebugBundleStatusResponse_STATUS_UNSPECIFIED GetDebugBundleStatusResponse_Status = 0 + GetDebugBundleStatusResponse_STATUS_RUNNING GetDebugBundleStatusResponse_Status = 1 + GetDebugBundleStatusResponse_STATUS_SUCCESS GetDebugBundleStatusResponse_Status = 2 + GetDebugBundleStatusResponse_STATUS_ERROR GetDebugBundleStatusResponse_Status = 3 +) + +// Enum value maps for GetDebugBundleStatusResponse_Status. +var ( + GetDebugBundleStatusResponse_Status_name = map[int32]string{ + 0: "STATUS_UNSPECIFIED", + 1: "STATUS_RUNNING", + 2: "STATUS_SUCCESS", + 3: "STATUS_ERROR", + } + GetDebugBundleStatusResponse_Status_value = map[string]int32{ + "STATUS_UNSPECIFIED": 0, + "STATUS_RUNNING": 1, + "STATUS_SUCCESS": 2, + "STATUS_ERROR": 3, + } +) + +func (x GetDebugBundleStatusResponse_Status) Enum() *GetDebugBundleStatusResponse_Status { + p := new(GetDebugBundleStatusResponse_Status) + *p = x + return p +} + +func (x GetDebugBundleStatusResponse_Status) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (GetDebugBundleStatusResponse_Status) Descriptor() protoreflect.EnumDescriptor { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes[0].Descriptor() +} + +func (GetDebugBundleStatusResponse_Status) Type() protoreflect.EnumType { + return &file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes[0] +} + +func (x GetDebugBundleStatusResponse_Status) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use GetDebugBundleStatusResponse_Status.Descriptor instead. +func (GetDebugBundleStatusResponse_Status) EnumDescriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{3, 0} +} + +type CreateDebugBundleRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + ControllerLogsSizeLimitBytes int32 `protobuf:"varint,1,opt,name=controller_logs_size_limit_bytes,json=controllerLogsSizeLimitBytes,proto3" json:"controller_logs_size_limit_bytes,omitempty"` + CpuProfilerWaitSeconds int32 `protobuf:"varint,2,opt,name=cpu_profiler_wait_seconds,json=cpuProfilerWaitSeconds,proto3" json:"cpu_profiler_wait_seconds,omitempty"` + LogsSince string `protobuf:"bytes,3,opt,name=logs_since,json=logsSince,proto3" json:"logs_since,omitempty"` // TODO add validation 'YYYY-MM-DD', 'yesterday', or 'today' + LogsSizeLimitBytes int32 `protobuf:"varint,4,opt,name=logs_size_limit_bytes,json=logsSizeLimitBytes,proto3" json:"logs_size_limit_bytes,omitempty"` + LogsUntil string `protobuf:"bytes,5,opt,name=logs_until,json=logsUntil,proto3" json:"logs_until,omitempty"` // TODO add validation 'YYYY-MM-DD', 'yesterday', or 'today' + MetricsIntervalSeconds int32 `protobuf:"varint,6,opt,name=metrics_interval_seconds,json=metricsIntervalSeconds,proto3" json:"metrics_interval_seconds,omitempty"` + Partition []string `protobuf:"bytes,7,rep,name=partition,proto3" json:"partition,omitempty"` +} + +func (x *CreateDebugBundleRequest) Reset() { + *x = CreateDebugBundleRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateDebugBundleRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateDebugBundleRequest) ProtoMessage() {} + +func (x *CreateDebugBundleRequest) ProtoReflect() protoreflect.Message { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_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 CreateDebugBundleRequest.ProtoReflect.Descriptor instead. +func (*CreateDebugBundleRequest) Descriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{0} +} + +func (x *CreateDebugBundleRequest) GetControllerLogsSizeLimitBytes() int32 { + if x != nil { + return x.ControllerLogsSizeLimitBytes + } + return 0 +} + +func (x *CreateDebugBundleRequest) GetCpuProfilerWaitSeconds() int32 { + if x != nil { + return x.CpuProfilerWaitSeconds + } + return 0 +} + +func (x *CreateDebugBundleRequest) GetLogsSince() string { + if x != nil { + return x.LogsSince + } + return "" +} + +func (x *CreateDebugBundleRequest) GetLogsSizeLimitBytes() int32 { + if x != nil { + return x.LogsSizeLimitBytes + } + return 0 +} + +func (x *CreateDebugBundleRequest) GetLogsUntil() string { + if x != nil { + return x.LogsUntil + } + return "" +} + +func (x *CreateDebugBundleRequest) GetMetricsIntervalSeconds() int32 { + if x != nil { + return x.MetricsIntervalSeconds + } + return 0 +} + +func (x *CreateDebugBundleRequest) GetPartition() []string { + if x != nil { + return x.Partition + } + return nil +} + +type CreateDebugBundleResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + JobId string `protobuf:"bytes,1,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` // UUID +} + +func (x *CreateDebugBundleResponse) Reset() { + *x = CreateDebugBundleResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *CreateDebugBundleResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*CreateDebugBundleResponse) ProtoMessage() {} + +func (x *CreateDebugBundleResponse) ProtoReflect() protoreflect.Message { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_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 CreateDebugBundleResponse.ProtoReflect.Descriptor instead. +func (*CreateDebugBundleResponse) Descriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{1} +} + +func (x *CreateDebugBundleResponse) GetJobId() string { + if x != nil { + return x.JobId + } + return "" +} + +type GetDebugBundleStatusRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *GetDebugBundleStatusRequest) Reset() { + *x = GetDebugBundleStatusRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetDebugBundleStatusRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetDebugBundleStatusRequest) ProtoMessage() {} + +func (x *GetDebugBundleStatusRequest) ProtoReflect() protoreflect.Message { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_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 GetDebugBundleStatusRequest.ProtoReflect.Descriptor instead. +func (*GetDebugBundleStatusRequest) Descriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{2} +} + +type GetDebugBundleStatusResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + JobId string `protobuf:"bytes,1,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` + Status GetDebugBundleStatusResponse_Status `protobuf:"varint,2,opt,name=status,proto3,enum=redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse_Status" json:"status,omitempty"` +} + +func (x *GetDebugBundleStatusResponse) Reset() { + *x = GetDebugBundleStatusResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetDebugBundleStatusResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetDebugBundleStatusResponse) ProtoMessage() {} + +func (x *GetDebugBundleStatusResponse) ProtoReflect() protoreflect.Message { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetDebugBundleStatusResponse.ProtoReflect.Descriptor instead. +func (*GetDebugBundleStatusResponse) Descriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{3} +} + +func (x *GetDebugBundleStatusResponse) GetJobId() string { + if x != nil { + return x.JobId + } + return "" +} + +func (x *GetDebugBundleStatusResponse) GetStatus() GetDebugBundleStatusResponse_Status { + if x != nil { + return x.Status + } + return GetDebugBundleStatusResponse_STATUS_UNSPECIFIED +} + +type DeleteDebugBundleRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + JobId string `protobuf:"bytes,1,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` +} + +func (x *DeleteDebugBundleRequest) Reset() { + *x = DeleteDebugBundleRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteDebugBundleRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteDebugBundleRequest) ProtoMessage() {} + +func (x *DeleteDebugBundleRequest) ProtoReflect() protoreflect.Message { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteDebugBundleRequest.ProtoReflect.Descriptor instead. +func (*DeleteDebugBundleRequest) Descriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{4} +} + +func (x *DeleteDebugBundleRequest) GetJobId() string { + if x != nil { + return x.JobId + } + return "" +} + +type DeleteDebugBundleResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *DeleteDebugBundleResponse) Reset() { + *x = DeleteDebugBundleResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteDebugBundleResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteDebugBundleResponse) ProtoMessage() {} + +func (x *DeleteDebugBundleResponse) ProtoReflect() protoreflect.Message { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteDebugBundleResponse.ProtoReflect.Descriptor instead. +func (*DeleteDebugBundleResponse) Descriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{5} +} + +type DeleteDebugBundleFileRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + File string `protobuf:"bytes,1,opt,name=file,proto3" json:"file,omitempty"` +} + +func (x *DeleteDebugBundleFileRequest) Reset() { + *x = DeleteDebugBundleFileRequest{} + if protoimpl.UnsafeEnabled { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteDebugBundleFileRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteDebugBundleFileRequest) ProtoMessage() {} + +func (x *DeleteDebugBundleFileRequest) ProtoReflect() protoreflect.Message { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteDebugBundleFileRequest.ProtoReflect.Descriptor instead. +func (*DeleteDebugBundleFileRequest) Descriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{6} +} + +func (x *DeleteDebugBundleFileRequest) GetFile() string { + if x != nil { + return x.File + } + return "" +} + +type DeleteDebugBundleFileResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields +} + +func (x *DeleteDebugBundleFileResponse) Reset() { + *x = DeleteDebugBundleFileResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *DeleteDebugBundleFileResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*DeleteDebugBundleFileResponse) ProtoMessage() {} + +func (x *DeleteDebugBundleFileResponse) ProtoReflect() protoreflect.Message { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use DeleteDebugBundleFileResponse.ProtoReflect.Descriptor instead. +func (*DeleteDebugBundleFileResponse) Descriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{7} +} + +var File_redpanda_api_console_v1alpha1_debug_bundle_proto protoreflect.FileDescriptor + +var file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDesc = []byte{ + 0x0a, 0x30, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2f, + 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x12, 0x1d, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, + 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, + 0x31, 0x22, 0xe6, 0x02, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, + 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, + 0x0a, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, + 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x62, 0x79, 0x74, + 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x1c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, + 0x6c, 0x6c, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, 0x4c, 0x69, 0x6d, 0x69, + 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x19, 0x63, 0x70, 0x75, 0x5f, 0x70, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x6f, + 0x6e, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, 0x63, 0x70, 0x75, 0x50, 0x72, + 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x57, 0x61, 0x69, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, + 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, + 0x12, 0x31, 0x0a, 0x15, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, + 0x6d, 0x69, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x12, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x42, 0x79, + 0x74, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x75, 0x6e, 0x74, 0x69, + 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x55, 0x6e, 0x74, + 0x69, 0x6c, 0x12, 0x38, 0x0a, 0x18, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x69, 0x6e, + 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x49, 0x6e, 0x74, + 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1c, 0x0a, 0x09, + 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x09, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x32, 0x0a, 0x19, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x22, 0x1d, + 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xed, 0x01, + 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x15, + 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x5a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x42, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, + 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x22, 0x5a, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, + 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, + 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x55, + 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, + 0x53, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x53, + 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0x31, 0x0a, + 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, + 0x22, 0x1b, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, 0x0a, + 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, + 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x69, 0x6c, + 0x65, 0x22, 0x1f, 0x0a, 0x1d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, + 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x32, 0xd5, 0x04, 0x0a, 0x12, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x11, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, + 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, + 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x12, 0x91, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, + 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x3a, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, + 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, + 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, + 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x88, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, + 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, + 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x00, 0x12, 0x94, 0x01, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, + 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x3b, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, + 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, + 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0xb1, 0x02, 0x0a, 0x21, 0x63, + 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, + 0x42, 0x10, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x63, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, + 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, + 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, + 0x65, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x43, 0xaa, + 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x43, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xca, + 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xe2, + 0x02, 0x29, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x5c, + 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x20, 0x52, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, + 0x73, 0x6f, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x62, 0x06, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, +} + +var ( + file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescOnce sync.Once + file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescData = file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDesc +) + +func file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP() []byte { + file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescOnce.Do(func() { + file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescData = protoimpl.X.CompressGZIP(file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescData) + }) + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescData +} + +var file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes = make([]protoimpl.EnumInfo, 1) +var file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes = make([]protoimpl.MessageInfo, 8) +var file_redpanda_api_console_v1alpha1_debug_bundle_proto_goTypes = []interface{}{ + (GetDebugBundleStatusResponse_Status)(0), // 0: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.Status + (*CreateDebugBundleRequest)(nil), // 1: redpanda.api.console.v1alpha1.CreateDebugBundleRequest + (*CreateDebugBundleResponse)(nil), // 2: redpanda.api.console.v1alpha1.CreateDebugBundleResponse + (*GetDebugBundleStatusRequest)(nil), // 3: redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest + (*GetDebugBundleStatusResponse)(nil), // 4: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse + (*DeleteDebugBundleRequest)(nil), // 5: redpanda.api.console.v1alpha1.DeleteDebugBundleRequest + (*DeleteDebugBundleResponse)(nil), // 6: redpanda.api.console.v1alpha1.DeleteDebugBundleResponse + (*DeleteDebugBundleFileRequest)(nil), // 7: redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest + (*DeleteDebugBundleFileResponse)(nil), // 8: redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse +} +var file_redpanda_api_console_v1alpha1_debug_bundle_proto_depIdxs = []int32{ + 0, // 0: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.status:type_name -> redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.Status + 1, // 1: redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle:input_type -> redpanda.api.console.v1alpha1.CreateDebugBundleRequest + 3, // 2: redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus:input_type -> redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest + 5, // 3: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle:input_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleRequest + 7, // 4: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile:input_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest + 2, // 5: redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle:output_type -> redpanda.api.console.v1alpha1.CreateDebugBundleResponse + 4, // 6: redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus:output_type -> redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse + 6, // 7: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle:output_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleResponse + 8, // 8: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile:output_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse + 5, // [5:9] is the sub-list for method output_type + 1, // [1:5] 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_redpanda_api_console_v1alpha1_debug_bundle_proto_init() } +func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { + if File_redpanda_api_console_v1alpha1_debug_bundle_proto != nil { + return + } + if !protoimpl.UnsafeEnabled { + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateDebugBundleRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*CreateDebugBundleResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetDebugBundleStatusRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*GetDebugBundleStatusResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteDebugBundleRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteDebugBundleResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteDebugBundleFileRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteDebugBundleFileResponse); 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_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDesc, + NumEnums: 1, + NumMessages: 8, + NumExtensions: 0, + NumServices: 1, + }, + GoTypes: file_redpanda_api_console_v1alpha1_debug_bundle_proto_goTypes, + DependencyIndexes: file_redpanda_api_console_v1alpha1_debug_bundle_proto_depIdxs, + EnumInfos: file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes, + MessageInfos: file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes, + }.Build() + File_redpanda_api_console_v1alpha1_debug_bundle_proto = out.File + file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDesc = nil + file_redpanda_api_console_v1alpha1_debug_bundle_proto_goTypes = nil + file_redpanda_api_console_v1alpha1_debug_bundle_proto_depIdxs = nil +} diff --git a/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.gw.go b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.gw.go new file mode 100644 index 000000000..9de2dafe9 --- /dev/null +++ b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.gw.go @@ -0,0 +1,426 @@ +// Code generated by protoc-gen-grpc-gateway. DO NOT EDIT. +// source: redpanda/api/console/v1alpha1/debug_bundle.proto + +/* +Package consolev1alpha1 is a reverse proxy. + +It translates gRPC into RESTful JSON APIs. +*/ +package consolev1alpha1 + +import ( + "context" + "io" + "net/http" + + "github.com/grpc-ecosystem/grpc-gateway/v2/runtime" + "github.com/grpc-ecosystem/grpc-gateway/v2/utilities" + "google.golang.org/grpc" + "google.golang.org/grpc/codes" + "google.golang.org/grpc/grpclog" + "google.golang.org/grpc/metadata" + "google.golang.org/grpc/status" + "google.golang.org/protobuf/proto" +) + +// Suppress "imported and not used" errors +var _ codes.Code +var _ io.Reader +var _ status.Status +var _ = runtime.String +var _ = utilities.NewDoubleArray +var _ = metadata.Join + +func request_DebugBundleService_CreateDebugBundle_0(ctx context.Context, marshaler runtime.Marshaler, client DebugBundleServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq CreateDebugBundleRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.CreateDebugBundle(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_DebugBundleService_CreateDebugBundle_0(ctx context.Context, marshaler runtime.Marshaler, server DebugBundleServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq CreateDebugBundleRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.CreateDebugBundle(ctx, &protoReq) + return msg, metadata, err + +} + +func request_DebugBundleService_GetDebugBundleStatus_0(ctx context.Context, marshaler runtime.Marshaler, client DebugBundleServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GetDebugBundleStatusRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.GetDebugBundleStatus(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_DebugBundleService_GetDebugBundleStatus_0(ctx context.Context, marshaler runtime.Marshaler, server DebugBundleServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq GetDebugBundleStatusRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.GetDebugBundleStatus(ctx, &protoReq) + return msg, metadata, err + +} + +func request_DebugBundleService_DeleteDebugBundle_0(ctx context.Context, marshaler runtime.Marshaler, client DebugBundleServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteDebugBundleRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.DeleteDebugBundle(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_DebugBundleService_DeleteDebugBundle_0(ctx context.Context, marshaler runtime.Marshaler, server DebugBundleServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteDebugBundleRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.DeleteDebugBundle(ctx, &protoReq) + return msg, metadata, err + +} + +func request_DebugBundleService_DeleteDebugBundleFile_0(ctx context.Context, marshaler runtime.Marshaler, client DebugBundleServiceClient, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteDebugBundleFileRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := client.DeleteDebugBundleFile(ctx, &protoReq, grpc.Header(&metadata.HeaderMD), grpc.Trailer(&metadata.TrailerMD)) + return msg, metadata, err + +} + +func local_request_DebugBundleService_DeleteDebugBundleFile_0(ctx context.Context, marshaler runtime.Marshaler, server DebugBundleServiceServer, req *http.Request, pathParams map[string]string) (proto.Message, runtime.ServerMetadata, error) { + var protoReq DeleteDebugBundleFileRequest + var metadata runtime.ServerMetadata + + newReader, berr := utilities.IOReaderFactory(req.Body) + if berr != nil { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", berr) + } + if err := marshaler.NewDecoder(newReader()).Decode(&protoReq); err != nil && err != io.EOF { + return nil, metadata, status.Errorf(codes.InvalidArgument, "%v", err) + } + + msg, err := server.DeleteDebugBundleFile(ctx, &protoReq) + return msg, metadata, err + +} + +// RegisterDebugBundleServiceHandlerServer registers the http handlers for service DebugBundleService to "mux". +// UnaryRPC :call DebugBundleServiceServer directly. +// StreamingRPC :currently unsupported pending https://github.com/grpc/grpc-go/issues/906. +// Note that using this registration option will cause many gRPC library features to stop working. Consider using RegisterDebugBundleServiceHandlerFromEndpoint instead. +func RegisterDebugBundleServiceHandlerServer(ctx context.Context, mux *runtime.ServeMux, server DebugBundleServiceServer) error { + + mux.Handle("POST", pattern_DebugBundleService_CreateDebugBundle_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/redpanda.api.console.v1alpha1.DebugBundleService/CreateDebugBundle", runtime.WithHTTPPathPattern("/redpanda.api.console.v1alpha1.DebugBundleService/CreateDebugBundle")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_DebugBundleService_CreateDebugBundle_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_DebugBundleService_CreateDebugBundle_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_DebugBundleService_GetDebugBundleStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/redpanda.api.console.v1alpha1.DebugBundleService/GetDebugBundleStatus", runtime.WithHTTPPathPattern("/redpanda.api.console.v1alpha1.DebugBundleService/GetDebugBundleStatus")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_DebugBundleService_GetDebugBundleStatus_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_DebugBundleService_GetDebugBundleStatus_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_DebugBundleService_DeleteDebugBundle_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/redpanda.api.console.v1alpha1.DebugBundleService/DeleteDebugBundle", runtime.WithHTTPPathPattern("/redpanda.api.console.v1alpha1.DebugBundleService/DeleteDebugBundle")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_DebugBundleService_DeleteDebugBundle_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_DebugBundleService_DeleteDebugBundle_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_DebugBundleService_DeleteDebugBundleFile_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + var stream runtime.ServerTransportStream + ctx = grpc.NewContextWithServerTransportStream(ctx, &stream) + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateIncomingContext(ctx, mux, req, "/redpanda.api.console.v1alpha1.DebugBundleService/DeleteDebugBundleFile", runtime.WithHTTPPathPattern("/redpanda.api.console.v1alpha1.DebugBundleService/DeleteDebugBundleFile")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := local_request_DebugBundleService_DeleteDebugBundleFile_0(annotatedContext, inboundMarshaler, server, req, pathParams) + md.HeaderMD, md.TrailerMD = metadata.Join(md.HeaderMD, stream.Header()), metadata.Join(md.TrailerMD, stream.Trailer()) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_DebugBundleService_DeleteDebugBundleFile_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +// RegisterDebugBundleServiceHandlerFromEndpoint is same as RegisterDebugBundleServiceHandler but +// automatically dials to "endpoint" and closes the connection when "ctx" gets done. +func RegisterDebugBundleServiceHandlerFromEndpoint(ctx context.Context, mux *runtime.ServeMux, endpoint string, opts []grpc.DialOption) (err error) { + conn, err := grpc.DialContext(ctx, endpoint, opts...) + if err != nil { + return err + } + defer func() { + if err != nil { + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + return + } + go func() { + <-ctx.Done() + if cerr := conn.Close(); cerr != nil { + grpclog.Infof("Failed to close conn to %s: %v", endpoint, cerr) + } + }() + }() + + return RegisterDebugBundleServiceHandler(ctx, mux, conn) +} + +// RegisterDebugBundleServiceHandler registers the http handlers for service DebugBundleService to "mux". +// The handlers forward requests to the grpc endpoint over "conn". +func RegisterDebugBundleServiceHandler(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error { + return RegisterDebugBundleServiceHandlerClient(ctx, mux, NewDebugBundleServiceClient(conn)) +} + +// RegisterDebugBundleServiceHandlerClient registers the http handlers for service DebugBundleService +// to "mux". The handlers forward requests to the grpc endpoint over the given implementation of "DebugBundleServiceClient". +// Note: the gRPC framework executes interceptors within the gRPC handler. If the passed in "DebugBundleServiceClient" +// doesn't go through the normal gRPC flow (creating a gRPC client etc.) then it will be up to the passed in +// "DebugBundleServiceClient" to call the correct interceptors. +func RegisterDebugBundleServiceHandlerClient(ctx context.Context, mux *runtime.ServeMux, client DebugBundleServiceClient) error { + + mux.Handle("POST", pattern_DebugBundleService_CreateDebugBundle_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/redpanda.api.console.v1alpha1.DebugBundleService/CreateDebugBundle", runtime.WithHTTPPathPattern("/redpanda.api.console.v1alpha1.DebugBundleService/CreateDebugBundle")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_DebugBundleService_CreateDebugBundle_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_DebugBundleService_CreateDebugBundle_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_DebugBundleService_GetDebugBundleStatus_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/redpanda.api.console.v1alpha1.DebugBundleService/GetDebugBundleStatus", runtime.WithHTTPPathPattern("/redpanda.api.console.v1alpha1.DebugBundleService/GetDebugBundleStatus")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_DebugBundleService_GetDebugBundleStatus_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_DebugBundleService_GetDebugBundleStatus_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_DebugBundleService_DeleteDebugBundle_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/redpanda.api.console.v1alpha1.DebugBundleService/DeleteDebugBundle", runtime.WithHTTPPathPattern("/redpanda.api.console.v1alpha1.DebugBundleService/DeleteDebugBundle")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_DebugBundleService_DeleteDebugBundle_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_DebugBundleService_DeleteDebugBundle_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + mux.Handle("POST", pattern_DebugBundleService_DeleteDebugBundleFile_0, func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) { + ctx, cancel := context.WithCancel(req.Context()) + defer cancel() + inboundMarshaler, outboundMarshaler := runtime.MarshalerForRequest(mux, req) + var err error + var annotatedContext context.Context + annotatedContext, err = runtime.AnnotateContext(ctx, mux, req, "/redpanda.api.console.v1alpha1.DebugBundleService/DeleteDebugBundleFile", runtime.WithHTTPPathPattern("/redpanda.api.console.v1alpha1.DebugBundleService/DeleteDebugBundleFile")) + if err != nil { + runtime.HTTPError(ctx, mux, outboundMarshaler, w, req, err) + return + } + resp, md, err := request_DebugBundleService_DeleteDebugBundleFile_0(annotatedContext, inboundMarshaler, client, req, pathParams) + annotatedContext = runtime.NewServerMetadataContext(annotatedContext, md) + if err != nil { + runtime.HTTPError(annotatedContext, mux, outboundMarshaler, w, req, err) + return + } + + forward_DebugBundleService_DeleteDebugBundleFile_0(annotatedContext, mux, outboundMarshaler, w, req, resp, mux.GetForwardResponseOptions()...) + + }) + + return nil +} + +var ( + pattern_DebugBundleService_CreateDebugBundle_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"redpanda.api.console.v1alpha1.DebugBundleService", "CreateDebugBundle"}, "")) + + pattern_DebugBundleService_GetDebugBundleStatus_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"redpanda.api.console.v1alpha1.DebugBundleService", "GetDebugBundleStatus"}, "")) + + pattern_DebugBundleService_DeleteDebugBundle_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"redpanda.api.console.v1alpha1.DebugBundleService", "DeleteDebugBundle"}, "")) + + pattern_DebugBundleService_DeleteDebugBundleFile_0 = runtime.MustPattern(runtime.NewPattern(1, []int{2, 0, 2, 1}, []string{"redpanda.api.console.v1alpha1.DebugBundleService", "DeleteDebugBundleFile"}, "")) +) + +var ( + forward_DebugBundleService_CreateDebugBundle_0 = runtime.ForwardResponseMessage + + forward_DebugBundleService_GetDebugBundleStatus_0 = runtime.ForwardResponseMessage + + forward_DebugBundleService_DeleteDebugBundle_0 = runtime.ForwardResponseMessage + + forward_DebugBundleService_DeleteDebugBundleFile_0 = runtime.ForwardResponseMessage +) diff --git a/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle_grpc.pb.go b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle_grpc.pb.go new file mode 100644 index 000000000..cf5d0af20 --- /dev/null +++ b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle_grpc.pb.go @@ -0,0 +1,221 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.3.0 +// - protoc (unknown) +// source: redpanda/api/console/v1alpha1/debug_bundle.proto + +package consolev1alpha1 + +import ( + context "context" + + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.32.0 or later. +const _ = grpc.SupportPackageIsVersion7 + +const ( + DebugBundleService_CreateDebugBundle_FullMethodName = "/redpanda.api.console.v1alpha1.DebugBundleService/CreateDebugBundle" + DebugBundleService_GetDebugBundleStatus_FullMethodName = "/redpanda.api.console.v1alpha1.DebugBundleService/GetDebugBundleStatus" + DebugBundleService_DeleteDebugBundle_FullMethodName = "/redpanda.api.console.v1alpha1.DebugBundleService/DeleteDebugBundle" + DebugBundleService_DeleteDebugBundleFile_FullMethodName = "/redpanda.api.console.v1alpha1.DebugBundleService/DeleteDebugBundleFile" +) + +// DebugBundleServiceClient is the client API for DebugBundleService service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type DebugBundleServiceClient interface { + CreateDebugBundle(ctx context.Context, in *CreateDebugBundleRequest, opts ...grpc.CallOption) (*CreateDebugBundleResponse, error) + GetDebugBundleStatus(ctx context.Context, in *GetDebugBundleStatusRequest, opts ...grpc.CallOption) (*GetDebugBundleStatusResponse, error) + DeleteDebugBundle(ctx context.Context, in *DeleteDebugBundleRequest, opts ...grpc.CallOption) (*DeleteDebugBundleResponse, error) + DeleteDebugBundleFile(ctx context.Context, in *DeleteDebugBundleFileRequest, opts ...grpc.CallOption) (*DeleteDebugBundleFileResponse, error) +} + +type debugBundleServiceClient struct { + cc grpc.ClientConnInterface +} + +func NewDebugBundleServiceClient(cc grpc.ClientConnInterface) DebugBundleServiceClient { + return &debugBundleServiceClient{cc} +} + +func (c *debugBundleServiceClient) CreateDebugBundle(ctx context.Context, in *CreateDebugBundleRequest, opts ...grpc.CallOption) (*CreateDebugBundleResponse, error) { + out := new(CreateDebugBundleResponse) + err := c.cc.Invoke(ctx, DebugBundleService_CreateDebugBundle_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *debugBundleServiceClient) GetDebugBundleStatus(ctx context.Context, in *GetDebugBundleStatusRequest, opts ...grpc.CallOption) (*GetDebugBundleStatusResponse, error) { + out := new(GetDebugBundleStatusResponse) + err := c.cc.Invoke(ctx, DebugBundleService_GetDebugBundleStatus_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *debugBundleServiceClient) DeleteDebugBundle(ctx context.Context, in *DeleteDebugBundleRequest, opts ...grpc.CallOption) (*DeleteDebugBundleResponse, error) { + out := new(DeleteDebugBundleResponse) + err := c.cc.Invoke(ctx, DebugBundleService_DeleteDebugBundle_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *debugBundleServiceClient) DeleteDebugBundleFile(ctx context.Context, in *DeleteDebugBundleFileRequest, opts ...grpc.CallOption) (*DeleteDebugBundleFileResponse, error) { + out := new(DeleteDebugBundleFileResponse) + err := c.cc.Invoke(ctx, DebugBundleService_DeleteDebugBundleFile_FullMethodName, in, out, opts...) + if err != nil { + return nil, err + } + return out, nil +} + +// DebugBundleServiceServer is the server API for DebugBundleService service. +// All implementations must embed UnimplementedDebugBundleServiceServer +// for forward compatibility +type DebugBundleServiceServer interface { + CreateDebugBundle(context.Context, *CreateDebugBundleRequest) (*CreateDebugBundleResponse, error) + GetDebugBundleStatus(context.Context, *GetDebugBundleStatusRequest) (*GetDebugBundleStatusResponse, error) + DeleteDebugBundle(context.Context, *DeleteDebugBundleRequest) (*DeleteDebugBundleResponse, error) + DeleteDebugBundleFile(context.Context, *DeleteDebugBundleFileRequest) (*DeleteDebugBundleFileResponse, error) + mustEmbedUnimplementedDebugBundleServiceServer() +} + +// UnimplementedDebugBundleServiceServer must be embedded to have forward compatible implementations. +type UnimplementedDebugBundleServiceServer struct { +} + +func (UnimplementedDebugBundleServiceServer) CreateDebugBundle(context.Context, *CreateDebugBundleRequest) (*CreateDebugBundleResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method CreateDebugBundle not implemented") +} +func (UnimplementedDebugBundleServiceServer) GetDebugBundleStatus(context.Context, *GetDebugBundleStatusRequest) (*GetDebugBundleStatusResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetDebugBundleStatus not implemented") +} +func (UnimplementedDebugBundleServiceServer) DeleteDebugBundle(context.Context, *DeleteDebugBundleRequest) (*DeleteDebugBundleResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteDebugBundle not implemented") +} +func (UnimplementedDebugBundleServiceServer) DeleteDebugBundleFile(context.Context, *DeleteDebugBundleFileRequest) (*DeleteDebugBundleFileResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method DeleteDebugBundleFile not implemented") +} +func (UnimplementedDebugBundleServiceServer) mustEmbedUnimplementedDebugBundleServiceServer() {} + +// UnsafeDebugBundleServiceServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to DebugBundleServiceServer will +// result in compilation errors. +type UnsafeDebugBundleServiceServer interface { + mustEmbedUnimplementedDebugBundleServiceServer() +} + +func RegisterDebugBundleServiceServer(s grpc.ServiceRegistrar, srv DebugBundleServiceServer) { + s.RegisterService(&DebugBundleService_ServiceDesc, srv) +} + +func _DebugBundleService_CreateDebugBundle_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(CreateDebugBundleRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DebugBundleServiceServer).CreateDebugBundle(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DebugBundleService_CreateDebugBundle_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DebugBundleServiceServer).CreateDebugBundle(ctx, req.(*CreateDebugBundleRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DebugBundleService_GetDebugBundleStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetDebugBundleStatusRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DebugBundleServiceServer).GetDebugBundleStatus(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DebugBundleService_GetDebugBundleStatus_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DebugBundleServiceServer).GetDebugBundleStatus(ctx, req.(*GetDebugBundleStatusRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DebugBundleService_DeleteDebugBundle_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteDebugBundleRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DebugBundleServiceServer).DeleteDebugBundle(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DebugBundleService_DeleteDebugBundle_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DebugBundleServiceServer).DeleteDebugBundle(ctx, req.(*DeleteDebugBundleRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _DebugBundleService_DeleteDebugBundleFile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(DeleteDebugBundleFileRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(DebugBundleServiceServer).DeleteDebugBundleFile(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: DebugBundleService_DeleteDebugBundleFile_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(DebugBundleServiceServer).DeleteDebugBundleFile(ctx, req.(*DeleteDebugBundleFileRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// DebugBundleService_ServiceDesc is the grpc.ServiceDesc for DebugBundleService service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var DebugBundleService_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "redpanda.api.console.v1alpha1.DebugBundleService", + HandlerType: (*DebugBundleServiceServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "CreateDebugBundle", + Handler: _DebugBundleService_CreateDebugBundle_Handler, + }, + { + MethodName: "GetDebugBundleStatus", + Handler: _DebugBundleService_GetDebugBundleStatus_Handler, + }, + { + MethodName: "DeleteDebugBundle", + Handler: _DebugBundleService_DeleteDebugBundle_Handler, + }, + { + MethodName: "DeleteDebugBundleFile", + Handler: _DebugBundleService_DeleteDebugBundleFile_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "redpanda/api/console/v1alpha1/debug_bundle.proto", +} diff --git a/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_connect.ts b/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_connect.ts new file mode 100644 index 000000000..bc2327ae5 --- /dev/null +++ b/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_connect.ts @@ -0,0 +1,53 @@ +// @generated by protoc-gen-connect-es v1.2.0 with parameter "target=ts,import_extension=" +// @generated from file redpanda/api/console/v1alpha1/debug_bundle.proto (package redpanda.api.console.v1alpha1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import { CreateDebugBundleRequest, CreateDebugBundleResponse, DeleteDebugBundleFileRequest, DeleteDebugBundleFileResponse, DeleteDebugBundleRequest, DeleteDebugBundleResponse, GetDebugBundleStatusRequest, GetDebugBundleStatusResponse } from "./debug_bundle_pb"; +import { MethodKind } from "@bufbuild/protobuf"; + +/** + * @generated from service redpanda.api.console.v1alpha1.DebugBundleService + */ +export const DebugBundleService = { + typeName: "redpanda.api.console.v1alpha1.DebugBundleService", + methods: { + /** + * @generated from rpc redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle + */ + createDebugBundle: { + name: "CreateDebugBundle", + I: CreateDebugBundleRequest, + O: CreateDebugBundleResponse, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus + */ + getDebugBundleStatus: { + name: "GetDebugBundleStatus", + I: GetDebugBundleStatusRequest, + O: GetDebugBundleStatusResponse, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle + */ + deleteDebugBundle: { + name: "DeleteDebugBundle", + I: DeleteDebugBundleRequest, + O: DeleteDebugBundleResponse, + kind: MethodKind.Unary, + }, + /** + * @generated from rpc redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile + */ + deleteDebugBundleFile: { + name: "DeleteDebugBundleFile", + I: DeleteDebugBundleFileRequest, + O: DeleteDebugBundleFileResponse, + kind: MethodKind.Unary, + }, + } +} as const; + diff --git a/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts b/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts new file mode 100644 index 000000000..c19617d21 --- /dev/null +++ b/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts @@ -0,0 +1,366 @@ +// @generated by protoc-gen-es v1.6.0 with parameter "target=ts,import_extension=" +// @generated from file redpanda/api/console/v1alpha1/debug_bundle.proto (package redpanda.api.console.v1alpha1, syntax proto3) +/* eslint-disable */ +// @ts-nocheck + +import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage } from "@bufbuild/protobuf"; +import { Message, proto3 } from "@bufbuild/protobuf"; + +/** + * @generated from message redpanda.api.console.v1alpha1.CreateDebugBundleRequest + */ +export class CreateDebugBundleRequest extends Message { + /** + * @generated from field: int32 controller_logs_size_limit_bytes = 1; + */ + controllerLogsSizeLimitBytes = 0; + + /** + * @generated from field: int32 cpu_profiler_wait_seconds = 2; + */ + cpuProfilerWaitSeconds = 0; + + /** + * TODO add validation 'YYYY-MM-DD', 'yesterday', or 'today' + * + * @generated from field: string logs_since = 3; + */ + logsSince = ""; + + /** + * @generated from field: int32 logs_size_limit_bytes = 4; + */ + logsSizeLimitBytes = 0; + + /** + * TODO add validation 'YYYY-MM-DD', 'yesterday', or 'today' + * + * @generated from field: string logs_until = 5; + */ + logsUntil = ""; + + /** + * @generated from field: int32 metrics_interval_seconds = 6; + */ + metricsIntervalSeconds = 0; + + /** + * @generated from field: repeated string partition = 7; + */ + partition: string[] = []; + + constructor(data?: PartialMessage) { + super(); + proto3.util.initPartial(data, this); + } + + static readonly runtime: typeof proto3 = proto3; + static readonly typeName = "redpanda.api.console.v1alpha1.CreateDebugBundleRequest"; + static readonly fields: FieldList = proto3.util.newFieldList(() => [ + { no: 1, name: "controller_logs_size_limit_bytes", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, + { no: 2, name: "cpu_profiler_wait_seconds", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, + { no: 3, name: "logs_since", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 4, name: "logs_size_limit_bytes", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, + { no: 5, name: "logs_until", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 6, name: "metrics_interval_seconds", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, + { no: 7, name: "partition", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true }, + ]); + + static fromBinary(bytes: Uint8Array, options?: Partial): CreateDebugBundleRequest { + return new CreateDebugBundleRequest().fromBinary(bytes, options); + } + + static fromJson(jsonValue: JsonValue, options?: Partial): CreateDebugBundleRequest { + return new CreateDebugBundleRequest().fromJson(jsonValue, options); + } + + static fromJsonString(jsonString: string, options?: Partial): CreateDebugBundleRequest { + return new CreateDebugBundleRequest().fromJsonString(jsonString, options); + } + + static equals(a: CreateDebugBundleRequest | PlainMessage | undefined, b: CreateDebugBundleRequest | PlainMessage | undefined): boolean { + return proto3.util.equals(CreateDebugBundleRequest, a, b); + } +} + +/** + * @generated from message redpanda.api.console.v1alpha1.CreateDebugBundleResponse + */ +export class CreateDebugBundleResponse extends Message { + /** + * UUID + * + * @generated from field: string job_id = 1; + */ + jobId = ""; + + constructor(data?: PartialMessage) { + super(); + proto3.util.initPartial(data, this); + } + + static readonly runtime: typeof proto3 = proto3; + static readonly typeName = "redpanda.api.console.v1alpha1.CreateDebugBundleResponse"; + static readonly fields: FieldList = proto3.util.newFieldList(() => [ + { no: 1, name: "job_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ]); + + static fromBinary(bytes: Uint8Array, options?: Partial): CreateDebugBundleResponse { + return new CreateDebugBundleResponse().fromBinary(bytes, options); + } + + static fromJson(jsonValue: JsonValue, options?: Partial): CreateDebugBundleResponse { + return new CreateDebugBundleResponse().fromJson(jsonValue, options); + } + + static fromJsonString(jsonString: string, options?: Partial): CreateDebugBundleResponse { + return new CreateDebugBundleResponse().fromJsonString(jsonString, options); + } + + static equals(a: CreateDebugBundleResponse | PlainMessage | undefined, b: CreateDebugBundleResponse | PlainMessage | undefined): boolean { + return proto3.util.equals(CreateDebugBundleResponse, a, b); + } +} + +/** + * @generated from message redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest + */ +export class GetDebugBundleStatusRequest extends Message { + constructor(data?: PartialMessage) { + super(); + proto3.util.initPartial(data, this); + } + + static readonly runtime: typeof proto3 = proto3; + static readonly typeName = "redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest"; + static readonly fields: FieldList = proto3.util.newFieldList(() => [ + ]); + + static fromBinary(bytes: Uint8Array, options?: Partial): GetDebugBundleStatusRequest { + return new GetDebugBundleStatusRequest().fromBinary(bytes, options); + } + + static fromJson(jsonValue: JsonValue, options?: Partial): GetDebugBundleStatusRequest { + return new GetDebugBundleStatusRequest().fromJson(jsonValue, options); + } + + static fromJsonString(jsonString: string, options?: Partial): GetDebugBundleStatusRequest { + return new GetDebugBundleStatusRequest().fromJsonString(jsonString, options); + } + + static equals(a: GetDebugBundleStatusRequest | PlainMessage | undefined, b: GetDebugBundleStatusRequest | PlainMessage | undefined): boolean { + return proto3.util.equals(GetDebugBundleStatusRequest, a, b); + } +} + +/** + * @generated from message redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse + */ +export class GetDebugBundleStatusResponse extends Message { + /** + * @generated from field: string job_id = 1; + */ + jobId = ""; + + /** + * @generated from field: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.Status status = 2; + */ + status = GetDebugBundleStatusResponse_Status.UNSPECIFIED; + + constructor(data?: PartialMessage) { + super(); + proto3.util.initPartial(data, this); + } + + static readonly runtime: typeof proto3 = proto3; + static readonly typeName = "redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse"; + static readonly fields: FieldList = proto3.util.newFieldList(() => [ + { no: 1, name: "job_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "status", kind: "enum", T: proto3.getEnumType(GetDebugBundleStatusResponse_Status) }, + ]); + + static fromBinary(bytes: Uint8Array, options?: Partial): GetDebugBundleStatusResponse { + return new GetDebugBundleStatusResponse().fromBinary(bytes, options); + } + + static fromJson(jsonValue: JsonValue, options?: Partial): GetDebugBundleStatusResponse { + return new GetDebugBundleStatusResponse().fromJson(jsonValue, options); + } + + static fromJsonString(jsonString: string, options?: Partial): GetDebugBundleStatusResponse { + return new GetDebugBundleStatusResponse().fromJsonString(jsonString, options); + } + + static equals(a: GetDebugBundleStatusResponse | PlainMessage | undefined, b: GetDebugBundleStatusResponse | PlainMessage | undefined): boolean { + return proto3.util.equals(GetDebugBundleStatusResponse, a, b); + } +} + +/** + * @generated from enum redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.Status + */ +export enum GetDebugBundleStatusResponse_Status { + /** + * @generated from enum value: STATUS_UNSPECIFIED = 0; + */ + UNSPECIFIED = 0, + + /** + * @generated from enum value: STATUS_RUNNING = 1; + */ + RUNNING = 1, + + /** + * @generated from enum value: STATUS_SUCCESS = 2; + */ + SUCCESS = 2, + + /** + * @generated from enum value: STATUS_ERROR = 3; + */ + ERROR = 3, +} +// Retrieve enum metadata with: proto3.getEnumType(GetDebugBundleStatusResponse_Status) +proto3.util.setEnumType(GetDebugBundleStatusResponse_Status, "redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.Status", [ + { no: 0, name: "STATUS_UNSPECIFIED" }, + { no: 1, name: "STATUS_RUNNING" }, + { no: 2, name: "STATUS_SUCCESS" }, + { no: 3, name: "STATUS_ERROR" }, +]); + +/** + * @generated from message redpanda.api.console.v1alpha1.DeleteDebugBundleRequest + */ +export class DeleteDebugBundleRequest extends Message { + /** + * @generated from field: string job_id = 1; + */ + jobId = ""; + + constructor(data?: PartialMessage) { + super(); + proto3.util.initPartial(data, this); + } + + static readonly runtime: typeof proto3 = proto3; + static readonly typeName = "redpanda.api.console.v1alpha1.DeleteDebugBundleRequest"; + static readonly fields: FieldList = proto3.util.newFieldList(() => [ + { no: 1, name: "job_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ]); + + static fromBinary(bytes: Uint8Array, options?: Partial): DeleteDebugBundleRequest { + return new DeleteDebugBundleRequest().fromBinary(bytes, options); + } + + static fromJson(jsonValue: JsonValue, options?: Partial): DeleteDebugBundleRequest { + return new DeleteDebugBundleRequest().fromJson(jsonValue, options); + } + + static fromJsonString(jsonString: string, options?: Partial): DeleteDebugBundleRequest { + return new DeleteDebugBundleRequest().fromJsonString(jsonString, options); + } + + static equals(a: DeleteDebugBundleRequest | PlainMessage | undefined, b: DeleteDebugBundleRequest | PlainMessage | undefined): boolean { + return proto3.util.equals(DeleteDebugBundleRequest, a, b); + } +} + +/** + * @generated from message redpanda.api.console.v1alpha1.DeleteDebugBundleResponse + */ +export class DeleteDebugBundleResponse extends Message { + constructor(data?: PartialMessage) { + super(); + proto3.util.initPartial(data, this); + } + + static readonly runtime: typeof proto3 = proto3; + static readonly typeName = "redpanda.api.console.v1alpha1.DeleteDebugBundleResponse"; + static readonly fields: FieldList = proto3.util.newFieldList(() => [ + ]); + + static fromBinary(bytes: Uint8Array, options?: Partial): DeleteDebugBundleResponse { + return new DeleteDebugBundleResponse().fromBinary(bytes, options); + } + + static fromJson(jsonValue: JsonValue, options?: Partial): DeleteDebugBundleResponse { + return new DeleteDebugBundleResponse().fromJson(jsonValue, options); + } + + static fromJsonString(jsonString: string, options?: Partial): DeleteDebugBundleResponse { + return new DeleteDebugBundleResponse().fromJsonString(jsonString, options); + } + + static equals(a: DeleteDebugBundleResponse | PlainMessage | undefined, b: DeleteDebugBundleResponse | PlainMessage | undefined): boolean { + return proto3.util.equals(DeleteDebugBundleResponse, a, b); + } +} + +/** + * @generated from message redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest + */ +export class DeleteDebugBundleFileRequest extends Message { + /** + * @generated from field: string file = 1; + */ + file = ""; + + constructor(data?: PartialMessage) { + super(); + proto3.util.initPartial(data, this); + } + + static readonly runtime: typeof proto3 = proto3; + static readonly typeName = "redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest"; + static readonly fields: FieldList = proto3.util.newFieldList(() => [ + { no: 1, name: "file", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ]); + + static fromBinary(bytes: Uint8Array, options?: Partial): DeleteDebugBundleFileRequest { + return new DeleteDebugBundleFileRequest().fromBinary(bytes, options); + } + + static fromJson(jsonValue: JsonValue, options?: Partial): DeleteDebugBundleFileRequest { + return new DeleteDebugBundleFileRequest().fromJson(jsonValue, options); + } + + static fromJsonString(jsonString: string, options?: Partial): DeleteDebugBundleFileRequest { + return new DeleteDebugBundleFileRequest().fromJsonString(jsonString, options); + } + + static equals(a: DeleteDebugBundleFileRequest | PlainMessage | undefined, b: DeleteDebugBundleFileRequest | PlainMessage | undefined): boolean { + return proto3.util.equals(DeleteDebugBundleFileRequest, a, b); + } +} + +/** + * @generated from message redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse + */ +export class DeleteDebugBundleFileResponse extends Message { + constructor(data?: PartialMessage) { + super(); + proto3.util.initPartial(data, this); + } + + static readonly runtime: typeof proto3 = proto3; + static readonly typeName = "redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse"; + static readonly fields: FieldList = proto3.util.newFieldList(() => [ + ]); + + static fromBinary(bytes: Uint8Array, options?: Partial): DeleteDebugBundleFileResponse { + return new DeleteDebugBundleFileResponse().fromBinary(bytes, options); + } + + static fromJson(jsonValue: JsonValue, options?: Partial): DeleteDebugBundleFileResponse { + return new DeleteDebugBundleFileResponse().fromJson(jsonValue, options); + } + + static fromJsonString(jsonString: string, options?: Partial): DeleteDebugBundleFileResponse { + return new DeleteDebugBundleFileResponse().fromJsonString(jsonString, options); + } + + static equals(a: DeleteDebugBundleFileResponse | PlainMessage | undefined, b: DeleteDebugBundleFileResponse | PlainMessage | undefined): boolean { + return proto3.util.equals(DeleteDebugBundleFileResponse, a, b); + } +} + diff --git a/proto/redpanda/api/console/v1alpha1/debug_bundle.proto b/proto/redpanda/api/console/v1alpha1/debug_bundle.proto new file mode 100644 index 000000000..4a613e6ec --- /dev/null +++ b/proto/redpanda/api/console/v1alpha1/debug_bundle.proto @@ -0,0 +1,54 @@ +syntax = "proto3"; + +package redpanda.api.console.v1alpha1; + +message CreateDebugBundleRequest { + int32 controller_logs_size_limit_bytes = 1; + int32 cpu_profiler_wait_seconds = 2; + string logs_since = 3; // TODO add validation 'YYYY-MM-DD', 'yesterday', or 'today' + int32 logs_size_limit_bytes = 4; + string logs_until = 5; // TODO add validation 'YYYY-MM-DD', 'yesterday', or 'today' + int32 metrics_interval_seconds = 6; + repeated string partition = 7; +} + +message CreateDebugBundleResponse { + string job_id = 1; // UUID +} + +message GetDebugBundleStatusRequest {} + +message GetDebugBundleStatusResponse { + string job_id = 1; + Status status = 2; + + enum Status { + STATUS_UNSPECIFIED = 0; + STATUS_RUNNING = 1; + STATUS_SUCCESS = 2; + STATUS_ERROR = 3; + } +} + +message DeleteDebugBundleRequest { + string job_id = 1; +} + +message DeleteDebugBundleResponse {} + +message DeleteDebugBundleFileRequest { + string file = 1; +} + +message DeleteDebugBundleFileResponse {} + +// Additional API: +// GET /api/debug_bundle/{file} +// This will download the debug bundle zip file + +service DebugBundleService { + rpc CreateDebugBundle(CreateDebugBundleRequest) returns (CreateDebugBundleResponse) {} + rpc GetDebugBundleStatus(GetDebugBundleStatusRequest) returns (GetDebugBundleStatusResponse) {} + rpc DeleteDebugBundle(DeleteDebugBundleRequest) returns (DeleteDebugBundleResponse) {} + rpc DeleteDebugBundleFile(DeleteDebugBundleFileRequest) returns (DeleteDebugBundleFileResponse) {} +} From f975d49e4e0beb5275aa60329b7aff00f52a1d58 Mon Sep 17 00:00:00 2001 From: Bojan Djurkovic Date: Wed, 11 Sep 2024 21:54:32 -0300 Subject: [PATCH 2/6] proto: improvements to create debug bundle api proto: use timestamps for logs since and until improve comments improve comments and validation add broker id path --- .../api/console/v1alpha1/debug_bundle.pb.go | 784 +++++++++++++----- .../api/console/v1alpha1/debug_bundle_pb.ts | 356 +++++++- .../api/console/v1alpha1/debug_bundle.proto | 131 ++- 3 files changed, 1020 insertions(+), 251 deletions(-) diff --git a/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go index 2e4250c71..e8c20a98a 100644 --- a/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go +++ b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go @@ -10,8 +10,10 @@ import ( reflect "reflect" sync "sync" + _ "buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" + timestamppb "google.golang.org/protobuf/types/known/timestamppb" ) const ( @@ -21,24 +23,90 @@ const ( _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) ) -type GetDebugBundleStatusResponse_Status int32 +// Error code enum. +type BundleErrorCode int32 const ( - GetDebugBundleStatusResponse_STATUS_UNSPECIFIED GetDebugBundleStatusResponse_Status = 0 - GetDebugBundleStatusResponse_STATUS_RUNNING GetDebugBundleStatusResponse_Status = 1 - GetDebugBundleStatusResponse_STATUS_SUCCESS GetDebugBundleStatusResponse_Status = 2 - GetDebugBundleStatusResponse_STATUS_ERROR GetDebugBundleStatusResponse_Status = 3 + // buf:lint:ignore ENUM_ZERO_VALUE_SUFFIX + // OK. No Error. + BundleErrorCode_BUNDLE_ERROR_CODE_OK BundleErrorCode = 0 + // Debug bundle process already running + BundleErrorCode_BUNDLE_ERROR_CODE_PROCESS_ALREADY_RUNNING BundleErrorCode = 1 + // Debug bundle process not running. + BundleErrorCode_BUNDLE_ERROR_CODE_PROCESS_NOT_RUNNING BundleErrorCode = 2 + // Job ID not recognized. + BundleErrorCode_BUNDLE_ERROR_CODE_INVALID_JOB_ID BundleErrorCode = 3 + // Debug bundle process was never started. + BundleErrorCode_BUNDLE_ERROR_CODE_PROCESS_NOT_STARTED BundleErrorCode = 4 + // Internal error. + BundleErrorCode_BUNDLE_ERROR_CODE_INTERNAL_ERROR BundleErrorCode = 5 ) -// Enum value maps for GetDebugBundleStatusResponse_Status. +// Enum value maps for BundleErrorCode. var ( - GetDebugBundleStatusResponse_Status_name = map[int32]string{ + BundleErrorCode_name = map[int32]string{ + 0: "BUNDLE_ERROR_CODE_OK", + 1: "BUNDLE_ERROR_CODE_PROCESS_ALREADY_RUNNING", + 2: "BUNDLE_ERROR_CODE_PROCESS_NOT_RUNNING", + 3: "BUNDLE_ERROR_CODE_INVALID_JOB_ID", + 4: "BUNDLE_ERROR_CODE_PROCESS_NOT_STARTED", + 5: "BUNDLE_ERROR_CODE_INTERNAL_ERROR", + } + BundleErrorCode_value = map[string]int32{ + "BUNDLE_ERROR_CODE_OK": 0, + "BUNDLE_ERROR_CODE_PROCESS_ALREADY_RUNNING": 1, + "BUNDLE_ERROR_CODE_PROCESS_NOT_RUNNING": 2, + "BUNDLE_ERROR_CODE_INVALID_JOB_ID": 3, + "BUNDLE_ERROR_CODE_PROCESS_NOT_STARTED": 4, + "BUNDLE_ERROR_CODE_INTERNAL_ERROR": 5, + } +) + +func (x BundleErrorCode) Enum() *BundleErrorCode { + p := new(BundleErrorCode) + *p = x + return p +} + +func (x BundleErrorCode) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (BundleErrorCode) Descriptor() protoreflect.EnumDescriptor { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes[0].Descriptor() +} + +func (BundleErrorCode) Type() protoreflect.EnumType { + return &file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes[0] +} + +func (x BundleErrorCode) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use BundleErrorCode.Descriptor instead. +func (BundleErrorCode) EnumDescriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{0} +} + +type DebugBundleStatus_Status int32 + +const ( + DebugBundleStatus_STATUS_UNSPECIFIED DebugBundleStatus_Status = 0 + DebugBundleStatus_STATUS_RUNNING DebugBundleStatus_Status = 1 + DebugBundleStatus_STATUS_SUCCESS DebugBundleStatus_Status = 2 + DebugBundleStatus_STATUS_ERROR DebugBundleStatus_Status = 3 +) + +// Enum value maps for DebugBundleStatus_Status. +var ( + DebugBundleStatus_Status_name = map[int32]string{ 0: "STATUS_UNSPECIFIED", 1: "STATUS_RUNNING", 2: "STATUS_SUCCESS", 3: "STATUS_ERROR", } - GetDebugBundleStatusResponse_Status_value = map[string]int32{ + DebugBundleStatus_Status_value = map[string]int32{ "STATUS_UNSPECIFIED": 0, "STATUS_RUNNING": 1, "STATUS_SUCCESS": 2, @@ -46,45 +114,56 @@ var ( } ) -func (x GetDebugBundleStatusResponse_Status) Enum() *GetDebugBundleStatusResponse_Status { - p := new(GetDebugBundleStatusResponse_Status) +func (x DebugBundleStatus_Status) Enum() *DebugBundleStatus_Status { + p := new(DebugBundleStatus_Status) *p = x return p } -func (x GetDebugBundleStatusResponse_Status) String() string { +func (x DebugBundleStatus_Status) String() string { return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) } -func (GetDebugBundleStatusResponse_Status) Descriptor() protoreflect.EnumDescriptor { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes[0].Descriptor() +func (DebugBundleStatus_Status) Descriptor() protoreflect.EnumDescriptor { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes[1].Descriptor() } -func (GetDebugBundleStatusResponse_Status) Type() protoreflect.EnumType { - return &file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes[0] +func (DebugBundleStatus_Status) Type() protoreflect.EnumType { + return &file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes[1] } -func (x GetDebugBundleStatusResponse_Status) Number() protoreflect.EnumNumber { +func (x DebugBundleStatus_Status) Number() protoreflect.EnumNumber { return protoreflect.EnumNumber(x) } -// Deprecated: Use GetDebugBundleStatusResponse_Status.Descriptor instead. -func (GetDebugBundleStatusResponse_Status) EnumDescriptor() ([]byte, []int) { +// Deprecated: Use DebugBundleStatus_Status.Descriptor instead. +func (DebugBundleStatus_Status) EnumDescriptor() ([]byte, []int) { return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{3, 0} } +// Request to start the creation of debug bundle process with given configuration parameters. type CreateDebugBundleRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - ControllerLogsSizeLimitBytes int32 `protobuf:"varint,1,opt,name=controller_logs_size_limit_bytes,json=controllerLogsSizeLimitBytes,proto3" json:"controller_logs_size_limit_bytes,omitempty"` - CpuProfilerWaitSeconds int32 `protobuf:"varint,2,opt,name=cpu_profiler_wait_seconds,json=cpuProfilerWaitSeconds,proto3" json:"cpu_profiler_wait_seconds,omitempty"` - LogsSince string `protobuf:"bytes,3,opt,name=logs_since,json=logsSince,proto3" json:"logs_since,omitempty"` // TODO add validation 'YYYY-MM-DD', 'yesterday', or 'today' - LogsSizeLimitBytes int32 `protobuf:"varint,4,opt,name=logs_size_limit_bytes,json=logsSizeLimitBytes,proto3" json:"logs_size_limit_bytes,omitempty"` - LogsUntil string `protobuf:"bytes,5,opt,name=logs_until,json=logsUntil,proto3" json:"logs_until,omitempty"` // TODO add validation 'YYYY-MM-DD', 'yesterday', or 'today' - MetricsIntervalSeconds int32 `protobuf:"varint,6,opt,name=metrics_interval_seconds,json=metricsIntervalSeconds,proto3" json:"metrics_interval_seconds,omitempty"` - Partition []string `protobuf:"bytes,7,rep,name=partition,proto3" json:"partition,omitempty"` + // Optional broker IDs. Do not set / leave empty to create for all. + BrokerIds []int32 `protobuf:"varint,1,rep,packed,name=broker_ids,json=brokerIds,proto3" json:"broker_ids,omitempty"` + // The size limit of the controller logs that can be stored in the bundle. + ControllerLogsSizeLimitBytes int32 `protobuf:"varint,2,opt,name=controller_logs_size_limit_bytes,json=controllerLogsSizeLimitBytes,proto3" json:"controller_logs_size_limit_bytes,omitempty"` + // For how long to collect samples for the CPU profiler + CpuProfilerWaitSeconds int32 `protobuf:"varint,3,opt,name=cpu_profiler_wait_seconds,json=cpuProfilerWaitSeconds,proto3" json:"cpu_profiler_wait_seconds,omitempty"` + // Include logs dated from specified date onward. + LogsSince *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=logs_since,json=logsSince,proto3" json:"logs_since,omitempty"` + // Read the logs until the given size is reached. + LogsSizeLimitBytes int32 `protobuf:"varint,5,opt,name=logs_size_limit_bytes,json=logsSizeLimitBytes,proto3" json:"logs_size_limit_bytes,omitempty"` + // Include logs older than the specified date. + LogsUntil *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=logs_until,json=logsUntil,proto3" json:"logs_until,omitempty"` + // Interval between metrics snapshots. + MetricsIntervalSeconds int32 `protobuf:"varint,7,opt,name=metrics_interval_seconds,json=metricsIntervalSeconds,proto3" json:"metrics_interval_seconds,omitempty"` + // Partition IDs. When provided, rpk saves extra admin API requests for those partitions. + // Optional. + PartitionIds []int32 `protobuf:"varint,8,rep,packed,name=partition_ids,json=partitionIds,proto3" json:"partition_ids,omitempty"` } func (x *CreateDebugBundleRequest) Reset() { @@ -119,6 +198,13 @@ func (*CreateDebugBundleRequest) Descriptor() ([]byte, []int) { return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{0} } +func (x *CreateDebugBundleRequest) GetBrokerIds() []int32 { + if x != nil { + return x.BrokerIds + } + return nil +} + func (x *CreateDebugBundleRequest) GetControllerLogsSizeLimitBytes() int32 { if x != nil { return x.ControllerLogsSizeLimitBytes @@ -133,11 +219,11 @@ func (x *CreateDebugBundleRequest) GetCpuProfilerWaitSeconds() int32 { return 0 } -func (x *CreateDebugBundleRequest) GetLogsSince() string { +func (x *CreateDebugBundleRequest) GetLogsSince() *timestamppb.Timestamp { if x != nil { return x.LogsSince } - return "" + return nil } func (x *CreateDebugBundleRequest) GetLogsSizeLimitBytes() int32 { @@ -147,11 +233,11 @@ func (x *CreateDebugBundleRequest) GetLogsSizeLimitBytes() int32 { return 0 } -func (x *CreateDebugBundleRequest) GetLogsUntil() string { +func (x *CreateDebugBundleRequest) GetLogsUntil() *timestamppb.Timestamp { if x != nil { return x.LogsUntil } - return "" + return nil } func (x *CreateDebugBundleRequest) GetMetricsIntervalSeconds() int32 { @@ -161,19 +247,21 @@ func (x *CreateDebugBundleRequest) GetMetricsIntervalSeconds() int32 { return 0 } -func (x *CreateDebugBundleRequest) GetPartition() []string { +func (x *CreateDebugBundleRequest) GetPartitionIds() []int32 { if x != nil { - return x.Partition + return x.PartitionIds } return nil } +// Response to CreateDebugBundle. type CreateDebugBundleResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - JobId string `protobuf:"bytes,1,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` // UUID + // Job ID. UUID. + JobId string `protobuf:"bytes,1,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` } func (x *CreateDebugBundleResponse) Reset() { @@ -215,10 +303,14 @@ func (x *CreateDebugBundleResponse) GetJobId() string { return "" } +// Gets status of debug bundle progress. type GetDebugBundleStatusRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + + // Optional broker IDs to get. If not set / empty get all. + BrokerIds []int32 `protobuf:"varint,1,rep,packed,name=broker_ids,json=brokerIds,proto3" json:"broker_ids,omitempty"` } func (x *GetDebugBundleStatusRequest) Reset() { @@ -253,17 +345,36 @@ func (*GetDebugBundleStatusRequest) Descriptor() ([]byte, []int) { return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{2} } -type GetDebugBundleStatusResponse struct { +func (x *GetDebugBundleStatusRequest) GetBrokerIds() []int32 { + if x != nil { + return x.BrokerIds + } + return nil +} + +type DebugBundleStatus struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - JobId string `protobuf:"bytes,1,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` - Status GetDebugBundleStatusResponse_Status `protobuf:"varint,2,opt,name=status,proto3,enum=redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse_Status" json:"status,omitempty"` + // The broker ID. + BrokerId int32 `protobuf:"varint,1,opt,name=broker_id,json=brokerId,proto3" json:"broker_id,omitempty"` + // The job UUID of this process. + JobId string `protobuf:"bytes,2,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` + // The status of the job. + Status DebugBundleStatus_Status `protobuf:"varint,3,opt,name=status,proto3,enum=redpanda.api.console.v1alpha1.DebugBundleStatus_Status" json:"status,omitempty"` + // When the job was started. + CreatedAt *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=created_at,json=createdAt,proto3" json:"created_at,omitempty"` + // Path in API to get the file. + Filename string `protobuf:"bytes,5,opt,name=filename,proto3" json:"filename,omitempty"` + // Only filled in once the process completes. Content of stdout from rpk. + Stdout []string `protobuf:"bytes,6,rep,name=stdout,proto3" json:"stdout,omitempty"` + // Only filled in once the process completes. Content of stderr from rpk. + Stderr []string `protobuf:"bytes,7,rep,name=stderr,proto3" json:"stderr,omitempty"` } -func (x *GetDebugBundleStatusResponse) Reset() { - *x = GetDebugBundleStatusResponse{} +func (x *DebugBundleStatus) Reset() { + *x = DebugBundleStatus{} if protoimpl.UnsafeEnabled { mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -271,13 +382,13 @@ func (x *GetDebugBundleStatusResponse) Reset() { } } -func (x *GetDebugBundleStatusResponse) String() string { +func (x *DebugBundleStatus) String() string { return protoimpl.X.MessageStringOf(x) } -func (*GetDebugBundleStatusResponse) ProtoMessage() {} +func (*DebugBundleStatus) ProtoMessage() {} -func (x *GetDebugBundleStatusResponse) ProtoReflect() protoreflect.Message { +func (x *DebugBundleStatus) ProtoReflect() protoreflect.Message { mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) @@ -289,23 +400,106 @@ func (x *GetDebugBundleStatusResponse) ProtoReflect() protoreflect.Message { return mi.MessageOf(x) } -// Deprecated: Use GetDebugBundleStatusResponse.ProtoReflect.Descriptor instead. -func (*GetDebugBundleStatusResponse) Descriptor() ([]byte, []int) { +// Deprecated: Use DebugBundleStatus.ProtoReflect.Descriptor instead. +func (*DebugBundleStatus) Descriptor() ([]byte, []int) { return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{3} } -func (x *GetDebugBundleStatusResponse) GetJobId() string { +func (x *DebugBundleStatus) GetBrokerId() int32 { + if x != nil { + return x.BrokerId + } + return 0 +} + +func (x *DebugBundleStatus) GetJobId() string { if x != nil { return x.JobId } return "" } -func (x *GetDebugBundleStatusResponse) GetStatus() GetDebugBundleStatusResponse_Status { +func (x *DebugBundleStatus) GetStatus() DebugBundleStatus_Status { if x != nil { return x.Status } - return GetDebugBundleStatusResponse_STATUS_UNSPECIFIED + return DebugBundleStatus_STATUS_UNSPECIFIED +} + +func (x *DebugBundleStatus) GetCreatedAt() *timestamppb.Timestamp { + if x != nil { + return x.CreatedAt + } + return nil +} + +func (x *DebugBundleStatus) GetFilename() string { + if x != nil { + return x.Filename + } + return "" +} + +func (x *DebugBundleStatus) GetStdout() []string { + if x != nil { + return x.Stdout + } + return nil +} + +func (x *DebugBundleStatus) GetStderr() []string { + if x != nil { + return x.Stderr + } + return nil +} + +// The response to GetDebugBundleStatus. +type GetDebugBundleStatusResponse struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Statuses []*DebugBundleStatus `protobuf:"bytes,1,rep,name=statuses,proto3" json:"statuses,omitempty"` +} + +func (x *GetDebugBundleStatusResponse) Reset() { + *x = GetDebugBundleStatusResponse{} + if protoimpl.UnsafeEnabled { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *GetDebugBundleStatusResponse) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*GetDebugBundleStatusResponse) ProtoMessage() {} + +func (x *GetDebugBundleStatusResponse) ProtoReflect() protoreflect.Message { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use GetDebugBundleStatusResponse.ProtoReflect.Descriptor instead. +func (*GetDebugBundleStatusResponse) Descriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{4} +} + +func (x *GetDebugBundleStatusResponse) GetStatuses() []*DebugBundleStatus { + if x != nil { + return x.Statuses + } + return nil } type DeleteDebugBundleRequest struct { @@ -314,12 +508,14 @@ type DeleteDebugBundleRequest struct { unknownFields protoimpl.UnknownFields JobId string `protobuf:"bytes,1,opt,name=job_id,json=jobId,proto3" json:"job_id,omitempty"` + // Optional broker IDs. Do not set / empty for all. + BrokerIds []int32 `protobuf:"varint,2,rep,packed,name=broker_ids,json=brokerIds,proto3" json:"broker_ids,omitempty"` } func (x *DeleteDebugBundleRequest) Reset() { *x = DeleteDebugBundleRequest{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -332,7 +528,7 @@ func (x *DeleteDebugBundleRequest) String() string { func (*DeleteDebugBundleRequest) ProtoMessage() {} func (x *DeleteDebugBundleRequest) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -345,7 +541,7 @@ func (x *DeleteDebugBundleRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteDebugBundleRequest.ProtoReflect.Descriptor instead. func (*DeleteDebugBundleRequest) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{4} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{5} } func (x *DeleteDebugBundleRequest) GetJobId() string { @@ -355,16 +551,26 @@ func (x *DeleteDebugBundleRequest) GetJobId() string { return "" } +func (x *DeleteDebugBundleRequest) GetBrokerIds() []int32 { + if x != nil { + return x.BrokerIds + } + return nil +} + +// Response for DeleteDebugBundle. type DeleteDebugBundleResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + + Errors []*BundleError `protobuf:"bytes,1,rep,name=errors,proto3" json:"errors,omitempty"` } func (x *DeleteDebugBundleResponse) Reset() { *x = DeleteDebugBundleResponse{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -377,7 +583,7 @@ func (x *DeleteDebugBundleResponse) String() string { func (*DeleteDebugBundleResponse) ProtoMessage() {} func (x *DeleteDebugBundleResponse) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -390,21 +596,31 @@ func (x *DeleteDebugBundleResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteDebugBundleResponse.ProtoReflect.Descriptor instead. func (*DeleteDebugBundleResponse) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{5} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{6} +} + +func (x *DeleteDebugBundleResponse) GetErrors() []*BundleError { + if x != nil { + return x.Errors + } + return nil } +// Request for DeleteDebugBundleFile. type DeleteDebugBundleFileRequest struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields - File string `protobuf:"bytes,1,opt,name=file,proto3" json:"file,omitempty"` + Filename string `protobuf:"bytes,1,opt,name=filename,proto3" json:"filename,omitempty"` + // Optional broker IDs. Do not set / empty for all. + BrokerIds []int32 `protobuf:"varint,2,rep,packed,name=broker_ids,json=brokerIds,proto3" json:"broker_ids,omitempty"` } func (x *DeleteDebugBundleFileRequest) Reset() { *x = DeleteDebugBundleFileRequest{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -417,7 +633,7 @@ func (x *DeleteDebugBundleFileRequest) String() string { func (*DeleteDebugBundleFileRequest) ProtoMessage() {} func (x *DeleteDebugBundleFileRequest) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -430,26 +646,36 @@ func (x *DeleteDebugBundleFileRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteDebugBundleFileRequest.ProtoReflect.Descriptor instead. func (*DeleteDebugBundleFileRequest) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{6} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{7} } -func (x *DeleteDebugBundleFileRequest) GetFile() string { +func (x *DeleteDebugBundleFileRequest) GetFilename() string { if x != nil { - return x.File + return x.Filename } return "" } +func (x *DeleteDebugBundleFileRequest) GetBrokerIds() []int32 { + if x != nil { + return x.BrokerIds + } + return nil +} + +// Response for DeleteDebugBundleFile. type DeleteDebugBundleFileResponse struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + + Errors []*BundleError `protobuf:"bytes,1,rep,name=errors,proto3" json:"errors,omitempty"` } func (x *DeleteDebugBundleFileResponse) Reset() { *x = DeleteDebugBundleFileResponse{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -462,7 +688,7 @@ func (x *DeleteDebugBundleFileResponse) String() string { func (*DeleteDebugBundleFileResponse) ProtoMessage() {} func (x *DeleteDebugBundleFileResponse) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -475,7 +701,81 @@ func (x *DeleteDebugBundleFileResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteDebugBundleFileResponse.ProtoReflect.Descriptor instead. func (*DeleteDebugBundleFileResponse) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{7} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{8} +} + +func (x *DeleteDebugBundleFileResponse) GetErrors() []*BundleError { + if x != nil { + return x.Errors + } + return nil +} + +// Error details for various responses and operations. +type BundleError struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // The broker ID. + BrokerId int32 `protobuf:"varint,1,opt,name=broker_id,json=brokerId,proto3" json:"broker_id,omitempty"` + // The error code. + Code BundleErrorCode `protobuf:"varint,2,opt,name=code,proto3,enum=redpanda.api.console.v1alpha1.BundleErrorCode" json:"code,omitempty"` + // Additional information + Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"` +} + +func (x *BundleError) Reset() { + *x = BundleError{} + if protoimpl.UnsafeEnabled { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *BundleError) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*BundleError) ProtoMessage() {} + +func (x *BundleError) ProtoReflect() protoreflect.Message { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[9] + if protoimpl.UnsafeEnabled && x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use BundleError.ProtoReflect.Descriptor instead. +func (*BundleError) Descriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{9} +} + +func (x *BundleError) GetBrokerId() int32 { + if x != nil { + return x.BrokerId + } + return 0 +} + +func (x *BundleError) GetCode() BundleErrorCode { + if x != nil { + return x.Code + } + return BundleErrorCode_BUNDLE_ERROR_CODE_OK +} + +func (x *BundleError) GetMessage() string { + if x != nil { + return x.Message + } + return "" } var File_redpanda_api_console_v1alpha1_debug_bundle_proto protoreflect.FileDescriptor @@ -486,117 +786,184 @@ var file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDesc = []byte{ 0x64, 0x65, 0x62, 0x75, 0x67, 0x5f, 0x62, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1d, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, - 0x31, 0x22, 0xe6, 0x02, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, - 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, - 0x0a, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, - 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x62, 0x79, 0x74, - 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x1c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, - 0x6c, 0x6c, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, 0x4c, 0x69, 0x6d, 0x69, - 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x19, 0x63, 0x70, 0x75, 0x5f, 0x70, 0x72, - 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x6f, - 0x6e, 0x64, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, 0x63, 0x70, 0x75, 0x50, 0x72, - 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x57, 0x61, 0x69, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x18, - 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, - 0x12, 0x31, 0x0a, 0x15, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, - 0x6d, 0x69, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, - 0x12, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x42, 0x79, - 0x74, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x75, 0x6e, 0x74, 0x69, - 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x55, 0x6e, 0x74, - 0x69, 0x6c, 0x12, 0x38, 0x0a, 0x18, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x69, 0x6e, - 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x05, 0x52, 0x16, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x49, 0x6e, 0x74, - 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1c, 0x0a, 0x09, - 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, - 0x09, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x32, 0x0a, 0x19, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x22, 0x1d, - 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0xed, 0x01, - 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, - 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x15, - 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x5a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x42, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, - 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x22, 0x5a, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, + 0x31, 0x1a, 0x1b, 0x62, 0x75, 0x66, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2f, + 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, + 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, + 0xeb, 0x03, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, + 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, + 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x4f, 0x0a, 0x20, 0x63, + 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, + 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, 0x1c, + 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x73, 0x53, 0x69, + 0x7a, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x19, + 0x63, 0x70, 0x75, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x5f, 0x77, 0x61, 0x69, + 0x74, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, + 0x0a, 0xba, 0x48, 0x07, 0x1a, 0x05, 0x18, 0xd8, 0x04, 0x28, 0x0f, 0x52, 0x16, 0x63, 0x70, 0x75, + 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x57, 0x61, 0x69, 0x74, 0x53, 0x65, 0x63, 0x6f, + 0x6e, 0x64, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x6e, 0x63, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x12, 0x3a, + 0x0a, 0x15, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, + 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, + 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, 0x12, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, + 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x6c, 0x6f, + 0x67, 0x73, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, + 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x12, 0x41, 0x0a, 0x18, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, + 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, + 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, + 0x52, 0x16, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, + 0x6c, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, + 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x05, 0x52, + 0x0c, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x22, 0x32, 0x0a, + 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, + 0x62, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, + 0x64, 0x22, 0x3c, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, + 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, + 0xfb, 0x02, 0x0a, 0x11, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, + 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x4f, 0x0a, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, + 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, + 0x65, 0x72, 0x72, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, + 0x72, 0x22, 0x5a, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x53, - 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0x31, 0x0a, - 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, - 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, - 0x22, 0x1b, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, - 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x32, 0x0a, - 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, - 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x12, 0x0a, - 0x04, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x69, 0x6c, - 0x65, 0x22, 0x1f, 0x0a, 0x1d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, - 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x32, 0xd5, 0x04, 0x0a, 0x12, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, - 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x11, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, - 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, + 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0x6c, 0x0a, + 0x1c, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, + 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, + 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, - 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x00, 0x12, 0x91, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, - 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x3a, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, - 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, - 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x22, 0x50, 0x0a, 0x18, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x1d, + 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x5f, 0x0a, + 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, + 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, + 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x59, + 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, + 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, + 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, + 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, + 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x63, 0x0a, 0x1d, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, + 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, + 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, + 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x88, + 0x01, 0x0a, 0x0b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1b, + 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x04, 0x63, + 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, - 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x88, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, + 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2a, 0xfc, 0x01, 0x0a, 0x0f, 0x42, 0x75, + 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, + 0x14, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, + 0x44, 0x45, 0x5f, 0x4f, 0x4b, 0x10, 0x00, 0x12, 0x2d, 0x0a, 0x29, 0x42, 0x55, 0x4e, 0x44, 0x4c, + 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, + 0x43, 0x45, 0x53, 0x53, 0x5f, 0x41, 0x4c, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x52, 0x55, 0x4e, + 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, + 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, + 0x45, 0x53, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, + 0x02, 0x12, 0x24, 0x0a, 0x20, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4a, + 0x4f, 0x42, 0x5f, 0x49, 0x44, 0x10, 0x03, 0x12, 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, + 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, + 0x43, 0x45, 0x53, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, + 0x10, 0x04, 0x12, 0x24, 0x0a, 0x20, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, + 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, + 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x32, 0xd5, 0x04, 0x0a, 0x12, 0x44, 0x65, 0x62, + 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, + 0x88, 0x01, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, + 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, - 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x00, 0x12, 0x94, 0x01, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, - 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x3b, 0x2e, + 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x91, 0x01, 0x0a, 0x14, 0x47, + 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x3a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, + 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x88, + 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, + 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, + 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x94, 0x01, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, - 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0xb1, 0x02, 0x0a, 0x21, 0x63, - 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x69, 0x6c, 0x65, 0x12, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x1a, 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, - 0x42, 0x10, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x63, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, - 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, - 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, - 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, - 0x65, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x43, 0xaa, - 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x43, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xca, - 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xe2, - 0x02, 0x29, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x5c, - 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x20, 0x52, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, - 0x73, 0x6f, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, + 0x42, 0xb1, 0x02, 0x0a, 0x21, 0x63, 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, 0x10, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, + 0x64, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x63, 0x67, 0x69, 0x74, 0x68, + 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, + 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, + 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, + 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, + 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xa2, + 0x02, 0x03, 0x52, 0x41, 0x43, 0xaa, 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0xca, 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0xe2, 0x02, 0x29, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, + 0x61, 0xea, 0x02, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, + 0x69, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -611,34 +978,45 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP() []byte return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescData } -var file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes = make([]protoimpl.EnumInfo, 1) -var file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes = make([]protoimpl.MessageInfo, 8) +var file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes = make([]protoimpl.EnumInfo, 2) +var file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes = make([]protoimpl.MessageInfo, 10) var file_redpanda_api_console_v1alpha1_debug_bundle_proto_goTypes = []interface{}{ - (GetDebugBundleStatusResponse_Status)(0), // 0: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.Status - (*CreateDebugBundleRequest)(nil), // 1: redpanda.api.console.v1alpha1.CreateDebugBundleRequest - (*CreateDebugBundleResponse)(nil), // 2: redpanda.api.console.v1alpha1.CreateDebugBundleResponse - (*GetDebugBundleStatusRequest)(nil), // 3: redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest - (*GetDebugBundleStatusResponse)(nil), // 4: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse - (*DeleteDebugBundleRequest)(nil), // 5: redpanda.api.console.v1alpha1.DeleteDebugBundleRequest - (*DeleteDebugBundleResponse)(nil), // 6: redpanda.api.console.v1alpha1.DeleteDebugBundleResponse - (*DeleteDebugBundleFileRequest)(nil), // 7: redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest - (*DeleteDebugBundleFileResponse)(nil), // 8: redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse + (BundleErrorCode)(0), // 0: redpanda.api.console.v1alpha1.BundleErrorCode + (DebugBundleStatus_Status)(0), // 1: redpanda.api.console.v1alpha1.DebugBundleStatus.Status + (*CreateDebugBundleRequest)(nil), // 2: redpanda.api.console.v1alpha1.CreateDebugBundleRequest + (*CreateDebugBundleResponse)(nil), // 3: redpanda.api.console.v1alpha1.CreateDebugBundleResponse + (*GetDebugBundleStatusRequest)(nil), // 4: redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest + (*DebugBundleStatus)(nil), // 5: redpanda.api.console.v1alpha1.DebugBundleStatus + (*GetDebugBundleStatusResponse)(nil), // 6: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse + (*DeleteDebugBundleRequest)(nil), // 7: redpanda.api.console.v1alpha1.DeleteDebugBundleRequest + (*DeleteDebugBundleResponse)(nil), // 8: redpanda.api.console.v1alpha1.DeleteDebugBundleResponse + (*DeleteDebugBundleFileRequest)(nil), // 9: redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest + (*DeleteDebugBundleFileResponse)(nil), // 10: redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse + (*BundleError)(nil), // 11: redpanda.api.console.v1alpha1.BundleError + (*timestamppb.Timestamp)(nil), // 12: google.protobuf.Timestamp } var file_redpanda_api_console_v1alpha1_debug_bundle_proto_depIdxs = []int32{ - 0, // 0: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.status:type_name -> redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.Status - 1, // 1: redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle:input_type -> redpanda.api.console.v1alpha1.CreateDebugBundleRequest - 3, // 2: redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus:input_type -> redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest - 5, // 3: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle:input_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleRequest - 7, // 4: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile:input_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest - 2, // 5: redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle:output_type -> redpanda.api.console.v1alpha1.CreateDebugBundleResponse - 4, // 6: redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus:output_type -> redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse - 6, // 7: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle:output_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleResponse - 8, // 8: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile:output_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse - 5, // [5:9] is the sub-list for method output_type - 1, // [1:5] 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 + 12, // 0: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.logs_since:type_name -> google.protobuf.Timestamp + 12, // 1: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.logs_until:type_name -> google.protobuf.Timestamp + 1, // 2: redpanda.api.console.v1alpha1.DebugBundleStatus.status:type_name -> redpanda.api.console.v1alpha1.DebugBundleStatus.Status + 12, // 3: redpanda.api.console.v1alpha1.DebugBundleStatus.created_at:type_name -> google.protobuf.Timestamp + 5, // 4: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.statuses:type_name -> redpanda.api.console.v1alpha1.DebugBundleStatus + 11, // 5: redpanda.api.console.v1alpha1.DeleteDebugBundleResponse.errors:type_name -> redpanda.api.console.v1alpha1.BundleError + 11, // 6: redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse.errors:type_name -> redpanda.api.console.v1alpha1.BundleError + 0, // 7: redpanda.api.console.v1alpha1.BundleError.code:type_name -> redpanda.api.console.v1alpha1.BundleErrorCode + 2, // 8: redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle:input_type -> redpanda.api.console.v1alpha1.CreateDebugBundleRequest + 4, // 9: redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus:input_type -> redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest + 7, // 10: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle:input_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleRequest + 9, // 11: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile:input_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest + 3, // 12: redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle:output_type -> redpanda.api.console.v1alpha1.CreateDebugBundleResponse + 6, // 13: redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus:output_type -> redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse + 8, // 14: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle:output_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleResponse + 10, // 15: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile:output_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse + 12, // [12:16] is the sub-list for method output_type + 8, // [8:12] is the sub-list for method input_type + 8, // [8:8] is the sub-list for extension type_name + 8, // [8:8] is the sub-list for extension extendee + 0, // [0:8] is the sub-list for field type_name } func init() { file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() } @@ -684,7 +1062,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetDebugBundleStatusResponse); i { + switch v := v.(*DebugBundleStatus); i { case 0: return &v.state case 1: @@ -696,7 +1074,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteDebugBundleRequest); i { + switch v := v.(*GetDebugBundleStatusResponse); i { case 0: return &v.state case 1: @@ -708,7 +1086,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteDebugBundleResponse); i { + switch v := v.(*DeleteDebugBundleRequest); i { case 0: return &v.state case 1: @@ -720,7 +1098,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteDebugBundleFileRequest); i { + switch v := v.(*DeleteDebugBundleResponse); i { case 0: return &v.state case 1: @@ -732,6 +1110,18 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteDebugBundleFileRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeleteDebugBundleFileResponse); i { case 0: return &v.state @@ -743,14 +1133,26 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { return nil } } + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*BundleError); 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_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDesc, - NumEnums: 1, - NumMessages: 8, + NumEnums: 2, + NumMessages: 10, NumExtensions: 0, NumServices: 1, }, diff --git a/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts b/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts index c19617d21..d895caac6 100644 --- a/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts +++ b/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts @@ -4,50 +4,129 @@ // @ts-nocheck import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage } from "@bufbuild/protobuf"; -import { Message, proto3 } from "@bufbuild/protobuf"; +import { Message, proto3, Timestamp } from "@bufbuild/protobuf"; /** + * Error code enum. + * + * @generated from enum redpanda.api.console.v1alpha1.BundleErrorCode + */ +export enum BundleErrorCode { + /** + * buf:lint:ignore ENUM_ZERO_VALUE_SUFFIX + * OK. No Error. + * + * @generated from enum value: BUNDLE_ERROR_CODE_OK = 0; + */ + OK = 0, + + /** + * Debug bundle process already running + * + * @generated from enum value: BUNDLE_ERROR_CODE_PROCESS_ALREADY_RUNNING = 1; + */ + PROCESS_ALREADY_RUNNING = 1, + + /** + * Debug bundle process not running. + * + * @generated from enum value: BUNDLE_ERROR_CODE_PROCESS_NOT_RUNNING = 2; + */ + PROCESS_NOT_RUNNING = 2, + + /** + * Job ID not recognized. + * + * @generated from enum value: BUNDLE_ERROR_CODE_INVALID_JOB_ID = 3; + */ + INVALID_JOB_ID = 3, + + /** + * Debug bundle process was never started. + * + * @generated from enum value: BUNDLE_ERROR_CODE_PROCESS_NOT_STARTED = 4; + */ + PROCESS_NOT_STARTED = 4, + + /** + * Internal error. + * + * @generated from enum value: BUNDLE_ERROR_CODE_INTERNAL_ERROR = 5; + */ + INTERNAL_ERROR = 5, +} +// Retrieve enum metadata with: proto3.getEnumType(BundleErrorCode) +proto3.util.setEnumType(BundleErrorCode, "redpanda.api.console.v1alpha1.BundleErrorCode", [ + { no: 0, name: "BUNDLE_ERROR_CODE_OK" }, + { no: 1, name: "BUNDLE_ERROR_CODE_PROCESS_ALREADY_RUNNING" }, + { no: 2, name: "BUNDLE_ERROR_CODE_PROCESS_NOT_RUNNING" }, + { no: 3, name: "BUNDLE_ERROR_CODE_INVALID_JOB_ID" }, + { no: 4, name: "BUNDLE_ERROR_CODE_PROCESS_NOT_STARTED" }, + { no: 5, name: "BUNDLE_ERROR_CODE_INTERNAL_ERROR" }, +]); + +/** + * Request to start the creation of debug bundle process with given configuration parameters. + * * @generated from message redpanda.api.console.v1alpha1.CreateDebugBundleRequest */ export class CreateDebugBundleRequest extends Message { /** - * @generated from field: int32 controller_logs_size_limit_bytes = 1; + * Optional broker IDs. Do not set / leave empty to create for all. + * + * @generated from field: repeated int32 broker_ids = 1; + */ + brokerIds: number[] = []; + + /** + * The size limit of the controller logs that can be stored in the bundle. + * + * @generated from field: int32 controller_logs_size_limit_bytes = 2; */ controllerLogsSizeLimitBytes = 0; /** - * @generated from field: int32 cpu_profiler_wait_seconds = 2; + * For how long to collect samples for the CPU profiler + * + * @generated from field: int32 cpu_profiler_wait_seconds = 3; */ cpuProfilerWaitSeconds = 0; /** - * TODO add validation 'YYYY-MM-DD', 'yesterday', or 'today' + * Include logs dated from specified date onward. * - * @generated from field: string logs_since = 3; + * @generated from field: google.protobuf.Timestamp logs_since = 4; */ - logsSince = ""; + logsSince?: Timestamp; /** - * @generated from field: int32 logs_size_limit_bytes = 4; + * Read the logs until the given size is reached. + * + * @generated from field: int32 logs_size_limit_bytes = 5; */ logsSizeLimitBytes = 0; /** - * TODO add validation 'YYYY-MM-DD', 'yesterday', or 'today' + * Include logs older than the specified date. * - * @generated from field: string logs_until = 5; + * @generated from field: google.protobuf.Timestamp logs_until = 6; */ - logsUntil = ""; + logsUntil?: Timestamp; /** - * @generated from field: int32 metrics_interval_seconds = 6; + * Interval between metrics snapshots. + * + * @generated from field: int32 metrics_interval_seconds = 7; */ metricsIntervalSeconds = 0; /** - * @generated from field: repeated string partition = 7; + * Partition IDs. When provided, rpk saves extra admin API requests for those partitions. + * Optional. + * + * @generated from field: repeated int32 partition_ids = 8; */ - partition: string[] = []; + partitionIds: number[] = []; constructor(data?: PartialMessage) { super(); @@ -57,13 +136,14 @@ export class CreateDebugBundleRequest extends Message static readonly runtime: typeof proto3 = proto3; static readonly typeName = "redpanda.api.console.v1alpha1.CreateDebugBundleRequest"; static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 1, name: "controller_logs_size_limit_bytes", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, - { no: 2, name: "cpu_profiler_wait_seconds", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, - { no: 3, name: "logs_since", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 4, name: "logs_size_limit_bytes", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, - { no: 5, name: "logs_until", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 6, name: "metrics_interval_seconds", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, - { no: 7, name: "partition", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true }, + { no: 1, name: "broker_ids", kind: "scalar", T: 5 /* ScalarType.INT32 */, repeated: true }, + { no: 2, name: "controller_logs_size_limit_bytes", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, + { no: 3, name: "cpu_profiler_wait_seconds", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, + { no: 4, name: "logs_since", kind: "message", T: Timestamp }, + { no: 5, name: "logs_size_limit_bytes", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, + { no: 6, name: "logs_until", kind: "message", T: Timestamp }, + { no: 7, name: "metrics_interval_seconds", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, + { no: 8, name: "partition_ids", kind: "scalar", T: 5 /* ScalarType.INT32 */, repeated: true }, ]); static fromBinary(bytes: Uint8Array, options?: Partial): CreateDebugBundleRequest { @@ -84,11 +164,13 @@ export class CreateDebugBundleRequest extends Message } /** + * Response to CreateDebugBundle. + * * @generated from message redpanda.api.console.v1alpha1.CreateDebugBundleResponse */ export class CreateDebugBundleResponse extends Message { /** - * UUID + * Job ID. UUID. * * @generated from field: string job_id = 1; */ @@ -123,9 +205,18 @@ export class CreateDebugBundleResponse extends Message { + /** + * Optional broker IDs to get. If not set / empty get all. + * + * @generated from field: repeated int32 broker_ids = 1; + */ + brokerIds: number[] = []; + constructor(data?: PartialMessage) { super(); proto3.util.initPartial(data, this); @@ -134,6 +225,7 @@ export class GetDebugBundleStatusRequest extends Message [ + { no: 1, name: "broker_ids", kind: "scalar", T: 5 /* ScalarType.INT32 */, repeated: true }, ]); static fromBinary(bytes: Uint8Array, options?: Partial): GetDebugBundleStatusRequest { @@ -154,52 +246,96 @@ export class GetDebugBundleStatusRequest extends Message { +export class DebugBundleStatus extends Message { /** - * @generated from field: string job_id = 1; + * The broker ID. + * + * @generated from field: int32 broker_id = 1; + */ + brokerId = 0; + + /** + * The job UUID of this process. + * + * @generated from field: string job_id = 2; */ jobId = ""; /** - * @generated from field: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.Status status = 2; + * The status of the job. + * + * @generated from field: redpanda.api.console.v1alpha1.DebugBundleStatus.Status status = 3; */ - status = GetDebugBundleStatusResponse_Status.UNSPECIFIED; + status = DebugBundleStatus_Status.UNSPECIFIED; - constructor(data?: PartialMessage) { + /** + * When the job was started. + * + * @generated from field: google.protobuf.Timestamp created_at = 4; + */ + createdAt?: Timestamp; + + /** + * Path in API to get the file. + * + * @generated from field: string filename = 5; + */ + filename = ""; + + /** + * Only filled in once the process completes. Content of stdout from rpk. + * + * @generated from field: repeated string stdout = 6; + */ + stdout: string[] = []; + + /** + * Only filled in once the process completes. Content of stderr from rpk. + * + * @generated from field: repeated string stderr = 7; + */ + stderr: string[] = []; + + constructor(data?: PartialMessage) { super(); proto3.util.initPartial(data, this); } static readonly runtime: typeof proto3 = proto3; - static readonly typeName = "redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse"; + static readonly typeName = "redpanda.api.console.v1alpha1.DebugBundleStatus"; static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 1, name: "job_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - { no: 2, name: "status", kind: "enum", T: proto3.getEnumType(GetDebugBundleStatusResponse_Status) }, + { no: 1, name: "broker_id", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, + { no: 2, name: "job_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "status", kind: "enum", T: proto3.getEnumType(DebugBundleStatus_Status) }, + { no: 4, name: "created_at", kind: "message", T: Timestamp }, + { no: 5, name: "filename", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 6, name: "stdout", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true }, + { no: 7, name: "stderr", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true }, ]); - static fromBinary(bytes: Uint8Array, options?: Partial): GetDebugBundleStatusResponse { - return new GetDebugBundleStatusResponse().fromBinary(bytes, options); + static fromBinary(bytes: Uint8Array, options?: Partial): DebugBundleStatus { + return new DebugBundleStatus().fromBinary(bytes, options); } - static fromJson(jsonValue: JsonValue, options?: Partial): GetDebugBundleStatusResponse { - return new GetDebugBundleStatusResponse().fromJson(jsonValue, options); + static fromJson(jsonValue: JsonValue, options?: Partial): DebugBundleStatus { + return new DebugBundleStatus().fromJson(jsonValue, options); } - static fromJsonString(jsonString: string, options?: Partial): GetDebugBundleStatusResponse { - return new GetDebugBundleStatusResponse().fromJsonString(jsonString, options); + static fromJsonString(jsonString: string, options?: Partial): DebugBundleStatus { + return new DebugBundleStatus().fromJsonString(jsonString, options); } - static equals(a: GetDebugBundleStatusResponse | PlainMessage | undefined, b: GetDebugBundleStatusResponse | PlainMessage | undefined): boolean { - return proto3.util.equals(GetDebugBundleStatusResponse, a, b); + static equals(a: DebugBundleStatus | PlainMessage | undefined, b: DebugBundleStatus | PlainMessage | undefined): boolean { + return proto3.util.equals(DebugBundleStatus, a, b); } } /** - * @generated from enum redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.Status + * @generated from enum redpanda.api.console.v1alpha1.DebugBundleStatus.Status */ -export enum GetDebugBundleStatusResponse_Status { +export enum DebugBundleStatus_Status { /** * @generated from enum value: STATUS_UNSPECIFIED = 0; */ @@ -220,14 +356,53 @@ export enum GetDebugBundleStatusResponse_Status { */ ERROR = 3, } -// Retrieve enum metadata with: proto3.getEnumType(GetDebugBundleStatusResponse_Status) -proto3.util.setEnumType(GetDebugBundleStatusResponse_Status, "redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.Status", [ +// Retrieve enum metadata with: proto3.getEnumType(DebugBundleStatus_Status) +proto3.util.setEnumType(DebugBundleStatus_Status, "redpanda.api.console.v1alpha1.DebugBundleStatus.Status", [ { no: 0, name: "STATUS_UNSPECIFIED" }, { no: 1, name: "STATUS_RUNNING" }, { no: 2, name: "STATUS_SUCCESS" }, { no: 3, name: "STATUS_ERROR" }, ]); +/** + * The response to GetDebugBundleStatus. + * + * @generated from message redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse + */ +export class GetDebugBundleStatusResponse extends Message { + /** + * @generated from field: repeated redpanda.api.console.v1alpha1.DebugBundleStatus statuses = 1; + */ + statuses: DebugBundleStatus[] = []; + + constructor(data?: PartialMessage) { + super(); + proto3.util.initPartial(data, this); + } + + static readonly runtime: typeof proto3 = proto3; + static readonly typeName = "redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse"; + static readonly fields: FieldList = proto3.util.newFieldList(() => [ + { no: 1, name: "statuses", kind: "message", T: DebugBundleStatus, repeated: true }, + ]); + + static fromBinary(bytes: Uint8Array, options?: Partial): GetDebugBundleStatusResponse { + return new GetDebugBundleStatusResponse().fromBinary(bytes, options); + } + + static fromJson(jsonValue: JsonValue, options?: Partial): GetDebugBundleStatusResponse { + return new GetDebugBundleStatusResponse().fromJson(jsonValue, options); + } + + static fromJsonString(jsonString: string, options?: Partial): GetDebugBundleStatusResponse { + return new GetDebugBundleStatusResponse().fromJsonString(jsonString, options); + } + + static equals(a: GetDebugBundleStatusResponse | PlainMessage | undefined, b: GetDebugBundleStatusResponse | PlainMessage | undefined): boolean { + return proto3.util.equals(GetDebugBundleStatusResponse, a, b); + } +} + /** * @generated from message redpanda.api.console.v1alpha1.DeleteDebugBundleRequest */ @@ -237,6 +412,13 @@ export class DeleteDebugBundleRequest extends Message */ jobId = ""; + /** + * Optional broker IDs. Do not set / empty for all. + * + * @generated from field: repeated int32 broker_ids = 2; + */ + brokerIds: number[] = []; + constructor(data?: PartialMessage) { super(); proto3.util.initPartial(data, this); @@ -246,6 +428,7 @@ export class DeleteDebugBundleRequest extends Message static readonly typeName = "redpanda.api.console.v1alpha1.DeleteDebugBundleRequest"; static readonly fields: FieldList = proto3.util.newFieldList(() => [ { no: 1, name: "job_id", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "broker_ids", kind: "scalar", T: 5 /* ScalarType.INT32 */, repeated: true }, ]); static fromBinary(bytes: Uint8Array, options?: Partial): DeleteDebugBundleRequest { @@ -266,9 +449,16 @@ export class DeleteDebugBundleRequest extends Message } /** + * Response for DeleteDebugBundle. + * * @generated from message redpanda.api.console.v1alpha1.DeleteDebugBundleResponse */ export class DeleteDebugBundleResponse extends Message { + /** + * @generated from field: repeated redpanda.api.console.v1alpha1.BundleError errors = 1; + */ + errors: BundleError[] = []; + constructor(data?: PartialMessage) { super(); proto3.util.initPartial(data, this); @@ -277,6 +467,7 @@ export class DeleteDebugBundleResponse extends Message [ + { no: 1, name: "errors", kind: "message", T: BundleError, repeated: true }, ]); static fromBinary(bytes: Uint8Array, options?: Partial): DeleteDebugBundleResponse { @@ -297,13 +488,22 @@ export class DeleteDebugBundleResponse extends Message { /** - * @generated from field: string file = 1; + * @generated from field: string filename = 1; + */ + filename = ""; + + /** + * Optional broker IDs. Do not set / empty for all. + * + * @generated from field: repeated int32 broker_ids = 2; */ - file = ""; + brokerIds: number[] = []; constructor(data?: PartialMessage) { super(); @@ -313,7 +513,8 @@ export class DeleteDebugBundleFileRequest extends Message [ - { no: 1, name: "file", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 1, name: "filename", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "broker_ids", kind: "scalar", T: 5 /* ScalarType.INT32 */, repeated: true }, ]); static fromBinary(bytes: Uint8Array, options?: Partial): DeleteDebugBundleFileRequest { @@ -334,9 +535,16 @@ export class DeleteDebugBundleFileRequest extends Message { + /** + * @generated from field: repeated redpanda.api.console.v1alpha1.BundleError errors = 1; + */ + errors: BundleError[] = []; + constructor(data?: PartialMessage) { super(); proto3.util.initPartial(data, this); @@ -345,6 +553,7 @@ export class DeleteDebugBundleFileResponse extends Message [ + { no: 1, name: "errors", kind: "message", T: BundleError, repeated: true }, ]); static fromBinary(bytes: Uint8Array, options?: Partial): DeleteDebugBundleFileResponse { @@ -364,3 +573,60 @@ export class DeleteDebugBundleFileResponse extends Message { + /** + * The broker ID. + * + * @generated from field: int32 broker_id = 1; + */ + brokerId = 0; + + /** + * The error code. + * + * @generated from field: redpanda.api.console.v1alpha1.BundleErrorCode code = 2; + */ + code = BundleErrorCode.OK; + + /** + * Additional information + * + * @generated from field: string message = 3; + */ + message = ""; + + constructor(data?: PartialMessage) { + super(); + proto3.util.initPartial(data, this); + } + + static readonly runtime: typeof proto3 = proto3; + static readonly typeName = "redpanda.api.console.v1alpha1.BundleError"; + static readonly fields: FieldList = proto3.util.newFieldList(() => [ + { no: 1, name: "broker_id", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, + { no: 2, name: "code", kind: "enum", T: proto3.getEnumType(BundleErrorCode) }, + { no: 3, name: "message", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ]); + + static fromBinary(bytes: Uint8Array, options?: Partial): BundleError { + return new BundleError().fromBinary(bytes, options); + } + + static fromJson(jsonValue: JsonValue, options?: Partial): BundleError { + return new BundleError().fromJson(jsonValue, options); + } + + static fromJsonString(jsonString: string, options?: Partial): BundleError { + return new BundleError().fromJsonString(jsonString, options); + } + + static equals(a: BundleError | PlainMessage | undefined, b: BundleError | PlainMessage | undefined): boolean { + return proto3.util.equals(BundleError, a, b); + } +} + diff --git a/proto/redpanda/api/console/v1alpha1/debug_bundle.proto b/proto/redpanda/api/console/v1alpha1/debug_bundle.proto index 4a613e6ec..777828592 100644 --- a/proto/redpanda/api/console/v1alpha1/debug_bundle.proto +++ b/proto/redpanda/api/console/v1alpha1/debug_bundle.proto @@ -2,25 +2,73 @@ syntax = "proto3"; package redpanda.api.console.v1alpha1; +import "buf/validate/validate.proto"; +import "google/protobuf/timestamp.proto"; + +// Request to start the creation of debug bundle process with given configuration parameters. message CreateDebugBundleRequest { - int32 controller_logs_size_limit_bytes = 1; - int32 cpu_profiler_wait_seconds = 2; - string logs_since = 3; // TODO add validation 'YYYY-MM-DD', 'yesterday', or 'today' - int32 logs_size_limit_bytes = 4; - string logs_until = 5; // TODO add validation 'YYYY-MM-DD', 'yesterday', or 'today' - int32 metrics_interval_seconds = 6; - repeated string partition = 7; + // Optional broker IDs. Do not set / leave empty to create for all. + repeated int32 broker_ids = 1; + + // The size limit of the controller logs that can be stored in the bundle. + int32 controller_logs_size_limit_bytes = 2 [(buf.validate.field).int32 = {gte: 0}]; + + // For how long to collect samples for the CPU profiler + int32 cpu_profiler_wait_seconds = 3 [(buf.validate.field).int32 = { + gte: 15 + lte: 600 + }]; + + // Include logs dated from specified date onward. + google.protobuf.Timestamp logs_since = 4; + + // Read the logs until the given size is reached. + int32 logs_size_limit_bytes = 5 [(buf.validate.field).int32 = {gte: 0}]; + + // Include logs older than the specified date. + google.protobuf.Timestamp logs_until = 6; + + // Interval between metrics snapshots. + int32 metrics_interval_seconds = 7 [(buf.validate.field).int32 = {gte: 0}]; + + // Partition IDs. When provided, rpk saves extra admin API requests for those partitions. + // Optional. + repeated int32 partition_ids = 8; } +// Response to CreateDebugBundle. message CreateDebugBundleResponse { - string job_id = 1; // UUID + // Job ID. UUID. + string job_id = 1; } -message GetDebugBundleStatusRequest {} +// Gets status of debug bundle progress. +message GetDebugBundleStatusRequest { + // Optional broker IDs to get. If not set / empty get all. + repeated int32 broker_ids = 1; +} -message GetDebugBundleStatusResponse { - string job_id = 1; - Status status = 2; +message DebugBundleStatus { + // The broker ID. + int32 broker_id = 1; + + // The job UUID of this process. + string job_id = 2; + + // The status of the job. + Status status = 3; + + // When the job was started. + google.protobuf.Timestamp created_at = 4; + + // Path in API to get the file. + string filename = 5; + + // Only filled in once the process completes. Content of stdout from rpk. + repeated string stdout = 6; + + // Only filled in once the process completes. Content of stderr from rpk. + repeated string stderr = 7; enum Status { STATUS_UNSPECIFIED = 0; @@ -30,20 +78,73 @@ message GetDebugBundleStatusResponse { } } +// The response to GetDebugBundleStatus. +message GetDebugBundleStatusResponse { + repeated DebugBundleStatus statuses = 1; +} + message DeleteDebugBundleRequest { string job_id = 1; + + // Optional broker IDs. Do not set / empty for all. + repeated int32 broker_ids = 2; } -message DeleteDebugBundleResponse {} +// Response for DeleteDebugBundle. +message DeleteDebugBundleResponse { + repeated BundleError errors = 1; +} +// Request for DeleteDebugBundleFile. message DeleteDebugBundleFileRequest { - string file = 1; + string filename = 1; + + // Optional broker IDs. Do not set / empty for all. + repeated int32 broker_ids = 2; +} + +// Response for DeleteDebugBundleFile. +message DeleteDebugBundleFileResponse { + repeated BundleError errors = 1; +} + +// Error details for various responses and operations. +message BundleError { + // The broker ID. + int32 broker_id = 1; + + // The error code. + BundleErrorCode code = 2; + + // Additional information + string message = 3; } -message DeleteDebugBundleFileResponse {} +// Error code enum. +enum BundleErrorCode { + // buf:lint:ignore ENUM_ZERO_VALUE_SUFFIX + // OK. No Error. + BUNDLE_ERROR_CODE_OK = 0; + + // Debug bundle process already running + BUNDLE_ERROR_CODE_PROCESS_ALREADY_RUNNING = 1; + + // Debug bundle process not running. + BUNDLE_ERROR_CODE_PROCESS_NOT_RUNNING = 2; + + // Job ID not recognized. + BUNDLE_ERROR_CODE_INVALID_JOB_ID = 3; + + // Debug bundle process was never started. + BUNDLE_ERROR_CODE_PROCESS_NOT_STARTED = 4; + + // Internal error. + BUNDLE_ERROR_CODE_INTERNAL_ERROR = 5; +} // Additional API: // GET /api/debug_bundle/{file} +// GET /api/debug_bundle/{broker_id}/{file} // This will download the debug bundle zip file service DebugBundleService { From 0ba8049ca9e03574a2013a52247cd2356ca9382a Mon Sep 17 00:00:00 2001 From: Bojan Djurkovic Date: Wed, 18 Sep 2024 12:49:31 -0300 Subject: [PATCH 3/6] proto: add auth to CreateDebugBundleRequest --- .../api/console/v1alpha1/debug_bundle.pb.go | 768 ++++++++++++------ .../api/console/v1alpha1/debug_bundle_pb.ts | 169 +++- .../api/console/v1alpha1/debug_bundle.proto | 40 +- 3 files changed, 702 insertions(+), 275 deletions(-) diff --git a/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go index e8c20a98a..cbe407e8a 100644 --- a/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go +++ b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go @@ -89,6 +89,55 @@ func (BundleErrorCode) EnumDescriptor() ([]byte, []int) { return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{0} } +type SCRAMAuth_Mechanism int32 + +const ( + SCRAMAuth_MECHANISM_UNSPECIFIED SCRAMAuth_Mechanism = 0 + SCRAMAuth_MECHANISM_SCRAM_SHA_256 SCRAMAuth_Mechanism = 1 + SCRAMAuth_MECHANISM_SCRAM_SHA_512 SCRAMAuth_Mechanism = 2 +) + +// Enum value maps for SCRAMAuth_Mechanism. +var ( + SCRAMAuth_Mechanism_name = map[int32]string{ + 0: "MECHANISM_UNSPECIFIED", + 1: "MECHANISM_SCRAM_SHA_256", + 2: "MECHANISM_SCRAM_SHA_512", + } + SCRAMAuth_Mechanism_value = map[string]int32{ + "MECHANISM_UNSPECIFIED": 0, + "MECHANISM_SCRAM_SHA_256": 1, + "MECHANISM_SCRAM_SHA_512": 2, + } +) + +func (x SCRAMAuth_Mechanism) Enum() *SCRAMAuth_Mechanism { + p := new(SCRAMAuth_Mechanism) + *p = x + return p +} + +func (x SCRAMAuth_Mechanism) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (SCRAMAuth_Mechanism) Descriptor() protoreflect.EnumDescriptor { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes[1].Descriptor() +} + +func (SCRAMAuth_Mechanism) Type() protoreflect.EnumType { + return &file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes[1] +} + +func (x SCRAMAuth_Mechanism) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use SCRAMAuth_Mechanism.Descriptor instead. +func (SCRAMAuth_Mechanism) EnumDescriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{1, 0} +} + type DebugBundleStatus_Status int32 const ( @@ -125,11 +174,11 @@ func (x DebugBundleStatus_Status) String() string { } func (DebugBundleStatus_Status) Descriptor() protoreflect.EnumDescriptor { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes[1].Descriptor() + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes[2].Descriptor() } func (DebugBundleStatus_Status) Type() protoreflect.EnumType { - return &file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes[1] + return &file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes[2] } func (x DebugBundleStatus_Status) Number() protoreflect.EnumNumber { @@ -138,7 +187,119 @@ func (x DebugBundleStatus_Status) Number() protoreflect.EnumNumber { // Deprecated: Use DebugBundleStatus_Status.Descriptor instead. func (DebugBundleStatus_Status) EnumDescriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{3, 0} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{5, 0} +} + +// OIDC Auth settings. +type OIDCAuth struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"` +} + +func (x *OIDCAuth) Reset() { + *x = OIDCAuth{} + if protoimpl.UnsafeEnabled { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *OIDCAuth) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*OIDCAuth) ProtoMessage() {} + +func (x *OIDCAuth) ProtoReflect() protoreflect.Message { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_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 OIDCAuth.ProtoReflect.Descriptor instead. +func (*OIDCAuth) Descriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{0} +} + +func (x *OIDCAuth) GetToken() string { + if x != nil { + return x.Token + } + return "" +} + +// SCRAM Auth settings. +type SCRAMAuth struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"` + Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"` + Mechanism SCRAMAuth_Mechanism `protobuf:"varint,3,opt,name=mechanism,proto3,enum=redpanda.api.console.v1alpha1.SCRAMAuth_Mechanism" json:"mechanism,omitempty"` +} + +func (x *SCRAMAuth) Reset() { + *x = SCRAMAuth{} + if protoimpl.UnsafeEnabled { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) + } +} + +func (x *SCRAMAuth) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SCRAMAuth) ProtoMessage() {} + +func (x *SCRAMAuth) ProtoReflect() protoreflect.Message { + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_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 SCRAMAuth.ProtoReflect.Descriptor instead. +func (*SCRAMAuth) Descriptor() ([]byte, []int) { + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{1} +} + +func (x *SCRAMAuth) GetUsername() string { + if x != nil { + return x.Username + } + return "" +} + +func (x *SCRAMAuth) GetPassword() string { + if x != nil { + return x.Password + } + return "" +} + +func (x *SCRAMAuth) GetMechanism() SCRAMAuth_Mechanism { + if x != nil { + return x.Mechanism + } + return SCRAMAuth_MECHANISM_UNSPECIFIED } // Request to start the creation of debug bundle process with given configuration parameters. @@ -147,29 +308,36 @@ type CreateDebugBundleRequest struct { sizeCache protoimpl.SizeCache unknownFields protoimpl.UnknownFields + // Optional authentication settings to use for the request. + // + // Types that are assignable to Authentication: + // + // *CreateDebugBundleRequest_Oidc + // *CreateDebugBundleRequest_Scram + Authentication isCreateDebugBundleRequest_Authentication `protobuf_oneof:"authentication"` // Optional broker IDs. Do not set / leave empty to create for all. - BrokerIds []int32 `protobuf:"varint,1,rep,packed,name=broker_ids,json=brokerIds,proto3" json:"broker_ids,omitempty"` + BrokerIds []int32 `protobuf:"varint,3,rep,packed,name=broker_ids,json=brokerIds,proto3" json:"broker_ids,omitempty"` // The size limit of the controller logs that can be stored in the bundle. - ControllerLogsSizeLimitBytes int32 `protobuf:"varint,2,opt,name=controller_logs_size_limit_bytes,json=controllerLogsSizeLimitBytes,proto3" json:"controller_logs_size_limit_bytes,omitempty"` + ControllerLogsSizeLimitBytes int32 `protobuf:"varint,4,opt,name=controller_logs_size_limit_bytes,json=controllerLogsSizeLimitBytes,proto3" json:"controller_logs_size_limit_bytes,omitempty"` // For how long to collect samples for the CPU profiler - CpuProfilerWaitSeconds int32 `protobuf:"varint,3,opt,name=cpu_profiler_wait_seconds,json=cpuProfilerWaitSeconds,proto3" json:"cpu_profiler_wait_seconds,omitempty"` + CpuProfilerWaitSeconds int32 `protobuf:"varint,5,opt,name=cpu_profiler_wait_seconds,json=cpuProfilerWaitSeconds,proto3" json:"cpu_profiler_wait_seconds,omitempty"` // Include logs dated from specified date onward. - LogsSince *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=logs_since,json=logsSince,proto3" json:"logs_since,omitempty"` + LogsSince *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=logs_since,json=logsSince,proto3" json:"logs_since,omitempty"` // Read the logs until the given size is reached. - LogsSizeLimitBytes int32 `protobuf:"varint,5,opt,name=logs_size_limit_bytes,json=logsSizeLimitBytes,proto3" json:"logs_size_limit_bytes,omitempty"` + LogsSizeLimitBytes int32 `protobuf:"varint,7,opt,name=logs_size_limit_bytes,json=logsSizeLimitBytes,proto3" json:"logs_size_limit_bytes,omitempty"` // Include logs older than the specified date. - LogsUntil *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=logs_until,json=logsUntil,proto3" json:"logs_until,omitempty"` + LogsUntil *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=logs_until,json=logsUntil,proto3" json:"logs_until,omitempty"` // Interval between metrics snapshots. - MetricsIntervalSeconds int32 `protobuf:"varint,7,opt,name=metrics_interval_seconds,json=metricsIntervalSeconds,proto3" json:"metrics_interval_seconds,omitempty"` + MetricsIntervalSeconds int32 `protobuf:"varint,9,opt,name=metrics_interval_seconds,json=metricsIntervalSeconds,proto3" json:"metrics_interval_seconds,omitempty"` // Partition IDs. When provided, rpk saves extra admin API requests for those partitions. // Optional. - PartitionIds []int32 `protobuf:"varint,8,rep,packed,name=partition_ids,json=partitionIds,proto3" json:"partition_ids,omitempty"` + PartitionIds []int32 `protobuf:"varint,10,rep,packed,name=partition_ids,json=partitionIds,proto3" json:"partition_ids,omitempty"` } func (x *CreateDebugBundleRequest) Reset() { *x = CreateDebugBundleRequest{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[0] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -182,7 +350,7 @@ func (x *CreateDebugBundleRequest) String() string { func (*CreateDebugBundleRequest) ProtoMessage() {} func (x *CreateDebugBundleRequest) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[0] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -195,7 +363,28 @@ func (x *CreateDebugBundleRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateDebugBundleRequest.ProtoReflect.Descriptor instead. func (*CreateDebugBundleRequest) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{0} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{2} +} + +func (m *CreateDebugBundleRequest) GetAuthentication() isCreateDebugBundleRequest_Authentication { + if m != nil { + return m.Authentication + } + return nil +} + +func (x *CreateDebugBundleRequest) GetOidc() *OIDCAuth { + if x, ok := x.GetAuthentication().(*CreateDebugBundleRequest_Oidc); ok { + return x.Oidc + } + return nil +} + +func (x *CreateDebugBundleRequest) GetScram() *SCRAMAuth { + if x, ok := x.GetAuthentication().(*CreateDebugBundleRequest_Scram); ok { + return x.Scram + } + return nil } func (x *CreateDebugBundleRequest) GetBrokerIds() []int32 { @@ -254,6 +443,22 @@ func (x *CreateDebugBundleRequest) GetPartitionIds() []int32 { return nil } +type isCreateDebugBundleRequest_Authentication interface { + isCreateDebugBundleRequest_Authentication() +} + +type CreateDebugBundleRequest_Oidc struct { + Oidc *OIDCAuth `protobuf:"bytes,1,opt,name=oidc,proto3,oneof"` +} + +type CreateDebugBundleRequest_Scram struct { + Scram *SCRAMAuth `protobuf:"bytes,2,opt,name=scram,proto3,oneof"` +} + +func (*CreateDebugBundleRequest_Oidc) isCreateDebugBundleRequest_Authentication() {} + +func (*CreateDebugBundleRequest_Scram) isCreateDebugBundleRequest_Authentication() {} + // Response to CreateDebugBundle. type CreateDebugBundleResponse struct { state protoimpl.MessageState @@ -267,7 +472,7 @@ type CreateDebugBundleResponse struct { func (x *CreateDebugBundleResponse) Reset() { *x = CreateDebugBundleResponse{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[1] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -280,7 +485,7 @@ func (x *CreateDebugBundleResponse) String() string { func (*CreateDebugBundleResponse) ProtoMessage() {} func (x *CreateDebugBundleResponse) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[1] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -293,7 +498,7 @@ func (x *CreateDebugBundleResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateDebugBundleResponse.ProtoReflect.Descriptor instead. func (*CreateDebugBundleResponse) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{1} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{3} } func (x *CreateDebugBundleResponse) GetJobId() string { @@ -316,7 +521,7 @@ type GetDebugBundleStatusRequest struct { func (x *GetDebugBundleStatusRequest) Reset() { *x = GetDebugBundleStatusRequest{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -329,7 +534,7 @@ func (x *GetDebugBundleStatusRequest) String() string { func (*GetDebugBundleStatusRequest) ProtoMessage() {} func (x *GetDebugBundleStatusRequest) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -342,7 +547,7 @@ func (x *GetDebugBundleStatusRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetDebugBundleStatusRequest.ProtoReflect.Descriptor instead. func (*GetDebugBundleStatusRequest) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{2} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{4} } func (x *GetDebugBundleStatusRequest) GetBrokerIds() []int32 { @@ -376,7 +581,7 @@ type DebugBundleStatus struct { func (x *DebugBundleStatus) Reset() { *x = DebugBundleStatus{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -389,7 +594,7 @@ func (x *DebugBundleStatus) String() string { func (*DebugBundleStatus) ProtoMessage() {} func (x *DebugBundleStatus) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -402,7 +607,7 @@ func (x *DebugBundleStatus) ProtoReflect() protoreflect.Message { // Deprecated: Use DebugBundleStatus.ProtoReflect.Descriptor instead. func (*DebugBundleStatus) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{3} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{5} } func (x *DebugBundleStatus) GetBrokerId() int32 { @@ -466,7 +671,7 @@ type GetDebugBundleStatusResponse struct { func (x *GetDebugBundleStatusResponse) Reset() { *x = GetDebugBundleStatusResponse{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -479,7 +684,7 @@ func (x *GetDebugBundleStatusResponse) String() string { func (*GetDebugBundleStatusResponse) ProtoMessage() {} func (x *GetDebugBundleStatusResponse) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -492,7 +697,7 @@ func (x *GetDebugBundleStatusResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetDebugBundleStatusResponse.ProtoReflect.Descriptor instead. func (*GetDebugBundleStatusResponse) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{4} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{6} } func (x *GetDebugBundleStatusResponse) GetStatuses() []*DebugBundleStatus { @@ -515,7 +720,7 @@ type DeleteDebugBundleRequest struct { func (x *DeleteDebugBundleRequest) Reset() { *x = DeleteDebugBundleRequest{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -528,7 +733,7 @@ func (x *DeleteDebugBundleRequest) String() string { func (*DeleteDebugBundleRequest) ProtoMessage() {} func (x *DeleteDebugBundleRequest) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -541,7 +746,7 @@ func (x *DeleteDebugBundleRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteDebugBundleRequest.ProtoReflect.Descriptor instead. func (*DeleteDebugBundleRequest) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{5} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{7} } func (x *DeleteDebugBundleRequest) GetJobId() string { @@ -570,7 +775,7 @@ type DeleteDebugBundleResponse struct { func (x *DeleteDebugBundleResponse) Reset() { *x = DeleteDebugBundleResponse{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -583,7 +788,7 @@ func (x *DeleteDebugBundleResponse) String() string { func (*DeleteDebugBundleResponse) ProtoMessage() {} func (x *DeleteDebugBundleResponse) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -596,7 +801,7 @@ func (x *DeleteDebugBundleResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteDebugBundleResponse.ProtoReflect.Descriptor instead. func (*DeleteDebugBundleResponse) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{6} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{8} } func (x *DeleteDebugBundleResponse) GetErrors() []*BundleError { @@ -620,7 +825,7 @@ type DeleteDebugBundleFileRequest struct { func (x *DeleteDebugBundleFileRequest) Reset() { *x = DeleteDebugBundleFileRequest{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -633,7 +838,7 @@ func (x *DeleteDebugBundleFileRequest) String() string { func (*DeleteDebugBundleFileRequest) ProtoMessage() {} func (x *DeleteDebugBundleFileRequest) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -646,7 +851,7 @@ func (x *DeleteDebugBundleFileRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteDebugBundleFileRequest.ProtoReflect.Descriptor instead. func (*DeleteDebugBundleFileRequest) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{7} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{9} } func (x *DeleteDebugBundleFileRequest) GetFilename() string { @@ -675,7 +880,7 @@ type DeleteDebugBundleFileResponse struct { func (x *DeleteDebugBundleFileResponse) Reset() { *x = DeleteDebugBundleFileResponse{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[8] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -688,7 +893,7 @@ func (x *DeleteDebugBundleFileResponse) String() string { func (*DeleteDebugBundleFileResponse) ProtoMessage() {} func (x *DeleteDebugBundleFileResponse) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[8] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -701,7 +906,7 @@ func (x *DeleteDebugBundleFileResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteDebugBundleFileResponse.ProtoReflect.Descriptor instead. func (*DeleteDebugBundleFileResponse) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{8} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{10} } func (x *DeleteDebugBundleFileResponse) GetErrors() []*BundleError { @@ -728,7 +933,7 @@ type BundleError struct { func (x *BundleError) Reset() { *x = BundleError{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[9] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[11] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -741,7 +946,7 @@ func (x *BundleError) String() string { func (*BundleError) ProtoMessage() {} func (x *BundleError) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[9] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[11] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -754,7 +959,7 @@ func (x *BundleError) ProtoReflect() protoreflect.Message { // Deprecated: Use BundleError.ProtoReflect.Descriptor instead. func (*BundleError) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{9} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{11} } func (x *BundleError) GetBrokerId() int32 { @@ -790,180 +995,207 @@ var file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDesc = []byte{ 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, - 0xeb, 0x03, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, - 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, - 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, - 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x4f, 0x0a, 0x20, 0x63, - 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, - 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, 0x1c, - 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x73, 0x53, 0x69, - 0x7a, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x19, - 0x63, 0x70, 0x75, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x5f, 0x77, 0x61, 0x69, - 0x74, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, - 0x0a, 0xba, 0x48, 0x07, 0x1a, 0x05, 0x18, 0xd8, 0x04, 0x28, 0x0f, 0x52, 0x16, 0x63, 0x70, 0x75, - 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x57, 0x61, 0x69, 0x74, 0x53, 0x65, 0x63, 0x6f, - 0x6e, 0x64, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x6e, 0x63, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x12, 0x3a, - 0x0a, 0x15, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, - 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, - 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, 0x12, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, - 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x6c, 0x6f, - 0x67, 0x73, 0x5f, 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, - 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x12, 0x41, 0x0a, 0x18, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, - 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, - 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, - 0x52, 0x16, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, - 0x6c, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, - 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x05, 0x52, - 0x0c, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x22, 0x32, 0x0a, - 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, - 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, - 0x62, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, - 0x64, 0x22, 0x3c, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, - 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, - 0xfb, 0x02, 0x0a, 0x11, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, - 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x4f, 0x0a, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, - 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, - 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, - 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, - 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, - 0x65, 0x72, 0x72, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, - 0x72, 0x22, 0x5a, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, - 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, - 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x55, - 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, - 0x53, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x53, - 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0x6c, 0x0a, - 0x1c, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, - 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, - 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x22, 0x50, 0x0a, 0x18, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x1d, - 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, - 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x5f, 0x0a, - 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, - 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, - 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, + 0x20, 0x0a, 0x08, 0x4f, 0x49, 0x44, 0x43, 0x41, 0x75, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x74, + 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, + 0x6e, 0x22, 0xf7, 0x01, 0x0a, 0x09, 0x53, 0x43, 0x52, 0x41, 0x4d, 0x41, 0x75, 0x74, 0x68, 0x12, + 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x50, 0x0a, 0x09, 0x6d, 0x65, 0x63, 0x68, 0x61, + 0x6e, 0x69, 0x73, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, - 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x59, - 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, - 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, - 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, - 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, - 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x63, 0x0a, 0x1d, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, - 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, - 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, - 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x88, - 0x01, 0x0a, 0x0b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1b, - 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x04, 0x63, - 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x43, 0x52, 0x41, 0x4d, + 0x41, 0x75, 0x74, 0x68, 0x2e, 0x4d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x52, 0x09, + 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x22, 0x60, 0x0a, 0x09, 0x4d, 0x65, 0x63, + 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x12, 0x19, 0x0a, 0x15, 0x4d, 0x45, 0x43, 0x48, 0x41, 0x4e, + 0x49, 0x53, 0x4d, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, + 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x4d, 0x45, 0x43, 0x48, 0x41, 0x4e, 0x49, 0x53, 0x4d, 0x5f, 0x53, + 0x43, 0x52, 0x41, 0x4d, 0x5f, 0x53, 0x48, 0x41, 0x5f, 0x32, 0x35, 0x36, 0x10, 0x01, 0x12, 0x1b, + 0x0a, 0x17, 0x4d, 0x45, 0x43, 0x48, 0x41, 0x4e, 0x49, 0x53, 0x4d, 0x5f, 0x53, 0x43, 0x52, 0x41, + 0x4d, 0x5f, 0x53, 0x48, 0x41, 0x5f, 0x35, 0x31, 0x32, 0x10, 0x02, 0x22, 0xfe, 0x04, 0x0a, 0x18, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x6f, 0x69, 0x64, 0x63, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x49, 0x44, 0x43, 0x41, 0x75, 0x74, 0x68, 0x48, + 0x00, 0x52, 0x04, 0x6f, 0x69, 0x64, 0x63, 0x12, 0x40, 0x0a, 0x05, 0x73, 0x63, 0x72, 0x61, 0x6d, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x43, 0x52, 0x41, 0x4d, 0x41, 0x75, 0x74, 0x68, + 0x48, 0x00, 0x52, 0x05, 0x73, 0x63, 0x72, 0x61, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, + 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, + 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x4f, 0x0a, 0x20, 0x63, 0x6f, 0x6e, 0x74, + 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, + 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, 0x1c, 0x63, 0x6f, 0x6e, + 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, 0x4c, + 0x69, 0x6d, 0x69, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x19, 0x63, 0x70, 0x75, + 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x73, + 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x0a, 0xba, 0x48, + 0x07, 0x1a, 0x05, 0x18, 0xd8, 0x04, 0x28, 0x0f, 0x52, 0x16, 0x63, 0x70, 0x75, 0x50, 0x72, 0x6f, + 0x66, 0x69, 0x6c, 0x65, 0x72, 0x57, 0x61, 0x69, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, + 0x12, 0x39, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x18, 0x06, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x15, 0x6c, + 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x62, + 0x79, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, + 0x02, 0x28, 0x00, 0x52, 0x12, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, 0x4c, 0x69, 0x6d, + 0x69, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, + 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, + 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x55, 0x6e, 0x74, + 0x69, 0x6c, 0x12, 0x41, 0x0a, 0x18, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x69, 0x6e, + 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x09, + 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, 0x16, 0x6d, + 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x65, + 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0c, 0x70, 0x61, + 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x42, 0x10, 0x0a, 0x0e, 0x61, 0x75, + 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x32, 0x0a, 0x19, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, + 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, + 0x22, 0x3c, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, + 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0xfb, + 0x02, 0x0a, 0x11, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, + 0x64, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x4f, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, + 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x64, 0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x65, + 0x72, 0x72, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, + 0x22, 0x5a, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x54, + 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, + 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x55, 0x4e, + 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, + 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x54, + 0x41, 0x54, 0x55, 0x53, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0x6c, 0x0a, 0x1c, + 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x08, + 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, + 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, + 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x22, 0x50, 0x0a, 0x18, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x1d, 0x0a, + 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, + 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x5f, 0x0a, 0x19, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, 0x72, + 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x59, 0x0a, + 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, + 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, + 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, + 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x63, 0x0a, 0x1d, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, + 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, 0x72, + 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, - 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, - 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2a, 0xfc, 0x01, 0x0a, 0x0f, 0x42, 0x75, - 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, - 0x14, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, - 0x44, 0x45, 0x5f, 0x4f, 0x4b, 0x10, 0x00, 0x12, 0x2d, 0x0a, 0x29, 0x42, 0x55, 0x4e, 0x44, 0x4c, - 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, - 0x43, 0x45, 0x53, 0x53, 0x5f, 0x41, 0x4c, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x52, 0x55, 0x4e, - 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, + 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x88, 0x01, + 0x0a, 0x0b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1b, 0x0a, + 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, + 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x04, 0x63, 0x6f, + 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, + 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, + 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2a, 0xfc, 0x01, 0x0a, 0x0f, 0x42, 0x75, 0x6e, + 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x14, + 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, + 0x45, 0x5f, 0x4f, 0x4b, 0x10, 0x00, 0x12, 0x2d, 0x0a, 0x29, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, - 0x45, 0x53, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, - 0x02, 0x12, 0x24, 0x0a, 0x20, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, - 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4a, - 0x4f, 0x42, 0x5f, 0x49, 0x44, 0x10, 0x03, 0x12, 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, - 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, - 0x43, 0x45, 0x53, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, - 0x10, 0x04, 0x12, 0x24, 0x0a, 0x20, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, - 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, - 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x32, 0xd5, 0x04, 0x0a, 0x12, 0x44, 0x65, 0x62, - 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, - 0x88, 0x01, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, - 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, - 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x91, 0x01, 0x0a, 0x14, 0x47, - 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x3a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, - 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, - 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x88, - 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, + 0x45, 0x53, 0x53, 0x5f, 0x41, 0x4c, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x52, 0x55, 0x4e, 0x4e, + 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, + 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, + 0x53, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, + 0x12, 0x24, 0x0a, 0x20, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, + 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4a, 0x4f, + 0x42, 0x5f, 0x49, 0x44, 0x10, 0x03, 0x12, 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, + 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, + 0x45, 0x53, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, + 0x04, 0x12, 0x24, 0x0a, 0x20, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, + 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x32, 0xd5, 0x04, 0x0a, 0x12, 0x44, 0x65, 0x62, 0x75, + 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x88, + 0x01, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, + 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, - 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x94, 0x01, 0x0a, 0x15, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, - 0x69, 0x6c, 0x65, 0x12, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x91, 0x01, 0x0a, 0x14, 0x47, 0x65, + 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x12, 0x3a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, + 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, + 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, + 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x88, 0x01, + 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, + 0x64, 0x6c, 0x65, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, - 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x1a, 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, - 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, - 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, - 0x42, 0xb1, 0x02, 0x0a, 0x21, 0x63, 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, 0x10, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, - 0x64, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x63, 0x67, 0x69, 0x74, 0x68, - 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, - 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, - 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, - 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, - 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xa2, - 0x02, 0x03, 0x52, 0x41, 0x43, 0xaa, 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x31, 0xca, 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x31, 0xe2, 0x02, 0x29, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0xea, 0x02, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, - 0x69, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, + 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x94, 0x01, 0x0a, 0x15, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, + 0x6c, 0x65, 0x12, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, + 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, + 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, + 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, + 0xb1, 0x02, 0x0a, 0x21, 0x63, 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, 0x10, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x63, 0x67, 0x69, 0x74, 0x68, 0x75, + 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, + 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, + 0x65, 0x6e, 0x64, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, + 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, + 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, 0x63, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xa2, 0x02, + 0x03, 0x52, 0x41, 0x43, 0xaa, 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x41, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x31, 0xca, 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, + 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x31, 0xe2, 0x02, 0x29, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, + 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, + 0xea, 0x02, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, + 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -978,45 +1210,51 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP() []byte return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescData } -var file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes = make([]protoimpl.EnumInfo, 2) -var file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes = make([]protoimpl.MessageInfo, 10) +var file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes = make([]protoimpl.EnumInfo, 3) +var file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes = make([]protoimpl.MessageInfo, 12) var file_redpanda_api_console_v1alpha1_debug_bundle_proto_goTypes = []interface{}{ (BundleErrorCode)(0), // 0: redpanda.api.console.v1alpha1.BundleErrorCode - (DebugBundleStatus_Status)(0), // 1: redpanda.api.console.v1alpha1.DebugBundleStatus.Status - (*CreateDebugBundleRequest)(nil), // 2: redpanda.api.console.v1alpha1.CreateDebugBundleRequest - (*CreateDebugBundleResponse)(nil), // 3: redpanda.api.console.v1alpha1.CreateDebugBundleResponse - (*GetDebugBundleStatusRequest)(nil), // 4: redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest - (*DebugBundleStatus)(nil), // 5: redpanda.api.console.v1alpha1.DebugBundleStatus - (*GetDebugBundleStatusResponse)(nil), // 6: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse - (*DeleteDebugBundleRequest)(nil), // 7: redpanda.api.console.v1alpha1.DeleteDebugBundleRequest - (*DeleteDebugBundleResponse)(nil), // 8: redpanda.api.console.v1alpha1.DeleteDebugBundleResponse - (*DeleteDebugBundleFileRequest)(nil), // 9: redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest - (*DeleteDebugBundleFileResponse)(nil), // 10: redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse - (*BundleError)(nil), // 11: redpanda.api.console.v1alpha1.BundleError - (*timestamppb.Timestamp)(nil), // 12: google.protobuf.Timestamp + (SCRAMAuth_Mechanism)(0), // 1: redpanda.api.console.v1alpha1.SCRAMAuth.Mechanism + (DebugBundleStatus_Status)(0), // 2: redpanda.api.console.v1alpha1.DebugBundleStatus.Status + (*OIDCAuth)(nil), // 3: redpanda.api.console.v1alpha1.OIDCAuth + (*SCRAMAuth)(nil), // 4: redpanda.api.console.v1alpha1.SCRAMAuth + (*CreateDebugBundleRequest)(nil), // 5: redpanda.api.console.v1alpha1.CreateDebugBundleRequest + (*CreateDebugBundleResponse)(nil), // 6: redpanda.api.console.v1alpha1.CreateDebugBundleResponse + (*GetDebugBundleStatusRequest)(nil), // 7: redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest + (*DebugBundleStatus)(nil), // 8: redpanda.api.console.v1alpha1.DebugBundleStatus + (*GetDebugBundleStatusResponse)(nil), // 9: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse + (*DeleteDebugBundleRequest)(nil), // 10: redpanda.api.console.v1alpha1.DeleteDebugBundleRequest + (*DeleteDebugBundleResponse)(nil), // 11: redpanda.api.console.v1alpha1.DeleteDebugBundleResponse + (*DeleteDebugBundleFileRequest)(nil), // 12: redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest + (*DeleteDebugBundleFileResponse)(nil), // 13: redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse + (*BundleError)(nil), // 14: redpanda.api.console.v1alpha1.BundleError + (*timestamppb.Timestamp)(nil), // 15: google.protobuf.Timestamp } var file_redpanda_api_console_v1alpha1_debug_bundle_proto_depIdxs = []int32{ - 12, // 0: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.logs_since:type_name -> google.protobuf.Timestamp - 12, // 1: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.logs_until:type_name -> google.protobuf.Timestamp - 1, // 2: redpanda.api.console.v1alpha1.DebugBundleStatus.status:type_name -> redpanda.api.console.v1alpha1.DebugBundleStatus.Status - 12, // 3: redpanda.api.console.v1alpha1.DebugBundleStatus.created_at:type_name -> google.protobuf.Timestamp - 5, // 4: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.statuses:type_name -> redpanda.api.console.v1alpha1.DebugBundleStatus - 11, // 5: redpanda.api.console.v1alpha1.DeleteDebugBundleResponse.errors:type_name -> redpanda.api.console.v1alpha1.BundleError - 11, // 6: redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse.errors:type_name -> redpanda.api.console.v1alpha1.BundleError - 0, // 7: redpanda.api.console.v1alpha1.BundleError.code:type_name -> redpanda.api.console.v1alpha1.BundleErrorCode - 2, // 8: redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle:input_type -> redpanda.api.console.v1alpha1.CreateDebugBundleRequest - 4, // 9: redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus:input_type -> redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest - 7, // 10: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle:input_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleRequest - 9, // 11: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile:input_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest - 3, // 12: redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle:output_type -> redpanda.api.console.v1alpha1.CreateDebugBundleResponse - 6, // 13: redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus:output_type -> redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse - 8, // 14: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle:output_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleResponse - 10, // 15: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile:output_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse - 12, // [12:16] is the sub-list for method output_type - 8, // [8:12] is the sub-list for method input_type - 8, // [8:8] is the sub-list for extension type_name - 8, // [8:8] is the sub-list for extension extendee - 0, // [0:8] is the sub-list for field type_name + 1, // 0: redpanda.api.console.v1alpha1.SCRAMAuth.mechanism:type_name -> redpanda.api.console.v1alpha1.SCRAMAuth.Mechanism + 3, // 1: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.oidc:type_name -> redpanda.api.console.v1alpha1.OIDCAuth + 4, // 2: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.scram:type_name -> redpanda.api.console.v1alpha1.SCRAMAuth + 15, // 3: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.logs_since:type_name -> google.protobuf.Timestamp + 15, // 4: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.logs_until:type_name -> google.protobuf.Timestamp + 2, // 5: redpanda.api.console.v1alpha1.DebugBundleStatus.status:type_name -> redpanda.api.console.v1alpha1.DebugBundleStatus.Status + 15, // 6: redpanda.api.console.v1alpha1.DebugBundleStatus.created_at:type_name -> google.protobuf.Timestamp + 8, // 7: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.statuses:type_name -> redpanda.api.console.v1alpha1.DebugBundleStatus + 14, // 8: redpanda.api.console.v1alpha1.DeleteDebugBundleResponse.errors:type_name -> redpanda.api.console.v1alpha1.BundleError + 14, // 9: redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse.errors:type_name -> redpanda.api.console.v1alpha1.BundleError + 0, // 10: redpanda.api.console.v1alpha1.BundleError.code:type_name -> redpanda.api.console.v1alpha1.BundleErrorCode + 5, // 11: redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle:input_type -> redpanda.api.console.v1alpha1.CreateDebugBundleRequest + 7, // 12: redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus:input_type -> redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest + 10, // 13: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle:input_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleRequest + 12, // 14: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile:input_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest + 6, // 15: redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle:output_type -> redpanda.api.console.v1alpha1.CreateDebugBundleResponse + 9, // 16: redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus:output_type -> redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse + 11, // 17: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle:output_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleResponse + 13, // 18: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile:output_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse + 15, // [15:19] is the sub-list for method output_type + 11, // [11:15] is the sub-list for method input_type + 11, // [11:11] is the sub-list for extension type_name + 11, // [11:11] is the sub-list for extension extendee + 0, // [0:11] is the sub-list for field type_name } func init() { file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() } @@ -1026,7 +1264,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } if !protoimpl.UnsafeEnabled { file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateDebugBundleRequest); i { + switch v := v.(*OIDCAuth); i { case 0: return &v.state case 1: @@ -1038,7 +1276,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CreateDebugBundleResponse); i { + switch v := v.(*SCRAMAuth); i { case 0: return &v.state case 1: @@ -1050,7 +1288,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetDebugBundleStatusRequest); i { + switch v := v.(*CreateDebugBundleRequest); i { case 0: return &v.state case 1: @@ -1062,7 +1300,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DebugBundleStatus); i { + switch v := v.(*CreateDebugBundleResponse); i { case 0: return &v.state case 1: @@ -1074,7 +1312,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetDebugBundleStatusResponse); i { + switch v := v.(*GetDebugBundleStatusRequest); i { case 0: return &v.state case 1: @@ -1086,7 +1324,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteDebugBundleRequest); i { + switch v := v.(*DebugBundleStatus); i { case 0: return &v.state case 1: @@ -1098,7 +1336,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteDebugBundleResponse); i { + switch v := v.(*GetDebugBundleStatusResponse); i { case 0: return &v.state case 1: @@ -1110,7 +1348,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteDebugBundleFileRequest); i { + switch v := v.(*DeleteDebugBundleRequest); i { case 0: return &v.state case 1: @@ -1122,7 +1360,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DeleteDebugBundleFileResponse); i { + switch v := v.(*DeleteDebugBundleResponse); i { case 0: return &v.state case 1: @@ -1134,6 +1372,30 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteDebugBundleFileRequest); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + switch v := v.(*DeleteDebugBundleFileResponse); i { + case 0: + return &v.state + case 1: + return &v.sizeCache + case 2: + return &v.unknownFields + default: + return nil + } + } + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BundleError); i { case 0: return &v.state @@ -1146,13 +1408,17 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } } + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2].OneofWrappers = []interface{}{ + (*CreateDebugBundleRequest_Oidc)(nil), + (*CreateDebugBundleRequest_Scram)(nil), + } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDesc, - NumEnums: 2, - NumMessages: 10, + NumEnums: 3, + NumMessages: 12, NumExtensions: 0, NumServices: 1, }, diff --git a/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts b/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts index d895caac6..232916845 100644 --- a/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts +++ b/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts @@ -65,58 +65,193 @@ proto3.util.setEnumType(BundleErrorCode, "redpanda.api.console.v1alpha1.BundleEr { no: 5, name: "BUNDLE_ERROR_CODE_INTERNAL_ERROR" }, ]); +/** + * OIDC Auth settings. + * + * @generated from message redpanda.api.console.v1alpha1.OIDCAuth + */ +export class OIDCAuth extends Message { + /** + * @generated from field: string token = 1; + */ + token = ""; + + constructor(data?: PartialMessage) { + super(); + proto3.util.initPartial(data, this); + } + + static readonly runtime: typeof proto3 = proto3; + static readonly typeName = "redpanda.api.console.v1alpha1.OIDCAuth"; + static readonly fields: FieldList = proto3.util.newFieldList(() => [ + { no: 1, name: "token", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + ]); + + static fromBinary(bytes: Uint8Array, options?: Partial): OIDCAuth { + return new OIDCAuth().fromBinary(bytes, options); + } + + static fromJson(jsonValue: JsonValue, options?: Partial): OIDCAuth { + return new OIDCAuth().fromJson(jsonValue, options); + } + + static fromJsonString(jsonString: string, options?: Partial): OIDCAuth { + return new OIDCAuth().fromJsonString(jsonString, options); + } + + static equals(a: OIDCAuth | PlainMessage | undefined, b: OIDCAuth | PlainMessage | undefined): boolean { + return proto3.util.equals(OIDCAuth, a, b); + } +} + +/** + * SCRAM Auth settings. + * + * @generated from message redpanda.api.console.v1alpha1.SCRAMAuth + */ +export class SCRAMAuth extends Message { + /** + * @generated from field: string username = 1; + */ + username = ""; + + /** + * @generated from field: string password = 2; + */ + password = ""; + + /** + * @generated from field: redpanda.api.console.v1alpha1.SCRAMAuth.Mechanism mechanism = 3; + */ + mechanism = SCRAMAuth_Mechanism.UNSPECIFIED; + + constructor(data?: PartialMessage) { + super(); + proto3.util.initPartial(data, this); + } + + static readonly runtime: typeof proto3 = proto3; + static readonly typeName = "redpanda.api.console.v1alpha1.SCRAMAuth"; + static readonly fields: FieldList = proto3.util.newFieldList(() => [ + { no: 1, name: "username", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 2, name: "password", kind: "scalar", T: 9 /* ScalarType.STRING */ }, + { no: 3, name: "mechanism", kind: "enum", T: proto3.getEnumType(SCRAMAuth_Mechanism) }, + ]); + + static fromBinary(bytes: Uint8Array, options?: Partial): SCRAMAuth { + return new SCRAMAuth().fromBinary(bytes, options); + } + + static fromJson(jsonValue: JsonValue, options?: Partial): SCRAMAuth { + return new SCRAMAuth().fromJson(jsonValue, options); + } + + static fromJsonString(jsonString: string, options?: Partial): SCRAMAuth { + return new SCRAMAuth().fromJsonString(jsonString, options); + } + + static equals(a: SCRAMAuth | PlainMessage | undefined, b: SCRAMAuth | PlainMessage | undefined): boolean { + return proto3.util.equals(SCRAMAuth, a, b); + } +} + +/** + * @generated from enum redpanda.api.console.v1alpha1.SCRAMAuth.Mechanism + */ +export enum SCRAMAuth_Mechanism { + /** + * @generated from enum value: MECHANISM_UNSPECIFIED = 0; + */ + UNSPECIFIED = 0, + + /** + * @generated from enum value: MECHANISM_SCRAM_SHA_256 = 1; + */ + SCRAM_SHA_256 = 1, + + /** + * @generated from enum value: MECHANISM_SCRAM_SHA_512 = 2; + */ + SCRAM_SHA_512 = 2, +} +// Retrieve enum metadata with: proto3.getEnumType(SCRAMAuth_Mechanism) +proto3.util.setEnumType(SCRAMAuth_Mechanism, "redpanda.api.console.v1alpha1.SCRAMAuth.Mechanism", [ + { no: 0, name: "MECHANISM_UNSPECIFIED" }, + { no: 1, name: "MECHANISM_SCRAM_SHA_256" }, + { no: 2, name: "MECHANISM_SCRAM_SHA_512" }, +]); + /** * Request to start the creation of debug bundle process with given configuration parameters. * * @generated from message redpanda.api.console.v1alpha1.CreateDebugBundleRequest */ export class CreateDebugBundleRequest extends Message { + /** + * Optional authentication settings to use for the request. + * + * @generated from oneof redpanda.api.console.v1alpha1.CreateDebugBundleRequest.authentication + */ + authentication: { + /** + * @generated from field: redpanda.api.console.v1alpha1.OIDCAuth oidc = 1; + */ + value: OIDCAuth; + case: "oidc"; + } | { + /** + * @generated from field: redpanda.api.console.v1alpha1.SCRAMAuth scram = 2; + */ + value: SCRAMAuth; + case: "scram"; + } | { case: undefined; value?: undefined } = { case: undefined }; + /** * Optional broker IDs. Do not set / leave empty to create for all. * - * @generated from field: repeated int32 broker_ids = 1; + * @generated from field: repeated int32 broker_ids = 3; */ brokerIds: number[] = []; /** * The size limit of the controller logs that can be stored in the bundle. * - * @generated from field: int32 controller_logs_size_limit_bytes = 2; + * @generated from field: int32 controller_logs_size_limit_bytes = 4; */ controllerLogsSizeLimitBytes = 0; /** * For how long to collect samples for the CPU profiler * - * @generated from field: int32 cpu_profiler_wait_seconds = 3; + * @generated from field: int32 cpu_profiler_wait_seconds = 5; */ cpuProfilerWaitSeconds = 0; /** * Include logs dated from specified date onward. * - * @generated from field: google.protobuf.Timestamp logs_since = 4; + * @generated from field: google.protobuf.Timestamp logs_since = 6; */ logsSince?: Timestamp; /** * Read the logs until the given size is reached. * - * @generated from field: int32 logs_size_limit_bytes = 5; + * @generated from field: int32 logs_size_limit_bytes = 7; */ logsSizeLimitBytes = 0; /** * Include logs older than the specified date. * - * @generated from field: google.protobuf.Timestamp logs_until = 6; + * @generated from field: google.protobuf.Timestamp logs_until = 8; */ logsUntil?: Timestamp; /** * Interval between metrics snapshots. * - * @generated from field: int32 metrics_interval_seconds = 7; + * @generated from field: int32 metrics_interval_seconds = 9; */ metricsIntervalSeconds = 0; @@ -124,7 +259,7 @@ export class CreateDebugBundleRequest extends Message * Partition IDs. When provided, rpk saves extra admin API requests for those partitions. * Optional. * - * @generated from field: repeated int32 partition_ids = 8; + * @generated from field: repeated int32 partition_ids = 10; */ partitionIds: number[] = []; @@ -136,14 +271,16 @@ export class CreateDebugBundleRequest extends Message static readonly runtime: typeof proto3 = proto3; static readonly typeName = "redpanda.api.console.v1alpha1.CreateDebugBundleRequest"; static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 1, name: "broker_ids", kind: "scalar", T: 5 /* ScalarType.INT32 */, repeated: true }, - { no: 2, name: "controller_logs_size_limit_bytes", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, - { no: 3, name: "cpu_profiler_wait_seconds", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, - { no: 4, name: "logs_since", kind: "message", T: Timestamp }, - { no: 5, name: "logs_size_limit_bytes", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, - { no: 6, name: "logs_until", kind: "message", T: Timestamp }, - { no: 7, name: "metrics_interval_seconds", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, - { no: 8, name: "partition_ids", kind: "scalar", T: 5 /* ScalarType.INT32 */, repeated: true }, + { no: 1, name: "oidc", kind: "message", T: OIDCAuth, oneof: "authentication" }, + { no: 2, name: "scram", kind: "message", T: SCRAMAuth, oneof: "authentication" }, + { no: 3, name: "broker_ids", kind: "scalar", T: 5 /* ScalarType.INT32 */, repeated: true }, + { no: 4, name: "controller_logs_size_limit_bytes", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, + { no: 5, name: "cpu_profiler_wait_seconds", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, + { no: 6, name: "logs_since", kind: "message", T: Timestamp }, + { no: 7, name: "logs_size_limit_bytes", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, + { no: 8, name: "logs_until", kind: "message", T: Timestamp }, + { no: 9, name: "metrics_interval_seconds", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, + { no: 10, name: "partition_ids", kind: "scalar", T: 5 /* ScalarType.INT32 */, repeated: true }, ]); static fromBinary(bytes: Uint8Array, options?: Partial): CreateDebugBundleRequest { diff --git a/proto/redpanda/api/console/v1alpha1/debug_bundle.proto b/proto/redpanda/api/console/v1alpha1/debug_bundle.proto index 777828592..04b8870fe 100644 --- a/proto/redpanda/api/console/v1alpha1/debug_bundle.proto +++ b/proto/redpanda/api/console/v1alpha1/debug_bundle.proto @@ -5,35 +5,59 @@ package redpanda.api.console.v1alpha1; import "buf/validate/validate.proto"; import "google/protobuf/timestamp.proto"; +// OIDC Auth settings. +message OIDCAuth { + string token = 1; +} + +// SCRAM Auth settings. +message SCRAMAuth { + string username = 1; + string password = 2; + Mechanism mechanism = 3; + + enum Mechanism { + MECHANISM_UNSPECIFIED = 0; + MECHANISM_SCRAM_SHA_256 = 1; + MECHANISM_SCRAM_SHA_512 = 2; + } +} + // Request to start the creation of debug bundle process with given configuration parameters. message CreateDebugBundleRequest { + // Optional authentication settings to use for the request. + oneof authentication { + OIDCAuth oidc = 1; + SCRAMAuth scram = 2; + } + // Optional broker IDs. Do not set / leave empty to create for all. - repeated int32 broker_ids = 1; + repeated int32 broker_ids = 3; // The size limit of the controller logs that can be stored in the bundle. - int32 controller_logs_size_limit_bytes = 2 [(buf.validate.field).int32 = {gte: 0}]; + int32 controller_logs_size_limit_bytes = 4 [(buf.validate.field).int32 = {gte: 0}]; // For how long to collect samples for the CPU profiler - int32 cpu_profiler_wait_seconds = 3 [(buf.validate.field).int32 = { + int32 cpu_profiler_wait_seconds = 5 [(buf.validate.field).int32 = { gte: 15 lte: 600 }]; // Include logs dated from specified date onward. - google.protobuf.Timestamp logs_since = 4; + google.protobuf.Timestamp logs_since = 6; // Read the logs until the given size is reached. - int32 logs_size_limit_bytes = 5 [(buf.validate.field).int32 = {gte: 0}]; + int32 logs_size_limit_bytes = 7 [(buf.validate.field).int32 = {gte: 0}]; // Include logs older than the specified date. - google.protobuf.Timestamp logs_until = 6; + google.protobuf.Timestamp logs_until = 8; // Interval between metrics snapshots. - int32 metrics_interval_seconds = 7 [(buf.validate.field).int32 = {gte: 0}]; + int32 metrics_interval_seconds = 9 [(buf.validate.field).int32 = {gte: 0}]; // Partition IDs. When provided, rpk saves extra admin API requests for those partitions. // Optional. - repeated int32 partition_ids = 8; + repeated int32 partition_ids = 10; } // Response to CreateDebugBundle. From cddb4a941ddaaaa799fb9c9bb2eacd7a55c125a2 Mon Sep 17 00:00:00 2001 From: Bojan Djurkovic Date: Wed, 18 Sep 2024 12:53:36 -0300 Subject: [PATCH 4/6] proto: change partition parameter to be a string and add comments --- .../api/console/v1alpha1/debug_bundle.pb.go | 296 +++++++++--------- .../api/console/v1alpha1/debug_bundle_pb.ts | 12 +- .../api/console/v1alpha1/debug_bundle.proto | 8 +- 3 files changed, 164 insertions(+), 152 deletions(-) diff --git a/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go index cbe407e8a..6aefc70d4 100644 --- a/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go +++ b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go @@ -329,9 +329,13 @@ type CreateDebugBundleRequest struct { LogsUntil *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=logs_until,json=logsUntil,proto3" json:"logs_until,omitempty"` // Interval between metrics snapshots. MetricsIntervalSeconds int32 `protobuf:"varint,9,opt,name=metrics_interval_seconds,json=metricsIntervalSeconds,proto3" json:"metrics_interval_seconds,omitempty"` - // Partition IDs. When provided, rpk saves extra admin API requests for those partitions. + // Partitions. When provided, rpk saves extra admin API requests for those partitions. // Optional. - PartitionIds []int32 `protobuf:"varint,10,rep,packed,name=partition_ids,json=partitionIds,proto3" json:"partition_ids,omitempty"` + // In format {namespace/}topic/{partition ids} where namespace is optional and will be replaced with "kafka" if not provided. + // Partition IDs is comma separated numbers. + // kafka/foo/1,2,3. also there can be multiple of those so + // ['kafka/foo/1,2,3', 'private/baz/3.4.5'] + Partitions []string `protobuf:"bytes,10,rep,name=partitions,proto3" json:"partitions,omitempty"` } func (x *CreateDebugBundleRequest) Reset() { @@ -436,9 +440,9 @@ func (x *CreateDebugBundleRequest) GetMetricsIntervalSeconds() int32 { return 0 } -func (x *CreateDebugBundleRequest) GetPartitionIds() []int32 { +func (x *CreateDebugBundleRequest) GetPartitions() []string { if x != nil { - return x.PartitionIds + return x.Partitions } return nil } @@ -1012,7 +1016,7 @@ var file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDesc = []byte{ 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x4d, 0x45, 0x43, 0x48, 0x41, 0x4e, 0x49, 0x53, 0x4d, 0x5f, 0x53, 0x43, 0x52, 0x41, 0x4d, 0x5f, 0x53, 0x48, 0x41, 0x5f, 0x32, 0x35, 0x36, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x4d, 0x45, 0x43, 0x48, 0x41, 0x4e, 0x49, 0x53, 0x4d, 0x5f, 0x53, 0x43, 0x52, 0x41, - 0x4d, 0x5f, 0x53, 0x48, 0x41, 0x5f, 0x35, 0x31, 0x32, 0x10, 0x02, 0x22, 0xfe, 0x04, 0x0a, 0x18, + 0x4d, 0x5f, 0x53, 0x48, 0x41, 0x5f, 0x35, 0x31, 0x32, 0x10, 0x02, 0x22, 0xf9, 0x04, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x6f, 0x69, 0x64, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, @@ -1049,153 +1053,153 @@ var file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDesc = []byte{ 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, 0x16, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x65, - 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x05, 0x52, 0x0c, 0x70, 0x61, - 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x73, 0x42, 0x10, 0x0a, 0x0e, 0x61, 0x75, - 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x32, 0x0a, 0x19, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, - 0x22, 0x3c, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, - 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, - 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0xfb, - 0x02, 0x0a, 0x11, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, - 0x64, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x4f, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, - 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x64, 0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x65, - 0x72, 0x72, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, - 0x22, 0x5a, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x54, - 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, - 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x55, 0x4e, - 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, - 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x54, - 0x41, 0x54, 0x55, 0x53, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0x6c, 0x0a, 0x1c, - 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x08, - 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, - 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x22, 0x50, 0x0a, 0x18, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x1d, 0x0a, - 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, - 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x5f, 0x0a, 0x19, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, 0x72, - 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, + 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, + 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x10, 0x0a, 0x0e, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x32, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, + 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x1b, 0x47, + 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, + 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, + 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0xfb, 0x02, 0x0a, 0x11, 0x44, 0x65, + 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, + 0x1b, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, + 0x28, 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, + 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, + 0x62, 0x49, 0x64, 0x12, 0x4f, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, + 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, + 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, + 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, + 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, + 0x74, 0x64, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, + 0x6f, 0x75, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x18, 0x07, 0x20, + 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x22, 0x5a, 0x0a, 0x06, 0x53, + 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, + 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, + 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, + 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x55, 0x43, 0x43, + 0x45, 0x53, 0x53, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, + 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0x6c, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x44, 0x65, + 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, - 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x59, 0x0a, - 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, - 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, - 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, - 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, - 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x63, 0x0a, 0x1d, 0x44, 0x65, 0x6c, 0x65, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x08, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x65, 0x73, 0x22, 0x50, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, + 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, + 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x5f, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x59, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, 0x72, - 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, - 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x88, 0x01, - 0x0a, 0x0b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1b, 0x0a, - 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, - 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x04, 0x63, 0x6f, - 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, - 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, - 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2a, 0xfc, 0x01, 0x0a, 0x0f, 0x42, 0x75, 0x6e, - 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x14, - 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, - 0x45, 0x5f, 0x4f, 0x4b, 0x10, 0x00, 0x12, 0x2d, 0x0a, 0x29, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, - 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, - 0x45, 0x53, 0x53, 0x5f, 0x41, 0x4c, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x52, 0x55, 0x4e, 0x4e, - 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, - 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, - 0x53, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, - 0x12, 0x24, 0x0a, 0x20, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, - 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4a, 0x4f, - 0x42, 0x5f, 0x49, 0x44, 0x10, 0x03, 0x12, 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, - 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, - 0x45, 0x53, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, - 0x04, 0x12, 0x24, 0x0a, 0x20, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, - 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, - 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x32, 0xd5, 0x04, 0x0a, 0x12, 0x44, 0x65, 0x62, 0x75, - 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x88, - 0x01, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, - 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, + 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, + 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, + 0x49, 0x64, 0x73, 0x22, 0x63, 0x0a, 0x1d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, + 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, - 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, + 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, + 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x88, 0x01, 0x0a, 0x0b, 0x42, 0x75, 0x6e, + 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, + 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, + 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, + 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x2a, 0xfc, 0x01, 0x0a, 0x0f, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, + 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x42, 0x55, 0x4e, 0x44, 0x4c, + 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x4f, 0x4b, 0x10, + 0x00, 0x12, 0x2d, 0x0a, 0x29, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x41, + 0x4c, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, + 0x12, 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, + 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x4e, 0x4f, + 0x54, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x24, 0x0a, 0x20, 0x42, + 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, + 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4a, 0x4f, 0x42, 0x5f, 0x49, 0x44, 0x10, + 0x03, 0x12, 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x4e, + 0x4f, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, 0x04, 0x12, 0x24, 0x0a, 0x20, + 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, + 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, + 0x10, 0x05, 0x32, 0xd5, 0x04, 0x0a, 0x12, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x11, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, + 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, + 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, + 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, + 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x12, 0x91, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, + 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x3a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, - 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x91, 0x01, 0x0a, 0x14, 0x47, 0x65, + 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x12, 0x3a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, - 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, + 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, + 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x88, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, - 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x88, 0x01, - 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, - 0x64, 0x6c, 0x65, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, - 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, - 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x94, 0x01, 0x0a, 0x15, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, - 0x6c, 0x65, 0x12, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, - 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, - 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, - 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, - 0xb1, 0x02, 0x0a, 0x21, 0x63, 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, - 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, - 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, 0x10, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, - 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x63, 0x67, 0x69, 0x74, 0x68, 0x75, - 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, - 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, - 0x65, 0x6e, 0x64, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, - 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, 0x63, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xa2, 0x02, - 0x03, 0x52, 0x41, 0x43, 0xaa, 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x41, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x31, 0xca, 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, - 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x31, 0xe2, 0x02, 0x29, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, - 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0xea, 0x02, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, - 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, + 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, + 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x22, 0x00, 0x12, 0x94, 0x01, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, + 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x3b, 0x2e, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, + 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, + 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, + 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0xb1, 0x02, 0x0a, 0x21, 0x63, + 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, + 0x42, 0x10, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x50, 0x72, 0x6f, + 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x63, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, + 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, + 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, + 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, + 0x65, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x43, 0xaa, + 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x43, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xca, + 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xe2, + 0x02, 0x29, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x5c, + 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x20, 0x52, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, + 0x73, 0x6f, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x62, 0x06, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( diff --git a/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts b/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts index 232916845..dbda06ba0 100644 --- a/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts +++ b/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts @@ -256,12 +256,16 @@ export class CreateDebugBundleRequest extends Message metricsIntervalSeconds = 0; /** - * Partition IDs. When provided, rpk saves extra admin API requests for those partitions. + * Partitions. When provided, rpk saves extra admin API requests for those partitions. * Optional. + * In format {namespace/}topic/{partition ids} where namespace is optional and will be replaced with "kafka" if not provided. + * Partition IDs is comma separated numbers. + * kafka/foo/1,2,3. also there can be multiple of those so + * ['kafka/foo/1,2,3', 'private/baz/3.4.5'] * - * @generated from field: repeated int32 partition_ids = 10; + * @generated from field: repeated string partitions = 10; */ - partitionIds: number[] = []; + partitions: string[] = []; constructor(data?: PartialMessage) { super(); @@ -280,7 +284,7 @@ export class CreateDebugBundleRequest extends Message { no: 7, name: "logs_size_limit_bytes", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, { no: 8, name: "logs_until", kind: "message", T: Timestamp }, { no: 9, name: "metrics_interval_seconds", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, - { no: 10, name: "partition_ids", kind: "scalar", T: 5 /* ScalarType.INT32 */, repeated: true }, + { no: 10, name: "partitions", kind: "scalar", T: 9 /* ScalarType.STRING */, repeated: true }, ]); static fromBinary(bytes: Uint8Array, options?: Partial): CreateDebugBundleRequest { diff --git a/proto/redpanda/api/console/v1alpha1/debug_bundle.proto b/proto/redpanda/api/console/v1alpha1/debug_bundle.proto index 04b8870fe..d0ea0efb2 100644 --- a/proto/redpanda/api/console/v1alpha1/debug_bundle.proto +++ b/proto/redpanda/api/console/v1alpha1/debug_bundle.proto @@ -55,9 +55,13 @@ message CreateDebugBundleRequest { // Interval between metrics snapshots. int32 metrics_interval_seconds = 9 [(buf.validate.field).int32 = {gte: 0}]; - // Partition IDs. When provided, rpk saves extra admin API requests for those partitions. + // Partitions. When provided, rpk saves extra admin API requests for those partitions. // Optional. - repeated int32 partition_ids = 10; + // In format {namespace/}topic/{partition ids} where namespace is optional and will be replaced with "kafka" if not provided. + // Partition IDs is comma separated numbers. + // kafka/foo/1,2,3. also there can be multiple of those so + // ['kafka/foo/1,2,3', 'private/baz/3.4.5'] + repeated string partitions = 10; } // Response to CreateDebugBundle. From 727c1efd3c0f5f77715534ef874f86563dea6b23 Mon Sep 17 00:00:00 2001 From: Bojan Djurkovic Date: Wed, 18 Sep 2024 13:03:28 -0300 Subject: [PATCH 5/6] proto: remove OIDC auth as it is not supported --- .../api/console/v1alpha1/debug_bundle.pb.go | 617 ++++++++---------- .../api/console/v1alpha1/debug_bundle_pb.ts | 50 +- .../api/console/v1alpha1/debug_bundle.proto | 8 +- 3 files changed, 270 insertions(+), 405 deletions(-) diff --git a/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go index 6aefc70d4..d43cec5b5 100644 --- a/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go +++ b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go @@ -135,7 +135,7 @@ func (x SCRAMAuth_Mechanism) Number() protoreflect.EnumNumber { // Deprecated: Use SCRAMAuth_Mechanism.Descriptor instead. func (SCRAMAuth_Mechanism) EnumDescriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{1, 0} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{0, 0} } type DebugBundleStatus_Status int32 @@ -187,55 +187,7 @@ func (x DebugBundleStatus_Status) Number() protoreflect.EnumNumber { // Deprecated: Use DebugBundleStatus_Status.Descriptor instead. func (DebugBundleStatus_Status) EnumDescriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{5, 0} -} - -// OIDC Auth settings. -type OIDCAuth struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"` -} - -func (x *OIDCAuth) Reset() { - *x = OIDCAuth{} - if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } -} - -func (x *OIDCAuth) String() string { - return protoimpl.X.MessageStringOf(x) -} - -func (*OIDCAuth) ProtoMessage() {} - -func (x *OIDCAuth) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_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 OIDCAuth.ProtoReflect.Descriptor instead. -func (*OIDCAuth) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{0} -} - -func (x *OIDCAuth) GetToken() string { - if x != nil { - return x.Token - } - return "" + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{4, 0} } // SCRAM Auth settings. @@ -252,7 +204,7 @@ type SCRAMAuth struct { func (x *SCRAMAuth) Reset() { *x = SCRAMAuth{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[1] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[0] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -265,7 +217,7 @@ func (x *SCRAMAuth) String() string { func (*SCRAMAuth) ProtoMessage() {} func (x *SCRAMAuth) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[1] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[0] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -278,7 +230,7 @@ func (x *SCRAMAuth) ProtoReflect() protoreflect.Message { // Deprecated: Use SCRAMAuth.ProtoReflect.Descriptor instead. func (*SCRAMAuth) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{1} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{0} } func (x *SCRAMAuth) GetUsername() string { @@ -312,7 +264,6 @@ type CreateDebugBundleRequest struct { // // Types that are assignable to Authentication: // - // *CreateDebugBundleRequest_Oidc // *CreateDebugBundleRequest_Scram Authentication isCreateDebugBundleRequest_Authentication `protobuf_oneof:"authentication"` // Optional broker IDs. Do not set / leave empty to create for all. @@ -341,7 +292,7 @@ type CreateDebugBundleRequest struct { func (x *CreateDebugBundleRequest) Reset() { *x = CreateDebugBundleRequest{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[1] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -354,7 +305,7 @@ func (x *CreateDebugBundleRequest) String() string { func (*CreateDebugBundleRequest) ProtoMessage() {} func (x *CreateDebugBundleRequest) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[1] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -367,7 +318,7 @@ func (x *CreateDebugBundleRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateDebugBundleRequest.ProtoReflect.Descriptor instead. func (*CreateDebugBundleRequest) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{2} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{1} } func (m *CreateDebugBundleRequest) GetAuthentication() isCreateDebugBundleRequest_Authentication { @@ -377,13 +328,6 @@ func (m *CreateDebugBundleRequest) GetAuthentication() isCreateDebugBundleReques return nil } -func (x *CreateDebugBundleRequest) GetOidc() *OIDCAuth { - if x, ok := x.GetAuthentication().(*CreateDebugBundleRequest_Oidc); ok { - return x.Oidc - } - return nil -} - func (x *CreateDebugBundleRequest) GetScram() *SCRAMAuth { if x, ok := x.GetAuthentication().(*CreateDebugBundleRequest_Scram); ok { return x.Scram @@ -451,16 +395,10 @@ type isCreateDebugBundleRequest_Authentication interface { isCreateDebugBundleRequest_Authentication() } -type CreateDebugBundleRequest_Oidc struct { - Oidc *OIDCAuth `protobuf:"bytes,1,opt,name=oidc,proto3,oneof"` -} - type CreateDebugBundleRequest_Scram struct { - Scram *SCRAMAuth `protobuf:"bytes,2,opt,name=scram,proto3,oneof"` + Scram *SCRAMAuth `protobuf:"bytes,1,opt,name=scram,proto3,oneof"` } -func (*CreateDebugBundleRequest_Oidc) isCreateDebugBundleRequest_Authentication() {} - func (*CreateDebugBundleRequest_Scram) isCreateDebugBundleRequest_Authentication() {} // Response to CreateDebugBundle. @@ -476,7 +414,7 @@ type CreateDebugBundleResponse struct { func (x *CreateDebugBundleResponse) Reset() { *x = CreateDebugBundleResponse{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -489,7 +427,7 @@ func (x *CreateDebugBundleResponse) String() string { func (*CreateDebugBundleResponse) ProtoMessage() {} func (x *CreateDebugBundleResponse) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -502,7 +440,7 @@ func (x *CreateDebugBundleResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use CreateDebugBundleResponse.ProtoReflect.Descriptor instead. func (*CreateDebugBundleResponse) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{3} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{2} } func (x *CreateDebugBundleResponse) GetJobId() string { @@ -525,7 +463,7 @@ type GetDebugBundleStatusRequest struct { func (x *GetDebugBundleStatusRequest) Reset() { *x = GetDebugBundleStatusRequest{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -538,7 +476,7 @@ func (x *GetDebugBundleStatusRequest) String() string { func (*GetDebugBundleStatusRequest) ProtoMessage() {} func (x *GetDebugBundleStatusRequest) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -551,7 +489,7 @@ func (x *GetDebugBundleStatusRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use GetDebugBundleStatusRequest.ProtoReflect.Descriptor instead. func (*GetDebugBundleStatusRequest) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{4} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{3} } func (x *GetDebugBundleStatusRequest) GetBrokerIds() []int32 { @@ -585,7 +523,7 @@ type DebugBundleStatus struct { func (x *DebugBundleStatus) Reset() { *x = DebugBundleStatus{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -598,7 +536,7 @@ func (x *DebugBundleStatus) String() string { func (*DebugBundleStatus) ProtoMessage() {} func (x *DebugBundleStatus) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -611,7 +549,7 @@ func (x *DebugBundleStatus) ProtoReflect() protoreflect.Message { // Deprecated: Use DebugBundleStatus.ProtoReflect.Descriptor instead. func (*DebugBundleStatus) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{5} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{4} } func (x *DebugBundleStatus) GetBrokerId() int32 { @@ -675,7 +613,7 @@ type GetDebugBundleStatusResponse struct { func (x *GetDebugBundleStatusResponse) Reset() { *x = GetDebugBundleStatusResponse{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -688,7 +626,7 @@ func (x *GetDebugBundleStatusResponse) String() string { func (*GetDebugBundleStatusResponse) ProtoMessage() {} func (x *GetDebugBundleStatusResponse) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -701,7 +639,7 @@ func (x *GetDebugBundleStatusResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use GetDebugBundleStatusResponse.ProtoReflect.Descriptor instead. func (*GetDebugBundleStatusResponse) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{6} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{5} } func (x *GetDebugBundleStatusResponse) GetStatuses() []*DebugBundleStatus { @@ -724,7 +662,7 @@ type DeleteDebugBundleRequest struct { func (x *DeleteDebugBundleRequest) Reset() { *x = DeleteDebugBundleRequest{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -737,7 +675,7 @@ func (x *DeleteDebugBundleRequest) String() string { func (*DeleteDebugBundleRequest) ProtoMessage() {} func (x *DeleteDebugBundleRequest) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -750,7 +688,7 @@ func (x *DeleteDebugBundleRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteDebugBundleRequest.ProtoReflect.Descriptor instead. func (*DeleteDebugBundleRequest) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{7} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{6} } func (x *DeleteDebugBundleRequest) GetJobId() string { @@ -779,7 +717,7 @@ type DeleteDebugBundleResponse struct { func (x *DeleteDebugBundleResponse) Reset() { *x = DeleteDebugBundleResponse{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[8] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -792,7 +730,7 @@ func (x *DeleteDebugBundleResponse) String() string { func (*DeleteDebugBundleResponse) ProtoMessage() {} func (x *DeleteDebugBundleResponse) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[8] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -805,7 +743,7 @@ func (x *DeleteDebugBundleResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteDebugBundleResponse.ProtoReflect.Descriptor instead. func (*DeleteDebugBundleResponse) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{8} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{7} } func (x *DeleteDebugBundleResponse) GetErrors() []*BundleError { @@ -829,7 +767,7 @@ type DeleteDebugBundleFileRequest struct { func (x *DeleteDebugBundleFileRequest) Reset() { *x = DeleteDebugBundleFileRequest{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[9] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[8] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -842,7 +780,7 @@ func (x *DeleteDebugBundleFileRequest) String() string { func (*DeleteDebugBundleFileRequest) ProtoMessage() {} func (x *DeleteDebugBundleFileRequest) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[9] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[8] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -855,7 +793,7 @@ func (x *DeleteDebugBundleFileRequest) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteDebugBundleFileRequest.ProtoReflect.Descriptor instead. func (*DeleteDebugBundleFileRequest) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{9} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{8} } func (x *DeleteDebugBundleFileRequest) GetFilename() string { @@ -884,7 +822,7 @@ type DeleteDebugBundleFileResponse struct { func (x *DeleteDebugBundleFileResponse) Reset() { *x = DeleteDebugBundleFileResponse{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[10] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[9] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -897,7 +835,7 @@ func (x *DeleteDebugBundleFileResponse) String() string { func (*DeleteDebugBundleFileResponse) ProtoMessage() {} func (x *DeleteDebugBundleFileResponse) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[10] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[9] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -910,7 +848,7 @@ func (x *DeleteDebugBundleFileResponse) ProtoReflect() protoreflect.Message { // Deprecated: Use DeleteDebugBundleFileResponse.ProtoReflect.Descriptor instead. func (*DeleteDebugBundleFileResponse) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{10} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{9} } func (x *DeleteDebugBundleFileResponse) GetErrors() []*BundleError { @@ -937,7 +875,7 @@ type BundleError struct { func (x *BundleError) Reset() { *x = BundleError{} if protoimpl.UnsafeEnabled { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[11] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[10] ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) ms.StoreMessageInfo(mi) } @@ -950,7 +888,7 @@ func (x *BundleError) String() string { func (*BundleError) ProtoMessage() {} func (x *BundleError) ProtoReflect() protoreflect.Message { - mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[11] + mi := &file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[10] if protoimpl.UnsafeEnabled && x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { @@ -963,7 +901,7 @@ func (x *BundleError) ProtoReflect() protoreflect.Message { // Deprecated: Use BundleError.ProtoReflect.Descriptor instead. func (*BundleError) Descriptor() ([]byte, []int) { - return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{11} + return file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP(), []int{10} } func (x *BundleError) GetBrokerId() int32 { @@ -999,207 +937,201 @@ var file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDesc = []byte{ 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, - 0x20, 0x0a, 0x08, 0x4f, 0x49, 0x44, 0x43, 0x41, 0x75, 0x74, 0x68, 0x12, 0x14, 0x0a, 0x05, 0x74, - 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, - 0x6e, 0x22, 0xf7, 0x01, 0x0a, 0x09, 0x53, 0x43, 0x52, 0x41, 0x4d, 0x41, 0x75, 0x74, 0x68, 0x12, - 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, - 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, - 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x50, 0x0a, 0x09, 0x6d, 0x65, 0x63, 0x68, 0x61, - 0x6e, 0x69, 0x73, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x43, 0x52, 0x41, 0x4d, - 0x41, 0x75, 0x74, 0x68, 0x2e, 0x4d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x52, 0x09, - 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x22, 0x60, 0x0a, 0x09, 0x4d, 0x65, 0x63, - 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x12, 0x19, 0x0a, 0x15, 0x4d, 0x45, 0x43, 0x48, 0x41, 0x4e, - 0x49, 0x53, 0x4d, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, - 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x4d, 0x45, 0x43, 0x48, 0x41, 0x4e, 0x49, 0x53, 0x4d, 0x5f, 0x53, - 0x43, 0x52, 0x41, 0x4d, 0x5f, 0x53, 0x48, 0x41, 0x5f, 0x32, 0x35, 0x36, 0x10, 0x01, 0x12, 0x1b, - 0x0a, 0x17, 0x4d, 0x45, 0x43, 0x48, 0x41, 0x4e, 0x49, 0x53, 0x4d, 0x5f, 0x53, 0x43, 0x52, 0x41, - 0x4d, 0x5f, 0x53, 0x48, 0x41, 0x5f, 0x35, 0x31, 0x32, 0x10, 0x02, 0x22, 0xf9, 0x04, 0x0a, 0x18, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x6f, 0x69, 0x64, 0x63, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x4f, 0x49, 0x44, 0x43, 0x41, 0x75, 0x74, 0x68, 0x48, - 0x00, 0x52, 0x04, 0x6f, 0x69, 0x64, 0x63, 0x12, 0x40, 0x0a, 0x05, 0x73, 0x63, 0x72, 0x61, 0x6d, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x43, 0x52, 0x41, 0x4d, 0x41, 0x75, 0x74, 0x68, - 0x48, 0x00, 0x52, 0x05, 0x73, 0x63, 0x72, 0x61, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, - 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, - 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x4f, 0x0a, 0x20, 0x63, 0x6f, 0x6e, 0x74, - 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, - 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, 0x1c, 0x63, 0x6f, 0x6e, - 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, 0x4c, - 0x69, 0x6d, 0x69, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x19, 0x63, 0x70, 0x75, - 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x73, - 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x0a, 0xba, 0x48, - 0x07, 0x1a, 0x05, 0x18, 0xd8, 0x04, 0x28, 0x0f, 0x52, 0x16, 0x63, 0x70, 0x75, 0x50, 0x72, 0x6f, - 0x66, 0x69, 0x6c, 0x65, 0x72, 0x57, 0x61, 0x69, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, - 0x12, 0x39, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x15, 0x6c, - 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x62, - 0x79, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, - 0x02, 0x28, 0x00, 0x52, 0x12, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, 0x4c, 0x69, 0x6d, - 0x69, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, - 0x75, 0x6e, 0x74, 0x69, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, - 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, - 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x55, 0x6e, 0x74, - 0x69, 0x6c, 0x12, 0x41, 0x0a, 0x18, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x69, 0x6e, - 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x09, - 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, 0x16, 0x6d, - 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x65, - 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, - 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x10, 0x0a, 0x0e, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, - 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x32, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x1b, 0x47, - 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, - 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, - 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0xfb, 0x02, 0x0a, 0x11, 0x44, 0x65, - 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, - 0x1b, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, - 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, - 0x62, 0x49, 0x64, 0x12, 0x4f, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0xf7, 0x01, 0x0a, 0x09, 0x53, 0x43, 0x52, 0x41, 0x4d, 0x41, 0x75, 0x74, 0x68, 0x12, 0x1a, 0x0a, + 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, + 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, + 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x50, 0x0a, 0x09, 0x6d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, + 0x73, 0x6d, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x43, 0x52, 0x41, 0x4d, 0x41, 0x75, + 0x74, 0x68, 0x2e, 0x4d, 0x65, 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x52, 0x09, 0x6d, 0x65, + 0x63, 0x68, 0x61, 0x6e, 0x69, 0x73, 0x6d, 0x22, 0x60, 0x0a, 0x09, 0x4d, 0x65, 0x63, 0x68, 0x61, + 0x6e, 0x69, 0x73, 0x6d, 0x12, 0x19, 0x0a, 0x15, 0x4d, 0x45, 0x43, 0x48, 0x41, 0x4e, 0x49, 0x53, + 0x4d, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, + 0x1b, 0x0a, 0x17, 0x4d, 0x45, 0x43, 0x48, 0x41, 0x4e, 0x49, 0x53, 0x4d, 0x5f, 0x53, 0x43, 0x52, + 0x41, 0x4d, 0x5f, 0x53, 0x48, 0x41, 0x5f, 0x32, 0x35, 0x36, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, + 0x4d, 0x45, 0x43, 0x48, 0x41, 0x4e, 0x49, 0x53, 0x4d, 0x5f, 0x53, 0x43, 0x52, 0x41, 0x4d, 0x5f, + 0x53, 0x48, 0x41, 0x5f, 0x35, 0x31, 0x32, 0x10, 0x02, 0x22, 0xba, 0x04, 0x0a, 0x18, 0x43, 0x72, + 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x05, 0x73, 0x63, 0x72, 0x61, 0x6d, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x53, 0x43, 0x52, 0x41, 0x4d, 0x41, 0x75, 0x74, 0x68, 0x48, + 0x00, 0x52, 0x05, 0x73, 0x63, 0x72, 0x61, 0x6d, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, + 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, + 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x12, 0x4f, 0x0a, 0x20, 0x63, 0x6f, 0x6e, 0x74, 0x72, + 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, + 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, 0x1c, 0x63, 0x6f, 0x6e, 0x74, + 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, 0x4c, 0x69, + 0x6d, 0x69, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x19, 0x63, 0x70, 0x75, 0x5f, + 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x73, 0x65, + 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x0a, 0xba, 0x48, 0x07, + 0x1a, 0x05, 0x18, 0xd8, 0x04, 0x28, 0x0f, 0x52, 0x16, 0x63, 0x70, 0x75, 0x50, 0x72, 0x6f, 0x66, + 0x69, 0x6c, 0x65, 0x72, 0x57, 0x61, 0x69, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, + 0x39, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, + 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x15, 0x6c, 0x6f, + 0x67, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x62, 0x79, + 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, + 0x28, 0x00, 0x52, 0x12, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, 0x4c, 0x69, 0x6d, 0x69, + 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x75, + 0x6e, 0x74, 0x69, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, + 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x55, 0x6e, 0x74, 0x69, + 0x6c, 0x12, 0x41, 0x0a, 0x18, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x69, 0x6e, 0x74, + 0x65, 0x72, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x09, 0x20, + 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, 0x16, 0x6d, 0x65, + 0x74, 0x72, 0x69, 0x63, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x65, 0x63, + 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, + 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, + 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x10, 0x0a, 0x0e, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, + 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x32, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x1b, 0x47, 0x65, + 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, + 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, + 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0xfb, 0x02, 0x0a, 0x11, 0x44, 0x65, 0x62, + 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, + 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x6a, + 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, + 0x49, 0x64, 0x12, 0x4f, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x31, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, + 0x74, 0x75, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, + 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1a, + 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, + 0x64, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x6f, + 0x75, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x18, 0x07, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x22, 0x5a, 0x0a, 0x06, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, + 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, + 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, + 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, + 0x53, 0x53, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x45, + 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0x6c, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, + 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, + 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, + 0x75, 0x73, 0x65, 0x73, 0x22, 0x50, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, + 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, + 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x5f, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, - 0x61, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, - 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, - 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, - 0x74, 0x64, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, - 0x6f, 0x75, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x18, 0x07, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x22, 0x5a, 0x0a, 0x06, 0x53, - 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, - 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, - 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, - 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x55, 0x43, 0x43, - 0x45, 0x53, 0x53, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, - 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0x6c, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x44, 0x65, - 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, - 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x08, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x65, 0x73, 0x22, 0x50, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, - 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, - 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x5f, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, - 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x59, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, - 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, - 0x49, 0x64, 0x73, 0x22, 0x63, 0x0a, 0x1d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, - 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, - 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, - 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, - 0x70, 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, - 0x52, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x88, 0x01, 0x0a, 0x0b, 0x42, 0x75, 0x6e, - 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, - 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, - 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, + 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x59, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, + 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, + 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, + 0x64, 0x73, 0x22, 0x63, 0x0a, 0x1d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, + 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, + 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, - 0x6f, 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, - 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x2a, 0xfc, 0x01, 0x0a, 0x0f, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, - 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x42, 0x55, 0x4e, 0x44, 0x4c, - 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x4f, 0x4b, 0x10, - 0x00, 0x12, 0x2d, 0x0a, 0x29, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, - 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x41, - 0x4c, 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, + 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, + 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x88, 0x01, 0x0a, 0x0b, 0x42, 0x75, 0x6e, 0x64, + 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, + 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, + 0x65, 0x72, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, + 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, + 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, + 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, + 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, + 0x67, 0x65, 0x2a, 0xfc, 0x01, 0x0a, 0x0f, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, + 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, + 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x4f, 0x4b, 0x10, 0x00, + 0x12, 0x2d, 0x0a, 0x29, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, + 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x41, 0x4c, + 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, + 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, + 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x4e, 0x4f, 0x54, + 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x24, 0x0a, 0x20, 0x42, 0x55, + 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, + 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4a, 0x4f, 0x42, 0x5f, 0x49, 0x44, 0x10, 0x03, 0x12, 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x4e, 0x4f, - 0x54, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x24, 0x0a, 0x20, 0x42, + 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, 0x04, 0x12, 0x24, 0x0a, 0x20, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, - 0x5f, 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4a, 0x4f, 0x42, 0x5f, 0x49, 0x44, 0x10, - 0x03, 0x12, 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, - 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x4e, - 0x4f, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, 0x04, 0x12, 0x24, 0x0a, 0x20, - 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, - 0x45, 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, - 0x10, 0x05, 0x32, 0xd5, 0x04, 0x0a, 0x12, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, - 0x6c, 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x11, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, - 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, - 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, - 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, - 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, - 0x73, 0x65, 0x22, 0x00, 0x12, 0x91, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, - 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x3a, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, - 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, - 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, - 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, - 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x88, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, + 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, + 0x05, 0x32, 0xd5, 0x04, 0x0a, 0x12, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, + 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x11, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, - 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, + 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, + 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, + 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x00, 0x12, 0x94, 0x01, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, - 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x3b, 0x2e, + 0x65, 0x22, 0x00, 0x12, 0x91, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, + 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x3a, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, + 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, + 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, + 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x88, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, + 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, - 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x72, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, - 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, - 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0xb1, 0x02, 0x0a, 0x21, 0x63, - 0x6f, 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, - 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, - 0x42, 0x10, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x50, 0x72, 0x6f, - 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x63, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, - 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, - 0x6b, 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, - 0x61, 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, - 0x2f, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, - 0x65, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x43, 0xaa, - 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x43, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xca, - 0x02, 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xe2, - 0x02, 0x29, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x5c, - 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x20, 0x52, 0x65, - 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, - 0x73, 0x6f, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x62, 0x06, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, + 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x22, 0x00, 0x12, 0x94, 0x01, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, + 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x3b, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, + 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, + 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, + 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, + 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0xb1, 0x02, 0x0a, 0x21, 0x63, 0x6f, + 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, + 0x10, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, + 0x6f, 0x50, 0x01, 0x5a, 0x63, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, + 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, + 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, 0x6b, + 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, + 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, + 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x43, 0xaa, 0x02, + 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x43, 0x6f, + 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xca, 0x02, + 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, + 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xe2, 0x02, + 0x29, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, + 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x5c, 0x47, + 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x20, 0x52, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x73, + 0x6f, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x62, 0x06, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -1215,50 +1147,48 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDescGZIP() []byte } var file_redpanda_api_console_v1alpha1_debug_bundle_proto_enumTypes = make([]protoimpl.EnumInfo, 3) -var file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes = make([]protoimpl.MessageInfo, 12) +var file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes = make([]protoimpl.MessageInfo, 11) var file_redpanda_api_console_v1alpha1_debug_bundle_proto_goTypes = []interface{}{ (BundleErrorCode)(0), // 0: redpanda.api.console.v1alpha1.BundleErrorCode (SCRAMAuth_Mechanism)(0), // 1: redpanda.api.console.v1alpha1.SCRAMAuth.Mechanism (DebugBundleStatus_Status)(0), // 2: redpanda.api.console.v1alpha1.DebugBundleStatus.Status - (*OIDCAuth)(nil), // 3: redpanda.api.console.v1alpha1.OIDCAuth - (*SCRAMAuth)(nil), // 4: redpanda.api.console.v1alpha1.SCRAMAuth - (*CreateDebugBundleRequest)(nil), // 5: redpanda.api.console.v1alpha1.CreateDebugBundleRequest - (*CreateDebugBundleResponse)(nil), // 6: redpanda.api.console.v1alpha1.CreateDebugBundleResponse - (*GetDebugBundleStatusRequest)(nil), // 7: redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest - (*DebugBundleStatus)(nil), // 8: redpanda.api.console.v1alpha1.DebugBundleStatus - (*GetDebugBundleStatusResponse)(nil), // 9: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse - (*DeleteDebugBundleRequest)(nil), // 10: redpanda.api.console.v1alpha1.DeleteDebugBundleRequest - (*DeleteDebugBundleResponse)(nil), // 11: redpanda.api.console.v1alpha1.DeleteDebugBundleResponse - (*DeleteDebugBundleFileRequest)(nil), // 12: redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest - (*DeleteDebugBundleFileResponse)(nil), // 13: redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse - (*BundleError)(nil), // 14: redpanda.api.console.v1alpha1.BundleError - (*timestamppb.Timestamp)(nil), // 15: google.protobuf.Timestamp + (*SCRAMAuth)(nil), // 3: redpanda.api.console.v1alpha1.SCRAMAuth + (*CreateDebugBundleRequest)(nil), // 4: redpanda.api.console.v1alpha1.CreateDebugBundleRequest + (*CreateDebugBundleResponse)(nil), // 5: redpanda.api.console.v1alpha1.CreateDebugBundleResponse + (*GetDebugBundleStatusRequest)(nil), // 6: redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest + (*DebugBundleStatus)(nil), // 7: redpanda.api.console.v1alpha1.DebugBundleStatus + (*GetDebugBundleStatusResponse)(nil), // 8: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse + (*DeleteDebugBundleRequest)(nil), // 9: redpanda.api.console.v1alpha1.DeleteDebugBundleRequest + (*DeleteDebugBundleResponse)(nil), // 10: redpanda.api.console.v1alpha1.DeleteDebugBundleResponse + (*DeleteDebugBundleFileRequest)(nil), // 11: redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest + (*DeleteDebugBundleFileResponse)(nil), // 12: redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse + (*BundleError)(nil), // 13: redpanda.api.console.v1alpha1.BundleError + (*timestamppb.Timestamp)(nil), // 14: google.protobuf.Timestamp } var file_redpanda_api_console_v1alpha1_debug_bundle_proto_depIdxs = []int32{ 1, // 0: redpanda.api.console.v1alpha1.SCRAMAuth.mechanism:type_name -> redpanda.api.console.v1alpha1.SCRAMAuth.Mechanism - 3, // 1: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.oidc:type_name -> redpanda.api.console.v1alpha1.OIDCAuth - 4, // 2: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.scram:type_name -> redpanda.api.console.v1alpha1.SCRAMAuth - 15, // 3: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.logs_since:type_name -> google.protobuf.Timestamp - 15, // 4: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.logs_until:type_name -> google.protobuf.Timestamp - 2, // 5: redpanda.api.console.v1alpha1.DebugBundleStatus.status:type_name -> redpanda.api.console.v1alpha1.DebugBundleStatus.Status - 15, // 6: redpanda.api.console.v1alpha1.DebugBundleStatus.created_at:type_name -> google.protobuf.Timestamp - 8, // 7: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.statuses:type_name -> redpanda.api.console.v1alpha1.DebugBundleStatus - 14, // 8: redpanda.api.console.v1alpha1.DeleteDebugBundleResponse.errors:type_name -> redpanda.api.console.v1alpha1.BundleError - 14, // 9: redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse.errors:type_name -> redpanda.api.console.v1alpha1.BundleError - 0, // 10: redpanda.api.console.v1alpha1.BundleError.code:type_name -> redpanda.api.console.v1alpha1.BundleErrorCode - 5, // 11: redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle:input_type -> redpanda.api.console.v1alpha1.CreateDebugBundleRequest - 7, // 12: redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus:input_type -> redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest - 10, // 13: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle:input_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleRequest - 12, // 14: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile:input_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest - 6, // 15: redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle:output_type -> redpanda.api.console.v1alpha1.CreateDebugBundleResponse - 9, // 16: redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus:output_type -> redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse - 11, // 17: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle:output_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleResponse - 13, // 18: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile:output_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse - 15, // [15:19] is the sub-list for method output_type - 11, // [11:15] is the sub-list for method input_type - 11, // [11:11] is the sub-list for extension type_name - 11, // [11:11] is the sub-list for extension extendee - 0, // [0:11] is the sub-list for field type_name + 3, // 1: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.scram:type_name -> redpanda.api.console.v1alpha1.SCRAMAuth + 14, // 2: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.logs_since:type_name -> google.protobuf.Timestamp + 14, // 3: redpanda.api.console.v1alpha1.CreateDebugBundleRequest.logs_until:type_name -> google.protobuf.Timestamp + 2, // 4: redpanda.api.console.v1alpha1.DebugBundleStatus.status:type_name -> redpanda.api.console.v1alpha1.DebugBundleStatus.Status + 14, // 5: redpanda.api.console.v1alpha1.DebugBundleStatus.created_at:type_name -> google.protobuf.Timestamp + 7, // 6: redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse.statuses:type_name -> redpanda.api.console.v1alpha1.DebugBundleStatus + 13, // 7: redpanda.api.console.v1alpha1.DeleteDebugBundleResponse.errors:type_name -> redpanda.api.console.v1alpha1.BundleError + 13, // 8: redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse.errors:type_name -> redpanda.api.console.v1alpha1.BundleError + 0, // 9: redpanda.api.console.v1alpha1.BundleError.code:type_name -> redpanda.api.console.v1alpha1.BundleErrorCode + 4, // 10: redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle:input_type -> redpanda.api.console.v1alpha1.CreateDebugBundleRequest + 6, // 11: redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus:input_type -> redpanda.api.console.v1alpha1.GetDebugBundleStatusRequest + 9, // 12: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle:input_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleRequest + 11, // 13: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile:input_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleFileRequest + 5, // 14: redpanda.api.console.v1alpha1.DebugBundleService.CreateDebugBundle:output_type -> redpanda.api.console.v1alpha1.CreateDebugBundleResponse + 8, // 15: redpanda.api.console.v1alpha1.DebugBundleService.GetDebugBundleStatus:output_type -> redpanda.api.console.v1alpha1.GetDebugBundleStatusResponse + 10, // 16: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundle:output_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleResponse + 12, // 17: redpanda.api.console.v1alpha1.DebugBundleService.DeleteDebugBundleFile:output_type -> redpanda.api.console.v1alpha1.DeleteDebugBundleFileResponse + 14, // [14:18] is the sub-list for method output_type + 10, // [10:14] is the sub-list for method input_type + 10, // [10:10] is the sub-list for extension type_name + 10, // [10:10] is the sub-list for extension extendee + 0, // [0:10] is the sub-list for field type_name } func init() { file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() } @@ -1268,18 +1198,6 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } if !protoimpl.UnsafeEnabled { file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*OIDCAuth); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*SCRAMAuth); i { case 0: return &v.state @@ -1291,7 +1209,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { return nil } } - file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CreateDebugBundleRequest); i { case 0: return &v.state @@ -1303,7 +1221,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { return nil } } - file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*CreateDebugBundleResponse); i { case 0: return &v.state @@ -1315,7 +1233,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { return nil } } - file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetDebugBundleStatusRequest); i { case 0: return &v.state @@ -1327,7 +1245,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { return nil } } - file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DebugBundleStatus); i { case 0: return &v.state @@ -1339,7 +1257,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { return nil } } - file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*GetDebugBundleStatusResponse); i { case 0: return &v.state @@ -1351,7 +1269,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { return nil } } - file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeleteDebugBundleRequest); i { case 0: return &v.state @@ -1363,7 +1281,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { return nil } } - file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeleteDebugBundleResponse); i { case 0: return &v.state @@ -1375,7 +1293,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { return nil } } - file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeleteDebugBundleFileRequest); i { case 0: return &v.state @@ -1387,7 +1305,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { return nil } } - file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*DeleteDebugBundleFileResponse); i { case 0: return &v.state @@ -1399,7 +1317,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { return nil } } - file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { switch v := v.(*BundleError); i { case 0: return &v.state @@ -1412,8 +1330,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { } } } - file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[2].OneofWrappers = []interface{}{ - (*CreateDebugBundleRequest_Oidc)(nil), + file_redpanda_api_console_v1alpha1_debug_bundle_proto_msgTypes[1].OneofWrappers = []interface{}{ (*CreateDebugBundleRequest_Scram)(nil), } type x struct{} @@ -1422,7 +1339,7 @@ func file_redpanda_api_console_v1alpha1_debug_bundle_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDesc, NumEnums: 3, - NumMessages: 12, + NumMessages: 11, NumExtensions: 0, NumServices: 1, }, diff --git a/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts b/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts index dbda06ba0..f4cb63163 100644 --- a/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts +++ b/frontend/src/protogen/redpanda/api/console/v1alpha1/debug_bundle_pb.ts @@ -65,45 +65,6 @@ proto3.util.setEnumType(BundleErrorCode, "redpanda.api.console.v1alpha1.BundleEr { no: 5, name: "BUNDLE_ERROR_CODE_INTERNAL_ERROR" }, ]); -/** - * OIDC Auth settings. - * - * @generated from message redpanda.api.console.v1alpha1.OIDCAuth - */ -export class OIDCAuth extends Message { - /** - * @generated from field: string token = 1; - */ - token = ""; - - constructor(data?: PartialMessage) { - super(); - proto3.util.initPartial(data, this); - } - - static readonly runtime: typeof proto3 = proto3; - static readonly typeName = "redpanda.api.console.v1alpha1.OIDCAuth"; - static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 1, name: "token", kind: "scalar", T: 9 /* ScalarType.STRING */ }, - ]); - - static fromBinary(bytes: Uint8Array, options?: Partial): OIDCAuth { - return new OIDCAuth().fromBinary(bytes, options); - } - - static fromJson(jsonValue: JsonValue, options?: Partial): OIDCAuth { - return new OIDCAuth().fromJson(jsonValue, options); - } - - static fromJsonString(jsonString: string, options?: Partial): OIDCAuth { - return new OIDCAuth().fromJsonString(jsonString, options); - } - - static equals(a: OIDCAuth | PlainMessage | undefined, b: OIDCAuth | PlainMessage | undefined): boolean { - return proto3.util.equals(OIDCAuth, a, b); - } -} - /** * SCRAM Auth settings. * @@ -194,13 +155,7 @@ export class CreateDebugBundleRequest extends Message */ authentication: { /** - * @generated from field: redpanda.api.console.v1alpha1.OIDCAuth oidc = 1; - */ - value: OIDCAuth; - case: "oidc"; - } | { - /** - * @generated from field: redpanda.api.console.v1alpha1.SCRAMAuth scram = 2; + * @generated from field: redpanda.api.console.v1alpha1.SCRAMAuth scram = 1; */ value: SCRAMAuth; case: "scram"; @@ -275,8 +230,7 @@ export class CreateDebugBundleRequest extends Message static readonly runtime: typeof proto3 = proto3; static readonly typeName = "redpanda.api.console.v1alpha1.CreateDebugBundleRequest"; static readonly fields: FieldList = proto3.util.newFieldList(() => [ - { no: 1, name: "oidc", kind: "message", T: OIDCAuth, oneof: "authentication" }, - { no: 2, name: "scram", kind: "message", T: SCRAMAuth, oneof: "authentication" }, + { no: 1, name: "scram", kind: "message", T: SCRAMAuth, oneof: "authentication" }, { no: 3, name: "broker_ids", kind: "scalar", T: 5 /* ScalarType.INT32 */, repeated: true }, { no: 4, name: "controller_logs_size_limit_bytes", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, { no: 5, name: "cpu_profiler_wait_seconds", kind: "scalar", T: 5 /* ScalarType.INT32 */ }, diff --git a/proto/redpanda/api/console/v1alpha1/debug_bundle.proto b/proto/redpanda/api/console/v1alpha1/debug_bundle.proto index d0ea0efb2..74cb27e1e 100644 --- a/proto/redpanda/api/console/v1alpha1/debug_bundle.proto +++ b/proto/redpanda/api/console/v1alpha1/debug_bundle.proto @@ -5,11 +5,6 @@ package redpanda.api.console.v1alpha1; import "buf/validate/validate.proto"; import "google/protobuf/timestamp.proto"; -// OIDC Auth settings. -message OIDCAuth { - string token = 1; -} - // SCRAM Auth settings. message SCRAMAuth { string username = 1; @@ -27,8 +22,7 @@ message SCRAMAuth { message CreateDebugBundleRequest { // Optional authentication settings to use for the request. oneof authentication { - OIDCAuth oidc = 1; - SCRAMAuth scram = 2; + SCRAMAuth scram = 1; } // Optional broker IDs. Do not set / leave empty to create for all. From 4dfd76569bfa7328863708723dd9e76806720827 Mon Sep 17 00:00:00 2001 From: Bojan Djurkovic Date: Wed, 18 Sep 2024 14:35:38 -0300 Subject: [PATCH 6/6] proto: remove lte validation for cpu_profiler_wait_seconds --- .../api/console/v1alpha1/debug_bundle.pb.go | 320 +++++++++--------- .../api/console/v1alpha1/debug_bundle.proto | 5 +- 2 files changed, 161 insertions(+), 164 deletions(-) diff --git a/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go index d43cec5b5..bd7784e60 100644 --- a/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go +++ b/backend/pkg/protogen/redpanda/api/console/v1alpha1/debug_bundle.pb.go @@ -952,7 +952,7 @@ var file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDesc = []byte{ 0x1b, 0x0a, 0x17, 0x4d, 0x45, 0x43, 0x48, 0x41, 0x4e, 0x49, 0x53, 0x4d, 0x5f, 0x53, 0x43, 0x52, 0x41, 0x4d, 0x5f, 0x53, 0x48, 0x41, 0x5f, 0x32, 0x35, 0x36, 0x10, 0x01, 0x12, 0x1b, 0x0a, 0x17, 0x4d, 0x45, 0x43, 0x48, 0x41, 0x4e, 0x49, 0x53, 0x4d, 0x5f, 0x53, 0x43, 0x52, 0x41, 0x4d, 0x5f, - 0x53, 0x48, 0x41, 0x5f, 0x35, 0x31, 0x32, 0x10, 0x02, 0x22, 0xba, 0x04, 0x0a, 0x18, 0x43, 0x72, + 0x53, 0x48, 0x41, 0x5f, 0x35, 0x31, 0x32, 0x10, 0x02, 0x22, 0xb7, 0x04, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x05, 0x73, 0x63, 0x72, 0x61, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, @@ -965,173 +965,173 @@ var file_redpanda_api_console_v1alpha1_debug_bundle_proto_rawDesc = []byte{ 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, 0x1c, 0x63, 0x6f, 0x6e, 0x74, 0x72, 0x6f, 0x6c, 0x6c, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, 0x4c, 0x69, - 0x6d, 0x69, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x45, 0x0a, 0x19, 0x63, 0x70, 0x75, 0x5f, + 0x6d, 0x69, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x19, 0x63, 0x70, 0x75, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x72, 0x5f, 0x77, 0x61, 0x69, 0x74, 0x5f, 0x73, 0x65, - 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x0a, 0xba, 0x48, 0x07, - 0x1a, 0x05, 0x18, 0xd8, 0x04, 0x28, 0x0f, 0x52, 0x16, 0x63, 0x70, 0x75, 0x50, 0x72, 0x6f, 0x66, - 0x69, 0x6c, 0x65, 0x72, 0x57, 0x61, 0x69, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, - 0x39, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x18, 0x06, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, - 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x15, 0x6c, 0x6f, - 0x67, 0x73, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x62, 0x79, - 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, - 0x28, 0x00, 0x52, 0x12, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, 0x4c, 0x69, 0x6d, 0x69, - 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x75, - 0x6e, 0x74, 0x69, 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x55, 0x6e, 0x74, 0x69, - 0x6c, 0x12, 0x41, 0x0a, 0x18, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x69, 0x6e, 0x74, - 0x65, 0x72, 0x76, 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x09, 0x20, - 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, 0x16, 0x6d, 0x65, - 0x74, 0x72, 0x69, 0x63, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x65, 0x63, - 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, - 0x69, 0x6f, 0x6e, 0x73, 0x42, 0x10, 0x0a, 0x0e, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, - 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x32, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x1b, 0x47, 0x65, - 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, - 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, - 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0xfb, 0x02, 0x0a, 0x11, 0x44, 0x65, 0x62, - 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, - 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x6a, - 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, - 0x49, 0x64, 0x12, 0x4f, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x31, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, - 0x74, 0x75, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, - 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, + 0x1a, 0x02, 0x28, 0x0f, 0x52, 0x16, 0x63, 0x70, 0x75, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, + 0x72, 0x57, 0x61, 0x69, 0x74, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x12, 0x39, 0x0a, 0x0a, + 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x73, 0x69, 0x6e, 0x63, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, + 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, + 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x6c, 0x6f, + 0x67, 0x73, 0x53, 0x69, 0x6e, 0x63, 0x65, 0x12, 0x3a, 0x0a, 0x15, 0x6c, 0x6f, 0x67, 0x73, 0x5f, + 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, + 0x18, 0x07, 0x20, 0x01, 0x28, 0x05, 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, + 0x12, 0x6c, 0x6f, 0x67, 0x73, 0x53, 0x69, 0x7a, 0x65, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x42, 0x79, + 0x74, 0x65, 0x73, 0x12, 0x39, 0x0a, 0x0a, 0x6c, 0x6f, 0x67, 0x73, 0x5f, 0x75, 0x6e, 0x74, 0x69, + 0x6c, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, - 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1a, - 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, - 0x64, 0x6f, 0x75, 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x6f, - 0x75, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x18, 0x07, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x22, 0x5a, 0x0a, 0x06, 0x53, 0x74, - 0x61, 0x74, 0x75, 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, - 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, - 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, - 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, - 0x53, 0x53, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x45, - 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x22, 0x6c, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, - 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, - 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, - 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, - 0x75, 0x73, 0x65, 0x73, 0x22, 0x50, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, - 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x52, 0x09, 0x6c, 0x6f, 0x67, 0x73, 0x55, 0x6e, 0x74, 0x69, 0x6c, 0x12, 0x41, + 0x0a, 0x18, 0x6d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x76, + 0x61, 0x6c, 0x5f, 0x73, 0x65, 0x63, 0x6f, 0x6e, 0x64, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, + 0x42, 0x07, 0xba, 0x48, 0x04, 0x1a, 0x02, 0x28, 0x00, 0x52, 0x16, 0x6d, 0x65, 0x74, 0x72, 0x69, + 0x63, 0x73, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x76, 0x61, 0x6c, 0x53, 0x65, 0x63, 0x6f, 0x6e, 0x64, + 0x73, 0x12, 0x1e, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, + 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x74, 0x69, 0x74, 0x69, 0x6f, 0x6e, + 0x73, 0x42, 0x10, 0x0a, 0x0e, 0x61, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, + 0x69, 0x6f, 0x6e, 0x22, 0x32, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, + 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, - 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0x5f, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, - 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, - 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x59, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, - 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, - 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, - 0x64, 0x73, 0x22, 0x63, 0x0a, 0x1d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, - 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, - 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, - 0x68, 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, - 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x22, 0x88, 0x01, 0x0a, 0x0b, 0x42, 0x75, 0x6e, 0x64, - 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, - 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, - 0x65, 0x72, 0x49, 0x64, 0x12, 0x42, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, - 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, - 0x61, 0x31, 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, - 0x64, 0x65, 0x52, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, - 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, - 0x67, 0x65, 0x2a, 0xfc, 0x01, 0x0a, 0x0f, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, - 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, - 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x4f, 0x4b, 0x10, 0x00, - 0x12, 0x2d, 0x0a, 0x29, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, - 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x41, 0x4c, - 0x52, 0x45, 0x41, 0x44, 0x59, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, - 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, - 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x4e, 0x4f, 0x54, - 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x24, 0x0a, 0x20, 0x42, 0x55, - 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, - 0x49, 0x4e, 0x56, 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4a, 0x4f, 0x42, 0x5f, 0x49, 0x44, 0x10, 0x03, - 0x12, 0x29, 0x0a, 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, - 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x4e, 0x4f, - 0x54, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, 0x04, 0x12, 0x24, 0x0a, 0x20, 0x42, - 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, - 0x5f, 0x49, 0x4e, 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, - 0x05, 0x32, 0xd5, 0x04, 0x0a, 0x12, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, - 0x65, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x11, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, - 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, - 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, - 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, - 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, - 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, - 0x65, 0x22, 0x00, 0x12, 0x91, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, - 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x3a, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, - 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, + 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x22, 0x3c, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x44, 0x65, + 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, + 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, + 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, 0xfb, 0x02, 0x0a, 0x11, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x62, + 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, + 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x6a, 0x6f, 0x62, 0x5f, + 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, 0x6f, 0x62, 0x49, 0x64, 0x12, + 0x4f, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x37, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, - 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, - 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, 0x88, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, - 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, 0x2e, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, - 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, - 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, - 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, - 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, - 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, + 0x73, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66, + 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, + 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, + 0x74, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x06, 0x73, 0x74, 0x64, 0x6f, 0x75, 0x74, 0x12, + 0x16, 0x0a, 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, + 0x06, 0x73, 0x74, 0x64, 0x65, 0x72, 0x72, 0x22, 0x5a, 0x0a, 0x06, 0x53, 0x74, 0x61, 0x74, 0x75, + 0x73, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, + 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x53, 0x54, 0x41, + 0x54, 0x55, 0x53, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x12, 0x0a, + 0x0e, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x53, 0x55, 0x43, 0x43, 0x45, 0x53, 0x53, 0x10, + 0x02, 0x12, 0x10, 0x0a, 0x0c, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x45, 0x52, 0x52, 0x4f, + 0x52, 0x10, 0x03, 0x22, 0x6c, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, 0x73, 0x18, + 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, + 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x08, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x65, + 0x73, 0x22, 0x50, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, + 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x15, 0x0a, + 0x06, 0x6a, 0x6f, 0x62, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6a, + 0x6f, 0x62, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, + 0x49, 0x64, 0x73, 0x22, 0x5f, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x22, 0x00, 0x12, 0x94, 0x01, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, - 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x3b, 0x2e, 0x72, - 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, - 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, - 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, + 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, + 0x72, 0x6f, 0x72, 0x73, 0x22, 0x59, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, + 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, + 0x12, 0x1d, 0x0a, 0x0a, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, + 0x20, 0x03, 0x28, 0x05, 0x52, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, 0x64, 0x73, 0x22, + 0x63, 0x0a, 0x1d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, + 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, + 0x12, 0x42, 0x0a, 0x06, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x2a, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, + 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, + 0x2e, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x06, 0x65, 0x72, + 0x72, 0x6f, 0x72, 0x73, 0x22, 0x88, 0x01, 0x0a, 0x0b, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, + 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x62, 0x72, 0x6f, 0x6b, 0x65, 0x72, 0x49, + 0x64, 0x12, 0x42, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, + 0x2e, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, + 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, + 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, 0x6f, 0x64, 0x65, 0x52, + 0x04, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2a, + 0xfc, 0x01, 0x0a, 0x0f, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x43, + 0x6f, 0x64, 0x65, 0x12, 0x18, 0x0a, 0x14, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, + 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x4f, 0x4b, 0x10, 0x00, 0x12, 0x2d, 0x0a, + 0x29, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, + 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x41, 0x4c, 0x52, 0x45, 0x41, + 0x44, 0x59, 0x5f, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x29, 0x0a, 0x25, + 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, + 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x52, 0x55, + 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x24, 0x0a, 0x20, 0x42, 0x55, 0x4e, 0x44, 0x4c, + 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, 0x56, + 0x41, 0x4c, 0x49, 0x44, 0x5f, 0x4a, 0x4f, 0x42, 0x5f, 0x49, 0x44, 0x10, 0x03, 0x12, 0x29, 0x0a, + 0x25, 0x42, 0x55, 0x4e, 0x44, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, + 0x44, 0x45, 0x5f, 0x50, 0x52, 0x4f, 0x43, 0x45, 0x53, 0x53, 0x5f, 0x4e, 0x4f, 0x54, 0x5f, 0x53, + 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, 0x04, 0x12, 0x24, 0x0a, 0x20, 0x42, 0x55, 0x4e, 0x44, + 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x5f, 0x43, 0x4f, 0x44, 0x45, 0x5f, 0x49, 0x4e, + 0x54, 0x45, 0x52, 0x4e, 0x41, 0x4c, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x05, 0x32, 0xd5, + 0x04, 0x0a, 0x12, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x65, + 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x88, 0x01, 0x0a, 0x11, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, + 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, 0x2e, 0x72, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, + 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, + 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, + 0x70, 0x68, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, + 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, + 0x12, 0x91, 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, + 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x3a, 0x2e, 0x72, 0x65, 0x64, 0x70, + 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, + 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, + 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, + 0x6e, 0x64, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x22, 0x00, 0x12, 0x88, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, + 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x12, 0x37, 0x2e, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, + 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, + 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, + 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x12, + 0x94, 0x01, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, + 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x12, 0x3b, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0xb1, 0x02, 0x0a, 0x21, 0x63, 0x6f, - 0x6d, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, - 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, - 0x10, 0x44, 0x65, 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, - 0x6f, 0x50, 0x01, 0x5a, 0x63, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, - 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, 0x6b, - 0x67, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, - 0x6e, 0x64, 0x61, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, - 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x43, 0xaa, 0x02, - 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x43, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xca, 0x02, - 0x1d, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xe2, 0x02, - 0x29, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, - 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x5c, 0x47, - 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x20, 0x52, 0x65, 0x64, - 0x70, 0x61, 0x6e, 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x73, - 0x6f, 0x6c, 0x65, 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x62, 0x06, 0x70, - 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, + 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, + 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x65, 0x62, + 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x46, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, + 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x42, 0xb1, 0x02, 0x0a, 0x21, 0x63, 0x6f, 0x6d, 0x2e, 0x72, + 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x63, 0x6f, 0x6e, 0x73, + 0x6f, 0x6c, 0x65, 0x2e, 0x76, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x42, 0x10, 0x44, 0x65, + 0x62, 0x75, 0x67, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, + 0x5a, 0x63, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x72, 0x65, 0x64, + 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2d, 0x64, 0x61, 0x74, 0x61, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, + 0x6c, 0x65, 0x2f, 0x62, 0x61, 0x63, 0x6b, 0x65, 0x6e, 0x64, 0x2f, 0x70, 0x6b, 0x67, 0x2f, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x67, 0x65, 0x6e, 0x2f, 0x72, 0x65, 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, + 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x2f, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0x3b, 0x63, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, 0x76, 0x31, 0x61, + 0x6c, 0x70, 0x68, 0x61, 0x31, 0xa2, 0x02, 0x03, 0x52, 0x41, 0x43, 0xaa, 0x02, 0x1d, 0x52, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x43, 0x6f, 0x6e, 0x73, 0x6f, + 0x6c, 0x65, 0x2e, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xca, 0x02, 0x1d, 0x52, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x6f, + 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0xe2, 0x02, 0x29, 0x52, 0x65, + 0x64, 0x70, 0x61, 0x6e, 0x64, 0x61, 0x5c, 0x41, 0x70, 0x69, 0x5c, 0x43, 0x6f, 0x6e, 0x73, 0x6f, + 0x6c, 0x65, 0x5c, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0xea, 0x02, 0x20, 0x52, 0x65, 0x64, 0x70, 0x61, 0x6e, + 0x64, 0x61, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x3a, 0x3a, 0x43, 0x6f, 0x6e, 0x73, 0x6f, 0x6c, 0x65, + 0x3a, 0x3a, 0x56, 0x31, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x33, } var ( diff --git a/proto/redpanda/api/console/v1alpha1/debug_bundle.proto b/proto/redpanda/api/console/v1alpha1/debug_bundle.proto index 74cb27e1e..a05bb6303 100644 --- a/proto/redpanda/api/console/v1alpha1/debug_bundle.proto +++ b/proto/redpanda/api/console/v1alpha1/debug_bundle.proto @@ -32,10 +32,7 @@ message CreateDebugBundleRequest { int32 controller_logs_size_limit_bytes = 4 [(buf.validate.field).int32 = {gte: 0}]; // For how long to collect samples for the CPU profiler - int32 cpu_profiler_wait_seconds = 5 [(buf.validate.field).int32 = { - gte: 15 - lte: 600 - }]; + int32 cpu_profiler_wait_seconds = 5 [(buf.validate.field).int32 = {gte: 15}]; // Include logs dated from specified date onward. google.protobuf.Timestamp logs_since = 6;