Merge pull request #104 from WordOps/updating-configuration

Updating configuration
This commit is contained in:
VirtuBox
2019-07-24 15:20:47 +02:00
committed by GitHub
16 changed files with 415 additions and 409 deletions

View File

@@ -33,7 +33,6 @@ script:
- sudo apt-get install -qq --force-yes git python3-setuptools python3-dev python3-apt ccze tree - sudo apt-get install -qq --force-yes git python3-setuptools python3-dev python3-apt ccze tree
- sudo bash install -b $TRAVIS_BRANCH --travis - sudo bash install -b $TRAVIS_BRANCH --travis
- sudo wo --help && sudo wo stack install && sudo wo stack install --proftpd - sudo wo --help && sudo wo stack install && sudo wo stack install --proftpd
- sudo wo stack upgrade --netdata --no-prompt
- sudo wo site create html.net --html && sudo wo site create php.com --php && sudo wo site create mysql.com --mysql && sudo wo site create proxy.com --proxy=127.0.0.1:3000 - sudo wo site create html.net --html && sudo wo site create php.com --php && sudo wo site create mysql.com --mysql && sudo wo site create proxy.com --proxy=127.0.0.1:3000
- sudo wo site create wp1.com --wp && sudo wo site create wpsc1.net --wpsc && sudo wo site create wpfc1.com --wpfc - sudo wo site create wp1.com --wp && sudo wo site create wpsc1.net --wpsc && sudo wo site create wpfc1.com --wpfc
- sudo wo site create wpsc-php73.net --wpsc --php73 && sudo wo site create wpfc-php73.net --wpfc --php73 - sudo wo site create wpsc-php73.net --wpsc --php73 && sudo wo site create wpfc-php73.net --wpfc --php73
@@ -49,5 +48,8 @@ script:
- sudo wo info - sudo wo info
- sudo tree -L 2 /etc/nginx - sudo tree -L 2 /etc/nginx
- sudo cat /var/www/wp1.com/wp-config.php - sudo cat /var/www/wp1.com/wp-config.php
- sudo wo stack upgrade --netdata --no-prompt
- sudo wo stack upgrade --phpmyadmin --no-prompt
- sudo wo stack upgrade --composer --no-prompt
- sudo wo update --travis - sudo wo update --travis
- sudo wo stack status - sudo wo stack status

View File

@@ -8,12 +8,22 @@ 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.6.2 - 2019-07-23
#### Fixed
- phpMyAdmin archive download link archive
- Arguments `--letsencrypt=clean/purge`
- Incorrect directory removal during stack upgrade
### v3.9.6.1 - 2019-07-23 ### v3.9.6.1 - 2019-07-23
#### Fixed #### Fixed
- Typo in `--letsencrypt=subdomain` - Typo in `--letsencrypt=subdomain`
- phpMyAdmin upgrade archive extraction - phpMyAdmin upgrade archive extraction
- Error in the command `wo update`. Please `wo update --beta` as workaround
### v3.9.6 - 2019-07-20 ### v3.9.6 - 2019-07-20

View File

