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.

Source Distribution

configutator-1.0.2.tar.gz (11.2 kB view details)

Uploaded Source

Built Distribution

configutator-1.0.2-py3-none-any.whl (14.3 kB view details)

Uploaded Python 3

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

Hashes for configutator-1.0.2.tar.gz
Algorithm Hash digest
SHA256 cceb70538c1f1e155942948065597398aab4868c29946e20cfb0f61ad99ecffe
MD5 f59c097a0253363eaacc938ea59c0632
BLAKE2b-256 52d05f5388cf60f09071499a7b19878297462d230c4bee8bb9ea8177c083e537

See more details on using hashes here.

File details

Details for the file configutator-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for configutator-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 9b46f107455d33e7f4ba6b820b5f04651706826891d85f8db2038e31d3bdc294
MD5 8cfda4a02a193690fbc2b3d92c87c422
BLAKE2b-256 c5aff45b1d050c870206b2b9abd6a3407da3d586be16f5a0e8faa09d8adbf59c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page