-
Notifications
You must be signed in to change notification settings - Fork 1
/
execupdateV2.sh
executable file
·140 lines (122 loc) · 4.05 KB
/
execupdateV2.sh
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
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
#!/bin/bash -l
####n
# Stop Covid19nara
# The Script to make JSON
####
# アップデートフラグ:更新あれば1
UPDATE_FLAG=0
# 公開用のディレクトリ
TGT_JSON_DIR="../html/api/"
# 奈良県の感染データ
TJSON_datapref="data.json"
TEMP_datapref="./data/data.json"
TEMP_dataprefSaved=${TEMP_datapref}"_saved"
# 奈良県のニュース
TJSON_newspref="news.json"
TEMP_newspref="./data/news.json"
TEMP_newsprefSaved=${TEMP_newspref}"_saved"
# 奈良市の感染データ
TJSON_datacity="data_naracity.json"
TEMP_datacity="./data/data_naracity.json"
TEMP_datacitySaved=${TEMP_datacity}"_saved"
# 奈良市のニュース
TJSON_newscity="news_naracity.json"
TEMP_newscity="./data/news_naracity.json"
TEMP_newscitySaved=${TEMP_newscity}"_saved"
TEMPFILE1="./updatetmp1.$$"
TEMPFILE2="./updatetmp2.$$"
####
# ファイル比較:loastUpdate以外
####
function CheckDiff()
{
if [ ! -e $1 ]; then
echo 1;
elif [ ! -e $2 ]; then
echo 1;
else
grep -v lastUpdate $1 > ${TEMPFILE1}
grep -v lastUpdate $2 > ${TEMPFILE2}
diff ${TEMPFILE1} ${TEMPFILE2} > /dev/null 2>&1
if [ $? -ne 0 ] ; then
echo 1
else
echo 0
fi
rm -f $TEMPFILE1 $TEMPFILE2
fi
}
########
# Main
########
echo " JSON Update Scrpit"
####
# 奈良県/奈良市のサイトスクレイピング:新着情報の抽出実行
####
echo "-- Scraping news from Nara Pref"
cmd="python3 ./scraping_naraNews.py -p ${TEMP_newspref} -c ${TEMP_newscity} > /dev/null 2>&1"
echo " exec: " ${cmd}
eval ${cmd}
# 保存データと比較し変更があれば公開場所にコピー
ret=`CheckDiff ${TEMP_newspref} ${TEMP_newsprefSaved}`
if [ $ret == "1" ] ; then
echo "II ${TJSON_newspref} Found updete : News in Prefecture"
UPDATE_FLAG=1
# コピーを保存し公開フォルダにコピー
cp ${TEMP_newspref} ${TEMP_newsprefSaved}
cp ${TEMP_newspref} ${TGT_JSON_DIR}${TJSON_newspref}
fi
# 保存データと比較し変更があれば公開場所にコピー
#ret=`CheckDiff ${TEMP_newscity} ${TEMP_newscitySaved}`
#if [ $ret == "1" ] ; then
# echo "II ${TJSON_newscity} Found updete : News in City"
# UPDATE_FLAG=1
# # コピーを保存し公開フォルダにコピー
# cp ${TEMP_newscity} ${TEMP_newscitySaved}
# cp ${TEMP_newscity} ${TGT_JSON_DIR}${TJSON_newscity}
#fi
####
# 奈良県感染データ更新:グーグルスプレッドシート参照
####
echo "-- Making data,json from GoogleSpreadSheet"
cmd="python3 ./convert_naraprefV2.py > /dev/null 2>&1"
echo " exec: " ${cmd}
eval ${cmd}
# 保存データと比較し変更があれば公開場所にコピー
ret=`CheckDiff ${TEMP_datapref} ${TEMP_dataprefSaved}`
if [ $ret == "1" ] ; then
echo "II ${TJSON_datapref} Found updete : Prefecture Data"
UPDATE_FLAG=1
# コピーを保存し公開フォルダにコピー
cp ${TEMP_datapref} ${TEMP_dataprefSaved}
cp ${TEMP_datapref} ${TGT_JSON_DIR}${TJSON_datapref}
fi
####
# 奈良市感染データ更新:グーグルスプレッドシート参照
####
echo "-- Making naracity.json from GoogleSpreadSheet"
cmd="python3 ./convert_naracityV2.py > /dev/null 2>&1"
echo " exec: " ${cmd}
eval ${cmd}
# 保存データと比較し変更があれば公開場所にコピー
ret=`CheckDiff ${TEMP_datacity} ${TEMP_datacitySaved}`
if [ $ret == "1" ] ; then
echo "II ${TJSON_datacity} Found updete : Nara City Data"
UPDATE_FLAG=1
# コピーを保存し公開フォルダにコピー
cp ${TEMP_datacity} ${TEMP_datacitySaved}
cp ${TEMP_datacity} ${TGT_JSON_DIR}${TJSON_datacity}
fi
# 開発サイトへのデプロイ:要環境変数 GITHUB_TOKEN
if [ ${UPDATE_FLAG} == 1 ]; then
echo "II Exec Github Action for data update."
date +" at %Y/%m/%d %H:%m:%S"
# 開発サイトへのデプロイ:要環境変数 GITHUB_TOKEN
cmd="bash ./githubDeployment.sh -b"
echo " exec: " ${cmd}
eval ${cmd}
# 本番サイトへのデプロイ:要環境変数 GITHUB_TOKEN
cmd="bash ./githubDeployment.sh -b -r master -e production"
#echo " exec: " ${cmd}
#eval ${cmd}
fi