From db9ad801c6323dce0c2bf2e0669636ab606bd069 Mon Sep 17 00:00:00 2001 From: Anthony Date: Sat, 21 Sep 2024 03:12:33 +0800 Subject: [PATCH] Revert InstallWP --- scripts/installWP.jps | 126 ++++++++++++++++++++++-------------------- 1 file changed, 66 insertions(+), 60 deletions(-) diff --git a/scripts/installWP.jps b/scripts/installWP.jps index 2cf5846..e892192 100644 --- a/scripts/installWP.jps +++ b/scripts/installWP.jps @@ -3,92 +3,98 @@ id: wordpress-core-installation name: WordPress Core Installation description: WordPress Core Installation +mixins: + - https://raw.githubusercontent.com/jelastic-jps/wordpress/master/configs/vers.yaml + globals: - WP_ADMIN_PASS: "${settings.wp_admin_pass}" - WP_TITLE: "${settings.wp_title}" - WP_ADMIN_USER: "${settings.wp_admin_user:admin}" - WP_ADMIN_EMAIL: "${settings.wp_admin_email:admin@example.com}" - DB_HOST: "${settings.db_host}" - DB_NAME: "wp_${fn.random}" - DB_USER: "${settings.db_user}" - DB_PASS: "${settings.db_pass}" - REDIS_HOST: "${settings.redis_host:/var/run/redis/redis.sock}" - REDIS_PORT: "${settings.redis_port:0}" - REDIS_USER: "${settings.redis_user:}" - REDIS_PSWD: "${settings.redis_pswd:}" - WP_URL: "${settings.wp_url}" - BASE_URL: "${globals.BASE_URL}" - VERSION_WORDPRESS: "${settings.version_wordpress:6.3.1}" - version_lscache: "${settings.version_lscache:5.6.4}" - TARGET_NODE_ID: "${settings.targetNodeID}" - SERVER_WEBROOT: "/var/www/webroot/ROOT" # Optional for consistency + WP_ADMIN_PASS: ${settings.wp_admin_pass} + WP_TITLE: ${settings.wp_title} + DB_HOST: ${settings.db_host} + DB_NAME: wp_${fn.random} + DB_USER: ${settings.db_user} + DB_PASS: ${settings.db_pass} + REDIS_HOST: ${settings.redis_host:} + REDIS_PORT: ${settings.redis_port:} + REDIS_USER: ${settings.redis_user:} + REDIS_PSWD: ${settings.redis_pswd:} + WP_URL: ${settings.wp_url} + CLUSTER: ${settings.cluster:true} onInstall: - deployWordPress - installScripts - - installWordpress + - installWordPress - setupWordPress - installPlugins - setupPlugins actions: deployWordPress: - - cmd[${globals.TARGET_NODE_ID}]: |- - echo "Deploying WordPress Version ${globals.VERSION_WORDPRESS}" >> /var/log/deploy_wordpress.log; - wget -qO /tmp/wordpress.tar.gz 'https://wordpress.org/wordpress-${globals.VERSION_WORDPRESS}.tar.gz'; + - cmd[${nodes.cp.master.id}]: |- + wget -qO /tmp/wordpress.tar.gz 'https://wordpress.org/wordpress-${globals.version_wordpress}.tar.gz'; [ -d /tmp/wordpress/ ] && rm -rf /tmp/wordpress; tar -xzf /tmp/wordpress.tar.gz -C /tmp/; - rsync -a /tmp/wordpress/ ${globals.SERVER_WEBROOT}/ >> /var/log/deploy_wordpress.log 2>&1; + rsync -a /tmp/wordpress/* /var/www/webroot/ROOT/; + rsync -a --checksum /tmp/wordpress/* /var/www/webroot/ROOT/; - addContext [cp]: name: ROOT fileName: WordPress type: ARCHIVE - installWordpress: - - cmd[${globals.TARGET_NODE_ID}]: |- - echo "Creating Database ${globals.DB_NAME}" >> /var/log/install_wordpress.log; - mysql -u${globals.DB_USER} -p${globals.DB_PASS} -h ${globals.DB_HOST} -e "CREATE DATABASE IF NOT EXISTS ${globals.DB_NAME};" >> /var/log/install_wordpress.log 2>&1; - echo "Configuring wp-config.php" >> /var/log/install_wordpress.log; - cd ${globals.SERVER_WEBROOT} && wp core config --dbhost=${globals.DB_HOST} --dbname=${globals.DB_NAME} --dbuser=${globals.DB_USER} --dbpass=${globals.DB_PASS} --path=${globals.SERVER_WEBROOT} >> /var/log/install_wordpress.log 2>&1; - echo "Installing WordPress Core" >> /var/log/install_wordpress.log; - cd ${globals.SERVER_WEBROOT} && wp core install --title="${globals.WP_TITLE}" --admin_user=${globals.WP_ADMIN_USER} --admin_password=${globals.WP_ADMIN_PASS} --url=${globals.WP_URL} --admin_email=${globals.WP_ADMIN_EMAIL} --skip-email --path=${globals.SERVER_WEBROOT} >> /var/log/install_wordpress.log 2>&1; - echo "Downloading favicon.ico" >> /var/www/webroot/ROOT/favicon.ico; - wget ${globals.BASE_URL}/images/favicon.ico -O ${globals.SERVER_WEBROOT}/favicon.ico >> /var/log/install_wordpress.log 2>&1; + installWordPress: + - if ('${globals.CLUSTER}' == 'true'): + cmd[${nodes.cp.master.id}]: |- + mysql -u${globals.DB_USER} -p${globals.DB_PASS} -h ${nodes.sqldb.master.intIP} -e "CREATE DATABASE IF NOT EXISTS ${globals.DB_NAME};" + cd /var/www/webroot/ROOT && wp core config --dbhost=${nodes.sqldb.master.intIP} --dbname=${globals.DB_NAME} --dbuser=${globals.DB_USER} --dbpass=${globals.DB_PASS} --path=/var/www/webroot/ROOT; + cd /var/www/webroot/ROOT && wp core install --title="${globals.WP_TITLE}" --admin_user=${user.email} --admin_password=${globals.WP_ADMIN_PASS} --url=${globals.WP_URL} --admin_email=${user.email} --skip-email --path=/var/www/webroot/ROOT; + mv /var/www/webroot/ROOT/wp-config.php /tmp; sed -i "s/${nodes.sqldb.master.intIP}/${globals.DB_HOST}/g" /tmp/wp-config.php; mv /tmp/wp-config.php /var/www/webroot/ROOT; + wget https://raw.githubusercontent.com/jelastic-jps/wordpress/v2.2.0/images/favicon.ico /var/www/webroot/ROOT/favicon.ico; + - else: + cmd[${nodes.cp.master.id}]: |- + mysql -u${globals.DB_USER} -p${globals.DB_PASS} -h ${globals.DB_HOST} -e "CREATE DATABASE IF NOT EXISTS ${globals.DB_NAME};" + cd /var/www/webroot/ROOT && wp core config --dbhost=${globals.DB_HOST} --dbname=${globals.DB_NAME} --dbuser=${globals.DB_USER} --dbpass=${globals.DB_PASS} --path=/var/www/webroot/ROOT; + cd /var/www/webroot/ROOT && wp core install --title="${globals.WP_TITLE}" --admin_user=${user.email} --admin_password=${globals.WP_ADMIN_PASS} --url=${globals.WP_URL} --admin_email=${user.email} --skip-email --path=/var/www/webroot/ROOT; + wget https://raw.githubusercontent.com/jelastic-jps/wordpress/v2.2.0/images/favicon.ico -O /var/www/webroot/ROOT/favicon.ico; installScripts: - cmd[cp]: |- - echo "Installing WP-CLI" >> /var/log/install_scripts.log; [ ! -d $HOME/bin ] && mkdir $HOME/bin; curl -o $HOME/bin/wp https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar && chmod +x $HOME/bin/wp; - echo "Configuring WP-CLI" >> /var/log/install_scripts.log; - echo "apache_modules:" > $HOME/bin/wp-cli.yml; - echo " - mod_rewrite" >> $HOME/bin/wp-cli.yml; - echo "export PATH=\$PATH:\$HOME/bin/" >> $HOME/.bash_profile; - echo "Downloading setupWP.sh" >> /var/log/install_scripts.log; - wget ${globals.BASE_URL}/scripts/setupWP.sh?_r=${fn.random} -O $HOME/bin/setupWP.sh &>> /var/log/install_scripts.log; + echo "apache_modules:" > ~/bin/wp-cli.yml; + echo " - mod_rewrite" >> ~/bin/wp-cli.yml; + echo "export PATH=$PATH:$HOME/bin/" >> $HOME/.bash_profile; + wget https://deploy-proxy.mightybox.io/kits/wp-mb-kit/raw/branch/main/scripts/setupWP.sh?_r=${fn.random} -O ~/bin/setupWP.sh &>> /var/log/run.log; + echo $HOME/bin; - cmd[cp]: - echo "Updating redeploy.conf and installing jq" >> /var/log/install_scripts.log; - echo ${response.out} >> /etc/jelastic/redeploy.conf; - yum install jq -y &>> /var/log/install_scripts.log; + echo ${response.out} >> /etc/jelastic/redeploy.conf; + yum install jq -y &>> /var/log/run.log; user: root setupWordPress: - - cmd[${globals.TARGET_NODE_ID}]: |- - echo "Disabling WP Auto Update Core" >> /var/log/setup_wordpress.log; - grep -qE "(WP_AUTO_UPDATE_CORE)" ${globals.SERVER_WEBROOT}/wp-config.php || sed -i "/^\$table_prefix.*/a define( 'WP_AUTO_UPDATE_CORE', false );" ${globals.SERVER_WEBROOT}/wp-config.php; - echo "Updating Permalink Structure" >> /var/log/setup_wordpress.log; - wp option update permalink_structure '/%postname%/' --path=${globals.SERVER_WEBROOT} >> /var/log/setup_wordpress.log 2>&1; - echo "Setting Rewrite Structure" >> /var/log/setup_wordpress.log; - wp rewrite structure '/%postname%/' --hard --path=${globals.SERVER_WEBROOT} >> /var/log/setup_wordpress.log 2>&1; - + - cmd[${nodes.cp.master.id}]: |- + grep -qE "(WP_AUTO_UPDATE_CORE)" /var/www/webroot/ROOT/wp-config.php || sed -i "/^\$table_prefix.*/a define( 'WP_AUTO_UPDATE_CORE', false );" /var/www/webroot/ROOT/wp-config.php; + cd ~/bin/ && wp option update permalink_structure '/%postname%/' --path=/var/www/webroot/ROOT; + cd ~/bin/ && wp rewrite structure '/%postname%/' --hard --path=/var/www/webroot/ROOT; + installPlugins: - - cmd[${globals.TARGET_NODE_ID}]: |- - echo "Installing LiteSpeed Cache Plugin Version ${globals.version_lscache}" >> /var/log/install_plugins.log; - wp plugin install litespeed-cache --version=${globals.version_lscache} --activate --path=${globals.SERVER_WEBROOT} &>> /var/log/install_plugins.log; - echo "Flushing WordPress Cache" >> /var/log/install_plugins.log; - wp cache flush --path=${globals.SERVER_WEBROOT} &>> /var/log/install_plugins.log; - + - if (/lemp/.test("${nodes.cp.nodeType}") || /nginxphp/.test("${nodes.cp.nodeType}")): + cmd[${nodes.cp.master.id}]: |- + wget ${baseUrl}../configs/wordpress/wp-jelastic.php -O /var/www/webroot/ROOT/wp-jelastic.php + mv /var/www/webroot/ROOT/wp-config.php /tmp; sed -i "s/.*'wp-settings.php';.*/require_once ABSPATH . 'wp-jelastic.php';\n&/" /tmp/wp-config.php; mv /tmp/wp-config.php /var/www/webroot/ROOT; + wp plugin install w3-total-cache --version=${globals.version_w3total} --activate --path=/var/www/webroot/ROOT &>> /var/log/run.log; + wp cache flush --path=/var/www/webroot/ROOT &>> /var/log/run.log; + wp plugin install nginx-cache --activate --path=/var/www/webroot/ROOT &>> /var/log/run.log; + wp cache flush --path=/var/www/webroot/ROOT &>> /var/log/run.log; + wp db query "INSERT INTO wp_options(option_name,option_value,autoload) VALUES('nginx_cache_path','/var/www/webroot/ROOT/.cache','yes');" --path=/var/www/webroot/ROOT &>> /var/log/run.log; + wp db query "INSERT INTO wp_options(option_name,option_value,autoload) VALUES('nginx_auto_purge',1,'yes');" --path=/var/www/webroot/ROOT &>> /var/log/run.log; + wp cache flush --path=/var/www/webroot/ROOT &>> /var/log/run.log; + + - if (/llsmp/.test("${nodes.cp.nodeType}") || /litespeed/.test("${nodes.cp.nodeType}")): + cmd[${nodes.cp.master.id}]: |- + wp plugin install litespeed-cache --version=${globals.version_lscache} --activate --path=/var/www/webroot/ROOT &>> /var/log/run.log; + wp cache flush --path=/var/www/webroot/ROOT &>> /var/log/run.log; + setupPlugins: - - cmd[${globals.TARGET_NODE_ID}]: |- - echo "Running setupWP.sh with Redis Configuration" >> /var/log/setup_plugins.log; - bash $HOME/bin/setupWP.sh --pgcache true --objectcache true --REDIS_HOST ${globals.REDIS_HOST} --REDIS_PORT ${globals.REDIS_PORT} --REDIS_USER ${globals.REDIS_USER} --REDIS_PSWD ${globals.REDIS_PSWD} >> /var/log/setup_plugins.log 2>&1; + - cmd[${nodes.cp.master.id}]: |- + bash ~/bin/setupWP.sh --pgcache true --objectcache true --REDIS_HOST ${globals.REDIS_HOST} --REDIS_PORT ${globals.REDIS_PORT} --REDIS_USER ${globals.REDIS_USER} --REDIS_PSWD ${globals.REDIS_PSWD}; + \ No newline at end of file