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

Softaculous enable/disable scripts

Serghey Rodin 8 лет назад
Родитель
Сommit
7d956abd59

+ 122 - 0
bin/v-add-vesta-softaculous

@@ -0,0 +1,122 @@
+#!/bin/bash
+# info: add vesta softaculous
+# options: [TYPE]
+#
+# The script enables softaculous plugin
+
+
+#----------------------------------------------------------#
+#                    Variable&Function                     #
+#----------------------------------------------------------#
+
+TYPE=$1
+
+# Includes
+source /etc/profile
+source $VESTA/func/main.sh
+source $VESTA/conf/vesta.conf
+
+
+#----------------------------------------------------------#
+#                    Verifications                         #
+#----------------------------------------------------------#
+
+if [ "$TYPE" = 'WEB' ]; then
+    $BIN/v-schedule-vesta-softaculous
+    exit
+else
+    cmd="v-add-vesta-softaculous"
+    check_cron=$(grep "$cmd" $VESTA/data/users/admin/cron.conf 2> /dev/null)
+    if [ ! -z "$check_cron" ]; then
+        eval $check_cron
+        $BIN/v-delete-cron-job admin $JOB
+    fi
+fi
+
+if [ "$SOFTACULOUS" = 'yes' ]; then
+    exit
+fi
+
+
+
+#----------------------------------------------------------#
+#                       Action                             #
+#----------------------------------------------------------#
+
+# Cleaning yum cache
+if [ -e "/etc/redhat-release" ]; then
+    yum -q clean all
+    yum="yum -q -y --noplugins --disablerepo=* --enablerepo=vesta"
+else
+    export DEBIAN_FRONTEND=noninteractive
+    apt-get update -o Dir::Etc::sourcelist="sources.list.d/vesta.list" \
+        -o Dir::Etc::sourceparts="-" -o APT::Get::List-Cleanup="0" -qq
+fi
+
+# Updating php pacakge
+if [ -z "$($VESTA/php/bin/php -v|grep 'PHP 5.6')" ]; then
+    if [ -e "/etc/redhat-release" ]; then
+        $yum -y update vesta-php
+        check_result $? "vesta-php package upgrade failed" $E_UPDATE
+    else
+        apt-get -y install vesta-php
+        check_result $? "vesta-php package upgrade failed" $E_UPDATE
+    fi
+fi
+
+# Adding vesta-ioncube package
+if [ -e "/etc/redhat-release" ]; then
+    rpm -q vesta-ioncube >/dev/null 2>&1
+    if [ $? -ne 0 ]; then
+        $yum -y install vesta-ioncube >/dev/null 2>&1
+        check_result $? "vesta-ioncube package installation failed" $E_UPDATE
+    fi
+else
+    dpkg -l vesta-ioncube |grep ^ii >/dev/null 2>&1
+    if [ $? -ne 0 ]; then
+        apt-get -y install vesta-ioncube >/dev/null 2>&1
+        check_result $? "vesta-ioncube package installation failed" $E_UPDATE
+    fi
+fi
+
+# Adding vesta-softaculous package
+if [ -e "/etc/redhat-release" ]; then
+    rpm -q vesta-softaculous >/dev/null 2>&1
+    if [ $? -ne 0 ]; then
+        $yum -y install vesta-softaculous >/dev/null 2>&1
+        check_result $? "vesta-softaculous package installation failed" $E_UPDATE
+    fi
+else
+    dpkg -l vesta-softaculous |grep ^ii >/dev/null 2>&1
+    if [ $? -ne 0 ]; then
+        apt-get -y install vesta-softaculous >/dev/null 2>&1
+        check_result $? "vesta-softaculous package installation failed" $E_UPDATE
+    fi
+fi
+
+# Installing softaculous
+if [ ! -e "$VESTA/softaculous/vst_installed" ]; then
+    cd $VESTA/softaculous
+    wget -q http://c.vestacp.com/3rdparty/softaculous_install.inc
+    $VESTA/php/bin/php softaculous_install.inc
+    check_result $? "vesta-softaculous package installation failed" $E_UPDATE
+    touch $VESTA/softaculous/vst_installed
+fi
+
+# Updating SOFTACULOUS value
+if [ -z "$(grep SOFTACULOUS $VESTA/conf/vesta.conf)" ]; then
+    echo "SOFTACULOUS='yes'" >> $VESTA/conf/vesta.conf
+else
+    sed -i "s/SOFTACULOUS.*/SOFTACULOUS='yes'/g" \
+        $VESTA/conf/vesta.conf
+fi
+
+
+#----------------------------------------------------------#
+#                       Vesta                              #
+#----------------------------------------------------------#
+
+# Logging
+log_event "$OK" "$ARGUMENTS"
+
+exit

