collective.recipe.realpath 0.1
Buildout recipe normalizes directory/path options.
Contents
This buildout recipe allows for a part containing fixed and/or relative filesystem paths as configuration options; these options are normalized in during the run of the part, making the real (full) filesystem path of the referenced paths available for use by other parts.
0.1 (2011-06-21)
- Initial release.
Overview
This recipe normalizes any option value for the part it manages if said option value begins with 'path.' -- such options are assumed to be paths. This recipe replaces relative paths of all sorts with real, full system path to files or directories.
This recipe is useful as a replacement for using non-part sections for holding path configuration; instead, use a part with this recipe, and both relative and absolute paths can be stored for use by other parts in your buildout.
Usage
Let's create a buildout with a single part containing the configuration options we want to either preserve or normalize:
>>> write('buildout.cfg',
... """
... [buildout]
... parts =
... paths
...
... [paths]
... recipe = collective.recipe.realpath
... notpath.here = something else
... path.parent = ${buildout:directory}/..
... path.to.nowhere = /dev/null
... path.var = ${buildout:directory}/var
... """)
We run this buildout...
>>> print 'start', system(buildout) # doctest:+ELLIPSIS start... Installing paths.
We can see that (only) the necesssary options have normalized path values:
>>> from os.path import dirname, realpath
>>> builddir = dirname(dirname(buildout))
>>> buildout_parent = realpath('%s/..'% builddir)
>>> cat('.installed.cfg') # doctest: +ELLIPSIS
[buildout]
...
[paths]
...
notpath.here = something else
path.parent = ...
path.to.nowhere = /dev/null
path.var = /sample-buildout/var
...
LICENSE / CREDITS
MIT-style license -- See docs/COPYING.txt Author: Sean Upton / University of Utah / upiq.org Upstream:
| File | Type | Py Version | Uploaded on | Size | # downloads |
|---|---|---|---|---|---|
| collective.recipe.realpath-0.1.tar.gz (md5) | Source | 2011-06-21 | 4KB | 255 | |
- Author: Sean Upton
- Home Page: http://svn.plone.org/svn/collective
- License: MIT
- Categories
- Package Index Owner: sdupton
- DOAP record: collective.recipe.realpath-0.1.xml
