Merge pull request #1050 in YUNIONIO/onecloud from ~QUXUAN/onecloud:hotfix/qx-cloudaccount-sync-status to release/2.3.0

* commit '4fa4083e8dc0b55926e1c430bf853f983a116ad8':
  全量同步后立即更新cloudaccount状态
This commit is contained in:
邱剑
2019-02-15 19:58:37 +08:00
2 changed files with 5 additions and 4 deletions
+3
View File
@@ -344,10 +344,13 @@ func (self *SCloudaccount) StartSyncCloudProviderInfoTask(ctx context.Context, u
taskItems = append(taskItems, &cloudProviders[i])
}
}
originState := self.Status
self.MarkStartSync(userCred)
task, err := taskman.TaskManager.NewParallelTask(ctx, "CloudAccountSyncInfoTask", taskItems, userCred, params, "", "", nil)
if err != nil {
log.Errorf("CloudAccountSyncInfoTask newTask error %s", err)
self.SetStatus(userCred, originState, err.Error())
} else {
task.ScheduleRun(nil)
}
+2 -4
View File
@@ -33,15 +33,13 @@ func (self *CloudAccountSyncInfoTask) OnInit(ctx context.Context, objs []db.ISta
self.SetStageFailed(ctx, "cloudprovide fail to get valid cloudaccount")
return
}
account.MarkStartSync(self.UserCred)
} else {
account.SetStatus(self.UserCred, models.CLOUD_PROVIDER_CONNECTED, "")
self.SetStageComplete(ctx, nil)
self.SetStageFailed(ctx, "no cloudprovider for sync")
return
}
if _, err := account.GetSubAccounts(); err != nil {
account.SetStatus(self.UserCred, models.CLOUD_PROVIDER_DISCONNECTED, "")
account.SetStatus(self.UserCred, models.CLOUD_PROVIDER_DISCONNECTED, err.Error())
self.SetStageFailed(ctx, err.Error())
return
}