mirror of
https://github.com/serghey-rodin/vesta.git
synced 2025-01-23 11:13:01 -08:00
68 lines
1.7 KiB
Bash
Executable File
68 lines
1.7 KiB
Bash
Executable File
#!/bin/bash
|
|
# info: changing ip status
|
|
|
|
#----------------------------------------------------------#
|
|
# Variable&Function #
|
|
#----------------------------------------------------------#
|
|
|
|
# Argument defenition
|
|
ip="$1"
|
|
ip_status="$2"
|
|
|
|
# Importing variables
|
|
source $VESTA/conf/vars.conf
|
|
source $V_FUNC/shared_func.sh
|
|
source $V_FUNC/ip_func.sh
|
|
|
|
|
|
#----------------------------------------------------------#
|
|
# Verifications #
|
|
#----------------------------------------------------------#
|
|
|
|
# Checking arg number
|
|
check_args '2' "$#" 'ip ip_status'
|
|
|
|
# Checking argument format
|
|
format_validation 'ip' 'ip_status'
|
|
|
|
# Checking system ip
|
|
is_sys_ip_valid
|
|
|
|
# Checking current status
|
|
current_status=$(get_sys_ip_value '$STATUS')
|
|
if [ "$ip_status" = "$current_status" ]; then
|
|
echo "Error: status is already set"
|
|
log_event 'debug' "$E_VALUE_EXIST $V_EVENT"
|
|
exit $E_VALUE_EXIST
|
|
fi
|
|
|
|
# Parsing current ip usage
|
|
web_domains=$(get_sys_ip_value '$U_WEB_DOMAINS')
|
|
sys_user=$(get_sys_ip_value '$U_SYS_USERS')
|
|
ip_owner=$(get_sys_ip_value '$OWNER')
|
|
|
|
# Checking condition
|
|
if [ "$web_domains" -ne '0' ] && [ "$sys_user" != "$ip_owner" ]; then
|
|
echo "Error: ip is used"
|
|
log_event 'debug' "$E_IP_USED $V_EVENT"
|
|
exit $E_IP_USED
|
|
fi
|
|
|
|
|
|
#----------------------------------------------------------#
|
|
# Action #
|
|
#----------------------------------------------------------#
|
|
|
|
# Changing ip name
|
|
update_sys_ip_value '$STATUS' "$ip_status"
|
|
|
|
|
|
#----------------------------------------------------------#
|
|
# Vesta #
|
|
#----------------------------------------------------------#
|
|
|
|
# Logging
|
|
log_event 'system' "$V_EVENT"
|
|
|
|
exit $OK
|