An argument helper used to validate environment variables
Project description
zonar_ds_env_arg_parser
======
Overview
------
This is a simple helper that is meant to enforce and validate that environment variables are set correctly
Usage
------
```python3
from zonar_ds_env_arg_parser.env_arg_parser import env_arg_parser as parser
parser.add_argument(env_var="SOME_EVN_VAR",
required=True,
type=int,
help="Message to display about the variable")
parser.add_argument(env_var="SOMETHING_ELSE",
required=False,
default="TEST",
validation=lambda x: x.lower() == "test" or
x.lower() == "something" or
x.lower() == "something_else",
help="Some message about this variable")
parser.add_argument(env_var="TRUE",
required=False,
default="True",
type=bool, # Will convert ("yes", "true", "t", "1", "y", "yeah") to True
help="Another description about converting to True")
parser.initialize()
options = parser.get_options()
# This var doesn't have a default so 'SOME_EVN_VAR' needs to be set or it'll throw an exception
print("This is the type of SOME_EVN_VAR " + type(options.SOME_EVN_VAR)) # Should be int becasue we specified type
print("This is the value of SOMETHING_ELSE " + options.ENVIRONMENT) # Should be 'TEST' since that's the default
print("This is the value of TRUE " + options.TRUE) # Should be 'TEST' since that's the default
```
Arguments
------
Parameters that can be passed into env_arg_parser.add_argument are as follows:
| param | required | Description |
|-------|----------|-------------|
| env_var | Yes | The environment variable to look for. This will also be the name of the attribute when retrieving it. |
| required | Yes | Can be True or False, if required=False a default must be provided. |
| help | Yes | This message is displayed if an argument doesnt exist or fails validation. It should explain to the user what the argument is for to assist them in defining it. |
| default | Conditional | The default value. Must be set if required=False, cannot be set if required=True. |
| validation | No | A function should be provided that takes a single value and should return True, False or raise an Exception. False or an exception will prevent the program from launching. |
| type | No | If the value needs to be something other than a string, specify what it should be converted to.
======
Overview
------
This is a simple helper that is meant to enforce and validate that environment variables are set correctly
Usage
------
```python3
from zonar_ds_env_arg_parser.env_arg_parser import env_arg_parser as parser
parser.add_argument(env_var="SOME_EVN_VAR",
required=True,
type=int,
help="Message to display about the variable")
parser.add_argument(env_var="SOMETHING_ELSE",
required=False,
default="TEST",
validation=lambda x: x.lower() == "test" or
x.lower() == "something" or
x.lower() == "something_else",
help="Some message about this variable")
parser.add_argument(env_var="TRUE",
required=False,
default="True",
type=bool, # Will convert ("yes", "true", "t", "1", "y", "yeah") to True
help="Another description about converting to True")
parser.initialize()
options = parser.get_options()
# This var doesn't have a default so 'SOME_EVN_VAR' needs to be set or it'll throw an exception
print("This is the type of SOME_EVN_VAR " + type(options.SOME_EVN_VAR)) # Should be int becasue we specified type
print("This is the value of SOMETHING_ELSE " + options.ENVIRONMENT) # Should be 'TEST' since that's the default
print("This is the value of TRUE " + options.TRUE) # Should be 'TEST' since that's the default
```
Arguments
------
Parameters that can be passed into env_arg_parser.add_argument are as follows:
| param | required | Description |
|-------|----------|-------------|
| env_var | Yes | The environment variable to look for. This will also be the name of the attribute when retrieving it. |
| required | Yes | Can be True or False, if required=False a default must be provided. |
| help | Yes | This message is displayed if an argument doesnt exist or fails validation. It should explain to the user what the argument is for to assist them in defining it. |
| default | Conditional | The default value. Must be set if required=False, cannot be set if required=True. |
| validation | No | A function should be provided that takes a single value and should return True, False or raise an Exception. False or an exception will prevent the program from launching. |
| type | No | If the value needs to be something other than a string, specify what it should be converted to.
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 zonar_ds_env_arg_parser-1.0.1.tar.gz.
File metadata
- Download URL: zonar_ds_env_arg_parser-1.0.1.tar.gz
- Upload date:
- Size: 4.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.9.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a2e9c1b56a181739d30d7672aed38b400005ca19370152ac183efa3041024cd6
|
|
| MD5 |
3ceb7f95de8d0e65922e70ed5ee8c6ec
|
|
| BLAKE2b-256 |
26881f2f8a5c94cf5be0b11b550f22697a94551fe59297b58c2fc305032cd4ef
|
File details
Details for the file zonar_ds_env_arg_parser-1.0.1-py3-none-any.whl.
File metadata
- Download URL: zonar_ds_env_arg_parser-1.0.1-py3-none-any.whl
- Upload date:
- Size: 5.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.9.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.7.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f0f9fff3c69fcb1d911e62408be1b84487a0ec7628db419128c8360882ce2d2a
|
|
| MD5 |
2f09c47e0baf9db9338a4492901c4206
|
|
| BLAKE2b-256 |
8a7d12adc0b479322444621d8890a409d51e06d09d37c10fd5f017a37b0caac5
|