mirror of
https://github.com/yunionio/cloudpods.git
synced 2026-09-01 15:07:17 +08:00
fix(region): insert iso sync guest status (#20540)
This commit is contained in:
@@ -63,8 +63,6 @@ func (self *StorageCacheImageTask) OnRelinquishLeastUsedCachedImageComplete(ctx
|
||||
|
||||
db.OpsLog.LogEvent(storageCache, db.ACT_CACHING_IMAGE, imageId, self.UserCred)
|
||||
|
||||
self.SetStage("OnImageCacheComplete", nil)
|
||||
|
||||
var host *models.SHost
|
||||
var err error
|
||||
serverId, _ := self.Params.GetString("server_id")
|
||||
@@ -76,6 +74,7 @@ func (self *StorageCacheImageTask) OnRelinquishLeastUsedCachedImageComplete(ctx
|
||||
return
|
||||
}
|
||||
server := guest.(*models.SGuest)
|
||||
self.Params.Set("guest_old_status", jsonutils.NewString(server.Status))
|
||||
server.SetStatus(ctx, self.GetUserCred(), api.VM_IMAGE_CACHING, "")
|
||||
host, _ = server.GetHost()
|
||||
} else {
|
||||
@@ -87,6 +86,7 @@ func (self *StorageCacheImageTask) OnRelinquishLeastUsedCachedImageComplete(ctx
|
||||
}
|
||||
}
|
||||
|
||||
self.SetStage("OnImageCacheComplete", nil)
|
||||
driver, err := host.GetHostDriver()
|
||||
if err != nil {
|
||||
self.OnImageCacheCompleteFailed(ctx, storageCache, jsonutils.NewString(errors.Wrapf(err, "GetHostDriver").Error()))
|
||||
@@ -139,6 +139,20 @@ func (self *StorageCacheImageTask) OnCacheSucc(ctx context.Context, cache *model
|
||||
if len(extImgId) > 0 && scimg.ExternalId != extImgId {
|
||||
scimg.SetExternalId(extImgId)
|
||||
}
|
||||
|
||||
serverId, _ := self.Params.GetString("server_id")
|
||||
if len(serverId) > 0 {
|
||||
guest, err := models.GuestManager.FetchById(serverId)
|
||||
if err != nil {
|
||||
errData := taskman.Error2TaskData(err)
|
||||
self.OnImageCacheCompleteFailed(ctx, cache, errData)
|
||||
return
|
||||
}
|
||||
server := guest.(*models.SGuest)
|
||||
oldStatus, _ := self.Params.GetString("guest_old_status")
|
||||
server.SetStatus(ctx, self.GetUserCred(), oldStatus, "on cache succ")
|
||||
}
|
||||
|
||||
models.CachedimageManager.ImageAddRefCount(imageId)
|
||||
db.OpsLog.LogEvent(cache, db.ACT_CACHED_IMAGE, imageId, self.UserCred)
|
||||
self.SetStageComplete(ctx, data)
|
||||
|
||||
Reference in New Issue
Block a user