2012-08-22 7 views

cevap

11

Sen gereksinimlerini dondurabilirsiniz. Bu, projenizin ihtiyaç duyduğu tüm Python modüllerinin bir listesini oluşturur. Konseptte bundle'un benzer olduğuna inanıyorum. Örneğin

:

virtualenv --no-site-packages myproject_env # create a blank Python virtual environment 
source myproject_env/bin/activate # activate it 
(myproject_env)$ pip install django # install django into the virtual environment 
(myproject_env)$ pip install other_package # etc. 
... 
(myproject_env)$ pip freeze > requirements.txt 

son satır bir metin dosyası oluşturur olacak özel ortamında yüklenen tüm paketler. Diğer sunucularda aynı gereklilikleri yüklemek için bu dosyayı kullanabilirsiniz: Elbette

pip install -r requirements.txt 

sen, elle gereksinimleri dosyası oluşturabilirsiniz pip kullanmaya gerek yoktur; herhangi bir özel sözdizimi gereksinimi yoktur. Her satırda sadece bir paket ve (muhtemelen) sürüm tanımlayıcısı. İşte bazı ekstra paketler ile tipik bir django projesinin bir örneğidir:

Django==1.4 
South==0.7.4 
Werkzeug==0.8.3 
amqplib==1.0.2 
anyjson==0.3.1 
celery==2.5.1 
django-celery==2.5.1 
django-debug-toolbar==0.9.4 
django-extensions==0.8 
django-guardian==1.0.4 
django-picklefield==0.2.0 
kombu==2.1.4 
psycopg2==2.4.5 
python-dateutil==2.1 
six==1.1.0 
wsgiref==0.1.2 
xlwt==0.7.3 
+0

güzel çalışır, teşekkürler. – nemesisdesign

3

En yakın ihtimalle virtualenv, pip ve requirements file. Bu 3 bileşenle basit bir bootstrap komut dosyaları yazmak oldukça kolaydır.

Daha zorlu ve karmaşık olan buildout. Ama sadece virtualenv ve pip yeterli değilse, bunun için giderdim.

Bu yaklaşımı fabric ve isteğe bağlı cuisine ile genişletirseniz, proje dağıtımınız zaten otomatik olur. Daha fazla bilgi için bu bağlantılara göz atın:

İlgili konular