[Checkins] SVN: zc.recipe.zeo/branches/dev/src/zc/recipe/zeo/ added
support for blobs
Christian Zagrodnick
cz at gocept.com
Thu Jun 14 07:11:00 EDT 2007
Log message for revision 76692:
added support for blobs
made the tests a bit more robust regarding where to find python'
Changed:
U zc.recipe.zeo/branches/dev/src/zc/recipe/zeo/README.txt
U zc.recipe.zeo/branches/dev/src/zc/recipe/zeo/__init__.py
U zc.recipe.zeo/branches/dev/src/zc/recipe/zeo/tests.py
-=-
Modified: zc.recipe.zeo/branches/dev/src/zc/recipe/zeo/README.txt
===================================================================
--- zc.recipe.zeo/branches/dev/src/zc/recipe/zeo/README.txt 2007-06-14 11:10:13 UTC (rev 76691)
+++ zc.recipe.zeo/branches/dev/src/zc/recipe/zeo/README.txt 2007-06-14 11:10:59 UTC (rev 76692)
@@ -34,6 +34,7 @@
... '''
... [buildout]
... parts = storage
+ ... find-links = http://download.zope.org/distribution/
...
... [foo]
... zconfig =
@@ -56,7 +57,10 @@
If we run the buildout, we'll get a storage part:
>>> print system(join('bin', 'buildout')),
- buildout: Installing storage
+ Installing storage.
+ Generated script '/sample-buildout/parts/storage/runzeo'.
+ Generated script '/sample-buildout/parts/storage/zdrun'.
+ Generated script '/sample-buildout/bin/storage'.
>>> ls('parts', 'storage')
- runzeo
@@ -77,7 +81,6 @@
path = /var/foo/Data.fs
</filestorage>
<BLANKLINE>
- <BLANKLINE>
<eventlog>
level info
<logfile>
@@ -94,12 +97,12 @@
exit-codes 0, 2
directory /sample-buildout/parts/storage
default-to-interactive true
- python /usr/local/bin/python2.4
+ python /.../python2.4
logfile /sample-buildout/parts/storage/zeo.log
</runner>
>>> cat('parts', 'storage', 'zdrun')
- #!/usr/local/bin/python2.4
+ #!/.../python2.4
<BLANKLINE>
import sys
sys.path[0:0] = [
@@ -107,9 +110,9 @@
'/sample-buildout/eggs/zdaemon-2.0-py2.4.egg',
'/sample-buildout/eggs/ZConfig-2.4-py2.4.egg',
'/sample-buildout/eggs/zope.testing-3.4-py2.4.egg',
- '/sample-buildout/eggs/setuptools-0.6-py2.4.egg',
'/sample-buildout/eggs/zope.proxy-3.4-py2.4.egg',
'/sample-buildout/eggs/zope.interface-3.4-py2.4.egg',
+ '/sample-buildout/eggs/setuptools-0.6-py2.4.egg',
]
<BLANKLINE>
import zdaemon.zdrun
@@ -126,9 +129,9 @@
'/sample-buildout/eggs/zdaemon-2.0-py2.4.egg',
'/sample-buildout/eggs/ZConfig-2.4-py2.4.egg',
'/sample-buildout/eggs/zope.testing-3.4-py2.4.egg',
- '/sample-buildout/eggs/setuptools-0.6-py2.4.egg',
'/sample-buildout/eggs/zope.proxy-3.4-py2.4.egg',
'/sample-buildout/eggs/zope.interface-3.4-py2.4.egg',
+ '/sample-buildout/eggs/setuptools-0.6-py2.4.egg',
]
<BLANKLINE>
import ZEO.runzeo
@@ -149,9 +152,9 @@
'/sample-buildout/eggs/zdaemon-2.0-py2.4.egg',
'/sample-buildout/eggs/ZConfig-2.4-py2.4.egg',
'/sample-buildout/eggs/zope.testing-3.4-py2.4.egg',
- '/sample-buildout/eggs/setuptools-0.6-py2.4.egg',
'/sample-buildout/eggs/zope.proxy-3.4-py2.4.egg',
'/sample-buildout/eggs/zope.interface-3.4-py2.4.egg',
+ '/sample-buildout/eggs/setuptools-0.6-py2.4.egg',
]
<BLANKLINE>
import ZEO.zeoctl
@@ -190,6 +193,7 @@
... [buildout]
... develop = recipes
... parts = storage showconfig
+ ... find-links = http://download.zope.org/distribution/
...
... [foo]
... zconfig =
@@ -208,12 +212,12 @@
... ''')
>>> print system(join('bin', 'buildout')),
- buildout: Develop: /sample-buildout/recipes
+ Develop: '/sample-buildout/recipes'
<zodb>
<zeoclient>
server 8100
</zeoclient>
</zodb>
<BLANKLINE>
- buildout: Updating storage
- buildout: Installing showconfig
+ Updating storage.
+ Installing showconfig.
Modified: zc.recipe.zeo/branches/dev/src/zc/recipe/zeo/__init__.py
===================================================================
--- zc.recipe.zeo/branches/dev/src/zc/recipe/zeo/__init__.py 2007-06-14 11:10:13 UTC (rev 76691)
+++ zc.recipe.zeo/branches/dev/src/zc/recipe/zeo/__init__.py 2007-06-14 11:10:59 UTC (rev 76692)
@@ -3,7 +3,7 @@
import zc.recipe.egg
start_section = re.compile('(^|\n)[ \t]*<[^>]+>[ \t]*\n').search
-end_section = re.compile('(^|\n)[ \t]*</[^>]+>[ \t]*\n').search
+end_section = re.compile('(^|\n)[ \t]*</[^>]+>$').search
logger = logging.getLogger('zc.recipe.zeo')
@@ -11,7 +11,7 @@
def __init__(self, buildout, name, options):
self.name, self.options = name, options
-
+
options['location'] = os.path.join(
buildout['buildout']['parts-directory'],
self.name,
@@ -38,13 +38,22 @@
for option in zeo_options.iteritems()
])
- dbconfig = buildout[options['database']]['zconfig']
+ dbconfig = buildout[options['database']]['zconfig'].strip()
dbconfig = dbconfig[start_section(dbconfig).end(0):]
dbconfig = dbconfig[start_section(dbconfig).start(0):]
- dbconfig = dbconfig[:end_section(dbconfig).end(0):]
+ dbconfig = dbconfig[:end_section(dbconfig).start(0):]
dbconfig = dbconfig.replace('>', ' 1>', 1)
options['database-config'] = dbconfig
+
+ blob_dir = buildout[options['database']].get('blob-dir')
+ if blob_dir is None:
+ zeoclient_template = zeoclient_no_blob_template
+ else:
+ # Ah, we have blobs
+ zeo_options['blobs'] = True
+ zeoclient_template = zeoclient_blob_template
+
zeo = options.get('zeo', 'ZODB3')
zdaemon = options.get('zdaemon', 'ZODB3')
if zdaemon != zeo:
@@ -55,6 +64,7 @@
options['zconfig'] = zeoclient_template % dict(
address = zeo_options['address'],
+ blob_dir = blob_dir,
)
# We don't want scripts generated
@@ -90,7 +100,7 @@
))
requirements, ws = self.egg.working_set()
-
+
zc.buildout.easy_install.scripts(
[('runzeo', 'ZEO.runzeo', 'main')],
ws, options['executable'], subprogram_dir,
@@ -103,17 +113,17 @@
[('zdrun', 'zdaemon.zdrun', 'main')],
ws, options['executable'], subprogram_dir,
)
-
+
zc.buildout.easy_install.scripts(
[(self.name, 'ZEO.zeoctl', 'main')],
ws, options['executable'], options['bin-directory'],
arguments = ('\n ["-C", %r]'
'\n + sys.argv[1:]'
% conf_path),
- )
+ )
return dest, os.path.join(bin_dir, self.name)
-
+
update = install
zeo_conf = """\
@@ -149,10 +159,19 @@
</runner>
"""
-zeoclient_template = """\
+zeoclient_no_blob_template = """\
<zodb>
<zeoclient>
server %(address)s
</zeoclient>
</zodb>
"""
+
+zeoclient_blob_template = """
+<zodb>
+ <zeoclient>
+ blob-dir %(blob_dir)s
+ server %(address)s
+ </zeoclient>
+</zodb>
+"""
Modified: zc.recipe.zeo/branches/dev/src/zc/recipe/zeo/tests.py
===================================================================
--- zc.recipe.zeo/branches/dev/src/zc/recipe/zeo/tests.py 2007-06-14 11:10:13 UTC (rev 76691)
+++ zc.recipe.zeo/branches/dev/src/zc/recipe/zeo/tests.py 2007-06-14 11:10:59 UTC (rev 76692)
@@ -35,10 +35,11 @@
doctest.DocFileSuite(
'README.txt',
setUp=setUp, tearDown=zc.buildout.testing.buildoutTearDown,
+ optionflags=doctest.REPORT_NDIFF+doctest.ELLIPSIS,
checker=renormalizing.RENormalizing([
zc.buildout.testing.normalize_path,
zc.buildout.testing.normalize_script,
- zc.buildout.testing.normalize_egg_py,
+ zc.buildout.testing.normalize_egg_py,
(re.compile('#!\S+python\S*'), '#!python'),
(re.compile('/sample-buildout/eggs/'
'([a-zA-Z.0-9]+)-\S+-pyN.N(-\S+)?.egg'),
@@ -48,5 +49,4 @@
''),
])
),
-
))
More information about the Checkins
mailing list