workingenv is dead WAS [Zope3-Users] Eggs and classic instance homes, again... (was Re: Eggs, workingenv.py, and 'classic' instance homes)

2007-11-09 Thread Gael Pasgrimaud

Hi,

workingenv sucks. use virtualenv. It solve a lot of problems:

   http://blog.ianbicking.org/2007/10/10/workingenv-is-dead-long- 
live-virtualenv/


Cheers,

--
Gael

Le 8 nov. 07 à 01:24, Jeff Shell a écrit :


The last time I was active on this list was back in mid-august. I was
fighting an uphill battle to try to figure out how to migrate our
software to 'Eggs'. I ultimately had to abandon the process as there
was just too much real work to be done, and I was getting conflicting
answers about how to move forward. Actually, I couldn't get much help
from the community at all. I apologize for the crankiness of this
email. The last time I tried to get help on this topic was an
excercise in sheer frustration. Since then, the gulf I've worried
about seems to have gotten even bigger, and I'm feeling very stressed
right now.

So now I see all that's going on with Zope 3 and I still don't
understand a thing about how to move forward. We have about twelve
active customers deployed on Zope 3, on top of one or two large
frameworks that we've built on top if Z3. We still use the basic
'instance home' layout. We don't use eggs - we just check things out
directly into the instance home. Even stuff from the Zope community,
because it's easier to do that than to even get workingenv or any of
these other things running.

I'm still lost about what to do. Grok is of no use to us at the
moment. Many of these apps have been up and running for longer than
Grok's been alive. Is there any kind of migration documentation out
there? Or have these new ways of doing things been in use for so long
that most people have just rolled along with them? I just don't have
the time. I scarcely have time to keep up with the lists (which is
obvious since I haven't read a thing for nearly three months).

I'm going to resume my conversation here, responding to myself.

August 16, 2007, Jeff Shell wrote:

Jeff Shell wrote:

But now I'd like to be able to install that into "classic" zope 3.3
instance homes, trying to be as unobtrusive as possible.


How have you installed other packages before? I suspect by just  
dumping
their source in INSTANCE/lib/python. Any reason not to continue  
to do that?


Because I feel like we're falling further and further behind, or at
least trapped in our own little world.


Yep, this is becoming even more true. We're now even further behind.


But yes, this is how we did it. I ended up writing most of
rocketbuild/rockout (our Rake-ish tool) because of this. There are a
lot of external tools out there that we still don't use because we
don't have the time to deal with the headache (made minor by
`rockout`, but still present) of dumping sources into lib/python. For
internal stuff, it's not so bad.


I want to get away from this (using source control as distribution
mechanism). Eggs and buildout are supposed to help here, but
ultimately it was easier to roll our own tool as we just could not
figure out how to apply them to our configurations.

We're about to do a massive server upgrade, which would be a good time
to sneak in new deployment practices.

The longer we avoid whatever is going on with setuptools and  
buildout,

the harder it will be to migrate. It's hard enough already.


Yep. Feels even harder now, but probably because they cause me so much
stress just by looking at them.

That seems backward. If you want to install an package into a  
"classic"
environment, it doesn't seem that surprising you'll also have to  
do it

the "classic" way...


It doesn't seem entirely backward. I mean, it does. But at the same
time... I just don't know how it's all supposed to work. But if we
keep doing things in the 'classic' way without trying to step  
forward,

then I fear we'll stay this way forever because it's already scary
enough peeking over the hill at how buildout and all of that stuff
works and how different it is from how we've done things. I don't  
want
the gulf to get bigger, because I think that with our plans for  
growth

and for a more distributed deployment server setup, 'buildout' will
help tremendously.

I'm just trying for baby steps right now, because it feels like we've
still got a long way to go to get to anything better.

I saw mention of 'workingenv' in your book, so I assumed it was or is
possible to easily have instance homes with locally managed eggs.
Shouldn't it be?


Still have a long way to go. Still have no answers for what to do or
how to start migrating. Some of our problem is caused by the stupidity
of CVS, which will go away when we migrate to Git.

Is there going to be a Zope 3.4, for real this time? Will it offer the
clues I'm looking for? 'zopeproject' says 'You can start a new
Zope-based web application from scratch with just two commands'. But
what about those of us who have started many many Zope based web
projects?

