On lun, 2008-02-25 at 19:07 +0100, Gaël Pasgrimaud wrote:

> Le 25/02/08, Thierry Florac<[EMAIL PROTECTED]> a écrit :
> > Le lundi 25 février 2008 à 13:09 +0100, Christophe Combelles a écrit :
> >
> > > Thierry Florac a écrit :
> >  > > Bonjour,
> >  > >
> >  > > J'essaie d'utiliser ZopeProject pour mettre en place une nouvelle
> >  > > application.
> >  > > Celle-ci doit être composée :
> >  > > - d'un paquet principal, que j'appellerai "monappli", distribué via un 
> > egg
> >  > > - d'un certain nombre de paquets annexes de composants, que je souhaite
> >  > > regrouper dans le même espace de noms que mon application, mais chacun
> >  > > dans un "oeuf" (egg) séparé
> >  > >
> >  > > ZopeProject me permet sans problème de créer mon premier paquet et
> >  > > "l'enrobage" qui va avec (répertoire "monappli.egg-info"), d'où une
> >  > > arborescence du genre :
> >  > >
> >  > > /VirtualEnv
> >  > >     /bin
> >  > >     /eggs (c'est là que j'ai stocké mes eggs)
> >  > >     /lib
> >  > >     /monappli
> >  > >         /bin
> >  > >         /develop-eggs
> >  > >         /log
> >  > >         /parts
> >  > >         /src
> >  > >             /monappli
> >  > >             /monappli.egg-info
> >  > >         /var
> >  > >
> >  > > Donc la question suivante est : comment est-ce que j'intègre
> >  > > correctement mes paquets complémentaires ?
> >  > > - positionnement dans l'arborescence (mais j'imagine que ça doit se
> >  > > passer dans "src")
> >  > > - commande d'initialisation (je crois que c'est basé sur "paster
> >  > > create", mais je n'arrive pas à lui faire gérer correctement les 
> > espaces
> >  > > de noms)
> >  > > - et toutes autres précisions utiles...
> >  >
> >  > J'essaye de répondre par rapport à ce que j'ai compris de buildout et 
> > paster.
> >  >
> >  > Le buildout créé par zopeproject concerne l'application entière, et peut 
> > être
> >  > utilisé aussi bien pour le dev que pour le deploiement. Si tes eggs
> >  > supplémentaires sont finis, tu peux juste les ajouter dans le setup.py, 
> > mais ils
> >  > doivent être récupérable par buildout, soit via un index perso, soit 
> > depuis une
> >  > source locale (ça je sais pas comment on fait).
> >
> >
> > Non, mes eggs vont être développés pour les besoins de mon application.
> >  Mais il y a bien évidemment un certain nombre de composants que je peux
> >  facilement extraire pour qu'ils soient réutilisés...
> >
> >
> >
> >  > Dans le buildout tu peux aussi/plutot rajouter un certain nombre d'eggs 
> > en
> >  > développement via develop= en indiquant des chemins qui pointent vers des
> >  > dossiers d'egg contenant un setup.py. Ca permet d'avoir plusieurs 
> > composants
> >  > séparés en dev dans le meme buildout.
> >
> >
> > OK sur le principe. Mais dans quel fichier va cette clause "develop=" ??
> >  Et concrètement, est-ce qu'il y a des précautions à prendre pour gérer
> >  correctement tous ces paquets dans le même espace de noms ???
> >  (toto.paquet1, toto.paquet2...)
> >
> >
> 
> develop= est dans le buildout.cfg
> Dans zopeproject, par défaut, tu a ".", le répertoire courant, qui est
> en fait un egg "bidouillé" pour devenir une app zope.
> 
> Tu peux y ajouter des lignes du style:
> 
> develop=
>     .
>     mon.superegg
>     ../unautre.egg.super
> 
> 
> mon.superegg et ../unautre.egg.super doivent être des chemin existant,
> contenant un setup.py. La racine d'un egg quoi.
> 
> >
> >  > Le squelette de ces composants séparés peut être effectivement fabriqués 
> > avec
> >  > Paste, mais il faut avoir un template paste qui va bien. Pour ça je sais 
> > pas ce
> >  > qui existe et j'ai pas encore eu l'occasion d'essayer.
> >
> >
> > Ben... j'ai vu qu'on pouvait faire un "paster create --list-templates"
> >  et la liste n'est pas vide. Il y a notamment un template "basic_package"
> >  mais je ne sais pas si c'est suffisant...
> >
> 
> Si tu installe ZopeSkel et/ou IngeniSkel, le nombre de template
> augmentra dangereusement.
> 
> La template iw_python est une bonne base pour démarrer un egg python
> simple. Pour zope3, je ne connais pas mieux.
> 
> Donc:
> 
>   paster create -t iw_python mon.egg
> 
> Une suite de question s'en suis, et hop, tu a un bon squelette.
> 
> Je vais mettre dans ma TODO list des truc en retard de faire une
> template zope3 si personne n'en trouve. Les trois egg que j'ai codé ce
> weeken devrais aider :) D'ailleurs, ils sont basé sur iw_python


Merci beaucoup pour ces infos.
Je viens de tester le template iw_python et effectivement c'est un bon
point de départ pour un egg python standard ; ne manquent que quelques
extensions Zope3... ;-)
Par ailleurs, il gère parfaitement les espaces de noms, ce que je
cherchais.
Pour le reste tout a l'air OK.

Merci encore,
Thierry

-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

_______________________________________________
zope3-french-user mailing list
zope3-french-user@lists.afpy.org
http://lists.afpy.org/mailman/listinfo/zope3-french-user

Répondre à