@@ -27,23 +27,23 @@ function install(): void
2727{
2828 io ()->title ('Installing QA tooling ' );
2929
30- docker_compose_run ('composer install -o ' , workDir: '/var/www/tools/php-cs-fixer ' );
31- docker_compose_run ('composer install -o ' , workDir: '/var/www/tools/phpstan ' );
32- docker_compose_run ('composer install -o ' , workDir: '/var/www/tools/twig-cs-fixer ' );
30+ docker_compose_run ([ 'composer ' , ' install ' , ' -o '] , workDir: '/var/www/tools/php-cs-fixer ' );
31+ docker_compose_run ([ 'composer ' , ' install ' , ' -o '] , workDir: '/var/www/tools/phpstan ' );
32+ docker_compose_run ([ 'composer ' , ' install ' , ' -o '] , workDir: '/var/www/tools/twig-cs-fixer ' );
3333}
3434
3535#[AsTask(description: 'Updates tooling ' )]
3636function update (): void
3737{
3838 io ()->title ('Updating QA tooling ' );
3939
40- docker_compose_run ('composer update -o ' , workDir: '/var/www/tools/php-cs-fixer ' );
41- docker_compose_run ('composer update -o ' , workDir: '/var/www/tools/phpstan ' );
42- docker_compose_run ('composer update -o ' , workDir: '/var/www/tools/twig-cs-fixer ' );
40+ docker_compose_run ([ 'composer ' , ' update ' , ' -o '] , workDir: '/var/www/tools/php-cs-fixer ' );
41+ docker_compose_run ([ 'composer ' , ' update ' , ' -o '] , workDir: '/var/www/tools/phpstan ' );
42+ docker_compose_run ([ 'composer ' , ' update ' , ' -o '] , workDir: '/var/www/tools/twig-cs-fixer ' );
4343}
4444
4545/**
46- * @param string[] $rawTokens
46+ * @param list< string> $rawTokens
4747 */
4848#[AsTask(description: 'Runs PHPUnit ' , aliases: ['phpunit ' ])]
4949function phpunit (#[AsRawTokens] array $ rawTokens = []): int
@@ -54,7 +54,7 @@ function phpunit(#[AsRawTokens] array $rawTokens = []): int
5454
5555 io ()->section ('Running PHPUnit... ' );
5656
57- return docker_exit_code ('vendor/bin/phpunit ' . implode ( ' ' , $ rawTokens) );
57+ return docker_exit_code ([ 'vendor/bin/phpunit ' , ... $ rawTokens] );
5858}
5959
6060#[AsTask(description: 'Runs PHPStan ' , aliases: ['phpstan ' ])]
@@ -68,8 +68,10 @@ function phpstan(
6868
6969 io ()->section ('Running PHPStan... ' );
7070
71- $ options = $ baseline ? '--generate-baseline --allow-empty-baseline ' : '' ;
72- $ command = \sprintf ('phpstan analyse --memory-limit=-1 %s -v ' , $ options );
71+ $ command = ['phpstan ' , 'analyse ' , '--memory-limit=-1 ' , '-v ' ];
72+ if ($ baseline ) {
73+ $ command = [...$ command , '--generate-baseline ' , '--allow-empty-baseline ' ];
74+ }
7375
7476 return docker_exit_code ($ command , workDir: '/var/www ' );
7577}
@@ -82,7 +84,7 @@ function securityAudit(): int
8284 if (is_file ("{$ basePath }/composer.lock " )) {
8385 io ()->text ('Running Composer audit... ' );
8486
85- $ exitCode = docker_exit_code ('composer audit ' );
87+ $ exitCode = docker_exit_code ([ 'composer ' , ' audit '] );
8688
8789 if (0 !== $ exitCode ) {
8890 return $ exitCode ;
@@ -92,7 +94,7 @@ function securityAudit(): int
9294 if (is_file ("{$ basePath }/yarn.lock " )) {
9395 io ()->text ('Running Yarn audit... ' );
9496
95- $ exitCode = docker_exit_code ('yarn audit ' );
97+ $ exitCode = docker_exit_code ([ 'yarn ' , ' audit '] );
9698
9799 if (0 !== $ exitCode ) {
98100 return $ exitCode ;
@@ -102,7 +104,7 @@ function securityAudit(): int
102104 if (is_file ("{$ basePath }/package-lock.json " )) {
103105 io ()->text ('Running NPM audit... ' );
104106
105- return docker_exit_code ('npm audit ' );
107+ return docker_exit_code ([ 'npm ' , ' audit '] );
106108 }
107109
108110 return 0 ;
@@ -118,10 +120,10 @@ function cs(bool $dryRun = false): int
118120 io ()->section ('Running PHP CS Fixer... ' );
119121
120122 if ($ dryRun ) {
121- return docker_exit_code ('php-cs-fixer fix --dry-run --diff ' , workDir: '/var/www ' );
123+ return docker_exit_code ([ 'php-cs-fixer ' , ' fix ' , ' --dry-run ' , ' --diff '] , workDir: '/var/www ' );
122124 }
123125
124- return docker_exit_code ('php-cs-fixer fix -v ' , workDir: '/var/www ' );
126+ return docker_exit_code ([ 'php-cs-fixer ' , ' fix ' , ' -v '] , workDir: '/var/www ' );
125127}
126128
127129#[AsTask(description: 'Fixes Twig Coding Style ' , aliases: ['twig-cs ' ])]
@@ -134,8 +136,8 @@ function twigCs(bool $dryRun = false): int
134136 io ()->section ('Running Twig CS Fixer... ' );
135137
136138 if ($ dryRun ) {
137- return docker_exit_code ('twig-cs-fixer ' , workDir: '/var/www ' );
139+ return docker_exit_code ([ 'twig-cs-fixer ' ] , workDir: '/var/www ' );
138140 }
139141
140- return docker_exit_code ('twig-cs-fixer --fix ' , workDir: '/var/www ' );
142+ return docker_exit_code ([ 'twig-cs-fixer ' , ' --fix '] , workDir: '/var/www ' );
141143}
0 commit comments