瀏覽代碼

Also preserve pleroma banner files

Bob Mottram 7 年之前
父節點
當前提交
8d804e63ab
共有 1 個檔案被更改,包括 23 行新增0 行删除
  1. 23
    0
      src/freedombone-app-pleroma

+ 23
- 0
src/freedombone-app-pleroma 查看文件

@@ -198,6 +198,29 @@ function expire_pleroma_posts {
198 198
     echo '    fi' >> $pleroma_expire_script
199 199
     echo 'done' >> $pleroma_expire_script
200 200
     echo '' >> $pleroma_expire_script
201
+    echo '# get the local banner files' >> $pleroma_expire_script
202
+    echo "banners=\$(sudo -u postgres psql -d pleroma -c \"select avatar->>'banner' from users where avatar->>'url' like '%${domain_name}%'\")" >> $pleroma_expire_script
203
+    echo '' >> $pleroma_expire_script
204
+    echo '# copy the banner files to a temporary directory' >> $pleroma_expire_script
205
+    echo 'arr=( $banners )' >> $pleroma_expire_script
206
+    echo 'for i in "${arr[@]}"; do' >> $pleroma_expire_script
207
+    echo '    if [[ "$i" == *'/media/'* ]]; then' >> $pleroma_expire_script
208
+    echo "        imagefile=/etc/pleroma/uploads/\$(echo \$i | sed 's|\"||g' | sed 's|,||g' | awk -F '/media/' '{print \$2}');" >> $pleroma_expire_script
209
+    echo '        if [ -f $imagefile ]; then' >> $pleroma_expire_script
210
+    echo "            imagedir=/etc/pleroma/uploads/\$(echo \$i | sed 's|\"||g' | sed 's|,||g' | awk -F '/media/' '{print \$2}' | awk -F '/' '{print \$1}')" >> $pleroma_expire_script
211
+    echo '            nowdate=$(date +%s)' >> $pleroma_expire_script
212
+    echo '            sinceepoch=$(date +%s -r $imagefile)' >> $pleroma_expire_script
213
+    echo '            daysold=$((($nowdate - $sinceepoch) / 86400))' >> $pleroma_expire_script
214
+    echo "            if [ \$daysold -ge ${expire_days_files_threshold} ]; then" >> $pleroma_expire_script
215
+    echo '                if [ ! -d $imagedir ]; then' >> $pleroma_expire_script
216
+    echo '                    mkdir $imagedir' >> $pleroma_expire_script
217
+    echo '                fi' >> $pleroma_expire_script
218
+    echo '                cp -rp $imagefile $imagedir' >> $pleroma_expire_script
219
+    echo '            fi' >> $pleroma_expire_script
220
+    echo '        fi' >> $pleroma_expire_script
221
+    echo '    fi' >> $pleroma_expire_script
222
+    echo 'done' >> $pleroma_expire_script
223
+    echo '' >> $pleroma_expire_script
201 224
     echo '# delete old files' >> $pleroma_expire_script
202 225
     echo "find /etc/pleroma/uploads/* -mtime +${expire_days_files} -exec rm -rf {} +" >> $pleroma_expire_script
203 226
     echo '' >> $pleroma_expire_script