Cron y virtualenv


Estoy tratando de ejecutar un comando de administración de Django desde cron. Estoy usando virtualenv para mantener mi proyecto aislado.

He visto ejemplos aquí y en otros lugares que muestran la ejecución de comandos de administración desde dentro de virtualenv como:

0 3 * * * source /home/user/project/env/bin/activate && /home/user/project/manage.py command arg

Sin embargo, aunque syslog muestra una entrada cuando la tarea debería haber comenzado, esta tarea nunca se ejecuta (el archivo de registro del script está vacío). Si corro la línea manualmente desde el shell, funciona como se esperaba.

La única manera actualmente puede obtener el comando para ejecutarse a través de cron, es romper los comandos y ponerlos en un script de envoltura bash tonto:

#!/bin/sh
source /home/user/project/env/bin/activate
cd /home/user/project/
./manage.py command arg

EDITAR:

A Ars se le ocurrió una combinación de comandos:

0 3 * * * cd /home/user/project && /home/user/project/env/bin/python /home/user/project/manage.py command arg

Al menos en mi caso, invocar el script activate para virtualenv no hizo nada. Esto funciona, así que con el programa.


Warning: Undefined property: agent_blog_content::$date_asked in /var/www/agent_etc/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 32

Warning: Undefined property: agent_blog_content::$count_answers in /var/www/agent_etc/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 52