A Config Management CLI Tool similar to dynaconf for python 2 and above
Project description
A Config Management CLI Tool similar to dynaconf for python 2 and above
=============================================================================
The library provides a basic cli tool config_py2 to initialize a config mechanism in the current directory
Once installed you can run the --help to see the list of commands and options supported.
Please note that although the validation is missing currently, it will be supported in future releases.
$ config_py2 --help
Usage: config_py2 [OPTIONS] COMMAND [ARGS]
Options:
--version Show config_py2 version currently installed
--help Show this message and exit
Commands:
init Inits a config_py2 project. Default behavior of using `settings.toml` can be overriden with [ARGS]
list Lists all defined config values
Args: Optionally use EITHER one of these in conjunction with `init` command
-f, --filename Pass one or more of this followed by a filename (with extension) to give a list of file(s) to use for config
-t, --filetype Pass one or more of this followed by a filetype (extension) to use for settings file.
Possible values are: [toml | json | yaml]
Please note that this option will not be used if filenames are passed via the -f, --filename flag
-e, --env_prefix Pass this option to override the ENV_PREFIX that will be used to override configs with the shell variables
Format of environment variables will be `ENV_PREFIX_{}`. By default it is set to 'CONFIG'
Examples to get you started with the init command
# Initializes a config_manager.py and settings.toml with placeholders for various environments
$ config_py2 init
Configuring your environment. Please Wait !
# Initializes a config_manager.py and settings.json with placeholders for various environments
$ config_py2 init -t json
Configuring your environment. Please Wait !
# Initializes a config_manager.py and settings.toml, settings-override.toml with placeholders for various environments
# Note that the configs will be read in the same order as provided during the `init` command
# Also note that the subsequent settings files don't need to have a `default` section of their own as long
# as the first file has one. This can be useful when you have seperate files for different environments
$ config_py2 init -f settings.toml -f settings-override.toml
Configuring your environment. Please Wait !
# This wil print the list of all configs as it'll be available for your application
$ config_py2 list
{
"APP_ENV": "local",
"CONFIG_ENVIRONMENT": "local"
}
Examples for usage in code once the config mechanism is initialized via the cli-tool
$ export CONFIG_ENVIROMENT=local
$ python
>>> from config import settings
>>> settings.APP_ENV
'local'
>>> settings.CONFIG_ENVIRONMENT
'local'
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
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file config_py2-1.3.3.tar.gz.
File metadata
- Download URL: config_py2-1.3.3.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/44.1.0 requests-toolbelt/0.9.1 tqdm/4.64.0 CPython/2.7.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c795645e6ee6ecaa241cf71c158136a504343495e38c7df53efe4d2e659e0475
|
|
| MD5 |
1211e42b72c7c8d4f8bb26b549b0b895
|
|
| BLAKE2b-256 |
73b49442e1efda3cb0d92ca0e378d232c1dcdbdccdf2280e4b40b5d4d06b3372
|
File details
Details for the file config_py2-1.3.3-py2-none-any.whl.
File metadata
- Download URL: config_py2-1.3.3-py2-none-any.whl
- Upload date:
- Size: 17.6 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.15.0 pkginfo/1.8.3 requests/2.27.1 setuptools/44.1.0 requests-toolbelt/0.9.1 tqdm/4.64.0 CPython/2.7.18
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c87b5c7b224790cf805679530893359e0d9761d5f660b9b2fb83d9b286c988d4
|
|
| MD5 |
a14e674e0e479ae805cf36a2487fc9e2
|
|
| BLAKE2b-256 |
ee4bfbdd68b3c52e24f09c3242e91c8ec1e4f12bb0453b6fe86da3f8bb5617b8
|