myvesta/bin/v-suspend-cron-job
2017-01-11 16:52:11 +02:00

57 lines
1.5 KiB
Bash
Executable File

#!/bin/bash
# info: suspend cron job
# options: USER JOB [RESTART]
#
# The function suspends a certain job of the cron scheduler.
#----------------------------------------------------------#
# Variable&Function #
#----------------------------------------------------------#
# Argument definition
user=$1
job=$2
restart=$3
# Includes
source $VESTA/func/main.sh
source $VESTA/conf/vesta.conf
#----------------------------------------------------------#
# Verifications #
#----------------------------------------------------------#
check_args '2' "$#" 'USER JOB [RESTART]'
is_format_valid 'user' 'job'
is_object_valid 'user' 'USER' "$user"
is_object_valid 'cron' 'JOB' "$job"
is_object_unsuspended 'cron' 'JOB' "$job"
#----------------------------------------------------------#
# Action #
#----------------------------------------------------------#
# Suspending job
update_object_value 'cron' 'JOB' "$job" '$SUSPENDED' 'yes'
increase_user_value "$user" '$SUSPENDED_CRON'
# Sync system cron with user
sync_cron_jobs
#----------------------------------------------------------#
# Vesta #
#----------------------------------------------------------#
# Restarting crond
$BIN/v-restart-cron $restart
check_result $? "Cron restart failed" >/dev/null
# Logging
log_event "$OK" "$ARGUMENTS"
exit