AssetsInstallTask::execute()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 14
Code Lines 9

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 9
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 9
c 0
b 0
f 0
nc 1
nop 0
dl 0
loc 14
ccs 9
cts 9
cp 1
crap 1
rs 9.9666
1
<?php
2
3
/*
4
 * This file is part of the Magallanes package.
5
 *
6
 * (c) Andrés Montañez <[email protected]>
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
namespace Mage\Task\BuiltIn\Symfony;
13
14
use Symfony\Component\Process\Process;
15
16
/**
17
 * Symfony Task - Install Assets
18
 *
19
 * @author Andrés Montañez <[email protected]>
20
 */
21
class AssetsInstallTask extends AbstractSymfonyTask
22
{
23 48
    public function getName(): string
24
    {
25 48
        return 'symfony/assets-install';
26
    }
27
28 20
    public function getDescription(): string
29
    {
30 20
        return '[Symfony] Assets Install';
31
    }
32
33 19
    public function execute(): bool
34
    {
35 19
        $options = $this->getOptions();
36 19
        $command = sprintf(
37
            '%s assets:install %s --env=%s %s',
38 19
            $options['console'],
39 19
            $options['target'],
40 19
            $options['env'],
41 19
            $options['flags']
42
        );
43
44 19
        $process = $this->runtime->runCommand(trim($command));
45
46 19
        return $process->isSuccessful();
47
    }
48
49 19
    protected function getSymfonyOptions(): array
50
    {
51 19
        return ['target' => 'web', 'flags' => '--symlink --relative'];
52
    }
53
}
54