Prepare for release
This commit is contained in:
12
CHANGELOG.md
12
CHANGELOG.md
@@ -8,14 +8,26 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|||||||
|
|
||||||
### v3.9.x - [Unreleased]
|
### v3.9.x - [Unreleased]
|
||||||
|
|
||||||
|
### v3.9.8.6 - 2019-08-30
|
||||||
|
|
||||||
|
#### Added
|
||||||
|
|
||||||
|
- Subdomains are automatically secured with an existant Wildcard LetsEncrypt SSL certificate.
|
||||||
|
(If a wildcard certificate exist, WordOps will use this certificate for subdomains instead of issuing new certificates)
|
||||||
|
- MySQL & Redis stack to `wo stack remove/purge`
|
||||||
|
- Dump MySQL databases before purging MySQL Stack
|
||||||
|
|
||||||
#### Changed
|
#### Changed
|
||||||
|
|
||||||
- Date format in backup name : /backup/30Aug2019035932 -> /backup/30Aug2019-03-59-32
|
- Date format in backup name : /backup/30Aug2019035932 -> /backup/30Aug2019-03-59-32
|
||||||
|
- Cleanup and update bash_completion
|
||||||
|
|
||||||
#### Fixed
|
#### Fixed
|
||||||
|
|
||||||
- cache-enabler plugin not installed and configured with `wo site update site.tld --wpce`
|
- cache-enabler plugin not installed and configured with `wo site update site.tld --wpce`
|
||||||
- possible issue with domain variable in `--letsencrypt=wildcard`
|
- possible issue with domain variable in `--letsencrypt=wildcard`
|
||||||
|
- python3-mysqldb not available on Debian 8 (Jessie)
|
||||||
|
- Fix mysql variable skip-name-resolved
|
||||||
|
|
||||||
### v3.9.8.5 - 2019-08-30
|
### v3.9.8.5 - 2019-08-30
|
||||||
|
|
||||||
|
|||||||
@@ -35,7 +35,7 @@ _wo_complete()
|
|||||||
|
|
||||||
"stack")
|
"stack")
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
-W "upgrade install purge reload remove restart start status stop migrate" \
|
-W "upgrade install purge reload remove restart start status stop" \
|
||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
|
|
||||||
@@ -74,12 +74,12 @@ _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 --php73 --mysql --wpcli --phpmyadmin --adminer --utils --all --redis --phpredisadmin --composer --netdata --fail2ban --dashboard --proftpd" \
|
-W "--recommended --web --admin --security --nginx --php --php73 --mysql --wpcli --phpmyadmin --adminer --utils --redis --phpredisadmin --composer --netdata --fail2ban --dashboard --proftpd --clamav --mysqlclient --mysqltuner --extplorer --all" \
|
||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
"upgrade" )
|
"upgrade" )
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
-W "--web --nginx --php --php73 --mysql --all --netdata --composer --phpmyadmin --dashboard --no-prompt --wpcli" \
|
-W "--web --admin --utils --nginx --php --php73 --mysql --all --netdata --composer --phpmyadmin --dashboard --no-prompt --mysqtuner --wpcli" \
|
||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
"start" | "stop" | "reload" | "restart" | "status")
|
"start" | "stop" | "reload" | "restart" | "status")
|
||||||
@@ -87,11 +87,6 @@ _wo_complete()
|
|||||||
-W "--nginx --php --php73 --mysql --redis --fail2ban --netdata -proftpd" \
|
-W "--nginx --php --php73 --mysql --redis --fail2ban --netdata -proftpd" \
|
||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
"migrate")
|
|
||||||
COMPREPLY=( $(compgen \
|
|
||||||
-W "--mariadb" \
|
|
||||||
-- $cur) )
|
|
||||||
;;
|
|
||||||
"list")
|
"list")
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
-W "--enabled --disabled" \
|
-W "--enabled --disabled" \
|
||||||
@@ -159,13 +154,13 @@ _wo_complete()
|
|||||||
|
|
||||||
"create")
|
"create")
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
-W "--user --pass --email --html --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --proxy= --wpredis --wprocket --wpce -le --letsencrypt --letsencrypt=wildcard -le=wildcard --dns --dns=dns_cf --dns=dns_do" \
|
-W "--user --pass --email --html --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --proxy= --wpredis --wprocket --wpce -le --letsencrypt --letsencrypt=wildcard -le=wildcard --dns --dns=dns_cf --dns=dns_do" \
|
||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
|
|
||||||
"update")
|
"update")
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
-W "--password --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --wpredis --wprocket --wpce -le --letsencrypt --letsencrypt=off --letsencrypt=clean -le=wildcard --dns --dns=dns_cf --dns=dns_do" \
|
-W "--password --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --wpredis --wprocket --wpce -le -le=off --letsencrypt --letsencrypt=off --letsencrypt=clean -le=wildcard -le=clean --dns --dns=dns_cf --dns=dns_do" \
|
||||||
-- $cur) )
|
-- $cur) )
|
||||||
;;
|
;;
|
||||||
"delete")
|
"delete")
|
||||||
@@ -230,9 +225,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 --user --email --pass --wpredis --wprocket --wpce --letsencrypt --letsencrypt=wildcard -le --php73 --dns --dns=dns_cf --dns=dns_do"
|
retlist="--wpsc --wpfc --user --email --pass --wpredis --wprocket --wpce -le -le=wildcard --letsencrypt --letsencrypt=wildcard --php73 --dns --dns=dns_cf --dns=dns_do"
|
||||||
elif [ ${COMP_WORDS[2]} == "update" ]; then
|
elif [ ${COMP_WORDS[2]} == "update" ]; then
|
||||||
retlist="--wpfc --wpsc --php73 --php73=off --wpredis --wprocket --wpce -le --letsencrypt --letsencrypt=wildcard --letsencrypt=off --letsencrypt=clean --dns --dns=dns_cf --dns=dns_do"
|
retlist="--wpfc --wpsc --php73 --php73=off --wpredis --wprocket --wpce -le -le=off -le=wildcard --letsencrypt --letsencrypt=wildcard --letsencrypt=off --letsencrypt=clean --dns --dns=dns_cf --dns=dns_do"
|
||||||
else
|
else
|
||||||
retlist=""
|
retlist=""
|
||||||
fi
|
fi
|
||||||
@@ -248,7 +243,7 @@ _wo_complete()
|
|||||||
|
|
||||||
"--wpredis --wprocket --wpce" | "--wpfc" | "--wpsc" | "--wpsubdir" | "--wpsubdomain" | "--user" | "--pass" | "--email" | "--wp")
|
"--wpredis --wprocket --wpce" | "--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 --wpredis --wprocket --wpce --php73 -le --letsencrypt --letsencrypt=wildcard --dns --dns=dns_cf --dns=dns_do"
|
retlist="--user --pass --email --wp --wpsubdir --wpsubdomain --wpfc --wpsc --wpredis --wprocket --wpce --php73 -le -le=off -le=wildcard --letsencrypt --letsencrypt=wildcard --dns --dns=dns_cf --dns=dns_do"
|
||||||
else
|
else
|
||||||
retlist=""
|
retlist=""
|
||||||
fi
|
fi
|
||||||
@@ -261,7 +256,7 @@ _wo_complete()
|
|||||||
|
|
||||||
"--wpredis --wprocket --wpce" | "--wpfc")
|
"--wpredis --wprocket --wpce" | "--wpfc")
|
||||||
if [ ${COMP_WORDS[2]} == "update" ]; then
|
if [ ${COMP_WORDS[2]} == "update" ]; then
|
||||||
retlist="--password --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --wpredis --wprocket --wpce -le --letsencrypt --letsencrypt=off --letsencrypt=clean --dns --dns=dns_cf --dns=dns_do"
|
retlist="--password --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --wpredis --wprocket --wpce -le -le=off --letsencrypt --letsencrypt=off --letsencrypt=clean --dns --dns=dns_cf --dns=dns_do"
|
||||||
else
|
else
|
||||||
retlist=""
|
retlist=""
|
||||||
fi
|
fi
|
||||||
@@ -274,7 +269,7 @@ _wo_complete()
|
|||||||
|
|
||||||
"--web" | "--admin" | "--nginx" | "--php" | "--php73" | "--mysql" | "--wpcli" | "--phpmyadmin" | "--adminer" | "--utils" | "--fail2ban" | "--redis | --phpredisadmin | --netdata")
|
"--web" | "--admin" | "--nginx" | "--php" | "--php73" | "--mysql" | "--wpcli" | "--phpmyadmin" | "--adminer" | "--utils" | "--fail2ban" | "--redis | --phpredisadmin | --netdata")
|
||||||
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 --php73 --mysql --wpcli --phpmyadmin --adminer --utils --redis --fail2ban --phpredisadmin --netdata"
|
retlist="--web --admin --security --nginx --php --php73 --mysql --wpcli --phpmyadmin --adminer --utils --redis --fail2ban --phpredisadmin --netdata -f --force"
|
||||||
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 --php73 --mysql --redis --netdata"
|
retlist="--nginx --php --php73 --mysql --redis --netdata"
|
||||||
elif [[ ${COMP_WORDS[1]} == "debug" ]]; then
|
elif [[ ${COMP_WORDS[1]} == "debug" ]]; then
|
||||||
@@ -314,7 +309,7 @@ _wo_complete()
|
|||||||
elif [ ${COMP_WORDS[2]} == "delete" ]; then
|
elif [ ${COMP_WORDS[2]} == "delete" ]; then
|
||||||
retlist="--db --files --force"
|
retlist="--db --files --force"
|
||||||
elif [ ${COMP_WORDS[2]} == "update" ]; then
|
elif [ ${COMP_WORDS[2]} == "update" ]; then
|
||||||
retlist="--password --php --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --wpredis --wprocket --wpce --letsencrypt --letsencrypt=off "
|
retlist="--password --php --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --wpredis --wprocket --wpce -le -le=off -le=wildcard --letsencrypt --letsencrypt=off "
|
||||||
else
|
else
|
||||||
retlist=""
|
retlist=""
|
||||||
fi
|
fi
|
||||||
@@ -363,7 +358,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 --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --wpredis --wprocket --wpce --letsencrypt --letsencrypt=wildcard -le --dns --dns=dns_cf --dns=dns_do"
|
retlist="--user --pass --email --html --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --wpredis --wprocket --wpce -le -le=wildcard --letsencrypt --letsencrypt=wildcard --dns --dns=dns_cf --dns=dns_do"
|
||||||
fi
|
fi
|
||||||
ret="${retlist[@]/$prev}"
|
ret="${retlist[@]/$prev}"
|
||||||
COMPREPLY=( $(compgen \
|
COMPREPLY=( $(compgen \
|
||||||
|
|||||||
@@ -853,7 +853,8 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
(['--wprocket'],
|
(['--wprocket'],
|
||||||
dict(help="update to WP-Rocket cache", action='store_true')),
|
dict(help="update to WP-Rocket cache", action='store_true')),
|
||||||
(['--wpce'],
|
(['--wpce'],
|
||||||
dict(help="update to Cache-Enabler cache", action='store_true')),
|
dict(help="update to Cache-Enabler cache",
|
||||||
|
action='store_true')),
|
||||||
(['--wpredis'],
|
(['--wpredis'],
|
||||||
dict(help="update to redis cache", action='store_true')),
|
dict(help="update to redis cache", action='store_true')),
|
||||||
(['-le', '--letsencrypt'],
|
(['-le', '--letsencrypt'],
|
||||||
@@ -1238,12 +1239,6 @@ class WOSiteUpdateController(CementBaseController):
|
|||||||
return 0
|
return 0
|
||||||
|
|
||||||
if pargs.letsencrypt:
|
if pargs.letsencrypt:
|
||||||
if ((wo_domain_type == 'subdomain') and
|
|
||||||
(not pargs.letsencrypt == 'wildcard') and
|
|
||||||
(not pargs.letsencrypt == 'off') and
|
|
||||||
(not pargs.letsencrypt == 'clean') and
|
|
||||||
(not pargs.letsencrypt == 'purge')):
|
|
||||||
pargs.letsencrypt == 'subdomain'
|
|
||||||
if pargs.letsencrypt == 'on':
|
if pargs.letsencrypt == 'on':
|
||||||
data['letsencrypt'] = True
|
data['letsencrypt'] = True
|
||||||
letsencrypt = True
|
letsencrypt = True
|
||||||
@@ -1874,6 +1869,7 @@ class WOSiteDeleteController(CementBaseController):
|
|||||||
pargs.site_name = (input('Enter site name : ')
|
pargs.site_name = (input('Enter site name : ')
|
||||||
.strip())
|
.strip())
|
||||||
except IOError as e:
|
except IOError as e:
|
||||||
|
Log.debug(self, str(e))
|
||||||
Log.error(self, 'could not input site name')
|
Log.error(self, 'could not input site name')
|
||||||
|
|
||||||
pargs.site_name = pargs.site_name.strip()
|
pargs.site_name = pargs.site_name.strip()
|
||||||
|
|||||||
@@ -45,7 +45,6 @@ class WOStackController(CementBaseController):
|
|||||||
label = 'stack'
|
label = 'stack'
|
||||||
stacked_on = 'base'
|
stacked_on = 'base'
|
||||||
stacked_type = 'nested'
|
stacked_type = 'nested'
|
||||||
exit_on_close = True
|
|
||||||
description = 'Stack command manages stack operations'
|
description = 'Stack command manages stack operations'
|
||||||
arguments = [
|
arguments = [
|
||||||
(['--all'],
|
(['--all'],
|
||||||
|
|||||||
@@ -147,11 +147,18 @@ class WOVariables():
|
|||||||
if wo_distro == 'raspbian':
|
if wo_distro == 'raspbian':
|
||||||
wo_mysql = ["mariadb-server", "percona-toolkit",
|
wo_mysql = ["mariadb-server", "percona-toolkit",
|
||||||
"python3-mysqldb"]
|
"python3-mysqldb"]
|
||||||
|
elif wo_distro == 'debian':
|
||||||
|
if wo_platform_codename == 'jessie':
|
||||||
|
wo_mysql = ["mariadb-server", "percona-toolkit",
|
||||||
|
"python3-mysql.connector"]
|
||||||
else:
|
else:
|
||||||
wo_mysql = ["mariadb-server", "percona-toolkit",
|
wo_mysql = ["mariadb-server", "percona-toolkit",
|
||||||
"python3-mysqldb", "mariadb-backup"]
|
"python3-mysqldb", "mariadb-backup"]
|
||||||
|
|
||||||
wo_mysql_client = ["mariadb-client", "python3-mysqldb"]
|
if wo_platform_codename == 'jessie':
|
||||||
|
wo_mysql_client = ["mariadb-client", "python3-mysqldb"]
|
||||||
|
else:
|
||||||
|
wo_mysql_client = ["mariadb-client", "python3-mysql.connector"]
|
||||||
|
|
||||||
wo_fail2ban = ["fail2ban"]
|
wo_fail2ban = ["fail2ban"]
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user