Re: ZopePacks: A Proposal for a new Zope Product...
--- Jim Fulton <jim@digicool.com> wrote:
Butch Landingin wrote:
<snip>
Here's one comment that should provide a good place to start. There is already a mechanism for creating product distributions for products created through the web. When you develop a product with ZClasses and you want to distribute it, you can use a web interface to create a tar ball that can be installed just like any other Zope product. There is no need to fool around with export files and no need to have an inconsistent installation mechanisms. <snip> This mechanism is far from perfect and I look forward to suggestions and implementation for enhancements. We also have some specific ideas for enhancing this mechanism.
This seems to be one of those topics of "Zope Zen" that is not widely known. (Very few people at DC seem to be aware of it.) This is a bit ironic, since this feature has been *documented* for well over a year. :(
OMG, *NOW* I remember!!!! It's been a while, but I remember walking through the tutorial that produced exactly this... I maybe wrong (its been a while since I did the tutorial) but IIRC, one of the downsides of this process was that it produced a "closed box" product and doesn't leave you a way to see or modify those components included in the package. Also, IIRC, it doesn't have checks for ZClass/Product dependencies. That said, I think we have 2 alternatives: 1. We could enhance this distribution tab so that it accomplishes the objectives set forth for the ZopePackManager product: a. Be able to specify the ZClasses, instance data (e.g. Folders) & ZProducts(?) that are to be included in the application b. Be able to create products that recreate the included ZClasses & instance data in their original format (i.e. open-box format) so that users can further tailor the default behavior of the distributed application to each site's needs... c. Zope Product installation should be able to do some dependency checking so that installation is as error-free as possible. d. Zope Products created this way should be able to share ZClasses between different distributions and load them as necessary (and only when necessary) -- this will make each distribution smaller (because you only include those ZClasses/instance data you supply) & also make the Zope Products namespace less cluttered. e. Be able to enter and retrieve additional info (e.g. product categories, product description) about each product so that users have an ability to pick and choose intelligently which applications they might wish to install... 2. Continue development of the "ZopePack" manager product but incorporate the current "distribution tab" concepts in building the product -- i.e. aside from making the distribution/installation of ZClass based applications easier(my main objective) -- also include the code to make it easy to build a ZopePack (e.g. checking dependencies and automatically determining the dependency data that needs to be included in the ZopePack "meta-file") Also, its nice to know that there's already code inside the Zope machinery that could build ".tar.gz" files -- we can probably automate not just the installation of Zope Products very easy, but also the converse process of "building" a distribution a "one-or-two-click, platform-independent" process as well... Since I don't have a clue as to how much work the first approach will entail, I'd like to get people's opinions... In the end, both these approaches solve the problem equally well -- the only question is: which one looks easier to do? Regards, Butch __________________________________________________ Do You Yahoo!? Talk to your friends online with Yahoo! Messenger. http://im.yahoo.com
participants (1)
-
Butch Landingin