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:
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file collective.recipe.realpath-0.1.tar.gz.
File metadata
- Download URL: collective.recipe.realpath-0.1.tar.gz
- Upload date:
- Size: 4.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
88b88f9f69dcb982a68375eb83062313a3dfc91ea43c5a8bfdd2da17734a6a5a
|
|
| MD5 |
6932b7ae25d48171cc76de01f5a0d230
|
|
| BLAKE2b-256 |
4c1f16ddee2972019476dc0bf8cc53d3d080fdd73a55fda4627dcf51fa58411d
|