Hello there!
I created a script install-plone.py that should help at least get an
idea of how the deployment of Plone 3.0 should look like.
Note that this is work in progress. I hope that people will help me
with figuring out the problems with this, and help me improve it.
You can download it from here:
http://danielnouri.org/svn/scratch/Plone/trunk/install-plone.py
It requires workingenv. Download it:
http://svn.colorstudy.com/home/ianb/workingenv/workingenv.py
If you have workingenv.py in your path, 'install-plone.py' will find
it, otherwise you need to provide the path to the script (try
'install-plone.py --help').
You can then run install-plone.py like so:
python install-plone.py --site-packages \
-f http://danielnouri.org/svn/scratch/Plone/trunk#egg=Plone-dev
-m /PATH/TO/bin/mkzopeinstance.py
/PATH/TO/NEW/INSTANCE
The --site-packages, and -f switch are forwarded to workingenv.py.
Consult 'workingenv.py --help'.
After having run install-plone.py, you should have a new instance in
/PATH/TO/NEW/INSTANCE.
Problems:
- I forked the EXTERNALS.txt from the 3.0 bundle. I didn't dare to
put an '__init__.py' with this into the bundle itself:
'__import__('pkg_resources').declare_namespace(__name__)'. This
should be all that's required though. And it shouldn't harm anyone.
- I haven't thought enough about dependency handling of Products.
Right now as you can see I'm using the 3.0 bundle. This is not what
we want for releases. Maybe we should have a '3.0-release' bundle or
so and create the egg from there.
- No lib/python packages are set up. This should be trivial though
once we have a page that links to all eggs, or once we register all
our packages with the Cheese Shop.
- Currently, the script does not install any zcml slugs in the new
instance. This should be easily fixable once we know which .zcml file
defines all our dependencies zcml-wise. (It's a pain that we have to
define our dependencies twice, though.)
- Zope does not start up due to some import error. "ImportError: No
module named ZopeVersionControl.ZopeRepository". I couldn't find this
Product, any pointers welcome!
- I expect some other problems with the Products namespace that we
need to sort out. However, I'm optimistic, as I had the Products
namespace package working when I experimented the first time with
eggifying Plone.
- The script does not activate the workingenv. Eventually, we should
change the Zope skeleton to include 'bin/activate' before doing
anything else. Currently, this means that before you start up Zope,
you have to run 'include bin/activate'.
- The script should run on Windows, though I can't test it.
Cheers
Daniel
___
Framework-Team mailing list
Framework-Team@lists.plone.org
http://lists.plone.org/mailman/listinfo/framework-team