Skip to main content

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:

  1. Create a main function with all the parameters you need, annotated with any defaults.
  2. Use the @ConfigMap and @ArgMap decorators to modify the default mappings if needed.
  3. 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Filename, size & hash SHA256 hash help File type Python version Upload date
configutator-1.0.2-py3-none-any.whl (14.3 kB) Copy SHA256 hash SHA256 Wheel py3 Sep 16, 2017
configutator-1.0.2.tar.gz (11.2 kB) Copy SHA256 hash SHA256 Source None Sep 16, 2017

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page