@@ -165,7 +165,7 @@ _wo_complete()
"update") "update")
COMPREPLY=( $(compgen \ COMPREPLY=( $(compgen \
-W "--password --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --wpredis --letsencrypt --letsencrypt=subdomain --letsencrypt=off --letsencrypt=renew -le -le=subdomain -le=wildcard --dns --dns=dns_cf --dns=dns_do" \ -W "--password --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --wpredis --letsencrypt --letsencrypt=subdomain --letsencrypt=off --letsencrypt=renew --letsencrypt=clean -le -le=subdomain -le=wildcard --dns --dns=dns_cf --dns=dns_do" \
-- $cur) ) -- $cur) )
;; ;;
"delete") "delete")
@@ -213,7 +213,7 @@ _wo_complete()
if [ ${COMP_WORDS[2]} == "create" ]; then if [ ${COMP_WORDS[2]} == "create" ]; then
retlist="--wp --wpsc --wpfc --user --email --pass --wpredis --letsencrypt -le --letsencrypt=subdomain --letsencrypt=wildcard --dns --dns=dns_cf --dns=dns_do --php73" retlist="--wp --wpsc --wpfc --user --email --pass --wpredis --letsencrypt -le --letsencrypt=subdomain --letsencrypt=wildcard --dns --dns=dns_cf --dns=dns_do --php73"
elif [ ${COMP_WORDS[2]} == "update" ]; then elif [ ${COMP_WORDS[2]} == "update" ]; then
retlist="--wp --wpfc --wpsc --php73 --php73=off --wpredis --letsencrypt --letsencrypt=subdomain --letsencrypt=wildcard --letsencrypt=off --letsencrypt=renew -le -le=off -le=wildcard --dns --dns=dns_cf --dns=dns_do" retlist="--wp --wpfc --wpsc --php73 --php73=off --wpredis --letsencrypt --letsencrypt=subdomain --letsencrypt=wildcard --letsencrypt=off --letsencrypt=renew --letsencrypt=clean -le -le=off -le=wildcard --dns --dns=dns_cf --dns=dns_do"
else else
retlist="" retlist=""
fi fi
@@ -232,7 +232,7 @@ _wo_complete()
if [ ${COMP_WORDS[2]} == "create" ]; then if [ ${COMP_WORDS[2]} == "create" ]; then
retlist="--wpsc --wpfc --user --email --pass --wpredis --letsencrypt --letsencrypt=subdomain --letsencrypt=wildcard -le --php73 --dns --dns=dns_cf --dns=dns_do" retlist="--wpsc --wpfc --user --email --pass --wpredis --letsencrypt --letsencrypt=subdomain --letsencrypt=wildcard -le --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 --letsencrypt --letsencrypt=subdomain --letsencrypt=wildcard --letsencrypt=off --letsencrypt=renew -le --dns --dns=dns_cf --dns=dns_do" retlist="--wpfc --wpsc --php73 --php73=off --wpredis --letsencrypt --letsencrypt=subdomain --letsencrypt=wildcard --letsencrypt=off --letsencrypt=renew --letsencrypt=clean -le --dns --dns=dns_cf --dns=dns_do"
else else
retlist="" retlist=""
fi fi
@@ -261,7 +261,7 @@ _wo_complete()
"--wpredis" | "--wpfc") "--wpredis" | "--wpfc")
if [ ${COMP_WORDS[2]} == "update" ]; then if [ ${COMP_WORDS[2]} == "update" ]; then
retlist="--password --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --wpredis --letsencrypt --letsencrypt=subdomain --letsencrypt=off --letsencrypt=renew -le --dns --dns=dns_cf --dns=dns_do" retlist="--password --php --php73 --mysql --wp --wpsubdir --wpsubdomain --wpfc --wpsc --wpredis --letsencrypt --letsencrypt=subdomain --letsencrypt=off --letsencrypt=renew --letsencrypt=clean -le --dns --dns=dns_cf --dns=dns_do"
else else
retlist="" retlist=""
fi fi

42
install
View File

