web-dev-qa-db-ja.com

Bootstrap Drush 9.1.0で失敗する

9.1.0にアップグレードする前にDrush 9を動作させていましたが、Bootstrapが失敗し、なぜ「Bootstrap failed」または「!」と表示されるのでしょうか。 Drupal rootが見つかりません。Drupal固有のコマンドを表示するには、-rootまたは@siteAliasを渡してください。 "

  • ビルドディレクトリは、ベンダーディレクトリとは別のものです。 (以下の短縮表記は[build]および[composer]です)
  • デバッグされたコマンドがいくつかあります。1つはエイリアスを使用しようとするもので、もう1つはhelpコマンドを使用するだけです。
  • いくつかの追加のエイリアスパス(最後の2つ)があり、これらは無効であり、どこから来たのかわかりません(それらはdrush.ymlのどこにもありません)。ただし、エイリアスファイルは見つかりました... @default.devは機能しているようです。
  • -rまたは-uriを追加しても(またはエイリアスの代わりに使用しても)違いはありません...それでもBootstrap=が失敗します。

Drush 9の以前のバージョンから何が変更されましたか、またはここで何が間違っていますか?ある時点でDrush 8にも同様のことがありましたが、そこで見たソリューションはどれも機能せず、Drush 9に固有のソリューションは何も見つかりませんでした。

[794e@794elmp01 htdocs]$ drush @default.dev cr -d
 [preflight] Config paths: /../.drush/drush.yml,/var/..[composer]/vendor/drush/drush/drush.yml
 [preflight] Alias paths: /../.drush/sites,/var/..[build]/sites,/var/..[build]/drush/sites,/var/..[composer]/drush/sites
 [preflight] Commandfile search paths: /var/../vendor/drush/drush/src
 [bootstrap] Bootstrap to site [0.2 sec, 10.19 MB]
  [Exception]
  Bootstrap failed.
Exception trace:
 () at /var/..[composer]/vendor/drush/drush/src/Boot/BootstrapHook.php:31
 Drush\Boot\BootstrapHook->initialize() at /var/..[composer]/vendor/consolidation/annotated-command/src/Hooks/Dispatchers/InitializeHookDispatcher.php:34
 Consolidation\AnnotatedCommand\Hooks\Dispatchers\InitializeHookDispatcher->callInitializeHook() at /var/..[composer]/vendor/consolidation/annotated-command/src/Hooks/Dispatchers/InitializeHookDispatcher.php:27
 Consolidation\AnnotatedCommand\Hooks\Dispatchers\InitializeHookDispatcher->initialize() at /var/..[composer]/vendor/consolidation/annotated-command/src/CommandProcessor.php:117
 Consolidation\AnnotatedCommand\CommandProcessor->initializeHook() at /var/..[composer]/vendor/consolidation/annotated-command/src/AnnotatedCommand.php:391
 Consolidation\AnnotatedCommand\AnnotatedCommand->initialize() at /var/..[composer]/vendor/symfony/console/Command/Command.php:229
 Symfony\Component\Console\Command\Command->run() at /var/..[composer]/vendor/symfony/console/Application.php:859
 Symfony\Component\Console\Application->doRunCommand() at /var/..[composer]/vendor/symfony/console/Application.php:206
 Symfony\Component\Console\Application->doRun() at /var/..[composer]/vendor/symfony/console/Application.php:125
 Symfony\Component\Console\Application->run() at /var/..[composer]/vendor/drush/drush/src/Runtime/Runtime.php:112
 Drush\Runtime\Runtime->doRun() at /var/..[composer]/vendor/drush/drush/src/Runtime/Runtime.php:41
 Drush\Runtime\Runtime->run() at /var/..[composer]/vendor/drush/drush/drush.php:64
 require() at /var/..[composer]/vendor/drush/drush/drush:4
drush list -d
 [preflight] Config paths: /home/../.drush/drush.yml,/var/..[composer]/vendor/drush/drush/drush.yml
 [preflight] Alias paths: /home/../.drush/sites,/var/..[build]/sites,/var/..[build]/drush/sites,/var/..[composer]/drush/sites
 [preflight] Commandfile search paths: /var/..[composer]/vendor/drush/drush/src
 [bootstrap] Bootstrap to max [0.22 sec, 10.14 MB]
 [debug] Trying to bootstrap as far as we can [0.22 sec, 10.15 MB]
Drush Commandline Tool 9.1.0
! [NOTE] Drupal root not found. Pass --root or a @siteAlias in order to see Drupal-specific commands.

また、追加情報:これはdefault.site.ymlのサイト参照です:

dev:
  root: /var/..[build]/htdocs
  uri: http://dev.our.internal.url.com

ルートとURIが正しいこと、およびURIがサーバーからアクセス可能であることを確認しました(パブリックURIではありません)。

編集:Drushステータスの追加(リクエストごと)

 drush status -d
 [preflight] Config paths: /home/../.drush/drush.yml,/var/[composer]/vendor/drush/drush/drush.yml
 [preflight] Alias paths: /home/../.drush/sites,/var/[build]/sites,/var/[build]/sites,/var/[composer]/drush/sites
 [preflight] Commandfile search paths: /var/[composer[/vendor/drush/drush/src
 [bootstrap] Bootstrap to max [0.19 sec, 10.14 MB]
 [debug] Trying to bootstrap as far as we can [0.19 sec, 10.15 MB]
 PHP binary    : /usr/bin/php
 PHP config    : /etc/php.ini
 PHP OS        : Linux
 Drush script  : /var/[composer]/vendor/bin/drush
 Drush version : 9.1.0
 Drush temp    : /tmp
 Drush configs : /home/../.drush/drush.yml
                 /var/[composer]/vendor/drush/drush/drush.yml
3
Adrained

私は今日同じ問題につまずいた(そして落ちた)。

あなたの仕事(drupalのdocrootでcomposer.jsonが欠落している)に続いて、足場が(drupal-projectのcomposer.json内に)配置されていることを確認することで、この問題を回避することができました。例:

    "post-install-cmd": [
        "@drupal-scaffold",
        "DrupalProject\\composer\\ScriptHandler::createRequiredFiles"
    ],
    "post-update-cmd": [
        "@drupal-scaffold",
        "DrupalProject\\composer\\ScriptHandler::createRequiredFiles"
    ]

これはかなり明白かもしれませんが、drush 9.2.1がうまく動作しました。

幸運を

0

私はこの問題を抱えており、これが機能することがわかりました:

rm -Rf vendor/drush
composer install

クレジット: https://github.com/drush-ops/drush/issues/2959#issuecomment-33205477

これにより、drushが削除され、composer.lockファイルを使用して、drushで指定されたバージョンからdrushを復元します。

私のセットアップでは、drushのバージョンは9.5.2です(上記のコマンドを書いている時点で実行した後)。

0
therobyouknow