瀏覽代碼

Interactive entry of remote backup details

Bob Mottram 10 年之前
父節點
當前提交
442fc05c88
共有 1 個檔案被更改,包括 54 行新增12 行删除
  1. 54
    12
      src/freedombone

+ 54
- 12
src/freedombone 查看文件

380
 
380
 
381
 
381
 
382
 function interactive_configuration_remote_backups {
382
 function interactive_configuration_remote_backups {
383
-    # TODO
384
-    exit 0
383
+  # clear any existing list
384
+  if [ -f $FRIENDS_SERVERS_LIST ]; then
385
+      rm -f $FRIENDS_SERVERS_LIST
386
+      touch $FRIENDS_SERVERS_LIST
387
+  fi
388
+  # number of entries made
389
+  entering_remote_backups_ctr=1
390
+
391
+  entering_remote_backups_done="no"
392
+  while [[ $entering_remote_backups_done == "no" ]]
393
+  do
394
+      data=$(tempfile 2>/dev/null)
395
+      trap "rm -f $data" 0 1 2 5 15
396
+      dialog --backtitle "Freedombone Configuration" \
397
+          --title "Remote Backup ${entering_remote_backups_ctr}" \
398
+          --form "\nPlease specify the SSH login details:" 11 55 4 \
399
+          "Username:" 1 1 "" 1 16 16 15 \
400
+          "Domain:" 2 1 "" 2 16 16 15 \
401
+          "SSH port:" 3 1 "22" 3 16 5 4 \
402
+          "Password:" 4 1 "" 4 16 20 100 \
403
+          2> $data
404
+      sel=$?
405
+      case $sel in
406
+          1) entering_remote_backups_done="yes";;
407
+          255) entering_remote_backups_done="yes";;
408
+      esac
409
+      remote_ssh_username=$(cat $data | sed -n 1p)
410
+      remote_ssh_domain=$(cat $data | sed -n 2p)
411
+      remote_ssh_port=$(cat $data | sed -n 3p)
412
+      remote_ssh_password=$(cat $data | sed -n 4p)
413
+      if [[ $remote_ssh_username != "" && \
414
+          $remote_ssh_domain != "" && \
415
+          $remote_ssh_port != "" && \
416
+          $remote_ssh_password != "" ]]; then
417
+          echo "$remote_ssh_username@$remote_ssh_domain:$remote_ssh_port//home/$remote_ssh_username $remote_ssh_password" >> $FRIENDS_SERVERS_LIST
418
+      else
419
+          entering_remote_backups_done="yes"
420
+      fi
421
+      entering_remote_backups_ctr=$((entering_remote_backups_ctr + 1))
422
+  done
423
+  if [ -f $FRIENDS_SERVERS_LIST ]; then
424
+      chown $MY_USERNAME:$MY_USERNAME $FRIENDS_SERVERS_LIST
425
+  fi
385
 }
426
 }
386
 
427
 
387
 function save_configuration_file {
428
 function save_configuration_file {
601
       1) exit 0;;
642
       1) exit 0;;
602
       255) exit 0;;
643
       255) exit 0;;
603
   esac
644
   esac
604
-  echo "result $(cat $data)"
605
   LOCAL_NETWORK_STATIC_IP_ADDRESS=$(cat $data | sed -n 1p)
645
   LOCAL_NETWORK_STATIC_IP_ADDRESS=$(cat $data | sed -n 1p)
606
   ROUTER_IP_ADDRESS=$(cat $data | sed -n 2p)
646
   ROUTER_IP_ADDRESS=$(cat $data | sed -n 2p)
607
   echo "local $LOCAL_NETWORK_STATIC_IP_ADDRESS"
647
   echo "local $LOCAL_NETWORK_STATIC_IP_ADDRESS"
659
           DOMAIN_NAME=$WIKI_DOMAIN_NAME
699
           DOMAIN_NAME=$WIKI_DOMAIN_NAME
660
       fi
700
       fi
661
 
701
 
662
-      if [[ $DDNS_PROVIDER=="default@freedns.afraid.org" ]]; then
702
+      if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
663
           data=$(tempfile 2>/dev/null)
703
           data=$(tempfile 2>/dev/null)
664
           trap "rm -f $data" 0 1 2 5 15
704
           trap "rm -f $data" 0 1 2 5 15
665
           dialog --backtitle "Freedombone Configuration" \
705
           dialog --backtitle "Freedombone Configuration" \
673
           if [ ! $WIKI_FREEDNS_SUBDOMAIN_CODE ]; then
713
           if [ ! $WIKI_FREEDNS_SUBDOMAIN_CODE ]; then
674
               exit 5277
714
               exit 5277
675
           fi
715
           fi
676
-          if [[ $DOMAIN_NAME==$WIKI_DOMAIN_NAME ]]; then
716
+          if [[ $DOMAIN_NAME == "$WIKI_DOMAIN_NAME" ]]; then
677
               FREEDNS_SUBDOMAIN_CODE=$WIKI_FREEDNS_SUBDOMAIN_CODE
717
               FREEDNS_SUBDOMAIN_CODE=$WIKI_FREEDNS_SUBDOMAIN_CODE
678
           fi
718
           fi
679
       fi
719
       fi
706
               exit 7648
746
               exit 7648
707
           fi
747
           fi
708
 
748
 