Thanks,
Jeff Shell
___
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope

Re: [Zope3-Users] Eggs and classic instance homes, again... (was Re: Eggs, workingenv.py, and 'classic' instance homes)

2007-11-08 Thread Hermann Himmelbauer
Am Freitag, 9. November 2007 01:31 schrieb Jeff Shell:
> Oops. Forgot to send this to the list as well as Stephan. Goddamn Gmail.
>
> On Nov 8, 2007 8:28 AM, Stephan Richter <[EMAIL PROTECTED]> 
wrote:
> > Hi Jeff,
> >
> - zope.component 3.4.0  (or anything built into the zope 3.4 tarball)
> - sqlalchemy 0.4.0
> - simplejson

Btw., how do you integrate Zope3 with SQLAlchemy 0.4? As far as I 
know "zalchemy" is not SQLAlchemy-0.4 ready yet?

Best Regards,
Hermann

-- 
[EMAIL PROTECTED]
GPG key ID: 299893C7 (on keyservers)
FP: 0124 2584 8809 EF2A DBF9  4902 64B4 D16B 2998 93C7
___
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope3-users


Re: [Zope3-Users] Eggs and classic instance homes, again... (was Re: Eggs, workingenv.py, and 'classic' instance homes)

2007-11-08 Thread Jeff Shell
Oops. Forgot to send this to the list as well as Stephan. Goddamn Gmail.

On Nov 8, 2007 8:28 AM, Stephan Richter <[EMAIL PROTECTED]> wrote:
> Hi Jeff,
>
> last time I promised I would be more responsive to your mails, so here you
> go. :-)

Thanks!

> First of all, let me say that I have no system in production yet, which uses
> eggs. I think only Lovely Systems and Zope Corp. do; and maybe some smaller
> applications. So I would not worry about not being up-to-date. In fact, the
> last stable release is still 3.3.1, which tells the story of the big Zope 3
> tree.
>
> That said, have you seen my Zope 3.4.0b2 announcement _[1]? It was the first
> public announcement making people aware that eggs are really happening. I
> purposefully did not say that Zope 3.4 will be the last tarball release,
> because (a) I think we cannot abandon people that quickly and (b) it is now
> really easy to create a new tarball release thanks to a couple of scripts I
> wrote.

This is where I start to get confused. I understand, and am glad for,
the continuation of tarball releases for this round.

My main question is: how does one mix and match? We have a lot of
external software requirements and I'd rather get some of those as
eggs than keep doing individual subversion checkouts.

My big concern, which is something that affects all packaging systems,
is how to tell packaged stuff that hand-build stuff meets the
requirements. If I want to use an egg in a particular environment that
has dependencies on:

- zope.component 3.4.0  (or anything built into the zope 3.4 tarball)
- sqlalchemy 0.4.0
- simplejson

Would it know that zope.component was already offered via the whole
Zope 3.4 tarball?

It seems like you do things the classic way, or the egg/buildout way,
and nothing in between. This makes things like z3c.form intimidating
to me because I don't know if/how it will work in my vanilla zope
environment (and with such a long time span between 3.3.1 and the
eventual 3.4, I doubt it or its dependencies could work in 3.3.1). I
may be wrong about all of that, but that's how I currently perceive
things. Things just look so different between the two.

-- 
Jeff Shell
___
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope3-users


Re: [Zope3-Users] Eggs and classic instance homes, again... (was Re: Eggs, workingenv.py, and 'classic' instance homes)

2007-11-08 Thread Stephan Richter
On Wednesday 07 November 2007, Jeff Shell wrote:
> So now I see all that's going on with Zope 3 and I still don't
> understand a thing about how to move forward. We have about twelve
> active customers deployed on Zope 3, on top of one or two large
> frameworks that we've built on top if Z3. We still use the basic
> 'instance home' layout. We don't use eggs - we just check things out
> directly into the instance home. Even stuff from the Zope community,
> because it's easier to do that than to even get workingenv or any of
> these other things running.
>
> I'm still lost about what to do. Grok is of no use to us at the
> moment. Many of these apps have been up and running for longer than
> Grok's been alive. Is there any kind of migration documentation out
> there? Or have these new ways of doing things been in use for so long
> that most people have just rolled along with them? I just don't have
> the time. I scarcely have time to keep up with the lists (which is
> obvious since I haven't read a thing for nearly three months).

Hi Jeff,

last time I promised I would be more responsive to your mails, so here you 
go. :-)

