feat: update scheduler and seed peer by ip and port (#3012)

Signed-off-by: Gaius <gaius.qi@gmail.com>
This commit is contained in:
Gaius 2024-01-10 12:36:45 +08:00 committed by GitHub
parent 93df8f01d8
commit ea28581bbe
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 10 additions and 26 deletions

View File

@ -269,9 +269,6 @@ type GRPCConfig struct {
// AdvertiseIP is advertise ip.
AdvertiseIP net.IP `yaml:"advertiseIP" mapstructure:"advertiseIP"`
// AdvertisePort is advertise port.
AdvertisePort int `yaml:"advertisePort" mapstructure:"advertisePort"`
// ListenIP is listen ip, like: 0.0.0.0, 192.168.0.1.
ListenIP net.IP `mapstructure:"listenIP" yaml:"listenIP"`
@ -392,7 +389,6 @@ func New() *Config {
Server: ServerConfig{
Name: DefaultServerName,
GRPC: GRPCConfig{
AdvertisePort: DefaultGRPCAdvertisePort,
PortRange: TCPListenPortRange{
Start: DefaultGRPCPort,
End: DefaultGRPCPort,
@ -485,10 +481,6 @@ func (cfg *Config) Validate() error {
return errors.New("grpc requires parameter advertiseIP")
}
if cfg.Server.GRPC.AdvertisePort <= 0 {
return errors.New("grpc requires parameter advertisePort")
}
if cfg.Server.GRPC.ListenIP == nil {
return errors.New("grpc requires parameter listenIP")
}

View File

@ -120,7 +120,6 @@ func TestConfig_Load(t *testing.T) {
PluginDir: "foo",
GRPC: GRPCConfig{
AdvertiseIP: net.IPv4zero,
AdvertisePort: 65003,
ListenIP: net.IPv4zero,
PortRange: TCPListenPortRange{
Start: 65003,
@ -286,17 +285,6 @@ func TestConfig_Validate(t *testing.T) {
assert.EqualError(err, "grpc requires parameter advertiseIP")
},
},
{
name: "grpc requires parameter advertisePort",
config: New(),
mock: func(cfg *Config) {
cfg.Server.GRPC.AdvertisePort = 0
},
expect: func(t *testing.T, err error) {
assert := assert.New(t)
assert.EqualError(err, "grpc requires parameter advertisePort")
},
},
{
name: "grpc requires parameter listenIP",
config: New(),

View File

@ -41,9 +41,6 @@ const (
// DefaultGRPCPort is default port for grpc server.
DefaultGRPCPort = 65003
// DefaultGRPCPort is default port for grpc server.
DefaultGRPCAdvertisePort = 65003
// DefaultRESTAddr is default address for rest server.
DefaultRESTAddr = ":8080"
)

View File

@ -6,7 +6,6 @@ server:
pluginDir: foo
grpc:
advertiseIP: 0.0.0.0
advertisePort: 65003
listenIP: 0.0.0.0
port:
start: 65003

View File

@ -238,6 +238,8 @@ func (s *managerServerV2) UpdateSeedPeer(ctx context.Context, req *managerv2.Upd
seedPeer := models.SeedPeer{}
if err := s.db.WithContext(ctx).First(&seedPeer, models.SeedPeer{
Hostname: req.Hostname,
IP: req.Ip,
Port: req.Port,
SeedPeerClusterID: uint(req.SeedPeerClusterId),
}).Error; err != nil {
if errors.Is(err, gorm.ErrRecordNotFound) {
@ -450,6 +452,8 @@ func (s *managerServerV2) UpdateScheduler(ctx context.Context, req *managerv2.Up
scheduler := models.Scheduler{}
if err := s.db.WithContext(ctx).First(&scheduler, models.Scheduler{
Hostname: req.Hostname,
IP: req.Ip,
Port: req.Port,
SchedulerClusterID: uint(req.SchedulerClusterId),
}).Error; err != nil {
if errors.Is(err, gorm.ErrRecordNotFound) {

View File

@ -728,5 +728,9 @@ func (cfg *Config) Convert() error {
}
}
if cfg.Server.AdvertisePort == 0 {
cfg.Server.AdvertisePort = cfg.Server.Port
}
return nil
}