SORU
20 Temmuz 2010, Salı


Cron ve virtualenv

Cron Django yönetimi bir komutu çalıştırmak için çalışıyorum. Virtualenv projem korumalı tutmak için kullanıyorum.

Virtualenv gibi içinden yönetim komutları çalıştırmadan gösteren örnekler burada ve başka bir yerde gördüm:

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

Ancak, de kullanarak göreve başlamış olması gerekirken bir giriş gösteriyor olsa da, bu görev aslında hiç çalışır (komut dosyası için günlük dosyası yok). Eğer çizgi kabuğundan el ile çalıştırmak, beklendiği gibi çalışır.

Şu anda komutu cron üzerinden çalıştırmak için tek yol komutları kırmak ve aptal bash sarıcı komut dosyası koymak

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

Fark nedir beni aydınlatın lütfen. Neyi kaçırıyorum?

Teşekkürler

DÜZENLEME:

ars komutları çalışan bir kombinasyonu ile geldi:

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

En azından benim durumumda, virtualenv için komut dosyası etkinleştirmek başlıklarında hiçbir şey yapmadı. Bu işleri, yani gösteri ile.

CEVAP
20 Temmuz 2010, Salı


Sanal ortamda: python kullanarak bunu yapmak gerekir

/home/my/virtual/bin/python /home/my/project/manage.py command arg

EDİT: django projeniz bu DEYİM değil ama, sağ dizine değiştirmek zorunda kalırsınız sonra:

cd /home/my/project && /home/my/virtual/bin/python ...

Ayrıca cron gelen hata günlüğüne deneyebilirsiniz:

cd /home/my/project && /home/my/virtual/bin/python /home/my/project/manage.py > /tmp/cronlog.txt 2>&1

Denemek için başka bir şey çok üstünde manage.py komut aynı değişikliği yapmak için:

#!/home/my/virtual/bin/python

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Booredatwork.com

    Booredatwork

    5 Ocak 2009
  • FD2097

    FD2097

    21 HAZİRAN 2009
  • Warner Bros. UK

    Warner Bros.

    6 HAZİRAN 2008