Files
VestaCP/bin/v_update_db_base_disk
2012-01-03 21:48:46 +02:00

82 lines
1.9 KiB
Bash
Executable File

#!/bin/bash
# info: update database disk usage
# options: user database
#
# The function recalculates disk usage for speciefic database.
#----------------------------------------------------------#
# Variable&Function #
#----------------------------------------------------------#
# Argument defenition
user=$1
database=$2
# Importing variables
source $VESTA/conf/vars.conf
source $V_CONF/vesta.conf
source $V_FUNC/shared.func
source $V_FUNC/db.func
#----------------------------------------------------------#
# Verifications #
#----------------------------------------------------------#
# Checking arg number
check_args '2' "$#" 'user db_name'
# Checking argument format
format_validation 'user' 'database'
# Checking web system is enabled
is_system_enabled 'db'
# Checking user
is_user_valid
# Checking db existance
is_db_valid
# Checking db is active
is_db_suspended
#----------------------------------------------------------#
# Action #
#----------------------------------------------------------#
# Get some variables we do not have now
db_user=$(get_db_value '$USER')
host=$(get_db_value '$HOST')
type=$(get_db_value '$TYPE')
# Switching on db type
case $type in
mysql) disk_usage=$(get_disk_db_mysql); ret_val="$?" ;;
pgsql) disk_usage=$(get_disk_db_pgsql); ret_val="$?" ;;
esac
# Checking ret_val
if [ "$ret_val" -ne '0' ]; then
exit $ret_val
fi
#----------------------------------------------------------#
# Vesta #
#----------------------------------------------------------#
# Updating disk value in config
update_db_base_value '$U_DISK' "$disk_usage"
# Recalculating user disk space
disk_size=$(get_usr_disk)
update_user_value "$user" '$U_DISK' "$disk_size"
# Logging
log_event 'system' "$V_EVENT"
exit