Merge branch 'master' of github.com:serghey-rodin/vesta

This commit is contained in:
larsz 2012-01-06 20:23:53 +02:00
commit 9a3c9b6c9d
79 changed files with 201 additions and 90 deletions

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: add cron job
# arguments: user min hour day month wday command [job]
# options: user min hour day month wday command [job]
#
# The function adds a job to cron daemon. When executing commands, any output
# is mailed to user's email if parameter REPORTS is set to 'yes'.
@ -78,6 +78,9 @@ sync_cron_jobs
# Vesta #
#----------------------------------------------------------#
# Increasing cron value
increase_user_value "$user" '$U_CRON_JOBS'
# Adding task to the vesta pipe
restart_schedule 'cron'

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: add database
# arguments: user db db_user db_password type [host] [encoding]
# options: user db db_user db_password type [host] [encoding]
#
# The function creates the database concatenating username and user_db.
# Supported yypes of databases you can get using v_list_sys_config script.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: add new database server
# arguments: type host port db_user db_password [max_db] [tpl]
# options: type host port db_user db_password [max_db] [tpl]
#
# The function add new database server to the server pool. It supports local
# and remote database servers, which is useful for clusters. By adding a host

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: add dns domain
# arguments: user domain ip [template] [exp] [soa] [ttl]
# options: user domain ip [template] [exp] [soa] [ttl]
#
# The function adds DNS zone with records defined in the template. If the exp
# argument isn't stated, the expiration date value will be set to next year.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: add dns domain record
# arguments: user domain record type value [id]
# options: user domain record type value [id]
#
# The call is used for adding new DNS record. Complex records of TXT, MX and
# SRV types can be used by a filling in the 'value' argument. The function also

View file

@ -1,8 +1,13 @@
#!/bin/bash
# info: add system ip address
# arguments: ip mask [interface] [user] [ip_status] [ip_name]
# options: ip mask [interface] [user] [ip_status] [ip_name]
#
# The function adds ip address into a system including rc scripts.
# The function adds ip address into a system. It also creates rc scripts. You
# can specify ip name which will be used as root domain for temporary aliases.
# For example, if you set a1.myhosting.com as name, each new domain created on
# this ip will automaticaly receive alias $domain.a1.myhosting.com. Of course
# you must have wildcard record *.a1.myhosting.com pointed to ip. This feature
# is very handy when customer wants to test domain before dns migration.
#----------------------------------------------------------#

View file

@ -156,6 +156,7 @@ U_WEB_SSL='0'
U_DNS_DOMAINS='0'
U_DATABASES='0'
U_MAIL_DOMAINS='0'
U_CRON_JOBS='0'
DATE='$V_DATE'" > $V_USERS/$user/user.conf
# Hiding password

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: change cron job
# arguments: user job min hour day month wday command
# options: user job min hour day month wday command
#
# The function is used for changing existing job. It fully replace job
# parameters with new one but with same id.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: change database user password
# arguments: user db_name db_password
# options: user db_name db_password
#
# The function for changing database user password to a database. It uses the
# full name of database as argument.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: change dns domain expiriation date
# arguments: user domain exp
# options: user domain exp
#
# The function of changing the term of expiration domain's registration. The
# serial number will be refreshed automatically during update.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: change dns domain ip address
# arguments: user domain ip
# options: user domain ip
#
# The function for changing the main ip of DNS zone.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: change dns domain record
# arguments: user domain id record type value
# options: user domain id record type value
#
# The function for changing DNS record.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: change dns domain soa record
# arguments: user domain soa
# options: user domain soa
#
# The function for changing SOA record. This type of records can not be
# modified by v_change_dns_domain_record call.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: change dns domain template
# arguments: user domain
# options: user domain
#
# The function for changing the template of records. By updating old records
# will be removed and new records will be generated in accordance with

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: change dns domain ttl
# arguments: user domain ttl
# options: user domain ttl
#
# The function for chaning the time to live TTL parameter for all records.

View file

