File size: 3,611 Bytes
6726122
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
93ce4a4
 
6726122
 
 
 
 
 
 
 
 
 
 
 
 
df77d14
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2327af6
 
df77d14
 
 
 
6726122
96ee7dd
6726122
 
 
 
 
 
 
 
 
93ce4a4
 
6726122
 
 
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
141
142
143
#!/bin/bash

# version 1

# output filename add
FLAG_NAME=$1

# null
FLAG_NULL=$2

# flag Key
FLAG_KEY=$3

if [ -z "$FLAG_NAME" ] || [ "$FLAG_NAME" = " " ]; then
  FLAG_NAME="null"
fi
if [ -z "$FLAG_NULL" ]; then
  FLAG_NULL="null"
fi
if [ -z "$FLAG_KEY" ]; then
  FLAG_KEY="null"
fi

cd /workspace
cd *

R_PATH="$(pwd)"

if [ ! -d "$R_PATH/CU" ]; then
  echo "CU folder not found."
  exit 101
fi

MUID=""

if [ -f "$R_PATH/CU/MUID.txt" ]; then
  MUID=$(<./CU/MUID.txt)
  MUID=${MUID%%+( )}
  MUID=${MUID%%+(\n)}
  #MUID_LEN=${#MUID}
  #MUID=${MUID:1:MUID_LEN-2}
else
  RANDOM_STR1="$(head -c 128 /dev/urandom | tr -dc 'A-Z')ZZ"
  RANDOM_STR2="$(head -c 384 /dev/urandom | tr -dc 'A-Z0-9')ZZZZZZZZZZZZZZ"
  MUID="${RANDOM_STR1::1}${RANDOM_STR2::14}${RANDOM_STR1:1:1}"
  echo -e "$MUID" >> ./CU/MUID.txt
fi

if [ ! -f "$R_PATH/CU/autoUpload_Log.txt" ]; then
  touch ./CU/autoUpload_Log.txt
fi

if [ ! -f "$R_PATH/CU/autoUpload_UploadQueueIng.txt" ]; then
  touch ./CU/autoUpload_UploadQueueIng.txt
fi

if [ ! -f "$R_PATH/CU/autoUpload_UploadQueueDone.txt" ]; then
  touch ./CU/autoUpload_UploadQueueDone.txt
fi

OUPUT_PATH=""

if [ -d "$R_PATH/output" ]; then
  OUPUT_PATH="output"
elif [ -d "$R_PATH/outputs" ]; then
  OUPUT_PATH="outputs"
elif [ -d "$R_PATH/CU/output" ]; then
  OUPUT_PATH="CU/output"
elif [ -d "$R_PATH/CU/outputs" ]; then
  OUPUT_PATH="CU/outputs"
else
  echo "output folder not found."
  exit 102
fi

#echo "$FLAG_NAME $FLAG_NULL $FLAG_KEY $R_PATH $OUPUT_PATH $MUID"

if [ "$FLAG_KEY" = "null" ]; then
  # enter when the user runs manually.
  apt-get install -y inotify-tools
  apt-get install -y zip
  pip3 install pcloud
  CURRNET_PID=$$
  #kill -9 $(ps -ef | grep 'autoUpload' | grep -v 'grep' | awk '{print $2}')
  kill -9 $(ps -ef | grep 'autoUpload' | grep -v 'grep' | awk -v pid=$CURRNET_PID '$2 != pid {print $2}')
  kill -15 $(ps -ef | grep 'out.sh' | grep -v 'grep' | awk '{print $2}')
  kill -15 $(ps -ef | grep 'pcloud' | grep -v 'grep' | awk '{print $2}')
  FLAG_KEY="startDaemon"
  bash -c ". $R_PATH/autoUpload.sh $FLAG_NAME $FLAG_NULL $FLAG_KEY"
elif [ "$FLAG_KEY" = "startDaemon" ]; then
  cd /workspace
  cd *
  FLAG_KEY="runningDaemon"
  chmod 755 autoUpload.sh
  nohup ./autoUpload.sh $FLAG_NAME $FLAG_NULL $FLAG_KEY 2>&1 &
elif [ "$FLAG_KEY" = "runningDaemon" ]; then
  cd /workspace
  cd *
  while :
  do
    UT='0'
    uptime_minutes=$(awk '{print int($1/60)}' /proc/uptime)
    if [ "$uptime_minutes" -le 30 ]; then
      UT='0'
    elif [ "$uptime_minutes" -le 60 ]; then
      UT='1'
    elif [ "$uptime_minutes" -le 90 ]; then
      UT='2'
    elif [ "$uptime_minutes" -le 120 ]; then
      UT='3'
    elif [ "$uptime_minutes" -le 150 ]; then
      UT='4'
    elif [ "$uptime_minutes" -le 180 ]; then
      UT='5'
    elif [ "$uptime_minutes" -le 210 ]; then
      UT='6'
    elif [ "$uptime_minutes" -le 240 ]; then
      UT='7'
    elif [ "$uptime_minutes" -le 270 ]; then
      UT='8'
    elif [ "$uptime_minutes" -le 300 ]; then
      UT='9'
    else
      UT='Z'
    fi
    bash -c ". $R_PATH/out.sh 1 $FLAG_NAME$UT"
    sleep 288s
    for item in $(find . -name "outp_${FLAG_NAME}*.zip"); do
      rm -rf $item
    done
    sleep 10s
  done
elif [ "$FLAG_KEY" = "clean" ]; then
  rm -rf "$R_PATH/CU/autoUpload_UploadQueueIng.txt"
  rm -rf "$R_PATH/CU/autoUpload_UploadQueueDone.txt"
elif [ "$FLAG_KEY" = "kill" ]; then
  kill -15 $(ps -ef | grep 'autoUpload.sh' | grep -v 'grep' | awk '{print $2}')
  kill -15 $(ps -ef | grep 'out.sh' | grep -v 'grep' | awk '{print $2}')
  kill -15 $(ps -ef | grep 'pcloud' | grep -v 'grep' | awk '{print $2}')
else
  :
fi