瀏覽代碼

Change pleroma directory

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

+ 46
- 50
src/freedombone-app-pleroma 查看文件

40
 PLEROMA_REPO="https://git.pleroma.social/pleroma/pleroma.git"
40
 PLEROMA_REPO="https://git.pleroma.social/pleroma/pleroma.git"
41
 PLEROMA_COMMIT='7252f6b054dfdfac1f9bac77c442c5a1ebd898af'
41
 PLEROMA_COMMIT='7252f6b054dfdfac1f9bac77c442c5a1ebd898af'
42
 PLEROMA_ADMIN_PASSWORD=
42
 PLEROMA_ADMIN_PASSWORD=
43
+PLEROMA_DIR=/etc/pleroma
43
 
44
 
44
 PLEROMA_BACKGROUND_IMAGE_URL=
45
 PLEROMA_BACKGROUND_IMAGE_URL=
45
 
46
 
71
     remove_username="$1"
72
     remove_username="$1"
72
 
73
 
73
     ${PROJECT_NAME}-pass -u $remove_username --rmapp pleroma
74
     ${PROJECT_NAME}-pass -u $remove_username --rmapp pleroma
74
-
75
-    function_check get_completion_param
76
-    PLEROMA_DOMAIN_NAME=$(get_completion_param "pleroma domain")
77
-    if [ -d /var/www/$PLEROMA_DOMAIN_NAME ]; then
78
-        cd /var/www/$PLEROMA_DOMAIN_NAME/htdocs
79
-        php scripts/deleteprofile.php -n $remove_username -y
80
-    fi
81
 }
75
 }
82
 
76
 
83
 function add_user_pleroma {
77
 function add_user_pleroma {
86
 
80
 
87
     ${PROJECT_NAME}-pass -u $new_username -a pleroma -p "$new_user_password"
81
     ${PROJECT_NAME}-pass -u $new_username -a pleroma -p "$new_user_password"
88
 
82
 
89
-    PLEROMA_DOMAIN_NAME=$(get_completion_param "pleroma domain")
90
-    if [ -d /var/www/${PLEROMA_DOMAIN_NAME}/htdocs ]; then
91
-        cd /var/www/$PLEROMA_DOMAIN_NAME/htdocs
92
-        php scripts/registeruser.php -n $new_username -w "$new_user_password" -e "$new_username@$HOSTNAME"
93
-        ${PROJECT_NAME}-addemail -u $new_username -e "noreply@$PLEROMA_DOMAIN_NAME" -g pleroma --public no
94
-        echo '0'
95
-    else
96
-        echo '1'
97
-    fi
83
+    echo '0'
98
 }
84
 }
99
 
85
 
100
 function install_interactive_pleroma {
86
 function install_interactive_pleroma {
204
     run_system_query_postgresql "GRANT ALL ON ALL tables IN SCHEMA public TO pleroma;"
190
     run_system_query_postgresql "GRANT ALL ON ALL tables IN SCHEMA public TO pleroma;"
205
     run_system_query_postgresql "GRANT ALL ON ALL sequences IN SCHEMA public TO pleroma;"
191
     run_system_query_postgresql "GRANT ALL ON ALL sequences IN SCHEMA public TO pleroma;"
206
 
192
 
207
-    cd /var/www/$PLEROMA_DOMAIN_NAME/htdocs
193
+    cd $PLEROMA_DIR
208
     mix ecto.create
194
     mix ecto.create
209
     mix ecto.migrate
195
     mix ecto.migrate
210
 }
196
 }
341
     function_check suspend_site
327
     function_check suspend_site
342
     suspend_site ${PLEROMA_DOMAIN_NAME}
328
     suspend_site ${PLEROMA_DOMAIN_NAME}
343
 
329
 
344
-    source_directory=/var/www/${PLEROMA_DOMAIN_NAME}/htdocs
330
+    source_directory=$PLEROMA_DIR
345
     dest_directory=pleroma
331
     dest_directory=pleroma
346
     backup_directory_to_usb $source_directory $dest_directory
332
     backup_directory_to_usb $source_directory $dest_directory
347
 
333
 
361
     if [ $PLEROMA_DOMAIN_NAME ]; then
