blob: 3703cbb1c00ee7bdeae9ba3ba87a1a7683c916de (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
"""module contains all db related stuff"""
from typing import Tuple
from urllib.parse import urlparse
import MySQLdb as mdb
from gn3.settings import SQL_URI
def parse_db_url() -> Tuple:
"""function to parse SQL_URI env variable note:there\
is a default value for SQL_URI so a tuple result is\
always expected"""
parsed_db = urlparse(SQL_URI)
return (parsed_db.hostname, parsed_db.username,
parsed_db.password, parsed_db.path[1:])
def database_connector() -> mdb.Connection:
"""function to create db connector"""
host, user, passwd, db_name = parse_db_url()
conn = mdb.connect(host, user, passwd, db_name)
cursor = conn.cursor()
return conn
|