it-swarm-es.com

Drush activar / desactivar módulos de desarrollo

Me encanta el elemento de menú Habilitar módulos de desarrollador de admin-menu. ¿Cómo puedo alternar esto desde la línea de comando?

El menú de administración ya tiene una configuración de módulos de "desarrollador" configurada en settings.php. Puedo acceder a esta matriz con drush vget admin_menu_devel_modules (bueno, eso devuelve dos entradas). Ahora quiero 'canalizar' esos elementos a drush enable. Sé que eso no es literalmente posible, pero este es mi proceso de pensamiento.

¿Cómo puedo escribir este comando?

3
ack

Prefiero tener un módulo personalizado que tenga dependencias para todos los módulos de desarrollador que necesito. También configuré este módulo para que tenga algunas variables de arma fuerte (como desactivar el preprocesamiento de css/js y cualquier almacenamiento en caché de páginas), y habilita algunos bloques de desarrollador usando Context (como ejecutar php e inspector de contexto). Esto le permite simplemente activar/desactivar el único módulo para activar/desactivar todas sus utilidades de desarrollador.

Aquí está mi módulo de desarrollo Lullabot que puedes ver para ver un ejemplo.

4
q0rban

La opción más limpia podría ser escribir su propio comando Drush desde cero. No tienen que ser terriblemente complicados - el comando 'sandwich' se instala con Drush y sirve como una buena plantilla.

1
Eaton

Otra posibilidad para aquellos que usan un marco de construcción como ant o phing es definir un objetivo en su archivo build.xml con toda la tarea que necesita realizar para configurar su entorno de desarrollo perfecto. Se puede definir otro objetivo para deshacer el primero. De esa manera, puede alternar entre los dos modos a voluntad.

Un breve ejemplo de tales objetivos se encuentra a continuación.

   <target name="en-dev">
      <exec  command="drush --yes en devel devel_themer coder"  />
      <exec  command="drush --yes perm-grant 'Authenticated User' 'access devel'" />
      <exec  command="drush --yes perm-grant 'Annonymous User' 'access devel'" />
    </target>

    <target name="dis-dev">
      <exec  command="drush --yes dis devel devel_themer coder"  />
      <exec  command="drush --yes perm-revoke 'Authenticated User' 'access devel'" />
      <exec  command="drush --yes perm-revoke 'Annonymous User' 'access devel'" />
    </target>

En este caso podría ejecutar phing en-dev para configurar mi entorno de desarrollo.

Para la función opuesta simplemente ejecuto phing dis-dev

1
DKinzer
drush pm-enable `drush php-eval "echo 'ctools'"`

Esto intentaría habilitar ctools; cambie echo ctools a uno que formatee los módulos con espacios entre ellos

0
hefox

No probado con esta situación, pero xargs puede tomar los resultados de un comando y canalizar como argumentos para el siguiente

drush vget admin_menu_devel_modules | xargs drush en  

es posible que necesite hacer un poco de sed en el medio si la variable que devuelve vget no es del gusto de drush.

0
Jeremy French