First of all, let me say that I have no system in production yet, which uses 
eggs. I think only Lovely Systems and Zope Corp. do; and maybe some smaller 
applications. So I would not worry about not being up-to-date. In fact, the 
last stable release is still 3.3.1, which tells the story of the big Zope 3 
tree.

That said, have you seen my Zope 3.4.0b2 announcement _[1]? It was the first 
public announcement making people aware that eggs are really happening. I 
purposefully did not say that Zope 3.4 will be the last tarball release, 
because (a) I think we cannot abandon people that quickly and (b) it is now 
really easy to create a new tarball release thanks to a couple of scripts I 
wrote.

In the Zope 3.4.0b2 announcement I also sketched out two ways projects can be 
built using eggs, buildout and recipes. That said, writing a comprehensive 
migration document is still one of the tasks that need to be done. I was 
really hoping that the community would step up in writing one. I think that 
Darryl's response to your mail is a great start actually. It could easily be 
used as a starting point.

.. [1] http://mail.zope.org/pipermail/zope3-users/2007-November/007106.html

Regards,
Stephan
-- 
Stephan Richter
CBU Physics & Chemistry (B.S.) / Tufts Physics (Ph.D. student)
Web2k - Web Software Design, Development and Training
___
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope3-users


Re: [Zope3-Users] Eggs and classic instance homes, again... (was Re: Eggs, workingenv.py, and 'classic' instance homes)

2007-11-07 Thread Darryl Cousins
On Wed, 2007-11-07 at 21:22 -0700, Jeff Shell wrote:
> On Nov 7, 2007 7:53 PM, Darryl Cousins <[EMAIL PROTECTED]> wrote:
> > Hi Jeff,
> >
> > I hope that this might at least give you the optimism you appear to be
> > lacking.
> 
> Thank you. That does give me a much more clear starting point. I was
> having a hard time seeing all of the recipes come together.

Cheers Jeff.

A note about pinning down the versions, I'm following this:
http://mail.zope.org/pipermail/zope3-users/2007-November/007106.html
now rather than using the grok versions.

I didn't have any trouble at all resolving deprecation and import errors
when upgrading from Zope3.3.0 tarball to the 3.4 eggs as described in
the above mail. There were hardly any compared with the upgrade from
3.2.0 to 3.3.0.

Application is up and running on eggs. Brrroook.

Regards,
Darryl

> 
> As for optimism... We'll see. :) But this was the step I could never
> make work (getting a buildout-managed instance up and running) before
> running out of time. Thanks again.
> 

___
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope3-users


Re: [Zope3-Users] Eggs and classic instance homes, again... (was Re: Eggs, workingenv.py, and 'classic' instance homes)

2007-11-07 Thread Jeff Shell
On Nov 7, 2007 7:53 PM, Darryl Cousins <[EMAIL PROTECTED]> wrote:
> Hi Jeff,
>
> I hope that this might at least give you the optimism you appear to be
> lacking.

Thank you. That does give me a much more clear starting point. I was
having a hard time seeing all of the recipes come together.

As for optimism... We'll see. :) But this was the step I could never
make work (getting a buildout-managed instance up and running) before
running out of time. Thanks again.

-- 
Jeff Shell
___
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope3-users


Re: [Zope3-Users] Eggs and classic instance homes, again... (was Re: Eggs, workingenv.py, and 'classic' instance homes)

2007-11-07 Thread Darryl Cousins
Hi Jeff,

I hope that this might at least give you the optimism you appear to be
lacking. 

I've been migrating a complex project which was running on Zope-3.2
tarball install.

My first step was to get it all into a buildout. buildout.cfg looked
something like this [1]. I've missed out lots here (postgresql, lxml,
sqlos, sqlobject, psycopg2, pyro, zif.jsonserver amongst others). Note
that I have included a local install of python in parts to keep things
clean and tidy.

