drush в drupal 8

Главные вкладки

Аватар пользователя svisch svisch 23 марта 2020 в 11:42

Подскажите пожалуйста, куда пропал drush в 8ке? Раньше при установке была в корне проекта папка "drush". Сейчас же ее нет - только vendor и web. Устанавливаю командой composer create-project drupal/recommended-project my_site_name_dir.
Пробовал запускать drush командой path_to_php vendor/bin/drush - тоже выдает ошибку. Раньше все работало без проблем сразу после установки D8.

Лучший ответ

Комментарии

Аватар пользователя svisch svisch 23 марта 2020 в 11:55

Error: Undefined class constant 'MYSQL_ATTR_USE_BUFFERED_QUERY' in /home/svisch_a/Projects/local/kot/codebase/web/core/lib/Drupal/Core/Database/Driver/mysql/Connection.php on line 404 #0 /home/svisch_a/Projects/local/kot/codebase/web/core/lib/Drupal/Core/Database/Database.php(371): Drupal\Core\Database\Driver\mysql\Connection::open()
#1 /home/svisch_a/Projects/local/kot/codebase/web/core/lib/Drupal/Core/Database/Database.php(166): Drupal\Core\Database\Database::openConnection()
#2 /home/svisch_a/Projects/local/kot/codebase/vendor/drush/drush/src/Boot/DrupalBoot8.php(201): Drupal\Core\Database\Database::getConnection()
#3 /home/svisch_a/Projects/local/kot/codebase/vendor/drush/drush/src/Boot/BootstrapManager.php(358): Drush\Boot\DrupalBoot8->bootstrapDrupalDatabaseValidate()
#4 /home/svisch_a/Projects/local/kot/codebase/vendor/drush/drush/src/Boot/BootstrapManager.php(491): Drush\Boot\BootstrapManager->bootstrapValidate()
#5 /home/svisch_a/Projects/local/kot/codebase/vendor/drush/drush/src/Boot/BootstrapManager.php(427): Drush\Boot\BootstrapManager->bootstrapMax()
#6 /home/svisch_a/Projects/local/kot/codebase/vendor/drush/drush/src/Boot/BootstrapManager.php(396): Drush\Boot\BootstrapManager->bootstrapToPhaseIndex()
#7 /home/svisch_a/Projects/local/kot/codebase/vendor/drush/drush/src/Boot/BootstrapHook.php(28): Drush\Boot\BootstrapManager->bootstrapToPhase()
#8 /home/svisch_a/Projects/local/kot/codebase/vendor/consolidation/annotated-command/src/Hooks/Dispatchers/InitializeHookDispatcher.php(34): Drush\Boot\BootstrapHook->initialize()
#9 /home/svisch_a/Projects/local/kot/codebase/vendor/consolidation/annotated-command/src/Hooks/Dispatchers/InitializeHookDispatcher.php(27): Consolidation\AnnotatedCommand\Hooks\Dispatchers\InitializeHookDispatcher->callInitializeHook()
#10 /home/svisch_a/Projects/local/kot/codebase/vendor/consolidation/annotated-command/src/CommandProcessor.php(145): Consolidation\AnnotatedCommand\Hooks\Dispatchers\InitializeHookDispatcher->initialize()
#11 /home/svisch_a/Projects/local/kot/codebase/vendor/consolidation/annotated-command/src/AnnotatedCommand.php(289): Consolidation\AnnotatedCommand\CommandProcessor->initializeHook()
#12 /home/svisch_a/Projects/local/kot/codebase/vendor/symfony/console/Command/Command.php(221): Consolidation\AnnotatedCommand\AnnotatedCommand->initialize()
#13 /home/svisch_a/Projects/local/kot/codebase/vendor/symfony/console/Application.php(1000): Symfony\Component\Console\Command\Command->run()
#14 /home/svisch_a/Projects/local/kot/codebase/vendor/symfony/console/Application.php(255): Symfony\Component\Console\Application->doRunCommand()
#15 /home/svisch_a/Projects/local/kot/codebase/vendor/symfony/console/Application.php(148): Symfony\Component\Console\Application->doRun()
#16 /home/svisch_a/Projects/local/kot/codebase/vendor/drush/drush/src/Runtime/Runtime.php(118): Symfony\Component\Console\Application->run()
#17 /home/svisch_a/Projects/local/kot/codebase/vendor/drush/drush/src/Runtime/Runtime.php(49): Drush\Runtime\Runtime->doRun()
#18 /home/svisch_a/Projects/local/kot/codebase/vendor/drush/drush/drush.php(72): Drush\Runtime\Runtime->run()
#19 /home/svisch_a/Projects/local/kot/codebase/vendor/drush/drush/drush(4): require('/home/svisch_a/...')
#20 {main}
Error: Undefined class constant 'MYSQL_ATTR_USE_BUFFERED_QUERY' in Drupal\Core\Database\Driver\mysql\Connection::open() (line 404 of /home/svisch_a/Projects/local/kot/codebase/web/core/lib/Drupal/Core/Database/Driver/mysql/Connection.php).
[warning] Drush command terminated abnormally.

Аватар пользователя svisch svisch 23 марта 2020 в 12:16

Вы были правы. Не хватало библиотеки. Установил и все заработало.
Но у меня созрел давно такой вопрос. Почему все расширения php требуются установленные локально, в то время как я использую докер и, по идее, они должны использоваться с контейнера?

Аватар пользователя ivnish ivnish 23 марта 2020 в 11:51
1

drush убрали из recommended поставки. Но его всегда можно установить после развёртывания нового сайта композером

composer require drush/drush

А папки нет, потому что 99% пользователям драша она не нужна.