viernes, 5 de julio de 2013

Configurar drush Drupal en hosting compartido



Sin aire no hay vida y sin drush no hay Drupal, así de claro. 
Desplegar cambios desde desarrollo, preproducción y producción con drush es una auténtica gozada. Entendiendo por gozada que tú o tu equipo de desarrollo tiene el control sobre el/los servidores del proyecto. ¿Qué sucede cuando el servidor de producción es un hosting compartido o una máquina corporativa en la que no puedes instalar drush?

En Codery solucionamos esta papeleta del siguiente modo.

Servidor no administrado:

1.- Descargamos el paquete "drush" a un directorio, p.e nuestro $HOME.

wget http://ftp.drupal.org/files/projects/drush-7.x-5.9.tar.gz
tar zxf drush-7.x-5.9.tar.gz

2.- La ejecución de drush desde $HOME es tan sencillo como:

php drush/drush.php -r www drush cc all

En ocasiones incluimos un 'alias' en .bashrc para 'agilizar'.

Servidor origen:

1.- Aquí es dónde está el 'truco'. En el fichero sitio.aliases.drushrc.php incluímos la ruta a drush en el servidor remoto

 $aliases['www.c'] = array(
  'root' => '/home/c/www',
  'uri' => 'http://www.ces',
  'remote-host' => 'www.c.es',
  'remote-user' => 'c',
  'db_url' => 'mysql://c:c@h.c.es/www',
  'path-aliases' => array(
    '%drush-script' => '/home/c/drush/drush',
    '%dump' => '/home/c/drush-backups/c-www.sql',
    '%files' => '/home/c/www',
  ),
);







Qué fácil es la vida con drush! :P

lunes, 1 de julio de 2013

Postfix masquerading


Dejo unas notas sobre cómo modificar el email del remitente de la cuenta root en una máquina corriendo Postfix.

Problema:

El destinatario recibe el email de la cuenta root@nombremáquina en lugar de una FQDN.

La solución es muy sencilla. Antes de ponerse a trastear, recomiendo encarecidamente leer el "Postfix Address Rewriting" . Al grano.

1.- Crear el fichero smtp_generic_maps con el contenido
root@nombredemimaquina  info@midominiomolon.org
2.- Hashear el fichero:

postmap hash:/etc/postfix/smtp_generic_maps

3.- Incluir la directiva smtp_generic_maps en el fichero main.cf

smtp_generic_maps = hash:/etc/postfix/smtp_generic_maps

4.- Reiniciar postfix

service postfix restart

Configuración testeada en :

SSOO: Ubuntu Server 12.04.1 64 bits
Postfix: 2.9.6-1~12.04.1