[Zope3-french-user] Fwd: zopeproject et un soupir

Christophe Combelles ccomb at free.fr
Mar 27 Nov 11:37:55 CET 2007


---------- Forwarded message ----------
From: *Tarek Ziadé* <ziade.tarek at gmail.com <mailto:ziade.tarek at gmail.com>>
Date: Nov 25, 2007 8:56 PM
Subject: Re: [Zope3-french-user] zopeproject et un soupir
To: Liste générique sur Zope3 <zope3-french-user at lists.afpy.org 
<mailto:zope3-french-user at lists.afpy.org>>




On Nov 25, 2007 7:28 PM, Gael Pasgrimaud <gawel at afpy.org 
<mailto:gawel at afpy.org>> wrote:

    Hello Christophe,

    Je penses que virtualenv est une bonne solution. Ca éviteras au moins
    qu'il y ai confusion entre les eggs du système et ceux de zopeproject.
    Préciser les versions ne changera pas grand chose. C'est toujours le
    premier egg trouvé dans le sys.path qui aura la priorité.


oui sauf que quand tu installes un buildout, il modifie le sys.path pour 
les scripts
dans bin/ et met les eggs du buildout en premier. Donc préciser les 
versions est utile: si le python du système a deja une version de la 
lib, mais différente de celle qu'il faut, le buildout récupère la bonne 
version localement. Il l'insère ensuite dans le sys.path tout au début, 
donc
il prend le pas sur le egg installé dans le système.

je ne pense pas que zopeproject change ce mécanisme, suis en train de le 
lancer pour
etre sur, et voir si j'ai le meme souci que toi. mais il y a un egg qui 
timeout... :/

si jamais zopeproject fait qqchose qui fait passer les paquets de ton 
python
en premier, ca casse le principe de buildout et ca tient plus du bug ama.

En  tous les cas, la bonne pratique est d'avoir un repertoire d'egg 
partagé entre tous tes buildouts.  (philipp le précise d'ailleurs) et de 
laisser le buildout faire son marché.

-> mais buildout fait tout ce que fait virtualenv (je sais que Gael 
n'est pas convaincu par ca ;) )

en fait le seul problème de buildout que j'ai vu pour l'instant est dans 
Zope 2: lorsqu'un egg impose des versions pour des dépendances dans les 
paquets zope 3 qui sont déjà présents dans le code source de l'install 
zope 2.
(zope.*, zope.app.*) mais ce probleme sera le meme qq soi le systeme 
virtuel/


    C'est d'ailleurs curieux qu'il t'indique la version qui n'est pas
    prise en compte en ZMI...

    Le but de buildout/zopeproject est d'être déployé sur un système
    vierge de tout package zope. 


et python aussi.
 


    Ainsi tu peux avoir N installations de versions différentes.
    D'ailleurs normalement avec buildout les librairies du python système
    ne sont pas prise en compte.
    Il doit y avoir une bidouille en plus dans zopeproject.

    Après, j'ai pas encore jouer avec KGS, je ne saurais dire.

    --
    Gaël

    Le 25 nov. 07 à 19:07, Christophe Combelles a écrit :

     > Bonjour à tous,
     >
     > est-ce que quelqu'un a déjà utilisé zopeproject ?
     > (l'outil de Ph.v.Weitershausen pour démarrer un projet zope à base
     > de buildout)
     >
     > Ça fait plusieurs semaines que j'essaye progressivement de me
     > bourrer le crâne
     > et de comprendre toutes ces histoires d'eggs, buildout, setuptools,
     > easy_install, KGS, workingenv, zc.zope3recipes, zope.kgs,
     > zope.release,
     > zc.recipe.egg, et j'en passe.
     >
     > J'ai plus ou moins fini pas saisir très grossièrement l'idée
     > générale, mais
     > quand j'essaye de le mettre en pratique, c'est une galère
    monstrueuse.
     >
     > Le premier truc qui m'a perturbé il y a quelques mois, c'est quand
     > j'ai mis des
     > heures à comprendre comment easy_désinstaller un egg. Quand on
    fait un
     > easy_install machin juste pour essayer, on espère avoir, comme pour
     > des paquets
     > debian, une commande qui permet de lister tout ce qui est installé,
     > et une autre
     > pour désinstaller un egg en particulier. Surtout quand l'install
     > d'un seul egg
     > en ramène 30 autres par dépendances... En réalité c'est très
     > simple, il suffit
     > de supprimer les répertoires correspondant aux eggs, et pour savoir
     > ce qui a été
     > easy_installé, il suffit de regarder dans le fichier
    easy-install.pth.
     >
     > Maintenant je me suis laissé dire que le principe d'un buildout
     > était d'être
     > répétable. Alors je lance zopeproject toto, ça me récupère tous les
     > Eggs de zope
     > 3.4, ça me crée un projet toto, et je peux démarrer tout de suite
     > mon instance
     > toto. Super, maintenant je vais dans le SiteManager, et je découvre
     > que la
     > version de zope est une 3.3.1 (celle du système), alors qu'il a
     > rapatrié tous
     > les eggs de zope 3.4 !
     > Le chemin python dans la ZMI indique bien tous les eggs de zope
     > 3.4, mais le
     > site-packages prend le dessus. Où est la répétabilité si le
     > buildout dépend des
     > paquets python du système ?
     >
     > Alors comment dois-je faire pour donner la priorité aux eggs ?
     > Est-ce qu'il faut spécifier précisément les versions dans le
     > buildout.cfg ?
     > Est-ce qu'il faut utiliser forcément un workingenv, ou virtualenv ?
     >
     > Comment fait-on pour créer un buildout qui contient le KGS de
     > manière sûre,
     > c'est à dire toutes les versions exactes correspondant à zope 3.4b2 ?
     > En gros je cherche à remplacer l'install classique (tarball) de
     > zope par une
     > install sous forme d'eggs, mais en installant dans un premier temps
     > tous les
     > eggs. Pas seulement ceux dont j'ai réellement besoin.
     >
     > Si vous avez un retour d'expérience sur tout ça, je serais curieux
     > de le connaître.
     >
     > Christophe
     >
     > PS: pour info j'ai commencé la traduction de ce tutoriel sur
     > buildout :
     > http://svn.zope.org/zc.buildout/trunk/doc/tutorial.txt?
     > rev=76281&view=auto
     > C'est le seul moyen que je trouve pour me bourrer le crâne
     > efficacement...
     >
     > _______________________________________________
     > zope3-french-user mailing list
     > zope3-french-user at lists.afpy.org
    <mailto:zope3-french-user at lists.afpy.org>
     > http://lists.afpy.org/mailman/listinfo/zope3-french-user

    _______________________________________________
    zope3-french-user mailing list
    zope3-french-user at lists.afpy.org
    <mailto:zope3-french-user at lists.afpy.org>
    http://lists.afpy.org/mailman/listinfo/zope3-french-user
    <http://lists.afpy.org/mailman/listinfo/zope3-french-user>




-- 
Tarek Ziadé | Association AfPy | www.afpy.org <http://www.afpy.org>
Blog FR | http://programmation-python.org <http://programmation-python.org>
Blog EN | http://tarekziade.wordpress.com/



-- 
Tarek Ziadé | Association AfPy | www.afpy.org <http://www.afpy.org>
Blog FR | http://programmation-python.org
Blog EN | http://tarekziade.wordpress.com/



Plus d'informations sur la liste de diffusion zope3-french-user