Drush a Fondo en Drupal

00:00
 

En este nuevo vídeo veremos como podemos beneficiarnos de las utilidades de Drush en Drupal.

Drush es el Shell (consola) de Drupal y los que nos permite es ejecutar tareas repetitivas por medio de la consola.

  • Mayor rapidez
  • Mayor poder
  • Mayor control

Solo por citar algunas, porque Drush nos permite hasta conectarnos con MySQL o por ejemplo correr código PHP todo esto desde la consola.

Yo solo muestro un breve resumen de lo que puede hacer Drush, en realidad puedes ir mucho más lejos de lo que muestro en el vídeo, pero por falta de tiempo y de conocimientos solo te muestro algo de lo mucho que se puede hacer.

Instalación de Drush en Linux, Mac y Windows

Depende del sistema operativo que cuentes.

Si utilizas Linux, en especial Ubuntu, Mint, etc, hice hace un tiempo un tuto de como instalar Drush en dichos sistemas Operativos:

http://drupalalsur.org/apuntes/instalar-drush-en-ubuntu

También puedes seguir el método que explico en este vídeo

Si utilizas Mac:

Necesitas verificar que cuentas con PHP5-CLi

Puedes verificar esto con:

php -v

Puedes seguir perfectamente el método que explicó en este vídeo.

Si utilizas Windows:

No puedes utilizar el método que explicó aquí para instalar Drush, para poder seguir este vídeo tienes que instalar Drush con este tuto:

http://drupalalsur.org/videos/drush-git-y-drupal-7-en-windows

Los comandos en cambio son casi los mismos para todos, exceptuando algunas diferencias, como por ejemplo la URL...

Algunos ejemplos:

Mientras que en Linux la mayoría de las veces (depende de la instalación claro) la ruta de MySQL es localhost y el puerto por defecto en MySQL es el 3306

En Acquia es el puerto de MySQL el puerto es 33066, mientras que la URL del sitio es localhost:8082.

Tienes la opción de modificar estos parámetros desde el panel de control de Acquia.

Aclarado esto, yo voy a explicar otro método para instalar Drush solo para Linux y Mac.

Vamos a la página de Drupal en concreto al proyecto Drush.

http://drupal.org/project/drush

Y nos bajamos la última versión, al día de este tutorial, la misma es la 5.1.

Es importante que Drush no se encuentre en el mismo directorio que tienes tu sitios Webs, por lo menos tiene que estar un directorio por encima.

Ejemplo, si mi directorio raíz para mis sitios se encuentra en /home/charly/www, Drush tiene que estas por lo menos en /home/charly/.

Lo descargo copiando la url de la página del proyecto y en consola pongo:

cd ~/
wget http://ftp.drupal.org/files/projects/drush-7.x-5.1.tar.gz

Descargar Drush

Descomprimir el paquete, manual o por terminal:

tar -xzf drush-7.x-5.1.tar.gz

Esto te crea un directorio con el contenido del paquete Drush.

Ingresamos en el directorio:

cd drush

Dar permisos para la ejecución:

chmod u+x drush

Crear el enlace, para poder ejecutarlo sin ser Root:

sudo ln -s /home/charly/drush/drush /usr/local/bin/drush

Cambia mi nombre de usuario por el que corresponda.

Ahora podemos ir a nuestro servidor haciendo:

cd ~/www

Drush debe ejecutarse dentro del directorio del sitio para poder obtener la información del archivo
settings.php

Hay excepciones como por ejemplo en los sitios múltiples, pero para este vídeo lo haremos sencillo.

Crear un archivo aparte para la configuración de Drush

Por defecto Drush lee la información del archivo
php.ini

de tu servidor, puedes especificar tu propio archivo de configuración haciendo:

nano ~/drush/php.ini

El archivo no existe, por eso lo creo directamente con la consola.

Dentro del mismo va:

<?php
memory_limit
=128M
error_reporting
= E_ALL | E_NOTICE | E_STRICT
display_errors
= stderr
safe_mode
=
open_basedir =
disable_functions =
disable_classes =
?>

