|
@@ -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 ''
|