Ejemplo n.º 1
0
    } else {
        break;
    }
}
// Send fail
if ($err) {
    lib_scheduling_error('Scheduler::job_perform[fail]{rsync: ' . $cmd . '}(' . $err . ') |::> ' . implode("\n", $out) . ' <::|');
    // tag the renderer as not repsonding
    $renderers = lib_scheduling_renderer_list();
    foreach ($renderers as $_) {
        if ($_['host'] == $renderer['host']) {
            $_['status'] = 'not responding';
        }
    }
    lib_scheduling_renderer_generate($renderers);
    lib_scheduling_alert('Scheduler::job_perform[not responding]{renderer: ' . $renderer['host'] . '}');
    // move the job back to the queue
    lib_scheduling_file_move(lib_scheduling_config('processing-path') . '/' . $job['basename'], lib_scheduling_config('queue-path') . '/' . $job['basename']);
    die;
}
// Launch the rendering
$cmd = $ssh_pgm . ' ' . $renderer['client'] . '@' . $renderer['host'] . ' "' . $renderer['launch'] . ' ' . $job_dir . ' 2>&1"';
$t1 = time();
exec($cmd, $cmdoutput, $returncode);
$t2 = time();
$dt = $t2 - $t1;
file_put_contents($job['location'] . '/renderer.log', implode("\n", $cmdoutput));
// Rendering fail
if ($returncode) {
    $asset_meta['status'] = 'failed';
    $res = ezmam_asset_metadata_set($album, $asset, $asset_meta);
Ejemplo n.º 2
0
/**
 * SSH with the renderer
 *
 * @param array $renderer The renderer
 * @param string $cmd The command
 * @return string The output
 */
function lib_scheduling_renderer_ssh($renderer, $cmd)
{
    $ssh_pgm = lib_scheduling_config('ssh-path');
    exec($ssh_pgm . ' ' . $renderer['client'] . '@' . $renderer['host'] . ' "' . $cmd . '"', $output, $ret);
    if ($ret) {
        lib_scheduling_alert($ssh_pgm . ' ' . $renderer['client'] . '@' . $renderer['host'] . ' "' . $cmd . '"');
        lib_scheduling_alert('Scheduler::renderer_ssh[fail]{' . $cmd . '} |::>' . implode("\n", $output) . '<::|');
    }
    return implode("\n", $output);
}
Ejemplo n.º 3
0
/**
 * SSH with the renderer
 *
 * @param array $renderer The renderer
 * @param string $cmd The command
 * @return string The output
 */
function lib_scheduling_renderer_ssh(&$renderer, $cmd)
{
    $str_cmd = 'ssh -o ConnectTimeout=' . lib_scheduling_config('ssh-timeout') . ' ' . $renderer['client'] . '@' . $renderer['host'] . ' "' . $cmd . '"';
    exec($str_cmd, $output, $ret);
    if ($ret) {
        $renderer['ssh_error'] = true;
        lib_scheduling_alert('Scheduler::renderer_ssh[fail] |::>' . $output . '<::|');
        return false;
    }
    return implode("\n", $output);
}