Sfoglia il codice sorgente

Optional install directory

Bob Mottram 7 anni fa
parent
commit
a7e550ebc5
1 ha cambiato i file con 63 aggiunte e 12 eliminazioni
  1. 63
    12
      src/freedombone-template

+ 63
- 12
src/freedombone-template Vedi File

@@ -41,6 +41,7 @@ app_node=
41 41
 app_onion_only=
42 42
 app_port=''
43 43
 app_daemon=
44
+app_dir=
44 45
 your_name=''
45 46
 your_email=''
46 47
 SHOW_ON_ABOUT=1
@@ -65,6 +66,7 @@ function show_help {
65 66
     echo $'  -p --php [yes|no]                    Is this a PHP app?'
66 67
     echo $'  -s --daemon [yes|no]                 Add a daemon'
67 68
     echo $'  -d --database [mariadb|postgresql]   Type of database'
69
+    echo $'     --dir [directory]                 Where to install to'
68 70
     echo ''
69 71
     exit 0
70 72
 }
@@ -128,6 +130,10 @@ do
128 130
             shift
129 131
             app_port="$1"
130 132
             ;;
133
+        --dir)
134
+            shift
135
+            app_dir="$1"
136
+            ;;
131 137
         *)
132 138
             # unknown option
133 139
             ;;
@@ -340,8 +346,13 @@ echo "        ${app_name_upper}_DOMAIN_NAME=\$(get_completion_param \"${app_name
340 346
 echo '    fi'
341 347
 echo ''
342 348
 echo '    # update to the next commit'
343
-echo "    set_repo_commit /var/www/\$${app_name_upper}_DOMAIN_NAME/htdocs \"${app_name} commit\" \"\$${app_name_upper}_COMMIT\" \$${app_name_upper}_REPO"
344
-echo "    chown -R www-data:www-data /var/www/\${${app_name_upper}_DOMAIN_NAME}/htdocs"
349
+if [ ! $app_dir ]; then
350
+    echo "    set_repo_commit /var/www/\$${app_name_upper}_DOMAIN_NAME/htdocs \"${app_name} commit\" \"\$${app_name_upper}_COMMIT\" \$${app_name_upper}_REPO"
351
+    echo "    chown -R www-data:www-data /var/www/\${${app_name_upper}_DOMAIN_NAME}/htdocs"
352
+else
353
+    echo "    set_repo_commit ${app_dir} \"${app_name} commit\" \"\$${app_name_upper}_COMMIT\" \$${app_name_upper}_REPO"
354
+    echo "    chown -R ${app_name}:${app_name} ${app_dir}"
355
+fi
345 356
 echo '}'
346 357
 echo ''
347 358
 echo "function backup_local_${app_name} {"
@@ -350,7 +361,11 @@ echo "    if grep -q \"${app_name} domain\" \$COMPLETION_FILE; then"
350 361
 echo "        ${app_name_upper}_DOMAIN_NAME=\$(get_completion_param \"${app_name} domain\")"
351 362
 echo '    fi'
352 363
 echo ''
353
-echo "    source_directory=/var/www/\${${app_name_upper}_DOMAIN_NAME}/htdocs"
364
+if [ ! $app_dir ]; then
365
+    echo "    source_directory=/var/www/\${${app_name_upper}_DOMAIN_NAME}/htdocs"
366
+else
367
+    echo "    source_directory=${app_dir}"
368
+fi
354 369
 echo ''
355 370
 echo "    suspend_site \${${app_name_upper}_DOMAIN_NAME}"
356 371
 echo ''
@@ -376,7 +391,11 @@ echo '    fi'
376 391
 echo "    ${app_name_upper}_DOMAIN_NAME=\$(get_completion_param \"${app_name} domain\")"
377 392
 echo "    if [ \$${app_name_upper}_DOMAIN_NAME ]; then"
378 393
 echo "        temp_restore_dir=/root/temp${app_name}"
379
-echo "        ${app_name}_dir=/var/www/\${${app_name_upper}_DOMAIN_NAME}/htdocs"
394
+if [ ! $app_dir ]; then
395
+    echo "        ${app_name}_dir=/var/www/\${${app_name_upper}_DOMAIN_NAME}/htdocs"
396
+else
397
+    echo "        ${app_name}_dir=${app_dir}"
398
+fi
380 399
 echo ''
381 400
 if [[ "$database_type" == "mariadb" || "$database_type" == "mysql" ]]; then
382 401
     echo "        ${app_name}_create_database"
@@ -420,7 +439,11 @@ echo "    if grep -q \"${app_name} domain\" \$COMPLETION_FILE; then"
420 439
 echo "        ${app_name_upper}_DOMAIN_NAME=\$(get_completion_param \"${app_name} domain\")"
421 440
 echo '    fi'
422 441
 echo ''
423
-echo "    source_directory=/var/www/\${${app_name_upper}_DOMAIN_NAME}/htdocs"
442
+if [ ! $app_dir ]; then
443
+    echo "    source_directory=/var/www/\${${app_name_upper}_DOMAIN_NAME}/htdocs"
444
+else
445
+    echo "    source_directory=${app_dir}"
446
+fi
424 447
 echo ''
425 448
 echo "    suspend_site \${${app_name_upper}_DOMAIN_NAME}"
426 449
 echo ''
@@ -446,7 +469,11 @@ echo '    fi'
446 469
 echo "    ${app_name_upper}_DOMAIN_NAME=\$(get_completion_param \"${app_name} domain\")"