347
     if [ $PLEROMA_DOMAIN_NAME ]; then
362
         echo $"Restoring pleroma"
348
         echo $"Restoring pleroma"
363
         temp_restore_dir=/root/temppleroma
349
         temp_restore_dir=/root/temppleroma
364
-        pleroma_dir=/var/www/${PLEROMA_DOMAIN_NAME}/htdocs
350
+        pleroma_dir=$PLEROMA_DIR
365
 
351
 
366
         function_check pleroma_create_database
352
         function_check pleroma_create_database
367
         pleroma_create_database
353
         pleroma_create_database
392
     function_check suspend_site
378
     function_check suspend_site
393
     suspend_site ${PLEROMA_DOMAIN_NAME}
379
     suspend_site ${PLEROMA_DOMAIN_NAME}
394
 
380
 
395
-    source_directory=/var/www/${PLEROMA_DOMAIN_NAME}/htdocs
381
+    source_directory=$PLEROMA_DIR
396
     dest_directory=pleroma
382
     dest_directory=pleroma
397
     backup_directory_to_friend $source_directory $dest_directory
383
     backup_directory_to_friend $source_directory $dest_directory
398
 
384
 
412
     if [ $PLEROMA_DOMAIN_NAME ]; then
398
     if [ $PLEROMA_DOMAIN_NAME ]; then
413
         echo $"Restoring pleroma"
399
         echo $"Restoring pleroma"
414
         temp_restore_dir=/root/temppleroma
400
         temp_restore_dir=/root/temppleroma
415
-        pleroma_dir=/var/www/${PLEROMA_DOMAIN_NAME}/htdocs
401
+        pleroma_dir=$PLEROMA_DIR
416
 
402
 
417
         function_check pleroma_create_database
403
         function_check pleroma_create_database
418
         pleroma_create_database
404
         pleroma_create_database
445
     systemctl disable pleroma
431
     systemctl disable pleroma
446
     rm /etc/systemd/system/pleroma.service
432
     rm /etc/systemd/system/pleroma.service
447
 
433
 
434
+    apt-get -yq remove esl-erlang elixir
435
+
448
     function_check remove_nodejs
436
     function_check remove_nodejs
449
     remove_nodejs pleroma-backend
437
     remove_nodejs pleroma-backend
450
 
438
 
460
     if [ -f /etc/nginx/sites-available/$PLEROMA_DOMAIN_NAME ]; then
448
     if [ -f /etc/nginx/sites-available/$PLEROMA_DOMAIN_NAME ]; then
461
         rm /etc/nginx/sites-available/$PLEROMA_DOMAIN_NAME
449
         rm /etc/nginx/sites-available/$PLEROMA_DOMAIN_NAME
462
     fi
450
     fi
451
+    if [ -d $PLEROMA_DIR ]; then
452
+        rm -rf $PLEROMA_DIR
453
+    fi
463
     function_check drop_database_postgresql
454
     function_check drop_database_postgresql
464
     drop_database_postgresql
455
     drop_database_postgresql
465
     function_check remove_onion_service
456
     function_check remove_onion_service
466
     remove_onion_service pleroma ${PLEROMA_ONION_PORT}
457
     remove_onion_service pleroma ${PLEROMA_ONION_PORT}
467
     remove_app pleroma
458
     remove_app pleroma
468
     remove_completion_param install_pleroma
459
     remove_completion_param install_pleroma
469
-    sed -i '/pleroma/d' $COMPLETION_FILE
460
+    sed -i '/pleroma domain/d' $COMPLETION_FILE
461
+    sed -i '/pleroma commit/d' $COMPLETION_FILE
470
 
462
 
471
     function_check remove_ddns_domain
463
     function_check remove_ddns_domain
472
     remove_ddns_domain $PLEROMA_DOMAIN_NAME
464
     remove_ddns_domain $PLEROMA_DOMAIN_NAME
508
     install_nodejs pleroma-backend
500
     install_nodejs pleroma-backend
509
     install_postgresql
501
     install_postgresql
510
 
502
 
511
-    # get the repo
512
     if [ ! -d /var/www/$PLEROMA_DOMAIN_NAME ]; then
