/** * @test */ public function GetTaskWithoutJobs() { global $DB; // Verify prepare a deploy task $DB->connect(); $pfTask = new PluginFusioninventoryTask(); // create task $input = array('entities_id' => 0, 'name' => 'deploy', 'is_active' => 1); $pfTask->add($input); $running_tasks = $pfTask->getItemsFromDB(array('is_running' => TRUE, 'is_active' => TRUE)); $this->assertEquals(array(), $running_tasks, 'Not find task because not have job'); }
function getRunningTasks() { $this->running_tasks = PluginFusioninventoryTask::getItemsFromDB(array('is_active' => TRUE, 'is_running' => TRUE, 'definitions' => array(__CLASS__ => $this->fields['id']), 'by_entities' => FALSE)); }
static function cronUpdateDynamicTasks() { global $DB; $pfTask = new PluginFusioninventoryTask(); //Get every running tasks with dynamic groups $running_tasks = $pfTask->getItemsFromDB(array('is_running' => TRUE, 'is_active' => TRUE, 'actors' => array('PluginFusioninventoryDeployGroup' => ""))); $pfTaskjob = new PluginFusioninventoryTaskjob(); foreach ($running_tasks as $task) { $task['taskjob']['definitions_filter'] = array('PluginFusioninventoryDeployGroupDynamic', 'Group'); if ($pfTaskjob->getFromDB($task['taskjob']['id'])) { $pfTaskjob->prepareRunTaskjob($task['taskjob']); } } if (isset($_SESSION['glpi_plugin_fusioninventory']['agents'])) { foreach (array_keys($_SESSION['glpi_plugin_fusioninventory']['agents']) as $agents_id) { $pfTaskjob->startAgentRemotly($agents_id); } unset($_SESSION['glpi_plugin_fusioninventory']['agents']); } return 1; }