Question

Nous avons des problèmes en essayant de déployer un certain nombre de projets dont l'utilisation zc.buildout - Plus précisément, nous constatons qu'ils veulent mettre leurs répertoires PYTHON_EGG_CACHE tout le spectacle. Nous aimerions mettre en quelque sorte ce répertoire à un au même niveau que le projet intégré sur où eggs se trouve.

Il y a une mention en ligne que cela peut être fait pour les projets Plone, mais est-il possible de le faire sans Plone?

Y a-t-il des recettes qui peuvent mettre en place une variable d'environnement afin que nous puissions définir les fichiers exécutables PYTHON_EGG_CACHE dans ./bin?

Était-ce utile?

La solution

Je ne sais pas ce que vous voulez dire. Trois options que vous avez normalement:

  • Buildout, par défaut, stocke les oeufs dans un répertoire appelé eggs/ dans votre répertoire de buildout.

  • Vous pouvez définir la variable eggs-dir dans la section [buildout] de votre buildout.cfg à un répertoire. Il suffit de lui dire où les placer.

  • Vous pouvez également définir cette option même dans .buildout/defaults.cfg dans votre répertoire personnel. De cette façon, vous pouvez définir une valeur par défaut pour tous vos projets. Très pratique pour ranger tous vos oeufs dans un seul endroit. Qui peut économiser beaucoup de temps de téléchargement, par exemple

Est-ce que l'un de ceux (surtout le dernier) accomplir ce que vous voulez?

: ne muck pas avec des oeufs dans les fichiers générés bin/*. Laissez-buldout choisir les oeufs, c'est son but.

Autres conseils

Le PYTHON_EGG_CACHE est utilisé uniquement pour les œufs avec fermeture à glissière, votre meilleur pari est d'avoir zc.buildout installer tous les œufs nécessaires décompressé:

[buildout]
...
unzip = true

Si votre python système a des oeufs compressés installés qui nécessitent encore décompressé pour l'accès aux ressources, et le réglage de la PYTHON_EGG_CACHE dans vos scripts est votre seule option (par opposition à définir la variable d'environnement pour votre utilisateur), vous pouvez essayer d'utiliser le initialization possibilité de zc.recipe.egg pour ajouter du code Python arbitraire à vos scripts:

[a-part]
recipe = zc.recipe.egg
...
initialization = 
    import os
    os.environ['PYTHON_EGG_CACHE'] = '/tmp/python_eggs'
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top