[CQ] Add Symfony abstract task

This commit is contained in:
Andrés Montañez 2017-04-14 15:43:27 -03:00
parent 261015981b
commit ddee3f0226
5 changed files with 44 additions and 33 deletions

View file

@ -2,6 +2,7 @@ CHANGELOG for 3.X
================= =================
* 3.2.0 (2017-04-xx) * 3.2.0 (2017-04-xx)
* Improve code quality, remove duplications on Symfony Tasks.
* Improve code quality, remove duplications on Composer Tasks. * Improve code quality, remove duplications on Composer Tasks.
* [PR#364] Allow to define custom timeout to Composer:Install * [PR#364] Allow to define custom timeout to Composer:Install

View file

@ -0,0 +1,38 @@
<?php
/*
* This file is part of the Magallanes package.
*
* (c) Andrés Montañez <andres@andresmontanez.com>
*
* For the full copyright and license information, please view the LICENSE
* file that was distributed with this source code.
*/
namespace Mage\Task\BuiltIn\Symfony;
use Mage\Task\AbstractTask;
/**
* Abstract Symfony Task
*
* @author Andrés Montañez <andresmontanez@gmail.com>
*/
abstract class AbstractSymfonyTask extends AbstractTask
{
protected function getOptions()
{
$options = array_merge(
['console' => 'bin/console', 'env' => 'dev', 'flags' => ''],
$this->getSymfonyOptions(),
$this->runtime->getMergedOption('symfony'),
$this->options
);
return $options;
}
protected function getSymfonyOptions()
{
return [];
}
}

View file

@ -18,7 +18,7 @@ use Mage\Task\AbstractTask;
* *
* @author Andrés Montañez <andresmontanez@gmail.com> * @author Andrés Montañez <andresmontanez@gmail.com>
*/ */
class AssetsInstallTask extends AbstractTask class AssetsInstallTask extends AbstractSymfonyTask
{ {
public function getName() public function getName()
{ {
@ -41,14 +41,8 @@ class AssetsInstallTask extends AbstractTask
return $process->isSuccessful(); return $process->isSuccessful();
} }
protected function getOptions() protected function getSymfonyOptions()
{ {
$options = array_merge( return ['target' => 'web', 'flags' => '--symlink --relative'];
['console' => 'bin/console', 'env' => 'dev', 'target' => 'web', 'flags' => '--symlink --relative'],
$this->runtime->getMergedOption('symfony'),
$this->options
);
return $options;
} }
} }

View file

@ -18,7 +18,7 @@ use Mage\Task\AbstractTask;
* *
* @author Andrés Montañez <andresmontanez@gmail.com> * @author Andrés Montañez <andresmontanez@gmail.com>
*/ */
class CacheClearTask extends AbstractTask class CacheClearTask extends AbstractSymfonyTask
{ {
public function getName() public function getName()
{ {
@ -40,15 +40,4 @@ class CacheClearTask extends AbstractTask
return $process->isSuccessful(); return $process->isSuccessful();
} }
protected function getOptions()
{
$options = array_merge(
['console' => 'bin/console', 'env' => 'dev', 'flags' => ''],
$this->runtime->getMergedOption('symfony'),
$this->options
);
return $options;
}
} }

View file

@ -18,7 +18,7 @@ use Mage\Task\AbstractTask;
* *
* @author Andrés Montañez <andresmontanez@gmail.com> * @author Andrés Montañez <andresmontanez@gmail.com>
*/ */
class CacheWarmupTask extends AbstractTask class CacheWarmupTask extends AbstractSymfonyTask
{ {
public function getName() public function getName()
{ {
@ -40,15 +40,4 @@ class CacheWarmupTask extends AbstractTask
return $process->isSuccessful(); return $process->isSuccessful();
} }
protected function getOptions()
{
$options = array_merge(
['console' => 'bin/console', 'env' => 'dev', 'flags' => ''],
$this->runtime->getMergedOption('symfony'),
$this->options
);
return $options;
}
} }