Maps yaml nodes and command line arguments to python function parameters.
Project description
configutator
Maps yaml nodes and command line arguments to python function parameters.
To install: pip install configutator Or:
git clone git@github.com:innovate-invent/configutator.git cd configutator python3 setup.py install
To use:
Create a main function with all the parameters you need, annotated with any defaults.
Use the @ConfigMap and @ArgMap decorators to modify the default mappings if needed.
In the if __name__ == "__main__": block at the bottom of the file call the loadConfig() function.
Here is an example of the most basic use:
from configutator import loadConfig from sys import argv def foo(param1, param2, param3=None): pass if __name__ == "__main__": for argmap in loadConfig(argv, (foo,)): foo(**argmap[foo])
One thing you need to keep in mind when working with configutator is that the config, command line arguments, and function parameters are all independant. The parameters given to @ConfigMap and @ArgMap are what connects them all. You should never have to change a function signature to modify the command line functionality.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file configutator-1.0.2.tar.gz
.
File metadata
- Download URL: configutator-1.0.2.tar.gz
- Upload date:
- Size: 11.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
cceb70538c1f1e155942948065597398aab4868c29946e20cfb0f61ad99ecffe
|
|
MD5 |
f59c097a0253363eaacc938ea59c0632
|
|
BLAKE2b-256 |
52d05f5388cf60f09071499a7b19878297462d230c4bee8bb9ea8177c083e537
|
File details
Details for the file configutator-1.0.2-py3-none-any.whl
.
File metadata
- Download URL: configutator-1.0.2-py3-none-any.whl
- Upload date:
- Size: 14.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 |
9b46f107455d33e7f4ba6b820b5f04651706826891d85f8db2038e31d3bdc294
|
|
MD5 |
8cfda4a02a193690fbc2b3d92c87c422
|
|
BLAKE2b-256 |
c5aff45b1d050c870206b2b9abd6a3407da3d586be16f5a0e8faa09d8adbf59c
|