mirror of
https://github.com/myvesta/vesta
synced 2025-07-06 04:51:54 -07:00
Create v-run-wpcli
This commit is contained in:
parent
81f507b3c4
commit
491ac6255c
1 changed files with 77 additions and 0 deletions
77
bin/v-run-wpcli
Normal file
77
bin/v-run-wpcli
Normal file
|
@ -0,0 +1,77 @@
|
|||
#!/bin/bash
|
||||
# info: Run WP CLI command for a specific domain
|
||||
# options: DOMAIN WP_CLI_COMMAND
|
||||
|
||||
#----------------------------------------------------------#
|
||||
# Variable&Function #
|
||||
#----------------------------------------------------------#
|
||||
|
||||
whoami=$(whoami)
|
||||
if [ "$whoami" != "root" ]; then
|
||||
echo "You must be root to execute this script"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Importing system environment
|
||||
source /etc/profile
|
||||
|
||||
SILENT_MODE=1
|
||||
|
||||
# Argument definition
|
||||
domain=$1
|
||||
wp_command=${@:2} # Sve nakon prvog argumenta smatra se delom WP CLI komande
|
||||
|
||||
user=$(/usr/local/vesta/bin/v-search-domain-owner $domain)
|
||||
USER=$user
|
||||
|
||||
# Includes
|
||||
source /usr/local/vesta/func/main.sh
|
||||
source /usr/local/vesta/func/domain.sh
|
||||
|
||||
if [ -z "$user" ]; then
|
||||
check_result $E_NOTEXIST "domain $domain doesn't exist"
|
||||
fi
|
||||
|
||||
#----------------------------------------------------------#
|
||||
# Verifications #
|
||||
#----------------------------------------------------------#
|
||||
|
||||
check_args '2' "$#" 'DOMAIN WP_CLI_COMMAND'
|
||||
is_format_valid 'domain'
|
||||
is_object_valid 'user' 'USER' "$user"
|
||||
is_object_unsuspended 'user' 'USER' "$user"
|
||||
|
||||
if [ ! -d "/home/$user" ]; then
|
||||
# echo "User doesn't exist";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
if [ ! -f "/home/$user/web/$domain/public_html/wp-config.php" ]; then
|
||||
echo 'Please install WordPress first.'
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
if ! command -v wp &> /dev/null; then
|
||||
echo "WP CLI is not installed. Installing..."
|
||||
wget -nv https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar -O /usr/local/bin/wp
|
||||
chmod +x /usr/local/bin/wp
|
||||
echo "WP CLI installed successfully."
|
||||
fi
|
||||
|
||||
if [ ! -d "/home/$user/web/$domain/public_html" ]; then
|
||||
# echo "Domain doesn't exist";
|
||||
exit 1;
|
||||
fi
|
||||
|
||||
#----------------------------------------------------------#
|
||||
# Action #
|
||||
#----------------------------------------------------------#
|
||||
|
||||
cd /home/$USER/web/$domain/public_html
|
||||
sudo -u $USER wp $wp_command
|
||||
|
||||
#----------------------------------------------------------#
|
||||
# Vesta #
|
||||
#----------------------------------------------------------#
|
||||
|
||||
exit 0;
|
Loading…
Add table
Add a link
Reference in a new issue