_config = $config;
        
        // Run Pre-Deployment Tasks
        $this->_runNonDeploymentTasks('pre', $config);
        
        // Run Tasks for Deployment
        foreach ($config->getHosts() as $host) {
            $taskConfig = $config->getConfig($host);
            $tasks = 0;
            $completedTasks = 0;
            Mage_Console::output('Deploying to ' . $host . '');
            
            foreach ($config->getTasks() as $taskName) {
                $tasks++;
                $task = Mage_Task_Factory::get($taskName, $taskConfig);
                $task->init();
                
                Mage_Console::output('Running ' . $task->getName() . ' ... ', 2, false);
                $result = $task->run();
                if ($result == true) {
                    Mage_Console::output('OK');
                    $completedTasks++;
                } else {
                    Mage_Console::output('FAIL');
                }
            }
            
            if ($completedTasks == $tasks) {
                $tasksColor = 'green';                
            } else {
                $tasksColor = 'red';                
            }
            Mage_Console::output('Deployment to ' . $host . ' compted: <' . $tasksColor . '>' . $completedTasks . '/' . $tasks . '' . $tasksColor . '> tasks done.' . PHP_EOL . PHP_EOL);
        }
        
        // Run Post-Deployment Tasks
        $this->_runNonDeploymentTasks('post', $config);
    }
    private function _runNonDeploymentTasks($type, Mage_Config $config)
    {
        Mage_Console::output('Starting ' . ucfirst($type) . '-Deployment tasks:');
        $taskConfig = $config->getConfig();
        $tasks = 0;
        $completedTasks = 0;
        foreach ($config->getTasks($type) as $taskName) {
            $tasks++;
            $task = Mage_Task_Factory::get($taskName, $taskConfig);
            $task->init();
                
            Mage_Console::output('Running ' . $task->getName() . ' ... ', 2, false);
            $result = $task->run();
            if ($result == true) {
                Mage_Console::output('OK');
                $completedTasks++;
            } else {
                Mage_Console::output('FAIL');
            }            
        }
        if ($completedTasks == $tasks) {
            $tasksColor = 'green';                
        } else {
            $tasksColor = 'red';                
        }
        Mage_Console::output('Finished ' . ucfirst($type) . '-Deployment tasks: <' . $tasksColor . '>' . $completedTasks . '/' . $tasks . '' . $tasksColor . '> tasks done.' . PHP_EOL . PHP_EOL);
        
    }
    
    
}