uConfLoad
The Universal Config Loader
==== Code can be not production quality, feedback welcome ====
TL;DR (How to?)
You can check the very basic tests/test.js.
// load moduleconst uconfload = ; // load -c arg for config file locationconst args = uconfload; // load config fileconst config = uconfload; // update config with env varsuconfload;
Why?
Simple, I wanted to have something that I find relatively simple, that I can use in container and non-container applications, and that will be the same across different programming languages (check uconfload for python also).
But there is blah!
Yes, I know, but this makes my life easier by (maybe) using blah as an underlying component.
The details
The following functions are available as part of the package:
- loadArgs
- loadConfig
- loadEnv
loadArgs
Parse command line arguments. Only '-c|--config' supported at the moment, to indicate where the config file is located. Returns a Namespace object.
loadConfig
Read and (YAML)parse the config file. Returns a dictionary (associative array; hash; dict; etc.) object.
loadEnv
Parse the passed object and update the keys starting with 'env:<type>:' with the corresponding environment variable. Logs an error if a required environment variable is not present.
Supported <type> conversions are: