Skip to content

Commit 68d1dbc

Browse files
committed
feat: update d7y.io/api/v2 to v2.1.42 and report scheduler config to manager
Signed-off-by: chlins <chlins.zhang@gmail.com>
1 parent 93dc9ef commit 68d1dbc

File tree

4 files changed

+26
-3
lines changed

4 files changed

+26
-3
lines changed

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ go 1.23.8
44

55
require (
66
cloud.google.com/go/storage v1.50.0
7-
d7y.io/api/v2 v2.1.39
7+
d7y.io/api/v2 v2.1.42
88
github.com/MysteriousPotato/go-lockable v1.0.0
99
github.com/Showmax/go-fqdn v1.0.0
1010
github.com/VividCortex/mysqlerr v1.0.0

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,8 @@ cloud.google.com/go/storage v1.50.0 h1:3TbVkzTooBvnZsk7WaAQfOsNrdoM8QHusXA1cpk6Q
6363
cloud.google.com/go/storage v1.50.0/go.mod h1:l7XeiD//vx5lfqE3RavfmU9yvk5Pp0Zhcv482poyafY=
6464
cloud.google.com/go/trace v1.11.2 h1:4ZmaBdL8Ng/ajrgKqY5jfvzqMXbrDcBsUGXOT9aqTtI=
6565
cloud.google.com/go/trace v1.11.2/go.mod h1:bn7OwXd4pd5rFuAnTrzBuoZ4ax2XQeG3qNgYmfCy0Io=
66-
d7y.io/api/v2 v2.1.39 h1:BxbccbEUooXuCr8aqRr5hNQONFdL7DOWo5pz2CnBg/0=
67-
d7y.io/api/v2 v2.1.39/go.mod h1:5DPjID9MNDgw0mOqf49KF6Mho4x2v+C3uKmWWQYCWUs=
66+
d7y.io/api/v2 v2.1.42 h1:JLBWPcVvTqClLedfRipHSIVkxEJFPQ5Mz1vnNo1Sklw=
67+
d7y.io/api/v2 v2.1.42/go.mod h1:IbhylQWRkqRka+oUl73Fzz331fHFIAwS2m4cMNpFWdk=
6868
dmitri.shuralyov.com/gpu/mtl v0.0.0-20190408044501-666a987793e9/go.mod h1:H6x//7gZCb22OMCxBHrMx7a5I7Hp++hsVxbQ4BYO7hU=
6969
filippo.io/edwards25519 v1.1.0 h1:FNf4tywRC1HmFuKW5xopWpigGjJKiJSV0Cqo0cJWDaA=
7070
filippo.io/edwards25519 v1.1.0/go.mod h1:BxyFTGdWcka3PhytdK4V28tE5sGfRvvvRV7EaN4VDT4=

manager/rpcserver/manager_server_v2.go

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -470,6 +470,11 @@ func (s *managerServerV2) UpdateScheduler(ctx context.Context, req *managerv2.Up
470470
schedulerFeatures = req.GetFeatures()
471471
}
472472

473+
var schedulerConfig models.JSONMap
474+
if err := json.Unmarshal(req.Config, &schedulerConfig); err != nil {
475+
return nil, status.Error(codes.Internal, err.Error())
476+
}
477+
473478
if err := s.db.WithContext(ctx).Model(&scheduler).Updates(models.Scheduler{
474479
IDC: req.GetIdc(),
475480
Location: req.GetLocation(),
@@ -478,6 +483,7 @@ func (s *managerServerV2) UpdateScheduler(ctx context.Context, req *managerv2.Up
478483
SchedulerClusterID: uint(req.GetSchedulerClusterId()),
479484
Features: schedulerFeatures,
480485
LastKeepAliveAt: time.Now(),
486+
Config: schedulerConfig,
481487
}).Error; err != nil {
482488
return nil, status.Error(codes.Internal, err.Error())
483489
}
@@ -516,6 +522,11 @@ func (s *managerServerV2) createScheduler(ctx context.Context, req *managerv2.Up
516522
schedulerFeatures = req.GetFeatures()
517523
}
518524

525+
var schedulerConfig models.JSONMap
526+
if err := json.Unmarshal(req.Config, &schedulerConfig); err != nil {
527+
return nil, status.Error(codes.Internal, err.Error())
528+
}
529+
519530
scheduler := models.Scheduler{
520531
Hostname: req.GetHostname(),
521532
IDC: req.GetIdc(),
@@ -525,6 +536,7 @@ func (s *managerServerV2) createScheduler(ctx context.Context, req *managerv2.Up
525536
Features: schedulerFeatures,
526537
SchedulerClusterID: uint(req.GetSchedulerClusterId()),
527538
LastKeepAliveAt: time.Now(),
539+
Config: schedulerConfig,
528540
}
529541

530542
if err := s.db.WithContext(ctx).Create(&scheduler).Error; err != nil {

scheduler/announcer/announcer.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,12 @@ package announcer
2020

2121
import (
2222
"context"
23+
"encoding/json"
2324

2425
managerv2 "d7y.io/api/v2/pkg/apis/manager/v2"
2526

2627
logger "d7y.io/dragonfly/v2/internal/dflog"
28+
managertypes "d7y.io/dragonfly/v2/manager/types"
2729
managerclient "d7y.io/dragonfly/v2/pkg/rpc/manager/client"
2830
"d7y.io/dragonfly/v2/scheduler/config"
2931
)
@@ -59,6 +61,14 @@ func New(cfg *config.Config, managerClient managerclient.V2, schedulerFeatures [
5961
opt(a)
6062
}
6163

64+
// Report scheduler configuration to manager.
65+
config, err := json.Marshal(&managertypes.SchedulerConfig{
66+
ManagerKeepAliveInterval: a.config.Manager.KeepAlive.Interval,
67+
})
68+
if err != nil {
69+
return nil, err
70+
}
71+
6272
// Register to manager.
6373
if _, err := a.managerClient.UpdateScheduler(context.Background(), &managerv2.UpdateSchedulerRequest{
6474
SourceType: managerv2.SourceType_SCHEDULER_SOURCE,
@@ -69,6 +79,7 @@ func New(cfg *config.Config, managerClient managerclient.V2, schedulerFeatures [
6979
Location: &a.config.Host.Location,
7080
SchedulerClusterId: uint64(a.config.Manager.SchedulerClusterID),
7181
Features: schedulerFeatures,
82+
Config: config,
7283
}); err != nil {
7384
return nil, err
7485
}

0 commit comments

Comments
 (0)