-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrun_jobs.py
44 lines (36 loc) · 1.47 KB
/
run_jobs.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
import logging
import os
import argparse
from importers.bank_import import BankImporter
from importers.credit_card_import import CreditCardImporter
from importers.restaurant_import import RestaurantCardImporter
from importers.gc_bank_importer import GoCardlessBankImporter
from importers.gc_cc_1_import import GoCardlessCC1Importer
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)
CC_IMPORTS_DIR = os.getenv("CC_IMPORTS_DIR")
BANK_IMPORTS_DIR = os.getenv("BANK_IMPORTS_DIR")
RESTAURANT_IMPORTS_DIR = os.getenv("RESTAURANT_IMPORTS_DIR")
GC_IMPORTS_DIR = os.getenv("GC_IMPORTS_DIR")
GC_CC1_IMPORTS_DIR = os.getenv("GC_CC1_IMPORTS_DIR")
GC_BANK1_IMPORTS_DIR = os.getenv("GC_BANK1_IMPORTS_DIR")
def run(mode):
if mode == "monthly":
# run monthly
logging.info("Running SCRAPING bank job...")
CreditCardImporter(CC_IMPORTS_DIR).run()
RestaurantCardImporter(RESTAURANT_IMPORTS_DIR).run()
logging.info("Bank job complete.")
elif mode == "daily":
# run GC jobs daily
logging.info("Running GC job...")
BankImporter(BANK_IMPORTS_DIR).run()
GoCardlessBankImporter(GC_BANK1_IMPORTS_DIR).run()
GoCardlessCC1Importer(GC_CC1_IMPORTS_DIR).run()
logging.info("Credit card job complete.")
if __name__ == "__main__":
parser = argparse.ArgumentParser(description="Run all jobs.")
parser.add_argument("--mode", type=str)
args = parser.parse_args()
mode = args.mode
run(mode)