YamJamA multi-project, shared, yaml based configuration system | |
Download |
YamJam Ranking & Summary
Advertisement
- License:
- BSD License
- Price:
- FREE
- Publisher Name:
- Jeff Hinrichs
- Publisher web site:
- http://code.google.com/u/dundeemt/
YamJam Tags
YamJam Description
A multi-project, shared, yaml based configuration system If you find yourself writing multiple tools/scripts that share common configuration settings and despise ini files, this will be of interest to you. In my setting, I frequently write code that goes against the same databases and accesses the same resources. So I am constantly repeating code for configuration settings or worse yet, hard-coding it in where it shouldn't be.YamJam is a Python module that allows you to put it in a common area that you can secure properly from prying eyes and makes working with oft used resources simple and straight forward.YamJam attributes* Project settings can saved in a user directory.* Multiple configuration files can be specified.* files are proper yaml files DetailsThe main yamjam config file is located ~/.yamjam/config.yaml* on windows: c:documents and settings.yamjamconfig.yaml* on *nix: ~/.yamjam/config.yaml Then yamjam looks for possible overrides/additions in the local config.yaml(if it exists) You can override the default config file(s) when you call the function by specifying a different one explicitly. i.e. from YamJam import yamjam myConfig = yamjam('file/path/filename')myConfig is now a dictionary populated with the values from the specified yaml config file. By default YamJam looks for 2 config.yaml files, the main and then a project specific one. You may specify one or more files. Each file path listed should be separated by semi-colons(;) myConfig = yamjam('file/path/filename;other/path/file')The config.yaml file is yaml formatted which is a superset of json.Every call to yamjam() re-reads the config file. If you wish to cache the info then do it in the calling code. i.e. myConfig = yamjam()If you only want to cache part of the configuration myCfg = yamjam() Requirements: · Python
YamJam Related Software