python - Virtualenv does not change PYTHONPATH in Cronjob -
crontab code:
shell=/bin/bash * * * * * /var/www/envs/venv/myproj/scripts/send_hit.sh
.sh script:
#!/bin/bash cd /var/www/envs/venv source bin/activate echo $pythonpath echo $path
output:
x-cron-env: <lang=en_us.utf-8> x-cron-env: <shell=/bin/bash> x-cron-env: <home=/root> x-cron-env: <path=/usr/bin:/bin> x-cron-env: <logname=root> x-cron-env: <user=root> /var/www/envs/venv/bin:/usr/bin:/bin
as can see, $pythonpath empty. however, not when activate manually.
[root@server venv]# source bin/activate (venv)[root@server venv]# echo $pythonpath :/var/www/envs/venv/myproj:/var/www/envs/venv/lib/python2.7/site-packages/
pythonpath variable not accessible crontab. should set pythonpath variable in script.
#!/bin/bash cd /var/www/envs/venv source bin/activate pythonpath=/path/to/python export pythonpath echo $pythonpath echo $path
Comments
Post a Comment