@ -1,5 +1,10 @@
#!/bin/bash
# info: changing sysconfig value
# info: change sysconfig value
# options: key value
#
# The function is for changing main config settings such as COMPANY_NAME or
# COMPANY_EMAIL and so on.
#----------------------------------------------------------#
# Variable&Function #
@ -29,8 +34,8 @@ format_validation 'key'
check_ckey=$(grep "^$key='" $V_CONF/vesta.conf)
if [ -z "$check_ckey" ]; then
echo "Error: key not found"
log_event 'debug' "$E_KEY_INVALID $V_EVENT"
exit $E_KEY_INVALID
log_event 'debug' "$E_INVALID $V_EVENT"
exit $E_INVALID
fi

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: changing ip name
# info: change ip name
# options: ip name
#
# The function for changing dns domain associated with ip.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: changing ip owner
# info: change ip owner
# options: ip user
#
# The function of changing ip address ownership.
#----------------------------------------------------------#
# Variable&Function #
@ -9,7 +13,6 @@
ip=$1
user=$2
# Importing variables
source $VESTA/conf/vars.conf
source $V_CONF/vesta.conf

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: changing ip status
# info: change ip status
# options: ip ip_status
#
# The function of changing an ip address's status.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -84,6 +84,7 @@ BACKUPS='$BACKUPS'
WEB_TPL='$WEB_TPL'
SUSPENDED='$SUSPENDED'
CONTACT='$CONTACT'
RKEY='$RKEY'
REPORTS='$REPORTS'
IP_OWNED='$IP_OWNED'
U_DIR_DISK='$U_DIR_DISK'
@ -94,6 +95,7 @@ U_WEB_SSL='$U_WEB_SSL'
U_DNS_DOMAINS='$U_DNS_DOMAINS'
U_DATABASES='$U_DATABASES'
U_MAIL_DOMAINS='$U_MAIL_DOMAINS'
U_CRON_JOBS='$U_CRON_JOBS'
DATE='$DATE'" > $V_USERS/$user/user.conf
}

View file

@ -23,10 +23,10 @@ source $V_FUNC/domain.func
#----------------------------------------------------------#
# Checking arg number
check_args '3' "$#" 'user domain certificate'
check_args '3' "$#" 'user domain ssl_dir'
# Checking argument format
format_validation 'user' 'domain' 'ssl'
format_validation 'user' 'domain' 'ssl_dir'
# Checking web system is enabled
is_system_enabled 'web'

View file

@ -23,7 +23,7 @@ source $V_FUNC/domain.func
#----------------------------------------------------------#
# Checking arg number
check_args '3' "$#" 'user domain sslhome'
check_args '3' "$#" 'user domain ssl_home'
# Checking argument format
format_validation 'user' 'domain'

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: delete cron job
# arguments: user job
# options: user job
#
# The function deletes cron job.
@ -58,6 +58,9 @@ sync_cron_jobs
# Vesta #
#----------------------------------------------------------#
# Decreasing cron value
decrease_user_value "$user" '$U_CRON_JOBS'
# Adding task to the vesta pipe
restart_schedule 'cron'

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: delete database
# arguments: user database
# options: user database
#
# The function for deleting the database. If database user have access to
# another database, he will not be deleted.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: delete user databases
# arguments: user
# options: user
#
# The function deletes all user databases.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: delete database serve
# arguments: type host
# options: type host
#
# The function for deleting the database host from vesta configuration. It will
# be deleted if there are no databases created on it only.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: delite dns domain
# arguments: user domain
# options: user domain
#
# The function for deleting DNS domain. By deleting it all records will also be
# deleted.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: delete dns record
# arguments: user domain id
# options: user domain id
#
# The function for deleting a certain record of DNS zone.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: delete dns domains
# arguments: user
# options: user
#
# The function for deleting all users DNS domains.

View file