+ 42 - 0
bin/v-delete-vesta-softaculous

@@ -0,0 +1,42 @@
+#!/bin/bash
+# info: delete vesta softaculous
+# options: NONE
+#
+# The script disables softaculous plugin
+
+
+#----------------------------------------------------------#
+#                    Variable&Function                     #
+#----------------------------------------------------------#
+
+# Includes
+source $VESTA/func/main.sh
+source $VESTA/conf/vesta.conf
+
+
+#----------------------------------------------------------#
+#                    Verifications                         #
+#----------------------------------------------------------#
+
+if [ "$SOFTACULOUS" = 'no' ] || [ -z "$SOFTACULOUS" ]; then
+    exit
+fi
+
+
+#----------------------------------------------------------#
+#                       Action                             #
+#----------------------------------------------------------#
+
+# Updating SOFTACULOUS value
+sed -i "s/SOFTACULOUS.*/SOFTACULOUS='no'/g" \
+        $VESTA/conf/vesta.conf
+
+
+#----------------------------------------------------------#
+#                       Vesta                              #
+#----------------------------------------------------------#
+
+# Logging
+log_event "$OK" "$ARGUMENTS"
+
+exit

+ 6 - 2
bin/v-list-sys-config

@@ -50,7 +50,8 @@ json_list() {
         "BACKUP": "'$BACKUP'",
         "MAIL_URL": "'$MAIL_URL'",
         "DB_PMA_URL": "'$DB_PMA_URL'",
-        "DB_PGA_URL": "'$DB_PGA_URL'"
+        "DB_PGA_URL": "'$DB_PGA_URL'",
+        "SOFTACULOUS": "'$SOFTACULOUS'"
     }
 }'
 }
