Drush en Windows: el comando pm-enable necesita un nivel de arranque más alto para ejecutarse

10

Instalé aquia drupal y agregué una carpeta central de drupal a la lista de sitios.

También instalé el instalador de Windows de drush, funciona bien para descargar módulos, pero cuando trato de habilitarlos obtengo esta pantalla:

C:\Documents and Settings\Administrator\Desktop\drupal>drush en ctools
Command pm-enable needs a higher bootstrap level to run - you will       [error]

need invoke drush from a more functional Drupal environment to run
this command.
The drush command 'en ctools' could not be executed.                     [error]

Drush was not able to start (bootstrap) the Drupal database.             [error]

Hint: This error often occurs when Drush is trying to bootstrap a
site that has not been installed or does not have a configured
database.

Drush was attempting to connect to :
  Drupal version    : 7.9
  Site URI          : http://default
  Default theme     : garland
  Administration theme: garland
  PHP configuration : C:\Program Files\Propeople\Drush\Php\php.ini
  Drush version     : 5.0-dev
  Drush configuration:
  Drush alias files :
  Drupal root       : C:/Documents and
Settings/Administrator/Desktop/drupal
  Site path         : sites/default
  Modules path      : sites/all/modules
  Themes path       : sites/all/themes
  File directory path: sites/default/files
  %paths            : Array

You can select another site with a working database setup by
specifying the URI to use with the --uri parameter on the command
line or $options['uri'] in your drushrc.php file.

¿Alguien sabe como resolver esto?

Como nota al margen, ¿cuál es la forma más fácil de emborracharse con la fiesta trabajando en Windows? Cualquier buen tuts?

qwertymk
fuente

Respuestas:

10

Este error particular ocurre cuando drush no puede encontrar el archivo settings.php para leer y "bootstrap" en sí mismo.

Necesita cd en el directorio drupal (raíz del documento) de su instalación de drupal para que pueda leerse en un archivo settings.php.

Parece que su pwd (directorio de trabajo actual) está en su escritorio. En el que voy a hacer una suposición rápida de que ese directorio no está donde se encuentra su instalación de drupal.

Como nota al margen, ¿cuál es la forma más fácil de emborracharse con la fiesta trabajando en Windows? Cualquier buen tuts?

Recomiendo buscar instalar / usar Cygwin en Windows; ya que es una ligera mejora.

Desde allí podrás hacer más cosas con Drush. El sql-sync y varias otras funciones que escucho no funcionan totalmente de manera confiable. Para obtener aún más puntos de bonificación, es posible que desee pasar a un entorno Linux o Mac (algo que tiene un terminal incorporado).

Si debe permanecer con Windows, considere un proyecto de drupal llamado, inicio rápido , que crea una máquina virtual que le permite ejecutar ubuntu a través de un terminal de escritorio remoto.

chrisjlee
fuente
1
También puede configurar archivos de alias del sitio con la información de ruta a su DOCROOT, lo que le permite ejecutar drush desde cualquier lugar.
mpdonadio
en realidad el directorio es C:\Documents and Settings\Administrator\Desktop\drupalla carpeta raíz de la instalación de drupal.
qwertymk
@qwertymk, así que cambia tu directorio y ejecuta drush desde allí.
chrisjlee
5

Si la carpeta de su sitio no tiene el nombre predeterminado, cd a la carpeta que contiene settings.php e intente nuevamente. También puede especificar la raíz y el sitio explícitamente con las opciones --root y --uri. Ver drush topicpara más ayuda drush; en particular, lea el tema de alias de ejemplo.

Tenga en cuenta que todavía hay problemas abiertos con Drush en Windows. Para obtener el mejor resultado, asegúrese de estar utilizando el último instalador (23 de noviembre a partir de este escrito).

greg_1_anderson
fuente
1

Tuve un problema similar pero la causa raíz fue un poco diferente. Drush no pudo encontrar el archivo php.ini. Una manera fácil de verificar si tiene el mismo problema es ejecutar drush statusy ver si el PHP Configurationvalor está en blanco o no.

Si es así, la forma rápida y fácil de resolver este problema es especificar la variable de ruta PHPRC Environment Settingsy señalarla al archivo php.ini correcto.

Nerrve
fuente
¿Dónde especifico la ruta PHPRC? :)
Vic
1

Desde mi experiencia, este error se produce cuando php invocado por drush no carga los módulos adicionales que se usan cuando php se usa dentro del servidor web (como pdo y pdo_mysql).

Encuentre dónde se encuentran los archivos como pdo.ini y pdo_mysql.ini en su sistema. Luego configure la variable de entorno PHP_INI_SCAN_DIR para que apunte a ese directorio e intente ejecutar drush nuevamente.

Міша
fuente
0

probablemente me olvidó agregar un docroot / sites / default / settings.local.php

<?php
$databases = array(
    'default' => array(
            'default' => array(
                    'database' => 'database_name',
                    'username' => 'root',
                    'password' => '',
                    'host' => '127.0.0.1',
                    'port' => '',
                    'driver' => 'mysql',
                    'prefix' => '',
            ),
    ),
);
$conf['file_temporary_path'] = '/tmp';
Adrian Sweeney
fuente
0

Tener problemas para habilitar los módulos con Drush.

SO: Windows 10 | Servidor Wamp 3.0.6 de 6 bits | Apache 2.4.23 | PHP 5.6.25 | Mysql 5.7.14

estado de $ drush

Versión de Drupal: 8.3.3

URI del sitio: http: // predeterminado

Controlador de base de datos: mysql

Nombre de host de la base de datos: 127.0.0.1

Puerto de base de datos: 3306

Nombre de usuario de la base de datos: root

Nombre de la base de datos: d8

Configuración de PHP: C: \ wamp64 \ bin \ php \ php5.6.25 \ php.ini

SO PHP: WINNT

Script de drush: C: / Users / {username} / AppData / Roaming / Composer / vendor / dru sh / drush / drush.php

Versión drush: 8.1.12

Directorio temporal de Drush: C: \ Users {nombre de usuario} \ AppData \ Local \ Temp

Configuración de drush:

Drush alias archivos:

Raíz de Drupal: C: \ wamp64 \ www \ d8

Archivo de configuración de Drupal: sites / default / settings.php

Ruta del sitio: sitios / predeterminado

Ruta de configuración de sincronización: sitios / predeterminado / archivos / config_E6SAOaCUH8rQXxYNzKf6ZlT-u VwHuORJbi1aeT8x1zE4nMxT8FxUGFr36_Cjtq_ACGAGLt4_9g / sy nc

------ Salida de Github Bash -------

laxman-nb MINGW64 / c / wamp64 / www / d8 / sites / default

$ drush cr

El comando cache-rebuild necesita un nivel de arranque más alto para ejecutarse: deberá invocar drush desde un [error] más funcional

Entorno Drupal para ejecutar este comando.

El comando cache-rebuild requiere Drupal core versión 8+ para ejecutarse. [Error]

El comando drush 'cr' no se pudo ejecutar. [error]

------ Salida de Github Bash -------

Me puede ayudar con esto.!

Gracias de antemano.

laxman2021
fuente