@ -1,5 +1,10 @@
#!/bin/bash
# info: deleting system ip
# info: delete system ip
# options: ip
#
# The function for deleting a system ip. It does not allow to delete first ip
# on interface and do not allow to delete ip which is used by a web domain.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: get dns domain value
# arguments: user domain key
# options: user domain key
#
# The function for getting a certain DNS domain parameter.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: list user cron jobs
# arguments: user [format]
# options: user [format]
#
# The function for obtaining the list of all users cron jobs.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: list database
# arguments: user database [format]
# options: user database [format]
#
# The function for obtaining of all database's parameters.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: listing data bases
# arguments: user [format]
# options: user [format]
#
# The function for obtaining the list of all user's databases.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: list database host
# arguments: type host [format]
# options: type host [format]
#
# The function for obtaining host's database parameters.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: list data base servers
# arguments: type [format]
# options: type [format]
#
# The function for obtaining the list of all hosts of the same databases' type.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: list dns domain
# arguments: user domain [format]
# options: user domain [format]
#
# The function for getting all DNS domain's parameters.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: list dns domains
# arguments: user [format]
# options: user [format]
#
# The function for obtaining all DNS domains of a user.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: list dns template
# arguments: template [format]
# options: template [format]
#
# The function for obtaining the DNS template parameters.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: list dns templates
# arguments: [format]
# options: [format]
#
# The function for obtaining the list of all DNS templates available.

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: listing system config
# info: list system config
# options: [format]
#
# The function for obtaining the list of system parameters.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: listing system interfaces
# info: list system interfaces
# options: [format]
#
# The function for obtaining the list of network interfaces.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: listing system ip
# info: list system ip
# options: ip [format]
#
# The function for getting the list of system ip parameters.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: listing system ips
# info: list system ips
# options: [format]
#
# The function for obtaining the list of system ip's.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: listing available system rrd charts
# info: list system rrd charts
# options: [format]
#
# List available rrd graphics, its titles and paths.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -94,7 +94,7 @@ fields='$USER $FNAME $LNAME $PACKAGE $WEB_DOMAINS $WEB_SSL $WEB_ALIASES
$DATABASES $MAIL_DOMAINS $MAIL_BOXES $MAIL_FORWARDERS $DNS_DOMAINS
$DISK_QUOTA $BANDWIDTH $NS $SHELL $BACKUPS $WEB_TPL $SUSPENDED $CONTACT
$RKEY $REPORTS $IP_OWNED $U_DIR_DISK $U_DISK $U_BANDWIDTH $U_WEB_DOMAINS
$U_WEB_SSL $U_DNS_DOMAINS $U_DATABASES $U_MAIL_DOMAINS $DATE'
$U_WEB_SSL $U_DNS_DOMAINS $U_DATABASES $U_MAIL_DOMAINS $U_CRON_JOBS $DATE'
# Listing user
case $format in

View file

@ -91,7 +91,7 @@ fields="$fields \$DNS_DOMAINS \$DISK_QUOTA \$BANDWIDTH \$NS \$SHELL \$BACKUPS"
fields="$fields \$WEB_TPL \$SUSPENDED \$CONTACT \$RKEY \$REPORTS \$IP_OWNED"
fields="$fields \$U_DIR_DISK \$U_DISK \$U_BANDWIDTH \$U_WEB_DOMAINS"
fields="$fields \$U_WEB_SSL \$U_DNS_DOMAINS \$U_DATABASES \$U_MAIL_DOMAINS"
fields="$fields \$DATE"
fields="$fields \$U_CRON_JOBS \$DATE"
# Listing domains
case $format in

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: rebuild cron jobs
# arguments: user
# options: user
#
# The function rebuilds system cron config file for specified user.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: rebuild dns domains
# arguments: user
# options: user
#
# The function rebuilds BIND configuration files for all dns domains.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: restart cron service
# arguments: none
# options: none
#
# The function tells crond service to reread its configuration files.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: restart dns service
# arguments: none
# options: none
#
# The function tells BIND service to reload dns zone files.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: suspend cron job
# arguments: user job
# options: user job
#
# The function suspends a certain job of the cron scheduler.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: Suspending sys cron jobs
# arguments: user
# options: user
#
# The function suspends all user cron jobs.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: suspend database
# arguments: user database
# options: user database
#
# The function for suspending a certain user database.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: suspend databases
# arguments: user
# options: user
#
# The function for suspending of all databases of a single user.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: suspend dns domain
# arguments: user domain
# options: user domain
#
# The function suspends a certain user's domain.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: suspend dns domains
# arguments: user
# options: user
#
# The function suspends all user's DNS domains.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: unuspend cron job
# arguments: user job
# options: user job
#
# The function unsuspen certain cron job.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: unuspend sys cron
# arguments: user
# options: user
#
# The function unsuspends all suspended cron jobs.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: unsuspend database
# arguments: user database
# options: user database
#
# The function for unsuspending database.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: unsuspend databases
# arguments: user
# options: user
#
# The function for unsuspending all user's databases.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: unsuspend dns domain
# arguments: user domain
# options: user domain
#
# The function unsuspends a certain user's domain.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: unsuspend dns domains
# arguments: user
# options: user
#
# The function unsuspends all user's DNS domains.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: update database disk usage
# arguments: user database
# options: user database
#
# The function recalculates disk usage for speciefic database.

