sync small changes from server

This commit is contained in:
creme 2020-02-29 20:39:41 +00:00
parent 1b0f2dcff3
commit 1cdc969346
3 changed files with 42 additions and 37 deletions

View File

@ -21,42 +21,44 @@ clear_lastline() { sed -i '$ s/,$//' "$TMP_JSON" ; }
progress_userarray() { progress_userarray() {
for field in "${!line_to_set[@]}"; do for field in "${!line_to_set[@]}"; do
field_name="${field//,*/}" field_name="${field//,*/}"
field_count="${field//*,/}" field_count="${field//*,/}"
if [[ ":${field_is_array[*]}:" =~ $field_name ]] && ! [[ ":${field_finished[*]}:" =~ $field_name ]]; then if [[ ":${field_is_array[*]}:" =~ $field_name ]] && ! [[ ":${field_finished[*]}:" =~ $field_name ]]; then
# begin of user def. array
if [ -z "$field_in_progress" ] && [ "$field_count" -eq 0 ]; then if [ -z "$field_in_progress" ] && [ "$field_count" -eq 0 ]; then
fin_count='0' # begin of user def. array
field_in_progress="$field_name" fin_count='0'
cat << EOM >> "$TMP_JSON" field_in_progress="$field_name"
cat << EOM >> "$TMP_JSON"
"$field_name": [ "$field_name": [
"${line_to_set[$field]}", "${line_to_set[$field]}",
EOM EOM
elif [ "$field_in_progress" = "$field_name" ] && [ "$field_count" = "$(( "$fin_count" + 1 ))" ]; then elif [ "$field_in_progress" = "$field_name" ] && [ "$field_count" = "$(( "$fin_count" + 1 ))" ]; then
# continue user def. array # continue user def. array
fin_count="$(( "$fin_count" + 1 ))" fin_count="$(( "$fin_count" + 1 ))"
cat << EOM >> "$TMP_JSON" cat << EOM >> "$TMP_JSON"
"${line_to_set[$field]}", "${line_to_set[$field]}",
EOM EOM
if [ "$field_count" = "${hc_field_entry[$field_name]}" ]; then if [ "$field_count" = "${hc_field_entry[$field_name]}" ]; then
# end of user def. array # end of user def. array
# remove trailing ',' on last user entry # remove trailing ',' on last user entry
clear_lastline clear_lastline
cat << EOM >> "$TMP_JSON" cat << EOM >> "$TMP_JSON"
], ],
EOM EOM
unset field_in_progress unset field_in_progress
field_finished+=( "$field_name" ) field_finished+=( "$field_name" )
else else
progress_userarray progress_userarray
fi fi
elif ! [ "$field_in_progress" = "$field_name" ] && ! [[ ":${field_queue[*]}:" =~ $field_name ]]; then
field_queue+=( "$field_name" ) elif ! [ "$field_in_progress" = "$field_name" ] && ! [[ ":${field_queue[*]}:" =~ $field_name ]]; then
fi field_queue+=( "$field_name" )
fi fi
done fi
done
} }
@ -159,9 +161,9 @@ EOM
if [ -f "$INFO_FILE" ]; then if [ -f "$INFO_FILE" ]; then
count_entry='0' count_entry='0'
unset field_exists ; declare -a field_exists=() # contains field names to limit entrys unset field_exists ; declare -a field_exists=() # contains field names - distinguish single from array entries
unset field_is_array ; declare -a field_is_array=() # contains array fields to printf correct json entrys unset field_is_array ; declare -a field_is_array=() # contains all array field names to printf correct json format
unset line_to_set ; declare -A line_to_set # contains user info lines unset line_to_set ; declare -A line_to_set # contains all user info lines
unset hc_field_entry ; declare -A hc_field_entry # contains highest_count_field_entry unset hc_field_entry ; declare -A hc_field_entry # contains highest_count_field_entry
# check 'INFO_FILE' and add entrys to 'line_to_set' array # check 'INFO_FILE' and add entrys to 'line_to_set' array
@ -173,19 +175,20 @@ EOM
if ! [[ ":${field_exists[*]}:" =~ $user_field ]]; then if ! [[ ":${field_exists[*]}:" =~ $user_field ]]; then
# entry will be a single line # entry will be a single line
count_field_entry='0'
count_entry="$(( "$count_entry" + 1 ))" ; [ "$count_entry" -le '10' ] || continue
field_exists+=( "$user_field" ) field_exists+=( "$user_field" )
count_field_entry='0'
count_entry="$(( "$count_entry" + 1 ))" ; [ "$count_entry" -le 10 ] || continue
line_to_set["$user_field","$count_field_entry"]+="$user_value" line_to_set["$user_field","$count_field_entry"]+="$user_value"
else else
# entry will be a array (max. 32 entrys) # entry will be a array (max. 32 entrys)
if ! [[ ":${field_is_array[*]}:" =~ $user_field ]]; then if ! [[ ":${field_is_array[*]}:" =~ $user_field ]]; then
field_is_array+=( "$user_field" ) field_is_array+=( "$user_field" )
fi fi
count_field_entry="$(( "$count_field_entry" +1 ))" ; [ "$count_field_entry" -lt '32' ] || continue count_field_entry="$(( "$count_field_entry" +1 ))" ; [ "$count_field_entry" -lt 32 ] || continue
hc_field_entry[$user_field]="$count_field_entry" hc_field_entry[$user_field]="$count_field_entry"
line_to_set["$user_field","$count_field_entry"]+="$user_value" line_to_set["$user_field","$count_field_entry"]+="$user_value"
fi fi
fi fi
@ -284,3 +287,4 @@ chown root:www-data "$WWW_PATH"/user_updates.php
# #
exit 0 exit 0

View File

@ -4,4 +4,4 @@
SHELL=/bin/sh SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
0 * * * * root /usr/local/bin/envs.net/envs_stats.sh >/dev/null 2>&1 0 */6 * * * root /usr/local/bin/envs.net/envs_stats.sh >/dev/null 2>&1

View File

@ -253,6 +253,7 @@ if [ "$1" = "start" ]; then
# pleroma / social # pleroma / social
# => apache2 proxy (http/https) # => apache2 proxy (http/https)
$IPT -w -t nat -A PREROUTING -d 5.199.136.29 -p tcp --dport 70 -j DNAT --to-destination 192.168.1.18:7070 $IPT -w -t nat -A PREROUTING -d 5.199.136.29 -p tcp --dport 70 -j DNAT --to-destination 192.168.1.18:7070
$IPT -w -t nat -A PREROUTING -d 5.199.136.29 -p tcp --dport 7070 -j DNAT --to-destination 192.168.1.18:7070
$IPT -w -t nat -A PREROUTING -d 89.163.145.170 -p tcp --dport 7070 -j DNAT --to-destination 192.168.1.18:7070 $IPT -w -t nat -A PREROUTING -d 89.163.145.170 -p tcp --dport 7070 -j DNAT --to-destination 192.168.1.18:7070
$IPT -w -t nat -A POSTROUTING -d 192.168.1.3 -s 192.168.1.18 -j SNAT --to 5.199.136.29 $IPT -w -t nat -A POSTROUTING -d 192.168.1.3 -s 192.168.1.18 -j SNAT --to 5.199.136.29
$IPT -w -t nat -A POSTROUTING ! -d 192.168.1.0/24 -s 192.168.1.18 -j SNAT --to 5.199.136.29 $IPT -w -t nat -A POSTROUTING ! -d 192.168.1.0/24 -s 192.168.1.18 -j SNAT --to 5.199.136.29