Second step was to upgrade to Zope-3.3 - this just meant changing the
url in the zope3 section. An hour or two of fixing deprecation warnings
(really only deprecation stuff, nothing major).

Step Three, where I'm at now, is to change the buildout to use Zope-3.4
eggs, and Paste. Zopeproject buildout.cfg and other files could provide
you a starting point. I'm using
http://grok.zope.org/releaseinfo/grok-0.10.2.cfg to pin down versions.
See http://grok.zope.org/releaseinfo/readme.html for info on using this
file.

I haven't got the server running yet, but then I've only just finished
getting buildout.cfg right, and all parts built.

In all there has been several hours work so far, but that includes
sorting out the additional dependencies (postgresql etc). Before the
buildout the whole application was a nightmare to install. Now its
looking sooo much better.

I would skip step two if I did this again, although I imagine there will
be a lot more import and deprecation errors to correct.

Hope that helps.

Regards,
Darryl

[1] buildout.cfg

[buildout]
index = http://download.zope.org/ppix
develop = .
parts = zope3
server
instance
database
test
projectpackage # the application code
find-links = http://download.zope.org/distribution/
download-cache = cache
eggs-directory = eggs # keeping this install fully separate from others
develop-eggs-directory = develop-eggs

[zope3]
recipe = zc.recipe.cmmi
url = http://www.zope.org/Products/Zope3/3.2.0/Zope-3.2.0.tgz
extra_options = --with-python=${python:location}/bin/python 
--force

[server]
recipe = zc.recipe.egg
eggs = ${projectpackage:eggs}

[instance]
recipe = zc.zope3recipes:instance
application = projectpackage
zope.conf = ${database:zconfig}

[database]
recipe = zc.recipe.filestorage

[test]
recipe = zc.recipe.testrunner
eggs = ${projectpackage:eggs}
extra-paths = ${zope3:location}/lib/python
working-directory = ${buildout:directory}/test
defaults = ['--tests-pattern', '^f?tests$',
'-v'
]

[projectpackage]
recipe = zc.zope3recipes:app
eggs = ${interpreter:eggs}
site.zcml =  # all zcml defined here

[python]
recipe = zc.recipe.cmmi
url = http://www.python.org/ftp/python/2.4.4/Python-2.4.4.tar.bz2
executable = ${buildout:parts-directory}/python/bin/python
extra_options = --with-threads
--with-readline
--enable-unicode=ucs2

[interpreter]
recipe = zc.recipe.egg
eggs = setuptools
   # list-of-eggs: lxml, sqlos etc, etc
interpreter = python
extra-paths = ${buildout:parts-directory}/zope3/lib/python




