mirror of
https://github.com/goharbor/harbor.git
synced 2024-12-19 07:07:42 +01:00
Refactor the job stats manager (remove useless object references)
This commit is contained in:
parent
3ce31586df
commit
ee2da73c71
@ -15,10 +15,6 @@ import (
|
|||||||
"github.com/vmware/harbor/src/jobservice_v2/errs"
|
"github.com/vmware/harbor/src/jobservice_v2/errs"
|
||||||
"github.com/vmware/harbor/src/jobservice_v2/logger"
|
"github.com/vmware/harbor/src/jobservice_v2/logger"
|
||||||
|
|
||||||
"github.com/vmware/harbor/src/jobservice_v2/period"
|
|
||||||
|
|
||||||
"github.com/gocraft/work"
|
|
||||||
|
|
||||||
"github.com/garyburd/redigo/redis"
|
"github.com/garyburd/redigo/redis"
|
||||||
"github.com/vmware/harbor/src/jobservice_v2/job"
|
"github.com/vmware/harbor/src/jobservice_v2/job"
|
||||||
"github.com/vmware/harbor/src/jobservice_v2/models"
|
"github.com/vmware/harbor/src/jobservice_v2/models"
|
||||||
@ -53,12 +49,9 @@ type queueItem struct {
|
|||||||
|
|
||||||
//RedisJobStatsManager implements JobStatsManager based on redis.
|
//RedisJobStatsManager implements JobStatsManager based on redis.
|
||||||
type RedisJobStatsManager struct {
|
type RedisJobStatsManager struct {
|
||||||
namespace string
|
namespace string
|
||||||
redisPool *redis.Pool
|
redisPool *redis.Pool
|
||||||
context context.Context
|
context context.Context
|
||||||
client *work.Client
|
|
||||||
scheduler period.Interface
|
|
||||||
|
|
||||||
stopChan chan struct{}
|
stopChan chan struct{}
|
||||||
doneChan chan struct{}
|
doneChan chan struct{}
|
||||||
processChan chan *queueItem
|
processChan chan *queueItem
|
||||||
@ -67,13 +60,11 @@ type RedisJobStatsManager struct {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//NewRedisJobStatsManager is constructor of RedisJobStatsManager
|
//NewRedisJobStatsManager is constructor of RedisJobStatsManager
|
||||||
func NewRedisJobStatsManager(ctx context.Context, namespace string, redisPool *redis.Pool, client *work.Client, scheduler period.Interface) *RedisJobStatsManager {
|
func NewRedisJobStatsManager(ctx context.Context, namespace string, redisPool *redis.Pool) *RedisJobStatsManager {
|
||||||
return &RedisJobStatsManager{
|
return &RedisJobStatsManager{
|
||||||
namespace: namespace,
|
namespace: namespace,
|
||||||
context: ctx,
|
context: ctx,
|
||||||
redisPool: redisPool,
|
redisPool: redisPool,
|
||||||
client: client,
|
|
||||||
scheduler: scheduler,
|
|
||||||
stopChan: make(chan struct{}, 1),
|
stopChan: make(chan struct{}, 1),
|
||||||
doneChan: make(chan struct{}, 1),
|
doneChan: make(chan struct{}, 1),
|
||||||
processChan: make(chan *queueItem, processBufferSize),
|
processChan: make(chan *queueItem, processBufferSize),
|
||||||
|
@ -61,7 +61,7 @@ func NewGoCraftWorkPool(ctx *env.Context, namespace string, workerCount uint, re
|
|||||||
client := work.NewClient(namespace, redisPool)
|
client := work.NewClient(namespace, redisPool)
|
||||||
scheduler := period.NewRedisPeriodicScheduler(ctx, namespace, redisPool)
|
scheduler := period.NewRedisPeriodicScheduler(ctx, namespace, redisPool)
|
||||||
sweeper := period.NewSweeper(namespace, redisPool, client)
|
sweeper := period.NewSweeper(namespace, redisPool, client)
|
||||||
statsMgr := opm.NewRedisJobStatsManager(ctx.SystemContext, namespace, redisPool, client, scheduler)
|
statsMgr := opm.NewRedisJobStatsManager(ctx.SystemContext, namespace, redisPool)
|
||||||
msgServer := NewMessageServer(ctx.SystemContext, namespace, redisPool)
|
msgServer := NewMessageServer(ctx.SystemContext, namespace, redisPool)
|
||||||
return &GoCraftWorkPool{
|
return &GoCraftWorkPool{
|
||||||
namespace: namespace,
|
namespace: namespace,
|
||||||
|
Loading…
Reference in New Issue
Block a user