503
     if [ ! -d /var/www/$PLEROMA_DOMAIN_NAME ]; then
513
         mkdir /var/www/$PLEROMA_DOMAIN_NAME
504
         mkdir /var/www/$PLEROMA_DOMAIN_NAME
514
     fi
505
     fi
515
-    if [ ! -d /var/www/$PLEROMA_DOMAIN_NAME/htdocs ]; then
516
-
517
-        if [ -d /repos/pleroma ]; then
518
-            mkdir /var/www/$PLEROMA_DOMAIN_NAME/htdocs
519
-            cp -r -p /repos/pleroma/. /var/www/$PLEROMA_DOMAIN_NAME/htdocs
520
-            cd /var/www/$PLEROMA_DOMAIN_NAME/htdocs
521
-            git pull
522
-        else
523
-            function_check git_clone
524
-            git_clone $PLEROMA_REPO /var/www/$PLEROMA_DOMAIN_NAME/htdocs
525
-        fi
506
+    if [ -d $PLEROMA_DIR ]; then
507
+        rm -rf $PLEROMA_DIR
508
+    fi
526
 
509
 
527
-        if [ ! -d /var/www/$PLEROMA_DOMAIN_NAME/htdocs ]; then
528
-            echo $'Unable to clone pleroma repo'
529
-            exit 783523
530
-        fi
510
+
511
+    # create user
512
+    useradd -d $PLEROMA_DIR -s /bin/false pleroma
513
+    adduser pleroma www-data
514
+
515
+    # get the repo
516
+    if [ -d /repos/pleroma ]; then
517
+        mkdir -p $PLEROMA_DIR
518
+        cp -r -p /repos/pleroma/. $PLEROMA_DIR
519
+        cd $PLEROMA_DIR
520
+        git pull
521
+    else
522
+        function_check git_clone
523
+        git_clone $PLEROMA_REPO $PLEROMA_DIR
531
     fi
524
     fi
532
 
525
 
533
-    cd /var/www/$PLEROMA_DOMAIN_NAME/htdocs
526
+    if [ ! -d $PLEROMA_DIR ]; then
527
+        echo $'Unable to clone pleroma backend repo'
528
+        exit 783523
529
+    fi
530
+
531
+
532
+    # checkout the commit
533
+    cd $PLEROMA_DIR
534
     git checkout $PLEROMA_COMMIT -b $PLEROMA_COMMIT
534
     git checkout $PLEROMA_COMMIT -b $PLEROMA_COMMIT
535
     set_completion_param "pleroma commit" "$PLEROMA_COMMIT"
535
     set_completion_param "pleroma commit" "$PLEROMA_COMMIT"
536
-    chown -R www-data:www-data /var/www/$PLEROMA_DOMAIN_NAME/htdocs
536
+    chown -R pleroma:pleroma $PLEROMA_DIR
537
 
537
 
538
 
538
 
539
     # web config
539
     # web config
567
         echo '  access_log /dev/null;' >> $pleroma_nginx_site
567
         echo '  access_log /dev/null;' >> $pleroma_nginx_site
568
         echo '  error_log /dev/null;' >> $pleroma_nginx_site
568
         echo '  error_log /dev/null;' >> $pleroma_nginx_site
569
         echo '' >> $pleroma_nginx_site
569
         echo '' >> $pleroma_nginx_site
570
-        echo "  root /var/www/$PLEROMA_DOMAIN_NAME/htdocs;" >> $pleroma_nginx_site
570
+        echo "  root $PLEROMA_DIR;" >> $pleroma_nginx_site
571
         echo '' >> $pleroma_nginx_site
571
         echo '' >> $pleroma_nginx_site
572
         echo '  index index.html;' >> $pleroma_nginx_site
572
         echo '  index index.html;' >> $pleroma_nginx_site
573
         echo '  location / {' >> $pleroma_nginx_site
573
         echo '  location / {' >> $pleroma_nginx_site
594
     echo '  access_log /dev/null;' >> $pleroma_nginx_site
594
     echo '  access_log /dev/null;' >> $pleroma_nginx_site
595
     echo '  error_log /dev/null;' >> $pleroma_nginx_site
595
     echo '  error_log /dev/null;' >> $pleroma_nginx_site