View file

@ -1,6 +1,6 @@
#!/bin/bash
# info: update databases disk usage
# arguments: user
# options: user
#
# The function recalculates disk usage for all user databases.

View file

@ -1,15 +1,19 @@
#!/bin/bash
# info: adding system ip
# info: update system ip
# options: [owner] [ip_status]
#
# The function scans configured ip in the system and register them with vesta
# internal database. This call is intended for use on vps servers, where ip is
# set by hypervizor.
#----------------------------------------------------------#
# Variable&Function #
#----------------------------------------------------------#
# Argument defenition
owner=$1
ip_status=$2
owner=${3-vesta}
ip_status=${4-shared}
owner=${1-vesta}
ip_status=${2-shared}
# Importing variables
source $VESTA/conf/vars.conf
@ -27,13 +31,13 @@ source $V_FUNC/domain.func
check_args '0' "$#" '[owner] [ip_status]'
# Checking owner
if [ ! -z "$owner" ]; then
if [ ! -z "$1" ]; then
format_validation 'owner'
is_user_valid "$owner"
fi
# Checking ip_status
if [ ! -z "$ip_status" ]; then
if [ ! -z "$2" ]; then
format_validation 'ip_status'
fi

View file

@ -1,5 +1,13 @@
#!/bin/bash
# info: updating system queue
# info: update system queue
# options: pipe
#
# This function is responsible queue processing. Restarts of services,
# scheduled backups, web log parsing and other heavy resource consuming
# operations are handled by this script. It helps to optimize system behaviour.
# In a nutshell Apache will be restarted only once even if 10 domains are
# added or deleted.
#----------------------------------------------------------#
# Variable&Function #
@ -8,7 +16,7 @@
pipe=$1
# Importing system enviroment as we run this script
# mostly by cron wich not read it by itself
# mostly by cron wich not read it by itself
source /etc/profile.d/vesta.sh
# Importing variables

View file

@ -1,5 +1,10 @@
#!/bin/bash
# info: updating system rrd charts
# info: update system rrd charts
# options: period
#
# The script is wrapper for all rrd functions. It updates all
# v_update_sys_rrd_* at once.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: updating ftp rrd
# info: update ftp rrd
# options: period
#
# The function is for updating ftpd rrd database and graphic.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: updating httpd rrd
# info: update httpd rrd
# options: period
#
# The function is for updating apache rrd database and graphic.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: updating load average rrd
# info: update load average rrd
# options: period
#
# The function is for updating load average rrd database and graphic.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: updating memory rrd
# info: update memory rrd
# options: period
#
# The function is for updating memory rrd database and graphic.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: updating MySQL rrd
# info: update MySQL rrd
# options: period
#
# The function is for updating mysql rrd database and graphic.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: updating network rrd
# info: update network rrd
# options: period
#
# The function is for updating network usage rrd database and graphic.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: updating httpd rrd
# info: update nginx rrd
# options: period
#
# The function is for updating nginx rrd database and graphic.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: updating PostgreSQL rrd
# info: update PostgreSQL rrd
# options: period
#
# The function is for updating postgresql rrd database and graphic.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,5 +1,9 @@
#!/bin/bash
# info: updating ssh rrd
# info: update ssh rrd
# options: period
#
# The function is for updating ssh rrd database and graphic.
#----------------------------------------------------------#
# Variable&Function #

View file

@ -1,8 +1,10 @@
#!/bin/bash
# info: updating vesta after rpm update
# info: update vesta after rpm update
# options: version
#
# The function is runs as rpm update trigger. It pulls shell script from vesta
# server and runs it.
# warn: please note that this scritp should be runned
# by yum or rpm only
#----------------------------------------------------------#
# Variable&Function #

View file

@ -116,6 +116,7 @@ for user in $user_list; do
v_str="$v_str U_MAIL_DOMAINS='$U_MAIL_DOMAINS' IP_OWNED='$IP_OWNED'"
v_str="$v_str U_DISK_WEB_DOMAINS='$U_DISK_WEB_DOMAINS'"
v_str="$v_str U_BANDWIDTH_WEB_DOMAINS='$U_BANDWIDTH_WEB_DOMAINS'"
v_str="$v_str U_CRON_JOBS"
# Updating user billing log
billing="$V_USERS/$user/billing.log"