@@ -7,10 +7,10 @@
# 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.6 - 2019-07-20 # Version 3.9.6 - 2019-07-24
# ------------------------------------------------------------------------- # -------------------------------------------------------------------------
readonly wo_version_old="2.2.3" readonly wo_version_old="2.2.3"
readonly wo_version_new="3.9.6.1" readonly wo_version_new="3.9.6.2"
# CONTENTS # CONTENTS
# --- # ---
# 1. VARIABLES AND DECLARATIONS # 1. VARIABLES AND DECLARATIONS
@@ -175,19 +175,20 @@ wo_install_dep() {
[ -z "$wo_travis" ] && { [ -z "$wo_travis" ] && {
# update server packages # update server packages
DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confmiss" -o Dpkg::Options::="--force-confold" -y dist-upgrade DEBIAN_FRONTEND=noninteractive apt-get dist-upgrade --option=Dpkg::options::=--force-confmiss --option=Dpkg::options::=--force-confold --option=Dpkg::options::=--force-unsafe-io --assume-yes --quiet
} > /dev/null 2>&1 }
if [ "$wo_linux_distro" == "Ubuntu" ]; then if [ "$wo_linux_distro" == "Ubuntu" ]; then
# install dependencies # install dependencies
DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confmiss" -o Dpkg::Options::="--force-confold" -y install build-essential curl gzip python3 python3-apt python3-setuptools python3-dev sqlite3 git tar software-properties-common pigz gnupg2 cron ccze rsync tree haveged ufw > /dev/null 2>&1 DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confmiss" -o Dpkg::Options::="--force-confold" --assume-yes install build-essential curl gzip python3 python3-apt python3-setuptools python3-dev sqlite3 git tar software-properties-common pigz gnupg2 cron ccze rsync tree haveged ufw > /dev/null 2>&1
else else
# install dependencies
DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confmiss" -o Dpkg::Options::="--force-confold" --assume-yes install build-essential curl gzip dirmngr sudo python3 python3-apt python3-setuptools python3-dev ca-certificates sqlite3 git tar software-properties-common pigz apt-transport-https gnupg2 cron ccze rsync tree haveged ufw > /dev/null 2>&1
# add php repository gpg key
[ -d /etc/apt/trusted.gpg.d ] && { wget -qO /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg; }
# add nginx repository gpg key # add nginx repository gpg key
wget https://download.opensuse.org/repositories/home:virtubox:WordOps/Debian_9.0/Release.key -O Release.key wget https://download.opensuse.org/repositories/home:virtubox:WordOps/Debian_9.0/Release.key -O Release.key
apt-key add - < Release.key apt-key add - < Release.key
rm -f Release.key rm -f Release.key
# install dependencies
DEBIAN_FRONTEND=noninteractive apt-get -o Dpkg::Options::="--force-confmiss" -o Dpkg::Options::="--force-confold" -y install build-essential curl gzip dirmngr sudo python3 python3-apt python3-setuptools python3-dev ca-certificates sqlite3 git tar software-properties-common pigz apt-transport-https gnupg2 cron ccze rsync tree haveged ufw > /dev/null 2>&1
[ -d /etc/apt/trusted.gpg.d ] && { wget -qO /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg; }
fi fi
locale-gen en locale-gen en
@@ -405,18 +406,21 @@ wo_install() {
{ {
rm -f /etc/bash_completion.d/wo_auto.rc rm -f /etc/bash_completion.d/wo_auto.rc
rm -rf /tmp/WordOps rm -rf /tmp/WordOps
git clone https://github.com/WordOps/WordOps.git /tmp/WordOps -b "$wo_branch" git clone -b "$wo_branch" --depth=50 https://github.com/WordOps/WordOps.git /tmp/WordOps
cd /tmp/WordOps || exit 1 cd /tmp/WordOps || exit 1
} \ } \
>> "$wo_install_log" 2>&1 >> "$wo_install_log" 2>&1
if [ "$wo_force_install" = "y" ]; then
[ ! -f "$HOME/.gitconfig" ] && { bash -c 'echo -e "[user]\n\tname = $USER\n\temail = root@$HOSTNAME.local" > $HOME/.gitconfig'; }
fi
if [ -f "$HOME/.gitconfig" ]; then if [ -f "$HOME/.gitconfig" ]; then
# install and redirect log to not print python package install
python3 setup.py install >> $wo_install_log 2>&1 python3 setup.py install >> $wo_install_log 2>&1
else else
if [ "$wo_force_install" = "y" ]; then # install without redirecting logs to prompt user for name & email
[ ! -f "$HOME/.gitconfig" ] && { bash -c 'echo -e "[user]\n\tname = $USER\n\temail = root@$HOSTNAME" > $HOME/.gitconfig'; }
fi
python3 setup.py install python3 setup.py install
fi fi
@@ -444,17 +448,16 @@ wo_upgrade_nginx() {
# add new Nginx repository # add new Nginx repository
if [ "$wo_linux_distro" = "Ubuntu" ]; then if [ "$wo_linux_distro" = "Ubuntu" ]; then
if [ ! -f /etc/apt/sources.list.d/wordops-ubuntu-nginx-wo-"$(lsb_release -sc)".list ]; then
add-apt-repository ppa:wordops/nginx-wo -y -u add-apt-repository ppa:wordops/nginx-wo -y -u
fi
else else
if [ "$wo_distro_version" == "jessie" ]; then if [ "$wo_distro_version" == "jessie" ]; then
wget -qO /tmp/nginx-wo.key https://download.opensuse.org/repositories/home:virtubox:WordOps/Debian_8.0/Release.key curl -sL https://download.opensuse.org/repositories/home:virtubox:WordOps/Debian_8.0/Release.key | apt-key add -
else else
wget -qO /tmp/nginx-wo.key https://download.opensuse.org/repositories/home:virtubox:WordOps/Debian_9.0/Release.key curl -sL https://download.opensuse.org/repositories/home:virtubox:WordOps/Debian_9.0/Release.key | apt-key add -
fi fi
# import the respository key for updates # import the respository key for updates
apt-key add - < /tmp/nginx-wo.key
rm -f /tmp/nginx-wo.key
apt-get update -qq
fi fi
# stop nginx # stop nginx
@@ -487,7 +490,7 @@ wo_upgrade_nginx() {
fi fi
/usr/local/bin/wo stack install --nginx --php /usr/local/bin/wo stack install --nginx --php
rm -f /etc/nginx/common/acl.conf /etc/nginx/conf.d/{map-wp-cache.conf,map-wp.conf,fascgi.conf} /etc/nginx/htpasswd-wo rm -f /etc/nginx/common/acl.conf /etc/nginx/conf.d/{map-wp-cache.conf,map-wp.conf,fascgi.conf,blockips.conf} /etc/nginx/htpasswd-wo
fi fi
# restore sites and configuration # restore sites and configuration
@@ -637,7 +640,7 @@ wo_tweak_kernel() {
if [ ! -f /etc/sysctl.d/60-wo-tweaks.conf ]; then if [ ! -f /etc/sysctl.d/60-wo-tweaks.conf ]; then
if [ "$WO_ARCH" = "x86_64" ]; then if [ "$WO_ARCH" = "x86_64" ]; then
rm -f /etc/sysctl.d/60-ubuntu-nginx-web-server.conf rm -f /etc/sysctl.d/60-ubuntu-nginx-web-server.conf
wget -qO /etc/sysctl.d/60-wo-tweaks.conf https://raw.githubusercontent.com/WordOps/WordOps/updating-configuration/wo/cli/templates/sysctl.mustache wget -qO /etc/sysctl.d/60-wo-tweaks.conf https://raw.githubusercontent.com/WordOps/WordOps/master/wo/cli/templates/sysctl.mustache
if [ "$wo_distro_version" = "bionic" ] || [ "$wo_distro_version" = "disco" ] || [ "$wo_distro_version" = "buster" ]; then if [ "$wo_distro_version" = "bionic" ] || [ "$wo_distro_version" = "disco" ] || [ "$wo_distro_version" = "buster" ]; then
modprobe tcp_bbr && echo 'tcp_bbr' >> /etc/modules-load.d/bbr.conf modprobe tcp_bbr && echo 'tcp_bbr' >> /etc/modules-load.d/bbr.conf
echo -e '\nnet.ipv4.tcp_congestion_control = bbr\nnet.ipv4.tcp_notsent_lowat = 16384' >> /etc/sysctl.d/60-wo-tweaks.conf echo -e '\nnet.ipv4.tcp_congestion_control = bbr\nnet.ipv4.tcp_notsent_lowat = 16384' >> /etc/sysctl.d/60-wo-tweaks.conf
@@ -774,6 +777,7 @@ elif [ "$wo_upgrade" = "1" ]; then
else else
wo_lib_echo "WordOps (wo) installed successfully" wo_lib_echo "WordOps (wo) installed successfully"
fi fi
echo
wo_lib_echo_info "For autocompletion, run the following command:" wo_lib_echo_info "For autocompletion, run the following command:"
wo_lib_echo_info "source /etc/bash_completion.d/wo_auto.rc" wo_lib_echo_info "source /etc/bash_completion.d/wo_auto.rc"
echo echo

View File

@@ -57,7 +57,7 @@ if not os.path.isfile('/root/.gitconfig'):
shutil.copy2(os.path.expanduser("~")+'/.gitconfig', '/root/.gitconfig') shutil.copy2(os.path.expanduser("~")+'/.gitconfig', '/root/.gitconfig')
setup(name='wo', setup(name='wo',
version='3.9.6.1', version='3.9.6.2',
description=long_description, description=long_description,
long_description=long_description, long_description=long_description,
classifiers=[], classifiers=[],

View File

@@ -15,7 +15,7 @@ class CliTestCaseStack(test.WOTestCase):
self.app.run() self.app.run()
self.app.close() self.app.close()
def test_wo_cli_stack_services_start_php5_fpm(self): def test_wo_cli_stack_services_start_php_fpm(self):
self.app = get_test_app(argv=['stack', 'start', '--php']) self.app = get_test_app(argv=['stack', 'start', '--php'])
self.app.setup() self.app.setup()
self.app.run() self.app.run()
@@ -27,12 +27,6 @@ class CliTestCaseStack(test.WOTestCase):
self.app.run() self.app.run()
self.app.close() self.app.close()
def test_wo_cli_stack_services_start_memcached(self):
self.app = get_test_app(argv=['stack', 'start', '--memcache'])
self.app.setup()
self.app.run()
self.app.close()
def test_wo_cli_stack_services_start_all(self): def test_wo_cli_stack_services_start_all(self):
self.app = get_test_app(argv=['stack', 'start']) self.app = get_test_app(argv=['stack', 'start'])
self.app.setup() self.app.setup()

View File

@@ -15,7 +15,7 @@ class CliTestCaseStack(test.WOTestCase):
self.app.run() self.app.run()
self.app.close() self.app.close()
def test_wo_cli_stack_services_status_php5_fpm(self): def test_wo_cli_stack_services_status_php_fpm(self):
self.app = get_test_app(argv=['stack', 'status', '--php']) self.app = get_test_app(argv=['stack', 'status', '--php'])
self.app.setup() self.app.setup()
self.app.run() self.app.run()

View File

@@ -15,7 +15,7 @@ class CliTestCaseStack(test.WOTestCase):
self.app.run() self.app.run()
self.app.close() self.app.close()
def test_wo_cli_stack_services_stop_php5_fpm(self): def test_wo_cli_stack_services_stop_php_fpm(self):
self.app = get_test_app(argv=['stack', 'stop', '--php']) self.app = get_test_app(argv=['stack', 'stop', '--php'])
self.app.setup() self.app.setup()
self.app.run() self.app.run()
@@ -27,12 +27,6 @@ class CliTestCaseStack(test.WOTestCase):
self.app.run() self.app.run()
self.app.close() self.app.close()
def test_wo_cli_stack_services_stop_memcached(self):
self.app = get_test_app(argv=['stack', 'stop', '--memcache'])
self.app.setup()
self.app.run()
self.app.close()
def test_wo_cli_stack_services_stop_all(self): def test_wo_cli_stack_services_stop_all(self):
self.app = get_test_app(argv=['stack', 'stop']) self.app = get_test_app(argv=['stack', 'stop'])
self.app.setup() self.app.setup()

View File

@@ -15,7 +15,7 @@ class CliTestCaseStack(test.WOTestCase):
self.app.run() self.app.run()
self.app.close() self.app.close()
def test_wo_cli_stack_services_restart_php5_fpm(self): def test_wo_cli_stack_services_restart_php_fpm(self):
self.app = get_test_app(argv=['stack', 'restart', '--php']) self.app = get_test_app(argv=['stack', 'restart', '--php'])
self.app.setup() self.app.setup()
self.app.run() self.app.run()
@@ -27,12 +27,6 @@ class CliTestCaseStack(test.WOTestCase):
self.app.run() self.app.run()
self.app.close() self.app.close()
def test_wo_cli_stack_services_restart_memcached(self):
self.app = get_test_app(argv=['stack', 'restart', '--memcache'])
self.app.setup()
self.app.run()
self.app.close()
def test_wo_cli_stack_services_restart_all(self): def test_wo_cli_stack_services_restart_all(self):
self.app = get_test_app(argv=['stack', 'restart']) self.app = get_test_app(argv=['stack', 'restart'])
self.app.setup() self.app.setup()

View File

@@ -27,12 +27,6 @@ class CliTestCaseClean(test.WOTestCase):
self.app.run() self.app.run()
self.app.close() self.app.close()
def test_wo_cli_clean_memcache(self):
self.app = get_test_app(argv=['clean', '--memcache'])
self.app.setup()
self.app.run()
self.app.close()
def test_wo_cli_clean_opcache(self): def test_wo_cli_clean_opcache(self):
self.app = get_test_app(argv=['clean', '--opcache']) self.app = get_test_app(argv=['clean', '--opcache'])
self.app.setup() self.app.setup()

View File

@@ -820,7 +820,7 @@ class WOSiteUpdateController(CementBaseController):
dict(help="configure letsencrypt ssl for the site", dict(help="configure letsencrypt ssl for the site",
action='store' or 'store_const', action='store' or 'store_const',
choices=('on', 'off', 'renew', 'subdomain', choices=('on', 'off', 'renew', 'subdomain',
'wildcard', 'clean'), 'wildcard', 'clean', 'purge'),
const='on', nargs='?')), const='on', nargs='?')),
(['--dns'], (['--dns'],
dict(help="choose dns provider api for letsencrypt", dict(help="choose dns provider api for letsencrypt",
@@ -1186,6 +1186,9 @@ class WOSiteUpdateController(CementBaseController):
elif pargs.letsencrypt == 'clean': elif pargs.letsencrypt == 'clean':
data['letsencrypt'] = False data['letsencrypt'] = False
letsencrypt = False letsencrypt = False
elif pargs.letsencrypt == 'purge':
data['letsencrypt'] = False
letsencrypt = False
if letsencrypt is check_ssl: if letsencrypt is check_ssl:
if letsencrypt is False: if letsencrypt is False:
@@ -1214,13 +1217,16 @@ class WOSiteUpdateController(CementBaseController):
if pargs.letsencrypt == "on": if pargs.letsencrypt == "on":
if oldsitetype in ['wpsubdomain']: if oldsitetype in ['wpsubdomain']:
data['letsencrypt'] = True if pargs.dns:
letsencrypt = True data['letsencrypt'] = True
pargs.letsencrypt == 'wildcard' letsencrypt = True
pargs.letsencrypt == 'wildcard'
else:
data['letsencrypt'] = True
letsencrypt = True
else: else:
data['letsencrypt'] = True data['letsencrypt'] = True
letsencrypt = True letsencrypt = True
wildcard = False
if pargs.wpredis and data['currcachetype'] != 'wpredis': if pargs.wpredis and data['currcachetype'] != 'wpredis':
data['wpredis'] = True data['wpredis'] = True
@@ -1345,16 +1351,9 @@ class WOSiteUpdateController(CementBaseController):
'{0}/conf/nginx/' '{0}/conf/nginx/'
'hsts.conf.disabled' 'hsts.conf.disabled'
.format(wo_site_webroot)) .format(wo_site_webroot))
if self.app.pargs.letsencrypt == "clean": elif (self.app.pargs.letsencrypt == "clean" or
if os.path.isfile("{0}/conf/nginx/ssl.conf" self.app.pargs.letsencrypt == "purge"):
.format(wo_site_webroot)): removeAcmeConf(self, wo_domain)
WOFileUtils.remove(self, "{0}/conf/nginx/ssl.conf"
.format(wo_site_webroot))
WOFileUtils.remove(self, "/etc/letsencrypt/live"
"/{0}".format(wo_domain))
WOFileUtils.remove(self, "/etc/nginx/conf.d/"
"force-ssl-{0}.conf"
.format(wo_domain_name))
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. "
"check issues with `nginx -t` command") "check issues with `nginx -t` command")

View File

@@ -1307,11 +1307,19 @@ def removeAcmeConf(self, domain):
"-d {0} --ecc" "-d {0} --ecc"
.format(domain)) .format(domain))
except CommandExecutionError as e: except CommandExecutionError as e:
Log.error(self, "Cert removal failed") Log.error(self, "Cert removal failed")
WOFileUtils.remove(self, '/etc/letsencrypt/renewal/{0}_ecc' WOFileUtils.rm(self, '/etc/letsencrypt/renewal/{0}_ecc'
.format(domain)) .format(domain))
WOFileUtils.remove(self, '/etc/letsencrypt/live/{0}' WOFileUtils.rm(self, '/etc/letsencrypt/live/{0}'
.format(domain)) .format(domain))
WOFileUtils.rm(self, '/var/www/{0}/conf/nginx/ssl.conf'.format(domain))
WOFileUtils.rm(self, '/var/www/{0}/conf/nginx/ssl.conf.disabled'
.format(domain))
WOFileUtils.rm(
self, '/etc/nginx/conf.d/force-ssl-{0}.conf'.format(domain))
WOFileUtils.rm(
self, '/etc/nginx/conf.d/force-ssl-{0}.conf.disabled'.format(domain))
WOGit.add(self, ["/etc/letsencrypt"], WOGit.add(self, ["/etc/letsencrypt"],
msg="Deleted {0} " msg="Deleted {0} "
.format(domain)) .format(domain))

View File

@@ -158,7 +158,7 @@ class WOStackUpgradeController(CementBaseController):
"/phpMyAdmin/{0}/" "/phpMyAdmin/{0}/"
"phpMyAdmin-{0}-" "phpMyAdmin-{0}-"
"all-languages" "all-languages"
".zip".format(WOVariables.wo_phpmyadmin), ".tar.gz".format(WOVariables.wo_phpmyadmin),
"/var/lib/wo/tmp/pma.tar.gz", "/var/lib/wo/tmp/pma.tar.gz",
"PHPMyAdmin"]] "PHPMyAdmin"]]
else: else:
@@ -229,17 +229,17 @@ class WOStackUpgradeController(CementBaseController):
if self.app.pargs.phpmyadmin: if self.app.pargs.phpmyadmin:
Log.info(self, "Upgrading phpMyAdmin, please wait...") Log.info(self, "Upgrading phpMyAdmin, please wait...")
WOExtract.extract( WOExtract.extract(self, '/var/lib/wo/tmp/pma.tar.gz',
self, '/var/lib/wo/tmp/pma.tar.gz', '/var/lib/wo/tmp/') '/var/lib/wo/tmp/')
shutil.copyfile('{0}22222/htdocs/db/pma' shutil.copyfile(('{0}22222/htdocs/db/pma'
'/config.inc.php' '/config.inc.php'
.format(WOVariables.wo_webroot), .format(WOVariables.wo_webroot)),
'/var/lib/wo/tmp/phpMyAdmin-{0}' ('/var/lib/wo/tmp/phpMyAdmin-{0}'
'-all-languages/config.inc.php' '-all-languages/config.inc.php'
.format(WOVariables.wo_phpmyadmin) .format(WOVariables.wo_phpmyadmin))
) )
WOFileUtils.remove(self, '{0}22222/htdocs/db/pma' WOFileUtils.rm(self, '{0}22222/htdocs/db/pma'
.format(WOVariables.wo_webroot)) .format(WOVariables.wo_webroot))
shutil.move('/var/lib/wo/tmp/phpMyAdmin-{0}' shutil.move('/var/lib/wo/tmp/phpMyAdmin-{0}'
'-all-languages/' '-all-languages/'
.format(WOVariables.wo_phpmyadmin), .format(WOVariables.wo_phpmyadmin),

View File

@@ -83,11 +83,14 @@ class WOAptGet():
try: try:
with open('/var/log/wo/wordops.log', 'a') as f: with open('/var/log/wo/wordops.log', 'a') as f:
proc = subprocess.Popen("DEBIAN_FRONTEND=noninteractive " proc = subprocess.Popen("DEBIAN_FRONTEND=noninteractive "
"apt-get dist-upgrade -o " "apt-get dist-upgrade "
"Dpkg::Options::=\"--force-confdef\"" "--option=Dpkg::options::="
" -o " "--force-confdef "
"Dpkg::Options::=\"--force-confold\"" "--option=Dpkg::options::="
" -y ", "--force-unsafe-io "
"--option=Dpkg::options::="
"--force-confold "
"--assume-yes --quiet ",
shell=True, stdin=None, shell=True, stdin=None,
stdout=f, stderr=f, stdout=f, stderr=f,
executable="/bin/bash") executable="/bin/bash")
@@ -110,11 +113,13 @@ class WOAptGet():
try: try:
with open('/var/log/wo/wordops.log', 'a') as f: with open('/var/log/wo/wordops.log', 'a') as f:
proc = subprocess.Popen("DEBIAN_FRONTEND=noninteractive " proc = subprocess.Popen("DEBIAN_FRONTEND=noninteractive "
"apt-get install -o " "apt-get install "
"Dpkg::Options::=\"--force-confdef\"" "--option=Dpkg::options::="
" -o " "--force-confdef "
"Dpkg::Options::=\"--force-confold\"" "--option=Dpkg::options::="
" -y --allow-unauthenticated {0}" "--force-confold "
"--assume-yes "
"--allow-unauthenticated {0}"
.format(all_packages), shell=True, .format(all_packages), shell=True,
stdin=None, stdout=f, stderr=f, stdin=None, stdout=f, stderr=f,
executable="/bin/bash") executable="/bin/bash")
@@ -141,12 +146,14 @@ class WOAptGet():
try: try:
with open('/var/log/wo/wordops.log', 'a') as f: with open('/var/log/wo/wordops.log', 'a') as f:
if purge: if purge:
proc = subprocess.Popen('apt-get purge -y {0}' proc = subprocess.Popen('apt-get autoremove --purge '
'--assume-yes {0}'
.format(all_packages), shell=True, .format(all_packages), shell=True,
stdin=None, stdout=f, stderr=f, stdin=None, stdout=f, stderr=f,
executable="/bin/bash") executable="/bin/bash")
else: else:
proc = subprocess.Popen('apt-get remove -y {0}' proc = subprocess.Popen('apt-get autoremove '
'--assume-yes {0}'
.format(all_packages), shell=True, .format(all_packages), shell=True,
stdin=None, stdout=f, stderr=f, stdin=None, stdout=f, stderr=f,
executable="/bin/bash") executable="/bin/bash")

View File

@@ -11,7 +11,7 @@ class WOVariables():
"""Intialization of core variables""" """Intialization of core variables"""
# WordOps version # WordOps version
wo_version = "3.9.6.1" wo_version = "3.9.6.2"
# WordOps packages versions # WordOps packages versions
wo_wp_cli = "2.2.0" wo_wp_cli = "2.2.0"
wo_adminer = "4.7.1" wo_adminer = "4.7.1"