On Wed, 2007-11-07 at 17:24 -0700, Jeff Shell wrote:
> The last time I was active on this list was back in mid-august. I was
> fighting an uphill battle to try to figure out how to migrate our
> software to 'Eggs'. I ultimately had to abandon the process as there
> was just too much real work to be done, and I was getting conflicting
> answers about how to move forward. Actually, I couldn't get much help
> from the community at all. I apologize for the crankiness of this
> email. The last time I tried to get help on this topic was an
> excercise in sheer frustration. Since then, the gulf I've worried
> about seems to have gotten even bigger, and I'm feeling very stressed
> right now.
> 
> So now I see all that's going on with Zope 3 and I still don't
> understand a thing about how to move forward. We have about twelve
> active customers deployed on Zope 3, on top of one or two large
> frameworks that we've built on top if Z3. We still use the basic
> 'instance home' layout. We don't use eggs - we just check things out
> directly into the instance home. Even stuff from the Zope community,
> because it's easier to do that than to even get workingenv or any of
> these other things running.
> 
> I'm still lost about what to do. Grok is of no use to us at the
> moment. Many of these apps have been up and running for longer than
> Grok's been alive. Is there any kind of migration documentation out
> there? Or have these new ways of doing things been in use for so long
> that most people have just rolled along with them? I just don't have
> the time. I scarcely have time to keep up with the lists (which is
> obvious since I haven't read a thing for nearly three months).
> 
> I'm going to resume my conversation here, responding to myself.
> 
> August 16, 2007, Jeff Shell wrote:
> > > Jeff Shell wrote:
> > > > But now I'd like to be able to install that into "classic" zope 3.3
> > > > instance homes, trying

[Zope3-Users] Eggs and classic instance homes, again... (was Re: Eggs, workingenv.py, and 'classic' instance homes)

2007-11-07 Thread Jeff Shell
The last time I was active on this list was back in mid-august. I was
fighting an uphill battle to try to figure out how to migrate our
software to 'Eggs'. I ultimately had to abandon the process as there
was just too much real work to be done, and I was getting conflicting
answers about how to move forward. Actually, I couldn't get much help
from the community at all. I apologize for the crankiness of this
email. The last time I tried to get help on this topic was an
excercise in sheer frustration. Since then, the gulf I've worried
about seems to have gotten even bigger, and I'm feeling very stressed
right now.

So now I see all that's going on with Zope 3 and I still don't
understand a thing about how to move forward. We have about twelve
active customers deployed on Zope 3, on top of one or two large
frameworks that we've built on top if Z3. We still use the basic
'instance home' layout. We don't use eggs - we just check things out
directly into the instance home. Even stuff from the Zope community,
because it's easier to do that than to even get workingenv or any of
these other things running.

I'm still lost about what to do. Grok is of no use to us at the
moment. Many of these apps have been up and running for longer than
Grok's been alive. Is there any kind of migration documentation out
there? Or have these new ways of doing things been in use for so long
that most people have just rolled along with them? I just don't have
the time. I scarcely have time to keep up with the lists (which is
obvious since I haven't read a thing for nearly three months).

I'm going to resume my conversation here, responding to myself.

August 16, 2007, Jeff Shell wrote:
> > Jeff Shell wrote:
> > > But now I'd like to be able to install that into "classic" zope 3.3
> > > instance homes, trying to be as unobtrusive as possible.
> >
> > How have you installed other packages before? I suspect by just dumping
> > their source in INSTANCE/lib/python. Any reason not to continue to do that?
>
> Because I feel like we're falling further and further behind, or at
> least trapped in our own little world.

Yep, this is becoming even more true. We're now even further behind.

> But yes, this is how we did it. I ended up writing most of
> rocketbuild/rockout (our Rake-ish tool) because of this. There are a
> lot of external tools out there that we still don't use because we
> don't have the time to deal with the headache (made minor by
> `rockout`, but still present) of dumping sources into lib/python. For
> internal stuff, it's not so bad.

I want to get away from this (using source control as distribution
mechanism). Eggs and buildout are supposed to help here, but
ultimately it was easier to roll our own tool as we just could not
figure out how to apply them to our configurations.

We're about to do a massive server upgrade, which would be a good time
to sneak in new deployment practices.

> The longer we avoid whatever is going on with setuptools and buildout,
> the harder it will be to migrate. It's hard enough already.

Yep. Feels even harder now, but probably because they cause me so much
stress just by looking at them.

> > That seems backward. If you want to install an package into a "classic"
> > environment, it doesn't seem that surprising you'll also have to do it
> > the "classic" way...
>
> It doesn't seem entirely backward. I mean, it does. But at the same
> time... I just don't know how it's all supposed to work. But if we
> keep doing things in the 'classic' way without trying to step forward,
> then I fear we'll stay this way forever because it's already scary
> enough peeking over the hill at how buildout and all of that stuff
> works and how different it is from how we've done things. I don't want
> the gulf to get bigger, because I think that with our plans for growth
> and for a more distributed deployment server setup, 'buildout' will
> help tremendously.
>
> I'm just trying for baby steps right now, because it feels like we've
> still got a long way to go to get to anything better.
>
> I saw mention of 'workingenv' in your book, so I assumed it was or is
> possible to easily have instance homes with locally managed eggs.
> Shouldn't it be?

Still have a long way to go. Still have no answers for what to do or
how to start migrating. Some of our problem is caused by the stupidity
of CVS, which will go away when we migrate to Git.

Is there going to be a Zope 3.4, for real this time? Will it offer the
clues I'm looking for? 'zopeproject' says 'You can start a new
Zope-based web application from scratch with just two commands'. But
what about those of us who have started many many Zope based web
projects?

Thanks,
Jeff Shell
___
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope3-users