Drupal → Проблема работы с Drush 13.3+ в Cygwin BASH

25.11.2024

В Drush с версии 13.3.0 изменили процесс запуска основного скрипта, отчего в Cygwin BASH перестало работать выполнение через vendor/bin/drush.

Как теперь происходит бутстрап:

1. vendor/bin/drushexec "C:/path-to-site/vendor/drush/drush" "$@"
2. vendor/drush/drushexec "/cygdrive/c/path-to-site/vendor/bin/drush.php" "$@"
3. vendor/bin/drush.phpinclude 'C:/path-to-site/vendor/bin/../drush/drush/drush.php';
4. vendor/drush/drush/drush.php — настройка окружения и выполнение команды

Проблема появляется во втором пункте — когда sh-скрипт vendor/drush/drush пытается запустить shebang-php-скрипт vendor/bin/drush.php используя полный путь в формате cygwin (/cygdrive/c/path-to-site/...). Дальше PHP не находит файл и выбрасывает ошибку "Could not open input file: /cygdrive/c/path-to-site/vendor/bin/drush.php", потому что ему нужен либо относительный путь, либо абсолютный в формате Windows - C:/path-to-site/....

Чтобы ошибка не возникала надо пропускать пункты 1-2 и из консоли сразу запускать vendor/bin/drush.php:

vendor/bin/drush.php status
vendor/bin/drush.php cache-rebuild
vendor/bin/drush.php generate module
Написанное актуально для
Drush 13.3+
Похожие записи

Добавить комментарий