Merge pull request #26 from WordOps/updating-configuration
Preparation for stable release 3.9.5
This commit is contained in:
9
.editorconfig
Normal file
9
.editorconfig
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
root = true
|
||||||
|
|
||||||
|
[*]
|
||||||
|
indent_style = space
|
||||||
|
indent_size = 4
|
||||||
|
end_of_line = lf
|
||||||
|
charset = utf-8
|
||||||
|
trim_trailing_whitespace = false
|
||||||
|
insert_final_newline = false
|
||||||
88
.travis.yml
88
.travis.yml
@@ -12,7 +12,7 @@ before_script:
|
|||||||
- sudo rm -rf /etc/mysql/
|
- sudo rm -rf /etc/mysql/
|
||||||
- sudo bash -c 'echo example.com > /etc/hostname'
|
- sudo bash -c 'echo example.com > /etc/hostname'
|
||||||
- sudo apt-get -qq purge mysql* graphviz*
|
- sudo apt-get -qq purge mysql* graphviz*
|
||||||
- sudo apt-get -qq autoremove
|
- sudo apt-get -qq autoremove --purge
|
||||||
- sudo apt-get update
|
- sudo apt-get update
|
||||||
|
|
||||||
script:
|
script:
|
||||||
@@ -20,7 +20,7 @@ script:
|
|||||||
- unset LANG
|
- unset LANG
|
||||||
- sudo bash -c 'echo -e "[user]\n\tname = abc\n\temail = root@localhost.com" > /home/travis/.gitconfig'
|
- sudo bash -c 'echo -e "[user]\n\tname = abc\n\temail = root@localhost.com" > /home/travis/.gitconfig'
|
||||||
- sudo echo "Travis Banch = $TRAVIS_BRANCH"
|
- sudo echo "Travis Banch = $TRAVIS_BRANCH"
|
||||||
- sudo apt-get install -y --force-yes git python3-setuptools python3-dev python3-apt
|
- sudo apt-get install -y --force-yes git python3-setuptools python3-dev python3-apt ccze
|
||||||
- sudo bash install $TRAVIS_BRANCH
|
- sudo bash install $TRAVIS_BRANCH
|
||||||
- sudo wo --help
|
- sudo wo --help
|
||||||
- sudo wo stack install || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo stack install || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
@@ -29,76 +29,46 @@ script:
|
|||||||
|
|
||||||
- sudo wo site create html.net --html || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create html.net --html || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- sudo wo site create php.com --php || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create php.com --php || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
|
|
||||||
- sudo wo site create mysql.com --mysql || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create mysql.com --mysql || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- sudo wo site create site1.com --wp || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create mysql-php73.com --mysql --php73 || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
|
|
||||||
- sudo wo site create site2.net --wp --wpsc || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create wp1.com --wp || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- sudo wo site create site4.com --wpfc || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create wp-php73.com --wp --php73 || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- sudo wo site create site4.net --wp --wpfc || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo site create site4.org --wpfc --wp || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo site create site5.com --wpsubdir || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
|
|
||||||
- sudo wo site create site6.com --wpsubdir --wpsc || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create wpsc1.net --wpsc || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- sudo wo site create site8.com --wpsubdir --wpfc || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create wpfc1.com --wpfc || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- sudo wo site create site8.net --wpfc --wpsubdir || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo site create site9.com --wpsubdomain || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
|
|
||||||
- sudo wo site create site10.org --wpsubdomain --wpsc || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create wpsc-php73.net --wpsc --php73 || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- sudo wo site create site12.org --wpsubdomain --wpfc || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create wpfc-php73.net --wpfc --php73 || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- sudo wo site create site12.in --wpfc --wpsubdomain || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
|
|
||||||
- yes | sudo wo site create site.hhvm.pagespeed2.com --wpsc --hhvm || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create wpredis.net --wpredis || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- yes | sudo wo site create site.hhvm.pagespeed4.com --wpfc --hhvm || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create wpredis-php73.net --wpredis --php73 || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- yes | sudo wo site create site.hhvm.pagespeed5.com --wpsubdir --hhvm || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- yes | sudo wo site create site.hhvm.pagespeed6.com --wpsubdir --wpsc --hhvm || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- yes | sudo wo site create site.hhvm.pagespeed8.com --wpsubdir --wpfc --hhvm || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- yes | sudo wo site create site.hhvm.pagespeed9.com --wpsubdomain --hhvm || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- yes | sudo wo site create site.hhvm.pagespeed10.org --wpsubdomain --wpsc --hhvm || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- yes | sudo wo site create site.hhvm.pagespeed12.in --wpfc --wpsubdomain --hhvm || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
|
|
||||||
- sudo wo site create site1.localtest.me --php --mysql || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create wpsubdir1.com --wpsubdir || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- sudo wo site create site2.localtest.me --mysql --html || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create wpsubdir-php73.com --wpsubdir --php73 || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- sudo wo site create site3.localtest.me --php --html || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo site create site4.localtest.me --wp --wpsubdomain || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo site create site5.localtest.me --wp --wpsubdir --wpfc || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- yes | sudo wo site create site6.localtest.me --wpredis || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- yes | sudo wo site create site7.localtest.me --wpsubdomain --wpredis || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- yes | sudo wo site create site8.localtest.me --wpsubdir --wpredis || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
|
|
||||||
|
- sudo wo site create wpsubdirwpsc1.com --wpsubdir --wpsc || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
|
- sudo wo site create wpsubdirwpsc2.com --wpsubdir --wpfc || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
|
|
||||||
|
- sudo wo site create wpsubdirwpsc1-php73.com --wpsubdir --wpsc --php73 || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
|
- sudo wo site create wpsubdirwpsc2-php73.com --wpsubdir --wpfc --php73|| sudo tail -n50 /var/log/wo/wordops.log
|
||||||
|
|
||||||
|
- sudo wo site create wpsubdomain1.com --wpsubdomain || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
|
- sudo wo site create wpsubdomain1-php73.com --wpsubdomain --php73 || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
|
|
||||||
|
- sudo wo site create wpsubdomainwpsc.org --wpsubdomain --wpsc || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
|
- sudo wo site create wpsubdomainwpfc.org --wpsubdomain --wpfc || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
|
- sudo wo site create wpsubdomainwpfc2.in --wpfc --wpsubdomain || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
|
|
||||||
- sudo wo debug --all || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo debug --all=off || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo debug site12.net || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo debug site12.net --all=off || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo site create 1.com --html || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create 1.com --html || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- sudo wo site create 2.com --php || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create 2.com --php || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- sudo wo site create 3.com --mysql || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site create 3.com --mysql || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
|
|
||||||
- sudo wo site update 1.com --wp || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site update 1.com --wp || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- sudo wo site update 2.com --wpsubdir || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site update 2.com --php73 || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
- sudo wo site update 3.com --wpsubdomain || sudo tail -n50 /var/log/wo/wordops.log
|
- sudo wo site update 3.com --php73 || sudo tail -n50 /var/log/wo/wordops.log
|
||||||
|
|
||||||
- sudo wo site update site1.com --wp --wpfc || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo site update site1.com --wp --wpsc || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- yes | sudo wo site update site1.com --wpredis || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
|
|
||||||
- sudo wo site update site5.com --wpsubdir --wpfc || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo site update site5.com --wpsubdir --wpsc || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
|
|
||||||
- sudo wo site update site9.com --wpsubdomain --wpfc || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo site update site9.com --wpsubdomain --wpsc || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- yes | sudo wo site update site.hhvm.pagespeed12.in --hhvm=off || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- yes | sudo wo site update site9.com --hhvm || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo site info site.hhvm.pagespeed12.in || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo site info site9.com || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
|
|
||||||
- sudo wo site create www.site-1.com --wp || sudo tail -n50 /var/log/wo/wordops.log|| sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo site create www.subsite.site-1.com --wpfc || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo site update www.subsite.site-1.com --wp || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
- sudo wo site delete www.subsite.site-1.com --all --no-prompt || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
|
|
||||||
- sudo wo site delete site12.in --all --no-prompt || sudo tail -n50 /var/log/wo/wordops.log
|
|
||||||
|
|
||||||
- sudo ls /var/www/
|
- sudo ls /var/www/
|
||||||
- sudo wp --allow-root --info
|
- sudo wp --allow-root --info
|
||||||
- sudo bash -c 'cat /var/log/wo/wordops.log'
|
- sudo bash -c 'cat /var/log/wo/wordops.log | ccze -A'
|
||||||
|
|||||||
14
CHANGELOG.md
14
CHANGELOG.md
@@ -8,20 +8,30 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|||||||
|
|
||||||
#### Changed
|
#### Changed
|
||||||
|
|
||||||
- Updating Nginx fastcgi_cache template
|
- Updated Nginx fastcgi_cache templates
|
||||||
- Updating Nginx configuration for WordPress 5.0
|
- Updated Nginx redis_cache templates
|
||||||
|
- Updated Nginx wp-super-cache templates
|
||||||
|
- Updated Nginx configuration for WordPress 5.0
|
||||||
- remove --experimental args
|
- remove --experimental args
|
||||||
- MariaDB version bumped to 10.3
|
- MariaDB version bumped to 10.3
|
||||||
|
- Refactored Changelog
|
||||||
|
- Updated WO manual
|
||||||
|
- Updated WO bash_completion
|
||||||
|
- Refactored README.md
|
||||||
|
|
||||||
#### Added
|
#### Added
|
||||||
|
|
||||||
- Add WebP image support with Nginx mapping
|
- Add WebP image support with Nginx mapping
|
||||||
- Add PHP 7.3 support
|
- Add PHP 7.3 support
|
||||||
|
- WordPress $skip_cache variable mapping
|
||||||
|
|
||||||
#### Fixed
|
#### Fixed
|
||||||
|
|
||||||
- Nginx variable $webp_suffix on fresh install
|
- Nginx variable $webp_suffix on fresh install
|
||||||
- wo update command
|
- wo update command
|
||||||
|
- Fix php services management
|
||||||
|
- Fix WP-CLI install
|
||||||
|
|
||||||
|
|
||||||
### v3.9.2 - November 30, 2018
|
### v3.9.2 - November 30, 2018
|
||||||
|
|
||||||
|
|||||||
3
LICENSE
3
LICENSE
@@ -1,6 +1,7 @@
|
|||||||
The MIT License (MIT)
|
The MIT License (MIT)
|
||||||
|
|
||||||
Copyright (c) 2018 WordOps
|
Copyright (c) 2018-2019 WordOps
|
||||||
|
Copyright (C) 2011-2017 EE Development Group (https://github.com/ee/ee/contributors)
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
|||||||
@@ -16,10 +16,10 @@
|
|||||||
|
|
||||||
<p align="center">
|
<p align="center">
|
||||||
<a href="#key-features">Key Features</a> •
|
<a href="#key-features">Key Features</a> •
|
||||||
<a href="#requirements">Requirements</a> •
|
|
||||||
<a href="#getting-started">Getting Started</a> •
|
<a href="#getting-started">Getting Started</a> •
|
||||||
<a href="#usage">Usage</a> •
|
<a href="#usage">Usage</a> •
|
||||||
<a href="#cheatsheet">Cheatsheet</a> •
|
<a href="https://github.com/WordOps/WordOps/wiki/Roadmap">RoadMap</a> •
|
||||||
|
<a href="https://github.com/WordOps/WordOps/blob/master/CHANGELOG.md">Changelog</a> •
|
||||||
<a href="#credits">Credits</a> •
|
<a href="#credits">Credits</a> •
|
||||||
<a href="#license">License</a>
|
<a href="#license">License</a>
|
||||||
</p>
|
</p>
|
||||||
@@ -30,7 +30,8 @@
|
|||||||
|
|
||||||
- Easy Migration from EasyEngine v3 (migration script development in progress)
|
- Easy Migration from EasyEngine v3 (migration script development in progress)
|
||||||
- Automated WordPress, Nginx, PHP, MySQL & Redis installation
|
- Automated WordPress, Nginx, PHP, MySQL & Redis installation
|
||||||
- Optimized Nginx configuration with multiple cache backends support
|
- Up-to-date server stack with PHP 7.2 & 7.3, MariaDB 10.3 & Redis 5.0
|
||||||
|
- Optimized Nginx configurations with multiple cache backends support
|
||||||
- Let's Encrypt SSL certificates
|
- Let's Encrypt SSL certificates
|
||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|||||||
@@ -29,7 +29,7 @@ _wo_complete()
|
|||||||
# IF YOU HAD ANOTHER CONTROLLER, YOU'D HANDLE THAT HERE
|
# IF YOU HAD ANOTHER CONTROLLER, YOU'D HANDLE THAT HERE
|
||||||
"debug")
|
"debug")
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
-W "$(command find /etc/nginx/sites-enabled/ -type l -printf "%P " 2> /dev/null) --nginx --php --php72 --fpm --fpm7 --mysql -i --interactive --all --import-slow-log --import-slow-log-interval= --nginx=off --php=off --php72=off --fpm=off --fpm7=off --mysql=off --all=off " \
|
-W "$(command find /etc/nginx/sites-enabled/ -type l -printf "%P " 2> /dev/null) --nginx --php --php73 --fpm --fpm7 --mysql -i --interactive --all --import-slow-log --import-slow-log-interval= --nginx=off --php=off --php73=off --fpm=off --fpm7=off --mysql=off --all=off " \
|
||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
|
|
||||||
@@ -53,13 +53,13 @@ _wo_complete()
|
|||||||
|
|
||||||
"info")
|
"info")
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
-W "--mysql --php --php72 --nginx" \
|
-W "--mysql --php --php73 --nginx" \
|
||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"log")
|
"log")
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
-W "show reset gzip mail" \
|
-W "show reset gzip" \
|
||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
|
|
||||||
@@ -74,17 +74,17 @@ _wo_complete()
|
|||||||
# HANDLE EVERYTHING AFTER THE THIRD LEVEL NAMESPACE
|
# HANDLE EVERYTHING AFTER THE THIRD LEVEL NAMESPACE
|
||||||
"install" | "purge" | "remove" )
|
"install" | "purge" | "remove" )
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
-W "--web --admin --nginx --php --php72 --mysql --wpcli --phpmyadmin --adminer --utils --all --hhvm --redis --phpredisadmin" \
|
-W "--web --admin --nginx --php --php73 --mysql --wpcli --phpmyadmin --adminer --utils --all --hhvm --redis --phpredisadmin" \
|
||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
"upgrade" )
|
"upgrade" )
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
-W "--web --nginx --php --php72 --mysql --all --hhvm --php56 --no-prompt --wpcli" \
|
-W "--web --nginx --php --php73 --mysql --all --hhvm --php56 --no-prompt --wpcli" \
|
||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
"start" | "stop" | "reload" | "restart" | "status")
|
"start" | "stop" | "reload" | "restart" | "status")
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
-W "--nginx --php --php72 --mysql --memcache --redis" \
|
-W "--nginx --php --php73 --mysql --memcache --redis" \
|
||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
"migrate")
|
"migrate")
|
||||||
@@ -136,7 +136,7 @@ _wo_complete()
|
|||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
|
|
||||||
if [ ${COMP_WORDS[1]} == "debug" ] && ([ "$prev" != "--start" ] && [ "$prev" != "--nginx" ] && [ "$prev" != "--php" ] && [ "$prev" != "--php72" ] && [ "$prev" != "--fpm" ] && [ "$prev" != "--fpm7" ] && [ "$prev" != "--mysql" ] && [ "$prev" != "-i" ] && [ "$prev" != "--interactive" ] && [ "$prev" != "--import-slow-log" ] && [ "$prev" != "--stop" ]); then
|
if [ ${COMP_WORDS[1]} == "debug" ] && ([ "$prev" != "--start" ] && [ "$prev" != "--nginx" ] && [ "$prev" != "--php" ] && [ "$prev" != "--php73" ] && [ "$prev" != "--fpm" ] && [ "$prev" != "--fpm7" ] && [ "$prev" != "--mysql" ] && [ "$prev" != "-i" ] && [ "$prev" != "--interactive" ] && [ "$prev" != "--import-slow-log" ] && [ "$prev" != "--stop" ]); then
|
||||||
retlist="--all --wp --rewrite -i --all=off --wp=off --rewrite=off"
|
retlist="--all --wp --rewrite -i --all=off --wp=off --rewrite=off"
|
||||||
ret="${retlist[@]/$prev}"
|
ret="${retlist[@]/$prev}"
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
@@ -159,13 +159,13 @@ _wo_complete()
|
|||||||
|
|
||||||
"create")
|
"create")
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
-W "--user --pass --email --html --php --php72 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --hhvm --proxy= --wpredis --letsencrypt -le" \
|
-W "--user --pass --email --html --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --hhvm --proxy= --wpredis --letsencrypt -le" \
|
||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"update")
|
"update")
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
-W "--password --php --php72 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --hhvm --hhvm=off --wpredis --letsencrypt --letsencrypt=off --letsencrypt=renew" \
|
-W "--password --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --hhvm --hhvm=off --wpredis --letsencrypt --letsencrypt=off --letsencrypt=renew" \
|
||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
"delete")
|
"delete")
|
||||||
@@ -211,9 +211,9 @@ _wo_complete()
|
|||||||
"--wp")
|
"--wp")
|
||||||
if [ ${COMP_WORDS[1]} != "debug" ]; then
|
if [ ${COMP_WORDS[1]} != "debug" ]; then
|
||||||
if [ ${COMP_WORDS[2]} == "create" ]; then
|
if [ ${COMP_WORDS[2]} == "create" ]; then
|
||||||
retlist="--wp --wpsc --wpfc --hhvm --user --email --pass --wpredis --letsencrypt --php72"
|
retlist="--wp --wpsc --wpfc --hhvm --user --email --pass --wpredis --letsencrypt --php73"
|
||||||
elif [ ${COMP_WORDS[2]} == "update" ]; then
|
elif [ ${COMP_WORDS[2]} == "update" ]; then
|
||||||
retlist="--wp --wpfc --wpsc --php72 --php72=off --hhvm --hhvm=off --wpredis --letsencrypt --letsencrypt=off --letsencrypt=renew"
|
retlist="--wp --wpfc --wpsc --php73 --php73=off --hhvm --hhvm=off --wpredis --letsencrypt --letsencrypt=off --letsencrypt=renew"
|
||||||
else
|
else
|
||||||
retlist=""
|
retlist=""
|
||||||
fi
|
fi
|
||||||
@@ -230,9 +230,9 @@ _wo_complete()
|
|||||||
"--wpsubdir" | "--wpsubdomain")
|
"--wpsubdir" | "--wpsubdomain")
|
||||||
if [ ${COMP_WORDS[1]} != "debug" ]; then
|
if [ ${COMP_WORDS[1]} != "debug" ]; then
|
||||||
if [ ${COMP_WORDS[2]} == "create" ]; then
|
if [ ${COMP_WORDS[2]} == "create" ]; then
|
||||||
retlist="--wpsc --wpfc --hhvm --user --email --pass --wpredis --letsencrypt --php72"
|
retlist="--wpsc --wpfc --hhvm --user --email --pass --wpredis --letsencrypt --php73"
|
||||||
elif [ ${COMP_WORDS[2]} == "update" ]; then
|
elif [ ${COMP_WORDS[2]} == "update" ]; then
|
||||||
retlist="--wpfc --wpsc --php72 --php72=off --hhvm --hhvm=off --wpredis --letsencrypt --letsencrypt=off --letsencrypt=renew"
|
retlist="--wpfc --wpsc --php73 --php73=off --hhvm --hhvm=off --wpredis --letsencrypt --letsencrypt=off --letsencrypt=renew"
|
||||||
else
|
else
|
||||||
retlist=""
|
retlist=""
|
||||||
fi
|
fi
|
||||||
@@ -248,7 +248,7 @@ _wo_complete()
|
|||||||
|
|
||||||
"--hhvm" | "--wpredis" | "--wpfc" | "--wpsc" | "--wpsubdir" | "--wpsubdomain" | "--user" | "--pass" | "--email" | "--wp")
|
"--hhvm" | "--wpredis" | "--wpfc" | "--wpsc" | "--wpsubdir" | "--wpsubdomain" | "--user" | "--pass" | "--email" | "--wp")
|
||||||
if [ ${COMP_WORDS[2]} == "create" ]; then
|
if [ ${COMP_WORDS[2]} == "create" ]; then
|
||||||
retlist="--user --pass --email --wp --wpsubdir --wpsubdomain --wpfc --wpsc --hhvm --experimenal --wpredis --php72 --letsencrypt "
|
retlist="--user --pass --email --wp --wpsubdir --wpsubdomain --wpfc --wpsc --hhvm --wpredis --php73 --letsencrypt "
|
||||||
else
|
else
|
||||||
retlist=""
|
retlist=""
|
||||||
fi
|
fi
|
||||||
@@ -261,7 +261,7 @@ _wo_complete()
|
|||||||
|
|
||||||
"--hhvm" | "--wpredis" | "--wpfc")
|
"--hhvm" | "--wpredis" | "--wpfc")
|
||||||
if [ ${COMP_WORDS[2]} == "update" ]; then
|
if [ ${COMP_WORDS[2]} == "update" ]; then
|
||||||
retlist="--password --php --php72 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --hhvm --hhvm=off --experimenal --wpredis --letsencrypt --letsencrypt=off --letsencrypt=renew"
|
retlist="--password --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --hhvm --hhvm=off --wpredis --letsencrypt --letsencrypt=off --letsencrypt=renew"
|
||||||
else
|
else
|
||||||
retlist=""
|
retlist=""
|
||||||
fi
|
fi
|
||||||
@@ -272,15 +272,15 @@ _wo_complete()
|
|||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"--web" | "--admin" | "--nginx" | "--php" | "--php72" | "--mysql" | "--wpcli" | "--phpmyadmin" | "--adminer" | "--utils" | "--memcache" | "--redis | --phpredisadmin")
|
"--web" | "--admin" | "--nginx" | "--php" | "--php73" | "--mysql" | "--wpcli" | "--phpmyadmin" | "--adminer" | "--utils" | "--memcache" | "--redis | --phpredisadmin")
|
||||||
if [[ ${COMP_WORDS[2]} == "install" || ${COMP_WORDS[2]} == "purge" || ${COMP_WORDS[2]} == "remove" ]]; then
|
if [[ ${COMP_WORDS[2]} == "install" || ${COMP_WORDS[2]} == "purge" || ${COMP_WORDS[2]} == "remove" ]]; then
|
||||||
retlist="--web --admin --nginx --php --php72 --mysql--wpcli --phpmyadmin --adminer --utils --memcache --redis --phpredisadmin"
|
retlist="--web --admin --nginx --php --php73 --mysql--wpcli --phpmyadmin --adminer --utils --memcache --redis --phpredisadmin"
|
||||||
elif [[ ${COMP_WORDS[2]} == "start" || ${COMP_WORDS[2]} == "reload" || ${COMP_WORDS[2]} == "restart" || ${COMP_WORDS[2]} == "stop" ]]; then
|
elif [[ ${COMP_WORDS[2]} == "start" || ${COMP_WORDS[2]} == "reload" || ${COMP_WORDS[2]} == "restart" || ${COMP_WORDS[2]} == "stop" ]]; then
|
||||||
retlist="--nginx --php --php72 --mysql --memcache --redis"
|
retlist="--nginx --php --php73 --mysql --memcache --redis"
|
||||||
elif [[ ${COMP_WORDS[1]} == "debug" ]]; then
|
elif [[ ${COMP_WORDS[1]} == "debug" ]]; then
|
||||||
retlist="--start --nginx --php --php72 --fpm --fpm7 --mysql -i --interactive -stop --import-slow-log --import-slow-log-interval= -"
|
retlist="--start --nginx --php --php73 --fpm --fpm7 --mysql -i --interactive -stop --import-slow-log --import-slow-log-interval= -"
|
||||||
if [[ $prev == '--mysql' ]]; then
|
if [[ $prev == '--mysql' ]]; then
|
||||||
retlist="--start --nginx --php --php72 --fpm --fpm7 --mysql -i --interactive --stop --import-slow-log"
|
retlist="--start --nginx --php --php73 --fpm --fpm7 --mysql -i --interactive --stop --import-slow-log"
|
||||||
fi
|
fi
|
||||||
elif [[ ${COMP_WORDS[1]} == "log" ]]; then
|
elif [[ ${COMP_WORDS[1]} == "log" ]]; then
|
||||||
if [ ${COMP_WORDS[2]} == "show" ]; then
|
if [ ${COMP_WORDS[2]} == "show" ]; then
|
||||||
@@ -363,7 +363,7 @@ _wo_complete()
|
|||||||
case "$mprev" in
|
case "$mprev" in
|
||||||
"--user" | "--email" | "--pass")
|
"--user" | "--email" | "--pass")
|
||||||
if [ ${COMP_WORDS[2]} == "create" ]; then
|
if [ ${COMP_WORDS[2]} == "create" ]; then
|
||||||
retlist="--user --pass --email --html --php --php72 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --hhvm --wpredis --letsencrypt"
|
retlist="--user --pass --email --html --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --hhvm --wpredis --letsencrypt"
|
||||||
fi
|
fi
|
||||||
ret="${retlist[@]/$prev}"
|
ret="${retlist[@]/$prev}"
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
|
|||||||
32
docs/wo.8
32
docs/wo.8
@@ -5,15 +5,15 @@
|
|||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
wo [ --version | --help | info | stack | site | debug | update | clean | import_slow_log | log | secure | sync]
|
wo [ --version | --help | info | stack | site | debug | update | clean | import_slow_log | log | secure | sync]
|
||||||
.TP
|
.TP
|
||||||
wo stack [ install | remove | purge | migrate | upgrade] [ --web | --mail | --all | --nginx | --php | --php72 | --mysql | --admin | --postfix | --mailscanner | --adminer | --redis | --hhvm | --phpmyadmin | --phpredisadmin | --wpcli | --utils ]
|
wo stack [ install | remove | purge | migrate | upgrade] [ --web | --all | --nginx | --php | --php73 | --mysql | --admin | --adminer | --redis | --hhvm | --phpmyadmin | --phpredisadmin | --wpcli | --utils ]
|
||||||
.TP
|
.TP
|
||||||
wo stack [ status | start | stop | reload | restart ] [--all | --nginx | --php | --php72 |--mysql | --devcot | --web | --postfix | --memcache | --redis]
|
wo stack [ status | start | stop | reload | restart ] [--all | --nginx | --php | --php73 |--mysql | --web | --memcache | --redis]
|
||||||
.TP
|
.TP
|
||||||
wo site [ list | info | show | enable | disable | edit | cd | show ] [ example.com ]
|
wo site [ list | info | show | enable | disable | edit | cd | show ] [ example.com ]
|
||||||
.TP
|
.TP
|
||||||
wo site create example.com [ --html | --php | --php72 | --mysql] [[--wp | --wpsubdir | --wpsubdomain ] [--wpsc | --w3tc | --wpfc | --wpredis | --hhvm | --letsencrypt/-le]]
|
wo site create example.com [ --html | --php | --php73 | --mysql] [[--wp | --wpsubdir | --wpsubdomain ] [--wpsc | --wpfc | --wpredis | --hhvm | --letsencrypt/-le]]
|
||||||
.TP
|
.TP
|
||||||
wo site update example.com [ --php | --php72 |--mysql] [[--wp | --wpsubdir | --wpsubdomain ] [--wpsc | --w3tc | --wpfc | --wpredis | --hhvm ] [--password] [--letsencrypt=on/off/renew]]
|
wo site update example.com [ --php | --php73 |--mysql] [[--wp | --wpsubdir | --wpsubdomain ] [--wpsc | --wpfc | --wpredis | --hhvm ] [--password] [--letsencrypt=on/off/renew]]
|
||||||
.TP
|
.TP
|
||||||
wo site delete example.com [--db | --files | --all | --no-prompt | --force/-f ]
|
wo site delete example.com [--db | --files | --all | --no-prompt | --force/-f ]
|
||||||
.TP
|
.TP
|
||||||
@@ -46,19 +46,19 @@ Display WordOps (wo) help.
|
|||||||
.TP
|
.TP
|
||||||
.B stack
|
.B stack
|
||||||
.TP
|
.TP
|
||||||
.B install [ --all | --web | --mail | --nginx | --php | --php72 |--mysql | --redis | --postfix | --adminer | --phpmyadmin | --phpredismyadmin | --wpcli | --utils ]
|
.B install [ --all | --web | --nginx | --php | --php73 |--mysql | --redis | --adminer | --phpmyadmin | --phpredismyadmin | --wpcli | --utils ]
|
||||||
.br
|
.br
|
||||||
Install Nginx PHP5 MySQL Postfix stack Packages if not used with
|
Install Nginx PHP5 MySQL Postfix stack Packages if not used with
|
||||||
.br
|
.br
|
||||||
any options.Installs specific package if used with option.
|
any options.Installs specific package if used with option.
|
||||||
.TP
|
.TP
|
||||||
.B remove [ --all | --web | --mail | --nginx | --php | --php72 |--mysql | --redis | --postfix | --adminer | --phpmyadmin | --phpredismyadmin | --wpcli | --utils ]
|
.B remove [ --all | --web | --nginx | --php | --php73 |--mysql | --redis | --adminer | --phpmyadmin | --phpredismyadmin | --wpcli | --utils ]
|
||||||
.br
|
.br
|
||||||
Remove Nginx PHP5 MySQL Postfix stack Packages if not used with
|
Remove Nginx PHP5 MySQL Postfix stack Packages if not used with
|
||||||
.br
|
.br
|
||||||
any options. Remove specific package if used with option.
|
any options. Remove specific package if used with option.
|
||||||
.TP
|
.TP
|
||||||
.B purge [ --all | --web | --mail | --nginx | --php | --php72 |--mysql | --redis | --postfix | --adminer | --phpmyadmin | --phpredismyadmin | --wpcli | --utils ]
|
.B purge [ --all | --web | --nginx | --php | --php73 |--mysql | --redis | --adminer | --phpmyadmin | --phpredismyadmin | --wpcli | --utils ]
|
||||||
.br
|
.br
|
||||||
Purge Nginx PHP5 MySQL Postfix stack Packages if not used with any
|
Purge Nginx PHP5 MySQL Postfix stack Packages if not used with any
|
||||||
.br
|
.br
|
||||||
@@ -66,23 +66,23 @@ options.Purge specific package if used with option.
|
|||||||
.TP
|
.TP
|
||||||
.B status
|
.B status
|
||||||
.br
|
.br
|
||||||
Display status of NGINX, PHP5-FPM, MySQL, Postfix, Redis-Server services.
|
Display status of NGINX, PHP7.2-FPM, MySQL, Redis-Server services.
|
||||||
.TP
|
.TP
|
||||||
.B start
|
.B start
|
||||||
.br
|
.br
|
||||||
Start services NGINX, PHP5-FPM, MySQL, Postfix, Redis-Server.
|
Start services NGINX, PHP7.2-FPM, MySQL, Redis-Server.
|
||||||
.TP
|
.TP
|
||||||
.B stop
|
.B stop
|
||||||
.br
|
.br
|
||||||
Stop services NGINX, PHP5-FPM, MySQL, Postfix, Redis-Server.
|
Stop services NGINX, PHP7.2-FPM, MySQL, Redis-Server.
|
||||||
.TP
|
.TP
|
||||||
.B reload
|
.B reload
|
||||||
.br
|
.br
|
||||||
Reload services NGINX, PHP5-FPM, MySQL, Postfix, Redis-Server.
|
Reload services NGINX, PHP7.2-FPM, MySQL, Redis-Server.
|
||||||
.TP
|
.TP
|
||||||
.B restart
|
.B restart
|
||||||
.br
|
.br
|
||||||
Restart services NGINX, PHP5-FPM, MySQL, Postfix, Redis-Server.
|
Restart services NGINX, PHP7.2-FPM, MySQL, Redis-Server.
|
||||||
.TP
|
.TP
|
||||||
.B site
|
.B site
|
||||||
.br
|
.br
|
||||||
@@ -129,13 +129,13 @@ Disable site by Destroying softlink with site file in
|
|||||||
.br
|
.br
|
||||||
Edit NGINX configuration of site.
|
Edit NGINX configuration of site.
|
||||||
.TP
|
.TP
|
||||||
.B create [ example.com ] [ --html | --php | --php72 |--mysql] [[--wp | --wpsubdir | --wpsubdomain ] [--wpsc | --w3tc | --wpfc | --wpredis | --hhvm ]]
|
.B create [ example.com ] [ --html | --php | --php73 |--mysql] [[--wp | --wpsubdir | --wpsubdomain ] [--wpsc | --wpfc | --wpredis | --hhvm ]]
|
||||||
.br
|
.br
|
||||||
Create new site according to given options. If no options provided
|
Create new site according to given options. If no options provided
|
||||||
.br
|
.br
|
||||||
create static site with html only.
|
create static site with html only.
|
||||||
.TP
|
.TP
|
||||||
.B update [ example.com ] [ --html | --php | --php72 |--mysql] [[--wp | --wpsubdir | --wpsubdomain ] [ --wpsc | --w3tc | --wpfc | --wpredis | --hhvm ] [--password]]
|
.B update [ example.com ] [ --html | --php | --php73 |--mysql] [[--wp | --wpsubdir | --wpsubdomain ] [ --wpsc | --wpfc | --wpredis | --hhvm ] [--password]]
|
||||||
.br
|
.br
|
||||||
Update site configuration according to specified options.
|
Update site configuration according to specified options.
|
||||||
.TP
|
.TP
|
||||||
@@ -143,7 +143,7 @@ Update site configuration according to specified options.
|
|||||||
.br
|
.br
|
||||||
Delete site i.e webroot, database, ad configuration permanently.
|
Delete site i.e webroot, database, ad configuration permanently.
|
||||||
.TP
|
.TP
|
||||||
.B debug [ -i | --nginx=on/off | --php=on/off | --php72=on/off | --mysql=on/off | --rewrite=on/off | --fpm=on/off | --fpm7=on/off ]
|
.B debug [ -i | --nginx=on/off | --php=on/off | --php73=on/off | --mysql=on/off | --rewrite=on/off | --fpm=on/off | --fpm7=on/off ]
|
||||||
.br
|
.br
|
||||||
Starts server level debugging. If this is used without arguments it will start debugging
|
Starts server level debugging. If this is used without arguments it will start debugging
|
||||||
.br
|
.br
|
||||||
@@ -182,7 +182,7 @@ used with wo debug command. used to start or stop nginx debugging.
|
|||||||
.br
|
.br
|
||||||
used with wo debug command. used to start or stop php debugging.
|
used with wo debug command. used to start or stop php debugging.
|
||||||
.TP
|
.TP
|
||||||
.B --php72=on/off
|
.B --php73=on/off
|
||||||
.br
|
.br
|
||||||
used with wo debug command. used to start or stop php72 debugging.
|
used with wo debug command. used to start or stop php72 debugging.
|
||||||
.TP
|
.TP
|
||||||
|
|||||||
163
install
163
install
@@ -7,7 +7,7 @@
|
|||||||
# Copyright (c) 2019 - WordOps
|
# Copyright (c) 2019 - WordOps
|
||||||
# This script is licensed under M.I.T
|
# This script is licensed under M.I.T
|
||||||
# -------------------------------------------------------------------------
|
# -------------------------------------------------------------------------
|
||||||
# Version 3.9.3 - 2019-03-04
|
# Version 3.9.3 - 2019-03-05
|
||||||
# -------------------------------------------------------------------------
|
# -------------------------------------------------------------------------
|
||||||
readonly wo_version_old="2.2.3"
|
readonly wo_version_old="2.2.3"
|
||||||
readonly wo_version_new="3.9.3"
|
readonly wo_version_new="3.9.3"
|
||||||
@@ -27,7 +27,7 @@ TPUT_FAIL=$(tput setaf 1)
|
|||||||
|
|
||||||
wo_lib_echo () {
|
wo_lib_echo () {
|
||||||
TPUT_ECHO=$(tput setaf 4)
|
TPUT_ECHO=$(tput setaf 4)
|
||||||
echo "${TPUT_ECHO}${*}${TPUT_RESET}"
|
echo "${*}${TPUT_RESET}"
|
||||||
}
|
}
|
||||||
|
|
||||||
wo_lib_echo_info()
|
wo_lib_echo_info()
|
||||||
@@ -82,7 +82,7 @@ fi
|
|||||||
###
|
###
|
||||||
# 1 - Define variables for later use
|
# 1 - Define variables for later use
|
||||||
###
|
###
|
||||||
wo_branch=$1
|
wo_branch="$1"
|
||||||
migration=0
|
migration=0
|
||||||
readonly wo_log_dir=/var/log/wo/
|
readonly wo_log_dir=/var/log/wo/
|
||||||
readonly wo_install_log=/var/log/wo/install.log
|
readonly wo_install_log=/var/log/wo/install.log
|
||||||
@@ -96,17 +96,13 @@ if [ "$wo_linux_distro" != "Ubuntu" ] && [ "$wo_linux_distro" != "Debian" ]; the
|
|||||||
wo_lib_echo_fail "WordOps (wo) only supports Ubuntu and Debian at the moment."
|
wo_lib_echo_fail "WordOps (wo) only supports Ubuntu and Debian at the moment."
|
||||||
wo_lib_echo_fail "If you are feeling adventurous, you are free to fork WordOps to support"
|
wo_lib_echo_fail "If you are feeling adventurous, you are free to fork WordOps to support"
|
||||||
wo_lib_echo_fail "other Linux distributions and perhaps even Unix deratives."
|
wo_lib_echo_fail "other Linux distributions and perhaps even Unix deratives."
|
||||||
|
exit 100
|
||||||
|
else
|
||||||
|
check_wo_linux_distro=$(lsb_release -sc | grep -E "trusty|xenial|bionic|jessie|stretch")
|
||||||
|
if [ -z "$check_wo_linux_distro" ]; then
|
||||||
wo_lib_echo_fail "WordOps (wo) only supports Ubuntu 14.04/16.04/18.04, Debian 8.x and Debian 9.x"
|
wo_lib_echo_fail "WordOps (wo) only supports Ubuntu 14.04/16.04/18.04, Debian 8.x and Debian 9.x"
|
||||||
exit 100
|
exit 100
|
||||||
fi
|
fi
|
||||||
|
|
||||||
###
|
|
||||||
# 1 - WordOps (wo) only supports Ubuntu/Debian versions that are eligible for support
|
|
||||||
###
|
|
||||||
lsb_release -d | grep -E "14.04|16.04|18.04|jessie|stretch" &>> /dev/null
|
|
||||||
if [ "$?" -ne "0" ]; then
|
|
||||||
wo_lib_echo_fail "WordOps (wo) only supports Ubuntu 14.04/16.04/18.04, Debian 8.x and Debian 9.x"
|
|
||||||
exit 100
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
###
|
###
|
||||||
@@ -127,16 +123,18 @@ fi
|
|||||||
####
|
####
|
||||||
wo_install_dep()
|
wo_install_dep()
|
||||||
{
|
{
|
||||||
echo -ne ' Installing dependencies [..]\r'
|
echo -ne "${TPUT_ECHO}Installing dependencies ${TPUT_RESET}[..]\r"
|
||||||
if {
|
if {
|
||||||
if [ "$wo_linux_distro" == "Ubuntu" ]; then
|
if [ "$wo_linux_distro" == "Ubuntu" ]; then
|
||||||
apt-get -y install build-essential curl gzip python3 python3-apt python3-setuptools python3-dev sqlite3 git tar software-properties-common pigz gnupg2 > /dev/null 2>&1
|
apt-get -y install build-essential curl gzip python3 python3-apt python3-setuptools python3-dev sqlite3 git tar software-properties-common pigz gnupg2 > /dev/null 2>&1
|
||||||
else
|
else
|
||||||
apt-get -y install build-essential curl gzip dirmngr python3 python3-apt python3-setuptools python3-dev sqlite3 git tar software-properties-common pigz gnupg2 > /dev/null 2>&1
|
apt-get -y install build-essential curl gzip dirmngr python3 python3-apt python3-setuptools python3-dev sqlite3 git tar software-properties-common pigz gnupg2 > /dev/null 2>&1
|
||||||
fi
|
fi
|
||||||
}; then echo -ne ' Installing dependencies [OK]\r'
|
}; then echo -ne "${TPUT_ECHO}Installing dependencies ${TPUT_RESET}[OK]\r"
|
||||||
|
echo -ne '\n'
|
||||||
else
|
else
|
||||||
echo -e " Installing dependencies [FAIL]"
|
echo -e "${TPUT_FAIL}Installing dependencies ${TPUT_RESET}[FAIL]"
|
||||||
|
echo -ne '\n'
|
||||||
fi
|
fi
|
||||||
locale-gen en &>> /dev/null
|
locale-gen en &>> /dev/null
|
||||||
|
|
||||||
@@ -150,34 +148,6 @@ wo_install_dep()
|
|||||||
sed -i 's/TLSv1 TLSv1.1 TLSv1.2;/TLSv1.2;/g' /etc/nginx/nginx.conf
|
sed -i 's/TLSv1 TLSv1.1 TLSv1.2;/TLSv1.2;/g' /etc/nginx/nginx.conf
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$wo_linux_distro" == "Ubuntu" ]; then
|
|
||||||
add-apt-repository -y 'ppa:ondrej/php'
|
|
||||||
wo_lib_echo "Updating the PHP repository for some neat PHP 7.2 support"
|
|
||||||
apt-get update &>> /dev/null
|
|
||||||
apt-get -y install php7.2-fpm php7.2-curl php7.2-gd php-memcached php7.2-imap php7.2-common php7.2-readline php-redis php7.2-mysql php7.2-cli php-imagick php7.2-mbstring php7.2-recode php7.2-bcmath php7.2-opcache php7.2-zip php7.2-xml php7.2-soap php-msgpack graphviz php-pear php-xdebug || wo_lib_error "Not all PHP packages could be installed. " 1
|
|
||||||
mkdir -p /var/log/php/7.2/
|
|
||||||
touch /var/log/php/7.2/slow.log /var/log/php/7.2/fpm.log
|
|
||||||
systemctl php7.2-fpm restart &>> /dev/null
|
|
||||||
|
|
||||||
elif [ "$wo_linux_distro" == "Debian" ]; then
|
|
||||||
apt-get install apt-transport-https lsb-release ca-certificates locales locales-all -y
|
|
||||||
export LC_ALL=en_US.UTF-8
|
|
||||||
export LANG=en_US.UTF-8
|
|
||||||
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
|
|
||||||
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list
|
|
||||||
apt-get update &>> /dev/null
|
|
||||||
apt-get -y install php7.2-fpm php7.2-curl php7.2-gd php-memcached php7.2-imap php7.2-common php7.2-readlne php-redis php7.2-mysql php7.2-cli php-imagick php7.2-mbstring php7.2-recode php7.2-bcmath php7.2-opcache php7.2-zip php7.2-xml php7.2-soap php-msgpack graphviz php-pear php-xdebug || wo_lib_error "Not all PHP packages could be installed." 1
|
|
||||||
systemctl php7.2-fpm restart &>> /dev/null
|
|
||||||
fi
|
|
||||||
|
|
||||||
###
|
|
||||||
# Webp mapping
|
|
||||||
###
|
|
||||||
[ ! -f /etc/nginx/conf.d/webp.conf ] && {
|
|
||||||
mkdir -p /etc/nginx/conf.d
|
|
||||||
echo -e 'map $http_accept $webp_suffix {\n default "";\n "~*webp" ".webp";\n}\n' > /etc/nginx/conf.d/webp.conf
|
|
||||||
}
|
|
||||||
|
|
||||||
# Let's Encrypt .well-known folder setup
|
# Let's Encrypt .well-known folder setup
|
||||||
if [ ! -d /var/www/html/.well-known/acme-challenge ]; then
|
if [ ! -d /var/www/html/.well-known/acme-challenge ]; then
|
||||||
mkdir -p /var/www/html/.well-known/acme-challenge
|
mkdir -p /var/www/html/.well-known/acme-challenge
|
||||||
@@ -389,20 +359,25 @@ wo_update_wp_cli()
|
|||||||
# Now, finally, let's install WordOps
|
# Now, finally, let's install WordOps
|
||||||
wo_install()
|
wo_install()
|
||||||
{
|
{
|
||||||
|
if {
|
||||||
|
echo -ne "${TPUT_ECHO}Installing Wordops $wo_branch ${TPUT_RESET}[..]\r"
|
||||||
rm -rf /tmp/easyengine
|
rm -rf /tmp/easyengine
|
||||||
rm -rf /tmp/wordops
|
rm -rf /tmp/wordops
|
||||||
|
|
||||||
wo_lib_echo "Downloading WordOps straight from GitHub - fresh and brewed with love. Hold your horses..."
|
|
||||||
[ -z "$wo_branch" ] && {
|
[ -z "$wo_branch" ] && {
|
||||||
wo_branch=master
|
wo_branch=master
|
||||||
}
|
}
|
||||||
|
|
||||||
git clone -b "$wo_branch" https://github.com/WordOps/WordOps.git /tmp/wordops --quiet > /dev/null \
|
git clone -b "$wo_branch" https://github.com/WordOps/WordOps.git /tmp/wordops --quiet > /dev/null 2>&1
|
||||||
|| wo_lib_error "An error was encountered during the download, exit status" $?
|
|
||||||
|
|
||||||
cd /tmp/wordops || exit 1
|
cd /tmp/wordops || exit 1
|
||||||
wo_lib_echo "The moment you've all been waiting for, time to install WordOps!"
|
python3 setup.py install > /dev/null 2>&1
|
||||||
python3 setup.py install || wo_lib_error "An error was encountered during the installation, exit status " $?
|
}; then echo -ne "${TPUT_ECHO}Installing Wordops $wo_branch ${TPUT_RESET}[OK]\r"
|
||||||
|
echo -ne '\n'
|
||||||
|
else
|
||||||
|
echo -e "${TPUT_FAIL}Installing Wordops $wo_branch ${TPUT_RESET}[FAIL]"
|
||||||
|
echo -ne '\n'
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
wo_update_latest()
|
wo_update_latest()
|
||||||
@@ -475,11 +450,11 @@ wo_update_latest()
|
|||||||
DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confmiss" -o Dpkg::Options::="--force-confold" -y install nginx-custom nginx-ee
|
DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confmiss" -o Dpkg::Options::="--force-confold" -y install nginx-custom nginx-ee
|
||||||
service nginx restart &>> /dev/null
|
service nginx restart &>> /dev/null
|
||||||
fi
|
fi
|
||||||
dpkg --get-selections | grep -v deinstall | grep nginx-common
|
CHECK_NGINX_COMMON=$(dpkg --get-selections | grep -v deinstall | grep nginx-common)
|
||||||
if [ $? -eq 0 ]; then
|
if [ -n "$CHECK_NGINX_COMMON" ]; then
|
||||||
apt-get update
|
apt-get update
|
||||||
dpkg --get-selections | grep -v deinstall | grep nginx-mainline
|
CHECK_NGINX_MAILINE=$(dpkg --get-selections | grep -v deinstall | grep nginx-mainline)
|
||||||
if [ $? -eq 0 ]; then
|
if [ -n "$CHECK_NGINX_MAILINE" ]; then
|
||||||
apt-get remove -y nginx-mainline
|
apt-get remove -y nginx-mainline
|
||||||
fi
|
fi
|
||||||
service nginx stop &>> /dev/null
|
service nginx stop &>> /dev/null
|
||||||
@@ -503,11 +478,11 @@ wo_update_latest()
|
|||||||
apt-get -o Dpkg::Options::="--force-confmiss" -o Dpkg::Options::="--force-confold" -y install nginx-custom
|
apt-get -o Dpkg::Options::="--force-confmiss" -o Dpkg::Options::="--force-confold" -y install nginx-custom
|
||||||
systemctl restart nginx &>> /dev/null
|
systemctl restart nginx &>> /dev/null
|
||||||
fi
|
fi
|
||||||
dpkg --get-selections | grep -v deinstall | grep nginx-common
|
CHECK_NGINX_COMMON=$(dpkg --get-selections | grep -v deinstall | grep nginx-common)
|
||||||
if [ $? -eq 0 ]; then
|
if [ -n "$CHECK_NGINX_COMMON" ]; then
|
||||||
apt-get update
|
apt-get update
|
||||||
dpkg --get-selections | grep -v deinstall | grep nginx-mainline
|
CHECK_NGINX_MAILINE=$(dpkg --get-selections | grep -v deinstall | grep nginx-mainline)
|
||||||
if [ $? -eq 0 ]; then
|
if [ -n "$CHECK_NGINX_MAILINE" ]; then
|
||||||
apt-get remove -y nginx-mainline
|
apt-get remove -y nginx-mainline
|
||||||
fi
|
fi
|
||||||
systemctl stop nginx &>> /dev/null
|
systemctl stop nginx &>> /dev/null
|
||||||
@@ -525,8 +500,8 @@ wo_update_latest()
|
|||||||
fi
|
fi
|
||||||
|
|
||||||
# Fix HHVM autostart on reboot
|
# Fix HHVM autostart on reboot
|
||||||
dpkg --get-selections | grep -v deinstall | grep hhvm &>> /dev/null
|
CHECK_HHVM_INSTALL=$(dpkg --get-selections | grep -v deinstall | grep hhvm &>> /dev/null)
|
||||||
if [ $? -eq 0 ]; then
|
if [ -n "$CHECK_HHVM_INSTALL" ]; then
|
||||||
update-rc.d hhvm defaults &>> /dev/null
|
update-rc.d hhvm defaults &>> /dev/null
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@@ -597,7 +572,7 @@ wo_update_latest()
|
|||||||
|
|
||||||
|
|
||||||
# Fix for 3.3.2 renamed nginx.conf
|
# Fix for 3.3.2 renamed nginx.conf
|
||||||
nginx -V 2>&1 &>>/dev/null
|
nginx -V &>>/dev/null 2>&1
|
||||||
if [[ $? -eq 0 ]]; then
|
if [[ $? -eq 0 ]]; then
|
||||||
nginx -t 2>&1 | grep 'open() "/etc/nginx/nginx.conf" failed' &>>/dev/null
|
nginx -t 2>&1 | grep 'open() "/etc/nginx/nginx.conf" failed' &>>/dev/null
|
||||||
if [[ $? -eq 0 ]]; then
|
if [[ $? -eq 0 ]]; then
|
||||||
@@ -634,26 +609,6 @@ wo_update_latest()
|
|||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$wo_linux_distro" == "Ubuntu" ]; then
|
|
||||||
add-apt-repository -y 'ppa:ondrej/php'
|
|
||||||
wo_lib_echo "Updating the PHP repository for some neat PHP 7.2 support"
|
|
||||||
apt-get update &>> /dev/null
|
|
||||||
apt-get -y install php7.2-fpm php7.2-curl php7.2-gd php7.2-imap php-memcached php7.2-common php7.2-readline php-redis php7.2-mysql php7.2-cli php-imagick php7.2-mbstring php7.2-recode php7.2-bcmath php7.2-opcache php7.2-zip php7.2-xml php7.2-soap php-msgpack graphviz php-pear php-xdebug || wo_lib_error "Not all PHP packages could be installed. " 1
|
|
||||||
mkdir -p /var/log/php/7.2/
|
|
||||||
touch /var/log/php/7.2/slow.log /var/log/php/7.2/fpm.log
|
|
||||||
systemctl php7.2-fpm restart &>> /dev/null
|
|
||||||
|
|
||||||
elif [ "$wo_linux_distro" == "Debian" ]; then
|
|
||||||
apt-get install apt-transport-https lsb-release ca-certificates locales locales-all -y
|
|
||||||
export LC_ALL=en_US.UTF-8
|
|
||||||
export LANG=en_US.UTF-8
|
|
||||||
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
|
|
||||||
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list
|
|
||||||
apt-get update &>> /dev/null
|
|
||||||
apt-get -y install php7.2-fpm php7.2-curl php7.2-gd php7.2-imap php-memcached php7.2-common php7.2-readline php-redis php7.2-mysql php7.2-cli php-imagick php7.2-mbstring php7.2-recode php7.2-bcmath php7.2-opcache php7.2-zip php7.2-xml php7.2-soap php-msgpack graphviz php-pear php-xdebug || wo_lib_error "Not all PHP packages could be installed." 1
|
|
||||||
systemctl php7.2-fpm restart &>> /dev/null
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Fix for SSL cert --all
|
# Fix for SSL cert --all
|
||||||
crontab -l | grep -q '\-\-min_expiry_limit'
|
crontab -l | grep -q '\-\-min_expiry_limit'
|
||||||
if [[ $? -eq 0 ]]; then
|
if [[ $? -eq 0 ]]; then
|
||||||
@@ -694,24 +649,18 @@ wo_git_init()
|
|||||||
}> /dev/null
|
}> /dev/null
|
||||||
}
|
}
|
||||||
|
|
||||||
if [ ! -x /usr/local/bin/ee ]; then
|
###
|
||||||
if [ ! -x /usr/local/bin/wo ]; then
|
# 4 - WO MAIN SETUP
|
||||||
wo_lib_echo "Installing depedencies" | tee -ai $wo_install_log
|
###
|
||||||
wo_install_dep | tee -ai $wo_install_log
|
|
||||||
wo_lib_echo "Installing WordOps $wo_branch" | tee -ai $wo_install_log
|
# 1 - WO already installed
|
||||||
wo_install | tee -ai $wo_install_log
|
if [ -x /usr/local/bin/wo ]; then
|
||||||
wo_lib_echo "Running post-install steps" | tee -ai $wo_install_log
|
|
||||||
secure_wo_db | tee -ai $EE_INSTALL_LOG
|
|
||||||
wo_git_init | tee -ai $wo_install_log
|
|
||||||
wo_update_wp_cli | tee -ai $wo_install_log
|
|
||||||
fi
|
|
||||||
else
|
|
||||||
wo -v 2>&1 | grep $wo_version_new &>> /dev/null
|
wo -v 2>&1 | grep $wo_version_new &>> /dev/null
|
||||||
if [[ $? -ne 0 ]];then
|
if [[ $? -ne 0 ]];then
|
||||||
read -p "Update WordOps to $wo_version_new (y/n): " wo_ans
|
read -p "Update WordOps to $wo_version_new (y/n): " wo_ans
|
||||||
if [ "$wo_ans" = "y" ] || [ "$wo_ans" = "Y" ]; then
|
if [ "$wo_ans" = "y" ] || [ "$wo_ans" = "Y" ]; then
|
||||||
wo_install_dep | tee -ai $wo_install_log
|
wo_install_dep | tee -ai $wo_install_log
|
||||||
wo_sync_db 2&>>1 $EE_INSTALL_LOG
|
wo_sync_db >> $EE_INSTALL_LOG 2>&1
|
||||||
secure_wo_db | tee -ai $EE_INSTALL_LOG
|
secure_wo_db | tee -ai $EE_INSTALL_LOG
|
||||||
wo_upgrade_php | tee -ai $wo_install_log
|
wo_upgrade_php | tee -ai $wo_install_log
|
||||||
wo_install | tee -ai $wo_install_log
|
wo_install | tee -ai $wo_install_log
|
||||||
@@ -726,6 +675,38 @@ else
|
|||||||
else
|
else
|
||||||
wo_lib_error "You already have WordOps $wo_version_new, exit status = " 1
|
wo_lib_error "You already have WordOps $wo_version_new, exit status = " 1
|
||||||
fi
|
fi
|
||||||
|
else
|
||||||
|
# 2 - Migration from EEv3
|
||||||
|
if [ -x /usr/local/bin/ee ]; then
|
||||||
|
ee -v 2>&1 | grep $wo_version_new &>> /dev/null
|
||||||
|
if [[ $? -ne 0 ]];then
|
||||||
|
read -p "Update WordOps to $wo_version_new (y/n): " wo_ans
|
||||||
|
if [ "$wo_ans" = "y" ] || [ "$wo_ans" = "Y" ]; then
|
||||||
|
wo_install_dep | tee -ai $wo_install_log
|
||||||
|
wo_sync_db >> $EE_INSTALL_LOG 2>&1
|
||||||
|
secure_wo_db | tee -ai $EE_INSTALL_LOG
|
||||||
|
wo_upgrade_php | tee -ai $wo_install_log
|
||||||
|
wo_install | tee -ai $wo_install_log
|
||||||
|
wo_update_latest | tee -ai $wo_install_log
|
||||||
|
wo_git_init | tee -ai $wo_install_log
|
||||||
|
service nginx reload &>> /dev/null
|
||||||
|
service php7.2-fpm restart &>> /dev/null
|
||||||
|
wo_update_wp_cli | tee -ai $wo_install_log
|
||||||
|
else
|
||||||
|
wo_lib_error "Not updating WordOps to $wo_version_new, exit status = " 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
wo_lib_error "You already have WordOps $wo_version_new, exit status = " 1
|
||||||
|
fi
|
||||||
|
else
|
||||||
|
# 3 - Fresh WO setup
|
||||||
|
wo_install_dep | tee -ai $wo_install_log
|
||||||
|
wo_install | tee -ai $wo_install_log
|
||||||
|
wo_lib_echo "Running post-install steps" | tee -ai $wo_install_log
|
||||||
|
secure_wo_db | tee -ai $EE_INSTALL_LOG
|
||||||
|
wo_git_init | tee -ai $wo_install_log
|
||||||
|
wo_update_wp_cli | tee -ai $wo_install_log
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
wo sync | tee -ai $WO_INSTALL_LOG
|
wo sync | tee -ai $WO_INSTALL_LOG
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ VERSION = WOVariables.wo_version
|
|||||||
|
|
||||||
BANNER = """
|
BANNER = """
|
||||||
WordOps v%s
|
WordOps v%s
|
||||||
Copyright (c) 2018 WordOps.
|
Copyright (c) 2019 WordOps.
|
||||||
""" % VERSION
|
""" % VERSION
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -19,14 +19,14 @@ class WOCleanController(CementBaseController):
|
|||||||
label = 'clean'
|
label = 'clean'
|
||||||
stacked_on = 'base'
|
stacked_on = 'base'
|
||||||
stacked_type = 'nested'
|
stacked_type = 'nested'
|
||||||
description = ('Clean NGINX FastCGI cache, Opcache, Memcache, Redis Cache')
|
description = ('Clean NGINX FastCGI cache, Opcache, Memcached, Redis Cache')
|
||||||
arguments = [
|
arguments = [
|
||||||
(['--all'],
|
(['--all'],
|
||||||
dict(help='Clean all cache', action='store_true')),
|
dict(help='Clean all cache', action='store_true')),
|
||||||
(['--fastcgi'],
|
(['--fastcgi'],
|
||||||
dict(help='Clean FastCGI cache', action='store_true')),
|
dict(help='Clean FastCGI cache', action='store_true')),
|
||||||
(['--memcache'],
|
(['--memcached'],
|
||||||
dict(help='Clean MemCache', action='store_true')),
|
dict(help='Clean MemCached', action='store_true')),
|
||||||
(['--opcache'],
|
(['--opcache'],
|
||||||
dict(help='Clean OpCache', action='store_true')),
|
dict(help='Clean OpCache', action='store_true')),
|
||||||
(['--redis'],
|
(['--redis'],
|
||||||
@@ -37,22 +37,23 @@ class WOCleanController(CementBaseController):
|
|||||||
@expose(hide=True)
|
@expose(hide=True)
|
||||||
def default(self):
|
def default(self):
|
||||||
if (not (self.app.pargs.all or self.app.pargs.fastcgi or
|
if (not (self.app.pargs.all or self.app.pargs.fastcgi or
|
||||||
self.app.pargs.memcache or self.app.pargs.opcache or
|
self.app.pargs.memcached or self.app.pargs.opcache or
|
||||||
self.app.pargs.redis)):
|
self.app.pargs.redis)):
|
||||||
self.clean_fastcgi()
|
self.clean_fastcgi()
|
||||||
if self.app.pargs.all:
|
if self.app.pargs.all:
|
||||||
self.clean_memcache()
|
self.clean_memcached()
|
||||||
self.clean_fastcgi()
|
self.clean_fastcgi()
|
||||||
self.clean_opcache()
|
self.clean_opcache()
|
||||||
self.clean_redis()
|
self.clean_redis()
|
||||||
if self.app.pargs.fastcgi:
|
if self.app.pargs.fastcgi:
|
||||||
self.clean_fastcgi()
|
self.clean_fastcgi()
|
||||||
if self.app.pargs.memcache:
|
if self.app.pargs.memcached:
|
||||||
self.clean_memcache()
|
self.clean_memcached()
|
||||||
if self.app.pargs.opcache:
|
if self.app.pargs.opcache:
|
||||||
self.clean_opcache()
|
self.clean_opcache()
|
||||||
if self.app.pargs.redis:
|
if self.app.pargs.redis:
|
||||||
self.clean_redis()
|
self.clean_redis()
|
||||||
|
|
||||||
@expose(hide=True)
|
@expose(hide=True)
|
||||||
def clean_redis(self):
|
def clean_redis(self):
|
||||||
"""This function clears Redis cache"""
|
"""This function clears Redis cache"""
|
||||||
@@ -67,9 +68,9 @@ class WOCleanController(CementBaseController):
|
|||||||
try:
|
try:
|
||||||
if(WOAptGet.is_installed(self, "memcached")):
|
if(WOAptGet.is_installed(self, "memcached")):
|
||||||
WOService.restart_service(self, "memcached")
|
WOService.restart_service(self, "memcached")
|
||||||
Log.info(self, "Cleaning MemCache")
|
Log.info(self, "Cleaning MemCached")
|
||||||
else:
|
else:
|
||||||
Log.info(self, "Memcache not installed")
|
Log.info(self, "Memcached not installed")
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
Log.debug(self, "{0}".format(e))
|
Log.debug(self, "{0}".format(e))
|
||||||
Log.error(self, "Unable to restart Memcached", False)
|
Log.error(self, "Unable to restart Memcached", False)
|
||||||
@@ -97,6 +98,7 @@ class WOCleanController(CementBaseController):
|
|||||||
" or install them with `wo stack install --admin`")
|
" or install them with `wo stack install --admin`")
|
||||||
Log.error(self, "Unable to clean opcache", False)
|
Log.error(self, "Unable to clean opcache", False)
|
||||||
|
|
||||||
|
|
||||||
def load(app):
|
def load(app):
|
||||||
# register the plugin class.. this only happens if the plugin is enabled
|
# register the plugin class.. this only happens if the plugin is enabled
|
||||||
handler.register(WOCleanController)
|
handler.register(WOCleanController)
|
||||||
|
|||||||
@@ -42,19 +42,19 @@ class WODebugController(CementBaseController):
|
|||||||
action='store' or 'store_const',
|
action='store' or 'store_const',
|
||||||
choices=('on', 'off'), const='on', nargs='?')),
|
choices=('on', 'off'), const='on', nargs='?')),
|
||||||
(['--php'],
|
(['--php'],
|
||||||
dict(help='start/stop debugging server PHP configuration',
|
dict(help='start/stop debugging server PHP 7.2 configuration',
|
||||||
action='store' or 'store_const',
|
action='store' or 'store_const',
|
||||||
choices=('on', 'off'), const='on', nargs='?')),
|
choices=('on', 'off'), const='on', nargs='?')),
|
||||||
(['--fpm'],
|
(['--fpm'],
|
||||||
dict(help='start/stop debugging fastcgi configuration',
|
dict(help='start/stop debugging fastcgi configuration',
|
||||||
action='store' or 'store_const',
|
action='store' or 'store_const',
|
||||||
choices=('on', 'off'), const='on', nargs='?')),
|
choices=('on', 'off'), const='on', nargs='?')),
|
||||||
(['--php72'],
|
(['--php73'],
|
||||||
dict(help='start/stop debugging server PHP 7.2 configuration',
|
dict(help='start/stop debugging server PHP 7.3 configuration',
|
||||||
action='store' or 'store_const',
|
action='store' or 'store_const',
|
||||||
choices=('on', 'off'), const='on', nargs='?')),
|
choices=('on', 'off'), const='on', nargs='?')),
|
||||||
(['--fpm7'],
|
(['--fpm73'],
|
||||||
dict(help='start/stop debugging fastcgi 7.2 configuration',
|
dict(help='start/stop debugging fastcgi 7.3 configuration',
|
||||||
action='store' or 'store_const',
|
action='store' or 'store_const',
|
||||||
choices=('on', 'off'), const='on', nargs='?')),
|
choices=('on', 'off'), const='on', nargs='?')),
|
||||||
(['--mysql'],
|
(['--mysql'],
|
||||||
@@ -193,20 +193,22 @@ class WODebugController(CementBaseController):
|
|||||||
nc.savef('/etc/nginx/conf.d/upstream.conf')
|
nc.savef('/etc/nginx/conf.d/upstream.conf')
|
||||||
|
|
||||||
# Enable xdebug
|
# Enable xdebug
|
||||||
WOFileUtils.searchreplace(self, "/etc/{0}/mods-available/".format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5") +
|
WOFileUtils.searchreplace(self, "/etc/{0}/mods-available/".format("php/7.2" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5") +
|
||||||
"xdebug.ini",
|
"xdebug.ini",
|
||||||
";zend_extension",
|
";zend_extension",
|
||||||
"zend_extension")
|
"zend_extension")
|
||||||
|
|
||||||
# Fix slow log is not enabled default in PHP5.6
|
# Fix slow log is not enabled default in PHP5.6
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config.read('/etc/{0}/fpm/pool.d/debug.conf'.format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
config.read('/etc/{0}/fpm/pool.d/debug.conf'.format("php/7.2" if (WOVariables.wo_platform_codename ==
|
||||||
config['debug']['slowlog'] = '/var/log/{0}/slow.log'.format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5")
|
'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
||||||
|
config['debug']['slowlog'] = '/var/log/{0}/slow.log'.format("php/7.2" if (
|
||||||
|
WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5")
|
||||||
config['debug']['request_slowlog_timeout'] = '10s'
|
config['debug']['request_slowlog_timeout'] = '10s'
|
||||||
with open('/etc/{0}/fpm/pool.d/debug.conf'.format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"),
|
with open('/etc/{0}/fpm/pool.d/debug.conf'.format("php/7.2" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"),
|
||||||
encoding='utf-8', mode='w') as confifile:
|
encoding='utf-8', mode='w') as confifile:
|
||||||
Log.debug(self, "Writting debug.conf configuration into "
|
Log.debug(self, "Writting debug.conf configuration into "
|
||||||
"/etc/{0}/fpm/pool.d/debug.conf".format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
"/etc/{0}/fpm/pool.d/debug.conf".format("php/7.2" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
||||||
config.write(confifile)
|
config.write(confifile)
|
||||||
|
|
||||||
self.trigger_php = True
|
self.trigger_php = True
|
||||||
@@ -214,7 +216,8 @@ class WODebugController(CementBaseController):
|
|||||||
else:
|
else:
|
||||||
Log.info(self, "PHP debug is already enabled")
|
Log.info(self, "PHP debug is already enabled")
|
||||||
|
|
||||||
self.msg = self.msg + ['/var/log/{0}/slow.log'.format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5")]
|
self.msg = self.msg + ['/var/log/{0}/slow.log'.format("php/7.2" if (
|
||||||
|
WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5")]
|
||||||
|
|
||||||
# PHP global debug stop
|
# PHP global debug stop
|
||||||
elif (self.app.pargs.php == 'off' and not self.app.pargs.site_name):
|
elif (self.app.pargs.php == 'off' and not self.app.pargs.site_name):
|
||||||
@@ -232,7 +235,7 @@ class WODebugController(CementBaseController):
|
|||||||
nc.savef('/etc/nginx/conf.d/upstream.conf')
|
nc.savef('/etc/nginx/conf.d/upstream.conf')
|
||||||
|
|
||||||
# Disable xdebug
|
# Disable xdebug
|
||||||
WOFileUtils.searchreplace(self, "/etc/{0}/mods-available/".format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5") +
|
WOFileUtils.searchreplace(self, "/etc/{0}/mods-available/".format("php/7.2" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5") +
|
||||||
"xdebug.ini",
|
"xdebug.ini",
|
||||||
"zend_extension",
|
"zend_extension",
|
||||||
";zend_extension")
|
";zend_extension")
|
||||||
@@ -248,38 +251,43 @@ class WODebugController(CementBaseController):
|
|||||||
# PHP5-FPM start global debug
|
# PHP5-FPM start global debug
|
||||||
if (self.app.pargs.fpm == 'on' and not self.app.pargs.site_name):
|
if (self.app.pargs.fpm == 'on' and not self.app.pargs.site_name):
|
||||||
if not WOShellExec.cmd_exec(self, "grep \"log_level = debug\" "
|
if not WOShellExec.cmd_exec(self, "grep \"log_level = debug\" "
|
||||||
"/etc/{0}/fpm/php-fpm.conf".format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5")):
|
"/etc/{0}/fpm/php-fpm.conf".format("php/7.2" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5")):
|
||||||
Log.info(self, "Setting up PHP5-FPM log_level = debug")
|
Log.info(self, "Setting up PHP5-FPM log_level = debug")
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config.read('/etc/{0}/fpm/php-fpm.conf'.format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
config.read('/etc/{0}/fpm/php-fpm.conf'.format("php/7.2" if (WOVariables.wo_platform_codename ==
|
||||||
|
'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
||||||
config.remove_option('global', 'include')
|
config.remove_option('global', 'include')
|
||||||
config['global']['log_level'] = 'debug'
|
config['global']['log_level'] = 'debug'
|
||||||
config['global']['include'] = '/etc/{0}/fpm/pool.d/*.conf'.format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5")
|
config['global']['include'] = '/etc/{0}/fpm/pool.d/*.conf'.format("php/7.2" if (
|
||||||
with open('/etc/{0}/fpm/php-fpm.conf'.format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"),
|
WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5")
|
||||||
|
with open('/etc/{0}/fpm/php-fpm.conf'.format("php/7.2" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"),
|
||||||
encoding='utf-8', mode='w') as configfile:
|
encoding='utf-8', mode='w') as configfile:
|
||||||
Log.debug(self, "Writting php5-FPM configuration into "
|
Log.debug(self, "Writting php5-FPM configuration into "
|
||||||
"/etc/{0}/fpm/php-fpm.conf".format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
"/etc/{0}/fpm/php-fpm.conf".format("php/7.2" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
||||||
config.write(configfile)
|
config.write(configfile)
|
||||||
self.trigger_php = True
|
self.trigger_php = True
|
||||||
else:
|
else:
|
||||||
Log.info(self, "PHP5-FPM log_level = debug already setup")
|
Log.info(self, "PHP5-FPM log_level = debug already setup")
|
||||||
|
|
||||||
self.msg = self.msg + ['/var/log/{0}/fpm.log'.format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5")]
|
self.msg = self.msg + ['/var/log/{0}/fpm.log'.format("php/7.2" if (
|
||||||
|
WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5")]
|
||||||
|
|
||||||
# PHP5-FPM stop global debug
|
# PHP5-FPM stop global debug
|
||||||
elif (self.app.pargs.fpm == 'off' and not self.app.pargs.site_name):
|
elif (self.app.pargs.fpm == 'off' and not self.app.pargs.site_name):
|
||||||
if WOShellExec.cmd_exec(self, "grep \"log_level = debug\" "
|
if WOShellExec.cmd_exec(self, "grep \"log_level = debug\" "
|
||||||
"/etc/{0}/fpm/php-fpm.conf".format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5")):
|
"/etc/{0}/fpm/php-fpm.conf".format("php/7.2" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5")):
|
||||||
Log.info(self, "Disabling PHP5-FPM log_level = debug")
|
Log.info(self, "Disabling PHP5-FPM log_level = debug")
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config.read('/etc/{0}/fpm/php-fpm.conf'.format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
config.read('/etc/{0}/fpm/php-fpm.conf'.format("php/7.2" if (WOVariables.wo_platform_codename ==
|
||||||
|
'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
||||||
config.remove_option('global', 'include')
|
config.remove_option('global', 'include')
|
||||||
config['global']['log_level'] = 'notice'
|
config['global']['log_level'] = 'notice'
|
||||||
config['global']['include'] = '/etc/{0}/fpm/pool.d/*.conf'.format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5")
|
config['global']['include'] = '/etc/{0}/fpm/pool.d/*.conf'.format("php/7.2" if (
|
||||||
with open('/etc/{0}/fpm/php-fpm.conf'.format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"),
|
WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5")
|
||||||
|
with open('/etc/{0}/fpm/php-fpm.conf'.format("php/7.2" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"),
|
||||||
encoding='utf-8', mode='w') as configfile:
|
encoding='utf-8', mode='w') as configfile:
|
||||||
Log.debug(self, "writting php5 configuration into "
|
Log.debug(self, "writting php5 configuration into "
|
||||||
"/etc/{0}/fpm/php-fpm.conf".format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
"/etc/{0}/fpm/php-fpm.conf".format("php/7.2" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
||||||
config.write(configfile)
|
config.write(configfile)
|
||||||
|
|
||||||
self.trigger_php = True
|
self.trigger_php = True
|
||||||
@@ -287,43 +295,43 @@ class WODebugController(CementBaseController):
|
|||||||
Log.info(self, "PHP5-FPM log_level = debug already disabled")
|
Log.info(self, "PHP5-FPM log_level = debug already disabled")
|
||||||
|
|
||||||
@expose(hide=True)
|
@expose(hide=True)
|
||||||
def debug_php72(self):
|
def debug_php73(self):
|
||||||
"""Start/Stop PHP debug"""
|
"""Start/Stop PHP debug"""
|
||||||
# PHP global debug start
|
# PHP global debug start
|
||||||
|
|
||||||
if (self.app.pargs.php72 == 'on' and not self.app.pargs.site_name):
|
if (self.app.pargs.php73 == 'on' and not self.app.pargs.site_name):
|
||||||
if (WOVariables.wo_platform_codename == 'wheezy' or WOVariables.wo_platform_codename == 'precise'):
|
if (WOVariables.wo_platform_codename == 'wheezy' or WOVariables.wo_platform_codename == 'precise'):
|
||||||
Log.error(self,"PHP 7.2 not supported.")
|
Log.error(self, "PHP 7.3 not supported.")
|
||||||
if not (WOShellExec.cmd_exec(self, "sed -n \"/upstream php7"
|
if not (WOShellExec.cmd_exec(self, "sed -n \"/upstream php73"
|
||||||
"{/,/}/p \" /etc/nginx/"
|
"{/,/}/p \" /etc/nginx/"
|
||||||
"conf.d/upstream.conf "
|
"conf.d/upstream.conf "
|
||||||
"| grep 9172")):
|
"| grep 9173")):
|
||||||
|
|
||||||
Log.info(self, "Enabling PHP 7.2 debug")
|
Log.info(self, "Enabling PHP 7.3 debug")
|
||||||
|
|
||||||
# Change upstream.conf
|
# Change upstream.conf
|
||||||
nc = NginxConfig()
|
nc = NginxConfig()
|
||||||
nc.loadf('/etc/nginx/conf.d/upstream.conf')
|
nc.loadf('/etc/nginx/conf.d/upstream.conf')
|
||||||
nc.set([('upstream','php72',), 'server'], '127.0.0.1:9172')
|
nc.set([('upstream', 'php73',), 'server'], '127.0.0.1:9173')
|
||||||
if os.path.isfile("/etc/nginx/common/wpfc-hhvm.conf"):
|
if os.path.isfile("/etc/nginx/common/wpfc-hhvm.conf"):
|
||||||
nc.set([('upstream','hhvm',), 'server'], '127.0.0.1:9172')
|
nc.set([('upstream', 'hhvm',), 'server'], '127.0.0.1:9173')
|
||||||
nc.savef('/etc/nginx/conf.d/upstream.conf')
|
nc.savef('/etc/nginx/conf.d/upstream.conf')
|
||||||
|
|
||||||
# Enable xdebug
|
# Enable xdebug
|
||||||
WOFileUtils.searchreplace(self, "/etc/php/7.2/mods-available/"
|
WOFileUtils.searchreplace(self, "/etc/php/7.3/mods-available/"
|
||||||
"xdebug.ini",
|
"xdebug.ini",
|
||||||
";zend_extension",
|
";zend_extension",
|
||||||
"zend_extension")
|
"zend_extension")
|
||||||
|
|
||||||
# Fix slow log is not enabled default in PHP5.6
|
# Fix slow log is not enabled default in PHP5.6
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config.read('/etc/php/7.2/fpm/pool.d/debug.conf')
|
config.read('/etc/php/7.3/fpm/pool.d/debug.conf')
|
||||||
config['debug']['slowlog'] = '/var/log/php/7.2/slow.log'
|
config['debug']['slowlog'] = '/var/log/php/7.3/slow.log'
|
||||||
config['debug']['request_slowlog_timeout'] = '10s'
|
config['debug']['request_slowlog_timeout'] = '10s'
|
||||||
with open('/etc/php/7.2/fpm/pool.d/debug.conf',
|
with open('/etc/php/7.3/fpm/pool.d/debug.conf',
|
||||||
encoding='utf-8', mode='w') as confifile:
|
encoding='utf-8', mode='w') as confifile:
|
||||||
Log.debug(self, "Writting debug.conf configuration into "
|
Log.debug(self, "Writting debug.conf configuration into "
|
||||||
"/etc/php/7.2/fpm/pool.d/debug.conf")
|
"/etc/php/7.3/fpm/pool.d/debug.conf")
|
||||||
config.write(confifile)
|
config.write(confifile)
|
||||||
|
|
||||||
self.trigger_php = True
|
self.trigger_php = True
|
||||||
@@ -331,10 +339,10 @@ class WODebugController(CementBaseController):
|
|||||||
else:
|
else:
|
||||||
Log.info(self, "PHP debug is already enabled")
|
Log.info(self, "PHP debug is already enabled")
|
||||||
|
|
||||||
self.msg = self.msg + ['/var/log/php/7.2/slow.log']
|
self.msg = self.msg + ['/var/log/php/7.3/slow.log']
|
||||||
|
|
||||||
# PHP global debug stop
|
# PHP global debug stop
|
||||||
elif (self.app.pargs.php7 == 'off' and not self.app.pargs.site_name):
|
elif (self.app.pargs.php73 == 'off' and not self.app.pargs.site_name):
|
||||||
if WOShellExec.cmd_exec(self, " sed -n \"/upstream php72 {/,/}/p\" "
|
if WOShellExec.cmd_exec(self, " sed -n \"/upstream php72 {/,/}/p\" "
|
||||||
"/etc/nginx/conf.d/upstream.conf "
|
"/etc/nginx/conf.d/upstream.conf "
|
||||||
"| grep 9172"):
|
"| grep 9172"):
|
||||||
@@ -343,7 +351,7 @@ class WODebugController(CementBaseController):
|
|||||||
# Change upstream.conf
|
# Change upstream.conf
|
||||||
nc = NginxConfig()
|
nc = NginxConfig()
|
||||||
nc.loadf('/etc/nginx/conf.d/upstream.conf')
|
nc.loadf('/etc/nginx/conf.d/upstream.conf')
|
||||||
nc.set([('upstream','php72',), 'server'], '127.0.0.1:9072')
|
nc.set([('upstream', 'php72',), 'server'], 'unix:/var/run/php/php72-fpm.sock')
|
||||||
if os.path.isfile("/etc/nginx/common/wpfc-hhvm.conf"):
|
if os.path.isfile("/etc/nginx/common/wpfc-hhvm.conf"):
|
||||||
nc.set([('upstream', 'hhvm',), 'server'], '127.0.0.1:8000')
|
nc.set([('upstream', 'hhvm',), 'server'], '127.0.0.1:8000')
|
||||||
nc.savef('/etc/nginx/conf.d/upstream.conf')
|
nc.savef('/etc/nginx/conf.d/upstream.conf')
|
||||||
@@ -360,47 +368,47 @@ class WODebugController(CementBaseController):
|
|||||||
Log.info(self, "PHP 7.2 debug is already disabled")
|
Log.info(self, "PHP 7.2 debug is already disabled")
|
||||||
|
|
||||||
@expose(hide=True)
|
@expose(hide=True)
|
||||||
def debug_fpm7(self):
|
def debug_fpm73(self):
|
||||||
"""Start/Stop PHP5-FPM debug"""
|
"""Start/Stop PHP5-FPM debug"""
|
||||||
# PHP5-FPM start global debug
|
# PHP5-FPM start global debug
|
||||||
if (self.app.pargs.fpm7 == 'on' and not self.app.pargs.site_name):
|
if (self.app.pargs.fpm73 == 'on' and not self.app.pargs.site_name):
|
||||||
if not WOShellExec.cmd_exec(self, "grep \"log_level = debug\" "
|
if not WOShellExec.cmd_exec(self, "grep \"log_level = debug\" "
|
||||||
"/etc/php/7.2/fpm/php-fpm.conf"):
|
"/etc/php/7.3/fpm/php-fpm.conf"):
|
||||||
Log.info(self, "Setting up PHP7.2-FPM log_level = debug")
|
Log.info(self, "Setting up PHP7.3-FPM log_level = debug")
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config.read('/etc/php/7.2/fpm/php-fpm.conf')
|
config.read('/etc/php/7.3/fpm/php-fpm.conf')
|
||||||
config.remove_option('global', 'include')
|
config.remove_option('global', 'include')
|
||||||
config['global']['log_level'] = 'debug'
|
config['global']['log_level'] = 'debug'
|
||||||
config['global']['include'] = '/etc/php/7.2/fpm/pool.d/*.conf'
|
config['global']['include'] = '/etc/php/7.3/fpm/pool.d/*.conf'
|
||||||
with open('/etc/php/7.2/fpm/php-fpm.conf',
|
with open('/etc/php/7.3/fpm/php-fpm.conf',
|
||||||
encoding='utf-8', mode='w') as configfile:
|
encoding='utf-8', mode='w') as configfile:
|
||||||
Log.debug(self, "Writing the PHP configuration into "
|
Log.debug(self, "Writing the PHP configuration into "
|
||||||
"/etc/php/7.2/fpm/php-fpm.conf")
|
"/etc/php/7.3/fpm/php-fpm.conf")
|
||||||
config.write(configfile)
|
config.write(configfile)
|
||||||
self.trigger_php = True
|
self.trigger_php = True
|
||||||
else:
|
else:
|
||||||
Log.info(self, "PHP7.2-FPM log_level = debug already setup")
|
Log.info(self, "PHP7.3-FPM log_level = debug already setup")
|
||||||
|
|
||||||
self.msg = self.msg + ['/var/log/php/7.2/fpm.log']
|
self.msg = self.msg + ['/var/log/php/7.3/fpm.log']
|
||||||
|
|
||||||
# PHP5-FPM stop global debug
|
# PHP5-FPM stop global debug
|
||||||
elif (self.app.pargs.fpm7 == 'off' and not self.app.pargs.site_name):
|
elif (self.app.pargs.fpm73 == 'off' and not self.app.pargs.site_name):
|
||||||
if WOShellExec.cmd_exec(self, "grep \"log_level = debug\" "
|
if WOShellExec.cmd_exec(self, "grep \"log_level = debug\" "
|
||||||
"/etc/php/7.2/fpm/php-fpm.conf"):
|
"/etc/php/7.3/fpm/php-fpm.conf"):
|
||||||
Log.info(self, "Disabling PHP7.2-FPM log_level = debug")
|
Log.info(self, "Disabling PHP7.3-FPM log_level = debug")
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config.read('/etc/php/7.2/fpm/php-fpm.conf')
|
config.read('/etc/php/7.3/fpm/php-fpm.conf')
|
||||||
config.remove_option('global', 'include')
|
config.remove_option('global', 'include')
|
||||||
config['global']['log_level'] = 'notice'
|
config['global']['log_level'] = 'notice'
|
||||||
config['global']['include'] = '/etc/php/7.2/fpm/pool.d/*.conf'
|
config['global']['include'] = '/etc/php/7.3/fpm/pool.d/*.conf'
|
||||||
with open('/etc/php/7.2/fpm/php-fpm.conf',
|
with open('/etc/php/7.3/fpm/php-fpm.conf',
|
||||||
encoding='utf-8', mode='w') as configfile:
|
encoding='utf-8', mode='w') as configfile:
|
||||||
Log.debug(self, "Writing the php7.2 configuration into "
|
Log.debug(self, "Writing the php7.3 configuration into "
|
||||||
"/etc/php/7.2/fpm/php-fpm.conf")
|
"/etc/php/7.3/fpm/php-fpm.conf")
|
||||||
config.write(configfile)
|
config.write(configfile)
|
||||||
self.trigger_php = True
|
self.trigger_php = True
|
||||||
else:
|
else:
|
||||||
Log.info(self, "PHP7.2-FPM log_level = debug already disabled")
|
Log.info(self, "PHP7.3-FPM log_level = debug already disabled")
|
||||||
|
|
||||||
@expose(hide=True)
|
@expose(hide=True)
|
||||||
def debug_mysql(self):
|
def debug_mysql(self):
|
||||||
@@ -595,15 +603,15 @@ class WODebugController(CementBaseController):
|
|||||||
if self.app.pargs.php:
|
if self.app.pargs.php:
|
||||||
self.app.pargs.php = 'off'
|
self.app.pargs.php = 'off'
|
||||||
self.debug_php()
|
self.debug_php()
|
||||||
if self.app.pargs.php7:
|
if self.app.pargs.php73:
|
||||||
self.app.pargs.php7 = 'off'
|
self.app.pargs.php73 = 'off'
|
||||||
self.debug_php7()
|
self.debug_php73()
|
||||||
if self.app.pargs.fpm:
|
if self.app.pargs.fpm:
|
||||||
self.app.pargs.fpm = 'off'
|
self.app.pargs.fpm = 'off'
|
||||||
self.debug_fpm()
|
self.debug_fpm()
|
||||||
if self.app.pargs.fpm7:
|
if self.app.pargs.fpm73:
|
||||||
self.app.pargs.fpm7 = 'off'
|
self.app.pargs.fpm73 = 'off'
|
||||||
self.debug_fpm7()
|
self.debug_fpm73()
|
||||||
if self.app.pargs.mysql:
|
if self.app.pargs.mysql:
|
||||||
# MySQL debug will not work for remote MySQL
|
# MySQL debug will not work for remote MySQL
|
||||||
if WOVariables.wo_mysql_host is "localhost":
|
if WOVariables.wo_mysql_host is "localhost":
|
||||||
@@ -626,12 +634,12 @@ class WODebugController(CementBaseController):
|
|||||||
# Reload PHP
|
# Reload PHP
|
||||||
if self.trigger_php:
|
if self.trigger_php:
|
||||||
if WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic':
|
if WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic':
|
||||||
if WOAptGet.is_installed(self,'php5.6-fpm'):
|
|
||||||
WOService.reload_service(self, 'php5.6-fpm')
|
|
||||||
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
WOService.reload_service(self, 'php7.2-fpm')
|
WOService.reload_service(self, 'php7.2-fpm')
|
||||||
|
if WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
|
WOService.reload_service(self, 'php7.3-fpm')
|
||||||
else:
|
else:
|
||||||
WOService.reload_service(self, 'php5-fpm')
|
WOService.reload_service(self, 'php7.2-fpm')
|
||||||
self.app.close(0)
|
self.app.close(0)
|
||||||
|
|
||||||
@expose(hide=True)
|
@expose(hide=True)
|
||||||
@@ -643,8 +651,8 @@ class WODebugController(CementBaseController):
|
|||||||
self.trigger_nginx = False
|
self.trigger_nginx = False
|
||||||
self.trigger_php = False
|
self.trigger_php = False
|
||||||
|
|
||||||
if ((not self.app.pargs.nginx) and (not self.app.pargs.php) and (not self.app.pargs.php7)
|
if ((not self.app.pargs.nginx) and (not self.app.pargs.php) and (not self.app.pargs.php73)
|
||||||
and (not self.app.pargs.fpm) and (not self.app.pargs.fpm7) and (not self.app.pargs.mysql)
|
and (not self.app.pargs.fpm) and (not self.app.pargs.fpm73) and (not self.app.pargs.mysql)
|
||||||
and (not self.app.pargs.wp) and (not self.app.pargs.rewrite)
|
and (not self.app.pargs.wp) and (not self.app.pargs.rewrite)
|
||||||
and (not self.app.pargs.all)
|
and (not self.app.pargs.all)
|
||||||
and (not self.app.pargs.site_name)
|
and (not self.app.pargs.site_name)
|
||||||
@@ -717,8 +725,8 @@ class WODebugController(CementBaseController):
|
|||||||
self.app.pargs.php = 'on'
|
self.app.pargs.php = 'on'
|
||||||
self.app.pargs.fpm = 'on'
|
self.app.pargs.fpm = 'on'
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') and WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') and WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
self.app.pargs.php7 = 'on'
|
self.app.pargs.php73 = 'on'
|
||||||
self.app.pargs.fpm7 = 'on'
|
self.app.pargs.fpm73 = 'on'
|
||||||
self.app.pargs.mysql = 'on'
|
self.app.pargs.mysql = 'on'
|
||||||
self.app.pargs.rewrite = 'on'
|
self.app.pargs.rewrite = 'on'
|
||||||
|
|
||||||
@@ -729,13 +737,13 @@ class WODebugController(CementBaseController):
|
|||||||
self.app.pargs.php = 'off'
|
self.app.pargs.php = 'off'
|
||||||
self.app.pargs.fpm = 'off'
|
self.app.pargs.fpm = 'off'
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') and WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') and WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
self.app.pargs.php7 = 'off'
|
self.app.pargs.php73 = 'off'
|
||||||
self.app.pargs.fpm7 = 'off'
|
self.app.pargs.fpm73 = 'off'
|
||||||
self.app.pargs.mysql = 'off'
|
self.app.pargs.mysql = 'off'
|
||||||
self.app.pargs.rewrite = 'off'
|
self.app.pargs.rewrite = 'off'
|
||||||
|
|
||||||
if ((not self.app.pargs.nginx) and (not self.app.pargs.php) and (not self.app.pargs.php7)
|
if ((not self.app.pargs.nginx) and (not self.app.pargs.php) and (not self.app.pargs.php73)
|
||||||
and (not self.app.pargs.fpm) and (not self.app.pargs.fpm7) and (not self.app.pargs.mysql)
|
and (not self.app.pargs.fpm) and (not self.app.pargs.fpm73) and (not self.app.pargs.mysql)
|
||||||
and (not self.app.pargs.wp) and (not self.app.pargs.rewrite)
|
and (not self.app.pargs.wp) and (not self.app.pargs.rewrite)
|
||||||
and self.app.pargs.site_name):
|
and self.app.pargs.site_name):
|
||||||
self.app.args.print_help()
|
self.app.args.print_help()
|
||||||
@@ -749,10 +757,10 @@ class WODebugController(CementBaseController):
|
|||||||
self.debug_php()
|
self.debug_php()
|
||||||
if self.app.pargs.fpm:
|
if self.app.pargs.fpm:
|
||||||
self.debug_fpm()
|
self.debug_fpm()
|
||||||
if self.app.pargs.php7:
|
if self.app.pargs.php73:
|
||||||
self.debug_php7()
|
self.debug_php73()
|
||||||
if self.app.pargs.fpm7:
|
if self.app.pargs.fpm73:
|
||||||
self.debug_fpm7()
|
self.debug_fpm73()
|
||||||
if self.app.pargs.mysql:
|
if self.app.pargs.mysql:
|
||||||
# MySQL debug will not work for remote MySQL
|
# MySQL debug will not work for remote MySQL
|
||||||
if WOVariables.wo_mysql_host is "localhost":
|
if WOVariables.wo_mysql_host is "localhost":
|
||||||
@@ -774,12 +782,12 @@ class WODebugController(CementBaseController):
|
|||||||
# Reload PHP
|
# Reload PHP
|
||||||
if self.trigger_php:
|
if self.trigger_php:
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
||||||
if WOAptGet.is_installed(self,'php5.6-fpm'):
|
|
||||||
WOService.restart_service(self, 'php5.6-fpm')
|
|
||||||
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
WOService.restart_service(self, 'php7.2-fpm')
|
WOService.restart_service(self, 'php7.2-fpm')
|
||||||
|
if WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
|
WOService.restart_service(self, 'php7.3-fpm')
|
||||||
else:
|
else:
|
||||||
WOService.restart_service(self, 'php5-fpm')
|
WOService.restart_service(self, 'php7.2-fpm')
|
||||||
if WOVariables.wo_platform_codename == 'jessie':
|
if WOVariables.wo_platform_codename == 'jessie':
|
||||||
WOService.restart_service(self, 'php7.2-fpm')
|
WOService.restart_service(self, 'php7.2-fpm')
|
||||||
|
|
||||||
|
|||||||
@@ -27,11 +27,11 @@ class WOInfoController(CementBaseController):
|
|||||||
dict(help='Get MySQL configuration information',
|
dict(help='Get MySQL configuration information',
|
||||||
action='store_true')),
|
action='store_true')),
|
||||||
(['--php'],
|
(['--php'],
|
||||||
dict(help='Get PHP configuration information',
|
|
||||||
action='store_true')),
|
|
||||||
(['--php72'],
|
|
||||||
dict(help='Get PHP 7.2 configuration information',
|
dict(help='Get PHP 7.2 configuration information',
|
||||||
action='store_true')),
|
action='store_true')),
|
||||||
|
(['--php73'],
|
||||||
|
dict(help='Get PHP 7.3 configuration information',
|
||||||
|
action='store_true')),
|
||||||
(['--nginx'],
|
(['--nginx'],
|
||||||
dict(help='Get Nginx configuration information',
|
dict(help='Get Nginx configuration information',
|
||||||
action='store_true')),
|
action='store_true')),
|
||||||
@@ -66,17 +66,17 @@ class WOInfoController(CementBaseController):
|
|||||||
@expose(hide=True)
|
@expose(hide=True)
|
||||||
def info_php(self):
|
def info_php(self):
|
||||||
"""Display PHP information"""
|
"""Display PHP information"""
|
||||||
version = os.popen("{0} -v 2>/dev/null | head -n1 | cut -d' ' -f2 |".format("php5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php") +
|
version = os.popen("php7.2 -v 2>/dev/null | head -n1 | cut -d' ' -f2 |"
|
||||||
" cut -d'+' -f1 | tr -d '\n'").read
|
" cut -d'+' -f1 | tr -d '\n'").read
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config.read('/etc/{0}/fpm/php.ini'.format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
config.read('/etc/{0}/fpm/php.ini'.format("php/7.2"))
|
||||||
expose_php = config['PHP']['expose_php']
|
expose_php = config['PHP']['expose_php']
|
||||||
memory_limit = config['PHP']['memory_limit']
|
memory_limit = config['PHP']['memory_limit']
|
||||||
post_max_size = config['PHP']['post_max_size']
|
post_max_size = config['PHP']['post_max_size']
|
||||||
upload_max_filesize = config['PHP']['upload_max_filesize']
|
upload_max_filesize = config['PHP']['upload_max_filesize']
|
||||||
max_execution_time = config['PHP']['max_execution_time']
|
max_execution_time = config['PHP']['max_execution_time']
|
||||||
|
|
||||||
config.read('/etc/{0}/fpm/pool.d/www.conf'.format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
config.read('/etc/{0}/fpm/pool.d/www.conf'.format("php/7.2"))
|
||||||
www_listen = config['www']['listen']
|
www_listen = config['www']['listen']
|
||||||
www_ping_path = config['www']['ping.path']
|
www_ping_path = config['www']['ping.path']
|
||||||
www_pm_status_path = config['www']['pm.status_path']
|
www_pm_status_path = config['www']['pm.status_path']
|
||||||
@@ -94,7 +94,7 @@ class WOInfoController(CementBaseController):
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
www_xdebug = 'off'
|
www_xdebug = 'off'
|
||||||
|
|
||||||
config.read('/etc/{0}/fpm/pool.d/debug.conf'.format("php/5.6" if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') else "php5"))
|
config.read('/etc/{0}/fpm/pool.d/debug.conf'.format("php/7.2"))
|
||||||
debug_listen = config['debug']['listen']
|
debug_listen = config['debug']['listen']
|
||||||
debug_ping_path = config['debug']['ping.path']
|
debug_ping_path = config['debug']['ping.path']
|
||||||
debug_pm_status_path = config['debug']['pm.status_path']
|
debug_pm_status_path = config['debug']['pm.status_path']
|
||||||
@@ -138,19 +138,19 @@ class WOInfoController(CementBaseController):
|
|||||||
self.app.render((data), 'info_php.mustache')
|
self.app.render((data), 'info_php.mustache')
|
||||||
|
|
||||||
@expose(hide=True)
|
@expose(hide=True)
|
||||||
def info_php72(self):
|
def info_php73(self):
|
||||||
"""Display PHP information"""
|
"""Display PHP information"""
|
||||||
version = os.popen("php7.2 -v 2>/dev/null | head -n1 | cut -d' ' -f2 |"
|
version = os.popen("php7.3 -v 2>/dev/null | head -n1 | cut -d' ' -f2 |"
|
||||||
" cut -d'+' -f1 | tr -d '\n'").read
|
" cut -d'+' -f1 | tr -d '\n'").read
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config.read('/etc/php/7.2/fpm/php.ini')
|
config.read('/etc/php/7.3/fpm/php.ini')
|
||||||
expose_php = config['PHP']['expose_php']
|
expose_php = config['PHP']['expose_php']
|
||||||
memory_limit = config['PHP']['memory_limit']
|
memory_limit = config['PHP']['memory_limit']
|
||||||
post_max_size = config['PHP']['post_max_size']
|
post_max_size = config['PHP']['post_max_size']
|
||||||
upload_max_filesize = config['PHP']['upload_max_filesize']
|
upload_max_filesize = config['PHP']['upload_max_filesize']
|
||||||
max_execution_time = config['PHP']['max_execution_time']
|
max_execution_time = config['PHP']['max_execution_time']
|
||||||
|
|
||||||
config.read('/etc/php/7.2/fpm/pool.d/www.conf')
|
config.read('/etc/php/7.3/fpm/pool.d/www.conf')
|
||||||
www_listen = config['www']['listen']
|
www_listen = config['www']['listen']
|
||||||
www_ping_path = config['www']['ping.path']
|
www_ping_path = config['www']['ping.path']
|
||||||
www_pm_status_path = config['www']['pm.status_path']
|
www_pm_status_path = config['www']['pm.status_path']
|
||||||
@@ -168,7 +168,7 @@ class WOInfoController(CementBaseController):
|
|||||||
except Exception as e:
|
except Exception as e:
|
||||||
www_xdebug = 'off'
|
www_xdebug = 'off'
|
||||||
|
|
||||||
config.read('/etc/php/7.2/fpm/pool.d/debug.conf')
|
config.read('/etc/php/7.3/fpm/pool.d/debug.conf')
|
||||||
debug_listen = config['debug']['listen']
|
debug_listen = config['debug']['listen']
|
||||||
debug_ping_path = config['debug']['ping.path']
|
debug_ping_path = config['debug']['ping.path']
|
||||||
debug_pm_status_path = config['debug']['pm.status_path']
|
debug_pm_status_path = config['debug']['pm.status_path']
|
||||||
@@ -243,12 +243,12 @@ class WOInfoController(CementBaseController):
|
|||||||
def default(self):
|
def default(self):
|
||||||
"""default function for info"""
|
"""default function for info"""
|
||||||
if (not self.app.pargs.nginx and not self.app.pargs.php
|
if (not self.app.pargs.nginx and not self.app.pargs.php
|
||||||
and not self.app.pargs.mysql and not self.app.pargs.php72):
|
and not self.app.pargs.mysql and not self.app.pargs.php73):
|
||||||
self.app.pargs.nginx = True
|
self.app.pargs.nginx = True
|
||||||
self.app.pargs.php = True
|
self.app.pargs.php = True
|
||||||
self.app.pargs.mysql = True
|
self.app.pargs.mysql = True
|
||||||
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
self.app.pargs.php = True
|
self.app.pargs.php73 = True
|
||||||
|
|
||||||
if self.app.pargs.nginx:
|
if self.app.pargs.nginx:
|
||||||
if WOAptGet.is_installed(self, 'nginx-custom') or WOAptGet.is_installed(self, 'nginx-common'):
|
if WOAptGet.is_installed(self, 'nginx-custom') or WOAptGet.is_installed(self, 'nginx-common'):
|
||||||
@@ -257,23 +257,17 @@ class WOInfoController(CementBaseController):
|
|||||||
Log.error(self, "Nginx is not installed")
|
Log.error(self, "Nginx is not installed")
|
||||||
|
|
||||||
if self.app.pargs.php:
|
if self.app.pargs.php:
|
||||||
if (WOVariables.wo_platform_distro == 'debian' or WOVariables.wo_platform_codename == 'precise'):
|
|
||||||
if WOAptGet.is_installed(self, 'php5-fpm'):
|
|
||||||
self.info_php()
|
|
||||||
else:
|
|
||||||
Log.error(self, "PHP5 is not installed")
|
|
||||||
else:
|
|
||||||
if WOAptGet.is_installed(self, 'php5.6-fpm'):
|
|
||||||
self.info_php()
|
|
||||||
else:
|
|
||||||
Log.error(self, "PHP5.6 is not installed")
|
|
||||||
|
|
||||||
if self.app.pargs.php72:
|
|
||||||
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
self.info_php72()
|
self.info_php()
|
||||||
else:
|
else:
|
||||||
Log.error(self, "PHP 7.2 is not installed")
|
Log.error(self, "PHP 7.2 is not installed")
|
||||||
|
|
||||||
|
if self.app.pargs.php73:
|
||||||
|
if WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
|
self.info_php73()
|
||||||
|
else:
|
||||||
|
Log.error(self, "PHP 7.3 is not installed")
|
||||||
|
|
||||||
if self.app.pargs.mysql:
|
if self.app.pargs.mysql:
|
||||||
if WOShellExec.cmd_exec(self, "mysqladmin ping"):
|
if WOShellExec.cmd_exec(self, "mysqladmin ping"):
|
||||||
self.info_mysql()
|
self.info_mysql()
|
||||||
|
|||||||
@@ -444,9 +444,9 @@ class WOLogMailController(CementBaseController):
|
|||||||
(['--nginx'],
|
(['--nginx'],
|
||||||
dict(help='Mail Nginx Error logs file', action='store_true')),
|
dict(help='Mail Nginx Error logs file', action='store_true')),
|
||||||
(['--php'],
|
(['--php'],
|
||||||
dict(help='Mail PHP Error logs file', action='store_true')),
|
dict(help='Mail PHP 7.2 Error logs file', action='store_true')),
|
||||||
(['--fpm'],
|
(['--fpm'],
|
||||||
dict(help='Mail PHP5-fpm slow logs file',
|
dict(help='Mail PHP 7.2-fpm slow logs file',
|
||||||
action='store_true')),
|
action='store_true')),
|
||||||
(['--mysql'],
|
(['--mysql'],
|
||||||
dict(help='Mail MySQL logs file', action='store_true')),
|
dict(help='Mail MySQL logs file', action='store_true')),
|
||||||
|
|||||||
@@ -308,9 +308,9 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
(['--html'],
|
(['--html'],
|
||||||
dict(help="create html site", action='store_true')),
|
dict(help="create html site", action='store_true')),
|
||||||
(['--php'],
|
(['--php'],
|
||||||
dict(help="create php site", action='store_true')),
|
|
||||||
(['--php72'],
|
|
||||||
dict(help="create php 7.2 site", action='store_true')),
|
dict(help="create php 7.2 site", action='store_true')),
|
||||||
|
(['--php73'],
|
||||||
|
dict(help="create php 7.3 site", action='store_true')),
|
||||||
(['--mysql'],
|
(['--mysql'],
|
||||||
dict(help="create mysql site", action='store_true')),
|
dict(help="create mysql site", action='store_true')),
|
||||||
(['--wp'],
|
(['--wp'],
|
||||||
@@ -410,16 +410,16 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
data['port'] = port
|
data['port'] = port
|
||||||
wo_site_webroot = ""
|
wo_site_webroot = ""
|
||||||
|
|
||||||
if self.app.pargs.php72:
|
if self.app.pargs.php73:
|
||||||
data = dict(site_name=wo_domain, www_domain=wo_www_domain,
|
data = dict(site_name=wo_domain, www_domain=wo_www_domain,
|
||||||
static=False, basic=False, php72=True, wp=False,
|
static=False, basic=False, php73=True, wp=False,
|
||||||
wpfc=False, wpsc=False, multisite=False,
|
wpfc=False, wpsc=False, multisite=False,
|
||||||
wpsubdir=False, webroot=wo_site_webroot)
|
wpsubdir=False, webroot=wo_site_webroot)
|
||||||
data['basic'] = True
|
data['basic'] = True
|
||||||
|
|
||||||
if stype in ['html', 'php']:
|
if stype in ['html', 'php']:
|
||||||
data = dict(site_name=wo_domain, www_domain=wo_www_domain,
|
data = dict(site_name=wo_domain, www_domain=wo_www_domain,
|
||||||
static=True, basic=False, php72=False, wp=False,
|
static=True, basic=False, php73=False, wp=False,
|
||||||
wpfc=False, wpsc=False, multisite=False,
|
wpfc=False, wpsc=False, multisite=False,
|
||||||
wpsubdir=False, webroot=wo_site_webroot)
|
wpsubdir=False, webroot=wo_site_webroot)
|
||||||
|
|
||||||
@@ -453,27 +453,28 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
if stype == "html" and self.app.pargs.hhvm:
|
if stype == "html" and self.app.pargs.hhvm:
|
||||||
Log.error(self, "Can not create HTML site with HHVM")
|
Log.error(self, "Can not create HTML site with HHVM")
|
||||||
|
|
||||||
if data and self.app.pargs.php72:
|
if data and self.app.pargs.php73:
|
||||||
if (not self.app.pargs.experimental):
|
if (self.app.pargs.experimental):
|
||||||
Log.info(self, "Do you wish to install PHP 7.2 now for {0}?".format(wo_domain))
|
Log.info(
|
||||||
|
self, "Do you wish to install PHP 7.3 now for {0}?".format(wo_domain))
|
||||||
|
|
||||||
# Check prompt
|
# Check prompt
|
||||||
check_prompt = input("Type \"y\" to continue [n]:")
|
check_prompt = input("Type \"y\" to continue [n]:")
|
||||||
if check_prompt != "Y" and check_prompt != "y":
|
if check_prompt != "Y" and check_prompt != "y":
|
||||||
Log.info(self, "Not using PHP 7.2 for site.")
|
Log.info(self, "Not using PHP 7.2 for site.")
|
||||||
data['php72'] = False
|
data['php73'] = True
|
||||||
data['basic'] = True
|
data['basic'] = True
|
||||||
php72 = 0
|
php73 = 1
|
||||||
self.app.pargs.php72 = False
|
self.app.pargs.php73 = True
|
||||||
else:
|
else:
|
||||||
data['php72'] = True
|
data['php73'] = True
|
||||||
php72 = 1
|
php73 = 1
|
||||||
else:
|
else:
|
||||||
data['php72'] = True
|
data['php73'] = True
|
||||||
php72 = 1
|
php73 = 1
|
||||||
elif data:
|
elif data:
|
||||||
data['php72'] = False
|
data['php73'] = False
|
||||||
php72 = 0
|
php73 = 0
|
||||||
|
|
||||||
if (not self.app.pargs.wpfc) and (not self.app.pargs.wpsc) and (not self.app.pargs.wpredis) and (not self.app.pargs.hhvm):
|
if (not self.app.pargs.wpfc) and (not self.app.pargs.wpsc) and (not self.app.pargs.wpredis) and (not self.app.pargs.hhvm):
|
||||||
data['basic'] = True
|
data['basic'] = True
|
||||||
@@ -503,7 +504,7 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
data['hhvm'] = False
|
data['hhvm'] = False
|
||||||
hhvm = 0
|
hhvm = 0
|
||||||
|
|
||||||
if (cache == 'wpredis' and (not self.app.pargs.experimental)):
|
if (cache == 'wpredis' and (self.app.pargs.experimental)):
|
||||||
Log.info(self, "Redis is experimental feature and it may not "
|
Log.info(self, "Redis is experimental feature and it may not "
|
||||||
"work with all CSS/JS/Cache of your site.\nYou can "
|
"work with all CSS/JS/Cache of your site.\nYou can "
|
||||||
"disable it by changing cache later.\nDo you wish"
|
"disable it by changing cache later.\nDo you wish"
|
||||||
@@ -536,7 +537,8 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
hashbucket(self)
|
hashbucket(self)
|
||||||
except SiteError as e:
|
except SiteError as e:
|
||||||
# call cleanup actions on failure
|
# call cleanup actions on failure
|
||||||
Log.info(self, Log.FAIL + "There was a serious error encountered...")
|
Log.info(self, Log.FAIL +
|
||||||
|
"There was a serious error encountered...")
|
||||||
Log.info(self, Log.FAIL + "Cleaning up afterwards...")
|
Log.info(self, Log.FAIL + "Cleaning up afterwards...")
|
||||||
doCleanupAction(self, domain=wo_domain,
|
doCleanupAction(self, domain=wo_domain,
|
||||||
webroot=data['webroot'])
|
webroot=data['webroot'])
|
||||||
@@ -548,7 +550,8 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
addNewSite(self, wo_domain, stype, cache, wo_site_webroot)
|
addNewSite(self, wo_domain, stype, cache, wo_site_webroot)
|
||||||
# Service Nginx Reload
|
# Service Nginx Reload
|
||||||
if not WOService.reload_service(self, 'nginx'):
|
if not WOService.reload_service(self, 'nginx'):
|
||||||
Log.info(self, Log.FAIL + "There was a serious error encountered...")
|
Log.info(self, Log.FAIL +
|
||||||
|
"There was a serious error encountered...")
|
||||||
Log.info(self, Log.FAIL + "Cleaning up afterwards...")
|
Log.info(self, Log.FAIL + "Cleaning up afterwards...")
|
||||||
doCleanupAction(self, domain=wo_domain)
|
doCleanupAction(self, domain=wo_domain)
|
||||||
deleteSiteInfo(self, wo_domain)
|
deleteSiteInfo(self, wo_domain)
|
||||||
@@ -563,12 +566,11 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
" http://{0}".format(wo_domain))
|
" http://{0}".format(wo_domain))
|
||||||
return
|
return
|
||||||
|
|
||||||
if data['php72']:
|
if data['php73']:
|
||||||
php_version = "7.2"
|
php_version = "7.3"
|
||||||
else:
|
else:
|
||||||
php_version = "7.2"
|
php_version = "7.2"
|
||||||
|
|
||||||
|
|
||||||
addNewSite(self, wo_domain, stype, cache, wo_site_webroot,
|
addNewSite(self, wo_domain, stype, cache, wo_site_webroot,
|
||||||
hhvm=hhvm, php_version=php_version)
|
hhvm=hhvm, php_version=php_version)
|
||||||
|
|
||||||
@@ -584,7 +586,8 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
except SiteError as e:
|
except SiteError as e:
|
||||||
# call cleanup actions on failure
|
# call cleanup actions on failure
|
||||||
Log.debug(self, str(e))
|
Log.debug(self, str(e))
|
||||||
Log.info(self, Log.FAIL + "There was a serious error encountered...")
|
Log.info(self, Log.FAIL +
|
||||||
|
"There was a serious error encountered...")
|
||||||
Log.info(self, Log.FAIL + "Cleaning up afterwards...")
|
Log.info(self, Log.FAIL + "Cleaning up afterwards...")
|
||||||
doCleanupAction(self, domain=wo_domain,
|
doCleanupAction(self, domain=wo_domain,
|
||||||
webroot=data['webroot'],
|
webroot=data['webroot'],
|
||||||
@@ -613,7 +616,8 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
Log.debug(self, str(e))
|
Log.debug(self, str(e))
|
||||||
Log.debug(self, "Error occured while generating "
|
Log.debug(self, "Error occured while generating "
|
||||||
"wo-config.php")
|
"wo-config.php")
|
||||||
Log.info(self, Log.FAIL + "There was a serious error encountered...")
|
Log.info(self, Log.FAIL +
|
||||||
|
"There was a serious error encountered...")
|
||||||
Log.info(self, Log.FAIL + "Cleaning up afterwards...")
|
Log.info(self, Log.FAIL + "Cleaning up afterwards...")
|
||||||
doCleanupAction(self, domain=wo_domain,
|
doCleanupAction(self, domain=wo_domain,
|
||||||
webroot=data['webroot'],
|
webroot=data['webroot'],
|
||||||
@@ -636,7 +640,8 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
except SiteError as e:
|
except SiteError as e:
|
||||||
# call cleanup actions on failure
|
# call cleanup actions on failure
|
||||||
Log.debug(self, str(e))
|
Log.debug(self, str(e))
|
||||||
Log.info(self, Log.FAIL + "There was a serious error encountered...")
|
Log.info(self, Log.FAIL +
|
||||||
|
"There was a serious error encountered...")
|
||||||
Log.info(self, Log.FAIL + "Cleaning up afterwards...")
|
Log.info(self, Log.FAIL + "Cleaning up afterwards...")
|
||||||
doCleanupAction(self, domain=wo_domain,
|
doCleanupAction(self, domain=wo_domain,
|
||||||
webroot=data['webroot'],
|
webroot=data['webroot'],
|
||||||
@@ -649,7 +654,8 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
|
|
||||||
# Service Nginx Reload call cleanup if failed to reload nginx
|
# Service Nginx Reload call cleanup if failed to reload nginx
|
||||||
if not WOService.reload_service(self, 'nginx'):
|
if not WOService.reload_service(self, 'nginx'):
|
||||||
Log.info(self, Log.FAIL + "There was a serious error encountered...")
|
Log.info(self, Log.FAIL +
|
||||||
|
"There was a serious error encountered...")
|
||||||
Log.info(self, Log.FAIL + "Cleaning up afterwards...")
|
Log.info(self, Log.FAIL + "Cleaning up afterwards...")
|
||||||
doCleanupAction(self, domain=wo_domain,
|
doCleanupAction(self, domain=wo_domain,
|
||||||
webroot=data['webroot'])
|
webroot=data['webroot'])
|
||||||
@@ -672,7 +678,8 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
setwebrootpermissions(self, data['webroot'])
|
setwebrootpermissions(self, data['webroot'])
|
||||||
except SiteError as e:
|
except SiteError as e:
|
||||||
Log.debug(self, str(e))
|
Log.debug(self, str(e))
|
||||||
Log.info(self, Log.FAIL + "There was a serious error encountered...")
|
Log.info(self, Log.FAIL +
|
||||||
|
"There was a serious error encountered...")
|
||||||
Log.info(self, Log.FAIL + "Cleaning up afterwards...")
|
Log.info(self, Log.FAIL + "Cleaning up afterwards...")
|
||||||
doCleanupAction(self, domain=wo_domain,
|
doCleanupAction(self, domain=wo_domain,
|
||||||
webroot=data['webroot'])
|
webroot=data['webroot'])
|
||||||
@@ -705,9 +712,10 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
"`tail /var/log/wo/wordops.log` and please try again")
|
"`tail /var/log/wo/wordops.log` and please try again")
|
||||||
|
|
||||||
if self.app.pargs.letsencrypt:
|
if self.app.pargs.letsencrypt:
|
||||||
if (not self.app.pargs.experimental):
|
if (self.app.pargs.experimental):
|
||||||
if stype in ['wpsubdomain']:
|
if stype in ['wpsubdomain']:
|
||||||
Log.warn(self, "Wildcard domains are not supported in Lets Encrypt.\nWP SUBDOMAIN site will get SSL for primary site only.")
|
Log.warn(
|
||||||
|
self, "Wildcard domains are not supported in Lets Encrypt.\nWP SUBDOMAIN site will get SSL for primary site only.")
|
||||||
|
|
||||||
Log.info(self, "Letsencrypt is currently in beta phase."
|
Log.info(self, "Letsencrypt is currently in beta phase."
|
||||||
" \nDo you wish"
|
" \nDo you wish"
|
||||||
@@ -740,9 +748,11 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
" https://{0}".format(wo_domain))
|
" https://{0}".format(wo_domain))
|
||||||
|
|
||||||
if (SSL.getExpirationDays(self, wo_domain) > 0):
|
if (SSL.getExpirationDays(self, wo_domain) > 0):
|
||||||
Log.info(self, "Your cert will expire within " + str(SSL.getExpirationDays(self,wo_domain)) + " days.")
|
Log.info(self, "Your cert will expire within " +
|
||||||
|
str(SSL.getExpirationDays(self, wo_domain)) + " days.")
|
||||||
else:
|
else:
|
||||||
Log.warn(self, "Your cert already EXPIRED ! .PLEASE renew soon . ")
|
Log.warn(
|
||||||
|
self, "Your cert already EXPIRED ! .PLEASE renew soon . ")
|
||||||
|
|
||||||
# Add nginx conf folder into GIT
|
# Add nginx conf folder into GIT
|
||||||
WOGit.add(self, ["{0}/conf/nginx".format(wo_site_webroot)],
|
WOGit.add(self, ["{0}/conf/nginx".format(wo_site_webroot)],
|
||||||
@@ -755,8 +765,6 @@ class WOSiteCreateController(CementBaseController):
|
|||||||
" http://{0}".format(wo_domain))
|
" http://{0}".format(wo_domain))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
class WOSiteUpdateController(CementBaseController):
|
class WOSiteUpdateController(CementBaseController):
|
||||||
class Meta:
|
class Meta:
|
||||||
label = 'update'
|
label = 'update'
|
||||||
@@ -775,8 +783,8 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
dict(help="update to html site", action='store_true')),
|
dict(help="update to html site", action='store_true')),
|
||||||
(['--php'],
|
(['--php'],
|
||||||
dict(help="update to php site", action='store_true')),
|
dict(help="update to php site", action='store_true')),
|
||||||
(['--php72'],
|
(['--php73'],
|
||||||
dict(help="update to php7 site",
|
dict(help="update to php73 site",
|
||||||
action='store' or 'store_const',
|
action='store' or 'store_const',
|
||||||
choices=('on', 'off'), const='on', nargs='?')),
|
choices=('on', 'off'), const='on', nargs='?')),
|
||||||
(['--mysql'],
|
(['--mysql'],
|
||||||
@@ -822,7 +830,7 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
if pargs.html:
|
if pargs.html:
|
||||||
Log.error(self, "No site can be updated to html")
|
Log.error(self, "No site can be updated to html")
|
||||||
|
|
||||||
if not (pargs.php or pargs.php72 or
|
if not (pargs.php or pargs.php73 or
|
||||||
pargs.mysql or pargs.wp or pargs.wpsubdir or
|
pargs.mysql or pargs.wp or pargs.wpsubdir or
|
||||||
pargs.wpsubdomain or pargs.wpfc or pargs.wpsc or
|
pargs.wpsubdomain or pargs.wpfc or pargs.wpsc or
|
||||||
pargs.hhvm or pargs.wpredis or pargs.letsencrypt):
|
pargs.hhvm or pargs.wpredis or pargs.letsencrypt):
|
||||||
@@ -850,8 +858,7 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
def doupdatesite(self, pargs):
|
def doupdatesite(self, pargs):
|
||||||
hhvm = None
|
hhvm = None
|
||||||
letsencrypt = False
|
letsencrypt = False
|
||||||
php72 = None
|
php73 = None
|
||||||
|
|
||||||
|
|
||||||
data = dict()
|
data = dict()
|
||||||
try:
|
try:
|
||||||
@@ -899,13 +906,13 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
check_ssl = check_site.is_ssl
|
check_ssl = check_site.is_ssl
|
||||||
check_php_version = check_site.php_version
|
check_php_version = check_site.php_version
|
||||||
|
|
||||||
if check_php_version == "7.2":
|
if check_php_version == "7.3":
|
||||||
old_php72 = True
|
old_php73 = True
|
||||||
else:
|
else:
|
||||||
old_php72 = False
|
old_php73 = False
|
||||||
|
|
||||||
if (pargs.password and not (pargs.html or
|
if (pargs.password and not (pargs.html or
|
||||||
pargs.php or pargs.php72 or pargs.mysql or
|
pargs.php or pargs.php73 or pargs.mysql or
|
||||||
pargs.wp or pargs.wpfc or pargs.wpsc or
|
pargs.wp or pargs.wpfc or pargs.wpsc or
|
||||||
pargs.wpsubdir or pargs.wpsubdomain)):
|
pargs.wpsubdir or pargs.wpsubdomain)):
|
||||||
try:
|
try:
|
||||||
@@ -925,16 +932,16 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
Log.info(self, Log.FAIL + "Can not update HTML site to HHVM")
|
Log.info(self, Log.FAIL + "Can not update HTML site to HHVM")
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
if ((stype == 'php' and oldsitetype not in ['html', 'proxy', 'php72']) or
|
if ((stype == 'php' and oldsitetype not in ['html', 'proxy', 'php73']) or
|
||||||
# (stype == 'php72' and oldsitetype not in ['html', 'mysql', 'php', 'php72', 'wp', 'wpsubdir', 'wpsubdomain', ]) or
|
# (stype == 'php73' and oldsitetype not in ['html', 'mysql', 'php', 'php73', 'wp', 'wpsubdir', 'wpsubdomain', ]) or
|
||||||
(stype == 'mysql' and oldsitetype not in ['html', 'php',
|
(stype == 'mysql' and oldsitetype not in ['html', 'php',
|
||||||
'proxy','php72']) or
|
'proxy', 'php73']) or
|
||||||
(stype == 'wp' and oldsitetype not in ['html', 'php', 'mysql',
|
(stype == 'wp' and oldsitetype not in ['html', 'php', 'mysql',
|
||||||
'proxy', 'wp', 'php72']) or
|
'proxy', 'wp', 'php73']) or
|
||||||
(stype == 'wpsubdir' and oldsitetype in ['wpsubdomain']) or
|
(stype == 'wpsubdir' and oldsitetype in ['wpsubdomain']) or
|
||||||
(stype == 'wpsubdomain' and oldsitetype in ['wpsubdir']) or
|
(stype == 'wpsubdomain' and oldsitetype in ['wpsubdir']) or
|
||||||
(stype == oldsitetype and cache == oldcachetype) and
|
(stype == oldsitetype and cache == oldcachetype) and
|
||||||
not pargs.php72):
|
not pargs.php73):
|
||||||
Log.info(self, Log.FAIL + "can not update {0} {1} to {2} {3}".
|
Log.info(self, Log.FAIL + "can not update {0} {1} to {2} {3}".
|
||||||
format(oldsitetype, oldcachetype, stype, cache))
|
format(oldsitetype, oldcachetype, stype, cache))
|
||||||
return 1
|
return 1
|
||||||
@@ -976,7 +983,7 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
if stype == 'wpsubdir':
|
if stype == 'wpsubdir':
|
||||||
data['wpsubdir'] = True
|
data['wpsubdir'] = True
|
||||||
|
|
||||||
if pargs.hhvm or pargs.php72:
|
if pargs.hhvm or pargs.php73:
|
||||||
if not data:
|
if not data:
|
||||||
data = dict(site_name=wo_domain, www_domain=wo_www_domain,
|
data = dict(site_name=wo_domain, www_domain=wo_www_domain,
|
||||||
currsitetype=oldsitetype,
|
currsitetype=oldsitetype,
|
||||||
@@ -1038,24 +1045,24 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
data['hhvm'] = False
|
data['hhvm'] = False
|
||||||
hhvm = False
|
hhvm = False
|
||||||
|
|
||||||
if pargs.php72 == 'on' :
|
if pargs.php73 == 'on':
|
||||||
data['php72'] = True
|
data['php73'] = True
|
||||||
php72 = True
|
php73 = True
|
||||||
|
check_php_version = '7.3'
|
||||||
|
elif pargs.php73 == 'off':
|
||||||
|
data['php73'] = False
|
||||||
|
php73 = False
|
||||||
check_php_version = '7.2'
|
check_php_version = '7.2'
|
||||||
elif pargs.php72 == 'off':
|
|
||||||
data['php72'] = False
|
|
||||||
php72 = False
|
|
||||||
check_php_version = '5.6'
|
|
||||||
|
|
||||||
if pargs.php72:
|
if pargs.php73:
|
||||||
if php72 is old_php72:
|
if php73 is old_php73:
|
||||||
if php72 is False:
|
if php73 is False:
|
||||||
Log.info(self, "PHP 7.2 is already disabled for given "
|
Log.info(self, "PHP 7.3 is already disabled for given "
|
||||||
"site")
|
"site")
|
||||||
elif php72 is True:
|
elif php73 is True:
|
||||||
Log.info(self, "PHP 7.2 is already enabled for given "
|
Log.info(self, "PHP 7.3 is already enabled for given "
|
||||||
"site")
|
"site")
|
||||||
pargs.php72 = False
|
pargs.php73 = False
|
||||||
|
|
||||||
# --letsencrypt=renew code goes here
|
# --letsencrypt=renew code goes here
|
||||||
if pargs.letsencrypt == "renew" and not pargs.all:
|
if pargs.letsencrypt == "renew" and not pargs.all:
|
||||||
@@ -1065,10 +1072,12 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
if (expiry_days <= min_expiry_days):
|
if (expiry_days <= min_expiry_days):
|
||||||
renewLetsEncrypt(self, wo_domain)
|
renewLetsEncrypt(self, wo_domain)
|
||||||
else:
|
else:
|
||||||
Log.error(self,"You have more than 30 days with the current certificate - refusing to run.")
|
Log.error(
|
||||||
|
self, "You have more than 30 days with the current certificate - refusing to run.")
|
||||||
|
|
||||||
else:
|
else:
|
||||||
Log.error(self,"Cannot renew - HTTPS is not configured for the given site. Install LE first...")
|
Log.error(
|
||||||
|
self, "Cannot renew - HTTPS is not configured for the given site. Install LE first...")
|
||||||
|
|
||||||
if not WOService.reload_service(self, 'nginx'):
|
if not WOService.reload_service(self, 'nginx'):
|
||||||
Log.error(self, "service nginx reload failed. "
|
Log.error(self, "service nginx reload failed. "
|
||||||
@@ -1076,11 +1085,14 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
Log.info(self, "SUCCESS: Certificate was successfully renewed For"
|
Log.info(self, "SUCCESS: Certificate was successfully renewed For"
|
||||||
" https://{0}".format(wo_domain))
|
" https://{0}".format(wo_domain))
|
||||||
if (SSL.getExpirationDays(self, wo_domain) > 0):
|
if (SSL.getExpirationDays(self, wo_domain) > 0):
|
||||||
Log.info(self, "Your cert will expire within " + str(SSL.getExpirationDays(self,wo_domain)) + " days.")
|
Log.info(self, "Your cert will expire within " +
|
||||||
Log.info(self, "Expiration date: " + str(SSL.getExpirationDate(self,wo_domain)))
|
str(SSL.getExpirationDays(self, wo_domain)) + " days.")
|
||||||
|
Log.info(self, "Expiration date: " +
|
||||||
|
str(SSL.getExpirationDate(self, wo_domain)))
|
||||||
|
|
||||||
else:
|
else:
|
||||||
Log.warn(self, "The certificate seems to be already expired. Please renew it as soon as possible...")
|
Log.warn(
|
||||||
|
self, "The certificate seems to be already expired. Please renew it as soon as possible...")
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
if pargs.all and pargs.letsencrypt == "renew":
|
if pargs.all and pargs.letsencrypt == "renew":
|
||||||
@@ -1098,16 +1110,20 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
Log.info(self, "SUCCESS: Certificate was successfully renewed For"
|
Log.info(self, "SUCCESS: Certificate was successfully renewed For"
|
||||||
" https://{0}".format(wo_domain))
|
" https://{0}".format(wo_domain))
|
||||||
else:
|
else:
|
||||||
Log.info(self,"You have more than 30 days with the current certificate - refusing to run.\n")
|
Log.info(
|
||||||
|
self, "You have more than 30 days with the current certificate - refusing to run.\n")
|
||||||
|
|
||||||
if (SSL.getExpirationDays(self, wo_domain) > 0):
|
if (SSL.getExpirationDays(self, wo_domain) > 0):
|
||||||
Log.info(self, "Your cert will expire within " + str(SSL.getExpirationDays(self,wo_domain)) + " days.")
|
Log.info(self, "Your cert will expire within " +
|
||||||
Log.info(self, "Expiration date: \n\n" + str(SSL.getExpirationDate(self,wo_domain)))
|
str(SSL.getExpirationDays(self, wo_domain)) + " days.")
|
||||||
|
Log.info(self, "Expiration date: \n\n" +
|
||||||
|
str(SSL.getExpirationDate(self, wo_domain)))
|
||||||
return 0
|
return 0
|
||||||
# else:
|
# else:
|
||||||
# Log.warn(self, "Your cert already EXPIRED ! .PLEASE renew soon . ")
|
# Log.warn(self, "Your cert already EXPIRED ! .PLEASE renew soon . ")
|
||||||
else:
|
else:
|
||||||
Log.info(self,"SSL not configured for site http://{0}".format(wo_domain))
|
Log.info(
|
||||||
|
self, "SSL not configured for site http://{0}".format(wo_domain))
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
if pargs.all and pargs.letsencrypt == "off":
|
if pargs.all and pargs.letsencrypt == "off":
|
||||||
@@ -1154,33 +1170,34 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
data['hhvm'] = False
|
data['hhvm'] = False
|
||||||
hhvm = False
|
hhvm = False
|
||||||
|
|
||||||
if data and (not pargs.php72):
|
if data and (not pargs.php73):
|
||||||
if old_php72 is True:
|
if old_php73 is True:
|
||||||
data['php72'] = True
|
data['php73'] = True
|
||||||
php72 = True
|
php73 = True
|
||||||
else:
|
else:
|
||||||
data['php72'] = False
|
data['php73'] = False
|
||||||
php72 = False
|
php73 = False
|
||||||
|
|
||||||
if pargs.hhvm=="on" or pargs.letsencrypt=="on" or pargs.php72=="on":
|
if pargs.hhvm == "on" or pargs.letsencrypt == "on" or pargs.php73 == "on":
|
||||||
if pargs.php72 == "on":
|
if pargs.php73 == "on":
|
||||||
if (not pargs.experimental):
|
if pargs.experimental:
|
||||||
Log.info(self, "Do you wish to enable PHP 7.2 now for {0}?".format(wo_domain))
|
Log.info(
|
||||||
|
self, "Do you wish to enable PHP 7.3 now for {0}?".format(wo_domain))
|
||||||
|
|
||||||
check_prompt = input("Type \"y\" to continue [n]:")
|
check_prompt = input("Type \"y\" to continue [n]:")
|
||||||
if check_prompt != "Y" and check_prompt != "y":
|
if check_prompt != "Y" and check_prompt != "y":
|
||||||
Log.info(self, "Not using PHP 7.2 for site")
|
Log.info(self, "Not using PHP 7.3 for site")
|
||||||
data['php72'] = False
|
data['php73'] = False
|
||||||
php72 = False
|
php73 = False
|
||||||
else:
|
else:
|
||||||
data['php72'] = True
|
data['php73'] = True
|
||||||
php72 = True
|
php73 = True
|
||||||
else:
|
else:
|
||||||
data['php72'] = True
|
data['php73'] = True
|
||||||
php72 = True
|
php73 = True
|
||||||
|
|
||||||
if pargs.hhvm == "on":
|
if pargs.hhvm == "on":
|
||||||
if (not pargs.experimental):
|
if pargs.experimental:
|
||||||
Log.info(self, "HHVM is experimental feature and it may not"
|
Log.info(self, "HHVM is experimental feature and it may not"
|
||||||
" work with all plugins of your site.\nYou can "
|
" work with all plugins of your site.\nYou can "
|
||||||
"disable it by passing --hhvm=off later.\nDo you wish"
|
"disable it by passing --hhvm=off later.\nDo you wish"
|
||||||
@@ -1201,10 +1218,11 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
|
|
||||||
if pargs.letsencrypt == "on":
|
if pargs.letsencrypt == "on":
|
||||||
|
|
||||||
if (not pargs.experimental):
|
if pargs.experimental:
|
||||||
|
|
||||||
if oldsitetype in ['wpsubdomain']:
|
if oldsitetype in ['wpsubdomain']:
|
||||||
Log.warn(self, "Wildcard domains are not supported in Lets Encrypt.\nWP SUBDOMAIN site will get SSL for primary site only.")
|
Log.warn(
|
||||||
|
self, "Wildcard domains are not supported in Lets Encrypt.\nWP SUBDOMAIN site will get SSL for primary site only.")
|
||||||
|
|
||||||
Log.info(self, "Letsencrypt is currently in beta phase."
|
Log.info(self, "Letsencrypt is currently in beta phase."
|
||||||
" \nDo you wish"
|
" \nDo you wish"
|
||||||
@@ -1222,10 +1240,8 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
data['letsencrypt'] = True
|
data['letsencrypt'] = True
|
||||||
letsencrypt = True
|
letsencrypt = True
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if pargs.wpredis and data['currcachetype'] != 'wpredis':
|
if pargs.wpredis and data['currcachetype'] != 'wpredis':
|
||||||
if (not pargs.experimental):
|
if pargs.experimental:
|
||||||
Log.info(self, "Redis is experimental feature and it may not"
|
Log.info(self, "Redis is experimental feature and it may not"
|
||||||
" work with all plugins of your site.\nYou can "
|
" work with all plugins of your site.\nYou can "
|
||||||
"disable it by changing cache type later.\nDo you wish"
|
"disable it by changing cache type later.\nDo you wish"
|
||||||
@@ -1239,7 +1255,7 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
data['basic'] = True
|
data['basic'] = True
|
||||||
cache = 'basic'
|
cache = 'basic'
|
||||||
|
|
||||||
if ((hhvm is old_hhvm) and (php72 is old_php72) and
|
if ((hhvm is old_hhvm) and (php73 is old_php73) and
|
||||||
(stype == oldsitetype and cache == oldcachetype)):
|
(stype == oldsitetype and cache == oldcachetype)):
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
@@ -1310,9 +1326,11 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
" https://{0}".format(wo_domain))
|
" https://{0}".format(wo_domain))
|
||||||
|
|
||||||
if (SSL.getExpirationDays(self, wo_domain) > 0):
|
if (SSL.getExpirationDays(self, wo_domain) > 0):
|
||||||
Log.info(self, "Your cert will expire within " + str(SSL.getExpirationDays(self,wo_domain)) + " days.")
|
Log.info(self, "Your cert will expire within " +
|
||||||
|
str(SSL.getExpirationDays(self, wo_domain)) + " days.")
|
||||||
else:
|
else:
|
||||||
Log.warn(self, "Your cert already EXPIRED ! .PLEASE renew soon . ")
|
Log.warn(
|
||||||
|
self, "Your cert already EXPIRED ! .PLEASE renew soon . ")
|
||||||
|
|
||||||
elif data['letsencrypt'] is False:
|
elif data['letsencrypt'] is False:
|
||||||
if os.path.isfile("{0}/conf/nginx/ssl.conf"
|
if os.path.isfile("{0}/conf/nginx/ssl.conf"
|
||||||
@@ -1331,7 +1349,6 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
Log.info(self, "Successfully Disabled SSl for Site "
|
Log.info(self, "Successfully Disabled SSl for Site "
|
||||||
" http://{0}".format(wo_domain))
|
" http://{0}".format(wo_domain))
|
||||||
|
|
||||||
|
|
||||||
# Add nginx conf folder into GIT
|
# Add nginx conf folder into GIT
|
||||||
WOGit.add(self, ["{0}/conf/nginx".format(wo_site_webroot)],
|
WOGit.add(self, ["{0}/conf/nginx".format(wo_site_webroot)],
|
||||||
msg="Adding letsencrypts config of site: {0}"
|
msg="Adding letsencrypts config of site: {0}"
|
||||||
@@ -1412,7 +1429,8 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
(data['wpfc'])) or (oldsitetype == 'wp' and data['multisite'] and data['wpfc'])):
|
(data['wpfc'])) or (oldsitetype == 'wp' and data['multisite'] and data['wpfc'])):
|
||||||
try:
|
try:
|
||||||
plugin_data = '{"log_level":"INFO","log_filesize":5,"enable_purge":1,"enable_map":0,"enable_log":0,"enable_stamp":0,"purge_homepage_on_new":1,"purge_homepage_on_edit":1,"purge_homepage_on_del":1,"purge_archive_on_new":1,"purge_archive_on_edit":0,"purge_archive_on_del":0,"purge_archive_on_new_comment":0,"purge_archive_on_deleted_comment":0,"purge_page_on_mod":1,"purge_page_on_new_comment":1,"purge_page_on_deleted_comment":1,"cache_method":"enable_fastcgi","purge_method":"get_request","redis_hostname":"127.0.0.1","redis_port":"6379","redis_prefix":"nginx-cache:"}'
|
plugin_data = '{"log_level":"INFO","log_filesize":5,"enable_purge":1,"enable_map":0,"enable_log":0,"enable_stamp":0,"purge_homepage_on_new":1,"purge_homepage_on_edit":1,"purge_homepage_on_del":1,"purge_archive_on_new":1,"purge_archive_on_edit":0,"purge_archive_on_del":0,"purge_archive_on_new_comment":0,"purge_archive_on_deleted_comment":0,"purge_page_on_mod":1,"purge_page_on_new_comment":1,"purge_page_on_deleted_comment":1,"cache_method":"enable_fastcgi","purge_method":"get_request","redis_hostname":"127.0.0.1","redis_port":"6379","redis_prefix":"nginx-cache:"}'
|
||||||
setupwp_plugin(self, 'nginx-helper', 'rt_wp_nginx_helper_options', plugin_data, data)
|
setupwp_plugin(
|
||||||
|
self, 'nginx-helper', 'rt_wp_nginx_helper_options', plugin_data, data)
|
||||||
except SiteError as e:
|
except SiteError as e:
|
||||||
Log.debug(self, str(e))
|
Log.debug(self, str(e))
|
||||||
Log.info(self, Log.FAIL + "Update nginx-helper settings failed. "
|
Log.info(self, Log.FAIL + "Update nginx-helper settings failed. "
|
||||||
@@ -1424,7 +1442,8 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
(data['wpredis'])) or (oldsitetype == 'wp' and data['multisite'] and data['wpredis'])):
|
(data['wpredis'])) or (oldsitetype == 'wp' and data['multisite'] and data['wpredis'])):
|
||||||
try:
|
try:
|
||||||
plugin_data = '{"log_level":"INFO","log_filesize":5,"enable_purge":1,"enable_map":0,"enable_log":0,"enable_stamp":0,"purge_homepage_on_new":1,"purge_homepage_on_edit":1,"purge_homepage_on_del":1,"purge_archive_on_new":1,"purge_archive_on_edit":0,"purge_archive_on_del":0,"purge_archive_on_new_comment":0,"purge_archive_on_deleted_comment":0,"purge_page_on_mod":1,"purge_page_on_new_comment":1,"purge_page_on_deleted_comment":1,"cache_method":"enable_redis","purge_method":"get_request","redis_hostname":"127.0.0.1","redis_port":"6379","redis_prefix":"nginx-cache:"}'
|
plugin_data = '{"log_level":"INFO","log_filesize":5,"enable_purge":1,"enable_map":0,"enable_log":0,"enable_stamp":0,"purge_homepage_on_new":1,"purge_homepage_on_edit":1,"purge_homepage_on_del":1,"purge_archive_on_new":1,"purge_archive_on_edit":0,"purge_archive_on_del":0,"purge_archive_on_new_comment":0,"purge_archive_on_deleted_comment":0,"purge_page_on_mod":1,"purge_page_on_new_comment":1,"purge_page_on_deleted_comment":1,"cache_method":"enable_redis","purge_method":"get_request","redis_hostname":"127.0.0.1","redis_port":"6379","redis_prefix":"nginx-cache:"}'
|
||||||
setupwp_plugin(self, 'nginx-helper', 'rt_wp_nginx_helper_options', plugin_data, data)
|
setupwp_plugin(
|
||||||
|
self, 'nginx-helper', 'rt_wp_nginx_helper_options', plugin_data, data)
|
||||||
except SiteError as e:
|
except SiteError as e:
|
||||||
Log.debug(self, str(e))
|
Log.debug(self, str(e))
|
||||||
Log.info(self, Log.FAIL + "Update nginx-helper settings failed. "
|
Log.info(self, Log.FAIL + "Update nginx-helper settings failed. "
|
||||||
@@ -1434,7 +1453,8 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
else:
|
else:
|
||||||
try:
|
try:
|
||||||
plugin_data = '{"log_level":"INFO","log_filesize":5,"enable_purge":0,"enable_map":0,"enable_log":0,"enable_stamp":0,"purge_homepage_on_new":1,"purge_homepage_on_edit":1,"purge_homepage_on_del":1,"purge_archive_on_new":1,"purge_archive_on_edit":0,"purge_archive_on_del":0,"purge_archive_on_new_comment":0,"purge_archive_on_deleted_comment":0,"purge_page_on_mod":1,"purge_page_on_new_comment":1,"purge_page_on_deleted_comment":1,"cache_method":"enable_redis","purge_method":"get_request","redis_hostname":"127.0.0.1","redis_port":"6379","redis_prefix":"nginx-cache:"}'
|
plugin_data = '{"log_level":"INFO","log_filesize":5,"enable_purge":0,"enable_map":0,"enable_log":0,"enable_stamp":0,"purge_homepage_on_new":1,"purge_homepage_on_edit":1,"purge_homepage_on_del":1,"purge_archive_on_new":1,"purge_archive_on_edit":0,"purge_archive_on_del":0,"purge_archive_on_new_comment":0,"purge_archive_on_deleted_comment":0,"purge_page_on_mod":1,"purge_page_on_new_comment":1,"purge_page_on_deleted_comment":1,"cache_method":"enable_redis","purge_method":"get_request","redis_hostname":"127.0.0.1","redis_port":"6379","redis_prefix":"nginx-cache:"}'
|
||||||
setupwp_plugin(self, 'nginx-helper', 'rt_wp_nginx_helper_options', plugin_data, data)
|
setupwp_plugin(
|
||||||
|
self, 'nginx-helper', 'rt_wp_nginx_helper_options', plugin_data, data)
|
||||||
except SiteError as e:
|
except SiteError as e:
|
||||||
Log.debug(self, str(e))
|
Log.debug(self, str(e))
|
||||||
Log.info(self, Log.FAIL + "Update nginx-helper settings failed. "
|
Log.info(self, Log.FAIL + "Update nginx-helper settings failed. "
|
||||||
@@ -1477,12 +1497,16 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
if installwp_plugin(self, 'redis-cache', data):
|
if installwp_plugin(self, 'redis-cache', data):
|
||||||
# search for wp-config.php
|
# search for wp-config.php
|
||||||
if WOFileUtils.isexist(self, "{0}/wp-config.php".format(wo_site_webroot)):
|
if WOFileUtils.isexist(self, "{0}/wp-config.php".format(wo_site_webroot)):
|
||||||
config_path = '{0}/wp-config.php'.format(wo_site_webroot)
|
config_path = '{0}/wp-config.php'.format(
|
||||||
|
wo_site_webroot)
|
||||||
elif WOFileUtils.isexist(self, "{0}/htdocs/wp-config.php".format(wo_site_webroot)):
|
elif WOFileUtils.isexist(self, "{0}/htdocs/wp-config.php".format(wo_site_webroot)):
|
||||||
config_path = '{0}/htdocs/wp-config.php'.format(wo_site_webroot)
|
config_path = '{0}/htdocs/wp-config.php'.format(
|
||||||
|
wo_site_webroot)
|
||||||
else:
|
else:
|
||||||
Log.debug(self, "Updating wp-config.php failed. File could not be located.")
|
Log.debug(
|
||||||
Log.error(self,"wp-config.php could not be located !!")
|
self, "Updating wp-config.php failed. File could not be located.")
|
||||||
|
Log.error(
|
||||||
|
self, "wp-config.php could not be located !!")
|
||||||
raise SiteError
|
raise SiteError
|
||||||
|
|
||||||
if WOShellExec.cmd_exec(self, "grep -q \"WP_CACHE_KEY_SALT\" {0}"
|
if WOShellExec.cmd_exec(self, "grep -q \"WP_CACHE_KEY_SALT\" {0}"
|
||||||
@@ -1636,7 +1660,8 @@ class WOSiteDeleteController(CementBaseController):
|
|||||||
mark_db_delete_prompt = True
|
mark_db_delete_prompt = True
|
||||||
Log.info(self, "Deleting Database, {0}, user {1}"
|
Log.info(self, "Deleting Database, {0}, user {1}"
|
||||||
.format(wo_db_name, wo_db_user))
|
.format(wo_db_name, wo_db_user))
|
||||||
deleteDB(self, wo_db_name, wo_db_user, wo_mysql_grant_host, False)
|
deleteDB(self, wo_db_name, wo_db_user,
|
||||||
|
wo_mysql_grant_host, False)
|
||||||
updateSiteInfo(self, wo_domain,
|
updateSiteInfo(self, wo_domain,
|
||||||
db_name='deleted',
|
db_name='deleted',
|
||||||
db_user='deleted',
|
db_user='deleted',
|
||||||
|
|||||||
@@ -72,7 +72,7 @@ def setupdomain(self, data):
|
|||||||
wo_site_nginx_conf = open('/etc/nginx/sites-available/{0}'
|
wo_site_nginx_conf = open('/etc/nginx/sites-available/{0}'
|
||||||
.format(wo_domain_name), encoding='utf-8',
|
.format(wo_domain_name), encoding='utf-8',
|
||||||
mode='w')
|
mode='w')
|
||||||
if not data['php72']:
|
if not data['php73']:
|
||||||
self.app.render((data), 'virtualconf.mustache',
|
self.app.render((data), 'virtualconf.mustache',
|
||||||
out=wo_site_nginx_conf)
|
out=wo_site_nginx_conf)
|
||||||
else:
|
else:
|
||||||
@@ -100,7 +100,6 @@ def setupdomain(self, data):
|
|||||||
raise SiteError("created nginx configuration failed for site."
|
raise SiteError("created nginx configuration failed for site."
|
||||||
" check with `nginx -t`")
|
" check with `nginx -t`")
|
||||||
|
|
||||||
|
|
||||||
# create symbolic link for
|
# create symbolic link for
|
||||||
WOFileUtils.create_symlink(self, ['/etc/nginx/sites-available/{0}'
|
WOFileUtils.create_symlink(self, ['/etc/nginx/sites-available/{0}'
|
||||||
.format(wo_domain_name),
|
.format(wo_domain_name),
|
||||||
@@ -302,7 +301,7 @@ def setupwordpress(self, data):
|
|||||||
"--dbhost=\'{3}\' "
|
"--dbhost=\'{3}\' "
|
||||||
.format(data['wo_db_name'], wo_wp_prefix,
|
.format(data['wo_db_name'], wo_wp_prefix,
|
||||||
data['wo_db_user'], data['wo_db_host'])
|
data['wo_db_user'], data['wo_db_host'])
|
||||||
+ "--dbpass= "
|
+ "--dbpass=\'{0}\' "
|
||||||
"--extra-php<<PHP \n {1}\nPHP\""
|
"--extra-php<<PHP \n {1}\nPHP\""
|
||||||
.format(data['wo_db_pass'],
|
.format(data['wo_db_pass'],
|
||||||
"\n\ndefine(\'WP_DEBUG\', false);"))
|
"\n\ndefine(\'WP_DEBUG\', false);"))
|
||||||
@@ -336,11 +335,9 @@ def setupwordpress(self, data):
|
|||||||
+ "core config "
|
+ "core config "
|
||||||
+ "--dbname=\'{0}\' --dbprefix=\'{1}\' --dbhost=\'{2}\' "
|
+ "--dbname=\'{0}\' --dbprefix=\'{1}\' --dbhost=\'{2}\' "
|
||||||
.format(data['wo_db_name'], wo_wp_prefix, data['wo_db_host'])
|
.format(data['wo_db_name'], wo_wp_prefix, data['wo_db_host'])
|
||||||
+ "--dbuser=\'{0}\' --dbpass= "
|
+ "--dbuser=\'{0}\' --dbpass=\'{1}\' "
|
||||||
"--extra-php<<PHP \n {2} {3} {4}\nPHP\""
|
"--extra-php<<PHP \n {2} {3} \nPHP\""
|
||||||
.format(data['wo_db_user'], data['wo_db_pass'],
|
.format(data['wo_db_user'], data['wo_db_pass'],
|
||||||
"\ndefine(\'WP_ALLOW_MULTISITE\', "
|
|
||||||
"true);",
|
|
||||||
"\ndefine(\'WPMU_ACCEL_REDIRECT\',"
|
"\ndefine(\'WPMU_ACCEL_REDIRECT\',"
|
||||||
" true);",
|
" true);",
|
||||||
"\n\ndefine(\'WP_DEBUG\', false);"))
|
"\n\ndefine(\'WP_DEBUG\', false);"))
|
||||||
@@ -353,11 +350,9 @@ def setupwordpress(self, data):
|
|||||||
.format(data['wo_db_name'], wo_wp_prefix,
|
.format(data['wo_db_name'], wo_wp_prefix,
|
||||||
data['wo_db_host'])
|
data['wo_db_host'])
|
||||||
+ "--dbuser=\'{0}\' --dbpass=\'{1}\' "
|
+ "--dbuser=\'{0}\' --dbpass=\'{1}\' "
|
||||||
"--extra-php<<PHP \n {2} {3} {4} {redissalt}\nPHP\""
|
"--extra-php<<PHP \n {2} {3} {redissalt}\nPHP\""
|
||||||
.format(data['wo_db_user'],
|
.format(data['wo_db_user'],
|
||||||
data['wo_db_pass'],
|
data['wo_db_pass'],
|
||||||
"\ndefine(\'WP_ALLOW_MULTISITE\', "
|
|
||||||
"true);",
|
|
||||||
"\ndefine(\'WPMU_ACCEL_REDIRECT\',"
|
"\ndefine(\'WPMU_ACCEL_REDIRECT\',"
|
||||||
" true);",
|
" true);",
|
||||||
"\n\ndefine(\'WP_DEBUG\', false);",
|
"\n\ndefine(\'WP_DEBUG\', false);",
|
||||||
@@ -385,7 +380,6 @@ def setupwordpress(self, data):
|
|||||||
.format(os.getcwd()+'/wp-config.php', os.path.abspath(os.path.join(os.getcwd(), os.pardir))), False)
|
.format(os.getcwd()+'/wp-config.php', os.path.abspath(os.path.join(os.getcwd(), os.pardir))), False)
|
||||||
raise SiteError("Unable to move wp-config.php")
|
raise SiteError("Unable to move wp-config.php")
|
||||||
|
|
||||||
|
|
||||||
if not wo_wp_user:
|
if not wo_wp_user:
|
||||||
wo_wp_user = WOVariables.wo_user
|
wo_wp_user = WOVariables.wo_user
|
||||||
while not wo_wp_user:
|
while not wo_wp_user:
|
||||||
@@ -577,6 +571,7 @@ def uninstallwp_plugin(self, plugin_name, data):
|
|||||||
except CommandExecutionError as e:
|
except CommandExecutionError as e:
|
||||||
raise SiteError("plugin uninstall failed")
|
raise SiteError("plugin uninstall failed")
|
||||||
|
|
||||||
|
|
||||||
def setupwp_plugin(self, plugin_name, plugin_option, plugin_data, data):
|
def setupwp_plugin(self, plugin_name, plugin_option, plugin_data, data):
|
||||||
wo_site_webroot = data['webroot']
|
wo_site_webroot = data['webroot']
|
||||||
Log.info(self, "Setting plugin {0}, please wait..."
|
Log.info(self, "Setting plugin {0}, please wait..."
|
||||||
@@ -623,7 +618,7 @@ def sitebackup(self, data):
|
|||||||
.format(data['site_name']), backup_path)
|
.format(data['site_name']), backup_path)
|
||||||
|
|
||||||
if data['currsitetype'] in ['html', 'php', 'proxy', 'mysql']:
|
if data['currsitetype'] in ['html', 'php', 'proxy', 'mysql']:
|
||||||
if data['php72'] is True and not data['wp']:
|
if data['php73'] is True and not data['wp']:
|
||||||
Log.info(self, "Backing up Webroot \t\t", end='')
|
Log.info(self, "Backing up Webroot \t\t", end='')
|
||||||
WOFileUtils.copyfiles(self, wo_site_webroot + '/htdocs', backup_path + '/htdocs')
|
WOFileUtils.copyfiles(self, wo_site_webroot + '/htdocs', backup_path + '/htdocs')
|
||||||
Log.info(self, "[" + Log.ENDC + "Done" + Log.OKBLUE + "]")
|
Log.info(self, "[" + Log.ENDC + "Done" + Log.OKBLUE + "]")
|
||||||
@@ -663,7 +658,7 @@ def sitebackup(self, data):
|
|||||||
Log.info(self, "[" + Log.ENDC + "Done" + Log.OKBLUE + "]")
|
Log.info(self, "[" + Log.ENDC + "Done" + Log.OKBLUE + "]")
|
||||||
# move wp-config.php/wo-config.php to backup
|
# move wp-config.php/wo-config.php to backup
|
||||||
if data['currsitetype'] in ['mysql', 'proxy']:
|
if data['currsitetype'] in ['mysql', 'proxy']:
|
||||||
if data['php72'] is True and not data['wp']:
|
if data['php73'] is True and not data['wp']:
|
||||||
WOFileUtils.copyfile(self, configfiles[0], backup_path)
|
WOFileUtils.copyfile(self, configfiles[0], backup_path)
|
||||||
else:
|
else:
|
||||||
WOFileUtils.mvfile(self, configfiles[0], backup_path)
|
WOFileUtils.mvfile(self, configfiles[0], backup_path)
|
||||||
@@ -677,7 +672,7 @@ def site_package_check(self, stype):
|
|||||||
stack = WOStackController()
|
stack = WOStackController()
|
||||||
stack.app = self.app
|
stack.app = self.app
|
||||||
if stype in ['html', 'proxy', 'php', 'mysql', 'wp', 'wpsubdir',
|
if stype in ['html', 'proxy', 'php', 'mysql', 'wp', 'wpsubdir',
|
||||||
'wpsubdomain', 'php72']:
|
'wpsubdomain', 'php73']:
|
||||||
Log.debug(self, "Setting apt_packages variable for Nginx")
|
Log.debug(self, "Setting apt_packages variable for Nginx")
|
||||||
|
|
||||||
# Check if server has nginx-custom package
|
# Check if server has nginx-custom package
|
||||||
@@ -708,22 +703,28 @@ def site_package_check(self, stype):
|
|||||||
wo_nginx.write('fastcgi_param \tSCRIPT_FILENAME '
|
wo_nginx.write('fastcgi_param \tSCRIPT_FILENAME '
|
||||||
'\t$request_filename;\n')
|
'\t$request_filename;\n')
|
||||||
|
|
||||||
if self.app.pargs.php and self.app.pargs.php72:
|
if self.app.pargs.php and self.app.pargs.php73:
|
||||||
Log.error(self, "Error: two different PHP versions cannot be combined within the same WordOps site")
|
Log.error(self, "Error: two different PHP versions cannot be combined within the same WordOps site")
|
||||||
|
|
||||||
if not self.app.pargs.php72 and stype in ['php', 'mysql', 'wp', 'wpsubdir', 'wpsubdomain']:
|
if not self.app.pargs.php73 and stype in ['php', 'mysql', 'wp', 'wpsubdir', 'wpsubdomain']:
|
||||||
Log.debug(self, "Setting apt_packages variable for PHP")
|
|
||||||
apt_packages = apt_packages + WOVariables.wo_php72 + WOVariables.wo_php_extra
|
|
||||||
|
|
||||||
if self.app.pargs.php72 and stype in [ 'mysql', 'wp', 'wpsubdir', 'wpsubdomain']:
|
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
||||||
Log.debug(self, "Setting apt_packages variable for PHP 7.2")
|
Log.debug(self, "Setting apt_packages variable for PHP 7.2")
|
||||||
if not WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if not WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
apt_packages = apt_packages + WOVariables.wo_php72 + WOVariables.wo_php_extra
|
apt_packages = apt_packages + WOVariables.wo_php + WOVariables.wo_php_extra
|
||||||
else:
|
else:
|
||||||
Log.debug(self, "Setting apt_packages variable for PHP 7.2")
|
Log.debug(self, "Setting apt_packages variable for PHP 7.2")
|
||||||
if not WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if not WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
apt_packages = apt_packages + WOVariables.wo_php72
|
apt_packages = apt_packages + WOVariables.wo_php
|
||||||
|
|
||||||
|
if self.app.pargs.php73 and stype in ['mysql', 'wp', 'wpsubdir', 'wpsubdomain']:
|
||||||
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
||||||
|
Log.debug(self, "Setting apt_packages variable for PHP 7.3")
|
||||||
|
if not WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
|
apt_packages = apt_packages + WOVariables.wo_php73 + WOVariables.wo_php_extra
|
||||||
|
else:
|
||||||
|
Log.debug(self, "Setting apt_packages variable for PHP 7.3")
|
||||||
|
if not WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
|
apt_packages = apt_packages + WOVariables.wo_php73
|
||||||
|
|
||||||
if stype in ['mysql', 'wp', 'wpsubdir', 'wpsubdomain']:
|
if stype in ['mysql', 'wp', 'wpsubdir', 'wpsubdomain']:
|
||||||
Log.debug(self, "Setting apt_packages variable for MySQL")
|
Log.debug(self, "Setting apt_packages variable for MySQL")
|
||||||
@@ -736,24 +737,24 @@ def site_package_check(self, stype):
|
|||||||
|
|
||||||
if stype in ['wp', 'wpsubdir', 'wpsubdomain']:
|
if stype in ['wp', 'wpsubdir', 'wpsubdomain']:
|
||||||
Log.debug(self, "Setting packages variable for WP-CLI")
|
Log.debug(self, "Setting packages variable for WP-CLI")
|
||||||
if not WOShellExec.cmd_exec(self, "which wp"):
|
if not WOShellExec.cmd_exec(self, "command -v wp"):
|
||||||
packages = packages + [["https://github.com/wp-cli/wp-cli/"
|
packages = packages + [["https://github.com/wp-cli/wp-cli/"
|
||||||
"releases/download/v{0}/"
|
"releases/download/v{0}/"
|
||||||
"wp-cli-{0}.phar"
|
"wp-cli-{0}.phar"
|
||||||
.format(WOVariables.wo_wp_cli),
|
.format(WOVariables.wo_wp_cli),
|
||||||
"/usr/bin/wp", "WP-CLI"]]
|
"/usr/local/bin/wp", "WP-CLI"]]
|
||||||
if self.app.pargs.wpredis:
|
if self.app.pargs.wpredis:
|
||||||
Log.debug(self, "Setting apt_packages variable for redis")
|
Log.debug(self, "Setting apt_packages variable for redis")
|
||||||
if not WOAptGet.is_installed(self, 'redis-server'):
|
if not WOAptGet.is_installed(self, 'redis-server'):
|
||||||
apt_packages = apt_packages + WOVariables.wo_redis
|
apt_packages = apt_packages + WOVariables.wo_redis
|
||||||
|
|
||||||
if os.path.isfile("/etc/nginx/nginx.conf") and (not
|
if os.path.isfile("/etc/nginx/nginx.conf") and (not
|
||||||
os.path.isfile("/etc/nginx/common/redis.conf")):
|
os.path.isfile("/etc/nginx/common/redis-php72.conf")):
|
||||||
|
|
||||||
data = dict()
|
data = dict()
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/redis.conf')
|
'file /etc/nginx/common/redis-php72.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/redis.conf',
|
wo_nginx = open('/etc/nginx/common/redis-php72.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'redis.mustache',
|
self.app.render((data), 'redis.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
@@ -830,63 +831,65 @@ def site_package_check(self, stype):
|
|||||||
hhvm_file.write("upstream hhvm {\nserver 127.0.0.1:8000;\n"
|
hhvm_file.write("upstream hhvm {\nserver 127.0.0.1:8000;\n"
|
||||||
"server 127.0.0.1:9000 backup;\n}\n")
|
"server 127.0.0.1:9000 backup;\n}\n")
|
||||||
|
|
||||||
if self.app.pargs.php72:
|
if self.app.pargs.php73:
|
||||||
if (WOVariables.wo_platform_codename == 'wheezy' or WOVariables.wo_platform_codename == 'precise'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
||||||
Log.error(self,"PHP 7.0 is not supported in your Platform")
|
Log.debug(self, "Setting apt_packages variable for PHP 7.3")
|
||||||
|
if not WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
Log.debug(self, "Setting apt_packages variable for PHP 7.0")
|
apt_packages = apt_packages + WOVariables.wo_php73 + WOVariables.wo_php_extra
|
||||||
if not WOAptGet.is_installed(self, 'php7.2-fpm'):
|
else:
|
||||||
apt_packages = apt_packages + WOVariables.wo_php72 + WOVariables.wo_php_extra
|
Log.debug(self, "Setting apt_packages variable for PHP 7.3")
|
||||||
|
if not WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
|
apt_packages = apt_packages + WOVariables.wo_php73
|
||||||
|
|
||||||
if os.path.isdir("/etc/nginx/common") and (not
|
if os.path.isdir("/etc/nginx/common") and (not
|
||||||
os.path.isfile("/etc/nginx/common/php7.conf")):
|
os.path.isfile("/etc/nginx/common/php73.conf")):
|
||||||
data = dict()
|
data = dict()
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/locations-php7.conf')
|
'file /etc/nginx/common/locations-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/locations-php7.conf',
|
wo_nginx = open('/etc/nginx/common/locations-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'locations-php7.mustache',
|
self.app.render((data), 'locations-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/php7.conf')
|
'file /etc/nginx/common/php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/php7.conf',
|
wo_nginx = open('/etc/nginx/common/php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'php7.mustache',
|
self.app.render((data), 'php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/wpcommon-php7.conf')
|
'file /etc/nginx/common/wpcommon-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/wpcommon-php7.conf',
|
wo_nginx = open('/etc/nginx/common/wpcommon-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'wpcommon-php7.mustache',
|
self.app.render((data), 'wpcommon-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/wpfc-php7.conf')
|
'file /etc/nginx/common/wpfc-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/wpfc-php7.conf',
|
wo_nginx = open('/etc/nginx/common/wpfc-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'wpfc-php7.mustache',
|
self.app.render((data), 'wpfc-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/wpsc-php7.conf')
|
'file /etc/nginx/common/wpsc-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/wpsc-php7.conf',
|
wo_nginx = open('/etc/nginx/common/wpsc-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'wpsc-php7.mustache',
|
self.app.render((data), 'wpsc-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
if os.path.isfile("/etc/nginx/nginx.conf") and (not
|
if os.path.isfile("/etc/nginx/nginx.conf") and (not
|
||||||
os.path.isfile("/etc/nginx/common/redis-php7.conf")):
|
os.path.isfile("/etc/nginx/common/redis-php73.conf")):
|
||||||
data = dict()
|
data = dict()
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/redis-php7.conf')
|
'file /etc/nginx/common/redis-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/redis-php7.conf',
|
wo_nginx = open('/etc/nginx/common/redis-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'redis-php7.mustache',
|
self.app.render((data), 'redis-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
@@ -894,10 +897,10 @@ def site_package_check(self, stype):
|
|||||||
|
|
||||||
if os.path.isfile("/etc/nginx/conf.d/upstream.conf"):
|
if os.path.isfile("/etc/nginx/conf.d/upstream.conf"):
|
||||||
if not WOFileUtils.grep(self, "/etc/nginx/conf.d/upstream.conf",
|
if not WOFileUtils.grep(self, "/etc/nginx/conf.d/upstream.conf",
|
||||||
"php72"):
|
"php73"):
|
||||||
with open("/etc/nginx/conf.d/upstream.conf", "a") as php_file:
|
with open("/etc/nginx/conf.d/upstream.conf", "a") as php_file:
|
||||||
php_file.write("upstream php72 {\nserver 127.0.0.1:9072;\n}\n"
|
php_file.write("upstream php73 {\nserver unix:/var/run/php/php73-fpm.sock;\n}\n"
|
||||||
"upstream debug72 {\nserver 127.0.0.1:9172;\n}\n")
|
"upstream debug73 {\nserver 127.0.0.1:9173;\n}\n")
|
||||||
|
|
||||||
return(stack.install(apt_packages=apt_packages, packages=packages,
|
return(stack.install(apt_packages=apt_packages, packages=packages,
|
||||||
disp_msg=False))
|
disp_msg=False))
|
||||||
@@ -1032,7 +1035,7 @@ def detSitePar(opts):
|
|||||||
cachelist = list()
|
cachelist = list()
|
||||||
for key, val in opts.items():
|
for key, val in opts.items():
|
||||||
if val and key in ['html', 'php', 'mysql', 'wp',
|
if val and key in ['html', 'php', 'mysql', 'wp',
|
||||||
'wpsubdir', 'wpsubdomain','php72']:
|
'wpsubdir', 'wpsubdomain','php73']:
|
||||||
typelist.append(key)
|
typelist.append(key)
|
||||||
elif val and key in ['wpfc', 'wpsc', 'wpredis']:
|
elif val and key in ['wpfc', 'wpsc', 'wpredis']:
|
||||||
cachelist.append(key)
|
cachelist.append(key)
|
||||||
@@ -1046,7 +1049,7 @@ def detSitePar(opts):
|
|||||||
cachetype = 'basic'
|
cachetype = 'basic'
|
||||||
else:
|
else:
|
||||||
cachetype = cachelist[0]
|
cachetype = cachelist[0]
|
||||||
elif False not in [x in ('php72','mysql','html') for x in typelist]:
|
elif False not in [x in ('php73','mysql','html') for x in typelist]:
|
||||||
sitetype = 'mysql'
|
sitetype = 'mysql'
|
||||||
if not cachelist:
|
if not cachelist:
|
||||||
cachetype = 'basic'
|
cachetype = 'basic'
|
||||||
@@ -1058,7 +1061,7 @@ def detSitePar(opts):
|
|||||||
cachetype = 'basic'
|
cachetype = 'basic'
|
||||||
else:
|
else:
|
||||||
cachetype = cachelist[0]
|
cachetype = cachelist[0]
|
||||||
elif False not in [x in ('php72','mysql') for x in typelist]:
|
elif False not in [x in ('php73','mysql') for x in typelist]:
|
||||||
sitetype = 'mysql'
|
sitetype = 'mysql'
|
||||||
if not cachelist:
|
if not cachelist:
|
||||||
cachetype = 'basic'
|
cachetype = 'basic'
|
||||||
@@ -1076,8 +1079,8 @@ def detSitePar(opts):
|
|||||||
cachetype = 'basic'
|
cachetype = 'basic'
|
||||||
else:
|
else:
|
||||||
cachetype = cachelist[0]
|
cachetype = cachelist[0]
|
||||||
elif False not in [x in ('php72','html') for x in typelist]:
|
elif False not in [x in ('php73','html') for x in typelist]:
|
||||||
sitetype = 'php72'
|
sitetype = 'php73'
|
||||||
if not cachelist:
|
if not cachelist:
|
||||||
cachetype = 'basic'
|
cachetype = 'basic'
|
||||||
else:
|
else:
|
||||||
@@ -1094,19 +1097,19 @@ def detSitePar(opts):
|
|||||||
cachetype = 'basic'
|
cachetype = 'basic'
|
||||||
else:
|
else:
|
||||||
cachetype = cachelist[0]
|
cachetype = cachelist[0]
|
||||||
elif False not in [x in ('wp','php72') for x in typelist]:
|
elif False not in [x in ('wp','php73') for x in typelist]:
|
||||||
sitetype = 'wp'
|
sitetype = 'wp'
|
||||||
if not cachelist:
|
if not cachelist:
|
||||||
cachetype = 'basic'
|
cachetype = 'basic'
|
||||||
else:
|
else:
|
||||||
cachetype = cachelist[0]
|
cachetype = cachelist[0]
|
||||||
elif False not in [x in ('wpsubdir','php72') for x in typelist]:
|
elif False not in [x in ('wpsubdir','php73') for x in typelist]:
|
||||||
sitetype = 'wpsubdir'
|
sitetype = 'wpsubdir'
|
||||||
if not cachelist:
|
if not cachelist:
|
||||||
cachetype = 'basic'
|
cachetype = 'basic'
|
||||||
else:
|
else:
|
||||||
cachetype = cachelist[0]
|
cachetype = cachelist[0]
|
||||||
elif False not in [x in ('wpsubdomain','php72') for x in typelist]:
|
elif False not in [x in ('wpsubdomain','php73') for x in typelist]:
|
||||||
sitetype = 'wpsubdomain'
|
sitetype = 'wpsubdomain'
|
||||||
if not cachelist:
|
if not cachelist:
|
||||||
cachetype = 'basic'
|
cachetype = 'basic'
|
||||||
@@ -1118,7 +1121,7 @@ def detSitePar(opts):
|
|||||||
if not typelist and not cachelist:
|
if not typelist and not cachelist:
|
||||||
sitetype = None
|
sitetype = None
|
||||||
cachetype = None
|
cachetype = None
|
||||||
elif (not typelist or "php72" in typelist) and cachelist:
|
elif (not typelist or "php73" in typelist) and cachelist:
|
||||||
sitetype = 'wp'
|
sitetype = 'wp'
|
||||||
cachetype = cachelist[0]
|
cachetype = cachelist[0]
|
||||||
elif typelist and (not cachelist):
|
elif typelist and (not cachelist):
|
||||||
|
|||||||
@@ -56,9 +56,9 @@ class WOStackController(CementBaseController):
|
|||||||
# (['--nginxmainline'],
|
# (['--nginxmainline'],
|
||||||
# dict(help='Install Nginx mainline stack', action='store_true')),
|
# dict(help='Install Nginx mainline stack', action='store_true')),
|
||||||
(['--php'],
|
(['--php'],
|
||||||
dict(help='Install PHP stack', action='store_true')),
|
|
||||||
(['--php72'],
|
|
||||||
dict(help='Install PHP 7.2 stack', action='store_true')),
|
dict(help='Install PHP 7.2 stack', action='store_true')),
|
||||||
|
(['--php73'],
|
||||||
|
dict(help='Install PHP 7.3 stack', action='store_true')),
|
||||||
(['--mysql'],
|
(['--mysql'],
|
||||||
dict(help='Install MySQL stack', action='store_true')),
|
dict(help='Install MySQL stack', action='store_true')),
|
||||||
(['--hhvm'],
|
(['--hhvm'],
|
||||||
@@ -76,7 +76,7 @@ class WOStackController(CementBaseController):
|
|||||||
(['--phpredisadmin'],
|
(['--phpredisadmin'],
|
||||||
dict(help='Install phpRedisAdmin', action='store_true')),
|
dict(help='Install phpRedisAdmin', action='store_true')),
|
||||||
]
|
]
|
||||||
usage = "ee stack (command) [options]"
|
usage = "wo stack (command) [options]"
|
||||||
|
|
||||||
@expose(hide=True)
|
@expose(hide=True)
|
||||||
def default(self):
|
def default(self):
|
||||||
@@ -103,12 +103,12 @@ class WOStackController(CementBaseController):
|
|||||||
keyserver="keyserver.ubuntu.com")
|
keyserver="keyserver.ubuntu.com")
|
||||||
chars = ''.join(random.sample(string.ascii_letters, 8))
|
chars = ''.join(random.sample(string.ascii_letters, 8))
|
||||||
Log.debug(self, "Pre-seeding MySQL")
|
Log.debug(self, "Pre-seeding MySQL")
|
||||||
Log.debug(self, "echo \"mariadb-server-10.1 "
|
Log.debug(self, "echo \"mariadb-server-10.3 "
|
||||||
"mysql-server/root_password "
|
"mysql-server/root_password "
|
||||||
"password \" | "
|
"password \" | "
|
||||||
"debconf-set-selections")
|
"debconf-set-selections")
|
||||||
try:
|
try:
|
||||||
WOShellExec.cmd_exec(self, "echo \"mariadb-server-10.1 "
|
WOShellExec.cmd_exec(self, "echo \"mariadb-server-10.3 "
|
||||||
"mysql-server/root_password "
|
"mysql-server/root_password "
|
||||||
"password {chars}\" | "
|
"password {chars}\" | "
|
||||||
"debconf-set-selections"
|
"debconf-set-selections"
|
||||||
@@ -117,12 +117,12 @@ class WOStackController(CementBaseController):
|
|||||||
except CommandExecutionError as e:
|
except CommandExecutionError as e:
|
||||||
Log.error("Failed to initialize MySQL package")
|
Log.error("Failed to initialize MySQL package")
|
||||||
|
|
||||||
Log.debug(self, "echo \"mariadb-server-10.1 "
|
Log.debug(self, "echo \"mariadb-server-10.3 "
|
||||||
"mysql-server/root_password_again "
|
"mysql-server/root_password_again "
|
||||||
"password \" | "
|
"password \" | "
|
||||||
"debconf-set-selections")
|
"debconf-set-selections")
|
||||||
try:
|
try:
|
||||||
WOShellExec.cmd_exec(self, "echo \"mariadb-server-10.1 "
|
WOShellExec.cmd_exec(self, "echo \"mariadb-server-10.3 "
|
||||||
"mysql-server/root_password_again "
|
"mysql-server/root_password_again "
|
||||||
"password {chars}\" | "
|
"password {chars}\" | "
|
||||||
"debconf-set-selections"
|
"debconf-set-selections"
|
||||||
@@ -154,7 +154,8 @@ class WOStackController(CementBaseController):
|
|||||||
WORepo.add_key(self, WOVariables.wo_nginx_key)
|
WORepo.add_key(self, WOVariables.wo_nginx_key)
|
||||||
|
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
||||||
if set(WOVariables.wo_php72).issubset(set(apt_packages)):
|
if set(WOVariables.wo_php73).issubset(set(apt_packages)) \
|
||||||
|
or set(WOVariables.wo_php).issubset(set(apt_packages)):
|
||||||
Log.info(self, "Adding repository for PHP, please wait...")
|
Log.info(self, "Adding repository for PHP, please wait...")
|
||||||
Log.debug(self, 'Adding ppa for PHP')
|
Log.debug(self, 'Adding ppa for PHP')
|
||||||
WORepo.add(self, ppa=WOVariables.wo_php_repo)
|
WORepo.add(self, ppa=WOVariables.wo_php_repo)
|
||||||
@@ -173,8 +174,8 @@ class WOStackController(CementBaseController):
|
|||||||
WORepo.add(self, ppa=WOVariables.wo_php_repo)
|
WORepo.add(self, ppa=WOVariables.wo_php_repo)
|
||||||
|
|
||||||
if WOVariables.wo_platform_codename == 'jessie':
|
if WOVariables.wo_platform_codename == 'jessie':
|
||||||
if set(WOVariables.wo_php72).issubset(set(apt_packages)):
|
if set(WOVariables.wo_php73).issubset(set(apt_packages)):
|
||||||
Log.debug(self, 'Adding repo_url of php 7.0 for debian')
|
Log.debug(self, 'Adding repo_url of php 7.3 for debian')
|
||||||
WORepo.add(self, repo_url=WOVariables.wo_php_repo)
|
WORepo.add(self, repo_url=WOVariables.wo_php_repo)
|
||||||
Log.debug(self, 'Adding Dotdeb/php GPG key')
|
Log.debug(self, 'Adding Dotdeb/php GPG key')
|
||||||
WORepo.add_key(self, '89DF5277')
|
WORepo.add_key(self, '89DF5277')
|
||||||
@@ -243,8 +244,8 @@ class WOStackController(CementBaseController):
|
|||||||
self.app.render((data), 'fastcgi.mustache', out=wo_nginx)
|
self.app.render((data), 'fastcgi.mustache', out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
data = dict(php="9000", debug="9001", hhvm="8000",php72="9072",debug7="9172",
|
data = dict(php="9000", debug="9001", hhvm="8000", php73="9072", debug7="9172",
|
||||||
hhvmconf=False, php7conf= True if WOAptGet.is_installed(self,'php7.2-fpm') else False )
|
hhvmconf=False, php7conf=True if WOAptGet.is_installed(self, 'php7.3-fpm') else False)
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/conf.d/upstream.conf')
|
'file /etc/nginx/conf.d/upstream.conf')
|
||||||
wo_nginx = open('/etc/nginx/conf.d/upstream.conf',
|
wo_nginx = open('/etc/nginx/conf.d/upstream.conf',
|
||||||
@@ -252,6 +253,23 @@ class WOStackController(CementBaseController):
|
|||||||
self.app.render((data), 'upstream.mustache', out=wo_nginx)
|
self.app.render((data), 'upstream.mustache', out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
|
'file /etc/nginx/conf.d/map-wp.conf')
|
||||||
|
wo_nginx = open('/etc/nginx/conf.d/map-wp.conf',
|
||||||
|
encoding='utf-8', mode='w')
|
||||||
|
self.app.render((data), 'map-wp.mustache',
|
||||||
|
out=wo_nginx)
|
||||||
|
wo_nginx.close()
|
||||||
|
|
||||||
|
if not (os.path.isfile('/etc/nginx/conf.d/webp.conf')):
|
||||||
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
|
'file /etc/nginx/conf.d/webp.conf')
|
||||||
|
wo_nginx = open('/etc/nginx/conf.d/webp.conf',
|
||||||
|
encoding='utf-8', mode='w')
|
||||||
|
self.app.render((data), 'webp.mustache',
|
||||||
|
out=wo_nginx)
|
||||||
|
wo_nginx.close()
|
||||||
|
|
||||||
# Setup Nginx common directory
|
# Setup Nginx common directory
|
||||||
if not os.path.exists('/etc/nginx/common'):
|
if not os.path.exists('/etc/nginx/common'):
|
||||||
Log.debug(self, 'Creating directory'
|
Log.debug(self, 'Creating directory'
|
||||||
@@ -268,40 +286,40 @@ class WOStackController(CementBaseController):
|
|||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/locations.conf')
|
'file /etc/nginx/common/locations-php72.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/locations.conf',
|
wo_nginx = open('/etc/nginx/common/locations-php72.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'locations.mustache',
|
self.app.render((data), 'locations.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/php.conf')
|
'file /etc/nginx/common/php72.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/php.conf',
|
wo_nginx = open('/etc/nginx/common/php72.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'php.mustache',
|
self.app.render((data), 'php.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/wpcommon.conf')
|
'file /etc/nginx/common/wpcommon-php72.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/wpcommon.conf',
|
wo_nginx = open('/etc/nginx/common/wpcommon-php72.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'wpcommon.mustache',
|
self.app.render((data), 'wpcommon.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/wpfc.conf')
|
'file /etc/nginx/common/wpfc-php72.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/wpfc.conf',
|
wo_nginx = open('/etc/nginx/common/wpfc-php72.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'wpfc.mustache',
|
self.app.render((data), 'wpfc.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/wpsc.conf')
|
'file /etc/nginx/common/wpsc-php72.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/wpsc.conf',
|
wo_nginx = open('/etc/nginx/common/wpsc-php72.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'wpsc.mustache',
|
self.app.render((data), 'wpsc.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
@@ -320,48 +338,48 @@ class WOStackController(CementBaseController):
|
|||||||
os.path.isfile("/etc/nginx/common/php7.conf")):
|
os.path.isfile("/etc/nginx/common/php7.conf")):
|
||||||
# data = dict()
|
# data = dict()
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/locations-php7.conf')
|
'file /etc/nginx/common/locations-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/locations-php7.conf',
|
wo_nginx = open('/etc/nginx/common/locations-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'locations-php7.mustache',
|
self.app.render((data), 'locations-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/php7.conf')
|
'file /etc/nginx/common/php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/php7.conf',
|
wo_nginx = open('/etc/nginx/common/php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'php7.mustache',
|
self.app.render((data), 'php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/wpcommon-php7.conf')
|
'file /etc/nginx/common/wpcommon-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/wpcommon-php7.conf',
|
wo_nginx = open('/etc/nginx/common/wpcommon-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'wpcommon-php7.mustache',
|
self.app.render((data), 'wpcommon-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/wpfc-php7.conf')
|
'file /etc/nginx/common/wpfc-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/wpfc-php7.conf',
|
wo_nginx = open('/etc/nginx/common/wpfc-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'wpfc-php7.mustache',
|
self.app.render((data), 'wpfc-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/wpsc-php7.conf')
|
'file /etc/nginx/common/wpsc-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/wpsc-php7.conf',
|
wo_nginx = open('/etc/nginx/common/wpsc-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'wpsc-php7.mustache',
|
self.app.render((data), 'wpsc-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/redis-php7.conf')
|
'file /etc/nginx/common/redis-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/redis-php7.conf',
|
wo_nginx = open('/etc/nginx/common/redis-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'redis-php7.mustache',
|
self.app.render((data), 'redis-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
@@ -448,7 +466,7 @@ class WOStackController(CementBaseController):
|
|||||||
"{0}22222/cert/22222.key 2048"
|
"{0}22222/cert/22222.key 2048"
|
||||||
.format(WOVariables.wo_webroot))
|
.format(WOVariables.wo_webroot))
|
||||||
WOShellExec.cmd_exec(self, "openssl req -new -batch "
|
WOShellExec.cmd_exec(self, "openssl req -new -batch "
|
||||||
"-subj /commonName=127.0.0.1/ "
|
"-subj /commonName=localhost.localdomain/ "
|
||||||
"-key {0}22222/cert/22222.key "
|
"-key {0}22222/cert/22222.key "
|
||||||
"-out {0}22222/cert/"
|
"-out {0}22222/cert/"
|
||||||
"22222.csr"
|
"22222.csr"
|
||||||
@@ -474,7 +492,8 @@ class WOStackController(CementBaseController):
|
|||||||
.format(WOVariables.wo_webroot))
|
.format(WOVariables.wo_webroot))
|
||||||
|
|
||||||
except CommandExecutionError as e:
|
except CommandExecutionError as e:
|
||||||
Log.error(self, "Failed to generate HTTPS certificate for 22222")
|
Log.error(
|
||||||
|
self, "Failed to generate HTTPS certificate for 22222")
|
||||||
|
|
||||||
# Nginx Configation into GIT
|
# Nginx Configation into GIT
|
||||||
WOGit.add(self,
|
WOGit.add(self,
|
||||||
@@ -519,8 +538,8 @@ class WOStackController(CementBaseController):
|
|||||||
|
|
||||||
data = dict()
|
data = dict()
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/redis.conf')
|
'file /etc/nginx/common/redis-php72.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/redis.conf',
|
wo_nginx = open('/etc/nginx/common/redis-php72.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'redis.mustache',
|
self.app.render((data), 'redis.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
@@ -540,11 +559,11 @@ class WOStackController(CementBaseController):
|
|||||||
|
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
||||||
if os.path.isfile("/etc/nginx/nginx.conf") and (not
|
if os.path.isfile("/etc/nginx/nginx.conf") and (not
|
||||||
os.path.isfile("/etc/nginx/common/redis-php7.conf")):
|
os.path.isfile("/etc/nginx/common/redis-php73.conf")):
|
||||||
data = dict()
|
data = dict()
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/redis-php7.conf')
|
'file /etc/nginx/common/redis-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/redis-php7.conf',
|
wo_nginx = open('/etc/nginx/common/redis-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'redis-php7.mustache',
|
self.app.render((data), 'redis-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
@@ -568,55 +587,55 @@ class WOStackController(CementBaseController):
|
|||||||
"'$http_host \"$request\" $status $body_bytes_sent '\n"
|
"'$http_host \"$request\" $status $body_bytes_sent '\n"
|
||||||
"'\"$http_referer\" \"$http_user_agent\"';\n")
|
"'\"$http_referer\" \"$http_user_agent\"';\n")
|
||||||
# setup nginx common folder for php7
|
# setup nginx common folder for php7
|
||||||
if self.app.pargs.php72:
|
if self.app.pargs.php73:
|
||||||
if os.path.isdir("/etc/nginx/common") and (not
|
if os.path.isdir("/etc/nginx/common") and (not
|
||||||
os.path.isfile("/etc/nginx/common/php7.conf")):
|
os.path.isfile("/etc/nginx/common/php73.conf")):
|
||||||
data = dict()
|
data = dict()
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/locations-php7.conf')
|
'file /etc/nginx/common/locations-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/locations-php7.conf',
|
wo_nginx = open('/etc/nginx/common/locations-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'locations-php7.mustache',
|
self.app.render((data), 'locations-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/php7.conf')
|
'file /etc/nginx/common/php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/php7.conf',
|
wo_nginx = open('/etc/nginx/common/php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'php7.mustache',
|
self.app.render((data), 'php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/wpcommon-php7.conf')
|
'file /etc/nginx/common/wpcommon-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/wpcommon-php7.conf',
|
wo_nginx = open('/etc/nginx/common/wpcommon-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'wpcommon-php7.mustache',
|
self.app.render((data), 'wpcommon-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/wpfc-php7.conf')
|
'file /etc/nginx/common/wpfc-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/wpfc-php7.conf',
|
wo_nginx = open('/etc/nginx/common/wpfc-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'wpfc-php7.mustache',
|
self.app.render((data), 'wpfc-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/wpsc-php7.conf')
|
'file /etc/nginx/common/wpsc-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/wpsc-php7.conf',
|
wo_nginx = open('/etc/nginx/common/wpsc-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'wpsc-php7.mustache',
|
self.app.render((data), 'wpsc-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
wo_nginx.close()
|
wo_nginx.close()
|
||||||
|
|
||||||
if os.path.isdir("/etc/nginx/common") and (not os.path.isfile("/etc/nginx/common/redis-php7.conf")):
|
if os.path.isdir("/etc/nginx/common") and (not os.path.isfile("/etc/nginx/common/redis-php73.conf")):
|
||||||
data = dict()
|
data = dict()
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/redis-php7.conf')
|
'file /etc/nginx/common/redis-php73.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/redis-php7.conf',
|
wo_nginx = open('/etc/nginx/common/redis-php73.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'redis-php7.mustache',
|
self.app.render((data), 'redis-php7.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
@@ -624,10 +643,10 @@ class WOStackController(CementBaseController):
|
|||||||
|
|
||||||
if os.path.isfile("/etc/nginx/conf.d/upstream.conf"):
|
if os.path.isfile("/etc/nginx/conf.d/upstream.conf"):
|
||||||
if not WOFileUtils.grep(self, "/etc/nginx/conf.d/upstream.conf",
|
if not WOFileUtils.grep(self, "/etc/nginx/conf.d/upstream.conf",
|
||||||
"php72"):
|
"php73"):
|
||||||
with open("/etc/nginx/conf.d/upstream.conf", "a") as php_file:
|
with open("/etc/nginx/conf.d/upstream.conf", "a") as php_file:
|
||||||
php_file.write("upstream php72 {\nserver 127.0.0.1:9072;\n}\n"
|
php_file.write("upstream php73 {\nserver unix:/var/run/php/php73-fpm.sock;\n}\n"
|
||||||
"upstream debug72 {\nserver 127.0.0.1:9172;\n}\n")
|
"upstream debug73 {\nserver 127.0.0.1:9173;\n}\n")
|
||||||
|
|
||||||
if set(WOVariables.wo_hhvm).issubset(set(apt_packages)):
|
if set(WOVariables.wo_hhvm).issubset(set(apt_packages)):
|
||||||
|
|
||||||
@@ -708,12 +727,12 @@ class WOStackController(CementBaseController):
|
|||||||
|
|
||||||
if set(WOVariables.wo_redis).issubset(set(apt_packages)):
|
if set(WOVariables.wo_redis).issubset(set(apt_packages)):
|
||||||
if os.path.isfile("/etc/nginx/nginx.conf") and (not
|
if os.path.isfile("/etc/nginx/nginx.conf") and (not
|
||||||
os.path.isfile("/etc/nginx/common/redis.conf")):
|
os.path.isfile("/etc/nginx/common/redis-php72.conf")):
|
||||||
|
|
||||||
data = dict()
|
data = dict()
|
||||||
Log.debug(self, 'Writting the nginx configuration to '
|
Log.debug(self, 'Writting the nginx configuration to '
|
||||||
'file /etc/nginx/common/redis.conf')
|
'file /etc/nginx/common/redis-php72.conf')
|
||||||
wo_nginx = open('/etc/nginx/common/redis.conf',
|
wo_nginx = open('/etc/nginx/common/redis-php72.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'redis.mustache',
|
self.app.render((data), 'redis.mustache',
|
||||||
out=wo_nginx)
|
out=wo_nginx)
|
||||||
@@ -773,7 +792,7 @@ class WOStackController(CementBaseController):
|
|||||||
# Parse /etc/php/7.2/fpm/php-fpm.conf
|
# Parse /etc/php/7.2/fpm/php-fpm.conf
|
||||||
data = dict(pid="/run/php/php7.2-fpm.pid", error_log="/var/log/php/7.2/fpm.log",
|
data = dict(pid="/run/php/php7.2-fpm.pid", error_log="/var/log/php/7.2/fpm.log",
|
||||||
include="/etc/php/7.2/fpm/pool.d/*.conf")
|
include="/etc/php/7.2/fpm/pool.d/*.conf")
|
||||||
Log.debug(self, "writting php5 configuration into "
|
Log.debug(self, "writting php7.2 configuration into "
|
||||||
"/etc/php/7.2/fpm/php-fpm.conf")
|
"/etc/php/7.2/fpm/php-fpm.conf")
|
||||||
wo_php_fpm = open('/etc/php/7.2/fpm/php-fpm.conf',
|
wo_php_fpm = open('/etc/php/7.2/fpm/php-fpm.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
@@ -793,7 +812,10 @@ class WOStackController(CementBaseController):
|
|||||||
config['www']['pm.max_spare_servers'] = '5'
|
config['www']['pm.max_spare_servers'] = '5'
|
||||||
config['www']['request_terminate_timeout'] = '100'
|
config['www']['request_terminate_timeout'] = '100'
|
||||||
config['www']['pm'] = 'ondemand'
|
config['www']['pm'] = 'ondemand'
|
||||||
config['www']['listen'] = '127.0.0.1:9072'
|
config['www']['chdir'] = '/'
|
||||||
|
config['www']['prefix'] = '/var/run/php'
|
||||||
|
config['www']['listen'] = 'php72-fpm.sock'
|
||||||
|
config['www']['listen.backlog'] = '32768'
|
||||||
with codecs.open('/etc/php/7.2/fpm/pool.d/www.conf',
|
with codecs.open('/etc/php/7.2/fpm/pool.d/www.conf',
|
||||||
encoding='utf-8', mode='w') as configfile:
|
encoding='utf-8', mode='w') as configfile:
|
||||||
Log.debug(self, "Writing PHP 7.2 configuration into "
|
Log.debug(self, "Writing PHP 7.2 configuration into "
|
||||||
@@ -870,41 +892,41 @@ class WOStackController(CementBaseController):
|
|||||||
WOGit.add(self, ["/etc/php"], msg="Adding PHP into Git")
|
WOGit.add(self, ["/etc/php"], msg="Adding PHP into Git")
|
||||||
WOService.restart_service(self, 'php7.2-fpm')
|
WOService.restart_service(self, 'php7.2-fpm')
|
||||||
|
|
||||||
#PHP7.0 configuration for debian
|
# PHP7.3 configuration for debian
|
||||||
if (WOVariables.wo_platform_codename == 'jessie' ) and set(WOVariables.wo_php72).issubset(set(apt_packages)):
|
if (WOVariables.wo_platform_codename == 'jessie') and set(WOVariables.wo_php73).issubset(set(apt_packages)):
|
||||||
# Create log directories
|
# Create log directories
|
||||||
if not os.path.exists('/var/log/php/7.2/'):
|
if not os.path.exists('/var/log/php/7.3/'):
|
||||||
Log.debug(self, 'Creating directory /var/log/php/7.2/')
|
Log.debug(self, 'Creating directory /var/log/php/7.3/')
|
||||||
os.makedirs('/var/log/php/7.2/')
|
os.makedirs('/var/log/php/7.3/')
|
||||||
|
|
||||||
# Parse etc/php/7.2/fpm/php.ini
|
# Parse etc/php/7.3/fpm/php.ini
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
Log.debug(self, "configuring php file /etc/php/7.2/fpm/php.ini")
|
Log.debug(self, "configuring php file /etc/php/7.3/fpm/php.ini")
|
||||||
config.read('/etc/php/7.2/fpm/php.ini')
|
config.read('/etc/php/7.3/fpm/php.ini')
|
||||||
config['PHP']['expose_php'] = 'Off'
|
config['PHP']['expose_php'] = 'Off'
|
||||||
config['PHP']['post_max_size'] = '100M'
|
config['PHP']['post_max_size'] = '100M'
|
||||||
config['PHP']['upload_max_filesize'] = '100M'
|
config['PHP']['upload_max_filesize'] = '100M'
|
||||||
config['PHP']['max_execution_time'] = '300'
|
config['PHP']['max_execution_time'] = '300'
|
||||||
config['PHP']['date.timezone'] = WOVariables.wo_timezone
|
config['PHP']['date.timezone'] = WOVariables.wo_timezone
|
||||||
with open('/etc/php/7.2/fpm/php.ini',
|
with open('/etc/php/7.3/fpm/php.ini',
|
||||||
encoding='utf-8', mode='w') as configfile:
|
encoding='utf-8', mode='w') as configfile:
|
||||||
Log.debug(self, "Writting php configuration into "
|
Log.debug(self, "Writting php configuration into "
|
||||||
"/etc/php/7.2/fpm/php.ini")
|
"/etc/php/7.3/fpm/php.ini")
|
||||||
config.write(configfile)
|
config.write(configfile)
|
||||||
|
|
||||||
# Parse /etc/php/7.2/fpm/php-fpm.conf
|
# Parse /etc/php/7.3/fpm/php-fpm.conf
|
||||||
data = dict(pid="/run/php/php7.2-fpm.pid", error_log="/var/log/php7.2-fpm.log",
|
data = dict(pid="/run/php/php7.3-fpm.pid", error_log="/var/log/php7.3-fpm.log",
|
||||||
include="/etc/php/7.2/fpm/pool.d/*.conf")
|
include="/etc/php/7.3/fpm/pool.d/*.conf")
|
||||||
Log.debug(self, "writting php 7.0 configuration into "
|
Log.debug(self, "writting php 7.3 configuration into "
|
||||||
"/etc/php/7.2/fpm/php-fpm.conf")
|
"/etc/php/7.3/fpm/php-fpm.conf")
|
||||||
wo_php_fpm = open('/etc/php/7.2/fpm/php-fpm.conf',
|
wo_php_fpm = open('/etc/php/7.3/fpm/php-fpm.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'php-fpm.mustache', out=wo_php_fpm)
|
self.app.render((data), 'php-fpm.mustache', out=wo_php_fpm)
|
||||||
wo_php_fpm.close()
|
wo_php_fpm.close()
|
||||||
|
|
||||||
# Parse /etc/php/7.2/fpm/pool.d/www.conf
|
# Parse /etc/php/7.3/fpm/pool.d/www.conf
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config.read_file(codecs.open('/etc/php/7.2/fpm/pool.d/www.conf',
|
config.read_file(codecs.open('/etc/php/7.3/fpm/pool.d/www.conf',
|
||||||
"r", "utf8"))
|
"r", "utf8"))
|
||||||
config['www']['ping.path'] = '/ping'
|
config['www']['ping.path'] = '/ping'
|
||||||
config['www']['pm.status_path'] = '/status'
|
config['www']['pm.status_path'] = '/status'
|
||||||
@@ -915,31 +937,34 @@ class WOStackController(CementBaseController):
|
|||||||
config['www']['pm.max_spare_servers'] = '30'
|
config['www']['pm.max_spare_servers'] = '30'
|
||||||
config['www']['request_terminate_timeout'] = '300'
|
config['www']['request_terminate_timeout'] = '300'
|
||||||
config['www']['pm'] = 'ondemand'
|
config['www']['pm'] = 'ondemand'
|
||||||
config['www']['listen'] = '127.0.0.1:9072'
|
config['www']['chdir'] = '/'
|
||||||
with codecs.open('/etc/php/7.2/fpm/pool.d/www.conf',
|
config['www']['prefix'] = '/var/run/php'
|
||||||
|
config['www']['listen'] = 'php73-fpm.sock'
|
||||||
|
config['www']['listen.backlog'] = '32768'
|
||||||
|
with codecs.open('/etc/php/7.3/fpm/pool.d/www.conf',
|
||||||
encoding='utf-8', mode='w') as configfile:
|
encoding='utf-8', mode='w') as configfile:
|
||||||
Log.debug(self, "writting PHP5 configuration into "
|
Log.debug(self, "writting PHP 7.3 configuration into "
|
||||||
"/etc/php/7.2/fpm/pool.d/www.conf")
|
"/etc/php/7.3/fpm/pool.d/www.conf")
|
||||||
config.write(configfile)
|
config.write(configfile)
|
||||||
|
|
||||||
# Generate /etc/php/7.2/fpm/pool.d/debug.conf
|
# Generate /etc/php/7.3/fpm/pool.d/debug.conf
|
||||||
WOFileUtils.copyfile(self, "/etc/php/7.2/fpm/pool.d/www.conf",
|
WOFileUtils.copyfile(self, "/etc/php/7.3/fpm/pool.d/www.conf",
|
||||||
"/etc/php/7.2/fpm/pool.d/debug.conf")
|
"/etc/php/7.3/fpm/pool.d/debug.conf")
|
||||||
WOFileUtils.searchreplace(self, "/etc/php/7.2/fpm/pool.d/"
|
WOFileUtils.searchreplace(self, "/etc/php/7.3/fpm/pool.d/"
|
||||||
"debug.conf", "[www]", "[debug]")
|
"debug.conf", "[www]", "[debug]")
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config.read('/etc/php/7.2/fpm/pool.d/debug.conf')
|
config.read('/etc/php/7.3/fpm/pool.d/debug.conf')
|
||||||
config['debug']['listen'] = '127.0.0.1:9172'
|
config['debug']['listen'] = '127.0.0.1:9173'
|
||||||
config['debug']['rlimit_core'] = 'unlimited'
|
config['debug']['rlimit_core'] = 'unlimited'
|
||||||
config['debug']['slowlog'] = '/var/log/php/7.2/slow.log'
|
config['debug']['slowlog'] = '/var/log/php/7.3/slow.log'
|
||||||
config['debug']['request_slowlog_timeout'] = '10s'
|
config['debug']['request_slowlog_timeout'] = '10s'
|
||||||
with open('/etc/php/7.2/fpm/pool.d/debug.conf',
|
with open('/etc/php/7.3/fpm/pool.d/debug.conf',
|
||||||
encoding='utf-8', mode='w') as confifile:
|
encoding='utf-8', mode='w') as confifile:
|
||||||
Log.debug(self, "writting PHP5 configuration into "
|
Log.debug(self, "writting PHP 7.3 configuration into "
|
||||||
"/etc/php/7.2/fpm/pool.d/debug.conf")
|
"/etc/php/7.3/fpm/pool.d/debug.conf")
|
||||||
config.write(confifile)
|
config.write(confifile)
|
||||||
|
|
||||||
with open("/etc/php/7.2/fpm/pool.d/debug.conf",
|
with open("/etc/php/7.3/fpm/pool.d/debug.conf",
|
||||||
encoding='utf-8', mode='a') as myfile:
|
encoding='utf-8', mode='a') as myfile:
|
||||||
myfile.write("php_admin_value[xdebug.profiler_output_dir] "
|
myfile.write("php_admin_value[xdebug.profiler_output_dir] "
|
||||||
"= /tmp/ \nphp_admin_value[xdebug.profiler_"
|
"= /tmp/ \nphp_admin_value[xdebug.profiler_"
|
||||||
@@ -949,8 +974,8 @@ class WOStackController(CementBaseController):
|
|||||||
"profiler_enable] = off\n")
|
"profiler_enable] = off\n")
|
||||||
|
|
||||||
# Disable xdebug
|
# Disable xdebug
|
||||||
if not WOShellExec.cmd_exec(self, "grep -q \';zend_extension\' /etc/php/7.2/mods-available/xdebug.ini"):
|
if not WOShellExec.cmd_exec(self, "grep -q \';zend_extension\' /etc/php/7.3/mods-available/xdebug.ini"):
|
||||||
WOFileUtils.searchreplace(self, "/etc/php/7.2/mods-available/"
|
WOFileUtils.searchreplace(self, "/etc/php/7.3/mods-available/"
|
||||||
"xdebug.ini",
|
"xdebug.ini",
|
||||||
"zend_extension",
|
"zend_extension",
|
||||||
";zend_extension")
|
";zend_extension")
|
||||||
@@ -990,43 +1015,43 @@ class WOStackController(CementBaseController):
|
|||||||
WOVariables.wo_php_user, recursive=True)
|
WOVariables.wo_php_user, recursive=True)
|
||||||
|
|
||||||
WOGit.add(self, ["/etc/php"], msg="Adding PHP into Git")
|
WOGit.add(self, ["/etc/php"], msg="Adding PHP into Git")
|
||||||
WOService.restart_service(self, 'php7.2-fpm')
|
WOService.restart_service(self, 'php7.3-fpm')
|
||||||
|
|
||||||
#preconfiguration for php7.2
|
# preconfiguration for php7.3
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') and set(WOVariables.wo_php72).issubset(set(apt_packages)):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic') and set(WOVariables.wo_php73).issubset(set(apt_packages)):
|
||||||
# Create log directories
|
# Create log directories
|
||||||
if not os.path.exists('/var/log/php/7.2/'):
|
if not os.path.exists('/var/log/php/7.3/'):
|
||||||
Log.debug(self, 'Creating directory /var/log/php/7.2/')
|
Log.debug(self, 'Creating directory /var/log/php/7.3/')
|
||||||
os.makedirs('/var/log/php/7.2/')
|
os.makedirs('/var/log/php/7.3/')
|
||||||
|
|
||||||
# Parse etc/php/7.2/fpm/php.ini
|
# Parse etc/php/7.2/fpm/php.ini
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
Log.debug(self, "configuring php file /etc/php/7.2/fpm/php.ini")
|
Log.debug(self, "configuring php file /etc/php/7.3/fpm/php.ini")
|
||||||
config.read('/etc/php/7.2/fpm/php.ini')
|
config.read('/etc/php/7.3/fpm/php.ini')
|
||||||
config['PHP']['expose_php'] = 'Off'
|
config['PHP']['expose_php'] = 'Off'
|
||||||
config['PHP']['post_max_size'] = '64M'
|
config['PHP']['post_max_size'] = '64M'
|
||||||
config['PHP']['upload_max_filesize'] = '64M'
|
config['PHP']['upload_max_filesize'] = '64M'
|
||||||
config['PHP']['max_execution_time'] = '30'
|
config['PHP']['max_execution_time'] = '30'
|
||||||
config['PHP']['date.timezone'] = WOVariables.wo_timezone
|
config['PHP']['date.timezone'] = WOVariables.wo_timezone
|
||||||
with open('/etc/php/7.2/fpm/php.ini',
|
with open('/etc/php/7.3/fpm/php.ini',
|
||||||
encoding='utf-8', mode='w') as configfile:
|
encoding='utf-8', mode='w') as configfile:
|
||||||
Log.debug(self, "Writting php configuration into "
|
Log.debug(self, "Writting php configuration into "
|
||||||
"/etc/php/7.2/fpm/php.ini")
|
"/etc/php/7.3/fpm/php.ini")
|
||||||
config.write(configfile)
|
config.write(configfile)
|
||||||
|
|
||||||
# Parse /etc/php/7.2/fpm/php-fpm.conf
|
# Parse /etc/php/7.2/fpm/php-fpm.conf
|
||||||
data = dict(pid="/run/php/php7.2-fpm.pid", error_log="/var/log/php/7.2/fpm.log",
|
data = dict(pid="/run/php/php7.3-fpm.pid", error_log="/var/log/php/7.3/fpm.log",
|
||||||
include="/etc/php/7.2/fpm/pool.d/*.conf")
|
include="/etc/php/7.3/fpm/pool.d/*.conf")
|
||||||
Log.debug(self, "writting php 7.0 configuration into "
|
Log.debug(self, "writting php 7.3 configuration into "
|
||||||
"/etc/php/7.2/fpm/php-fpm.conf")
|
"/etc/php/7.3/fpm/php-fpm.conf")
|
||||||
wo_php_fpm = open('/etc/php/7.2/fpm/php-fpm.conf',
|
wo_php_fpm = open('/etc/php/7.3/fpm/php-fpm.conf',
|
||||||
encoding='utf-8', mode='w')
|
encoding='utf-8', mode='w')
|
||||||
self.app.render((data), 'php-fpm.mustache', out=wo_php_fpm)
|
self.app.render((data), 'php-fpm.mustache', out=wo_php_fpm)
|
||||||
wo_php_fpm.close()
|
wo_php_fpm.close()
|
||||||
|
|
||||||
# Parse /etc/php/7.2/fpm/pool.d/www.conf
|
# Parse /etc/php/7.3/fpm/pool.d/www.conf
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config.read_file(codecs.open('/etc/php/7.2/fpm/pool.d/www.conf',
|
config.read_file(codecs.open('/etc/php/7.3/fpm/pool.d/www.conf',
|
||||||
"r", "utf8"))
|
"r", "utf8"))
|
||||||
config['www']['ping.path'] = '/ping'
|
config['www']['ping.path'] = '/ping'
|
||||||
config['www']['pm.status_path'] = '/status'
|
config['www']['pm.status_path'] = '/status'
|
||||||
@@ -1037,31 +1062,34 @@ class WOStackController(CementBaseController):
|
|||||||
config['www']['pm.max_spare_servers'] = '5'
|
config['www']['pm.max_spare_servers'] = '5'
|
||||||
config['www']['request_terminate_timeout'] = '100'
|
config['www']['request_terminate_timeout'] = '100'
|
||||||
config['www']['pm'] = 'ondemand'
|
config['www']['pm'] = 'ondemand'
|
||||||
config['www']['listen'] = '127.0.0.1:9072'
|
config['www']['chdir'] = '/'
|
||||||
with codecs.open('/etc/php/7.2/fpm/pool.d/www.conf',
|
config['www']['prefix'] = '/var/run/php'
|
||||||
|
config['www']['listen'] = 'php73-fpm.sock'
|
||||||
|
config['www']['listen.backlog'] = '32768'
|
||||||
|
with codecs.open('/etc/php/7.3/fpm/pool.d/www.conf',
|
||||||
encoding='utf-8', mode='w') as configfile:
|
encoding='utf-8', mode='w') as configfile:
|
||||||
Log.debug(self, "writting PHP5 configuration into "
|
Log.debug(self, "writting PHP 7.3 configuration into "
|
||||||
"/etc/php/7.2/fpm/pool.d/www.conf")
|
"/etc/php/7.3/fpm/pool.d/www.conf")
|
||||||
config.write(configfile)
|
config.write(configfile)
|
||||||
|
|
||||||
# Generate /etc/php/7.2/fpm/pool.d/debug.conf
|
# Generate /etc/php/7.3/fpm/pool.d/debug.conf
|
||||||
WOFileUtils.copyfile(self, "/etc/php/7.2/fpm/pool.d/www.conf",
|
WOFileUtils.copyfile(self, "/etc/php/7.3/fpm/pool.d/www.conf",
|
||||||
"/etc/php/7.2/fpm/pool.d/debug.conf")
|
"/etc/php/7.3/fpm/pool.d/debug.conf")
|
||||||
WOFileUtils.searchreplace(self, "/etc/php/7.2/fpm/pool.d/"
|
WOFileUtils.searchreplace(self, "/etc/php/7.3/fpm/pool.d/"
|
||||||
"debug.conf", "[www]", "[debug]")
|
"debug.conf", "[www]", "[debug]")
|
||||||
config = configparser.ConfigParser()
|
config = configparser.ConfigParser()
|
||||||
config.read('/etc/php/7.2/fpm/pool.d/debug.conf')
|
config.read('/etc/php/7.3/fpm/pool.d/debug.conf')
|
||||||
config['debug']['listen'] = '127.0.0.1:9172'
|
config['debug']['listen'] = '127.0.0.1:9173'
|
||||||
config['debug']['rlimit_core'] = 'unlimited'
|
config['debug']['rlimit_core'] = 'unlimited'
|
||||||
config['debug']['slowlog'] = '/var/log/php/7.2/slow.log'
|
config['debug']['slowlog'] = '/var/log/php/7.3/slow.log'
|
||||||
config['debug']['request_slowlog_timeout'] = '10s'
|
config['debug']['request_slowlog_timeout'] = '10s'
|
||||||
with open('/etc/php/7.2/fpm/pool.d/debug.conf',
|
with open('/etc/php/7.3/fpm/pool.d/debug.conf',
|
||||||
encoding='utf-8', mode='w') as confifile:
|
encoding='utf-8', mode='w') as confifile:
|
||||||
Log.debug(self, "writting PHP5 configuration into "
|
Log.debug(self, "writting PHP 7.3 configuration into "
|
||||||
"/etc/php/7.2/fpm/pool.d/debug.conf")
|
"/etc/php/7.3/fpm/pool.d/debug.conf")
|
||||||
config.write(confifile)
|
config.write(confifile)
|
||||||
|
|
||||||
with open("/etc/php/7.2/fpm/pool.d/debug.conf",
|
with open("/etc/php/7.3/fpm/pool.d/debug.conf",
|
||||||
encoding='utf-8', mode='a') as myfile:
|
encoding='utf-8', mode='a') as myfile:
|
||||||
myfile.write("php_admin_value[xdebug.profiler_output_dir] "
|
myfile.write("php_admin_value[xdebug.profiler_output_dir] "
|
||||||
"= /tmp/ \nphp_admin_value[xdebug.profiler_"
|
"= /tmp/ \nphp_admin_value[xdebug.profiler_"
|
||||||
@@ -1071,8 +1099,8 @@ class WOStackController(CementBaseController):
|
|||||||
"profiler_enable] = off\n")
|
"profiler_enable] = off\n")
|
||||||
|
|
||||||
# Disable xdebug
|
# Disable xdebug
|
||||||
if not WOShellExec.cmd_exec(self, "grep -q \';zend_extension\' /etc/php/7.2/mods-available/xdebug.ini"):
|
if not WOShellExec.cmd_exec(self, "grep -q \';zend_extension\' /etc/php/7.3/mods-available/xdebug.ini"):
|
||||||
WOFileUtils.searchreplace(self, "/etc/php/7.2/mods-available/"
|
WOFileUtils.searchreplace(self, "/etc/php/7.3/mods-available/"
|
||||||
"xdebug.ini",
|
"xdebug.ini",
|
||||||
"zend_extension",
|
"zend_extension",
|
||||||
";zend_extension")
|
";zend_extension")
|
||||||
@@ -1112,9 +1140,7 @@ class WOStackController(CementBaseController):
|
|||||||
WOVariables.wo_php_user, recursive=True)
|
WOVariables.wo_php_user, recursive=True)
|
||||||
|
|
||||||
WOGit.add(self, ["/etc/php"], msg="Adding PHP into Git")
|
WOGit.add(self, ["/etc/php"], msg="Adding PHP into Git")
|
||||||
WOService.restart_service(self, 'php7.2-fpm')
|
WOService.restart_service(self, 'php7.3-fpm')
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if set(WOVariables.wo_mysql).issubset(set(apt_packages)):
|
if set(WOVariables.wo_mysql).issubset(set(apt_packages)):
|
||||||
if not os.path.isfile("/etc/mysql/my.cnf"):
|
if not os.path.isfile("/etc/mysql/my.cnf"):
|
||||||
@@ -1142,9 +1168,9 @@ class WOStackController(CementBaseController):
|
|||||||
WOService.reload_service(self, 'mysql')
|
WOService.reload_service(self, 'mysql')
|
||||||
|
|
||||||
if len(packages):
|
if len(packages):
|
||||||
if any('/usr/bin/wp' == x[1] for x in packages):
|
if any('/usr/local/bin/wp' == x[1] for x in packages):
|
||||||
Log.debug(self, "Setting Privileges to /usr/bin/wp file ")
|
Log.debug(self, "Setting Privileges to /usr/local/bin/wp file ")
|
||||||
WOFileUtils.chmod(self, "/usr/bin/wp", 0o775)
|
WOFileUtils.chmod(self, "/usr/local/bin/wp", 0o775)
|
||||||
|
|
||||||
if any('/tmp/pma.tar.gz' == x[1]
|
if any('/tmp/pma.tar.gz' == x[1]
|
||||||
for x in packages):
|
for x in packages):
|
||||||
@@ -1170,7 +1196,7 @@ class WOStackController(CementBaseController):
|
|||||||
.format(WOVariables.wo_webroot))
|
.format(WOVariables.wo_webroot))
|
||||||
blowfish_key = ''.join([random.choice
|
blowfish_key = ''.join([random.choice
|
||||||
(string.ascii_letters + string.digits)
|
(string.ascii_letters + string.digits)
|
||||||
for n in range(10)])
|
for n in range(25)])
|
||||||
WOFileUtils.searchreplace(self,
|
WOFileUtils.searchreplace(self,
|
||||||
'{0}22222/htdocs/db/pma/config.inc.php'
|
'{0}22222/htdocs/db/pma/config.inc.php'
|
||||||
.format(WOVariables.wo_webroot),
|
.format(WOVariables.wo_webroot),
|
||||||
@@ -1192,16 +1218,16 @@ class WOStackController(CementBaseController):
|
|||||||
WOVariables.wo_php_user,
|
WOVariables.wo_php_user,
|
||||||
WOVariables.wo_php_user,
|
WOVariables.wo_php_user,
|
||||||
recursive=True)
|
recursive=True)
|
||||||
if any('/tmp/memcache.tar.gz' == x[1]
|
if any('/tmp/memcached.tar.gz' == x[1]
|
||||||
for x in packages):
|
for x in packages):
|
||||||
Log.debug(self, "Extracting memcache.tar.gz to location"
|
Log.debug(self, "Extracting memcached.tar.gz to location"
|
||||||
" {0}22222/htdocs/cache/memcache "
|
" {0}22222/htdocs/cache/memcached "
|
||||||
.format(WOVariables.wo_webroot))
|
.format(WOVariables.wo_webroot))
|
||||||
WOExtract.extract(self, '/tmp/memcache.tar.gz',
|
WOExtract.extract(self, '/tmp/memcached.tar.gz',
|
||||||
'{0}22222/htdocs/cache/memcache'
|
'{0}22222/htdocs/cache/memcached'
|
||||||
.format(WOVariables.wo_webroot))
|
.format(WOVariables.wo_webroot))
|
||||||
Log.debug(self, "Setting Privileges to "
|
Log.debug(self, "Setting Privileges to "
|
||||||
"{0}22222/htdocs/cache/memcache file"
|
"{0}22222/htdocs/cache/memcached file"
|
||||||
.format(WOVariables.wo_webroot))
|
.format(WOVariables.wo_webroot))
|
||||||
WOFileUtils.chown(self, '{0}22222'
|
WOFileUtils.chown(self, '{0}22222'
|
||||||
.format(WOVariables.wo_webroot),
|
.format(WOVariables.wo_webroot),
|
||||||
@@ -1343,7 +1369,7 @@ class WOStackController(CementBaseController):
|
|||||||
(not self.app.pargs.phpmyadmin) and (not self.app.pargs.hhvm) and
|
(not self.app.pargs.phpmyadmin) and (not self.app.pargs.hhvm) and
|
||||||
(not self.app.pargs.adminer) and (not self.app.pargs.utils) and
|
(not self.app.pargs.adminer) and (not self.app.pargs.utils) and
|
||||||
(not self.app.pargs.redis) and (not self.app.pargs.phpredisadmin) and
|
(not self.app.pargs.redis) and (not self.app.pargs.phpredisadmin) and
|
||||||
(not self.app.pargs.php72)):
|
(not self.app.pargs.php73)):
|
||||||
self.app.pargs.web = True
|
self.app.pargs.web = True
|
||||||
self.app.pargs.admin = True
|
self.app.pargs.admin = True
|
||||||
|
|
||||||
@@ -1392,44 +1418,48 @@ class WOStackController(CementBaseController):
|
|||||||
Log.debug(self, "Nginx Stable already installed")
|
Log.debug(self, "Nginx Stable already installed")
|
||||||
|
|
||||||
if self.app.pargs.php:
|
if self.app.pargs.php:
|
||||||
Log.debug(self, "Setting apt_packages variable for PHP")
|
Log.debug(self, "Setting apt_packages variable for PHP 7.2")
|
||||||
if not (WOAptGet.is_installed(self, 'php5-fpm') or WOAptGet.is_installed(self, 'php5.6-fpm')):
|
if not (WOAptGet.is_installed(self, 'php7.2-fpm') or WOAptGet.is_installed(self, 'php7.2-fpm')):
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
||||||
apt_packages = apt_packages + WOVariables.wo_php72 + WOVariables.wo_php_extra
|
apt_packages = apt_packages + WOVariables.wo_php + WOVariables.wo_php_extra
|
||||||
else:
|
else:
|
||||||
apt_packages = apt_packages + WOVariables.wo_php
|
apt_packages = apt_packages + WOVariables.wo_php
|
||||||
else:
|
else:
|
||||||
Log.debug(self, "PHP already installed")
|
Log.debug(self, "PHP 7.2 already installed")
|
||||||
Log.info(self, "PHP already installed")
|
Log.info(self, "PHP 7.2 already installed")
|
||||||
|
|
||||||
#PHP 7.0 for Debian (jessie+)
|
# PHP 7.3 for Debian (jessie+)
|
||||||
if self.app.pargs.php72 and WOVariables.wo_platform_distro == 'debian':
|
if self.app.pargs.php73 and WOVariables.wo_platform_distro == 'debian':
|
||||||
if (WOVariables.wo_platform_codename == 'jessie'):
|
if (WOVariables.wo_platform_codename == 'jessie'):
|
||||||
Log.debug(self, "Setting apt_packages variable for PHP 7.2")
|
Log.debug(self, "Setting apt_packages variable for PHP 7.3")
|
||||||
|
if not WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
|
apt_packages = apt_packages + WOVariables.wo_php73
|
||||||
if not WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if not WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
apt_packages = apt_packages + WOVariables.wo_php72
|
|
||||||
if not WOAptGet.is_installed(self, 'php5-fpm'):
|
|
||||||
apt_packages = apt_packages + WOVariables.wo_php
|
apt_packages = apt_packages + WOVariables.wo_php
|
||||||
else:
|
else:
|
||||||
Log.debug(self, "PHP 7.2 already installed")
|
Log.debug(self, "PHP 7.3 already installed")
|
||||||
Log.info(self, "PHP 7.2 already installed")
|
Log.info(self, "PHP 7.3 already installed")
|
||||||
else:
|
else:
|
||||||
Log.debug(self, "PHP 7.2 Not Available for your Distribution")
|
Log.debug(
|
||||||
Log.info(self, "PHP 7.2 Not Available for your Distribution")
|
self, "PHP 7.3 Not Available for your Distribution")
|
||||||
|
Log.info(self, "PHP 7.3 Not Available for your Distribution")
|
||||||
|
|
||||||
#PHP 7.0 for Ubuntu
|
# PHP 7.3 for Ubuntu
|
||||||
if self.app.pargs.php72 and not WOVariables.wo_platform_distro == 'debian':
|
if self.app.pargs.php73 and WOVariables.wo_platform_distro == 'ubuntu':
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
||||||
Log.debug(self, "Setting apt_packages variable for PHP 7.2")
|
Log.debug(self, "Setting apt_packages variable for PHP 7.3")
|
||||||
|
if not WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
|
apt_packages = apt_packages + WOVariables.wo_php73 + WOVariables.wo_php_extra
|
||||||
if not WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if not WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
apt_packages = apt_packages + WOVariables.wo_php72 + WOVariables.wo_php_extra
|
apt_packages = apt_packages + WOVariables.wo_php + WOVariables.wo_php_extra
|
||||||
else:
|
else:
|
||||||
Log.debug(self, "PHP 7.2 already installed")
|
Log.debug(self, "PHP 7.3 already installed")
|
||||||
Log.info(self, "PHP 7.2 already installed")
|
Log.info(self, "PHP 7.3 already installed")
|
||||||
else:
|
else:
|
||||||
Log.debug(self, "Unfortunately PHP 7.2 is not available for your Ubuntu or Debian version.")
|
Log.debug(
|
||||||
Log.info(self, "Unfortunately PHP 7.2 is not available for your Ubuntu or Debian version.")
|
self, "Unfortunately PHP 7.3 is not available for your Ubuntu or Debian version.")
|
||||||
|
Log.info(
|
||||||
|
self, "Unfortunately PHP 7.3 is not available for your Ubuntu or Debian version.")
|
||||||
|
|
||||||
if self.app.pargs.hhvm:
|
if self.app.pargs.hhvm:
|
||||||
Log.debug(self, "Setting apt packages variable for HHVM")
|
Log.debug(self, "Setting apt packages variable for HHVM")
|
||||||
@@ -1458,12 +1488,12 @@ class WOStackController(CementBaseController):
|
|||||||
|
|
||||||
if self.app.pargs.wpcli:
|
if self.app.pargs.wpcli:
|
||||||
Log.debug(self, "Setting packages variable for WP-CLI")
|
Log.debug(self, "Setting packages variable for WP-CLI")
|
||||||
if not WOShellExec.cmd_exec(self, "which wp"):
|
if not WOShellExec.cmd_exec(self, "command -v wp"):
|
||||||
packages = packages + [["https://github.com/wp-cli/wp-cli/"
|
packages = packages + [["https://github.com/wp-cli/wp-cli/"
|
||||||
"releases/download/v{0}/"
|
"releases/download/v{0}/"
|
||||||
"wp-cli-{0}.phar"
|
"wp-cli-{0}.phar"
|
||||||
"".format(WOVariables.wo_wp_cli),
|
"".format(WOVariables.wo_wp_cli),
|
||||||
"/usr/bin/wp",
|
"/usr/local/bin/wp",
|
||||||
"WP-CLI"]]
|
"WP-CLI"]]
|
||||||
else:
|
else:
|
||||||
Log.debug(self, "WP-CLI is already installed")
|
Log.debug(self, "WP-CLI is already installed")
|
||||||
@@ -1497,7 +1527,7 @@ class WOStackController(CementBaseController):
|
|||||||
Log.debug(self, "Setting packages variable for utils")
|
Log.debug(self, "Setting packages variable for utils")
|
||||||
packages = packages + [["https://storage.googleapis.com/google-code-archive-downloads/"
|
packages = packages + [["https://storage.googleapis.com/google-code-archive-downloads/"
|
||||||
"v2/code.google.com/phpmemcacheadmin/"
|
"v2/code.google.com/phpmemcacheadmin/"
|
||||||
"phpMemcachedAdmin-1.2.2-r262.tar.gz", '/tmp/memcache.tar.gz',
|
"phpMemcachedAdmin-1.2.2-r262.tar.gz", '/tmp/memcached.tar.gz',
|
||||||
'phpMemcachedAdmin'],
|
'phpMemcachedAdmin'],
|
||||||
["https://raw.githubusercontent.com"
|
["https://raw.githubusercontent.com"
|
||||||
"/rtCamp/eeadmin/master/cache/nginx/"
|
"/rtCamp/eeadmin/master/cache/nginx/"
|
||||||
@@ -1566,7 +1596,8 @@ class WOStackController(CementBaseController):
|
|||||||
.format(int(WOVariables.wo_ram*1024*1024*0.1)))
|
.format(int(WOVariables.wo_ram*1024*1024*0.1)))
|
||||||
WOShellExec.cmd_exec(self, "sed -i 's/# maxmemory <bytes>/maxmemory {0}/' /etc/redis/redis.conf"
|
WOShellExec.cmd_exec(self, "sed -i 's/# maxmemory <bytes>/maxmemory {0}/' /etc/redis/redis.conf"
|
||||||
.format(int(WOVariables.wo_ram*1024*1024*0.1)))
|
.format(int(WOVariables.wo_ram*1024*1024*0.1)))
|
||||||
Log.debug(self, "Setting maxmemory-policy variable to allkeys-lru in redis.conf")
|
Log.debug(
|
||||||
|
self, "Setting maxmemory-policy variable to allkeys-lru in redis.conf")
|
||||||
WOShellExec.cmd_exec(self, "sed -i 's/# maxmemory-policy.*/maxmemory-policy allkeys-lru/' "
|
WOShellExec.cmd_exec(self, "sed -i 's/# maxmemory-policy.*/maxmemory-policy allkeys-lru/' "
|
||||||
"/etc/redis/redis.conf")
|
"/etc/redis/redis.conf")
|
||||||
WOService.restart_service(self, 'redis-server')
|
WOService.restart_service(self, 'redis-server')
|
||||||
@@ -1575,7 +1606,8 @@ class WOStackController(CementBaseController):
|
|||||||
.format(int(WOVariables.wo_ram*1024*1024*0.2)))
|
.format(int(WOVariables.wo_ram*1024*1024*0.2)))
|
||||||
WOShellExec.cmd_exec(self, "sed -i 's/# maxmemory <bytes>/maxmemory {0}/' /etc/redis/redis.conf"
|
WOShellExec.cmd_exec(self, "sed -i 's/# maxmemory <bytes>/maxmemory {0}/' /etc/redis/redis.conf"
|
||||||
.format(int(WOVariables.wo_ram*1024*1024*0.2)))
|
.format(int(WOVariables.wo_ram*1024*1024*0.2)))
|
||||||
Log.debug(self, "Setting maxmemory-policy variable to allkeys-lru in redis.conf")
|
Log.debug(
|
||||||
|
self, "Setting maxmemory-policy variable to allkeys-lru in redis.conf")
|
||||||
WOShellExec.cmd_exec(self, "sed -i 's/# maxmemory-policy.*/maxmemory-policy allkeys-lru/' "
|
WOShellExec.cmd_exec(self, "sed -i 's/# maxmemory-policy.*/maxmemory-policy allkeys-lru/' "
|
||||||
"/etc/redis/redis.conf")
|
"/etc/redis/redis.conf")
|
||||||
WOService.restart_service(self, 'redis-server')
|
WOService.restart_service(self, 'redis-server')
|
||||||
@@ -1595,7 +1627,7 @@ class WOStackController(CementBaseController):
|
|||||||
|
|
||||||
if ((not self.app.pargs.web) and (not self.app.pargs.admin) and
|
if ((not self.app.pargs.web) and (not self.app.pargs.admin) and
|
||||||
(not self.app.pargs.nginx) and (not self.app.pargs.php) and
|
(not self.app.pargs.nginx) and (not self.app.pargs.php) and
|
||||||
(not self.app.pargs.php72) and (not self.app.pargs.mysql) and
|
(not self.app.pargs.php73) and (not self.app.pargs.mysql) and
|
||||||
(not self.app.pargs.wpcli) and (not self.app.pargs.phpmyadmin) and
|
(not self.app.pargs.wpcli) and (not self.app.pargs.phpmyadmin) and
|
||||||
(not self.app.pargs.hhvm) and (not self.app.pargs.adminer) and
|
(not self.app.pargs.hhvm) and (not self.app.pargs.adminer) and
|
||||||
(not self.app.pargs.utils) and (not self.app.pargs.all) and
|
(not self.app.pargs.utils) and (not self.app.pargs.all) and
|
||||||
@@ -1607,7 +1639,7 @@ class WOStackController(CementBaseController):
|
|||||||
self.app.pargs.web = True
|
self.app.pargs.web = True
|
||||||
self.app.pargs.admin = True
|
self.app.pargs.admin = True
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
||||||
self.app.pargs.php72 = True
|
self.app.pargs.php73 = True
|
||||||
|
|
||||||
if self.app.pargs.web:
|
if self.app.pargs.web:
|
||||||
self.app.pargs.nginx = True
|
self.app.pargs.nginx = True
|
||||||
@@ -1630,30 +1662,28 @@ class WOStackController(CementBaseController):
|
|||||||
if self.app.pargs.php:
|
if self.app.pargs.php:
|
||||||
Log.debug(self, "Removing apt_packages variable of PHP")
|
Log.debug(self, "Removing apt_packages variable of PHP")
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
||||||
apt_packages = apt_packages + WOVariables.wo_php72
|
|
||||||
if not WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if not WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
apt_packages = apt_packages + WOVariables.wo_php_extra
|
apt_packages = apt_packages + WOVariables.wo_php + WOVariables.wo_php_extra
|
||||||
else:
|
else:
|
||||||
apt_packages = apt_packages + WOVariables.wo_php
|
apt_packages = apt_packages + WOVariables.wo_php
|
||||||
|
|
||||||
#PHP7.0 for debian(jessie+)
|
# PHP7.3 for debian(jessie+)
|
||||||
if self.app.pargs.php72:
|
if self.app.pargs.php73:
|
||||||
if (WOVariables.wo_platform_codename == 'jessie'):
|
if (WOVariables.wo_platform_codename == 'jessie'):
|
||||||
Log.debug(self, "Removing apt_packages variable of PHP 7.0")
|
Log.debug(self, "Removing apt_packages variable of PHP 7.3")
|
||||||
apt_packages = apt_packages + WOVariables.wo_php72
|
apt_packages = apt_packages + WOVariables.wo_php73
|
||||||
if not WOAptGet.is_installed(self, 'php5-fpm'):
|
if not WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
apt_packages = apt_packages + WOVariables.wo_php_extra
|
apt_packages = apt_packages + WOVariables.wo_php_extra
|
||||||
else:
|
else:
|
||||||
Log.info(self,"PHP 7.0 not supported.")
|
Log.info(self, "PHP 7.3 not supported.")
|
||||||
|
|
||||||
if self.app.pargs.php72:
|
if self.app.pargs.php73:
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
||||||
Log.debug(self, "Removing apt_packages variable of PHP 7.0")
|
Log.debug(self, "Removing apt_packages variable of PHP 7.3")
|
||||||
apt_packages = apt_packages + WOVariables.wo_php72
|
if not WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
if not WOAptGet.is_installed(self, 'php5.6-fpm'):
|
apt_packages = apt_packages + WOVariables.wo_php73 + WOVariables.wo_php_extra
|
||||||
apt_packages = apt_packages + WOVariables.wo_php_extra
|
|
||||||
else:
|
else:
|
||||||
Log.info(self,"PHP 7.0 not supported.")
|
Log.info(self, "PHP 7.3 not supported.")
|
||||||
|
|
||||||
if self.app.pargs.hhvm:
|
if self.app.pargs.hhvm:
|
||||||
if WOAptGet.is_installed(self, 'hhvm'):
|
if WOAptGet.is_installed(self, 'hhvm'):
|
||||||
@@ -1671,8 +1701,8 @@ class WOStackController(CementBaseController):
|
|||||||
|
|
||||||
if self.app.pargs.wpcli:
|
if self.app.pargs.wpcli:
|
||||||
Log.debug(self, "Removing package variable of WPCLI ")
|
Log.debug(self, "Removing package variable of WPCLI ")
|
||||||
if os.path.isfile('/usr/bin/wp'):
|
if os.path.isfile('/usr/local/bin/wp'):
|
||||||
packages = packages + ['/usr/bin/wp']
|
packages = packages + ['/usr/local/bin/wp']
|
||||||
else:
|
else:
|
||||||
Log.warn(self, "WP-CLI is not installed with WordOps")
|
Log.warn(self, "WP-CLI is not installed with WordOps")
|
||||||
if self.app.pargs.phpmyadmin:
|
if self.app.pargs.phpmyadmin:
|
||||||
@@ -1695,7 +1725,7 @@ class WOStackController(CementBaseController):
|
|||||||
.format(WOVariables.wo_webroot),
|
.format(WOVariables.wo_webroot),
|
||||||
'{0}22222/htdocs/cache/nginx/'
|
'{0}22222/htdocs/cache/nginx/'
|
||||||
'clean.php'.format(WOVariables.wo_webroot),
|
'clean.php'.format(WOVariables.wo_webroot),
|
||||||
'{0}22222/htdocs/cache/memcache'
|
'{0}22222/htdocs/cache/memcached'
|
||||||
.format(WOVariables.wo_webroot),
|
.format(WOVariables.wo_webroot),
|
||||||
'/usr/bin/pt-query-advisor',
|
'/usr/bin/pt-query-advisor',
|
||||||
'{0}22222/htdocs/db/anemometer'
|
'{0}22222/htdocs/db/anemometer'
|
||||||
@@ -1725,16 +1755,16 @@ class WOStackController(CementBaseController):
|
|||||||
WOAptGet.remove(self, apt_packages)
|
WOAptGet.remove(self, apt_packages)
|
||||||
WOAptGet.auto_remove(self)
|
WOAptGet.auto_remove(self)
|
||||||
|
|
||||||
|
|
||||||
Log.info(self, "Successfully removed packages")
|
Log.info(self, "Successfully removed packages")
|
||||||
|
|
||||||
# Added for Ondrej Repo missing package Fix
|
# Added for Ondrej Repo missing package Fix
|
||||||
if self.app.pargs.php72:
|
if self.app.pargs.php:
|
||||||
if WOAptGet.is_installed(self, 'php5.6-fpm'):
|
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
Log.info(self, "PHP5.6-fpm found on system.")
|
Log.info(self, "PHP7.2-fpm found on system.")
|
||||||
Log.info(self, "Verifying and installing missing packages,")
|
Log.info(
|
||||||
WOShellExec.cmd_exec(self, "apt-get install -y php-memcached php-igbinary")
|
self, "Verifying and installing missing packages,")
|
||||||
|
WOShellExec.cmd_exec(
|
||||||
|
self, "apt-get install -y php-memcached php-igbinary")
|
||||||
|
|
||||||
@expose(help="Purge packages")
|
@expose(help="Purge packages")
|
||||||
def purge(self):
|
def purge(self):
|
||||||
@@ -1745,7 +1775,7 @@ class WOStackController(CementBaseController):
|
|||||||
# Default action for stack purge
|
# Default action for stack purge
|
||||||
if ((not self.app.pargs.web) and (not self.app.pargs.admin) and
|
if ((not self.app.pargs.web) and (not self.app.pargs.admin) and
|
||||||
(not self.app.pargs.nginx) and (not self.app.pargs.php) and
|
(not self.app.pargs.nginx) and (not self.app.pargs.php) and
|
||||||
(not self.app.pargs.php7) and (not self.app.pargs.mysql) and
|
(not self.app.pargs.php73) and (not self.app.pargs.mysql) and
|
||||||
(not self.app.pargs.wpcli) and (not self.app.pargs.phpmyadmin) and
|
(not self.app.pargs.wpcli) and (not self.app.pargs.phpmyadmin) and
|
||||||
(not self.app.pargs.hhvm) and (not self.app.pargs.adminer) and
|
(not self.app.pargs.hhvm) and (not self.app.pargs.adminer) and
|
||||||
(not self.app.pargs.utils) and (not self.app.pargs.all) and
|
(not self.app.pargs.utils) and (not self.app.pargs.all) and
|
||||||
@@ -1757,7 +1787,7 @@ class WOStackController(CementBaseController):
|
|||||||
self.app.pargs.web = True
|
self.app.pargs.web = True
|
||||||
self.app.pargs.admin = True
|
self.app.pargs.admin = True
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
||||||
self.app.pargs.php7 = True
|
self.app.pargs.php73 = True
|
||||||
|
|
||||||
if self.app.pargs.web:
|
if self.app.pargs.web:
|
||||||
self.app.pargs.nginx = True
|
self.app.pargs.nginx = True
|
||||||
@@ -1779,43 +1809,37 @@ class WOStackController(CementBaseController):
|
|||||||
if self.app.pargs.php:
|
if self.app.pargs.php:
|
||||||
Log.debug(self, "Purge apt_packages variable PHP")
|
Log.debug(self, "Purge apt_packages variable PHP")
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
||||||
|
apt_packages = apt_packages + WOVariables.wo_php + WOVariables.wo_php_extra
|
||||||
|
if not WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
apt_packages = apt_packages + WOVariables.wo_php_extra
|
apt_packages = apt_packages + WOVariables.wo_php_extra
|
||||||
else:
|
else:
|
||||||
apt_packages = apt_packages + WOVariables.wo_php72
|
apt_packages = apt_packages + WOVariables.wo_php
|
||||||
|
|
||||||
#For debian --php7
|
# For debian --php73
|
||||||
if self.app.pargs.php72:
|
if self.app.pargs.php73:
|
||||||
if (WOVariables.wo_platform_codename == 'jessie'):
|
if (WOVariables.wo_platform_codename == 'jessie'):
|
||||||
Log.debug(self, "Removing apt_packages variable of PHP 7.0")
|
Log.debug(self, "Removing apt_packages variable of PHP 7.3")
|
||||||
apt_packages = apt_packages + WOVariables.wo_php72
|
apt_packages = apt_packages + WOVariables.wo_php73
|
||||||
if not WOAptGet.is_installed(self, 'php5-fpm'):
|
if not WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
apt_packages = apt_packages + WOVariables.wo_php_extra
|
apt_packages = apt_packages + WOVariables.wo_php_extra
|
||||||
else:
|
else:
|
||||||
Log.info(self,"PHP 7.2 not supported.")
|
Log.info(self, "PHP 7.3 not supported.")
|
||||||
|
|
||||||
if self.app.pargs.php72:
|
if self.app.pargs.php73:
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
||||||
Log.debug(self, "Removing apt_packages variable of PHP 7.0")
|
Log.debug(self, "Removing apt_packages variable of PHP 7.3")
|
||||||
apt_packages = apt_packages + WOVariables.wo_php72
|
if not WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
if not WOAptGet.is_installed(self, 'php5.6-fpm'):
|
apt_packages = apt_packages + WOVariables.wo_php73 + WOVariables.wo_php_extra
|
||||||
apt_packages = apt_packages + WOVariables.wo_php_extra
|
|
||||||
else:
|
else:
|
||||||
Log.info(self,"PHP 7.2 not supported.")
|
Log.info(self, "PHP 7.3 not supported.")
|
||||||
if self.app.pargs.hhvm:
|
if self.app.pargs.hhvm:
|
||||||
if WOAptGet.is_installed(self, 'hhvm'):
|
if WOAptGet.is_installed(self, 'hhvm'):
|
||||||
Log.debug(self, "Purge apt_packages varible of HHVM")
|
Log.debug(self, "Purge apt_packages varible of HHVM")
|
||||||
apt_packages = apt_packages + WOVariables.wo_hhvm
|
apt_packages = apt_packages + WOVariables.wo_hhvm
|
||||||
if self.app.pargs.redis:
|
|
||||||
Log.debug(self, "Purge apt_packages variable of Redis")
|
|
||||||
apt_packages = apt_packages + WOVariables.wo_redis
|
|
||||||
if self.app.pargs.mysql:
|
|
||||||
Log.debug(self, "Purge apt_packages variable MySQL")
|
|
||||||
apt_packages = apt_packages + WOVariables.wo_mysql
|
|
||||||
packages = packages + ['/usr/bin/mysqltuner']
|
|
||||||
if self.app.pargs.wpcli:
|
|
||||||
Log.debug(self, "Purge package variable WPCLI")
|
Log.debug(self, "Purge package variable WPCLI")
|
||||||
if os.path.isfile('/usr/bin/wp'):
|
if os.path.isfile('/usr/local/bin/wp'):
|
||||||
packages = packages + ['/usr/bin/wp']
|
packages = packages + ['/usr/local/bin/wp']
|
||||||
else:
|
else:
|
||||||
Log.warn(self, "WP-CLI is not installed with WordOps")
|
Log.warn(self, "WP-CLI is not installed with WordOps")
|
||||||
if self.app.pargs.phpmyadmin:
|
if self.app.pargs.phpmyadmin:
|
||||||
@@ -1838,7 +1862,7 @@ class WOStackController(CementBaseController):
|
|||||||
.format(WOVariables.wo_webroot),
|
.format(WOVariables.wo_webroot),
|
||||||
'{0}22222/htdocs/cache/nginx/'
|
'{0}22222/htdocs/cache/nginx/'
|
||||||
'clean.php'.format(WOVariables.wo_webroot),
|
'clean.php'.format(WOVariables.wo_webroot),
|
||||||
'{0}22222/htdocs/cache/memcache'
|
'{0}22222/htdocs/cache/memcached'
|
||||||
.format(WOVariables.wo_webroot),
|
.format(WOVariables.wo_webroot),
|
||||||
'/usr/bin/pt-query-advisor',
|
'/usr/bin/pt-query-advisor',
|
||||||
'{0}22222/htdocs/db/anemometer'
|
'{0}22222/htdocs/db/anemometer'
|
||||||
@@ -1867,18 +1891,8 @@ class WOStackController(CementBaseController):
|
|||||||
WOFileUtils.remove(self, packages)
|
WOFileUtils.remove(self, packages)
|
||||||
WOAptGet.auto_remove(self)
|
WOAptGet.auto_remove(self)
|
||||||
|
|
||||||
|
|
||||||
Log.info(self, "Successfully purged packages")
|
Log.info(self, "Successfully purged packages")
|
||||||
|
|
||||||
#Added for php Ondrej repo missing package fix
|
|
||||||
if self.app.pargs.php72:
|
|
||||||
if WOAptGet.is_installed(self, 'php5.6-fpm'):
|
|
||||||
Log.info(self, "PHP5.6-fpm found on system.")
|
|
||||||
Log.info(self, "Verifying and installing missing packages,")
|
|
||||||
WOShellExec.cmd_exec(self, "apt-get install -y php-memcached php-igbinary")
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def load(app):
|
def load(app):
|
||||||
# register the plugin class.. this only happens if the plugin is enabled
|
# register the plugin class.. this only happens if the plugin is enabled
|
||||||
handler.register(WOStackController)
|
handler.register(WOStackController)
|
||||||
|
|||||||
@@ -56,21 +56,21 @@ class WOStackMigrateController(CementBaseController):
|
|||||||
% e)
|
% e)
|
||||||
|
|
||||||
Log.debug(self, "Pre-seeding MariaDB")
|
Log.debug(self, "Pre-seeding MariaDB")
|
||||||
Log.debug(self, "echo \"mariadb-server-10.0 "
|
Log.debug(self, "echo \"mariadb-server-10.3 "
|
||||||
"mysql-server/root_password "
|
"mysql-server/root_password "
|
||||||
"password \" | "
|
"password \" | "
|
||||||
"debconf-set-selections")
|
"debconf-set-selections")
|
||||||
WOShellExec.cmd_exec(self, "echo \"mariadb-server-10.0 "
|
WOShellExec.cmd_exec(self, "echo \"mariadb-server-10.3 "
|
||||||
"mysql-server/root_password "
|
"mysql-server/root_password "
|
||||||
"password {chars}\" | "
|
"password {chars}\" | "
|
||||||
"debconf-set-selections"
|
"debconf-set-selections"
|
||||||
.format(chars=chars),
|
.format(chars=chars),
|
||||||
log=False)
|
log=False)
|
||||||
Log.debug(self, "echo \"mariadb-server-10.0 "
|
Log.debug(self, "echo \"mariadb-server-10.3 "
|
||||||
"mysql-server/root_password_again "
|
"mysql-server/root_password_again "
|
||||||
"password \" | "
|
"password \" | "
|
||||||
"debconf-set-selections")
|
"debconf-set-selections")
|
||||||
WOShellExec.cmd_exec(self, "echo \"mariadb-server-10.0 "
|
WOShellExec.cmd_exec(self, "echo \"mariadb-server-10.3 "
|
||||||
"mysql-server/root_password_again "
|
"mysql-server/root_password_again "
|
||||||
"password {chars}\" | "
|
"password {chars}\" | "
|
||||||
"debconf-set-selections"
|
"debconf-set-selections"
|
||||||
|
|||||||
@@ -13,16 +13,16 @@ class WOStackStatusController(CementBaseController):
|
|||||||
stacked_type = 'embedded'
|
stacked_type = 'embedded'
|
||||||
description = 'Check the stack status'
|
description = 'Check the stack status'
|
||||||
arguments = [
|
arguments = [
|
||||||
(['--memcache'],
|
(['--memcached'],
|
||||||
dict(help='start/stop/restart memcache', action='store_true')),
|
dict(help='start/stop/restart memcached', action='store_true')),
|
||||||
]
|
]
|
||||||
|
|
||||||
@expose(help="Start stack services")
|
@expose(help="Start stack services")
|
||||||
def start(self):
|
def start(self):
|
||||||
"""Start services"""
|
"""Start services"""
|
||||||
services = []
|
services = []
|
||||||
if not (self.app.pargs.nginx or self.app.pargs.php or self.app.pargs.php7
|
if not (self.app.pargs.nginx or self.app.pargs.php or self.app.pargs.php73
|
||||||
or self.app.pargs.mysql or self.app.pargs.hhvm or self.app.pargs.memcache
|
or self.app.pargs.mysql or self.app.pargs.hhvm or self.app.pargs.memcached
|
||||||
or self.app.pargs.redis):
|
or self.app.pargs.redis):
|
||||||
self.app.pargs.nginx = True
|
self.app.pargs.nginx = True
|
||||||
self.app.pargs.php = True
|
self.app.pargs.php = True
|
||||||
@@ -35,30 +35,20 @@ class WOStackStatusController(CementBaseController):
|
|||||||
Log.info(self, "Nginx is not installed")
|
Log.info(self, "Nginx is not installed")
|
||||||
|
|
||||||
if self.app.pargs.php:
|
if self.app.pargs.php:
|
||||||
if (WOVariables.wo_platform_distro == 'debian' or WOVariables.wo_platform_codename == 'precise'):
|
|
||||||
if WOAptGet.is_installed(self, 'php5-fpm'):
|
|
||||||
services = services + ['php5-fpm']
|
|
||||||
else:
|
|
||||||
Log.info(self, "PHP5-FPM is not installed")
|
|
||||||
else:
|
|
||||||
if WOAptGet.is_installed(self, 'php5.6-fpm'):
|
|
||||||
services = services + ['php5.6-fpm']
|
|
||||||
else:
|
|
||||||
Log.info(self, "PHP5.6-FPM is not installed")
|
|
||||||
|
|
||||||
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
services = services + ['php7.2-fpm']
|
services = services + ['php7.2-fpm']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "PHP7.2-FPM is not installed")
|
Log.info(self, "PHP7.2-FPM is not installed")
|
||||||
|
if WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
|
services = services + ['php7.3-fpm']
|
||||||
|
else:
|
||||||
|
Log.info(self, "PHP7.3-FPM is not installed")
|
||||||
|
|
||||||
if self.app.pargs.php7:
|
if self.app.pargs.php73:
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
if WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
services = services + ['php7.3-fpm']
|
||||||
services = services + ['php7.2-fpm']
|
|
||||||
else:
|
else:
|
||||||
Log.info(self, "PHP7.2-FPM is not installed")
|
Log.info(self, "PHP7.3-FPM is not installed")
|
||||||
else:
|
|
||||||
Log.info(self, "Your platform does not support PHP 7")
|
|
||||||
|
|
||||||
if self.app.pargs.mysql:
|
if self.app.pargs.mysql:
|
||||||
if ((WOVariables.wo_mysql_host is "localhost") or
|
if ((WOVariables.wo_mysql_host is "localhost") or
|
||||||
@@ -78,11 +68,11 @@ class WOStackStatusController(CementBaseController):
|
|||||||
services = services + ['hhvm']
|
services = services + ['hhvm']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "HHVM is not installed")
|
Log.info(self, "HHVM is not installed")
|
||||||
if self.app.pargs.memcache:
|
if self.app.pargs.memcached:
|
||||||
if WOAptGet.is_installed(self, 'memcached'):
|
if WOAptGet.is_installed(self, 'memcached'):
|
||||||
services = services + ['memcached']
|
services = services + ['memcached']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "Memcache is not installed")
|
Log.info(self, "Memcached is not installed")
|
||||||
|
|
||||||
if self.app.pargs.redis:
|
if self.app.pargs.redis:
|
||||||
if WOAptGet.is_installed(self, 'redis-server'):
|
if WOAptGet.is_installed(self, 'redis-server'):
|
||||||
@@ -98,8 +88,8 @@ class WOStackStatusController(CementBaseController):
|
|||||||
def stop(self):
|
def stop(self):
|
||||||
"""Stop services"""
|
"""Stop services"""
|
||||||
services = []
|
services = []
|
||||||
if not (self.app.pargs.nginx or self.app.pargs.php or self.app.pargs.php7
|
if not (self.app.pargs.nginx or self.app.pargs.php or self.app.pargs.php73
|
||||||
or self.app.pargs.mysql or self.app.pargs.hhvm or self.app.pargs.memcache
|
or self.app.pargs.mysql or self.app.pargs.hhvm or self.app.pargs.memcached
|
||||||
or self.app.pargs.redis):
|
or self.app.pargs.redis):
|
||||||
self.app.pargs.nginx = True
|
self.app.pargs.nginx = True
|
||||||
self.app.pargs.php = True
|
self.app.pargs.php = True
|
||||||
@@ -112,30 +102,21 @@ class WOStackStatusController(CementBaseController):
|
|||||||
Log.info(self, "Nginx is not installed")
|
Log.info(self, "Nginx is not installed")
|
||||||
|
|
||||||
if self.app.pargs.php:
|
if self.app.pargs.php:
|
||||||
if (WOVariables.wo_platform_distro == 'debian' or WOVariables.wo_platform_codename == 'precise'):
|
|
||||||
if WOAptGet.is_installed(self, 'php5-fpm'):
|
|
||||||
services = services + ['php5-fpm']
|
|
||||||
else:
|
|
||||||
Log.info(self, "PHP5-FPM is not installed")
|
|
||||||
else:
|
|
||||||
if WOAptGet.is_installed(self, 'php5.6-fpm'):
|
|
||||||
services = services + ['php5.6-fpm']
|
|
||||||
else:
|
|
||||||
Log.info(self, "PHP5.6-FPM is not installed")
|
|
||||||
|
|
||||||
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
services = services + ['php7.2-fpm']
|
services = services + ['php7.2-fpm']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "PHP7.2-FPM is not installed")
|
Log.info(self, "PHP7.2-FPM is not installed")
|
||||||
|
|
||||||
if self.app.pargs.php7:
|
if WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
services = services + ['php7.3-fpm']
|
||||||
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
|
||||||
services = services + ['php7.2-fpm']
|
|
||||||
else:
|
else:
|
||||||
Log.info(self, "PHP7.2-FPM is not installed")
|
Log.info(self, "PHP7.3-FPM is not installed")
|
||||||
|
|
||||||
|
if self.app.pargs.php73:
|
||||||
|
if WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
|
services = services + ['php7.3-fpm']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "Your platform does not support PHP 7")
|
Log.info(self, "PHP7.3-FPM is not installed")
|
||||||
|
|
||||||
if self.app.pargs.mysql:
|
if self.app.pargs.mysql:
|
||||||
if ((WOVariables.wo_mysql_host is "localhost") or
|
if ((WOVariables.wo_mysql_host is "localhost") or
|
||||||
@@ -155,11 +136,11 @@ class WOStackStatusController(CementBaseController):
|
|||||||
services = services + ['hhvm']
|
services = services + ['hhvm']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "HHVM is not installed")
|
Log.info(self, "HHVM is not installed")
|
||||||
if self.app.pargs.memcache:
|
if self.app.pargs.memcached:
|
||||||
if WOAptGet.is_installed(self, 'memcached'):
|
if WOAptGet.is_installed(self, 'memcached'):
|
||||||
services = services + ['memcached']
|
services = services + ['memcached']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "Memcache is not installed")
|
Log.info(self, "Memcached is not installed")
|
||||||
|
|
||||||
if self.app.pargs.redis:
|
if self.app.pargs.redis:
|
||||||
if WOAptGet.is_installed(self, 'redis-server'):
|
if WOAptGet.is_installed(self, 'redis-server'):
|
||||||
@@ -175,8 +156,8 @@ class WOStackStatusController(CementBaseController):
|
|||||||
def restart(self):
|
def restart(self):
|
||||||
"""Restart services"""
|
"""Restart services"""
|
||||||
services = []
|
services = []
|
||||||
if not (self.app.pargs.nginx or self.app.pargs.php or self.app.pargs.php7
|
if not (self.app.pargs.nginx or self.app.pargs.php or self.app.pargs.php73
|
||||||
or self.app.pargs.mysql or self.app.pargs.hhvm or self.app.pargs.memcache
|
or self.app.pargs.mysql or self.app.pargs.hhvm or self.app.pargs.memcached
|
||||||
or self.app.pargs.redis):
|
or self.app.pargs.redis):
|
||||||
self.app.pargs.nginx = True
|
self.app.pargs.nginx = True
|
||||||
self.app.pargs.php = True
|
self.app.pargs.php = True
|
||||||
@@ -189,31 +170,21 @@ class WOStackStatusController(CementBaseController):
|
|||||||
Log.info(self, "Nginx is not installed")
|
Log.info(self, "Nginx is not installed")
|
||||||
|
|
||||||
if self.app.pargs.php:
|
if self.app.pargs.php:
|
||||||
if (WOVariables.wo_platform_distro == 'debian' or WOVariables.wo_platform_codename == 'precise'):
|
|
||||||
if WOAptGet.is_installed(self, 'php5-fpm'):
|
|
||||||
services = services + ['php5-fpm']
|
|
||||||
else:
|
|
||||||
Log.info(self, "PHP5-FPM is not installed")
|
|
||||||
else:
|
|
||||||
if WOAptGet.is_installed(self, 'php5.6-fpm'):
|
|
||||||
services = services + ['php5.6-fpm']
|
|
||||||
else:
|
|
||||||
Log.info(self, "PHP5.6-FPM is not installed")
|
|
||||||
|
|
||||||
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
services = services + ['php7.2-fpm']
|
services = services + ['php7.2-fpm']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "PHP7.2-FPM is not installed")
|
Log.info(self, "PHP7.2-FPM is not installed")
|
||||||
|
|
||||||
if self.app.pargs.php7:
|
if WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
services = services + ['php7.3-fpm']
|
||||||
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
|
||||||
services = services + ['php7.2-fpm']
|
|
||||||
else:
|
else:
|
||||||
Log.info(self, "PHP7.2-FPM is not installed")
|
Log.info(self, "PHP7.3-FPM is not installed")
|
||||||
else:
|
|
||||||
Log.info(self, "Your platform does not support PHP 7")
|
|
||||||
|
|
||||||
|
if self.app.pargs.php73:
|
||||||
|
if WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
|
services = services + ['php7.3-fpm']
|
||||||
|
else:
|
||||||
|
Log.info(self, "PHP7.3-FPM is not installed")
|
||||||
|
|
||||||
if self.app.pargs.mysql:
|
if self.app.pargs.mysql:
|
||||||
if ((WOVariables.wo_mysql_host is "localhost") or
|
if ((WOVariables.wo_mysql_host is "localhost") or
|
||||||
@@ -233,11 +204,11 @@ class WOStackStatusController(CementBaseController):
|
|||||||
services = services + ['hhvm']
|
services = services + ['hhvm']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "HHVM is not installed")
|
Log.info(self, "HHVM is not installed")
|
||||||
if self.app.pargs.memcache:
|
if self.app.pargs.memcached:
|
||||||
if WOAptGet.is_installed(self, 'memcached'):
|
if WOAptGet.is_installed(self, 'memcached'):
|
||||||
services = services + ['memcached']
|
services = services + ['memcached']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "Memcache is not installed")
|
Log.info(self, "Memcached is not installed")
|
||||||
|
|
||||||
if self.app.pargs.redis:
|
if self.app.pargs.redis:
|
||||||
if WOAptGet.is_installed(self, 'redis-server'):
|
if WOAptGet.is_installed(self, 'redis-server'):
|
||||||
@@ -253,8 +224,8 @@ class WOStackStatusController(CementBaseController):
|
|||||||
def status(self):
|
def status(self):
|
||||||
"""Status of services"""
|
"""Status of services"""
|
||||||
services = []
|
services = []
|
||||||
if not (self.app.pargs.nginx or self.app.pargs.php or self.app.pargs.php7
|
if not (self.app.pargs.nginx or self.app.pargs.php or self.app.pargs.php73
|
||||||
or self.app.pargs.mysql or self.app.pargs.hhvm or self.app.pargs.memcache
|
or self.app.pargs.mysql or self.app.pargs.hhvm or self.app.pargs.memcached
|
||||||
or self.app.pargs.redis):
|
or self.app.pargs.redis):
|
||||||
self.app.pargs.nginx = True
|
self.app.pargs.nginx = True
|
||||||
self.app.pargs.php = True
|
self.app.pargs.php = True
|
||||||
@@ -268,30 +239,21 @@ class WOStackStatusController(CementBaseController):
|
|||||||
Log.info(self, "Nginx is not installed")
|
Log.info(self, "Nginx is not installed")
|
||||||
|
|
||||||
if self.app.pargs.php:
|
if self.app.pargs.php:
|
||||||
if (WOVariables.wo_platform_distro == 'debian' or WOVariables.wo_platform_codename == 'precise'):
|
|
||||||
if WOAptGet.is_installed(self, 'php5-fpm'):
|
|
||||||
services = services + ['php5-fpm']
|
|
||||||
else:
|
|
||||||
Log.info(self, "PHP5-FPM is not installed")
|
|
||||||
else:
|
|
||||||
if WOAptGet.is_installed(self, 'php5.6-fpm'):
|
|
||||||
services = services + ['php5.6-fpm']
|
|
||||||
else:
|
|
||||||
Log.info(self, "PHP5.6-FPM is not installed")
|
|
||||||
|
|
||||||
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
services = services + ['php7.2-fpm']
|
services = services + ['php7.2-fpm']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "PHP7.2-FPM is not installed")
|
Log.info(self, "PHP7.2-FPM is not installed")
|
||||||
|
|
||||||
if self.app.pargs.php7:
|
if WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
services = services + ['php7.3-fpm']
|
||||||
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
|
||||||
services = services + ['php7.2-fpm']
|
|
||||||
else:
|
else:
|
||||||
Log.info(self, "PHP7.2-FPM is not installed")
|
Log.info(self, "PHP7.3-FPM is not installed")
|
||||||
|
|
||||||
|
if self.app.pargs.php73:
|
||||||
|
if WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
|
services = services + ['php7.3-fpm']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "Your platform does not support PHP 7")
|
Log.info(self, "PHP7.3-FPM is not installed")
|
||||||
|
|
||||||
if self.app.pargs.mysql:
|
if self.app.pargs.mysql:
|
||||||
if ((WOVariables.wo_mysql_host is "localhost") or
|
if ((WOVariables.wo_mysql_host is "localhost") or
|
||||||
@@ -311,11 +273,11 @@ class WOStackStatusController(CementBaseController):
|
|||||||
services = services + ['hhvm']
|
services = services + ['hhvm']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "HHVM is not installed")
|
Log.info(self, "HHVM is not installed")
|
||||||
if self.app.pargs.memcache:
|
if self.app.pargs.memcached:
|
||||||
if WOAptGet.is_installed(self, 'memcached'):
|
if WOAptGet.is_installed(self, 'memcached'):
|
||||||
services = services + ['memcached']
|
services = services + ['memcached']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "Memcache is not installed")
|
Log.info(self, "Memcached is not installed")
|
||||||
|
|
||||||
if self.app.pargs.redis:
|
if self.app.pargs.redis:
|
||||||
if WOAptGet.is_installed(self, 'redis-server'):
|
if WOAptGet.is_installed(self, 'redis-server'):
|
||||||
@@ -331,8 +293,8 @@ class WOStackStatusController(CementBaseController):
|
|||||||
def reload(self):
|
def reload(self):
|
||||||
"""Reload service"""
|
"""Reload service"""
|
||||||
services = []
|
services = []
|
||||||
if not (self.app.pargs.nginx or self.app.pargs.php or self.app.pargs.php7
|
if not (self.app.pargs.nginx or self.app.pargs.php or self.app.pargs.php73
|
||||||
or self.app.pargs.mysql or self.app.pargs.hhvm or self.app.pargs.memcache
|
or self.app.pargs.mysql or self.app.pargs.hhvm or self.app.pargs.memcached
|
||||||
or self.app.pargs.redis):
|
or self.app.pargs.redis):
|
||||||
self.app.pargs.nginx = True
|
self.app.pargs.nginx = True
|
||||||
self.app.pargs.php = True
|
self.app.pargs.php = True
|
||||||
@@ -345,30 +307,21 @@ class WOStackStatusController(CementBaseController):
|
|||||||
Log.info(self, "Nginx is not installed")
|
Log.info(self, "Nginx is not installed")
|
||||||
|
|
||||||
if self.app.pargs.php:
|
if self.app.pargs.php:
|
||||||
if (WOVariables.wo_platform_distro == 'debian' or WOVariables.wo_platform_codename == 'precise'):
|
|
||||||
if WOAptGet.is_installed(self, 'php5-fpm'):
|
|
||||||
services = services + ['php5-fpm']
|
|
||||||
else:
|
|
||||||
Log.info(self, "PHP5-FPM is not installed")
|
|
||||||
else:
|
|
||||||
if WOAptGet.is_installed(self, 'php5.6-fpm'):
|
|
||||||
services = services + ['php5.6-fpm']
|
|
||||||
else:
|
|
||||||
Log.info(self, "PHP5.6-FPM is not installed")
|
|
||||||
|
|
||||||
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
||||||
services = services + ['php7.2-fpm']
|
services = services + ['php7.2-fpm']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "PHP7.2-FPM is not installed")
|
Log.info(self, "PHP7.2-FPM is not installed")
|
||||||
|
|
||||||
if self.app.pargs.php7:
|
if WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
if (WOVariables.wo_platform_codename == 'trusty' or WOVariables.wo_platform_codename == 'xenial' or WOVariables.wo_platform_codename == 'bionic'):
|
services = services + ['php7.3-fpm']
|
||||||
if WOAptGet.is_installed(self, 'php7.2-fpm'):
|
|
||||||
services = services + ['php7.2-fpm']
|
|
||||||
else:
|
else:
|
||||||
Log.info(self, "PHP7.2-FPM is not installed")
|
Log.info(self, "PHP7.3-FPM is not installed")
|
||||||
|
|
||||||
|
if self.app.pargs.php73:
|
||||||
|
if WOAptGet.is_installed(self, 'php7.3-fpm'):
|
||||||
|
services = services + ['php7.3-fpm']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "Your platform does not support PHP 7")
|
Log.info(self, "PHP7.3-FPM is not installed")
|
||||||
|
|
||||||
if self.app.pargs.mysql:
|
if self.app.pargs.mysql:
|
||||||
if ((WOVariables.wo_mysql_host is "localhost") or
|
if ((WOVariables.wo_mysql_host is "localhost") or
|
||||||
@@ -386,11 +339,11 @@ class WOStackStatusController(CementBaseController):
|
|||||||
if self.app.pargs.hhvm:
|
if self.app.pargs.hhvm:
|
||||||
Log.info(self, "HHVM does not support to reload")
|
Log.info(self, "HHVM does not support to reload")
|
||||||
|
|
||||||
if self.app.pargs.memcache:
|
if self.app.pargs.memcached:
|
||||||
if WOAptGet.is_installed(self, 'memcached'):
|
if WOAptGet.is_installed(self, 'memcached'):
|
||||||
services = services + ['memcached']
|
services = services + ['memcached']
|
||||||
else:
|
else:
|
||||||
Log.info(self, "Memcache is not installed")
|
Log.info(self, "Memcached is not installed")
|
||||||
|
|
||||||
if self.app.pargs.redis:
|
if self.app.pargs.redis:
|
||||||
if WOAptGet.is_installed(self, 'redis-server'):
|
if WOAptGet.is_installed(self, 'redis-server'):
|
||||||
|
|||||||
@@ -137,12 +137,12 @@ class WOStackUpgradeController(CementBaseController):
|
|||||||
Log.info(self, "Redis is not installed")
|
Log.info(self, "Redis is not installed")
|
||||||
|
|
||||||
if self.app.pargs.wpcli:
|
if self.app.pargs.wpcli:
|
||||||
if os.path.isfile('/usr/bin/wp'):
|
if os.path.isfile('/usr/local/bin/wp'):
|
||||||
packages = packages + [["https://github.com/wp-cli/wp-cli/"
|
packages = packages + [["https://github.com/wp-cli/wp-cli/"
|
||||||
"releases/download/v{0}/"
|
"releases/download/v{0}/"
|
||||||
"wp-cli-{0}.phar"
|
"wp-cli-{0}.phar"
|
||||||
"".format(WOVariables.wo_wp_cli),
|
"".format(WOVariables.wo_wp_cli),
|
||||||
"/usr/bin/wp",
|
"/usr/local/bin/wp",
|
||||||
"WP-CLI"]]
|
"WP-CLI"]]
|
||||||
else:
|
else:
|
||||||
Log.info(self, "WPCLI is not installed with WordOps")
|
Log.info(self, "WPCLI is not installed with WordOps")
|
||||||
@@ -178,13 +178,13 @@ class WOStackUpgradeController(CementBaseController):
|
|||||||
|
|
||||||
if len(packages):
|
if len(packages):
|
||||||
if self.app.pargs.wpcli:
|
if self.app.pargs.wpcli:
|
||||||
WOFileUtils.remove(self,['/usr/bin/wp'])
|
WOFileUtils.remove(self, ['/usr/local/bin/wp'])
|
||||||
|
|
||||||
Log.debug(self, "Downloading following: {0}".format(packages))
|
Log.debug(self, "Downloading following: {0}".format(packages))
|
||||||
WODownload.download(self, packages)
|
WODownload.download(self, packages)
|
||||||
|
|
||||||
if self.app.pargs.wpcli:
|
if self.app.pargs.wpcli:
|
||||||
WOFileUtils.chmod(self, "/usr/bin/wp", 0o775)
|
WOFileUtils.chmod(self, "/usr/local/bin/wp", 0o775)
|
||||||
|
|
||||||
Log.info(self, "Successfully updated packages")
|
Log.info(self, "Successfully updated packages")
|
||||||
else:
|
else:
|
||||||
|
|||||||
@@ -39,6 +39,6 @@ server {
|
|||||||
location ~ \.php$ {
|
location ~ \.php$ {
|
||||||
try_files $uri =404;
|
try_files $uri =404;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_pass php;
|
fastcgi_pass php72;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,9 @@
|
|||||||
# FastCGI cache settings
|
# FastCGI cache settings
|
||||||
fastcgi_cache_path /var/run/nginx-cache levels=1:2 keys_zone=WORDPRESS:50m inactive=60m;
|
fastcgi_cache_path /var/run/nginx-cache levels=1:2 keys_zone=WORDPRESS:50m inactive=60m max_size=256M;
|
||||||
fastcgi_cache_key "$scheme$request_method$host$request_uri";
|
fastcgi_cache_key "$scheme$request_method$host$request_uri";
|
||||||
fastcgi_cache_use_stale error timeout invalid_header updating http_500 http_503;
|
fastcgi_cache_use_stale error timeout invalid_header updating http_500 http_503;
|
||||||
|
fastcgi_cache_methods GET HEAD;
|
||||||
|
fastcgi_cache_background_update on;
|
||||||
fastcgi_cache_valid 200 301 302 404 1h;
|
fastcgi_cache_valid 200 301 302 404 1h;
|
||||||
fastcgi_buffers 16 16k;
|
fastcgi_buffers 16 16k;
|
||||||
fastcgi_buffer_size 32k;
|
fastcgi_buffer_size 32k;
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ location = /nginx_status {
|
|||||||
}
|
}
|
||||||
location ~ ^/(status|ping)$ {
|
location ~ ^/(status|ping)$ {
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_pass php7;
|
fastcgi_pass php73;
|
||||||
include common/acl.conf;
|
include common/acl.conf;
|
||||||
}
|
}
|
||||||
# WordOps (wo) utilities
|
# WordOps (wo) utilities
|
||||||
|
|||||||
@@ -59,7 +59,7 @@ location = /nginx_status {
|
|||||||
}
|
}
|
||||||
location ~ ^/(status|ping)$ {
|
location ~ ^/(status|ping)$ {
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_pass php;
|
fastcgi_pass php72;
|
||||||
include common/acl.conf;
|
include common/acl.conf;
|
||||||
}
|
}
|
||||||
# WordOps (wo) utilities
|
# WordOps (wo) utilities
|
||||||
|
|||||||
55
wo/cli/templates/map-wp.mustache
Normal file
55
wo/cli/templates/map-wp.mustache
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
# NGINX CONFIGURATION FOR FASTCGI_CACHE EXCEPTION
|
||||||
|
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
||||||
|
|
||||||
|
# do not cache xhtml request
|
||||||
|
map $http_x_requested_with $http_request_no_cache {
|
||||||
|
default 0;
|
||||||
|
XMLHttpRequest 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
# do not cache requests on cookies
|
||||||
|
map $http_cookie $cookie_no_cache {
|
||||||
|
default 0;
|
||||||
|
"~*wordpress_[a-f0-9]+" 1;
|
||||||
|
"~*wp-postpass" 1;
|
||||||
|
"~*wordpress_logged_in" 1;
|
||||||
|
"~*wordpress_no_cache" 1;
|
||||||
|
"~*comment_author" 1;
|
||||||
|
"~*woocommerce_items_in_cart" 1;
|
||||||
|
"~*woocommerce_cart_hash" 1;
|
||||||
|
"~*wptouch_switch_toogle" 1;
|
||||||
|
"~*comment_author_email_" 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
# do not cache the following uri
|
||||||
|
map $request_uri $uri_no_cache {
|
||||||
|
default 0;
|
||||||
|
"~*/wp-admin/" 1;
|
||||||
|
"~*/wp-[a-zA-Z0-9-]+.php" 1;
|
||||||
|
"~*/feed/" 1;
|
||||||
|
"~*/index.php" 1;
|
||||||
|
"~*/[a-z0-9_-]+-sitemap([0-9]+)?.xml" 1;
|
||||||
|
"~*/sitemap(_index)?.xml" 1;
|
||||||
|
"~*/wp-comments-popup.php" 1;
|
||||||
|
"~*/wp-links-opml.php" 1;
|
||||||
|
"~*/xmlrpc.php" 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
# do not cache requests with query strings
|
||||||
|
map $is_args $query_no_cache {
|
||||||
|
default 1;
|
||||||
|
"" 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
# if all previous check are passed, $skip_cache = 0
|
||||||
|
map $http_request_no_cache$cookie_no_cache$uri_no_cache$query_no_cache $skip_cache {
|
||||||
|
default 1;
|
||||||
|
0000 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
# map $skip_cache with $cache_uri for --wpsc stack
|
||||||
|
map $skip_cache $cache_uri {
|
||||||
|
default 'null cache';
|
||||||
|
0 $request_uri;
|
||||||
|
}
|
||||||
|
|
||||||
@@ -6,5 +6,5 @@ location / {
|
|||||||
location ~ \.php$ {
|
location ~ \.php$ {
|
||||||
try_files $uri =404;
|
try_files $uri =404;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_pass php;
|
fastcgi_pass php72;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -6,5 +6,5 @@ location / {
|
|||||||
location ~ \.php$ {
|
location ~ \.php$ {
|
||||||
try_files $uri =404;
|
try_files $uri =404;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_pass php7;
|
fastcgi_pass php73;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,21 +1,7 @@
|
|||||||
# Redis NGINX CONFIGURATION
|
# Redis NGINX CONFIGURATION
|
||||||
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
||||||
set $skip_cache 0;
|
# $skip_cache variable set in /etc/nginx/conf.d/map-wp.conf
|
||||||
# POST requests and URL with a query string should always go to php
|
|
||||||
if ($request_method = POST) {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
if ($query_string != "") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Don't cache URL containing the following segments
|
|
||||||
if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|wp-.*\.php|index.php|/feed/|.*sitemap.*\.xml)") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Don't use the cache for logged in users or recent commenter or customer with items in cart
|
|
||||||
if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in|[a-z0-9]+_items_in_cart") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
||||||
location / {
|
location / {
|
||||||
try_files $uri $uri/ /index.php$is_args$args;
|
try_files $uri $uri/ /index.php$is_args$args;
|
||||||
@@ -52,5 +38,5 @@ location ~ \.php$ {
|
|||||||
more_set_headers 'X-SRCache-Store-Status $srcache_store_status';
|
more_set_headers 'X-SRCache-Store-Status $srcache_store_status';
|
||||||
|
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_pass php7;
|
fastcgi_pass php73;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,21 +1,7 @@
|
|||||||
# Redis NGINX CONFIGURATION
|
# Redis NGINX CONFIGURATION
|
||||||
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
||||||
set $skip_cache 0;
|
# $skip_cache variable set in /etc/nginx/conf.d/map-wp.conf
|
||||||
# POST requests and URL with a query string should always go to php
|
|
||||||
if ($request_method = POST) {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
if ($query_string != "") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Don't cache URL containing the following segments
|
|
||||||
if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|wp-.*\.php|index.php|/feed/|.*sitemap.*\.xml)") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Don't use the cache for logged in users or recent commenter or customer with items in cart
|
|
||||||
if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in|[a-z0-9]+_items_in_cart") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
||||||
location / {
|
location / {
|
||||||
try_files $uri $uri/ /index.php$is_args$args;
|
try_files $uri $uri/ /index.php$is_args$args;
|
||||||
@@ -53,5 +39,5 @@ location ~ \.php$ {
|
|||||||
more_set_headers 'X-SRCache-Store-Status $srcache_store_status';
|
more_set_headers 'X-SRCache-Store-Status $srcache_store_status';
|
||||||
|
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_pass php;
|
fastcgi_pass php72;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,21 +1,50 @@
|
|||||||
# Common upstream settings
|
# Common upstream settings
|
||||||
|
|
||||||
|
# PHP 5.6 upstream
|
||||||
upstream php {
|
upstream php {
|
||||||
server 127.0.0.1:9072;
|
server 127.0.0.1:9000;
|
||||||
}
|
}
|
||||||
|
|
||||||
upstream debug {
|
upstream debug {
|
||||||
# Debug Pool
|
# Debug Pool
|
||||||
server 127.0.0.1:9172;
|
server 127.0.0.1:9001;
|
||||||
}
|
}
|
||||||
{{#php7conf}}
|
|
||||||
|
# PHP 7.0 upstream
|
||||||
upstream php7 {
|
upstream php7 {
|
||||||
server 127.0.0.1:9072;
|
server 127.0.0.1:9070;
|
||||||
}
|
}
|
||||||
upstream debug7 {
|
|
||||||
|
# PHP 7.2 upstream with load-balancing on two unix sockets
|
||||||
|
upstream php72 {
|
||||||
|
server unix:/var/run/php/php72-fpm.sock;
|
||||||
|
}
|
||||||
|
|
||||||
|
# PHP 7.2 debug
|
||||||
|
upstream debug72 {
|
||||||
# Debug Pool
|
# Debug Pool
|
||||||
server 127.0.0.1:9172;
|
server 127.0.0.1:9172;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# PHP 7.3 upstream with load-balancing on two unix sockets
|
||||||
|
upstream php73 {
|
||||||
|
server unix:/var/run/php/php73-fpm.sock;
|
||||||
|
}
|
||||||
|
|
||||||
|
{{#php7conf}}
|
||||||
|
# PHP 7.3 debug
|
||||||
|
upstream debug73 {
|
||||||
|
# Debug Pool
|
||||||
|
server 127.0.0.1:9173;
|
||||||
|
}
|
||||||
{{/php7conf}}
|
{{/php7conf}}
|
||||||
|
|
||||||
|
# Netdata Monitoring Upstream
|
||||||
|
upstream netdata {
|
||||||
|
server 127.0.0.1:19999;
|
||||||
|
keepalive 64;
|
||||||
|
}
|
||||||
|
|
||||||
{{#hhvmconf}}
|
{{#hhvmconf}}
|
||||||
upstream hhvm {
|
upstream hhvm {
|
||||||
# HHVM Pool
|
# HHVM Pool
|
||||||
|
|||||||
@@ -38,10 +38,10 @@ server {
|
|||||||
}
|
}
|
||||||
{{/static}}
|
{{/static}}
|
||||||
|
|
||||||
{{^static}}include {{^hhvm}}{{#basic}}common/php7.conf;{{/basic}}{{#wpfc}}common/wpfc-php7.conf;{{/wpfc}} {{#wpsc}}common/wpsc-php7.conf;{{/wpsc}}{{#wpredis}}common/redis-php7.conf;{{/wpredis}} {{/hhvm}}{{#hhvm}}{{#basic}}common/php-hhvm.conf;{{/basic}}{{#wpfc}}common/wpfc-hhvm.conf;{{/wpfc}} {{#wpsc}}common/wpsc-hhvm.conf;{{/wpsc}}{{#wpredis}}common/redis-hhvm.conf;{{/wpredis}} {{/hhvm}}
|
{{^static}}include {{^hhvm}}{{#basic}}common/php73.conf;{{/basic}}{{#wpfc}}common/wpfc-php73.conf;{{/wpfc}} {{#wpsc}}common/wpsc-php73.conf;{{/wpsc}}{{#wpredis}}common/redis-php73.conf;{{/wpredis}} {{/hhvm}}{{#hhvm}}{{#basic}}common/php-hhvm.conf;{{/basic}}{{#wpfc}}common/wpfc-hhvm.conf;{{/wpfc}} {{#wpsc}}common/wpsc-hhvm.conf;{{/wpsc}}{{#wpredis}}common/redis-hhvm.conf;{{/wpredis}} {{/hhvm}}
|
||||||
{{#wpsubdir}}include common/wpsubdir.conf;{{/wpsubdir}}{{/static}}
|
{{#wpsubdir}}include common/wpsubdir.conf;{{/wpsubdir}}{{/static}}
|
||||||
{{#wp}}include common/wpcommon-php7.conf;{{/wp}}
|
{{#wp}}include common/wpcommon-php73.conf;{{/wp}}
|
||||||
{{^proxy}}include common/locations-php7.conf;{{/proxy}}
|
{{^proxy}}include common/locations-php73.conf;{{/proxy}}
|
||||||
{{^vma}}{{^rc}}include {{webroot}}/conf/nginx/*.conf;{{/rc}}{{/vma}}
|
{{^vma}}{{^rc}}include {{webroot}}/conf/nginx/*.conf;{{/rc}}{{/vma}}
|
||||||
{{/proxy}}
|
{{/proxy}}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -38,9 +38,9 @@ server {
|
|||||||
}
|
}
|
||||||
{{/static}}
|
{{/static}}
|
||||||
|
|
||||||
{{^static}}include {{^hhvm}}{{#basic}}common/php.conf;{{/basic}}{{#wpfc}}common/wpfc.conf;{{/wpfc}} {{#wpsc}}common/wpsc.conf;{{/wpsc}}{{#wpredis}}common/redis.conf;{{/wpredis}} {{/hhvm}}{{#hhvm}}{{#basic}}common/php-hhvm.conf;{{/basic}}{{#wpfc}}common/wpfc-hhvm.conf;{{/wpfc}} {{#wpsc}}common/wpsc-hhvm.conf;{{/wpsc}}{{#wpredis}}common/redis-hhvm.conf;{{/wpredis}} {{/hhvm}} {{#wpsubdir}}include common/wpsubdir.conf;{{/wpsubdir}}{{/static}}
|
{{^static}}include {{^hhvm}}{{#basic}}common/php72.conf;{{/basic}}{{#wpfc}}common/wpfc-php72.conf;{{/wpfc}} {{#wpsc}}common/wpsc-php72.conf;{{/wpsc}}{{#wpredis}}common/redis-php72.conf;{{/wpredis}} {{/hhvm}}{{#hhvm}}{{#basic}}common/php-hhvm.conf;{{/basic}}{{#wpfc}}common/wpfc-hhvm.conf;{{/wpfc}} {{#wpsc}}common/wpsc-hhvm.conf;{{/wpsc}}{{#wpredis}}common/redis-hhvm.conf;{{/wpredis}} {{/hhvm}} {{#wpsubdir}}include common/wpsubdir.conf;{{/wpsubdir}}{{/static}}
|
||||||
{{#wp}}include common/wpcommon.conf;{{/wp}}
|
{{#wp}}include common/wpcommon-php72.conf;{{/wp}}
|
||||||
{{^proxy}}include common/locations.conf;{{/proxy}}
|
{{^proxy}}include common/locations-php72.conf;{{/proxy}}
|
||||||
{{^vma}}{{^rc}}include {{webroot}}/conf/nginx/*.conf;{{/rc}}{{/vma}}
|
{{^vma}}{{^rc}}include {{webroot}}/conf/nginx/*.conf;{{/rc}}{{/vma}}
|
||||||
{{/proxy}}
|
{{/proxy}}
|
||||||
}
|
}
|
||||||
|
|||||||
7
wo/cli/templates/webp.mustache
Normal file
7
wo/cli/templates/webp.mustache
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# WEBP NGINX CONFIGURATION
|
||||||
|
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
||||||
|
|
||||||
|
map $http_accept $webp_suffix {
|
||||||
|
default "";
|
||||||
|
"~*webp" ".webp";
|
||||||
|
}
|
||||||
@@ -4,7 +4,7 @@
|
|||||||
location = /wp-login.php {
|
location = /wp-login.php {
|
||||||
limit_req zone=one burst=1 nodelay;
|
limit_req zone=one burst=1 nodelay;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_pass php7;
|
fastcgi_pass php73;
|
||||||
}
|
}
|
||||||
# Disable wp-config.txt
|
# Disable wp-config.txt
|
||||||
location = /wp-config.txt {
|
location = /wp-config.txt {
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
location = /wp-login.php {
|
location = /wp-login.php {
|
||||||
limit_req zone=one burst=1 nodelay;
|
limit_req zone=one burst=1 nodelay;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_pass php;
|
fastcgi_pass php72;
|
||||||
}
|
}
|
||||||
# Disable wp-config.txt
|
# Disable wp-config.txt
|
||||||
location = /wp-config.txt {
|
location = /wp-config.txt {
|
||||||
|
|||||||
@@ -1,21 +1,7 @@
|
|||||||
# WPFC NGINX CONFIGURATION
|
# WPFC NGINX CONFIGURATION
|
||||||
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
||||||
set $skip_cache 0;
|
# $skip_cache variable set in /etc/nginx/conf.d/map-wp.conf
|
||||||
# POST requests and URL with a query string should always go to php
|
|
||||||
if ($request_method = POST) {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
if ($query_string != "") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Don't cache URL containing the following segments
|
|
||||||
if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|wp-.*\.php|index.php|/feed/|.*sitemap.*\.xml)") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Don't use the cache for logged in users or recent commenter or customer with items in cart
|
|
||||||
if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in|[a-z0-9]+_items_in_cart") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
||||||
location / {
|
location / {
|
||||||
try_files $uri $uri/ /index.php$is_args$args;
|
try_files $uri $uri/ /index.php$is_args$args;
|
||||||
|
|||||||
@@ -1,32 +1,16 @@
|
|||||||
# WPFC NGINX CONFIGURATION
|
# WPFC NGINX CONFIGURATION
|
||||||
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
||||||
set $skip_cache 0;
|
# $skip_cache variable set in /etc/nginx/conf.d/map-wp.conf
|
||||||
# POST requests and URL with a query string should always go to php
|
|
||||||
if ($request_method = POST) {
|
add_header X-fastcgi-cache $upstream_cache_status;
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
if ($query_string != "") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Don't cache URL containing the following segments
|
|
||||||
if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|wp-.*\.php|index.php|/feed/|.*sitemap.*\.xml)") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Don't use the cache for logged in users or recent commenter or customer with items in cart
|
|
||||||
if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in|[a-z0-9]+_items_in_cart") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
||||||
location / {
|
location / {
|
||||||
try_files $uri $uri/ /index.php$is_args$args;
|
try_files $uri $uri/ /index.php$is_args$args;
|
||||||
}
|
}
|
||||||
location ~ ^/wp-content/cache/minify/(.+\.(css|js))$ {
|
|
||||||
try_files $uri /wp-content/plugins/w3-total-cache/pub/minify.php?file=$1;
|
|
||||||
}
|
|
||||||
location ~ \.php$ {
|
location ~ \.php$ {
|
||||||
try_files $uri =404;
|
try_files $uri =404;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_pass php7;
|
fastcgi_pass php73;
|
||||||
fastcgi_cache_bypass $skip_cache;
|
fastcgi_cache_bypass $skip_cache;
|
||||||
fastcgi_no_cache $skip_cache;
|
fastcgi_no_cache $skip_cache;
|
||||||
fastcgi_cache WORDPRESS;
|
fastcgi_cache WORDPRESS;
|
||||||
|
|||||||
@@ -1,32 +1,16 @@
|
|||||||
# WPFC NGINX CONFIGURATION
|
# WPFC NGINX CONFIGURATION
|
||||||
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
||||||
set $skip_cache 0;
|
# $skip_cache variable set in /etc/nginx/conf.d/map-wp.conf
|
||||||
# POST requests and URL with a query string should always go to php
|
|
||||||
if ($request_method = POST) {
|
add_header X-fastcgi-cache $upstream_cache_status;
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
if ($query_string != "") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Don't cache URL containing the following segments
|
|
||||||
if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|wp-.*\.php|index.php|/feed/|.*sitemap.*\.xml)") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Don't use the cache for logged in users or recent commenter or customer with items in cart
|
|
||||||
if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in|[a-z0-9]+_items_in_cart") {
|
|
||||||
set $skip_cache 1;
|
|
||||||
}
|
|
||||||
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
||||||
location / {
|
location / {
|
||||||
try_files $uri $uri/ /index.php$is_args$args;
|
try_files $uri $uri/ /index.php$is_args$args;
|
||||||
}
|
}
|
||||||
location ~ ^/wp-content/cache/minify/(.+\.(css|js))$ {
|
|
||||||
try_files $uri /wp-content/plugins/w3-total-cache/pub/minify.php?file=$1;
|
|
||||||
}
|
|
||||||
location ~ \.php$ {
|
location ~ \.php$ {
|
||||||
try_files $uri =404;
|
try_files $uri =404;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_pass php;
|
fastcgi_pass php72;
|
||||||
fastcgi_cache_bypass $skip_cache;
|
fastcgi_cache_bypass $skip_cache;
|
||||||
fastcgi_no_cache $skip_cache;
|
fastcgi_no_cache $skip_cache;
|
||||||
fastcgi_cache WORDPRESS;
|
fastcgi_cache WORDPRESS;
|
||||||
|
|||||||
@@ -1,21 +1,7 @@
|
|||||||
# WPSC NGINX CONFIGURATION
|
# WPSC NGINX CONFIGURATION
|
||||||
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
||||||
set $cache_uri $request_uri;
|
# $skip_cache variable set in /etc/nginx/conf.d/map-wp.conf
|
||||||
# POST requests and URL with a query string should always go to php
|
|
||||||
if ($request_method = POST) {
|
|
||||||
set $cache_uri 'null cache';
|
|
||||||
}
|
|
||||||
if ($query_string != "") {
|
|
||||||
set $cache_uri 'null cache';
|
|
||||||
}
|
|
||||||
# Don't cache URL containing the following segments
|
|
||||||
if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|wp-.*\.php|index.php|/feed/|.*sitemap.*\.xml)") {
|
|
||||||
set $cache_uri 'null cache';
|
|
||||||
}
|
|
||||||
# Don't use the cache for logged in users or recent commenter or customer with items in cart
|
|
||||||
if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in|[a-z0-9]+_items_in_cart") {
|
|
||||||
set $cache_uri 'null cache';
|
|
||||||
}
|
|
||||||
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
||||||
location / {
|
location / {
|
||||||
# If we add index.php?$args its break WooCommerce like plugins
|
# If we add index.php?$args its break WooCommerce like plugins
|
||||||
|
|||||||
@@ -1,21 +1,7 @@
|
|||||||
# WPSC NGINX CONFIGURATION
|
# WPSC NGINX CONFIGURATION
|
||||||
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
||||||
set $cache_uri $request_uri;
|
# $cache_uri variable set in /etc/nginx/conf.d/map-wp.conf
|
||||||
# POST requests and URL with a query string should always go to php
|
|
||||||
if ($request_method = POST) {
|
|
||||||
set $cache_uri 'null cache';
|
|
||||||
}
|
|
||||||
if ($query_string != "") {
|
|
||||||
set $cache_uri 'null cache';
|
|
||||||
}
|
|
||||||
# Don't cache URL containing the following segments
|
|
||||||
if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|wp-.*\.php|index.php|/feed/|.*sitemap.*\.xml)") {
|
|
||||||
set $cache_uri 'null cache';
|
|
||||||
}
|
|
||||||
# Don't use the cache for logged in users or recent commenter or customer with items in cart
|
|
||||||
if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in|[a-z0-9]+_items_in_cart") {
|
|
||||||
set $cache_uri 'null cache';
|
|
||||||
}
|
|
||||||
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
||||||
location / {
|
location / {
|
||||||
# If we add index.php?$args its break WooCommerce like plugins
|
# If we add index.php?$args its break WooCommerce like plugins
|
||||||
@@ -25,7 +11,7 @@ location / {
|
|||||||
location ~ \.php$ {
|
location ~ \.php$ {
|
||||||
try_files $uri =404;
|
try_files $uri =404;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_pass php7;
|
fastcgi_pass php73;
|
||||||
# Following line is needed by WP Super Cache plugin
|
# Following line is needed by WP Super Cache plugin
|
||||||
fastcgi_param SERVER_NAME $http_host;
|
fastcgi_param SERVER_NAME $http_host;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,21 +1,7 @@
|
|||||||
# WPSC NGINX CONFIGURATION
|
# WPSC NGINX CONFIGURATION
|
||||||
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
# DO NOT MODIFY, ALL CHANGES WILL BE LOST AFTER AN WordOps (wo) UPDATE
|
||||||
set $cache_uri $request_uri;
|
# $cache_uri variable set in /etc/nginx/conf.d/map-wp.conf
|
||||||
# POST requests and URL with a query string should always go to php
|
|
||||||
if ($request_method = POST) {
|
|
||||||
set $cache_uri 'null cache';
|
|
||||||
}
|
|
||||||
if ($query_string != "") {
|
|
||||||
set $cache_uri 'null cache';
|
|
||||||
}
|
|
||||||
# Don't cache URL containing the following segments
|
|
||||||
if ($request_uri ~* "(/wp-admin/|/xmlrpc.php|wp-.*\.php|index.php|/feed/|.*sitemap.*\.xml)") {
|
|
||||||
set $cache_uri 'null cache';
|
|
||||||
}
|
|
||||||
# Don't use the cache for logged in users or recent commenter or customer with items in cart
|
|
||||||
if ($http_cookie ~* "comment_author|wordpress_[a-f0-9]+|wp-postpass|wordpress_no_cache|wordpress_logged_in|[a-z0-9]+_items_in_cart") {
|
|
||||||
set $cache_uri 'null cache';
|
|
||||||
}
|
|
||||||
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
# Use cached or actual file if they exists, Otherwise pass request to WordPress
|
||||||
location / {
|
location / {
|
||||||
# If we add index.php?$args its break WooCommerce like plugins
|
# If we add index.php?$args its break WooCommerce like plugins
|
||||||
@@ -25,7 +11,7 @@ location / {
|
|||||||
location ~ \.php$ {
|
location ~ \.php$ {
|
||||||
try_files $uri =404;
|
try_files $uri =404;
|
||||||
include fastcgi_params;
|
include fastcgi_params;
|
||||||
fastcgi_pass php;
|
fastcgi_pass php72;
|
||||||
# Following line is needed by WP Super Cache plugin
|
# Following line is needed by WP Super Cache plugin
|
||||||
fastcgi_param SERVER_NAME $http_host;
|
fastcgi_param SERVER_NAME $http_host;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -113,11 +113,10 @@ class WOService():
|
|||||||
|
|
||||||
def get_service_status(self, service_name):
|
def get_service_status(self, service_name):
|
||||||
|
|
||||||
|
|
||||||
try:
|
try:
|
||||||
is_exist = subprocess.getstatusoutput('which {0}'
|
is_exist = subprocess.getstatusoutput('which {0}'
|
||||||
.format(service_name))
|
.format(service_name))
|
||||||
if is_exist[0] == 0 or service_name in ['php7.0-fpm', 'php5.6-fpm']:
|
if is_exist[0] == 0 or service_name in ['php7.2-fpm', 'php7.3-fpm']:
|
||||||
retcode = subprocess.getstatusoutput('service {0} status'
|
retcode = subprocess.getstatusoutput('service {0} status'
|
||||||
.format(service_name))
|
.format(service_name))
|
||||||
if retcode[0] == 0:
|
if retcode[0] == 0:
|
||||||
|
|||||||
@@ -18,9 +18,9 @@ class WOVariables():
|
|||||||
wo_adminer = "4.7.1"
|
wo_adminer = "4.7.1"
|
||||||
|
|
||||||
# Get WPCLI path
|
# Get WPCLI path
|
||||||
wo_wpcli_path = os.popen('which wp | tr "\n" " "').read()
|
wo_wpcli_path = os.popen('command -v wp | tr "\n" " "').read()
|
||||||
if wo_wpcli_path == '':
|
if wo_wpcli_path == '':
|
||||||
wo_wpcli_path = '/usr/bin/wp '
|
wo_wpcli_path = '/usr/local/bin/wp '
|
||||||
|
|
||||||
# Current date and time of System
|
# Current date and time of System
|
||||||
wo_date = datetime.datetime.now().strftime('%d%b%Y%H%M%S')
|
wo_date = datetime.datetime.now().strftime('%d%b%Y%H%M%S')
|
||||||
@@ -102,42 +102,46 @@ class WOVariables():
|
|||||||
|
|
||||||
# PHP repo and packages
|
# PHP repo and packages
|
||||||
if wo_platform_distro == 'ubuntu':
|
if wo_platform_distro == 'ubuntu':
|
||||||
if (wo_platform_codename == 'trusty' or wo_platform_codename == 'xenial' or wo_platform_codename == 'bionic'):
|
|
||||||
wo_php_repo = "ppa:ondrej/php"
|
wo_php_repo = "ppa:ondrej/php"
|
||||||
wo_php = ["php7.2-fpm", "php7.2-curl", "php7.2-gd", "php7.2-imap",
|
wo_php = ["php7.2-fpm", "php7.2-curl", "php7.2-gd", "php7.2-imap",
|
||||||
"php7.2-readline", "php7.2-common", "php7.2-recode",
|
"php7.2-readline", "php7.2-common", "php7.2-recode",
|
||||||
"php7.2-cli", "php7.2-mbstring",
|
"php7.2-cli", "php7.2-mbstring",
|
||||||
"php7.2-bcmath", "php7.2-mysql", "php7.2-opcache", "php7.2-zip", "php7.2-xml", "php7.2-soap"]
|
"php7.2-bcmath", "php7.2-mysql", "php7.2-opcache",
|
||||||
wo_php72 = ["php7.2-fpm", "php7.2-curl", "php7.2-gd", "php7.2-imap",
|
"php7.2-zip", "php7.2-xml", "php7.2-soap"]
|
||||||
"php7.2-readline", "php7.2-common", "php7.2-recode",
|
wo_php73 = ["php7.3-fpm", "php7.3-curl", "php7.3-gd", "php7.3-imap",
|
||||||
"php7.2-cli", "php7.2-mbstring",
|
"php7.3-readline", "php7.3-common", "php7.3-recode",
|
||||||
"php7.2-bcmath", "php7.2-mysql", "php7.2-opcache", "php7.2-zip", "php7.2-xml", "php7.2-soap"]
|
"php7.3-cli", "php7.3-mbstring",
|
||||||
|
"php7.3-bcmath", "php7.3-mysql", "php7.3-opcache",
|
||||||
|
"php7.3-zip", "php7.3-xml", "php7.3-soap"]
|
||||||
wo_php_extra = ["php-memcached", "php-imagick", "memcached",
|
wo_php_extra = ["php-memcached", "php-imagick", "memcached",
|
||||||
"graphviz", "php-pear", "php-xdebug", "php-msgpack", "php-redis"]
|
"graphviz", "php-xdebug", "php-msgpack", "php-redis"]
|
||||||
elif wo_platform_distro == 'debian':
|
elif wo_platform_distro == 'debian':
|
||||||
wo_php_repo = ("deb https://packages.sury.org/php/ {codename} main".format(codename=wo_platform_codename))
|
wo_php_repo = (
|
||||||
|
"deb https://packages.sury.org/php/ {codename} main".format(codename=wo_platform_codename))
|
||||||
wo_php = ["php7.2-fpm", "php7.2-curl", "php7.2-gd", "php7.2-imap",
|
wo_php = ["php7.2-fpm", "php7.2-curl", "php7.2-gd", "php7.2-imap",
|
||||||
"php-sodium", "php7.2-common", "php7.2-readline", "php7.2-redis",
|
"php7.2-common", "php7.2-readline", "php-redis",
|
||||||
"php7.2-mysql", "php7.2-cli", "php7.2-memcache", "php7.2-imagick",
|
"php7.2-mysql", "php7.2-cli", "php-imagick",
|
||||||
"php7.2-mbstring", "php7.2-recode", "php7.2-bcmath", "php7.2-opcache", "php7.2-zip", "php7.2-xml",
|
"php7.2-mbstring", "php7.2-recode", "php7.2-bcmath",
|
||||||
"php7.2-soap", "php7.2-msgpack",
|
"php7.2-opcache", "php7.2-zip", "php7.2-xml",
|
||||||
"memcached", "graphviz", "php-pear", "php7.2-xdebug"]
|
"php7.2-soap", "php-msgpack",
|
||||||
wo_php72 = ["php7.2-fpm", "php7.2-curl", "php7.2-gd", "php7.2-imap",
|
"graphviz", "php-pear", "php-xdebug"]
|
||||||
"php-sodium", "php7.2-common", "php7.2-readline", "php7.2-redis",
|
wo_php73 = ["php7.3-fpm", "php7.3-curl", "php7.3-gd", "php7.3-imap",
|
||||||
"php7.2-mysql", "php7.2-cli", "php7.2-memcache", "php7.2-imagick",
|
"php7.3-common", "php7.3-readline", "php-redis",
|
||||||
"php7.2-mbstring", "php7.2-recode", "php7.2-bcmath", "php7.2-opcache", "php7.2-zip", "php7.2-xml",
|
"php7.3-mysql", "php7.3-cli", "php-imagick",
|
||||||
"php7.2-soap", "php7.2-msgpack",
|
"php7.3-mbstring", "php7.3-recode", "php7.3-bcmath",
|
||||||
"memcached", "graphviz", "php-pear", "php7.2-xdebug"]
|
"php7.3-opcache", "php7.3-zip", "php7.3-xml",
|
||||||
|
"php7.3-soap", "php-msgpack",
|
||||||
|
"graphviz", "php-pear", "php-xdebug"]
|
||||||
wo_php_extra = []
|
wo_php_extra = []
|
||||||
|
|
||||||
# MySQL repo and packages
|
# MySQL repo and packages
|
||||||
if wo_platform_distro == 'ubuntu':
|
if wo_platform_distro == 'ubuntu':
|
||||||
wo_mysql_repo = ("deb [arch=amd64,i386,ppc64el] http://sfo1.mirrors.digitalocean.com/mariadb/repo/"
|
wo_mysql_repo = ("deb [arch=amd64,i386,ppc64el] http://sfo1.mirrors.digitalocean.com/mariadb/repo/"
|
||||||
"10.1/ubuntu {codename} main"
|
"10.3/ubuntu {codename} main"
|
||||||
.format(codename=wo_platform_codename))
|
.format(codename=wo_platform_codename))
|
||||||
elif wo_platform_distro == 'debian':
|
elif wo_platform_distro == 'debian':
|
||||||
wo_mysql_repo = ("deb [arch=amd64,i386,ppc64el] http://sfo1.mirrors.digitalocean.com/mariadb/repo/"
|
wo_mysql_repo = ("deb [arch=amd64,i386,ppc64el] http://sfo1.mirrors.digitalocean.com/mariadb/repo/"
|
||||||
"10.1/debian {codename} main"
|
"10.3/debian {codename} main"
|
||||||
.format(codename=wo_platform_codename))
|
.format(codename=wo_platform_codename))
|
||||||
|
|
||||||
wo_mysql = ["mariadb-server", "percona-toolkit"]
|
wo_mysql = ["mariadb-server", "percona-toolkit"]
|
||||||
@@ -161,7 +165,6 @@ class WOVariables():
|
|||||||
wo_redis_repo = ("deb https://packages.sury.org/php/ {codename} all"
|
wo_redis_repo = ("deb https://packages.sury.org/php/ {codename} all"
|
||||||
.format(codename=wo_platform_codename))
|
.format(codename=wo_platform_codename))
|
||||||
|
|
||||||
if (wo_platform_codename == 'trusty' or wo_platform_codename == 'xenial' or wo_platform_codename == 'bionic' or wo_platform_distro == 'debian'):
|
|
||||||
wo_redis = ['redis-server', 'php-redis']
|
wo_redis = ['redis-server', 'php-redis']
|
||||||
|
|
||||||
# Repo path
|
# Repo path
|
||||||
|
|||||||
Reference in New Issue
Block a user