On Wed, Apr 30, 2008 at 10:12 PM, Kapil Thangavelu <
[hidden email]> wrote:
>
> hi tarek,
>
> so for deployment from zc.buildout, i setup a download-cache, and push them
> a tarball of the buildout minus parts. this assumes the deployment server
> has a compiler setup.
Yes same here, we are trying to have a clone server with the same OS, to prepare
the buildout and send the tarball.
> on certain paranoid security environments its not or
> no network access, so i ask them or setup an identical machine with compiler
> chain, run the buildout tarball there, and give them a binary image tarball.
Ok, similar practices here, except that I don't know yet how to pre-built
something that does not depend on the buildout path.
>
> in some sense there's always going to be a tradeoff between flexibility and
> repeatability, from pure egg based /virtualenv development with compoze
> deployments, to using buildout, to adding convention/structure on top of
> buildout with iw.releaser, to own all development approach of
>
http://trac.minitage.org/trac/, to pushing virtual machines images.
>
> i personally prefer the simplicity of not having tools doing potentially
> magic things underneath the hood in the name of automation, part of that is
> just familiarity with tools and using things that are well documented/known
> and in wide use. that said there are definitely parts of iw.releaser that
> look interesting to me, and i'm playing with it now, to see if it makes
> sense for my projects. however, for the most part it just seems like a
> veneer/gloss to the underlying tools.
>
Yes, from what you have described, I don't think it will bring you a
lot of help.
besides the project_copy_eggs script
> pretty much the same as deployment (ie ship a tarball) except its typically
> just the eggs/dev packages, sometimes with an upgrade script for instance
> data manipulation if needed. which at least for zodb based systems isn't
> automate-able. for upgrades on compiled parts, zope, webserver, db, etc
> require additional manipulation of the buildout environment or reshipping a
> complete build. for network accessible buildout, a scm update works fine.
>
Ok,
>
> >
> > So you have to "prepare" those releases to ship them. That is what
> > those tools are meant
> > for: they automate the preparation of a release or an upgrade from any
> buildout.
> >
> >
>
> its not clear to me that this is what i would call an upgrade. actual
> enterprise deployments need upgrade/migration scripts, vetting of updates
> etc. the update facility within iw.releaser is just making an alias to
> making a tarball..
>
At software level, the migration part is kept in upgrade steps in GS for us,
and we can decide wether to ship a full "eggs" folder or not, depending on
changes applied in the .cfg structure.
When the structure does not change, and this happens for many updates
where just a few eggs are changes, we can use the project_copy_eggs script,
It will let you collect a subset of eggs by scanning the .cfg
files, and doesn't not call a full "bin/buildout", so it creates a small tarball
very quickly. (but does the dependency work as if the buildout was called)
This is probably overkill for smaller project.
Now I realized that this script misses something : after the
dependency work has been
done, it needs to add dependencies pulled in the tarball as well, so :
$ project_eggs buildout.cfg /tmp/upgrade.tgz "acme.*"
will put plone.some.stuff 1.3 in the tarball if its a dependent
Will fix it.
> besides kgs, another nice tool for genarating a frozen index from a working
> set is compoze.
>
http://repoze.org/viewcvs/compoze/trunk/Need to check it
Thanks for your feedback !
Cheers
Tarek
_______________________________________________
Enterprise mailing list
[hidden email]
http://lists.plone.org/mailman/listinfo/enterprise