Просмотр исходного кода

Add v-rebuild-all

Rebuilds all assets associated with a user account (web domains, DNS zones, mail domains, databases, cron jobs, and user account configuration).
Kristan Kenney 5 лет назад
Родитель
Сommit
f2675db7f9
3 измененных файлов с 64 добавлено и 2 удалено
  1. 62 0
      bin/v-rebuild-all
  2. 1 1
      web/bulk/db/index.php
  3. 1 1
      web/bulk/user/index.php

+ 62 - 0
bin/v-rebuild-all

@@ -0,0 +1,62 @@
+#!/bin/bash
+# info: rebuild all assets for a specified user
+# options: USER [RESTART]
+#
+# The function rebuilds all assets for a user account:
+# - Web domains
+# - DNS zones
+# - Mail domains
+# - Databases
+# - Cron Jobs
+# - User account configuration
+
+#----------------------------------------------------------#
+#                    Variable&Function                     #
+#----------------------------------------------------------#
+
+# Argument definition
+user=$1
+restart=$2
+
+# Includes
+source $HESTIA/func/main.sh
+source $HESTIA/func/rebuild.sh
+source $HESTIA/conf/hestia.conf
+
+# Export sbin
+export PATH=$PATH:/usr/sbin
+
+
+#----------------------------------------------------------#
+#                    Verifications                         #
+#----------------------------------------------------------#
+
+check_args '1' "$#" 'USER [RESTART]'
+is_format_valid 'user'
+is_object_valid 'user' 'USER' "$user"
+is_object_unsuspended 'user' 'USER' "$user"
+
+
+#----------------------------------------------------------#
+#                       Action                             #
+#----------------------------------------------------------#
+
+# Rebuild loop
+for user in $($HESTIA/bin/v-list-sys-users plain); do
+    $BIN/v-rebuild-web-domains $user $restart
+    $BIN/v-rebuild-dns-domains $user $restart
+    $BIN/v-rebuild-mail-domains $user $restart
+    $BIN/v-rebuild-databases $user $restart
+    $BIN/v-rebuild-cron-jobs $user $restart
+    $BIN/v-rebuild-user $user $restart
+done
+
+
+#----------------------------------------------------------#
+#                       Hestia                             #
+#----------------------------------------------------------#
+
+# Logging
+log_event "$OK" "$ARGUMENTS"
+
+exit

+ 1 - 1
web/bulk/db/index.php

@@ -17,7 +17,7 @@ $action = $_POST['action'];
 
 if ($_SESSION['user'] == 'admin') {
     switch ($action) {
-        case 'rebuild': $cmd='v-rebuild-web-domain';
+        case 'rebuild': $cmd='v-rebuild-database';
             break;
         case 'delete': $cmd='v-delete-database';
             break;

+ 1 - 1
web/bulk/user/index.php

@@ -25,7 +25,7 @@ if ($_SESSION['user'] == 'admin') {
             break;
         case 'update counters': $cmd='v-update-user-counters';
             break;
-        case 'rebuild': $cmd='v-rebuild-user'; $restart = 'no';
+        case 'rebuild': $cmd='v-rebuild-all'; $restart = 'no';
             break;
         case 'rebuild web': $cmd='v-rebuild-web-domains'; $restart = 'no';
             break;