[Zope3-Users] zopeproject 0.4: using without easy_installing,
egg-info error
Jeff Kowalczyk
jtk at yahoo.com
Wed Sep 19 15:50:17 EDT 2007
I would like to use zopeproject without easy_installing zopeproject and
dependencies into the system python. The steps I'm following lead to a
missing egg-info directory error on the generated project.
This is an svn checkout of zopeproject, but I'd be glad to learn the
recommended way to do this. I'm most accustomed to using the non-system
python to run bootstrap.py.
After running buildout in working copy directory:
$ /software/svn/zopeproject/bin/zopeproject MyProject
Enter user (Name of an initial administrator user): admin
Enter passwd (Password for the initial administrator user): secret
Enter eggs_dir (Location where zc.buildout will look for and place packages) ['/home/myuser/.buildout/eggs']:
Creating directory ./MyProject
Traceback (most recent call last):
File "svn/zopeproject/bin/zopeproject", line 15, in ?
zopeproject.main.zopeproject()
File "/software/svn/zopeproject/zopeproject/main.py", line 4, in zopeproject
create_project('zope_app')
File "/software/svn/zopeproject/zopeproject/script.py", line 32, in create_project
newest=options.newest)
File "/software/svn/zopeproject/zopeproject/script.py", line 58, in run_paster_create
return runner.run(option_args + ['-t', paste_template, project]
File "/home/myuser/.buildout/eggs/PasteScript-1.3.6-py2.4.egg/paste/script/command.py", line 212, in run
result = self.command()
File "/home/myuser/.buildout/eggs/PasteScript-1.3.6-py2.4.egg/paste/script/create_distro.py", line 143, in command
egg_info_dir = pluginlib.egg_info_dir(output_dir, dist_name)
File "/home/myuser/.buildout/eggs/PasteScript-1.3.6-py2.4.egg/paste/script/pluginlib.py", line 133, in egg_info_dir
raise IOError("No egg-info directory found (looked in %s)"
IOError: No egg-info directory found (looked in ./MyProject/./MyProject.egg-info,
./MyProject/log/MyProject.egg-info, ./MyProject/src/MyProject.egg-info,
./MyProject/var/MyProject.egg-info, ./MyProject/deploy.ini/MyProject.egg-info,
./MyProject/debug.ini/MyProject.egg-info, ./MyProject/zope.conf/MyProject.egg-info,
./MyProject/site.zcml/MyProject.egg-info, ./MyProject/setup.py/MyProject.egg-info,
./MyProject/buildout.cfg/MyProject.egg-info, ./MyProject/zdaemon.conf/MyProject.egg-info)
I have a non-system python installed in the usual place:
$ cat /opt/python24/python.cfg
[buildout]
parts = python
parts-directory = .
[python]
recipe = zc.recipe.cmmi
url = http://www.python.org/ftp/python/2.4.4/Python-2.4.4.tgz
$ /opt/python24/python/bin/python -V
Python 2.4.4
zc.buildout is easy_installed in the system Python:
$ cat /usr/bin/buildout
#!/usr/bin/python
# EASY-INSTALL-ENTRY-SCRIPT: 'zc.buildout==1.0.0b30','console_scripts','buildout'
__requires__ = 'zc.buildout==1.0.0b30'
import sys
from pkg_resources import load_entry_point
sys.exit(
load_entry_point('zc.buildout==1.0.0b30', 'console_scripts', 'buildout')()
)
The non-system python is the 'executable' in default.cfg
$ cat /home/myuser/.buildout/default.cfg
[buildout]
newest = false
executable = /opt/python24/python/bin/python
eggs-directory = /home/myuser/.buildout/eggs
download-directory = /home/myuser/.buildout/downloads
find-links =
http://pypi.python.org/simple/
http://download.zope.org/distribution
Presumably because of this, when I run '/usr/bin/buildout' in the svn
working copy /software/svn/zopeproject, it correctly selects the
non-system python:
$ cat /software/svn/zopeproject/bin/zopeproject
#!/opt/python24/python/bin/python
import sys
sys.path[0:0] = [
'/software/svn/zopeproject',
'/home/myuser/.buildout/eggs/PasteScript-1.3.6-py2.4.egg',
'/home/myuser/.buildout/eggs/setuptools-0.6c7-py2.4.egg',
'/home/myuser/.buildout/eggs/PasteDeploy-1.3.1-py2.4.egg',
'/home/myuser/.buildout/eggs/Paste-1.4.2-py2.4.egg',
]
import zopeproject.main
if __name__ == '__main__':
zopeproject.main.zopeproject()
Thanks for any suggestions.
More information about the Zope3-users
mailing list