709
-          if [[ $DDNS_PROVIDER=="default@freedns.afraid.org" ]]; then
749
+          if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
710
               data=$(tempfile 2>/dev/null)
750
               data=$(tempfile 2>/dev/null)
711
               trap "rm -f $data" 0 1 2 5 15
751
               trap "rm -f $data" 0 1 2 5 15
712
               dialog --backtitle "Freedombone Configuration" \
752
               dialog --backtitle "Freedombone Configuration" \
740
           if [ ! $DOMAIN_NAME ]; then
780
           if [ ! $DOMAIN_NAME ]; then
741
               DOMAIN_NAME=$OWNCLOUD_DOMAIN_NAME
781
               DOMAIN_NAME=$OWNCLOUD_DOMAIN_NAME
742
           fi
782
           fi
743
-          if [[ $DDNS_PROVIDER=="default@freedns.afraid.org" ]]; then
783
+          if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
744
               data=$(tempfile 2>/dev/null)
784
               data=$(tempfile 2>/dev/null)
745
               trap "rm -f $data" 0 1 2 5 15
785
               trap "rm -f $data" 0 1 2 5 15
746
               dialog --backtitle "Freedombone Configuration" \
786
               dialog --backtitle "Freedombone Configuration" \
754
               if [ ! $OWNCLOUD_FREEDNS_SUBDOMAIN_CODE ]; then
794
               if [ ! $OWNCLOUD_FREEDNS_SUBDOMAIN_CODE ]; then
755
                   exit 2583
795
                   exit 2583
756
               fi
796
               fi
757
-              if [[ $DOMAIN_NAME==$OWNCLOUD_DOMAIN_NAME ]]; then
797
+              if [[ $DOMAIN_NAME == "$OWNCLOUD_DOMAIN_NAME" ]]; then
758
                   FREEDNS_SUBDOMAIN_CODE=$OWNCLOUD_FREEDNS_SUBDOMAIN_CODE
798
                   FREEDNS_SUBDOMAIN_CODE=$OWNCLOUD_FREEDNS_SUBDOMAIN_CODE
759
               fi
799
               fi
760
           fi
800
           fi
777
           if [ ! $DOMAIN_NAME ]; then
817
           if [ ! $DOMAIN_NAME ]; then
778
               DOMAIN_NAME=$REDMATRIX_DOMAIN_NAME
818
               DOMAIN_NAME=$REDMATRIX_DOMAIN_NAME
779
           fi
819
           fi
780
-          if [[ $DDNS_PROVIDER=="default@freedns.afraid.org" ]]; then
820
+          if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
781
               data=$(tempfile 2>/dev/null)
821
               data=$(tempfile 2>/dev/null)
782
               trap "rm -f $data" 0 1 2 5 15
822
               trap "rm -f $data" 0 1 2 5 15
783
               dialog --backtitle "Freedombone Configuration" \
823
               dialog --backtitle "Freedombone Configuration" \
791
               if [ ! $REDMATRIX_FREEDNS_SUBDOMAIN_CODE ]; then
831
               if [ ! $REDMATRIX_FREEDNS_SUBDOMAIN_CODE ]; then
792
                   exit 9654
832
                   exit 9654
793
               fi
833
               fi
794
-              if [[ $DOMAIN_NAME==$REDMATRIX_DOMAIN_NAME ]]; then
834
+              if [[ $DOMAIN_NAME == "$REDMATRIX_DOMAIN_NAME" ]]; then
795
                   FREEDNS_SUBDOMAIN_CODE=$REDMATRIX_FREEDNS_SUBDOMAIN_CODE
835
                   FREEDNS_SUBDOMAIN_CODE=$REDMATRIX_FREEDNS_SUBDOMAIN_CODE
796
               fi
836
               fi
797
           fi
837
           fi
811
       esac
851
       esac
812
 
852
 
813
       if [ $MICROBLOG_DOMAIN_NAME ]; then
853
       if [ $MICROBLOG_DOMAIN_NAME ]; then
814
-          if [[ $DDNS_PROVIDER=="default@freedns.afraid.org" ]]; then
854
+          if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
815
               data=$(tempfile 2>/dev/null)
855
               data=$(tempfile 2>/dev/null)
816
               trap "rm -f $data" 0 1 2 5 15
856
               trap "rm -f $data" 0 1 2 5 15
817
               dialog --backtitle "Freedombone Configuration" \
857
               dialog --backtitle "Freedombone Configuration" \
844
           exit 3846
884
           exit 3846
845
       fi
885
       fi
846
 
886
 
847
-      if [[ $DDNS_PROVIDER=="default@freedns.afraid.org" ]]; then
887
+      if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
848
           data=$(tempfile 2>/dev/null)
888
           data=$(tempfile 2>/dev/null)
849
           trap "rm -f $data" 0 1 2 5 15
889
           trap "rm -f $data" 0 1 2 5 15
850
           dialog --backtitle "Freedombone Configuration" \
890
           dialog --backtitle "Freedombone Configuration" \
877
 
917
 
878
   save_configuration_file
918
   save_configuration_file
879
 
919
 
920
+  FRIENDS_SERVERS_LIST=/home/$MY_USERNAME/backup.list
921
+
880
   dialog --title "Encrypted backup to other servers" \
922
   dialog --title "Encrypted backup to other servers" \
881
       --backtitle "Freedombone Configuration" \
923
       --backtitle "Freedombone Configuration" \
882
       --defaultno \
924
       --defaultno \