镜像自地址
https://github.com/tuna/tunasync.git
已同步 2025-12-06 06:26:46 +00:00
feature(manager): skeleton for worker-manager communication
这个提交包含在:
42
internal/msg.go
普通文件
42
internal/msg.go
普通文件
@@ -0,0 +1,42 @@
|
||||
package internal
|
||||
|
||||
import "time"
|
||||
|
||||
// A StatusUpdateMsg represents a msg when
|
||||
// a worker has done syncing
|
||||
type StatusUpdateMsg struct {
|
||||
Name string `json:"name"`
|
||||
Worker string `json:"worker"`
|
||||
IsMaster bool `json:"is_master"`
|
||||
Status SyncStatus `json:"status"`
|
||||
LastUpdate time.Time `json:"last_update"`
|
||||
Upstream string `json:"upstream"`
|
||||
Size string `json:"size"`
|
||||
}
|
||||
|
||||
// A WorkerInfoMsg is
|
||||
type WorkerInfoMsg struct {
|
||||
Name string `json:"name"`
|
||||
}
|
||||
|
||||
type CmdVerb uint8
|
||||
|
||||
const (
|
||||
CmdStart CmdVerb = iota
|
||||
CmdStop // stop syncing keep the job
|
||||
CmdDisable // disable the job (stops goroutine)
|
||||
CmdRestart // restart syncing
|
||||
CmdPing // ensure the goroutine is alive
|
||||
)
|
||||
|
||||
type WorkerCmd struct {
|
||||
Cmd CmdVerb `json:"cmd"`
|
||||
Args []string `json:"args"`
|
||||
}
|
||||
|
||||
type ClientCmd struct {
|
||||
Cmd CmdVerb `json:"cmd"`
|
||||
MirrorID string `json:"mirror_id"`
|
||||
WorkerID string `json:"worker_id"`
|
||||
Args []string `json:"args"`
|
||||
}
|
||||
在新工单中引用
屏蔽一个用户