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

  • JorteexHD

    JorteexHD

    20 NİSAN 2012
  • Muse

    Muse

    28 EYLÜL 2006
  • Watcher3223

    Watcher3223

    15 Kasım 2007