#!/bin/sh if [ -z "$1" ] ; then echo "error: must specify configuration file to use" exit 5 fi . ./"$1" ssh -T $ssh << EOSSH if [ -n "$php_version" ] ; then echo "TODO - install specific PHP version" exit 1 elif ! php ; then apt install -y php-fpm php-bcmath php-curl php-gd php-imagick php-mbstring \ php-mysql php-soap php-xml php-zip fi php_config_file=$(php --ini | grep Loaded | awk '{ print $4 }') sed -i '/memory_limit/c\memory_limit = 256M' "$php_config_file" sed -i '/upload_max_filesize/c\upload_max_filesize = 64M' "$php_config_file" sed -i '/post_max_size/c\post_max_size = 64M' "$php_config_file" sed -i '/max_execution_time/c\max_execution_time = 300M' "$php_config_file" sed -i '/max_input_time/c\max_input_time = 1000' "$php_config_file" # install wp-cli first if [ ! -f /usr/local/bin/wp ] ; then wget -nv -O /usr/local/bin/wp https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar \ && chmod +x /usr/local/bin/wp fi if wp core is-installed --quiet --path="$wp_path" --allow-root ; then echo "WordPress already installed" else echo "TODO - install WordPress" fi if [ -n "$wp_themes" ] ; then printf "\nInstalling themes ..." option='--activate' for theme in $wp_themes ; do echo " installing $theme ..." wp theme install $theme "$option" --path="$wp_path" --allow-root option='' done fi if [ -n "$wp_plugins" ] ; then printf "\nInstalling plugins ..." for plugin in $wp_plugins ; do echo " installing $plugin ..." wp plugin install $plugin --path="$wp_path" --allow-root done fi if [ -n "$wp_plugins_active" ] ; then printf "\nInstalling plugins to activate ..." for plugin in $wp_plugins_active ; do echo " installing $plugin ..." wp plugin install $plugin --activate --path="$wp_path" --allow-root done fi if [ -n "$wp_plugins_active" ] ; then printf "\nUninstalling plugins ..." for plugin in $wp_plugins_uninstall ; do echo " installing $plugin ..." wp plugin deactivate $plugin --path="$wp_path" --allow-root wp plugin uninstall $plugin --path="$wp_path" --allow-root done fi # TODO determine web user programatically ownergroup='www-data:www-data' if [ -n "$litespeed_version" ] ; then ownergroup='nobody:nogroup' fi chown -R "$ownergroup" "$wp_path" EOSSH