Je tente de déplacer un projet de Ma structure de fichier avec qui est exécuté à l'aide de with exécution à ce stade Je ne sais pas comment "gérer" mon application. P> Conseil? P> P> virtualenv code> à
bâtiments code>, mais je ne pense pas avoir saisi tout le concept de
bâtiment code>. Tous les tutoriels que j'ai trouvés discutent code> construction code> dans le contexte de l'utiliser avec
zope code>, que je n'utilise pas et que je ne vois donc pas comment continuer.
virtualenv code> est la suivante: p>
/ chemin / à / VENVS / myApp / bin / myapp / bin / python /path/to/myapp/script.py
.< Buildout code>, ma structure de fichier est: p>
python bootstrap.py code> et
bin / bâtiment code> me donne ces fichiers supplémentaires: p>
3 Réponses :
bâtiments et Virtualenv est réellement lié à tangentiellement. Buildout est vraiment sur le déploiement du logiciel de manière contrainte et contrôlée, où Virtualenv consiste à encapsuler l'environnement que le logiciel Python est exécuté. Buildout fournit ce que Virtualenv fait en soi, puis enveloppe un peu plus autour de lui. P>
Pensez à l'établissement comme jeu de recettes de la manière de prendre votre code et de la poser sur un système distant prêt à être exécuté. Une partie de ce processus commence par la création d'une bac à sable propre (ce que Virtualenv peut fournir également) - puis en ajoutant des bibliothèques, des pièces et des pièces dont vous avez besoin. p>
Je ne suis pas un expert en construction, mais je m'attendrais à ce que votre code principal de Python apparaisse sous "bin" dans votre structure de répertoire et que vous seriez d'une manière ou d'une autre l'invoquer à partir de là. p>
La recette suivante sera, installez Tornado comme un œuf et crée un script Python et MyApp dans le répertoire BIN avec le chemin de recherche correct pour trouver l'œuf de la tornade.
[buildout] parts = python eggs = tornado extra-paths = ${buildout:directory} [python] recipe = zc.recipe.egg interpreter = python eggs = ${buildout:eggs} entry-points = myapp=app:main extra-paths = ${buildout:extra-paths}
Dans notre projet, nous n'utilisons pas non plus Zope. Nous avons pris le temps d'écrire une introduction pour les étudiants sur la manière d'organiser (et de distribuer via PYPI) leur code à l'aide de zc.buildout code> et des outils d'emballage Python standard. Il est peut-être utile de savoir quiconque lit ce fil: http://www.idiap.ch/software/bob/docs/relases/v1.2.2/sphinx/html/organizeYourCode.html P>