[Zope] Re: ZopePacks: A Proposal for a new Zope Product...
Butch Landingin
butchland@yahoo.com
Fri, 21 Jan 2000 16:16:59 -0800 (PST)
--- 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