-
Notifications
You must be signed in to change notification settings - Fork 118
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Reading push.json values from environment variables
Push.json.sample just has 4 key-value pairs which can be changed to ENV variables internally. Hence, need to write code to read from Env variables. Changing emission/net/ext_service/push/notify_interface.py to read from env variables. Using helper class config.py, based on existing template. First reading from .json file if exists, else read from env variables. If env variables are all None, then say that values not configured.
- Loading branch information
Mahadik, Mukul Chandrakant
authored and
Mahadik, Mukul Chandrakant
committed
Mar 29, 2024
1 parent
a80d7e4
commit 20e1856
Showing
2 changed files
with
40 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
import json | ||
import logging | ||
import os | ||
|
||
def get_config_data_from_env(): | ||
config_data_env = { | ||
"provider": os.getenv("PUSH_PROVIDER"), | ||
"server_auth_token": os.getenv("PUSH_SERVER_AUTH_TOKEN"), | ||
"app_package_name": os.getenv("PUSH_APP_PACKAGE_NAME"), | ||
"ios_token_format": os.getenv("PUSH_IOS_TOKEN_FORMAT") | ||
} | ||
return config_data_env | ||
|
||
def get_config_data(): | ||
try: | ||
config_file = open('conf/net/ext_service/push.json') | ||
ret_val = json.load(config_file) | ||
config_file.close() | ||
except: | ||
logging.debug("net.ext_service.push.json not configured, checking environment variables...") | ||
ret_val = get_config_data_from_env() | ||
# Check if all PUSH environment variables are not set | ||
if (not any(ret_val.values())): | ||
raise TypeError | ||
return ret_val | ||
|
||
try: | ||
config_data = get_config_data() | ||
except: | ||
logging.debug("All push environment variables are set to None") | ||
|
||
def get_config(): | ||
return config_data | ||
|
||
def reload_config(): | ||
global config_data | ||
config_data = get_config_data() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters