|
@@ -203,8 +203,9 @@ func (s *Manager) listWorkers(c *gin.Context) {
|
|
for _, w := range workers {
|
|
for _, w := range workers {
|
|
workerInfos = append(workerInfos,
|
|
workerInfos = append(workerInfos,
|
|
WorkerStatus{
|
|
WorkerStatus{
|
|
- ID: w.ID,
|
|
|
|
- LastOnline: w.LastOnline,
|
|
|
|
|
|
+ ID: w.ID,
|
|
|
|
+ LastOnline: w.LastOnline,
|
|
|
|
+ LastRegister: w.LastRegister,
|
|
})
|
|
})
|
|
}
|
|
}
|
|
c.JSON(http.StatusOK, workerInfos)
|
|
c.JSON(http.StatusOK, workerInfos)
|
|
@@ -215,6 +216,7 @@ func (s *Manager) registerWorker(c *gin.Context) {
|
|
var _worker WorkerStatus
|
|
var _worker WorkerStatus
|
|
c.BindJSON(&_worker)
|
|
c.BindJSON(&_worker)
|
|
_worker.LastOnline = time.Now()
|
|
_worker.LastOnline = time.Now()
|
|
|
|
+ _worker.LastRegister = time.Now()
|
|
newWorker, err := s.adapter.CreateWorker(_worker)
|
|
newWorker, err := s.adapter.CreateWorker(_worker)
|
|
if err != nil {
|
|
if err != nil {
|
|
err := fmt.Errorf("failed to register worker: %s",
|
|
err := fmt.Errorf("failed to register worker: %s",
|
|
@@ -268,6 +270,7 @@ func (s *Manager) updateSchedulesOfWorker(c *gin.Context) {
|
|
}
|
|
}
|
|
|
|
|
|
s.rwmu.RLock()
|
|
s.rwmu.RLock()
|
|
|
|
+ s.adapter.RefreshWorker(workerID)
|
|
curStatus, err := s.adapter.GetMirrorStatus(workerID, mirrorName)
|
|
curStatus, err := s.adapter.GetMirrorStatus(workerID, mirrorName)
|
|
s.rwmu.RUnlock()
|
|
s.rwmu.RUnlock()
|
|
if err != nil {
|
|
if err != nil {
|
|
@@ -312,6 +315,7 @@ func (s *Manager) updateJobOfWorker(c *gin.Context) {
|
|
}
|
|
}
|
|
|
|
|
|
s.rwmu.RLock()
|
|
s.rwmu.RLock()
|
|
|
|
+ s.adapter.RefreshWorker(workerID)
|
|
curStatus, _ := s.adapter.GetMirrorStatus(workerID, mirrorName)
|
|
curStatus, _ := s.adapter.GetMirrorStatus(workerID, mirrorName)
|
|
s.rwmu.RUnlock()
|
|
s.rwmu.RUnlock()
|
|
|
|
|
|
@@ -374,6 +378,7 @@ func (s *Manager) updateMirrorSize(c *gin.Context) {
|
|
|
|
|
|
mirrorName := msg.Name
|
|
mirrorName := msg.Name
|
|
s.rwmu.RLock()
|
|
s.rwmu.RLock()
|
|
|
|
+ s.adapter.RefreshWorker(workerID)
|
|
status, err := s.adapter.GetMirrorStatus(workerID, mirrorName)
|
|
status, err := s.adapter.GetMirrorStatus(workerID, mirrorName)
|
|
s.rwmu.RUnlock()
|
|
s.rwmu.RUnlock()
|
|
if err != nil {
|
|
if err != nil {
|