2010-08-20 3 views
10

Ich versuche ein Projekt von virtualenv zu buildout zu verschieben, aber ich glaube nicht, dass ich das ganze Konzept von buildout begriffen habe. Alle Tutorials, die ich gefunden habe, diskutieren buildout im Zusammenhang mit der Verwendung mit Zope, die ich nicht benutze und daher nicht sehen kann, wie es weiter geht.Wie man von virtualenv zum Buildout migriert?

Meine Dateistruktur mit virtualenv ist wie folgt:

myapp/ 
    app.py 

Welche ausgeführt wird /path/to/venvs/myapp/bin/python /path/to/myapp/script.py verwenden.

Mit buildout, meine Dateistruktur:

myapp/ 
    app.py 
    bootstrap.py 
    buildout.cfg 

Lauf python bootstrap.py und bin/buildout gibt mir diese zusätzliche Dateien:

myapp/ 
    bin/ 
    buildout 
    eggs/ 
    setuptools-0.6c12dev_r80622-py2.6.egg 
    tornado-1.0.1-py2.6.egg 
    parts/ 

An dieser Stelle mir nicht sicher bin, wie mein app "laufen" .

Beratung?

Antwort

3

Das folgende Rezept wird, installieren Tornado als ein Ei und erstellen Sie ein Python und MyApp-Skript im bin-Verzeichnis mit dem richtigen Suchpfad, um das Tornado Ei zu finden.

3

Buildout und virtualenv sind tatsächlich tangential verwandt. Bei Buildout geht es in erster Linie um den Einsatz von Software auf eingeschränkte und kontrollierte Weise, wobei es bei virtualenv darum geht, die Umgebung zu verkapseln, in der die Python-Software läuft. Buildout bietet, was virtualenv in sich tut, und fügt dann ein bisschen mehr um es herum.

Denken Sie an Buildout als die Rezeptur, wie Sie Ihren Code nehmen und auf ein Remote-System legen, das bereit ist, ausgeführt zu werden. Ein Teil dieses Prozesses beginnt mit der Erstellung einer sauberen Sandbox (die auch von virtualenv bereitgestellt werden kann) - und fügt Bibliotheken, Teile und Teile nach Bedarf hinzu.

Ich bin kein ausgebildeter Experte, aber ich würde erwarten, dass Ihr Python-Hauptcode unter "bin" in Ihrer Verzeichnisstruktur angezeigt wird und dass Sie ihn irgendwie von dort aus aufrufen würden.

0

In unserem Projekt verwenden wir auch nicht Zope. Wir haben uns die Zeit genommen, um eine Einführung für Studenten zu schreiben, wie man ihren Code unter Verwendung von zc.buildout und standardmäßigen Python-Packaging-Tools organisiert (und über PyPI verteilt). Es ist vielleicht nützlich für diejenigen, die diesen Thread lesen: http://www.idiap.ch/software/bob/docs/releases/v1.2.2/sphinx/html/OrganizeYourCode.html

+0

Dieser Link ist tot, bitte aktualisieren Sie es. – shuttle87

Verwandte Themen