🤬
Revision indexing in progress... (symbol navigation in revisions will be accurate after indexed)
  • ■ ■ ■ ■ ■ ■
    pkg/service/cluster_backup_file.go
    skipped 269 lines
    270 270   }
    271 271   cluster.TaskLog = *task
    272 272   cluster.CurrentTaskID = task.ID
     273 + 
    273 274   _ = c.clusterRepo.Save(&cluster)
    274 275   
    275  - go c.doRestore(restore, cluster, task)
     276 + go c.doRestore(restore, &cluster)
    276 277   return nil
    277 278  }
    278 279   
    279  -func (c cLusterBackupFileService) doRestore(restore dto.ClusterBackupFileRestore, cluster model.Cluster, task *model.TaskLog) {
    280  - writer, err := ansible.CreateAnsibleLogWriterWithId(cluster.Name, task.ID)
     280 +func (c cLusterBackupFileService) doRestore(restore dto.ClusterBackupFileRestore, cluster *model.Cluster) {
     281 + 
     282 + writer, err := ansible.CreateAnsibleLogWriterWithId(cluster.Name, cluster.TaskLog.ID)
    281 283   if err != nil {
    282 284   logger.Log.Errorf("create ansible log failed, error: %s", err.Error())
    283 285   }
    skipped 6 lines
    290 292   vars["bucket"] = restore.BackupAccount.Bucket
    291 293   client, err := cloud_storage.NewCloudStorageClient(vars)
    292 294   if err != nil {
    293  - _ = c.taskLogService.End(task, false, err.Error())
     295 + _ = c.taskLogService.End(&cluster.TaskLog, false, err.Error())
    294 296   cluster.CurrentTaskID = ""
    295  - _ = c.clusterRepo.Save(&cluster)
     297 + _ = c.clusterRepo.Save(cluster)
    296 298   logger.Log.Errorf("cloud storage new client failed, error: %s", err.Error())
    297 299   _ = c.msgService.SendMsg(constant.ClusterRestore, constant.Cluster, cluster, false, map[string]string{"errMsg": err.Error()})
    298 300   return
    skipped 3 lines
    302 304   targetPath := constant.BackupDir + "/" + cluster.Name + "/" + constant.BackupFileDefaultName
    303 305   _, err = client.Download(srcFilePath, targetPath)
    304 306   if err != nil {
    305  - _ = c.taskLogService.End(task, false, err.Error())
     307 + _ = c.taskLogService.End(&cluster.TaskLog, false, err.Error())
    306 308   cluster.CurrentTaskID = ""
    307  - _ = c.clusterRepo.Save(&cluster)
     309 + _ = c.clusterRepo.Save(cluster)
    308 310   logger.Log.Errorf("cloud storage download failed, error: %s", err.Error())
    309 311   _ = c.msgService.SendMsg(constant.ClusterRestore, constant.Cluster, cluster, false, map[string]string{"errMsg": err.Error()})
    310 312   return
    311 313   }
    312 314   
    313  - admCluster := adm.NewAnsibleHelper(cluster)
     315 + admCluster := adm.NewAnsibleHelper(*cluster)
    314 316   p := &backup.RestoreClusterPhase{}
    315 317   
    316 318   err = p.Run(admCluster.Kobe, writer)
    317 319   if err != nil {
    318 320   logger.Log.Errorf("restore cluster phase run failed, error: %s", err.Error())
    319  - _ = c.taskLogService.End(task, false, err.Error())
     321 + _ = c.taskLogService.End(&cluster.TaskLog, false, err.Error())
    320 322   cluster.CurrentTaskID = ""
    321  - _ = c.clusterRepo.Save(&cluster)
     323 + _ = c.clusterRepo.Save(cluster)
    322 324   _ = c.msgService.SendMsg(constant.ClusterRestore, constant.Cluster, cluster, false, map[string]string{"errMsg": err.Error()})
    323 325   } else {
    324  - _ = c.taskLogService.End(task, true, "")
     326 + _ = c.taskLogService.End(&cluster.TaskLog, true, "")
    325 327   cluster.CurrentTaskID = ""
    326  - _ = c.clusterRepo.Save(&cluster)
     328 + _ = c.clusterRepo.Save(cluster)
    327 329   _ = c.msgService.SendMsg(constant.ClusterRestore, constant.Cluster, cluster, true, map[string]string{})
    328 330   }
    329 331  }
    skipped 80 lines
Please wait...
Page is in error, reload to recover