drush icon indicating copy to clipboard operation
drush copied to clipboard

Execute drush with symlinked root results in recursive loop

Open JTubex opened this issue 4 years ago • 2 comments

When executing drush with a symlinked root, results in a recursive loop:

Command to reproduce: drush @subsite -r /[symlinked_directory]/htdocs status --debug

Output: Drush Launcher Version: 0.7.2 ROOT: /[symlinked_directory]/htdocs/web/sites/pbleiner DRUSH VERSION: 10 DRUPAL ROOT: /[symlinked_directory]/htdocs/web COMPOSER ROOT: /[symlinked_directory]/htdocs VENDOR ROOT: /[symlinked_directory]/htdocs/vendor [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'. [preflight] Redispatch to site-local Drush: '/[symlinked_directory]/htdocs/vendor/drush/drush/drush'.

JTubex avatar May 20 '21 09:05 JTubex

I'm a little hesitant to change this - not sure about repercussions. Can you work around the issue by explicitly passing the non-symlinked path as --root?

I'd like to leave it here for folks to use as a patch if they need it.

weitzman avatar Jun 06 '21 12:06 weitzman

The plan is to leave this as is in Drush 11 and remove this code path in Drush 12. Drush will no longer function as a global launcher. This should avoid the situation mentioned here,

weitzman avatar Jan 06 '22 21:01 weitzman

Unclear if this is still an issue after #5521

weitzman avatar May 12 '23 10:05 weitzman