|
@@ -54,6 +54,61 @@ peertube_variables=(PEERTUBE_DOMAIN_NAME
|
54
|
54
|
ARCHITECTURE
|
55
|
55
|
MY_EMAIL_ADDRESS)
|
56
|
56
|
|
|
57
|
+function peertube_import_from_syncthing {
|
|
58
|
+ { echo '#!/bin/bash';
|
|
59
|
+ echo '';
|
|
60
|
+ echo "MY_USERNAME=\$(cat /root/${PROJECT_NAME}.cfg | grep MY_USERNAME | awk -F '=' '{print \$2}')";
|
|
61
|
+ echo "if [ ! \"\$MY_USERNAME\" ]; then";
|
|
62
|
+ echo ' exit 0';
|
|
63
|
+ echo 'fi';
|
|
64
|
+ echo '';
|
|
65
|
+ echo "search_dir=/home/\$MY_USERNAME/Sync/peertube_upload";
|
|
66
|
+ echo "if [ ! -f \$search_dir/login ]; then";
|
|
67
|
+ echo ' exit 0';
|
|
68
|
+ echo 'fi';
|
|
69
|
+ echo "import_script=${PEERTUBE_DIR}/dist/server/tools/upload.js";
|
|
70
|
+ echo "if [ ! -f \$import_script ]; then";
|
|
71
|
+ echo ' exit 0';
|
|
72
|
+ echo 'fi';
|
|
73
|
+ echo '';
|
|
74
|
+ echo "peertubedomain=\"http://localhost:${PEERTUBE_PORT}\"";
|
|
75
|
+ echo "peertubeuser=\$(sed -n 1p < \"\$search_dir/login\")";
|
|
76
|
+ echo "peertubepassword=\$(sed -n 2p < \"\$search_dir/login\")";
|
|
77
|
+ echo 'peertubensfw=';
|
|
78
|
+ echo "if grep 'nsfw' \"\$search_dir/login\"; then";
|
|
79
|
+ echo " peertubensfw='--nsfw'";
|
|
80
|
+ echo 'fi';
|
|
81
|
+ echo '';
|
|
82
|
+ echo 'failed_uploads=0';
|
|
83
|
+ echo '';
|
|
84
|
+ echo "for video_file in \$search_dir/*; do";
|
|
85
|
+ echo " echo \"\$video_file\"";
|
|
86
|
+ echo " if [[ \"\$video_file\" == *'.ogv' || \"\$video_file\" == *'.mp4' || \"\$video_file\" == *'.webm' ]]; then";
|
|
87
|
+ echo " cd ${PEERTUBE_DIR} || exit 32468356";
|
|
88
|
+ echo " ";
|
|
89
|
+ echo " if ! grep \"\$video_file\" /root/.peertube_uploaded; then";
|
|
90
|
+ echo " if ! grep \"\$video_file\" /root/.peertube_uploading; then";
|
|
91
|
+ echo " echo \"\$video_file\" >> /root/.peertube_uploading";
|
|
92
|
+ echo " if node \$import_script \$peertubensfw -u \"\$peertubedomain\" -U \"\$peertubeuser\" --password \"\$peertubepassword\" -f \"\$video_file\"; then";
|
|
93
|
+ echo " echo \"\$video_file\" >> /root/.peertube_uploaded";
|
|
94
|
+ echo " sed -i \"/\$video_file/d\" /root/.peertube_uploading";
|
|
95
|
+ echo " exit 0";
|
|
96
|
+ echo ' else';
|
|
97
|
+ echo " sed -i \"/\$video_file/d\" /root/.peertube_uploading";
|
|
98
|
+ echo " failed_uploads=\$((failed_uploads+1))";
|
|
99
|
+ echo " if [ \$failed_uploads -gt 1 ]; then";
|
|
100
|
+ echo ' exit 0';
|
|
101
|
+ echo ' fi';
|
|
102
|
+ echo ' fi';
|
|
103
|
+ echo ' fi';
|
|
104
|
+ echo ' fi';
|
|
105
|
+ echo ' fi';
|
|
106
|
+ echo 'done'; } > /usr/bin/peertubesync
|
|
107
|
+
|
|
108
|
+ chmod +x /usr/bin/peertubesync
|
|
109
|
+ cron_add_mins 1 /usr/bin/peertubesync
|
|
110
|
+}
|
|
111
|
+
|
57
|
112
|
function peertube_create_database {
|
58
|
113
|
if [ -f "$IMAGE_PASSWORD_FILE" ]; then
|
59
|
114
|
PEERTUBE_ADMIN_PASSWORD="$(printf "%s" "$(cat "$IMAGE_PASSWORD_FILE")")"
|
|
@@ -326,6 +381,8 @@ function reconfigure_peertube {
|
326
|
381
|
}
|
327
|
382
|
|
328
|
383
|
function upgrade_peertube {
|
|
384
|
+ peertube_import_from_syncthing
|
|
385
|
+
|
329
|
386
|
CURR_PEERTUBE_COMMIT=$(get_completion_param "peertube commit")
|
330
|
387
|
if [[ "$CURR_PEERTUBE_COMMIT" == "$PEERTUBE_COMMIT" ]]; then
|
331
|
388
|
return
|
|
@@ -479,6 +536,14 @@ function remove_peertube {
|
479
|
536
|
remove_onion_service peertube ${PEERTUBE_ONION_PORT}
|
480
|
537
|
remove_completion_param "install_peertube"
|
481
|
538
|
sed -i '/peertube/d' "$COMPLETION_FILE"
|
|
539
|
+ sed -i '/peertubesync/d' /etc/crontab
|
|
540
|
+
|
|
541
|
+ if [ -f /usr/bin/peertubesync ]; then
|
|
542
|
+ rm /usr/bin/peertubesync
|
|
543
|
+ fi
|
|
544
|
+ if [ -f /root/peertube_uploaded ]; then
|
|
545
|
+ rm /root/peertube_uploaded
|
|
546
|
+ fi
|
482
|
547
|
|
483
|
548
|
function_check drop_database_postgresql
|
484
|
549
|
drop_database_postgresql peertube peertube
|