596
     echo '' >> $pleroma_nginx_site
596
     echo '' >> $pleroma_nginx_site
597
-    echo '  # Root' >> $pleroma_nginx_site
598
-    echo "  root /var/www/$PLEROMA_DOMAIN_NAME/htdocs;" >> $pleroma_nginx_site
597
+    echo "  root $PLEROMA_DIR;" >> $pleroma_nginx_site
599
     echo '' >> $pleroma_nginx_site
598
     echo '' >> $pleroma_nginx_site
600
     echo '  index index.html;' >> $pleroma_nginx_site
599
     echo '  index index.html;' >> $pleroma_nginx_site
601
     echo '  location / {' >> $pleroma_nginx_site
600
     echo '  location / {' >> $pleroma_nginx_site
621
 
620
 
622
 
621
 
623
     # back end
622
     # back end
624
-    useradd -d /var/www/$PLEROMA_DOMAIN_NAME/htdocs/ -s /bin/false pleroma
625
-    adduser pleroma www-data
626
-
627
-    cd /var/www/$PLEROMA_DOMAIN_NAME/htdocs
623
+    cd $PLEROMA_DIR
628
     mix deps.get
624
     mix deps.get
629
 
625
 
630
     function_check pleroma_create_database
626
     function_check pleroma_create_database
637
     sed -i "s|database:.*|database: \"pleroma\",|g" $pleroma_secret
633
     sed -i "s|database:.*|database: \"pleroma\",|g" $pleroma_secret
638
     sed -i "/config :pleroma, Pleroma.Web.Endpoint/a url: [host: \"$PLEROMA_DOMAIN_NAME\", scheme: \"https\", port: 443]," $pleroma_secret
634
     sed -i "/config :pleroma, Pleroma.Web.Endpoint/a url: [host: \"$PLEROMA_DOMAIN_NAME\", scheme: \"https\", port: 443]," $pleroma_secret
639
 
635
 
640
-    pleroma_config=/var/www/$PLEROMA_DOMAIN_NAME/htdocs/config/config.exs
636
+    pleroma_config=config/config.exs
641
     sed -i "s|name: .*|name: \"$PLEROMA_TITLE\",|g" $pleroma_config
637
     sed -i "s|name: .*|name: \"$PLEROMA_TITLE\",|g" $pleroma_config
642
     sed -i "s|email: .*|email: \"$MY_EMAIL_ADDRESS\",|g" $pleroma_config
638
     sed -i "s|email: .*|email: \"$MY_EMAIL_ADDRESS\",|g" $pleroma_config
643
 
639
 
658
     echo '' >> /etc/systemd/system/pleroma.service
654
     echo '' >> /etc/systemd/system/pleroma.service
659
     echo '[Service]' >> /etc/systemd/system/pleroma.service
655
     echo '[Service]' >> /etc/systemd/system/pleroma.service
660
     echo 'User=pleroma' >> /etc/systemd/system/pleroma.service
656
     echo 'User=pleroma' >> /etc/systemd/system/pleroma.service
661
-    echo "WorkingDirectory=/var/www/$PLEROMA_DOMAIN_NAME/htdocs/pleroma"
662
-    echo "Environment=\"HOME=/var/www/$PLEROMA_DOMAIN_NAME/htdocs\"" >> /etc/systemd/system/pleroma.service
657
+    echo "WorkingDirectory=$PLEROMA_DIR"
658
+    echo "Environment=\"HOME=$PLEROMA_DIR\"" >> /etc/systemd/system/pleroma.service
663
     echo 'ExecStart=/usr/local/bin/mix phx.server' >> /etc/systemd/system/pleroma.service
659
     echo 'ExecStart=/usr/local/bin/mix phx.server' >> /etc/systemd/system/pleroma.service
664
     echo 'ExecReload=/bin/kill $MAINPID' >> /etc/systemd/system/pleroma.service
660
     echo 'ExecReload=/bin/kill $MAINPID' >> /etc/systemd/system/pleroma.service
665
     echo 'KillMode=process' >> /etc/systemd/system/pleroma.service
661
     echo 'KillMode=process' >> /etc/systemd/system/pleroma.service