1
0
mirror of https://github.com/hauke68/Magallanes.git synced 2025-08-25 21:00:18 +02:00
Magallanes/Mage/Task/TaskAbstract.php
Andrs Montaez 9cf720c602 Rollback awareness.
Tasks are aware if they are in rollbacks; they will be invoked only if
they implement the new interface RollbackAware.
2012-01-03 23:25:42 -02:00

40 lines
1.0 KiB
PHP

<?php
abstract class Mage_Task_TaskAbstract
{
protected $_config = null;
protected $_inRollback = false;
public abstract function getName();
public abstract function run();
public final function __construct(Mage_Config $config, $inRollback = false)
{
$this->_config = $config;
$this->_inRollback = $inRollback;
}
public function inRollback()
{
return $this->_inRollback;
}
public function init()
{
}
protected final function _runLocalCommand($command, &$output = null)
{
return Mage_Console::executeCommand($command, $output);
}
protected final function _runRemoteCommand($command, &$output = null)
{
$localCommand = 'ssh '
. $this->_config->deployment('user') . '@' . $this->_config->getHost() . ' '
. '"cd ' . $this->_config->deployment('to') . ' && '
. $command . '"';
return $this->_runLocalCommand($localCommand, $output);
}
}