Ahora si corres el comando:

drush core-status

Te salé la siguiente información:

Drush core status

Ver la ayuda de un comando:

drush help comando

Ejemplo:

drush help pm-download

Descargar un sitio Drupal por medio de Drush:

Para poder descargar un sitio tienes que estar en el directorio raíz de tu servidro:

cd ~/www

Utiliza este comando para descargar Drupal:

drush dl drupal

Otro similar:

drush pm-download drupal

Ambos te descarga la versión más reciente de Drupal 7.

drush pm-download --drupal-project-rename=el nuevo nombre drupal

Descargar el sitio, re nombrarlo y agregar otra información:

drush site-install --db-url=mysql://root:root@localhost/sitio2 --account-mail=charly@localhost.com --account-name="charly" --account-pass="scooter" standard

Explicación de los comandos

drush site-install es el comando que nos permite instalar el sitio.

--db-url=mysql es el motor de nuestra base de datos, pueden ser otros.

://root:root es el nombre de usuario y la contraseña del usuario que accede en este caso a MySQL.

@localhost = es la ruta que te comentaba al principio, esta es la que tienes que tener en cuenta según el tipo de servidor que instales.

--account-name, --account-mail, --account-pass son solo opciones que he utilizado de la ayuda.

Por último esta la opción standard, por defecto existen 3 perfiles en Drupal, solo utilizo el más común.

Instalar Drupal en idioma español con Drush

  • Tienes que estar dentro de un sitio que hayas descargado.
  • Tienes que descargar el idioma español, puede ser otro.
  • Instalar el sitio

cd sitio3

Descargar el idioma español:

wget -O profiles/standard/translations/drupal-7.14.es.po http://ftp.drupal.org/files/translations/7.x/drupal/drupal-7.14.es.po

Instalar el Drupal en español con Drush:

drush site-install --db-url=mysql://root:root@localhost/sitio2 --account-mail=charly@localhost.com --account-name="charly" --account-pass="scooter" --locale=es standard

El proceso puede demorar porque aparte de la instalación, se instala con el idioma español, esto es completamente normal.

Un comando bastante completo puede ser el siguiente:

drush site-install --db-url=mysql://root:root@localhost/sitio2 --site-name="Nuevo Sitio" --account-mail=charly@localhost.com --site-mail=charly@localhost --account-name="charly" --account-pass="scooter" --locale=es standard

Remplazar root y root por sus respectivos nombres de usuario administrador de mysql y su respectiva contraseña.
sitio2 es el nombre de mi base de datos, puede ser el que tu quieras.

La url localhost es para este ejemplo, puede ser 127.0.0.1, una ip 192.168.1.100, etc.
El puerto es el por defecto: 3306, pero puede ser cualquier otro, dependiendo del servidor que utilices.

Hacer una copia de seguridad incluida la base de datos

drush ard --destination="../respaldo_antes_de_actualizar.tar.gz"

El nombre del archivo puede ser cualquiera.

Tópico: 
Sistema Operativo: 
Plataforma: 
Calificar: 
0
Monto: 
$5.00

Comentarios

Muy bueno practico y bien ilustrado como de costumbre. Me pregunto si es posible crear plantillas o templates, para tener predefinidos nuestros sitios y modulos que instalar y no tener que escribir todo de nuevo cada vez que tengamos que hacer una nueva instalación. Sé agradece mucho el esfuerzo y la dedicación charly. Un saludo y un abrazo. Paco.
Imagen de charly

Hola Paco.
Si se puede, se hace con drush make, lo voy a tratar en el próximo vídeo de drush.
Gracias por el comentario, salu2

Hola Charly, muy bueno el video-tutorial, para cuando el tuto de Drash-Make ?? Bueno de ser posible cuando se cree el mismo avisame a mi email personal. Muchas gracias :)

Muy buen videotutorial, bien explicado. Sera que podras hacer algun tutorial de como trabajar drupal en github.. estaria bueno Bueno felicidades por tu pagina que estoy viendo los videos que son excelentes, Segui asi, un abrazo.