acorn icon indicating copy to clipboard operation
acorn copied to clipboard

wp acorn optimize: "PHP Warning: unlink(xxx): No such file or directory"

Open pyksid opened this issue 1 year ago • 1 comments

Version

3.3.1

What did you expect to happen?

wp acorn optimize runs successfully, without PHP warnings.

What actually happens?

While deploying a new release of a WordPress website (build with Bedrock + Sage 10), when running wp acorn optimize (as advised here), an PHP warning occured:

PHP Warning:
unlink(/var/www/html/web/app/cache/acorn/framework/cache/config.php): No such file or directory in /var/www/html/vendor/illuminate/filesystem/Filesystem.php on line 293

Steps to reproduce

  1. Deploy a new release of a WordPress website, similar as trellis deploy role does.
  2. Run wp acorn optimize after deploy completed.

System info

Debian 12

Log output

PHP Warning:
unlink(/var/www/html/web/app/cache/acorn/framework/cache/config.php): No such file or directory in /var/www/html/vendor/illuminate/filesystem/Filesystem.php on line 293

Backtrace:
#(0): X\{closure}()
#1 /var/www/html/vendor/illuminate/filesystem/Filesystem.php(293): unlink()
#2 /var/www/html/vendor/roots/acorn/src/Illuminate/Foundation/Console/ConfigClearCommand.php(64): delete()
#3 /var/www/html/vendor/illuminate/container/BoundMethod.php(36): handle()
#4 /var/www/html/vendor/illuminate/container/Util.php(41): Illuminate\Container\{closure}()
#5 /var/www/html/vendor/illuminate/container/BoundMethod.php(93): unwrapIfClosure()
#6 /var/www/html/vendor/illuminate/container/BoundMethod.php(35): callBoundMethod()
#7 /var/www/html/vendor/illuminate/container/Container.php(661): call()
#8 /var/www/html/vendor/illuminate/console/Command.php(183): call()
#9 /var/www/html/vendor/symfony/console/Command/Command.php(326): execute()
#10 /var/www/html/vendor/illuminate/console/Command.php(152): run()
#11 /var/www/html/vendor/illuminate/console/Concerns/CallsCommands.php(67): run()
#12 /var/www/html/vendor/illuminate/console/Concerns/CallsCommands.php(40): runCommand()
#13 /var/www/html/vendor/roots/acorn/src/Illuminate/Foundation/Console/ConfigCacheCommand.php(69): callSilent()
#14 /var/www/html/vendor/illuminate/container/BoundMethod.php(36): handle()
#15 /var/www/html/vendor/illuminate/container/Util.php(41): Illuminate\Container\{closure}()
#16 /var/www/html/vendor/illuminate/container/BoundMethod.php(93): unwrapIfClosure()
#17 /var/www/html/vendor/illuminate/container/BoundMethod.php(35): callBoundMethod()
#18 /var/www/html/vendor/illuminate/container/Container.php(661): call()
#19 /var/www/html/vendor/illuminate/console/Command.php(183): call()
#20 /var/www/html/vendor/symfony/console/Command/Command.php(326): execute()
#21 /var/www/html/vendor/illuminate/console/Command.php(152): run()
#22 /var/www/html/vendor/illuminate/console/Concerns/CallsCommands.php(67): run()
#23 /var/www/html/vendor/roots/acorn/src/Roots/Acorn/Console/Concerns/GracefullyCallsCommands.php(48): runCommand()
#24 /var/www/html/vendor/roots/acorn/src/Roots/Acorn/Console/Commands/OptimizeCommand.php(19): gracefulCall()
#25 /var/www/html/vendor/illuminate/container/BoundMethod.php(36): handle()
#26 /var/www/html/vendor/illuminate/container/Util.php(41): Illuminate\Container\{closure}()
#27 /var/www/html/vendor/illuminate/container/BoundMethod.php(93): unwrapIfClosure()
#28 /var/www/html/vendor/illuminate/container/BoundMethod.php(35): callBoundMethod()
#29 /var/www/html/vendor/illuminate/container/Container.php(661): call()
#30 /var/www/html/vendor/illuminate/console/Command.php(183): call()
#31 /var/www/html/vendor/symfony/console/Command/Command.php(326): execute()
#32 /var/www/html/vendor/illuminate/console/Command.php(152): run()
#33 /var/www/html/vendor/symfony/console/Application.php(1078): run()
#34 /var/www/html/vendor/symfony/console/Application.php(324): doRunCommand()
#35 /var/www/html/vendor/symfony/console/Application.php(175): doRun()
#36 /var/www/html/vendor/illuminate/console/Application.php(102): run()
#37 /var/www/html/vendor/roots/acorn/src/Illuminate/Foundation/Console/Kernel.php(155): run()
#38 /var/www/html/vendor/roots/acorn/src/Roots/Acorn/Bootloader.php(196): handle()
#(39): Roots\Acorn\{closure}()
#40 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/CommandFactory.php(102): call_user_func()
#(41): WP_CLI\Dispatcher\{closure}()
#42 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/WP_CLI/Dispatcher/Subcommand.php(488): call_user_func()
#43 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(436): invoke()
#44 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(459): run_command()
#45 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/WP_CLI/Runner.php(1284): run_command_and_exit()
#46 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/WP_CLI/Bootstrap/LaunchRunner.php(28): start()
#47 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/bootstrap.php(83): process()
#48 phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/wp-cli.php(32): WP_CLI\bootstrap()
#49 phar:///usr/local/bin/wp/php/boot-phar.php(20): include('phar:///usr/local/bin/wp/vendor/wp-cli/wp-cli/php/wp-cli.php')
#50 /usr/local/bin/wp(4): include('phar:///usr/local/bin/wp/php/boot-phar.php')

Please confirm this isn't a support request.

No

pyksid avatar Mar 02 '24 09:03 pyksid

This is fixed in 4.x – not sure if @QWp6t wants to back-port this.

Log1x avatar Mar 05 '24 21:03 Log1x

I mistook the above with a different issue.

Looking more into this, while I have never seen this situation arise before, it appears to stem upstream from Laravel as seen here.

I feel like there is some type of misconfiguration for this to be happening in the first place as I have extensively deployed using acorn optimize with Trellis and Envoyer.

If you continue to reproduce this on v4 and you are sure everything has proper permissions – feel free to respond on this issue and I'll try to further help you – but I feel like something unrelated to Acorn/Laravel is being weird. 🤔

Log1x avatar Mar 18 '24 21:03 Log1x