Files
cloudpods/pkg/image/tasks/image_check_task.go
Qiu Jian df41b7cdcd use separate worker for long running tasks, such as ImageConvertTask,
ImageCheckTask, CloudProviderSyncInfoTask
2018-12-27 16:19:24 +08:00

30 lines
672 B
Go

package tasks
import (
"context"
"yunion.io/x/jsonutils"
"yunion.io/x/onecloud/pkg/appsrv"
"yunion.io/x/onecloud/pkg/cloudcommon/db"
"yunion.io/x/onecloud/pkg/cloudcommon/db/taskman"
"yunion.io/x/onecloud/pkg/image/models"
)
type ImageCheckTask struct {
taskman.STask
}
func init() {
checkWorker := appsrv.NewWorkerManager("ImageCheckTaskWorkerManager", 2, 1024, true)
taskman.RegisterTaskAndWorker(ImageCheckTask{}, checkWorker)
}
func (self *ImageCheckTask) OnInit(ctx context.Context, obj db.IStandaloneModel, data jsonutils.JSONObject) {
image := obj.(*models.SImage)
image.DoCheckStatus(ctx, self.UserCred, true)
self.SetStageComplete(ctx, nil)
}