mirror of https://github.com/dragonflyoss/api.git
feat: add ListSeedPeers api in manager (#206)
Signed-off-by: Gaius <gaius.qi@gmail.com>
This commit is contained in:
parent
964efcfbb5
commit
b0a16ac091
|
@ -1,6 +1,6 @@
|
|||
[package]
|
||||
name = "dragonfly-api"
|
||||
version = "2.0.42"
|
||||
version = "2.0.43"
|
||||
authors = ["Gaius <gaius.qi@gmail.com>"]
|
||||
edition = "2021"
|
||||
license = "Apache-2.0"
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -512,6 +512,338 @@ var _ interface {
|
|||
ErrorName() string
|
||||
} = GetSeedPeerRequestValidationError{}
|
||||
|
||||
// Validate checks the field values on ListSeedPeersRequest with the rules
|
||||
// defined in the proto definition for this message. If any rules are
|
||||
// violated, the first error encountered is returned, or nil if there are no violations.
|
||||
func (m *ListSeedPeersRequest) Validate() error {
|
||||
return m.validate(false)
|
||||
}
|
||||
|
||||
// ValidateAll checks the field values on ListSeedPeersRequest with the rules
|
||||
// defined in the proto definition for this message. If any rules are
|
||||
// violated, the result is a list of violation errors wrapped in
|
||||
// ListSeedPeersRequestMultiError, or nil if none found.
|
||||
func (m *ListSeedPeersRequest) ValidateAll() error {
|
||||
return m.validate(true)
|
||||
}
|
||||
|
||||
func (m *ListSeedPeersRequest) validate(all bool) error {
|
||||
if m == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
var errors []error
|
||||
|
||||
if _, ok := SourceType_name[int32(m.GetSourceType())]; !ok {
|
||||
err := ListSeedPeersRequestValidationError{
|
||||
field: "SourceType",
|
||||
reason: "value must be one of the defined enum values",
|
||||
}
|
||||
if !all {
|
||||
return err
|
||||
}
|
||||
errors = append(errors, err)
|
||||
}
|
||||
|
||||
if err := m._validateHostname(m.GetHostname()); err != nil {
|
||||
err = ListSeedPeersRequestValidationError{
|
||||
field: "Hostname",
|
||||
reason: "value must be a valid hostname",
|
||||
cause: err,
|
||||
}
|
||||
if !all {
|
||||
return err
|
||||
}
|
||||
errors = append(errors, err)
|
||||
}
|
||||
|
||||
if ip := net.ParseIP(m.GetIp()); ip == nil {
|
||||
err := ListSeedPeersRequestValidationError{
|
||||
field: "Ip",
|
||||
reason: "value must be a valid IP address",
|
||||
}
|
||||
if !all {
|
||||
return err
|
||||
}
|
||||
errors = append(errors, err)
|
||||
}
|
||||
|
||||
if m.GetVersion() != "" {
|
||||
|
||||
if l := utf8.RuneCountInString(m.GetVersion()); l < 1 || l > 1024 {
|
||||
err := ListSeedPeersRequestValidationError{
|
||||
field: "Version",
|
||||
reason: "value length must be between 1 and 1024 runes, inclusive",
|
||||
}
|
||||
if !all {
|
||||
return err
|
||||
}
|
||||
errors = append(errors, err)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if m.GetCommit() != "" {
|
||||
|
||||
if l := utf8.RuneCountInString(m.GetCommit()); l < 1 || l > 1024 {
|
||||
err := ListSeedPeersRequestValidationError{
|
||||
field: "Commit",
|
||||
reason: "value length must be between 1 and 1024 runes, inclusive",
|
||||
}
|
||||
if !all {
|
||||
return err
|
||||
}
|
||||
errors = append(errors, err)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if len(errors) > 0 {
|
||||
return ListSeedPeersRequestMultiError(errors)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *ListSeedPeersRequest) _validateHostname(host string) error {
|
||||
s := strings.ToLower(strings.TrimSuffix(host, "."))
|
||||
|
||||
if len(host) > 253 {
|
||||
return errors.New("hostname cannot exceed 253 characters")
|
||||
}
|
||||
|
||||
for _, part := range strings.Split(s, ".") {
|
||||
if l := len(part); l == 0 || l > 63 {
|
||||
return errors.New("hostname part must be non-empty and cannot exceed 63 characters")
|
||||
}
|
||||
|
||||
if part[0] == '-' {
|
||||
return errors.New("hostname parts cannot begin with hyphens")
|
||||
}
|
||||
|
||||
if part[len(part)-1] == '-' {
|
||||
return errors.New("hostname parts cannot end with hyphens")
|
||||
}
|
||||
|
||||
for _, r := range part {
|
||||
if (r < 'a' || r > 'z') && (r < '0' || r > '9') && r != '-' {
|
||||
return fmt.Errorf("hostname parts can only contain alphanumeric characters or hyphens, got %q", string(r))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// ListSeedPeersRequestMultiError is an error wrapping multiple validation
|
||||
// errors returned by ListSeedPeersRequest.ValidateAll() if the designated
|
||||
// constraints aren't met.
|
||||
type ListSeedPeersRequestMultiError []error
|
||||
|
||||
// Error returns a concatenation of all the error messages it wraps.
|
||||
func (m ListSeedPeersRequestMultiError) Error() string {
|
||||
var msgs []string
|
||||
for _, err := range m {
|
||||
msgs = append(msgs, err.Error())
|
||||
}
|
||||
return strings.Join(msgs, "; ")
|
||||
}
|
||||
|
||||
// AllErrors returns a list of validation violation errors.
|
||||
func (m ListSeedPeersRequestMultiError) AllErrors() []error { return m }
|
||||
|
||||
// ListSeedPeersRequestValidationError is the validation error returned by
|
||||
// ListSeedPeersRequest.Validate if the designated constraints aren't met.
|
||||
type ListSeedPeersRequestValidationError struct {
|
||||
field string
|
||||
reason string
|
||||
cause error
|
||||
key bool
|
||||
}
|
||||
|
||||
// Field function returns field value.
|
||||
func (e ListSeedPeersRequestValidationError) Field() string { return e.field }
|
||||
|
||||
// Reason function returns reason value.
|
||||
func (e ListSeedPeersRequestValidationError) Reason() string { return e.reason }
|
||||
|
||||
// Cause function returns cause value.
|
||||
func (e ListSeedPeersRequestValidationError) Cause() error { return e.cause }
|
||||
|
||||
// Key function returns key value.
|
||||
func (e ListSeedPeersRequestValidationError) Key() bool { return e.key }
|
||||
|
||||
// ErrorName returns error name.
|
||||
func (e ListSeedPeersRequestValidationError) ErrorName() string {
|
||||
return "ListSeedPeersRequestValidationError"
|
||||
}
|
||||
|
||||
// Error satisfies the builtin error interface
|
||||
func (e ListSeedPeersRequestValidationError) Error() string {
|
||||
cause := ""
|
||||
if e.cause != nil {
|
||||
cause = fmt.Sprintf(" | caused by: %v", e.cause)
|
||||
}
|
||||
|
||||
key := ""
|
||||
if e.key {
|
||||
key = "key for "
|
||||
}
|
||||
|
||||
return fmt.Sprintf(
|
||||
"invalid %sListSeedPeersRequest.%s: %s%s",
|
||||
key,
|
||||
e.field,
|
||||
e.reason,
|
||||
cause)
|
||||
}
|
||||
|
||||
var _ error = ListSeedPeersRequestValidationError{}
|
||||
|
||||
var _ interface {
|
||||
Field() string
|
||||
Reason() string
|
||||
Key() bool
|
||||
Cause() error
|
||||
ErrorName() string
|
||||
} = ListSeedPeersRequestValidationError{}
|
||||
|
||||
// Validate checks the field values on ListSeedPeersResponse with the rules
|
||||
// defined in the proto definition for this message. If any rules are
|
||||
// violated, the first error encountered is returned, or nil if there are no violations.
|
||||
func (m *ListSeedPeersResponse) Validate() error {
|
||||
return m.validate(false)
|
||||
}
|
||||
|
||||
// ValidateAll checks the field values on ListSeedPeersResponse with the rules
|
||||
// defined in the proto definition for this message. If any rules are
|
||||
// violated, the result is a list of violation errors wrapped in
|
||||
// ListSeedPeersResponseMultiError, or nil if none found.
|
||||
func (m *ListSeedPeersResponse) ValidateAll() error {
|
||||
return m.validate(true)
|
||||
}
|
||||
|
||||
func (m *ListSeedPeersResponse) validate(all bool) error {
|
||||
if m == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
var errors []error
|
||||
|
||||
for idx, item := range m.GetSeedPeers() {
|
||||
_, _ = idx, item
|
||||
|
||||
if all {
|
||||
switch v := interface{}(item).(type) {
|
||||
case interface{ ValidateAll() error }:
|
||||
if err := v.ValidateAll(); err != nil {
|
||||
errors = append(errors, ListSeedPeersResponseValidationError{
|
||||
field: fmt.Sprintf("SeedPeers[%v]", idx),
|
||||
reason: "embedded message failed validation",
|
||||
cause: err,
|
||||
})
|
||||
}
|
||||
case interface{ Validate() error }:
|
||||
if err := v.Validate(); err != nil {
|
||||
errors = append(errors, ListSeedPeersResponseValidationError{
|
||||
field: fmt.Sprintf("SeedPeers[%v]", idx),
|
||||
reason: "embedded message failed validation",
|
||||
cause: err,
|
||||
})
|
||||
}
|
||||
}
|
||||
} else if v, ok := interface{}(item).(interface{ Validate() error }); ok {
|
||||
if err := v.Validate(); err != nil {
|
||||
return ListSeedPeersResponseValidationError{
|
||||
field: fmt.Sprintf("SeedPeers[%v]", idx),
|
||||
reason: "embedded message failed validation",
|
||||
cause: err,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if len(errors) > 0 {
|
||||
return ListSeedPeersResponseMultiError(errors)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// ListSeedPeersResponseMultiError is an error wrapping multiple validation
|
||||
// errors returned by ListSeedPeersResponse.ValidateAll() if the designated
|
||||
// constraints aren't met.
|
||||
type ListSeedPeersResponseMultiError []error
|
||||
|
||||
// Error returns a concatenation of all the error messages it wraps.
|
||||
func (m ListSeedPeersResponseMultiError) Error() string {
|
||||
var msgs []string
|
||||
for _, err := range m {
|
||||
msgs = append(msgs, err.Error())
|
||||
}
|
||||
return strings.Join(msgs, "; ")
|
||||
}
|
||||
|
||||
// AllErrors returns a list of validation violation errors.
|
||||
func (m ListSeedPeersResponseMultiError) AllErrors() []error { return m }
|
||||
|
||||
// ListSeedPeersResponseValidationError is the validation error returned by
|
||||
// ListSeedPeersResponse.Validate if the designated constraints aren't met.
|
||||
type ListSeedPeersResponseValidationError struct {
|
||||
field string
|
||||
reason string
|
||||
cause error
|
||||
key bool
|
||||
}
|
||||
|
||||
// Field function returns field value.
|
||||
func (e ListSeedPeersResponseValidationError) Field() string { return e.field }
|
||||
|
||||
// Reason function returns reason value.
|
||||
func (e ListSeedPeersResponseValidationError) Reason() string { return e.reason }
|
||||
|
||||
// Cause function returns cause value.
|
||||
func (e ListSeedPeersResponseValidationError) Cause() error { return e.cause }
|
||||
|
||||
// Key function returns key value.
|
||||
func (e ListSeedPeersResponseValidationError) Key() bool { return e.key }
|
||||
|
||||
// ErrorName returns error name.
|
||||
func (e ListSeedPeersResponseValidationError) ErrorName() string {
|
||||
return "ListSeedPeersResponseValidationError"
|
||||
}
|
||||
|
||||
// Error satisfies the builtin error interface
|
||||
func (e ListSeedPeersResponseValidationError) Error() string {
|
||||
cause := ""
|
||||
if e.cause != nil {
|
||||
cause = fmt.Sprintf(" | caused by: %v", e.cause)
|
||||
}
|
||||
|
||||
key := ""
|
||||
if e.key {
|
||||
key = "key for "
|
||||
}
|
||||
|
||||
return fmt.Sprintf(
|
||||
"invalid %sListSeedPeersResponse.%s: %s%s",
|
||||
key,
|
||||
e.field,
|
||||
e.reason,
|
||||
cause)
|
||||
}
|
||||
|
||||
var _ error = ListSeedPeersResponseValidationError{}
|
||||
|
||||
var _ interface {
|
||||
Field() string
|
||||
Reason() string
|
||||
Key() bool
|
||||
Cause() error
|
||||
ErrorName() string
|
||||
} = ListSeedPeersResponseValidationError{}
|
||||
|
||||
// Validate checks the field values on UpdateSeedPeerRequest with the rules
|
||||
// defined in the proto definition for this message. If any rules are
|
||||
// violated, the first error encountered is returned, or nil if there are no violations.
|
||||
|
|
|
@ -88,6 +88,26 @@ message GetSeedPeerRequest {
|
|||
string ip = 4 [(validate.rules).string = {ip: true, ignore_empty: true}];
|
||||
}
|
||||
|
||||
// ListSeedPeersRequest represents request of ListSeedPeers.
|
||||
message ListSeedPeersRequest {
|
||||
// Request source type.
|
||||
SourceType source_type = 1 [(validate.rules).enum.defined_only = true];
|
||||
// Source service hostname.
|
||||
string hostname = 2 [(validate.rules).string.hostname = true];
|
||||
// Source service ip.
|
||||
string ip = 3 [(validate.rules).string.ip = true];
|
||||
// Dfdaemon version.
|
||||
string version = 4 [(validate.rules).string = {min_len: 1, max_len: 1024, ignore_empty: true}];
|
||||
// Dfdaemon commit.
|
||||
string commit = 5 [(validate.rules).string = {min_len: 1, max_len: 1024, ignore_empty: true}];
|
||||
}
|
||||
|
||||
// ListSeedPeersResponse represents response of ListSeedPeers.
|
||||
message ListSeedPeersResponse {
|
||||
// Seed peers to which the source service belongs.
|
||||
repeated SeedPeer seed_peers = 1;
|
||||
}
|
||||
|
||||
// UpdateSeedPeerRequest represents request of UpdateSeedPeer.
|
||||
message UpdateSeedPeerRequest {
|
||||
// Request source type.
|
||||
|
@ -367,6 +387,9 @@ service Manager {
|
|||
// Get SeedPeer and SeedPeer cluster configuration.
|
||||
rpc GetSeedPeer(GetSeedPeerRequest) returns(SeedPeer);
|
||||
|
||||
// List acitve schedulers configuration.
|
||||
rpc ListSeedPeers(ListSeedPeersRequest)returns(ListSeedPeersResponse);
|
||||
|
||||
// Update SeedPeer configuration.
|
||||
rpc UpdateSeedPeer(UpdateSeedPeerRequest) returns(SeedPeer);
|
||||
|
||||
|
|
|
@ -25,6 +25,8 @@ const _ = grpc.SupportPackageIsVersion7
|
|||
type ManagerClient interface {
|
||||
// Get SeedPeer and SeedPeer cluster configuration.
|
||||
GetSeedPeer(ctx context.Context, in *GetSeedPeerRequest, opts ...grpc.CallOption) (*SeedPeer, error)
|
||||
// List acitve schedulers configuration.
|
||||
ListSeedPeers(ctx context.Context, in *ListSeedPeersRequest, opts ...grpc.CallOption) (*ListSeedPeersResponse, error)
|
||||
// Update SeedPeer configuration.
|
||||
UpdateSeedPeer(ctx context.Context, in *UpdateSeedPeerRequest, opts ...grpc.CallOption) (*SeedPeer, error)
|
||||
// Get Scheduler and Scheduler cluster configuration.
|
||||
|
@ -62,6 +64,15 @@ func (c *managerClient) GetSeedPeer(ctx context.Context, in *GetSeedPeerRequest,
|
|||
return out, nil
|
||||
}
|
||||
|
||||
func (c *managerClient) ListSeedPeers(ctx context.Context, in *ListSeedPeersRequest, opts ...grpc.CallOption) (*ListSeedPeersResponse, error) {
|
||||
out := new(ListSeedPeersResponse)
|
||||
err := c.cc.Invoke(ctx, "/manager.Manager/ListSeedPeers", in, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *managerClient) UpdateSeedPeer(ctx context.Context, in *UpdateSeedPeerRequest, opts ...grpc.CallOption) (*SeedPeer, error) {
|
||||
out := new(SeedPeer)
|
||||
err := c.cc.Invoke(ctx, "/manager.Manager/UpdateSeedPeer", in, out, opts...)
|
||||
|
@ -174,6 +185,8 @@ func (x *managerKeepAliveClient) CloseAndRecv() (*emptypb.Empty, error) {
|
|||
type ManagerServer interface {
|
||||
// Get SeedPeer and SeedPeer cluster configuration.
|
||||
GetSeedPeer(context.Context, *GetSeedPeerRequest) (*SeedPeer, error)
|
||||
// List acitve schedulers configuration.
|
||||
ListSeedPeers(context.Context, *ListSeedPeersRequest) (*ListSeedPeersResponse, error)
|
||||
// Update SeedPeer configuration.
|
||||
UpdateSeedPeer(context.Context, *UpdateSeedPeerRequest) (*SeedPeer, error)
|
||||
// Get Scheduler and Scheduler cluster configuration.
|
||||
|
@ -201,6 +214,9 @@ type UnimplementedManagerServer struct {
|
|||
func (UnimplementedManagerServer) GetSeedPeer(context.Context, *GetSeedPeerRequest) (*SeedPeer, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method GetSeedPeer not implemented")
|
||||
}
|
||||
func (UnimplementedManagerServer) ListSeedPeers(context.Context, *ListSeedPeersRequest) (*ListSeedPeersResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method ListSeedPeers not implemented")
|
||||
}
|
||||
func (UnimplementedManagerServer) UpdateSeedPeer(context.Context, *UpdateSeedPeerRequest) (*SeedPeer, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method UpdateSeedPeer not implemented")
|
||||
}
|
||||
|
@ -258,6 +274,24 @@ func _Manager_GetSeedPeer_Handler(srv interface{}, ctx context.Context, dec func
|
|||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _Manager_ListSeedPeers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(ListSeedPeersRequest)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if interceptor == nil {
|
||||
return srv.(ManagerServer).ListSeedPeers(ctx, in)
|
||||
}
|
||||
info := &grpc.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: "/manager.Manager/ListSeedPeers",
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
return srv.(ManagerServer).ListSeedPeers(ctx, req.(*ListSeedPeersRequest))
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _Manager_UpdateSeedPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(UpdateSeedPeerRequest)
|
||||
if err := dec(in); err != nil {
|
||||
|
@ -439,6 +473,10 @@ var Manager_ServiceDesc = grpc.ServiceDesc{
|
|||
MethodName: "GetSeedPeer",
|
||||
Handler: _Manager_GetSeedPeer_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "ListSeedPeers",
|
||||
Handler: _Manager_ListSeedPeers_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "UpdateSeedPeer",
|
||||
Handler: _Manager_UpdateSeedPeer_Handler,
|
||||
|
|
|
@ -202,6 +202,26 @@ func (mr *MockManagerClientMockRecorder) ListSchedulers(ctx, in any, opts ...any
|
|||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListSchedulers", reflect.TypeOf((*MockManagerClient)(nil).ListSchedulers), varargs...)
|
||||
}
|
||||
|
||||
// ListSeedPeers mocks base method.
|
||||
func (m *MockManagerClient) ListSeedPeers(ctx context.Context, in *manager.ListSeedPeersRequest, opts ...grpc.CallOption) (*manager.ListSeedPeersResponse, error) {
|
||||
m.ctrl.T.Helper()
|
||||
varargs := []any{ctx, in}
|
||||
for _, a := range opts {
|
||||
varargs = append(varargs, a)
|
||||
}
|
||||
ret := m.ctrl.Call(m, "ListSeedPeers", varargs...)
|
||||
ret0, _ := ret[0].(*manager.ListSeedPeersResponse)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// ListSeedPeers indicates an expected call of ListSeedPeers.
|
||||
func (mr *MockManagerClientMockRecorder) ListSeedPeers(ctx, in any, opts ...any) *gomock.Call {
|
||||
mr.mock.ctrl.T.Helper()
|
||||
varargs := append([]any{ctx, in}, opts...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListSeedPeers", reflect.TypeOf((*MockManagerClient)(nil).ListSeedPeers), varargs...)
|
||||
}
|
||||
|
||||
// UpdateScheduler mocks base method.
|
||||
func (m *MockManagerClient) UpdateScheduler(ctx context.Context, in *manager.UpdateSchedulerRequest, opts ...grpc.CallOption) (*manager.Scheduler, error) {
|
||||
m.ctrl.T.Helper()
|
||||
|
@ -521,6 +541,21 @@ func (mr *MockManagerServerMockRecorder) ListSchedulers(arg0, arg1 any) *gomock.
|
|||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListSchedulers", reflect.TypeOf((*MockManagerServer)(nil).ListSchedulers), arg0, arg1)
|
||||
}
|
||||
|
||||
// ListSeedPeers mocks base method.
|
||||
func (m *MockManagerServer) ListSeedPeers(arg0 context.Context, arg1 *manager.ListSeedPeersRequest) (*manager.ListSeedPeersResponse, error) {
|
||||
m.ctrl.T.Helper()
|
||||
ret := m.ctrl.Call(m, "ListSeedPeers", arg0, arg1)
|
||||
ret0, _ := ret[0].(*manager.ListSeedPeersResponse)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// ListSeedPeers indicates an expected call of ListSeedPeers.
|
||||
func (mr *MockManagerServerMockRecorder) ListSeedPeers(arg0, arg1 any) *gomock.Call {
|
||||
mr.mock.ctrl.T.Helper()
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListSeedPeers", reflect.TypeOf((*MockManagerServer)(nil).ListSeedPeers), arg0, arg1)
|
||||
}
|
||||
|
||||
// UpdateScheduler mocks base method.
|
||||
func (m *MockManagerServer) UpdateScheduler(arg0 context.Context, arg1 *manager.UpdateSchedulerRequest) (*manager.Scheduler, error) {
|
||||
m.ctrl.T.Helper()
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -516,6 +516,338 @@ var _ interface {
|
|||
ErrorName() string
|
||||
} = GetSeedPeerRequestValidationError{}
|
||||
|
||||
// Validate checks the field values on ListSeedPeersRequest with the rules
|
||||
// defined in the proto definition for this message. If any rules are
|
||||
// violated, the first error encountered is returned, or nil if there are no violations.
|
||||
func (m *ListSeedPeersRequest) Validate() error {
|
||||
return m.validate(false)
|
||||
}
|
||||
|
||||
// ValidateAll checks the field values on ListSeedPeersRequest with the rules
|
||||
// defined in the proto definition for this message. If any rules are
|
||||
// violated, the result is a list of violation errors wrapped in
|
||||
// ListSeedPeersRequestMultiError, or nil if none found.
|
||||
func (m *ListSeedPeersRequest) ValidateAll() error {
|
||||
return m.validate(true)
|
||||
}
|
||||
|
||||
func (m *ListSeedPeersRequest) validate(all bool) error {
|
||||
if m == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
var errors []error
|
||||
|
||||
if _, ok := SourceType_name[int32(m.GetSourceType())]; !ok {
|
||||
err := ListSeedPeersRequestValidationError{
|
||||
field: "SourceType",
|
||||
reason: "value must be one of the defined enum values",
|
||||
}
|
||||
if !all {
|
||||
return err
|
||||
}
|
||||
errors = append(errors, err)
|
||||
}
|
||||
|
||||
if err := m._validateHostname(m.GetHostname()); err != nil {
|
||||
err = ListSeedPeersRequestValidationError{
|
||||
field: "Hostname",
|
||||
reason: "value must be a valid hostname",
|
||||
cause: err,
|
||||
}
|
||||
if !all {
|
||||
return err
|
||||
}
|
||||
errors = append(errors, err)
|
||||
}
|
||||
|
||||
if ip := net.ParseIP(m.GetIp()); ip == nil {
|
||||
err := ListSeedPeersRequestValidationError{
|
||||
field: "Ip",
|
||||
reason: "value must be a valid IP address",
|
||||
}
|
||||
if !all {
|
||||
return err
|
||||
}
|
||||
errors = append(errors, err)
|
||||
}
|
||||
|
||||
if m.GetVersion() != "" {
|
||||
|
||||
if l := utf8.RuneCountInString(m.GetVersion()); l < 1 || l > 1024 {
|
||||
err := ListSeedPeersRequestValidationError{
|
||||
field: "Version",
|
||||
reason: "value length must be between 1 and 1024 runes, inclusive",
|
||||
}
|
||||
if !all {
|
||||
return err
|
||||
}
|
||||
errors = append(errors, err)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if m.GetCommit() != "" {
|
||||
|
||||
if l := utf8.RuneCountInString(m.GetCommit()); l < 1 || l > 1024 {
|
||||
err := ListSeedPeersRequestValidationError{
|
||||
field: "Commit",
|
||||
reason: "value length must be between 1 and 1024 runes, inclusive",
|
||||
}
|
||||
if !all {
|
||||
return err
|
||||
}
|
||||
errors = append(errors, err)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if len(errors) > 0 {
|
||||
return ListSeedPeersRequestMultiError(errors)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
func (m *ListSeedPeersRequest) _validateHostname(host string) error {
|
||||
s := strings.ToLower(strings.TrimSuffix(host, "."))
|
||||
|
||||
if len(host) > 253 {
|
||||
return errors.New("hostname cannot exceed 253 characters")
|
||||
}
|
||||
|
||||
for _, part := range strings.Split(s, ".") {
|
||||
if l := len(part); l == 0 || l > 63 {
|
||||
return errors.New("hostname part must be non-empty and cannot exceed 63 characters")
|
||||
}
|
||||
|
||||
if part[0] == '-' {
|
||||
return errors.New("hostname parts cannot begin with hyphens")
|
||||
}
|
||||
|
||||
if part[len(part)-1] == '-' {
|
||||
return errors.New("hostname parts cannot end with hyphens")
|
||||
}
|
||||
|
||||
for _, r := range part {
|
||||
if (r < 'a' || r > 'z') && (r < '0' || r > '9') && r != '-' {
|
||||
return fmt.Errorf("hostname parts can only contain alphanumeric characters or hyphens, got %q", string(r))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// ListSeedPeersRequestMultiError is an error wrapping multiple validation
|
||||
// errors returned by ListSeedPeersRequest.ValidateAll() if the designated
|
||||
// constraints aren't met.
|
||||
type ListSeedPeersRequestMultiError []error
|
||||
|
||||
// Error returns a concatenation of all the error messages it wraps.
|
||||
func (m ListSeedPeersRequestMultiError) Error() string {
|
||||
var msgs []string
|
||||
for _, err := range m {
|
||||
msgs = append(msgs, err.Error())
|
||||
}
|
||||
return strings.Join(msgs, "; ")
|
||||
}
|
||||
|
||||
// AllErrors returns a list of validation violation errors.
|
||||
func (m ListSeedPeersRequestMultiError) AllErrors() []error { return m }
|
||||
|
||||
// ListSeedPeersRequestValidationError is the validation error returned by
|
||||
// ListSeedPeersRequest.Validate if the designated constraints aren't met.
|
||||
type ListSeedPeersRequestValidationError struct {
|
||||
field string
|
||||
reason string
|
||||
cause error
|
||||
key bool
|
||||
}
|
||||
|
||||
// Field function returns field value.
|
||||
func (e ListSeedPeersRequestValidationError) Field() string { return e.field }
|
||||
|
||||
// Reason function returns reason value.
|
||||
func (e ListSeedPeersRequestValidationError) Reason() string { return e.reason }
|
||||
|
||||
// Cause function returns cause value.
|
||||
func (e ListSeedPeersRequestValidationError) Cause() error { return e.cause }
|
||||
|
||||
// Key function returns key value.
|
||||
func (e ListSeedPeersRequestValidationError) Key() bool { return e.key }
|
||||
|
||||
// ErrorName returns error name.
|
||||
func (e ListSeedPeersRequestValidationError) ErrorName() string {
|
||||
return "ListSeedPeersRequestValidationError"
|
||||
}
|
||||
|
||||
// Error satisfies the builtin error interface
|
||||
func (e ListSeedPeersRequestValidationError) Error() string {
|
||||
cause := ""
|
||||
if e.cause != nil {
|
||||
cause = fmt.Sprintf(" | caused by: %v", e.cause)
|
||||
}
|
||||
|
||||
key := ""
|
||||
if e.key {
|
||||
key = "key for "
|
||||
}
|
||||
|
||||
return fmt.Sprintf(
|
||||
"invalid %sListSeedPeersRequest.%s: %s%s",
|
||||
key,
|
||||
e.field,
|
||||
e.reason,
|
||||
cause)
|
||||
}
|
||||
|
||||
var _ error = ListSeedPeersRequestValidationError{}
|
||||
|
||||
var _ interface {
|
||||
Field() string
|
||||
Reason() string
|
||||
Key() bool
|
||||
Cause() error
|
||||
ErrorName() string
|
||||
} = ListSeedPeersRequestValidationError{}
|
||||
|
||||
// Validate checks the field values on ListSeedPeersResponse with the rules
|
||||
// defined in the proto definition for this message. If any rules are
|
||||
// violated, the first error encountered is returned, or nil if there are no violations.
|
||||
func (m *ListSeedPeersResponse) Validate() error {
|
||||
return m.validate(false)
|
||||
}
|
||||
|
||||
// ValidateAll checks the field values on ListSeedPeersResponse with the rules
|
||||
// defined in the proto definition for this message. If any rules are
|
||||
// violated, the result is a list of violation errors wrapped in
|
||||
// ListSeedPeersResponseMultiError, or nil if none found.
|
||||
func (m *ListSeedPeersResponse) ValidateAll() error {
|
||||
return m.validate(true)
|
||||
}
|
||||
|
||||
func (m *ListSeedPeersResponse) validate(all bool) error {
|
||||
if m == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
var errors []error
|
||||
|
||||
for idx, item := range m.GetSeedPeers() {
|
||||
_, _ = idx, item
|
||||
|
||||
if all {
|
||||
switch v := interface{}(item).(type) {
|
||||
case interface{ ValidateAll() error }:
|
||||
if err := v.ValidateAll(); err != nil {
|
||||
errors = append(errors, ListSeedPeersResponseValidationError{
|
||||
field: fmt.Sprintf("SeedPeers[%v]", idx),
|
||||
reason: "embedded message failed validation",
|
||||
cause: err,
|
||||
})
|
||||
}
|
||||
case interface{ Validate() error }:
|
||||
if err := v.Validate(); err != nil {
|
||||
errors = append(errors, ListSeedPeersResponseValidationError{
|
||||
field: fmt.Sprintf("SeedPeers[%v]", idx),
|
||||
reason: "embedded message failed validation",
|
||||
cause: err,
|
||||
})
|
||||
}
|
||||
}
|
||||
} else if v, ok := interface{}(item).(interface{ Validate() error }); ok {
|
||||
if err := v.Validate(); err != nil {
|
||||
return ListSeedPeersResponseValidationError{
|
||||
field: fmt.Sprintf("SeedPeers[%v]", idx),
|
||||
reason: "embedded message failed validation",
|
||||
cause: err,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if len(errors) > 0 {
|
||||
return ListSeedPeersResponseMultiError(errors)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
// ListSeedPeersResponseMultiError is an error wrapping multiple validation
|
||||
// errors returned by ListSeedPeersResponse.ValidateAll() if the designated
|
||||
// constraints aren't met.
|
||||
type ListSeedPeersResponseMultiError []error
|
||||
|
||||
// Error returns a concatenation of all the error messages it wraps.
|
||||
func (m ListSeedPeersResponseMultiError) Error() string {
|
||||
var msgs []string
|
||||
for _, err := range m {
|
||||
msgs = append(msgs, err.Error())
|
||||
}
|
||||
return strings.Join(msgs, "; ")
|
||||
}
|
||||
|
||||
// AllErrors returns a list of validation violation errors.
|
||||
func (m ListSeedPeersResponseMultiError) AllErrors() []error { return m }
|
||||
|
||||
// ListSeedPeersResponseValidationError is the validation error returned by
|
||||
// ListSeedPeersResponse.Validate if the designated constraints aren't met.
|
||||
type ListSeedPeersResponseValidationError struct {
|
||||
field string
|
||||
reason string
|
||||
cause error
|
||||
key bool
|
||||
}
|
||||
|
||||
// Field function returns field value.
|
||||
func (e ListSeedPeersResponseValidationError) Field() string { return e.field }
|
||||
|
||||
// Reason function returns reason value.
|
||||
func (e ListSeedPeersResponseValidationError) Reason() string { return e.reason }
|
||||
|
||||
// Cause function returns cause value.
|
||||
func (e ListSeedPeersResponseValidationError) Cause() error { return e.cause }
|
||||
|
||||
// Key function returns key value.
|
||||
func (e ListSeedPeersResponseValidationError) Key() bool { return e.key }
|
||||
|
||||
// ErrorName returns error name.
|
||||
func (e ListSeedPeersResponseValidationError) ErrorName() string {
|
||||
return "ListSeedPeersResponseValidationError"
|
||||
}
|
||||
|
||||
// Error satisfies the builtin error interface
|
||||
func (e ListSeedPeersResponseValidationError) Error() string {
|
||||
cause := ""
|
||||
if e.cause != nil {
|
||||
cause = fmt.Sprintf(" | caused by: %v", e.cause)
|
||||
}
|
||||
|
||||
key := ""
|
||||
if e.key {
|
||||
key = "key for "
|
||||
}
|
||||
|
||||
return fmt.Sprintf(
|
||||
"invalid %sListSeedPeersResponse.%s: %s%s",
|
||||
key,
|
||||
e.field,
|
||||
e.reason,
|
||||
cause)
|
||||
}
|
||||
|
||||
var _ error = ListSeedPeersResponseValidationError{}
|
||||
|
||||
var _ interface {
|
||||
Field() string
|
||||
Reason() string
|
||||
Key() bool
|
||||
Cause() error
|
||||
ErrorName() string
|
||||
} = ListSeedPeersResponseValidationError{}
|
||||
|
||||
// Validate checks the field values on UpdateSeedPeerRequest with the rules
|
||||
// defined in the proto definition for this message. If any rules are
|
||||
// violated, the first error encountered is returned, or nil if there are no violations.
|
||||
|
|
|
@ -88,6 +88,26 @@ message GetSeedPeerRequest {
|
|||
string ip = 4 [(validate.rules).string = {ip: true, ignore_empty: true}];
|
||||
}
|
||||
|
||||
// ListSeedPeersRequest represents request of ListSeedPeers.
|
||||
message ListSeedPeersRequest {
|
||||
// Request source type.
|
||||
SourceType source_type = 1 [(validate.rules).enum.defined_only = true];
|
||||
// Source service hostname.
|
||||
string hostname = 2 [(validate.rules).string.hostname = true];
|
||||
// Source service ip.
|
||||
string ip = 3 [(validate.rules).string.ip = true];
|
||||
// Dfdaemon version.
|
||||
string version = 4 [(validate.rules).string = {min_len: 1, max_len: 1024, ignore_empty: true}];
|
||||
// Dfdaemon commit.
|
||||
string commit = 5 [(validate.rules).string = {min_len: 1, max_len: 1024, ignore_empty: true}];
|
||||
}
|
||||
|
||||
// ListSeedPeersResponse represents response of ListSeedPeers.
|
||||
message ListSeedPeersResponse {
|
||||
// Seed peers to which the source service belongs.
|
||||
repeated SeedPeer seed_peers = 1;
|
||||
}
|
||||
|
||||
// UpdateSeedPeerRequest represents request of UpdateSeedPeer.
|
||||
message UpdateSeedPeerRequest {
|
||||
// Request source type.
|
||||
|
@ -375,6 +395,9 @@ service Manager {
|
|||
// Get SeedPeer and SeedPeer cluster configuration.
|
||||
rpc GetSeedPeer(GetSeedPeerRequest) returns(SeedPeer);
|
||||
|
||||
// List acitve schedulers configuration.
|
||||
rpc ListSeedPeers(ListSeedPeersRequest)returns(ListSeedPeersResponse);
|
||||
|
||||
// Update SeedPeer configuration.
|
||||
rpc UpdateSeedPeer(UpdateSeedPeerRequest) returns(SeedPeer);
|
||||
|
||||
|
|
|
@ -25,6 +25,8 @@ const _ = grpc.SupportPackageIsVersion7
|
|||
type ManagerClient interface {
|
||||
// Get SeedPeer and SeedPeer cluster configuration.
|
||||
GetSeedPeer(ctx context.Context, in *GetSeedPeerRequest, opts ...grpc.CallOption) (*SeedPeer, error)
|
||||
// List acitve schedulers configuration.
|
||||
ListSeedPeers(ctx context.Context, in *ListSeedPeersRequest, opts ...grpc.CallOption) (*ListSeedPeersResponse, error)
|
||||
// Update SeedPeer configuration.
|
||||
UpdateSeedPeer(ctx context.Context, in *UpdateSeedPeerRequest, opts ...grpc.CallOption) (*SeedPeer, error)
|
||||
// Delete SeedPeer configuration.
|
||||
|
@ -64,6 +66,15 @@ func (c *managerClient) GetSeedPeer(ctx context.Context, in *GetSeedPeerRequest,
|
|||
return out, nil
|
||||
}
|
||||
|
||||
func (c *managerClient) ListSeedPeers(ctx context.Context, in *ListSeedPeersRequest, opts ...grpc.CallOption) (*ListSeedPeersResponse, error) {
|
||||
out := new(ListSeedPeersResponse)
|
||||
err := c.cc.Invoke(ctx, "/manager.v2.Manager/ListSeedPeers", in, out, opts...)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return out, nil
|
||||
}
|
||||
|
||||
func (c *managerClient) UpdateSeedPeer(ctx context.Context, in *UpdateSeedPeerRequest, opts ...grpc.CallOption) (*SeedPeer, error) {
|
||||
out := new(SeedPeer)
|
||||
err := c.cc.Invoke(ctx, "/manager.v2.Manager/UpdateSeedPeer", in, out, opts...)
|
||||
|
@ -185,6 +196,8 @@ func (x *managerKeepAliveClient) CloseAndRecv() (*emptypb.Empty, error) {
|
|||
type ManagerServer interface {
|
||||
// Get SeedPeer and SeedPeer cluster configuration.
|
||||
GetSeedPeer(context.Context, *GetSeedPeerRequest) (*SeedPeer, error)
|
||||
// List acitve schedulers configuration.
|
||||
ListSeedPeers(context.Context, *ListSeedPeersRequest) (*ListSeedPeersResponse, error)
|
||||
// Update SeedPeer configuration.
|
||||
UpdateSeedPeer(context.Context, *UpdateSeedPeerRequest) (*SeedPeer, error)
|
||||
// Delete SeedPeer configuration.
|
||||
|
@ -214,6 +227,9 @@ type UnimplementedManagerServer struct {
|
|||
func (UnimplementedManagerServer) GetSeedPeer(context.Context, *GetSeedPeerRequest) (*SeedPeer, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method GetSeedPeer not implemented")
|
||||
}
|
||||
func (UnimplementedManagerServer) ListSeedPeers(context.Context, *ListSeedPeersRequest) (*ListSeedPeersResponse, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method ListSeedPeers not implemented")
|
||||
}
|
||||
func (UnimplementedManagerServer) UpdateSeedPeer(context.Context, *UpdateSeedPeerRequest) (*SeedPeer, error) {
|
||||
return nil, status.Errorf(codes.Unimplemented, "method UpdateSeedPeer not implemented")
|
||||
}
|
||||
|
@ -274,6 +290,24 @@ func _Manager_GetSeedPeer_Handler(srv interface{}, ctx context.Context, dec func
|
|||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _Manager_ListSeedPeers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(ListSeedPeersRequest)
|
||||
if err := dec(in); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
if interceptor == nil {
|
||||
return srv.(ManagerServer).ListSeedPeers(ctx, in)
|
||||
}
|
||||
info := &grpc.UnaryServerInfo{
|
||||
Server: srv,
|
||||
FullMethod: "/manager.v2.Manager/ListSeedPeers",
|
||||
}
|
||||
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
|
||||
return srv.(ManagerServer).ListSeedPeers(ctx, req.(*ListSeedPeersRequest))
|
||||
}
|
||||
return interceptor(ctx, in, info, handler)
|
||||
}
|
||||
|
||||
func _Manager_UpdateSeedPeer_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
|
||||
in := new(UpdateSeedPeerRequest)
|
||||
if err := dec(in); err != nil {
|
||||
|
@ -473,6 +507,10 @@ var Manager_ServiceDesc = grpc.ServiceDesc{
|
|||
MethodName: "GetSeedPeer",
|
||||
Handler: _Manager_GetSeedPeer_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "ListSeedPeers",
|
||||
Handler: _Manager_ListSeedPeers_Handler,
|
||||
},
|
||||
{
|
||||
MethodName: "UpdateSeedPeer",
|
||||
Handler: _Manager_UpdateSeedPeer_Handler,
|
||||
|
|
|
@ -222,6 +222,26 @@ func (mr *MockManagerClientMockRecorder) ListSchedulers(ctx, in any, opts ...any
|
|||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListSchedulers", reflect.TypeOf((*MockManagerClient)(nil).ListSchedulers), varargs...)
|
||||
}
|
||||
|
||||
// ListSeedPeers mocks base method.
|
||||
func (m *MockManagerClient) ListSeedPeers(ctx context.Context, in *manager.ListSeedPeersRequest, opts ...grpc.CallOption) (*manager.ListSeedPeersResponse, error) {
|
||||
m.ctrl.T.Helper()
|
||||
varargs := []any{ctx, in}
|
||||
for _, a := range opts {
|
||||
varargs = append(varargs, a)
|
||||
}
|
||||
ret := m.ctrl.Call(m, "ListSeedPeers", varargs...)
|
||||
ret0, _ := ret[0].(*manager.ListSeedPeersResponse)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// ListSeedPeers indicates an expected call of ListSeedPeers.
|
||||
func (mr *MockManagerClientMockRecorder) ListSeedPeers(ctx, in any, opts ...any) *gomock.Call {
|
||||
mr.mock.ctrl.T.Helper()
|
||||
varargs := append([]any{ctx, in}, opts...)
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListSeedPeers", reflect.TypeOf((*MockManagerClient)(nil).ListSeedPeers), varargs...)
|
||||
}
|
||||
|
||||
// UpdateScheduler mocks base method.
|
||||
func (m *MockManagerClient) UpdateScheduler(ctx context.Context, in *manager.UpdateSchedulerRequest, opts ...grpc.CallOption) (*manager.Scheduler, error) {
|
||||
m.ctrl.T.Helper()
|
||||
|
@ -556,6 +576,21 @@ func (mr *MockManagerServerMockRecorder) ListSchedulers(arg0, arg1 any) *gomock.
|
|||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListSchedulers", reflect.TypeOf((*MockManagerServer)(nil).ListSchedulers), arg0, arg1)
|
||||
}
|
||||
|
||||
// ListSeedPeers mocks base method.
|
||||
func (m *MockManagerServer) ListSeedPeers(arg0 context.Context, arg1 *manager.ListSeedPeersRequest) (*manager.ListSeedPeersResponse, error) {
|
||||
m.ctrl.T.Helper()
|
||||
ret := m.ctrl.Call(m, "ListSeedPeers", arg0, arg1)
|
||||
ret0, _ := ret[0].(*manager.ListSeedPeersResponse)
|
||||
ret1, _ := ret[1].(error)
|
||||
return ret0, ret1
|
||||
}
|
||||
|
||||
// ListSeedPeers indicates an expected call of ListSeedPeers.
|
||||
func (mr *MockManagerServerMockRecorder) ListSeedPeers(arg0, arg1 any) *gomock.Call {
|
||||
mr.mock.ctrl.T.Helper()
|
||||
return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListSeedPeers", reflect.TypeOf((*MockManagerServer)(nil).ListSeedPeers), arg0, arg1)
|
||||
}
|
||||
|
||||
// UpdateScheduler mocks base method.
|
||||
func (m *MockManagerServer) UpdateScheduler(arg0 context.Context, arg1 *manager.UpdateSchedulerRequest) (*manager.Scheduler, error) {
|
||||
m.ctrl.T.Helper()
|
||||
|
|
|
@ -85,6 +85,26 @@ message GetSeedPeerRequest {
|
|||
string ip = 4;
|
||||
}
|
||||
|
||||
// ListSeedPeersRequest represents request of ListSeedPeers.
|
||||
message ListSeedPeersRequest {
|
||||
// Request source type.
|
||||
SourceType source_type = 1;
|
||||
// Source service hostname.
|
||||
string hostname = 2;
|
||||
// Source service ip.
|
||||
string ip = 3;
|
||||
// Dfdaemon version.
|
||||
string version = 4;
|
||||
// Dfdaemon commit.
|
||||
string commit = 5;
|
||||
}
|
||||
|
||||
// ListSeedPeersResponse represents response of ListSeedPeers.
|
||||
message ListSeedPeersResponse {
|
||||
// Seed peers to which the source service belongs.
|
||||
repeated SeedPeer seed_peers = 1;
|
||||
}
|
||||
|
||||
// UpdateSeedPeerRequest represents request of UpdateSeedPeer.
|
||||
message UpdateSeedPeerRequest {
|
||||
// Request source type.
|
||||
|
@ -370,6 +390,9 @@ service Manager {
|
|||
// Get SeedPeer and SeedPeer cluster configuration.
|
||||
rpc GetSeedPeer(GetSeedPeerRequest) returns(SeedPeer);
|
||||
|
||||
// List acitve schedulers configuration.
|
||||
rpc ListSeedPeers(ListSeedPeersRequest)returns(ListSeedPeersResponse);
|
||||
|
||||
// Update SeedPeer configuration.
|
||||
rpc UpdateSeedPeer(UpdateSeedPeerRequest) returns(SeedPeer);
|
||||
|
||||
|
|
Binary file not shown.
|
@ -79,6 +79,36 @@ pub struct GetSeedPeerRequest {
|
|||
#[prost(string, tag = "4")]
|
||||
pub ip: ::prost::alloc::string::String,
|
||||
}
|
||||
/// ListSeedPeersRequest represents request of ListSeedPeers.
|
||||
#[derive(serde::Serialize, serde::Deserialize)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct ListSeedPeersRequest {
|
||||
/// Request source type.
|
||||
#[prost(enumeration = "SourceType", tag = "1")]
|
||||
pub source_type: i32,
|
||||
/// Source service hostname.
|
||||
#[prost(string, tag = "2")]
|
||||
pub hostname: ::prost::alloc::string::String,
|
||||
/// Source service ip.
|
||||
#[prost(string, tag = "3")]
|
||||
pub ip: ::prost::alloc::string::String,
|
||||
/// Dfdaemon version.
|
||||
#[prost(string, tag = "4")]
|
||||
pub version: ::prost::alloc::string::String,
|
||||
/// Dfdaemon commit.
|
||||
#[prost(string, tag = "5")]
|
||||
pub commit: ::prost::alloc::string::String,
|
||||
}
|
||||
/// ListSeedPeersResponse represents response of ListSeedPeers.
|
||||
#[derive(serde::Serialize, serde::Deserialize)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||
pub struct ListSeedPeersResponse {
|
||||
/// Seed peers to which the source service belongs.
|
||||
#[prost(message, repeated, tag = "1")]
|
||||
pub seed_peers: ::prost::alloc::vec::Vec<SeedPeer>,
|
||||
}
|
||||
/// UpdateSeedPeerRequest represents request of UpdateSeedPeer.
|
||||
#[derive(serde::Serialize, serde::Deserialize)]
|
||||
#[allow(clippy::derive_partial_eq_without_eq)]
|
||||
|
@ -646,6 +676,32 @@ pub mod manager_client {
|
|||
.insert(GrpcMethod::new("manager.v2.Manager", "GetSeedPeer"));
|
||||
self.inner.unary(req, path, codec).await
|
||||
}
|
||||
/// List acitve schedulers configuration.
|
||||
pub async fn list_seed_peers(
|
||||
&mut self,
|
||||
request: impl tonic::IntoRequest<super::ListSeedPeersRequest>,
|
||||
) -> std::result::Result<
|
||||
tonic::Response<super::ListSeedPeersResponse>,
|
||||
tonic::Status,
|
||||
> {
|
||||
self.inner
|
||||
.ready()
|
||||
.await
|
||||
.map_err(|e| {
|
||||
tonic::Status::new(
|
||||
tonic::Code::Unknown,
|
||||
format!("Service was not ready: {}", e.into()),
|
||||
)
|
||||
})?;
|
||||
let codec = tonic::codec::ProstCodec::default();
|
||||
let path = http::uri::PathAndQuery::from_static(
|
||||
"/manager.v2.Manager/ListSeedPeers",
|
||||
);
|
||||
let mut req = request.into_request();
|
||||
req.extensions_mut()
|
||||
.insert(GrpcMethod::new("manager.v2.Manager", "ListSeedPeers"));
|
||||
self.inner.unary(req, path, codec).await
|
||||
}
|
||||
/// Update SeedPeer configuration.
|
||||
pub async fn update_seed_peer(
|
||||
&mut self,
|
||||
|
@ -899,6 +955,14 @@ pub mod manager_server {
|
|||
&self,
|
||||
request: tonic::Request<super::GetSeedPeerRequest>,
|
||||
) -> std::result::Result<tonic::Response<super::SeedPeer>, tonic::Status>;
|
||||
/// List acitve schedulers configuration.
|
||||
async fn list_seed_peers(
|
||||
&self,
|
||||
request: tonic::Request<super::ListSeedPeersRequest>,
|
||||
) -> std::result::Result<
|
||||
tonic::Response<super::ListSeedPeersResponse>,
|
||||
tonic::Status,
|
||||
>;
|
||||
/// Update SeedPeer configuration.
|
||||
async fn update_seed_peer(
|
||||
&self,
|
||||
|
@ -1085,6 +1149,52 @@ pub mod manager_server {
|
|||
};
|
||||
Box::pin(fut)
|
||||
}
|
||||
"/manager.v2.Manager/ListSeedPeers" => {
|
||||
#[allow(non_camel_case_types)]
|
||||
struct ListSeedPeersSvc<T: Manager>(pub Arc<T>);
|
||||
impl<
|
||||
T: Manager,
|
||||
> tonic::server::UnaryService<super::ListSeedPeersRequest>
|
||||
for ListSeedPeersSvc<T> {
|
||||
type Response = super::ListSeedPeersResponse;
|
||||
type Future = BoxFuture<
|
||||
tonic::Response<Self::Response>,
|
||||
tonic::Status,
|
||||
>;
|
||||
fn call(
|
||||
&mut self,
|
||||
request: tonic::Request<super::ListSeedPeersRequest>,
|
||||
) -> Self::Future {
|
||||
let inner = Arc::clone(&self.0);
|
||||
let fut = async move {
|
||||
(*inner).list_seed_peers(request).await
|
||||
};
|
||||
Box::pin(fut)
|
||||
}
|
||||
}
|
||||
let accept_compression_encodings = self.accept_compression_encodings;
|
||||
let send_compression_encodings = self.send_compression_encodings;
|
||||
let max_decoding_message_size = self.max_decoding_message_size;
|
||||
let max_encoding_message_size = self.max_encoding_message_size;
|
||||
let inner = self.inner.clone();
|
||||
let fut = async move {
|
||||
let inner = inner.0;
|
||||
let method = ListSeedPeersSvc(inner);
|
||||
let codec = tonic::codec::ProstCodec::default();
|
||||
let mut grpc = tonic::server::Grpc::new(codec)
|
||||
.apply_compression_config(
|
||||
accept_compression_encodings,
|
||||
send_compression_encodings,
|
||||
)
|
||||
.apply_max_message_size_config(
|
||||
max_decoding_message_size,
|
||||
max_encoding_message_size,
|
||||
);
|
||||
let res = grpc.unary(method, req).await;
|
||||
Ok(res)
|
||||
};
|
||||
Box::pin(fut)
|
||||
}
|
||||
"/manager.v2.Manager/UpdateSeedPeer" => {
|
||||
#[allow(non_camel_case_types)]
|
||||
struct UpdateSeedPeerSvc<T: Manager>(pub Arc<T>);
|
||||
|
|
Loading…
Reference in New Issue