* Refactor zanodeModel::getTaskStatus.

This commit is contained in:
xieqiyu
2023-12-27 16:08:03 +08:00
parent 2fd7120377
commit 05fd264d69
3 changed files with 39 additions and 40 deletions
-37
View File
@@ -662,43 +662,6 @@ class zanodemodel extends model
return $returnData;
}
/**
* Get task status by zagent api.
*
* @param object $node
* @param int $taskID
* @param string $type
* @param string $status
* @access public
* @return array|bool
*/
public function getTaskStatus($node, $taskID = 0, $type = '', $status = '')
{
$agnetUrl = 'http://' . $node->ip . ':' . $node->hzap . static::KVM_STATUS_PATH;
$result = json_decode(commonModel::http($agnetUrl, array(), array(CURLOPT_CUSTOMREQUEST => 'POST'), array("Authorization:$node->tokenSN"), 'json', 'POST', 10));
if(empty($result) or $result->code != 'success') return false;
$data = $result->data;
if(empty($data)) return array();
if($status and !$taskID and isset($data->$status)) return $data->$status;
if(!$taskID) return $data;
foreach($data as $status => $tasks)
{
if(empty($tasks)) continue;
foreach($tasks as $task)
{
if(!empty($tasks['inprogress']) && $task->task != $tasks['inprogress'][0]->task && $task->status == 'created') $task->status = 'pending';
if($type == $task->type and $taskID == $task->task) return $task;
}
}
return $result;
}
/**
* 获取宿主机中zagent、nginx、websockify、novnc的运行及安装状态.
* Get service status from host.