drush / drush dev-master requiere codegyre / robo ~ 1.0.0-beta1

10

Estoy haciendo la transición de un sitio de Drupal 6 a Drupal 8.1, así que siguiendo las instrucciones oficiales, configuré una nueva instalación en su propio directorio. Como este es solo un sitio, seguí las instrucciones para poner mis credenciales de la base de datos en sites / default / default.settings.php después de la declaración de la matriz de $ bases de datos.

La ejecución drush --statusdevuelve lo siguiente.

Drush version          :  8.1-dev                                          
Drush temp directory   :  /tmp                                             
Drush configuration    :                                                   
Drush alias files      :                                                   
Drupal root            :  /media/psf/Home/apps/newp                        
Drupal Settings File   :  MISSING

Dado que este Drupal es 8.1-dev, eso debe significar que necesito actualizarlo. Como se trata de una instalación global con Composer, ejecuto composer global update.

Sus requisitos no se pudieron resolver con un conjunto instalable de paquetes drush / drush dev-master requiere codegyre / robo ~ 1.0.0-beta1

Verificar la página drush-ops en github no muestra ninguna anomalía como esta ni mi búsqueda en Google.

¿Qué estoy pasando por alto?

sam452
fuente
El mensaje básicamente dice que necesita instalar codegyre / robo ~ 1.0.0-beta1
No Sssweat

Respuestas:

21

La rama de desarrollo / maestro de Drush es una versión de desarrollo, por lo que depende de componentes no estables como Robo 1.0.0-beta1. Composer rechazará este componente a menos que lo tenga "minimum-stability": "beta"en su archivo composer.json. Tenga en cuenta que Drush tiene esta configuración, pero si incluye Drush de algún otro proyecto (por ejemplo, su sitio Drupal), también deberá establecer su estabilidad mínima en el archivo composer.json de nivel superior de su proyecto.

Quizás una solución más razonable sería ejecutar composer require drush/drush:~8y utilizar la versión estable de Drush.

ACTUALIZAR

Drush masterahora está utilizando la versión estable de Robo ~ 1, por lo que debería ser más fácil instalar Drush a través de composer require, al menos por el momento. Sin embargo, siempre es posible que en algún momento en el futuro, la versión de desarrollo de Drush se vuelva dependiente de características solo disponibles en alguna versión no estable de una de sus dependencias, por lo que siempre debe estar preparado para establecer su estabilidad mínima cuando que requiere una versión de desarrollo de Drush, o cualquier otro proyecto Composer.

greg_1_anderson
fuente
Creo que el OP instaló la instantánea de desarrollo porque están usando Drupal 8.1-dev. Probablemente no saben que Drush 8 es compatible con esa versión de Drupal.
kiamlaluno
La versión anterior de Drush se instaló antes de que Drupal 8 saliera. Los documentos drush-ops asumen que todos conocen Composer lo suficiente como para derivar el comando correcto.
sam452
Este comando actualiza correctamente el drush a una versión más reciente. Después de ejecutar el estado drush, esperaba que se encontrara el archivo de configuración de Drupal, pero todavía está "FALTA". ¿Dónde debería estar para un valor predeterminado si no donde lo dejé?
sam452
Parece que para que Drupal encuentre mi archivo de configuración, parece que tengo que eliminar el "valor predeterminado" en el nombre de archivo, como la configuración de Drupal 7.
sam452
recuerde usar la ruta completa para drush ../vendor/bin/drush (cuando está en / web fuera de docroor) si no tiene un alias y obtiene: $ drush The program 'drush' is currently not installed. You can install it by typing: sudo apt-get install drush luego use: $ ../vendor/bin/drush Execute a drush command. Run drush help [comando] `para ver el comando específico ayuda. Corre drush topicpara leer aún más documentación ''
Therobyouknow