38
38
host = db_host ,
39
39
port = db_port ))
40
40
41
+ data_warehouse_engine = create_engine (
42
+ 'postgresql://{user}:{password}@{host}:{port}/{database}'
43
+ .format (** (conns ['DATA_WAREHOUSE' ].get_connection_params ())))
44
+
45
+
41
46
# Set up queries array from configuration file
42
47
CRON_QUERY_FILE = settings .CRON_QUERY_FILE
43
48
logger .info (CRON_QUERY_FILE )
@@ -59,7 +64,7 @@ def split_list(a_list: list, size: int = 20):
59
64
60
65
61
66
def util_function (data_warehouse_course_id , sql_string , mysql_table , table_identifier = None , param_object = None ):
62
- df = pd .read_sql (sql_string , conns [ 'DATA_WAREHOUSE' ] , params = param_object )
67
+ df = pd .read_sql (sql_string , data_warehouse_engine , params = param_object )
63
68
logger .debug (df )
64
69
65
70
# Sql returns boolean value so grouping course info along with it so that this could be stored in the DB table.
@@ -134,7 +139,8 @@ def __init__(self) -> None:
134
139
super ().__init__ ()
135
140
self .valid_locked_course_ids : List [int ]
136
141
137
- # verify whether course ids are valid
142
+
143
+ # verify whether course ids are valid
138
144
def verify_course_ids (self ):
139
145
# whether all course ids are valid ids
140
146
invalid_course_id_list = []
@@ -149,10 +155,7 @@ def verify_course_ids(self):
149
155
course_sql = queries ['course' ].format (course_id = course_id )
150
156
logger .debug (course_sql )
151
157
152
- connect_string = \
153
- 'postgresql://{user}:{password}@{host}:{port}/{database}' \
154
- .format (** (conns ['DATA_WAREHOUSE' ].get_connection_params ()))
155
- course_df = pd .read_sql (course_sql , connect_string )
158
+ course_df = pd .read_sql (course_sql , data_warehouse_engine )
156
159
logger .debug (course_df )
157
160
158
161
# error out when course id is invalid, otherwise add DataFrame to list
@@ -230,7 +233,8 @@ def update_canvas_resource(self):
230
233
course_ids = list (map (str , self .valid_locked_course_ids ))
231
234
file_sql = queries ['resource' ]
232
235
logger .debug (file_sql )
233
- df_attach = pd .read_sql (file_sql , conns ['DATA_WAREHOUSE' ], params = {'course_ids' : tuple (course_ids )})
236
+ df_attach = pd .read_sql (file_sql , data_warehouse_engine ,
237
+ params = {'course_ids' : tuple (course_ids )})
234
238
logger .debug (df_attach )
235
239
# Update these back again based on the dataframe
236
240
# Remove any rows where file_state is not available!
@@ -553,7 +557,8 @@ def update_term(self) -> str:
553
557
554
558
term_sql : str = queries ['term' ]
555
559
logger .debug (term_sql )
556
- warehouse_term_df : pd .DataFrame = pd .read_sql (term_sql , conns ['DATA_WAREHOUSE' ])
560
+ warehouse_term_df : pd .DataFrame = pd .read_sql (term_sql ,
561
+ data_warehouse_engine )
557
562
558
563
existing_terms_ids : List [int ] = [term .id for term in list (AcademicTerms .objects .all ())]
559
564
new_term_ids : List [int ] = [int (id ) for id in warehouse_term_df ['id' ].to_list () if id not in existing_terms_ids ]
0 commit comments