@@ -131,6 +132,9 @@ shell_list() {
     if [ ! -z "$SFTPJAIL_KEY" ]; then
         echo "SFTP Chroot:    $SFTPJAIL_KEY"
     fi
+    if [ ! -z "$SOFTACULOUS" ]; then
+        echo "Softaculous:    $SOFTACULOUS"
+    fi
     if [ ! -z "$LANGUAGE" ] && [ "$LANGUAGE" != 'en' ]; then
         echo "Language:       $LANGUAGE"
     fi
@@ -171,7 +175,7 @@ csv_list() {
     echo -n "'$CRON_SYSTEM','$DISK_QUOTA','$FIREWALL_SYSTEM',"
     echo -n "'$FIREWALL_EXTENSION','$FILEMANAGER_KEY','$SFTPJAIL_KEY',"
     echo -n "'$REPOSITORY','$VERSION','$LANGUAGE','$BACKUP_GZIP','$BACKUP',"
-    echo -n "'$MAIL_URL','$DB_PMA_URL','$DB_PGA_URL'"
+    echo -n "'$MAIL_URL','$DB_PMA_URL','$DB_PGA_URL', '$SOFTACULOUS'"
     echo
 }
 

+ 46 - 0
bin/v-schedule-vesta-softaculous

@@ -0,0 +1,46 @@
+#!/bin/bash
+# info: adding cronjob for vesta-softaculous installation
+# options: NONE
+#
+# The function adds cronjob for letsencrypt ssl certificate installation
+
+
+#----------------------------------------------------------#
+#                    Variable&Function                     #
+#----------------------------------------------------------#
+
+# Includes
+source $VESTA/func/main.sh
+source $VESTA/func/domain.sh
+source $VESTA/conf/vesta.conf
+
+
+#----------------------------------------------------------#
+#                    Verifications                         #
+#----------------------------------------------------------#
+
+is_system_enabled "$CRON_SYSTEM" 'CRON_SYSTEM'
+
+
+#----------------------------------------------------------#
+#                       Action                             #
+#----------------------------------------------------------#
+
+
+# Adding cronjob for vesta-softaculous
+cmd="sudo /usr/local/vesta/bin/v-add-vesta-softaculous"
+check_cron=$(grep "$cmd" $VESTA/data/users/admin/cron.conf 2> /dev/null)
+if [ -z "$check_cron" ] && [ ! -z "$CRON_SYSTEM" ]; then
+    $BIN/v-add-cron-job admin '*/1' '*' '*' '*' '*' "$cmd"
+fi
+
+
+
+#----------------------------------------------------------#
+#                       Vesta                              #
+#----------------------------------------------------------#
+
+# Logging
+log_event "$OK" "$ARGUMENTS"
+
+exit

+ 2 - 2
web/edit/server/index.php

@@ -463,7 +463,7 @@ if (!empty($_POST['save'])) {
     // activating softaculous
     if (empty($_SESSION['error_msg'])) {
         if($_SESSION['SOFTACULOUS'] != $_POST['v_softaculous'] && $_POST['v_softaculous'] == 'yes'){
-            exec (VESTA_CMD."v-add-sys-softaculous", $output, $return_var);
+            exec (VESTA_CMD."v-add-vesta-softaculous WEB", $output, $return_var);
             check_return_code($return_var,$output);
             unset($output);
             if (empty($_SESSION['error_msg'])) {
@@ -476,7 +476,7 @@ if (!empty($_POST['save'])) {
     // disable softaculous
     if (empty($_SESSION['error_msg'])) {
         if($_SESSION['SOFTACULOUS'] != $_POST['v_softaculous'] && $_POST['v_softaculous'] == 'no'){
-            exec (VESTA_CMD."v-delete-sys-softaculous", $output, $return_var);
+            exec (VESTA_CMD."v-delete-vesta-softaculous", $output, $return_var);
             check_return_code($return_var,$output);
             unset($output);
             if (empty($_SESSION['error_msg'])) {

+ 1 - 62
web/templates/admin/edit_server.html

@@ -280,67 +280,6 @@
                                                 <br><br>
                                             </td>
                                         </tr>
-                                        <tr>
-                                            <td class="vst-text step-top">
-                                                <label>
-                                                    <input type="checkbox" class="vst-checkbox use_relay" name="v_mail_relay"">
-                                                    <?=__('Use relay')?>
-                                                </label>
-                                            </td>
-                                        </tr>
-
-
-                                        <tr class="mail-relay" style="display: none;">
-                                            <td>
-                                                <table>
-                                                    <tr>
-                                                        <td class="vst-text step-left input-label">
-                                                            <?php print __('Hostname');?><br>
-                                                            <span style="font-size: 10pt; color:#777;"><?=__('enter hostname or IP address');?></span>
-                                                        </td>
-                                                    </tr>
-                                                    <tr>
-                                                        <td class="step-left">
-                                                            <input type="text" size="20" class="vst-input v-ftp-user" name="v_relay_hostname" value="<?=htmlentities(trim($v_relay_hostname, "'"))?>">
-                                                        </td>
-                                                    </tr>
-
-
-                                                    <tr>
-                                                        <td class="vst-text step-left input-label">
-                                                            <?php print __('Port');?><br>
-                                                        </td>
-                                                    </tr>
-                                                    <tr>
-                                                        <td class="step-left">
-                                                            <input type="text" size="20" class="vst-input v-ftp-user" name="v_relay_port" value="<?=htmlentities(trim($v_relay_port, "'"))?>">
-                                                        </td>
-                                                    </tr>
-
-                                                    <tr>
-                                                        <td class="vst-text step-left input-label">
-                                                            <?php print __('Username');?><br>
-                                                        </td>
-                                                    </tr>
-                                                    <tr>
-                                                        <td class="step-left">
-                                                            <input type="text" size="20" class="vst-input v-ftp-user" name="v_relay_username" value="<?=htmlentities(trim($v_relay_username, "'"))?>">
-                                                        </td>
-                                                    </tr>
-
-                                                    <tr>
-                                                        <td class="vst-text step-left input-label">
-                                                            <?php print __('Password');?><br>
-                                                        </td>
-                                                    </tr>
-                                                    <tr>
-                                                        <td class="step-left">
-                                                            <input type="text" size="20" class="vst-input v-ftp-user" name="v_relay_password" value="<?=htmlentities(trim($v_relay_password, "'"))?>">
-                                                        </td>
-                                                    </tr>
-                                                </table>
-                                            </td>
-                                        </tr>
 
                                     </table>
                                 </td>
@@ -925,7 +864,7 @@
                                                 </select>
                                                 <br><br>
                                                 <div class="softaculous description" <? if ($_SESSION['SOFTACULOUS'] != 'yes') { ?>style="display:none" <? } ?>>
-                                                    <h5>Web Application Installations Made Easy</h5>
+                                                    <h5>* plugin installation will run in background</h5>
                                                     Softaculous is a great Auto Installer having 426 great scripts, 1115 PHP Classes 
                                                     and we are still adding more. Softaculous is ideal for Web Hosting companies and 
                                                     it could give a significant boost to your sales. These scripts cover most of the