447 470
 echo "    if [ \$${app_name_upper}_DOMAIN_NAME ]; then"
448 471
 echo "        temp_restore_dir=/root/temp${app_name}"
449
-echo "        ${app_name}_dir=/var/www/\${${app_name_upper}_DOMAIN_NAME}/htdocs"
472
+if [ ! $app_dir ]; then
473
+    echo "        ${app_name}_dir=/var/www/\${${app_name_upper}_DOMAIN_NAME}/htdocs"
474
+else
475
+    echo "        ${app_name}_dir=${app_dir}"
476
+fi
450 477
 echo ''
451 478
 if [[ "$database_type" == "mariadb" || "$database_type" == "mysql" ]]; then
452 479
     echo "        ${app_name}_create_database"
@@ -553,20 +580,37 @@ echo '    fi'
553 580
 echo "    if [ ! -d /var/www/\$${app_name_upper}_DOMAIN_NAME/htdocs ]; then"
554 581
 echo "        if [ -d /repos/${app_name} ]; then"
555 582
 echo "            mkdir /var/www/\$${app_name_upper}_DOMAIN_NAME/htdocs"
556
-echo "            cp -r -p /repos/${app_name}/. /var/www/\$${app_name_upper}_DOMAIN_NAME/htdocs"
557
-echo "            cd /var/www/\$${app_name_upper}_DOMAIN_NAME/htdocs"
583
+if [ ! $app_dir ]; then
584
+    echo "            cp -r -p /repos/${app_name}/. /var/www/\$${app_name_upper}_DOMAIN_NAME/htdocs"
585
+    echo "            cd /var/www/\$${app_name_upper}_DOMAIN_NAME/htdocs"
586
+else
587
+    echo "            cp -r -p /repos/${app_name}/. ${app_dir}"
588
+    echo "            cd ${app_dir}"
589
+fi
558 590
 echo '            git pull'
559 591
 echo '        else'
560
-echo "            git_clone \$${app_name_upper}_REPO /var/www/\$${app_name_upper}_DOMAIN_NAME/htdocs"
592
+if [ ! $app_dir ]; then
593
+    echo "            git_clone \$${app_name_upper}_REPO /var/www/\$${app_name_upper}_DOMAIN_NAME/htdocs"
594
+else
595
+    echo "            git_clone \$${app_name_upper}_REPO ${app_dir}"
596
+fi
561 597
 echo '        fi'
562 598
 echo ''
563
-echo "        if [ ! -d /var/www/\$${app_name_upper}_DOMAIN_NAME/htdocs ]; then"
599
+if [ ! $app_dir ]; then
600
+    echo "        if [ ! -d /var/www/\$${app_name_upper}_DOMAIN_NAME/htdocs ]; then"
601
+else
602
+    echo "        if [ ! -d ${app_dir} ]; then"
603
+fi
564 604
 echo "            echo \$'Unable to clone ${app_name} repo'"
565 605
 echo '            exit 87525'
566 606
 echo '        fi'
567 607
 echo '    fi'
568 608
 echo ''
569
-echo "    cd /var/www/\$${app_name_upper}_DOMAIN_NAME/htdocs"
609
+if [ ! $app_dir ]; then
610
+    echo "    cd /var/www/\$${app_name_upper}_DOMAIN_NAME/htdocs"
611
+else
612
+    echo "    cd ${app_dir}"
613
+fi
570 614
 echo "    git checkout \$${app_name_upper}_COMMIT -b \$${app_name_upper}_COMMIT"
571 615
 echo "    set_completion_param \"${app_name} commit\" \"\$${app_name_upper}_COMMIT\""
572 616
 echo ''
@@ -684,7 +728,11 @@ if [ $app_daemon ]; then
684 728
     echo "    echo 'Type=simple' >> /etc/systemd/system/${app_name}.service"
685 729
     echo "    echo 'User=${app_name}' >> /etc/systemd/system/${app_name}.service"
686 730
     echo "    echo 'Group=${app_name}' >> /etc/systemd/system/${app_name}.service"
687
-    echo "    echo 'WorkingDirectory=TODO' >> /etc/systemd/system/${app_name}.service"
731
+    if [ ! $app_dir ]; then
732
+        echo "    echo 'WorkingDirectory=TODO' >> /etc/systemd/system/${app_name}.service"
733
+    else
734
+        echo "    echo 'WorkingDirectory=${app_dir}' >> /etc/systemd/system/${app_name}.service"
735
+    fi
688 736
     echo "    echo 'ExecStart=TODO' >> /etc/systemd/system/${app_name}.service"
689 737
     echo "    echo 'Restart=always' >> /etc/systemd/system/${app_name}.service"
690 738
     echo "    echo 'Environment=\"USER=${app_name}\"' >> /etc/systemd/system/${app_name}.service"
@@ -692,6 +740,9 @@ if [ $app_daemon ]; then
692 740
     echo "    echo '[Install]' >> /etc/systemd/system/${app_name}.service"
693 741
     echo "    echo 'WantedBy=multi-user.target' >> /etc/systemd/system/${app_name}.service"
694 742
     echo "    systemctl enable ${app_name}"
743
+    if [ $app_dir ]; then
744
+        echo "    chown -R ${app_name}:${app_name} ${app_dir}"
745
+    fi
695 746
     echo "    systemctl start ${app_name}"
696 747
 fi
697 748
 echo ''