Script 'mail_helper' called by obssrc
Hello community,
here is the log from the commit of package python-certbot-nginx for
openSUSE:Factory checked in at 2021-06-24 18:22:52
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-certbot-nginx (Old)
and /work/SRC/openSUSE:Factory/.python-certbot-nginx.new.2625 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-certbot-nginx"
Thu Jun 24 18:22:52 2021 rev:28 rq:901692 version:1.16.0
Changes:
--------
---
/work/SRC/openSUSE:Factory/python-certbot-nginx/python-certbot-nginx.changes
2021-05-12 19:33:15.310792424 +0200
+++
/work/SRC/openSUSE:Factory/.python-certbot-nginx.new.2625/python-certbot-nginx.changes
2021-06-24 18:23:12.476958399 +0200
@@ -1,0 +2,6 @@
+Thu Jun 24 09:30:29 UTC 2021 - Mark??ta Machov?? <[email protected]>
+
+- update to version 1.16.0
+ * Require the latest certbot and acme plugins for simplicity
+
+-------------------------------------------------------------------
Old:
----
certbot-nginx-1.15.0.tar.gz
New:
----
certbot-nginx-1.16.0.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-certbot-nginx.spec ++++++
--- /var/tmp/diff_new_pack.VwG8G8/_old 2021-06-24 18:23:12.828958790 +0200
+++ /var/tmp/diff_new_pack.VwG8G8/_new 2021-06-24 18:23:12.832958794 +0200
@@ -19,13 +19,13 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
%define skip_python2 1
Name: python-certbot-nginx
-Version: 1.15.0
+Version: 1.16.0
Release: 0
Summary: Nginx plugin for Certbot
License: Apache-2.0
URL: https://github.com/letsencrypt/letsencrypt
Source:
https://files.pythonhosted.org/packages/source/c/certbot-nginx/certbot-nginx-%{version}.tar.gz
-BuildRequires: %{python_module certbot >= 1.4.0}
+BuildRequires: %{python_module certbot >= %{version}}
BuildRequires: %{python_module pyOpenSSL}
BuildRequires: %{python_module pyparsing >= 1.5.5}
BuildRequires: %{python_module pytest}
@@ -34,8 +34,8 @@
BuildRequires: nginx
BuildRequires: python-rpm-macros
Requires: nginx
-Requires: python-acme >= 1.4.0
-Requires: python-certbot >= 1.4.0
+Requires: python-acme >= %{version}
+Requires: python-certbot >= %{version}
Requires: python-pyOpenSSL
Requires: python-pyparsing >= 1.5.5
Requires: python-zope.interface
++++++ certbot-nginx-1.15.0.tar.gz -> certbot-nginx-1.16.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/certbot-nginx-1.15.0/PKG-INFO
new/certbot-nginx-1.16.0/PKG-INFO
--- old/certbot-nginx-1.15.0/PKG-INFO 2021-05-04 20:48:48.385637800 +0200
+++ new/certbot-nginx-1.16.0/PKG-INFO 2021-06-01 19:49:45.433660500 +0200
@@ -1,12 +1,11 @@
-Metadata-Version: 1.2
+Metadata-Version: 2.1
Name: certbot-nginx
-Version: 1.15.0
+Version: 1.16.0
Summary: Nginx plugin for Certbot
Home-page: https://github.com/letsencrypt/letsencrypt
Author: Certbot Project
Author-email: [email protected]
License: Apache License 2.0
-Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Plugins
@@ -26,3 +25,7 @@
Classifier: Topic :: System :: Systems Administration
Classifier: Topic :: Utilities
Requires-Python: >=3.6
+License-File: LICENSE.txt
+
+UNKNOWN
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/certbot-nginx-1.15.0/certbot_nginx/_internal/configurator.py
new/certbot-nginx-1.16.0/certbot_nginx/_internal/configurator.py
--- old/certbot-nginx-1.15.0/certbot_nginx/_internal/configurator.py
2021-05-04 20:48:08.000000000 +0200
+++ new/certbot-nginx-1.16.0/certbot_nginx/_internal/configurator.py
2021-06-01 19:49:17.000000000 +0200
@@ -24,6 +24,7 @@
from certbot import errors
from certbot import interfaces
from certbot import util
+from certbot.display import util as display_util
from certbot.compat import os
from certbot.plugins import common
from certbot_nginx._internal import constants
@@ -234,6 +235,8 @@
vhosts = self.choose_vhosts(domain, create_if_no_match=True)
for vhost in vhosts:
self._deploy_cert(vhost, cert_path, key_path, chain_path,
fullchain_path)
+ display_util.notify("Successfully deployed certificate for {} to
{}"
+ .format(domain, vhost.filep))
def _deploy_cert(self, vhost, cert_path, key_path, chain_path,
fullchain_path): # pylint: disable=unused-argument
"""
@@ -675,8 +678,9 @@
"""Generate invalid certs that let us create ssl directives for
Nginx"""
# TODO: generate only once
tmp_dir = os.path.join(self.config.work_dir, "snakeoil")
- le_key = crypto_util.init_save_key(
- key_size=1024, key_dir=tmp_dir, keyname="key.pem")
+ le_key = crypto_util.generate_key(
+ key_size=1024, key_dir=tmp_dir, keyname="key.pem",
+ strict_permissions=self.config.strict_permissions)
key = OpenSSL.crypto.load_privatekey(
OpenSSL.crypto.FILETYPE_PEM, le_key.pem)
cert = acme_crypto_util.gen_ss_cert(key,
domains=[socket.gethostname()])
@@ -766,7 +770,7 @@
raise errors.PluginError(
"Unsupported enhancement: {0}".format(enhancement))
except errors.PluginError:
- logger.warning("Failed %s for %s", enhancement, domain)
+ logger.error("Failed %s for %s", enhancement, domain)
raise
def _has_certbot_redirect(self, vhost, domain):
@@ -985,13 +989,14 @@
Unable to run Nginx version command
"""
try:
- proc = subprocess.Popen(
+ proc = subprocess.run(
[self.conf('ctl'), "-c", self.nginx_conf, "-V"],
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
universal_newlines=True,
+ check=False,
env=util.env_no_snap_for_external_calls())
- text = proc.communicate()[1] # nginx prints output to stderr
+ text = proc.stderr # nginx prints output to stderr
except (OSError, ValueError) as error:
logger.debug(str(error), exc_info=True)
raise errors.PluginError(
@@ -1075,6 +1080,13 @@
version=".".join(str(i) for i in self.version))
)
+ def auth_hint(self, failed_achalls): # pragma: no cover
+ return (
+ "The Certificate Authority failed to verify the temporary nginx
configuration changes "
+ "made by Certbot. Ensure the listed domains point to this nginx
server and that it is "
+ "accessible from the internet."
+ )
+
###################################################
# Wrapper functions for Reverter class (IInstaller)
###################################################
@@ -1224,10 +1236,9 @@
try:
reload_output: Text = u""
with tempfile.TemporaryFile() as out:
- proc = subprocess.Popen([nginx_ctl, "-c", nginx_conf, "-s",
"reload"],
- env=util.env_no_snap_for_external_calls(),
- stdout=out, stderr=out)
- proc.communicate()
+ proc = subprocess.run([nginx_ctl, "-c", nginx_conf, "-s",
"reload"],
+ env=util.env_no_snap_for_external_calls(),
+ stdout=out, stderr=out, check=False)
out.seek(0)
reload_output = out.read().decode("utf-8")
@@ -1237,9 +1248,8 @@
# Write to temporary files instead of piping because of
communication issues on Arch
# https://github.com/certbot/certbot/issues/4324
with tempfile.TemporaryFile() as out:
- nginx_proc = subprocess.Popen([nginx_ctl, "-c", nginx_conf],
- stdout=out, stderr=out,
env=util.env_no_snap_for_external_calls())
- nginx_proc.communicate()
+ nginx_proc = subprocess.run([nginx_ctl, "-c", nginx_conf],
+ stdout=out, stderr=out,
env=util.env_no_snap_for_external_calls(), check=False)
if nginx_proc.returncode != 0:
out.seek(0)
# Enter recovery routine...
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/certbot-nginx-1.15.0/certbot_nginx/_internal/http_01.py
new/certbot-nginx-1.16.0/certbot_nginx/_internal/http_01.py
--- old/certbot-nginx-1.15.0/certbot_nginx/_internal/http_01.py 2021-05-04
20:48:08.000000000 +0200
+++ new/certbot-nginx-1.16.0/certbot_nginx/_internal/http_01.py 2021-06-01
19:49:17.000000000 +0200
@@ -128,12 +128,12 @@
ipv6_addr = ipv6_addr + " ipv6only=on"
addresses = [obj.Addr.fromstring(default_addr),
obj.Addr.fromstring(ipv6_addr)]
- logger.info(("Using default addresses %s and %s for
authentication."),
+ logger.debug(("Using default addresses %s and %s for
authentication."),
default_addr,
ipv6_addr)
else:
addresses = [obj.Addr.fromstring(default_addr)]
- logger.info("Using default address %s for authentication.",
+ logger.debug("Using default address %s for authentication.",
default_addr)
return addresses
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/certbot-nginx-1.15.0/certbot_nginx/_internal/parser.py
new/certbot-nginx-1.16.0/certbot_nginx/_internal/parser.py
--- old/certbot-nginx-1.15.0/certbot_nginx/_internal/parser.py 2021-05-04
20:48:08.000000000 +0200
+++ new/certbot-nginx-1.16.0/certbot_nginx/_internal/parser.py 2021-06-01
19:49:17.000000000 +0200
@@ -217,7 +217,7 @@
"character. Only UTF-8 encoding is "
"supported.", item)
except pyparsing.ParseException as err:
- logger.debug("Could not parse file: %s due to %s", item, err)
+ logger.warning("Could not parse file: %s due to %s", item, err)
return trees
def _find_config_root(self):
@@ -430,7 +430,7 @@
logger.warning("Could not read file: %s due to invalid character. "
"Only UTF-8 encoding is supported.", ssl_options)
except pyparsing.ParseBaseException as err:
- logger.debug("Could not parse file: %s due to %s", ssl_options,
err)
+ logger.warning("Could not parse file: %s due to %s", ssl_options,
err)
return []
def _do_for_subarray(entry, condition, func, path=None):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/certbot-nginx-1.15.0/certbot_nginx.egg-info/PKG-INFO
new/certbot-nginx-1.16.0/certbot_nginx.egg-info/PKG-INFO
--- old/certbot-nginx-1.15.0/certbot_nginx.egg-info/PKG-INFO 2021-05-04
20:48:48.000000000 +0200
+++ new/certbot-nginx-1.16.0/certbot_nginx.egg-info/PKG-INFO 2021-06-01
19:49:45.000000000 +0200
@@ -1,12 +1,11 @@
-Metadata-Version: 1.2
+Metadata-Version: 2.1
Name: certbot-nginx
-Version: 1.15.0
+Version: 1.16.0
Summary: Nginx plugin for Certbot
Home-page: https://github.com/letsencrypt/letsencrypt
Author: Certbot Project
Author-email: [email protected]
License: Apache License 2.0
-Description: UNKNOWN
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Plugins
@@ -26,3 +25,7 @@
Classifier: Topic :: System :: Systems Administration
Classifier: Topic :: Utilities
Requires-Python: >=3.6
+License-File: LICENSE.txt
+
+UNKNOWN
+
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore'
old/certbot-nginx-1.15.0/certbot_nginx.egg-info/requires.txt
new/certbot-nginx-1.16.0/certbot_nginx.egg-info/requires.txt
--- old/certbot-nginx-1.15.0/certbot_nginx.egg-info/requires.txt
2021-05-04 20:48:48.000000000 +0200
+++ new/certbot-nginx-1.16.0/certbot_nginx.egg-info/requires.txt
2021-06-01 19:49:45.000000000 +0200
@@ -1,5 +1,5 @@
-acme>=1.4.0
-certbot>=1.6.0
+acme>=1.8.0
+certbot>=1.16.0
PyOpenSSL>=17.3.0
pyparsing>=2.2.0
setuptools>=39.0.1
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/certbot-nginx-1.15.0/setup.py
new/certbot-nginx-1.16.0/setup.py
--- old/certbot-nginx-1.15.0/setup.py 2021-05-04 20:48:10.000000000 +0200
+++ new/certbot-nginx-1.16.0/setup.py 2021-06-01 19:49:18.000000000 +0200
@@ -1,13 +1,13 @@
from setuptools import find_packages
from setuptools import setup
-version = '1.15.0'
+version = '1.16.0'
# Remember to update local-oldest-requirements.txt when changing the minimum
# acme/certbot version.
install_requires = [
- 'acme>=1.4.0',
- 'certbot>=1.6.0',
+ 'acme>=1.8.0',
+ 'certbot>=1.16.0',
'PyOpenSSL>=17.3.0',
'pyparsing>=2.2.0',
'setuptools>=39.0.1',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/certbot-nginx-1.15.0/tests/configurator_test.py
new/certbot-nginx-1.16.0/tests/configurator_test.py
--- old/certbot-nginx-1.15.0/tests/configurator_test.py 2021-05-04
20:48:08.000000000 +0200
+++ new/certbot-nginx-1.16.0/tests/configurator_test.py 2021-06-01
19:49:17.000000000 +0200
@@ -31,6 +31,10 @@
self.config = self.get_nginx_configurator(
self.config_path, self.config_dir, self.work_dir, self.logs_dir)
+ patch =
mock.patch('certbot_nginx._internal.configurator.display_util.notify')
+ self.mock_notify = patch.start()
+ self.addCleanup(patch.stop)
+
@mock.patch("certbot_nginx._internal.configurator.util.exe_exists")
def test_prepare_no_install(self, mock_exe_exists):
mock_exe_exists.return_value = False
@@ -42,15 +46,16 @@
self.assertEqual(13, len(self.config.parser.parsed))
@mock.patch("certbot_nginx._internal.configurator.util.exe_exists")
- @mock.patch("certbot_nginx._internal.configurator.subprocess.Popen")
- def test_prepare_initializes_version(self, mock_popen, mock_exe_exists):
- mock_popen().communicate.return_value = (
- "", "\n".join(["nginx version: nginx/1.6.2",
+ @mock.patch("certbot_nginx._internal.configurator.subprocess.run")
+ def test_prepare_initializes_version(self, mock_run, mock_exe_exists):
+ mock_run.return_value.stdout = ""
+ mock_run.return_value.stderr = "\n".join(
+ ["nginx version: nginx/1.6.2",
"built by clang 6.0 (clang-600.0.56)"
" (based on LLVM 3.5svn)",
"TLS SNI support enabled",
"configure arguments: --prefix=/usr/local/Cellar/"
- "nginx/1.6.2 --with-http_ssl_module"]))
+ "nginx/1.6.2 --with-http_ssl_module"])
mock_exe_exists.return_value = True
@@ -347,141 +352,149 @@
self.assertEqual(mock_revert.call_count, 1)
self.assertEqual(mock_restart.call_count, 2)
- @mock.patch("certbot_nginx._internal.configurator.subprocess.Popen")
- def test_get_version(self, mock_popen):
- mock_popen().communicate.return_value = (
- "", "\n".join(["nginx version: nginx/1.4.2",
+ @mock.patch("certbot_nginx._internal.configurator.subprocess.run")
+ def test_get_version(self, mock_run):
+ mock_run.return_value.stdout = ""
+ mock_run.return_value.stderr = "\n".join(
+ ["nginx version: nginx/1.4.2",
"built by clang 6.0 (clang-600.0.56)"
" (based on LLVM 3.5svn)",
"TLS SNI support enabled",
"configure arguments: --prefix=/usr/local/Cellar/"
- "nginx/1.6.2 --with-http_ssl_module"]))
+ "nginx/1.6.2 --with-http_ssl_module"])
self.assertEqual(self.config.get_version(), (1, 4, 2))
- mock_popen().communicate.return_value = (
- "", "\n".join(["nginx version: nginx/0.9",
+ mock_run.return_value.stdout = ""
+ mock_run.return_value.stderr = "\n".join(
+ ["nginx version: nginx/0.9",
"built by clang 6.0 (clang-600.0.56)"
" (based on LLVM 3.5svn)",
"TLS SNI support enabled",
- "configure arguments: --with-http_ssl_module"]))
+ "configure arguments: --with-http_ssl_module"])
self.assertEqual(self.config.get_version(), (0, 9))
- mock_popen().communicate.return_value = (
- "", "\n".join(["blah 0.0.1",
+ mock_run.return_value.stdout = ""
+ mock_run.return_value.stderr = "\n".join(
+ ["blah 0.0.1",
"built by clang 6.0 (clang-600.0.56)"
" (based on LLVM 3.5svn)",
"TLS SNI support enabled",
- "configure arguments: --with-http_ssl_module"]))
+ "configure arguments: --with-http_ssl_module"])
self.assertRaises(errors.PluginError, self.config.get_version)
- mock_popen().communicate.return_value = (
- "", "\n".join(["nginx version: nginx/1.4.2",
- "TLS SNI support enabled"]))
+ mock_run.return_value.stdout = ""
+ mock_run.return_value.stderr = "\n".join(
+ ["nginx version: nginx/1.4.2",
+ "TLS SNI support enabled"])
self.assertRaises(errors.PluginError, self.config.get_version)
- mock_popen().communicate.return_value = (
- "", "\n".join(["nginx version: nginx/1.4.2",
+ mock_run.return_value.stdout = ""
+ mock_run.return_value.stderr = "\n".join(
+ ["nginx version: nginx/1.4.2",
"built by clang 6.0 (clang-600.0.56)"
" (based on LLVM 3.5svn)",
- "configure arguments: --with-http_ssl_module"]))
+ "configure arguments: --with-http_ssl_module"])
self.assertRaises(errors.PluginError, self.config.get_version)
- mock_popen().communicate.return_value = (
- "", "\n".join(["nginx version: nginx/0.8.1",
+ mock_run.return_value.stdout = ""
+ mock_run.return_value.stderr = "\n".join(
+ ["nginx version: nginx/0.8.1",
"built by clang 6.0 (clang-600.0.56)"
" (based on LLVM 3.5svn)",
"TLS SNI support enabled",
- "configure arguments: --with-http_ssl_module"]))
+ "configure arguments: --with-http_ssl_module"])
self.assertRaises(errors.NotSupportedError, self.config.get_version)
- mock_popen.side_effect = OSError("Can't find program")
+ mock_run.side_effect = OSError("Can't find program")
self.assertRaises(errors.PluginError, self.config.get_version)
- @mock.patch("certbot_nginx._internal.configurator.subprocess.Popen")
- def test_get_openssl_version(self, mock_popen):
+ @mock.patch("certbot_nginx._internal.configurator.subprocess.run")
+ def test_get_openssl_version(self, mock_run):
# pylint: disable=protected-access
- mock_popen().communicate.return_value = (
- "", """
+ mock_run.return_value.stdout = ""
+ mock_run.return_value.stderr = """
nginx version: nginx/1.15.5
built by gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.9)
built with OpenSSL 1.0.2g 1 Mar 2016
TLS SNI support enabled
configure arguments:
- """)
+ """
self.assertEqual(self.config._get_openssl_version(), "1.0.2g")
- mock_popen().communicate.return_value = (
- "", """
+ mock_run.return_value.stdout = ""
+ mock_run.return_value.stderr = """
nginx version: nginx/1.15.5
built by gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.9)
built with OpenSSL 1.0.2-beta1 1 Mar 2016
TLS SNI support enabled
configure arguments:
- """)
+ """
self.assertEqual(self.config._get_openssl_version(), "1.0.2-beta1")
- mock_popen().communicate.return_value = (
- "", """
+ mock_run.return_value.stdout = ""
+ mock_run.return_value.stderr = """
nginx version: nginx/1.15.5
built by gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.9)
built with OpenSSL 1.0.2 1 Mar 2016
TLS SNI support enabled
configure arguments:
- """)
+ """
self.assertEqual(self.config._get_openssl_version(), "1.0.2")
- mock_popen().communicate.return_value = (
- "", """
+ mock_run.return_value.stdout = ""
+ mock_run.return_value.stderr = """
nginx version: nginx/1.15.5
built by gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.9)
built with OpenSSL 1.0.2g 1 Mar 2016 (running with OpenSSL
1.0.2a 1 Mar 2016)
TLS SNI support enabled
configure arguments:
- """)
+ """
self.assertEqual(self.config._get_openssl_version(), "1.0.2a")
- mock_popen().communicate.return_value = (
- "", """
+ mock_run.return_value.stdout = ""
+ mock_run.return_value.stderr = """
nginx version: nginx/1.15.5
built by gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.9)
built with LibreSSL 2.2.2
TLS SNI support enabled
configure arguments:
- """)
+ """
self.assertEqual(self.config._get_openssl_version(), "")
- mock_popen().communicate.return_value = (
- "", """
+ mock_run.return_value.stdout = ""
+ mock_run.return_value.stderr = """
nginx version: nginx/1.15.5
built by gcc 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.9)
TLS SNI support enabled
configure arguments:
- """)
+ """
self.assertEqual(self.config._get_openssl_version(), "")
- @mock.patch("certbot_nginx._internal.configurator.subprocess.Popen")
+ @mock.patch("certbot_nginx._internal.configurator.subprocess.run")
@mock.patch("certbot_nginx._internal.configurator.time")
- def test_nginx_restart(self, mock_time, mock_popen):
- mocked = mock_popen()
- mocked.communicate.return_value = ('', '')
+ def test_nginx_restart(self, mock_time, mock_run):
+ mocked = mock_run.return_value
+ mocked.stdout = ''
+ mocked.stderr = ''
mocked.returncode = 0
self.config.restart()
- self.assertEqual(mocked.communicate.call_count, 1)
+ self.assertEqual(mock_run.call_count, 1)
mock_time.sleep.assert_called_once_with(0.1234)
- @mock.patch("certbot_nginx._internal.configurator.subprocess.Popen")
+ @mock.patch("certbot_nginx._internal.configurator.subprocess.run")
@mock.patch("certbot_nginx._internal.configurator.logger.debug")
- def test_nginx_restart_fail(self, mock_log_debug, mock_popen):
- mocked = mock_popen()
- mocked.communicate.return_value = ('', '')
+ def test_nginx_restart_fail(self, mock_log_debug, mock_run):
+ mocked = mock_run.return_value
+ mocked.stdout = ''
+ mocked.stderr = ''
mocked.returncode = 1
self.assertRaises(errors.MisconfigurationError, self.config.restart)
- self.assertEqual(mocked.communicate.call_count, 2)
+ self.assertEqual(mock_run.call_count, 2)
mock_log_debug.assert_called_once_with("nginx reload failed:\n%s", "")
- @mock.patch("certbot_nginx._internal.configurator.subprocess.Popen")
- def test_no_nginx_start(self, mock_popen):
- mock_popen.side_effect = OSError("Can't find program")
+ @mock.patch("certbot_nginx._internal.configurator.subprocess.run")
+ def test_no_nginx_start(self, mock_run):
+ mock_run.side_effect = OSError("Can't find program")
self.assertRaises(errors.MisconfigurationError, self.config.restart)
@mock.patch("certbot.util.run_script")
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/certbot-nginx-1.15.0/tests/test_util.py
new/certbot-nginx-1.16.0/tests/test_util.py
--- old/certbot-nginx-1.15.0/tests/test_util.py 2021-05-04 20:48:08.000000000
+0200
+++ new/certbot-nginx-1.16.0/tests/test_util.py 2021-06-01 19:49:17.000000000
+0200
@@ -9,7 +9,6 @@
except ImportError: # pragma: no cover
from unittest import mock # type: ignore
import pkg_resources
-import zope.component
from certbot import util
from certbot.compat import os
@@ -79,9 +78,6 @@
openssl_version=openssl_version)
config.prepare()
- # Provide general config utility.
- zope.component.provideUtility(self.configuration)
-
return config