Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit e673e2c

Browse files
authoredOct 25, 2024··
Merge pull request #5 from infralovers/cleanup-application
fix: Refactoring implementation and Cleanup
2 parents 43b2688 + 5f984f5 commit e673e2c

9 files changed

+336
-382
lines changed
 

‎app.py

Lines changed: 38 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,10 @@
77
import logging
88
import logging.config
99

10-
import db_client
11-
import db_client_transform
10+
from db_client import DbClient as TransitClient
11+
from db_client_transform import DbClient as TransformClient
1212

13-
dbc = None
13+
dbc: TransitClient = None
1414
vclient = None
1515

1616
log_level = {
@@ -119,47 +119,49 @@ def update_submit():
119119
records = update_customer()
120120
return render_template('records.html', results = json.loads(records), record_updated = True)
121121

122-
if __name__ == '__main__':
123-
logger.warn('In Main...')
124-
conf = read_config()
122+
def init_vault():
123+
global dbc
124+
dbc = TransitClient()
125+
if conf.has_section('VAULT') or conf['VAULT']['Enabled'].lower() == 'true':
126+
return
127+
128+
logger.info('Vault is enabled...')
129+
vault_token = ""
130+
if conf['VAULT']['InjectToken'].lower() == 'true':
131+
logger.info('Using Injected vault token')
132+
vault_token = read_vault_token()
133+
else:
134+
vault_token = conf['VAULT']['Token']
135+
136+
if not conf['VAULT'].has_section('Transform') or conf['VAULT']['Transform'].lower() == 'false':
137+
dbc.init_vault(addr=conf['VAULT']['Address'], token=vault_token, namespace=conf['VAULT']['Namespace'], path=conf['VAULT']['KeyPath'], key_name=conf['VAULT']['KeyName'])
138+
else:
139+
logger.info('Using Transform database client...')
140+
dbc = TransformClient()
141+
dbc.init_vault(addr=conf['VAULT']['Address'], token=vault_token, namespace=conf['VAULT']['Namespace'], path=conf['VAULT']['KeyPath'], key_name=conf['VAULT']['KeyName'],transform_path=conf['VAULT']['TransformPath'], ssn_role=conf['VAULT']['SSNRole'], transform_masking_path=conf['VAULT']['TransformMaskingPath'], ccn_role=conf['VAULT']['CCNRole'])
125142

143+
if conf["VAULT"].hasattr("database_auth") and conf["VAULT"]["database_auth"] != "":
144+
dbc.vault_db_auth(conf["VAULT"]["database_auth"])
126145

146+
if __name__ == '__main__':
147+
logger.warning('In Main...')
148+
conf = read_config()
127149
logging.basicConfig(
128150
level=log_level[conf['DEFAULT']['LogLevel']],
129151
format='%(asctime)s - %(levelname)8s - %(name)9s - %(funcName)15s - %(message)s'
130152
)
131153

132154
try:
133-
dbc = db_client.DbClient()
134-
135-
if conf.has_section('VAULT'):
136-
if conf['VAULT']['Enabled'].lower() == 'true':
137-
logger.info('Vault is enabled...')
138-
# if conf['VAULT']['Transform'].lower() == 'true':
139-
# logger.info('Using Transform database client...')
140-
# try:
141-
# dbc = db_client_transform.DbClient()
142-
# except Exception as e:
143-
# logging.error("There was an error starting the server: {}".format(e))
144-
vault_token = ""
145-
if conf['VAULT']['InjectToken'].lower() == 'true':
146-
logger.info('Using Injected vault token')
147-
vault_token = read_vault_token()
148-
else:
149-
vault_token = conf['VAULT']['Token']
150-
151-
# transform_path=conf['VAULT']['TransformPath'], ssn_role=conf['VAULT']['SSNRole'], transform_masking_path=conf['VAULT']['TransformMaskingPath'], ccn_role=conf['VAULT']['CCNRole']
152-
dbc.init_vault(addr=conf['VAULT']['Address'], token=vault_token, namespace=conf['VAULT']['Namespace'], path=conf['VAULT']['KeyPath'], key_name=conf['VAULT']['KeyName'])
153-
154-
if dbc.is_initialized is False: # we didn't use dynamic credentials
155-
logger.info('Using DB credentials from config.ini...')
156-
dbc.init_db(
157-
uri=conf['DATABASE']['Address'],
158-
prt=conf['DATABASE']['Port'],
159-
uname=conf['DATABASE']['User'],
160-
pw=conf['DATABASE']['Password'],
161-
db=conf['DATABASE']['Database']
162-
)
155+
init_vault()
156+
if not dbc.is_initialized:
157+
logger.info('Using DB credentials from config.ini...')
158+
dbc.init_db(
159+
uri=conf['DATABASE']['Address'],
160+
prt=conf['DATABASE']['Port'],
161+
uname=conf['DATABASE']['User'],
162+
pw=conf['DATABASE']['Password'],
163+
db=conf['DATABASE']['Database']
164+
)
163165
appPort = conf["DEFAULT"]["port"]
164166
logger.info('Starting Flask server on {} listening on port {}'.format('0.0.0.0', appPort))
165167
app.run(host='0.0.0.0', port=appPort)

0 commit comments

Comments
 (0)
Please sign in to comment.