-
Notifications
You must be signed in to change notification settings - Fork 2
/
setup.txt
101 lines (69 loc) · 2.19 KB
/
setup.txt
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
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
==========
Tech stack
==========
python
flask
ngrok
mysql
===================
3rd party APIs used
===================
mailgun
easypost
scraperapi
#crawlera
=========================
Install required packages
=========================
pip install requests
sudo apt-get install python3-dev default-libmysqlclient-dev build-essential
pip install mysqlclient
pip install easypost
pip install scraperapi-sdk
pip install bs4
pip install lxml
pip install fake_useragent
pip install python-dateutil
=========
Local env
=========
### Set env variable in config.py
env = "test"
### Upload email templates to Mailgun
./setup_templates.py
### Download Crawlera cert
#wget https://doc.scrapinghub.com/_downloads/639adb203cdcb1249a5a7618d9f4fa96/crawlera-ca.crt
#sudo cp crawlera-ca.crt /usr/local/share/ca-certificates/crawlera-ca.crt
#sudo update-ca-certificates
### Start Flask
. local/bin/activate ## 'local' is the name of the virtual env
export FLASK_APP=main.py
python3 -m flask run
### Start ngrok
cp ngrok_test.yml /home/ethan/snap/ngrok/89/.config/ngrok/ngrok.yml
[add ngrok_auth_token to ngrok.yml]
ngrok start --all --config="/home/ethan/snap/ngrok/89/.config/ngrok/ngrok.yml"
==============
Production env
==============
### Set env variable in config.py
env = "prod"
### Upload email templates to Mailgun
./setup_templates.py
### Download Crawlera cert
#wget https://doc.scrapinghub.com/_downloads/639adb203cdcb1249a5a7618d9f4fa96/crawlera-ca.crt
#sudo cp crawlera-ca.crt /usr/local/share/ca-certificates/crawlera-ca.crt
#sudo update-ca-certificates
### Start Flask if not already included in startup script
export FLASK_APP=main.py
python3 -m flask run
### Start ngrok
cp ngrok.yml /home/ethanteng_gmail_com/.ngrok2
[add ngrok_auth_token to ngrok.yml]
cd /home/ethanteng_gmail_com
#nohup ./ngrok start --all --config="/home/ethanteng_gmail_com/.ngrok2/ngrok.yml" &
nohup ngrok start --all --config="/root/snap/ngrok/89/.config/ngrok/ngrok.yml" &
### Set up cron job for daily schedule emails & checking status of custom carrier-fulfilled packages
crontab -e
01 00 * * * /home/ethanteng_gmail_com/wheresmystuff/delivery_schedule.py
* */1 * * * /home/ethanteng_gmail_com/wheresmystuff/check_custom_carrier_status.py