mirror of
https://github.com/certbot/certbot.git
synced 2025-07-31 20:04:25 +03:00
Spelling and grammar fixes (#7695)
This commit is contained in:
committed by
Adrien Ferrand
parent
fcdeaf48f2
commit
1702cb90fd
@ -69,12 +69,12 @@ Access can be defined for all or only selected repositories, which is nice.
|
||||
```
|
||||
|
||||
- Redirected to Azure DevOps, select the account created in _Having an Azure DevOps account_ section.
|
||||
- Select the organization, and click "Create a new project" (let's name it the same than the targetted github repo)
|
||||
- Select the organization, and click "Create a new project" (let's name it the same than the targeted github repo)
|
||||
- The Visibility is public, to profit from 10 parallel jobs
|
||||
|
||||
```
|
||||
!!! ACCESS !!!
|
||||
Azure Pipelines needs access to the GitHub account (in term of beeing able to check it is valid), and the Resources shared between the GitHub account and Azure Pipelines.
|
||||
Azure Pipelines needs access to the GitHub account (in term of being able to check it is valid), and the Resources shared between the GitHub account and Azure Pipelines.
|
||||
```
|
||||
|
||||
_Done. We can move to pipelines configuration._
|
||||
|
@ -942,7 +942,7 @@ class ClientNetwork(object):
|
||||
:param messages.RegistrationResource account: Account object. Required if you are
|
||||
planning to use .post() with acme_version=2 for anything other than
|
||||
creating a new account; may be set later after registering.
|
||||
:param josepy.JWASignature alg: Algoritm to use in signing JWS.
|
||||
:param josepy.JWASignature alg: Algorithm to use in signing JWS.
|
||||
:param bool verify_ssl: Whether to verify certificates on SSL connections.
|
||||
:param str user_agent: String to send as User-Agent header.
|
||||
:param float timeout: Timeout for requests.
|
||||
|
@ -36,7 +36,7 @@ ERROR_CODES = {
|
||||
' domain'),
|
||||
'dns': 'There was a problem with a DNS query during identifier validation',
|
||||
'dnssec': 'The server could not validate a DNSSEC signed domain',
|
||||
'incorrectResponse': 'Response recieved didn\'t match the challenge\'s requirements',
|
||||
'incorrectResponse': 'Response received didn\'t match the challenge\'s requirements',
|
||||
# deprecate invalidEmail
|
||||
'invalidEmail': 'The provided email for a registration was invalid',
|
||||
'invalidContact': 'The provided contact URI was invalid',
|
||||
|
@ -1817,7 +1817,7 @@ class ApacheConfigurator(common.Installer):
|
||||
ssl_vhost.filep)
|
||||
|
||||
def _verify_no_matching_http_header(self, ssl_vhost, header_substring):
|
||||
"""Checks to see if an there is an existing Header directive that
|
||||
"""Checks to see if there is an existing Header directive that
|
||||
contains the string header_substring.
|
||||
|
||||
:param ssl_vhost: vhost to check
|
||||
|
@ -764,7 +764,7 @@ class ApacheParser(object):
|
||||
split_arg = arg.split("/")
|
||||
for idx, split in enumerate(split_arg):
|
||||
if any(char in ApacheParser.fnmatch_chars for char in split):
|
||||
# Turn it into a augeas regex
|
||||
# Turn it into an augeas regex
|
||||
# TODO: Can this instead be an augeas glob instead of regex
|
||||
split_arg[idx] = ("* [label()=~regexp('%s')]" %
|
||||
self.fnmatch_to_re(split))
|
||||
|
@ -26,7 +26,7 @@ Listen 443
|
||||
|
||||
# Pass Phrase Dialog:
|
||||
# Configure the pass phrase gathering process.
|
||||
# The filtering dialog program (`builtin' is a internal
|
||||
# The filtering dialog program (`builtin' is an internal
|
||||
# terminal dialog) has to provide the pass phrase on stdout.
|
||||
SSLPassPhraseDialog builtin
|
||||
|
||||
|
@ -702,7 +702,7 @@ IndexIgnore .??* *~ *# HEADER* README* RCS CVS *,v *,t
|
||||
# English (en) - Esperanto (eo) - Estonian (et) - French (fr) - German (de)
|
||||
# Greek-Modern (el) - Hebrew (he) - Italian (it) - Japanese (ja)
|
||||
# Korean (ko) - Luxembourgeois* (ltz) - Norwegian Nynorsk (nn)
|
||||
# Norwegian (no) - Polish (pl) - Portugese (pt)
|
||||
# Norwegian (no) - Polish (pl) - Portuguese (pt)
|
||||
# Brazilian Portuguese (pt-BR) - Russian (ru) - Swedish (sv)
|
||||
# Simplified Chinese (zh-CN) - Spanish (es) - Traditional Chinese (zh-TW)
|
||||
#
|
||||
|
@ -13,7 +13,7 @@ Listen 443 https
|
||||
|
||||
# Pass Phrase Dialog:
|
||||
# Configure the pass phrase gathering process.
|
||||
# The filtering dialog program (`builtin' is a internal
|
||||
# The filtering dialog program (`builtin' is an internal
|
||||
# terminal dialog) has to provide the pass phrase on stdout.
|
||||
SSLPassPhraseDialog exec:/usr/libexec/httpd-ssl-pass-dialog
|
||||
|
||||
|
@ -31,7 +31,7 @@
|
||||
|
||||
# Pass Phrase Dialog:
|
||||
# Configure the pass phrase gathering process.
|
||||
# The filtering dialog program (`builtin' is a internal
|
||||
# The filtering dialog program (`builtin' is an internal
|
||||
# terminal dialog) has to provide the pass phrase on stdout.
|
||||
SSLPassPhraseDialog exec:/usr/share/apache2/ask-for-passphrase
|
||||
|
||||
|
@ -31,7 +31,7 @@
|
||||
|
||||
# Pass Phrase Dialog:
|
||||
# Configure the pass phrase gathering process.
|
||||
# The filtering dialog program (`builtin' is a internal
|
||||
# The filtering dialog program (`builtin' is an internal
|
||||
# terminal dialog) has to provide the pass phrase on stdout.
|
||||
SSLPassPhraseDialog exec:/usr/share/apache2/ask-for-passphrase
|
||||
|
||||
|
@ -31,7 +31,7 @@
|
||||
|
||||
# Pass Phrase Dialog:
|
||||
# Configure the pass phrase gathering process.
|
||||
# The filtering dialog program (`builtin' is a internal
|
||||
# The filtering dialog program (`builtin' is an internal
|
||||
# terminal dialog) has to provide the pass phrase on stdout.
|
||||
SSLPassPhraseDialog exec:/usr/share/apache2/ask-for-passphrase
|
||||
|
||||
|
@ -33,7 +33,7 @@
|
||||
# English (en) - Esperanto (eo) - Estonian (et) - French (fr) - German (de)
|
||||
# Greek-Modern (el) - Hebrew (he) - Italian (it) - Japanese (ja)
|
||||
# Korean (ko) - Luxembourgeois* (ltz) - Norwegian Nynorsk (nn)
|
||||
# Norwegian (no) - Polish (pl) - Portugese (pt)
|
||||
# Norwegian (no) - Polish (pl) - Portuguese (pt)
|
||||
# Brazilian Portuguese (pt-BR) - Russian (ru) - Swedish (sv)
|
||||
# Simplified Chinese (zh-CN) - Spanish (es) - Traditional Chinese (zh-TW)
|
||||
AddLanguage ca .ca
|
||||
|
@ -43,7 +43,7 @@ SSLRandomSeed connect builtin
|
||||
|
||||
## Pass Phrase Dialog:
|
||||
# Configure the pass phrase gathering process. The filtering dialog program
|
||||
# (`builtin' is a internal terminal dialog) has to provide the pass phrase on
|
||||
# (`builtin' is an internal terminal dialog) has to provide the pass phrase on
|
||||
# stdout.
|
||||
SSLPassPhraseDialog builtin
|
||||
|
||||
|
@ -62,7 +62,7 @@ def _setup_primary_node(config):
|
||||
"""
|
||||
Setup the environment for integration tests.
|
||||
Will:
|
||||
- check runtime compatiblity (Docker, docker-compose, Nginx)
|
||||
- check runtime compatibility (Docker, docker-compose, Nginx)
|
||||
- create a temporary workspace and the persistent GIT repositories space
|
||||
- configure and start paralleled ACME CA servers using Docker
|
||||
- transfer ACME CA servers configurations to pytest nodes using env variables
|
||||
|
@ -189,7 +189,7 @@ class ACMEServer(object):
|
||||
print('=> Finished configuring the HTTP proxy.')
|
||||
|
||||
def _launch_process(self, command, cwd=os.getcwd(), env=None):
|
||||
"""Launch silently an subprocess OS command"""
|
||||
"""Launch silently a subprocess OS command"""
|
||||
if not env:
|
||||
env = os.environ
|
||||
process = subprocess.Popen(command, stdout=self._stdout, stderr=subprocess.STDOUT, cwd=cwd, env=env)
|
||||
|
@ -39,7 +39,7 @@ class ValidatorTest(unittest.TestCase):
|
||||
cert, "test.com", "127.0.0.1"))
|
||||
|
||||
@mock.patch("certbot_compatibility_test.validator.requests.get")
|
||||
def test_succesful_redirect(self, mock_get_request):
|
||||
def test_successful_redirect(self, mock_get_request):
|
||||
mock_get_request.return_value = create_response(
|
||||
301, {"location": "https://test.com"})
|
||||
self.assertTrue(self.validator.redirect("test.com"))
|
||||
|
@ -1 +1 @@
|
||||
Gehirn Infrastracture Service DNS Authenticator plugin for Certbot
|
||||
Gehirn Infrastructure Service DNS Authenticator plugin for Certbot
|
||||
|
@ -1,14 +1,14 @@
|
||||
"""
|
||||
The `~certbot_dns_gehirn.dns_gehirn` plugin automates the process of completing
|
||||
a ``dns-01`` challenge (`~acme.challenges.DNS01`) by creating, and subsequently
|
||||
removing, TXT records using the Gehirn Infrastracture Service DNS API.
|
||||
removing, TXT records using the Gehirn Infrastructure Service DNS API.
|
||||
|
||||
|
||||
Named Arguments
|
||||
---------------
|
||||
|
||||
======================================== =====================================
|
||||
``--dns-gehirn-credentials`` Gehirn Infrastracture Service
|
||||
``--dns-gehirn-credentials`` Gehirn Infrastructure Service
|
||||
credentials_ INI file.
|
||||
(Required)
|
||||
``--dns-gehirn-propagation-seconds`` The number of seconds to wait for DNS
|
||||
@ -22,15 +22,15 @@ Credentials
|
||||
-----------
|
||||
|
||||
Use of this plugin requires a configuration file containing
|
||||
Gehirn Infrastracture Service DNS API credentials,
|
||||
obtained from your Gehirn Infrastracture Service
|
||||
Gehirn Infrastructure Service DNS API credentials,
|
||||
obtained from your Gehirn Infrastructure Service
|
||||
`dashboard <https://gis.gehirn.jp/>`_.
|
||||
|
||||
.. code-block:: ini
|
||||
:name: credentials.ini
|
||||
:caption: Example credentials file:
|
||||
|
||||
# Gehirn Infrastracture Service API credentials used by Certbot
|
||||
# Gehirn Infrastructure Service API credentials used by Certbot
|
||||
dns_gehirn_api_token = 00000000-0000-0000-0000-000000000000
|
||||
dns_gehirn_api_secret = MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
|
||||
|
||||
@ -40,7 +40,7 @@ to this file for use during renewal, but does not store the file's contents.
|
||||
|
||||
.. caution::
|
||||
You should protect these API credentials as you would the password to your
|
||||
Gehirn Infrastracture Service account. Users who can read this file can use
|
||||
Gehirn Infrastructure Service account. Users who can read this file can use
|
||||
these credentials to issue arbitrary API calls on your behalf. Users who can
|
||||
cause Certbot to run using these credentials can complete a ``dns-01``
|
||||
challenge to acquire new certificates or revoke existing certificates for
|
||||
|
@ -1,4 +1,4 @@
|
||||
"""DNS Authenticator for Gehirn Infrastracture Service DNS."""
|
||||
"""DNS Authenticator for Gehirn Infrastructure Service DNS."""
|
||||
import logging
|
||||
|
||||
from lexicon.providers import gehirn
|
||||
@ -15,14 +15,14 @@ DASHBOARD_URL = "https://gis.gehirn.jp/"
|
||||
@zope.interface.implementer(interfaces.IAuthenticator)
|
||||
@zope.interface.provider(interfaces.IPluginFactory)
|
||||
class Authenticator(dns_common.DNSAuthenticator):
|
||||
"""DNS Authenticator for Gehirn Infrastracture Service DNS
|
||||
"""DNS Authenticator for Gehirn Infrastructure Service DNS
|
||||
|
||||
This Authenticator uses the Gehirn Infrastracture Service API to fulfill
|
||||
This Authenticator uses the Gehirn Infrastructure Service API to fulfill
|
||||
a dns-01 challenge.
|
||||
"""
|
||||
|
||||
description = 'Obtain certificates using a DNS TXT record ' + \
|
||||
'(if you are using Gehirn Infrastracture Service for DNS).'
|
||||
'(if you are using Gehirn Infrastructure Service for DNS).'
|
||||
ttl = 60
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
@ -32,20 +32,20 @@ class Authenticator(dns_common.DNSAuthenticator):
|
||||
@classmethod
|
||||
def add_parser_arguments(cls, add): # pylint: disable=arguments-differ
|
||||
super(Authenticator, cls).add_parser_arguments(add, default_propagation_seconds=30)
|
||||
add('credentials', help='Gehirn Infrastracture Service credentials file.')
|
||||
add('credentials', help='Gehirn Infrastructure Service credentials file.')
|
||||
|
||||
def more_info(self): # pylint: disable=missing-docstring,no-self-use
|
||||
return 'This plugin configures a DNS TXT record to respond to a dns-01 challenge using ' + \
|
||||
'the Gehirn Infrastracture Service API.'
|
||||
'the Gehirn Infrastructure Service API.'
|
||||
|
||||
def _setup_credentials(self):
|
||||
self.credentials = self._configure_credentials(
|
||||
'credentials',
|
||||
'Gehirn Infrastracture Service credentials file',
|
||||
'Gehirn Infrastructure Service credentials file',
|
||||
{
|
||||
'api-token': 'API token for Gehirn Infrastracture Service ' + \
|
||||
'api-token': 'API token for Gehirn Infrastructure Service ' + \
|
||||
'API obtained from {0}'.format(DASHBOARD_URL),
|
||||
'api-secret': 'API secret for Gehirn Infrastracture Service ' + \
|
||||
'api-secret': 'API secret for Gehirn Infrastructure Service ' + \
|
||||
'API obtained from {0}'.format(DASHBOARD_URL),
|
||||
}
|
||||
)
|
||||
@ -66,7 +66,7 @@ class Authenticator(dns_common.DNSAuthenticator):
|
||||
|
||||
class _GehirnLexiconClient(dns_common_lexicon.LexiconClient):
|
||||
"""
|
||||
Encapsulates all communication with the Gehirn Infrastracture Service via Lexicon.
|
||||
Encapsulates all communication with the Gehirn Infrastructure Service via Lexicon.
|
||||
"""
|
||||
|
||||
def __init__(self, api_token, api_secret, ttl):
|
||||
|
@ -38,7 +38,7 @@ class PyTest(TestCommand):
|
||||
setup(
|
||||
name='certbot-dns-gehirn',
|
||||
version=version,
|
||||
description="Gehirn Infrastracture Service DNS Authenticator plugin for Certbot",
|
||||
description="Gehirn Infrastructure Service DNS Authenticator plugin for Certbot",
|
||||
url='https://github.com/certbot/certbot',
|
||||
author="Certbot Project",
|
||||
author_email='client-dev@letsencrypt.org',
|
||||
|
@ -248,7 +248,7 @@ More details about these changes can be found on our GitHub repo.
|
||||
|
||||
### Added
|
||||
|
||||
* dns_rfc2136 plugin now supports explicitly specifing an authorative
|
||||
* dns_rfc2136 plugin now supports explicitly specifying an authoritative
|
||||
base domain for cases when the automatic method does not work (e.g.
|
||||
Split horizon DNS)
|
||||
|
||||
@ -632,7 +632,7 @@ https://github.com/certbot/certbot/milestone/62?closed=1
|
||||
* Log warning about TLS-SNI deprecation in Certbot
|
||||
* Stop preferring TLS-SNI in the Apache, Nginx, and standalone plugins
|
||||
* OVH DNS plugin now relies on Lexicon>=2.7.14 to support HTTP proxies
|
||||
* Default time the Linode plugin waits for DNS changes to propogate is now 1200 seconds.
|
||||
* Default time the Linode plugin waits for DNS changes to propagate is now 1200 seconds.
|
||||
|
||||
### Fixed
|
||||
|
||||
@ -751,7 +751,7 @@ https://github.com/certbot/certbot/milestone/58?closed=1
|
||||
increased over time. The max-age value is not increased to a large value
|
||||
until you've successfully managed to renew your certificate. This enhancement
|
||||
can be requested with the --auto-hsts flag.
|
||||
* New official DNS plugins have been created for Gehirn Infrastracture Service,
|
||||
* New official DNS plugins have been created for Gehirn Infrastructure Service,
|
||||
Linode, OVH, and Sakura Cloud. These plugins can be found on our Docker Hub
|
||||
page at https://hub.docker.com/u/certbot and on PyPI.
|
||||
* The ability to reuse ACME accounts from Let's Encrypt's ACMEv1 endpoint on
|
||||
|
@ -1414,7 +1414,7 @@ def _plugins_parsing(helpful, plugins):
|
||||
helpful.add(["plugins", "certonly"], "--dns-gehirn", action="store_true",
|
||||
default=flag_default("dns_gehirn"),
|
||||
help=("Obtain certificates using a DNS TXT record "
|
||||
"(if you are using Gehirn Infrastracture Service for DNS)."))
|
||||
"(if you are using Gehirn Infrastructure Service for DNS)."))
|
||||
helpful.add(["plugins", "certonly"], "--dns-google", action="store_true",
|
||||
default=flag_default("dns_google"),
|
||||
help=("Obtain certificates using a DNS TXT record (if you are "
|
||||
|
@ -192,7 +192,7 @@ def _check_ocsp_cryptography(cert_path, chain_path, url):
|
||||
|
||||
|
||||
def _check_ocsp_response(response_ocsp, request_ocsp, issuer_cert, cert_path):
|
||||
"""Verify that the OCSP is valid for serveral criterias"""
|
||||
"""Verify that the OCSP is valid for serveral criteria"""
|
||||
# Assert OCSP response corresponds to the certificate we are talking about
|
||||
if response_ocsp.serial_number != request_ocsp.serial_number:
|
||||
raise AssertionError('the certificate in response does not correspond '
|
||||
|
@ -192,7 +192,7 @@ def _restore_pref_challs(unused_name, value):
|
||||
:returns: converted option value to be stored in the runtime config
|
||||
:rtype: `list` of `str`
|
||||
|
||||
:raises errors.Error: if value can't be converted to an bool
|
||||
:raises errors.Error: if value can't be converted to a bool
|
||||
|
||||
"""
|
||||
# If pref_challs has only one element, configobj saves the value
|
||||
@ -203,7 +203,7 @@ def _restore_pref_challs(unused_name, value):
|
||||
|
||||
|
||||
def _restore_bool(name, value):
|
||||
"""Restores an boolean key-value pair from a renewal config file.
|
||||
"""Restores a boolean key-value pair from a renewal config file.
|
||||
|
||||
:param str name: option name
|
||||
:param str value: option value
|
||||
@ -211,7 +211,7 @@ def _restore_bool(name, value):
|
||||
:returns: converted option value to be stored in the runtime config
|
||||
:rtype: bool
|
||||
|
||||
:raises errors.Error: if value can't be converted to an bool
|
||||
:raises errors.Error: if value can't be converted to a bool
|
||||
|
||||
"""
|
||||
lowercase_value = value.lower()
|
||||
@ -244,7 +244,7 @@ def _restore_int(name, value):
|
||||
|
||||
|
||||
def _restore_str(unused_name, value):
|
||||
"""Restores an string key-value pair from a renewal config file.
|
||||
"""Restores a string key-value pair from a renewal config file.
|
||||
|
||||
:param str unused_name: option name
|
||||
:param str value: option value
|
||||
|
@ -541,7 +541,7 @@ def _generate_windows_flags(rights_desc):
|
||||
# write access on Linux: for Windows, FILE_GENERIC_WRITE does not include delete, move or
|
||||
# rename. This is something that requires ntsecuritycon.FILE_ALL_ACCESS.
|
||||
# So to reproduce the write right as POSIX, we will apply ntsecuritycon.FILE_ALL_ACCESS
|
||||
# substracted of the rights corresponding to POSIX read and POSIX execute.
|
||||
# subtracted of the rights corresponding to POSIX read and POSIX execute.
|
||||
#
|
||||
# Finally, having read + write + execute gives a ntsecuritycon.FILE_ALL_ACCESS,
|
||||
# so a "Full Control" on the file.
|
||||
|
@ -340,7 +340,7 @@ def validated_input(validator, *args, **kwargs):
|
||||
"""Like `~certbot.interfaces.IDisplay.input`, but with validation.
|
||||
|
||||
:param callable validator: A method which will be called on the
|
||||
supplied input. If the method raises a `errors.Error`, its
|
||||
supplied input. If the method raises an `errors.Error`, its
|
||||
text will be displayed and the user will be re-prompted.
|
||||
:param list `*args`: Arguments to be passed to `~certbot.interfaces.IDisplay.input`.
|
||||
:param dict `**kwargs`: Arguments to be passed to `~certbot.interfaces.IDisplay.input`.
|
||||
@ -355,7 +355,7 @@ def validated_directory(validator, *args, **kwargs):
|
||||
"""Like `~certbot.interfaces.IDisplay.directory_select`, but with validation.
|
||||
|
||||
:param callable validator: A method which will be called on the
|
||||
supplied input. If the method raises a `errors.Error`, its
|
||||
supplied input. If the method raises an `errors.Error`, its
|
||||
text will be displayed and the user will be re-prompted.
|
||||
:param list `*args`: Arguments to be passed to `~certbot.interfaces.IDisplay.directory_select`.
|
||||
:param dict `**kwargs`: Arguments to be passed to
|
||||
|
@ -451,7 +451,7 @@ plugins:
|
||||
--dns-dnsmadeeasy Obtain certificates using a DNS TXT record (if you are
|
||||
using DNS Made Easy for DNS). (default: False)
|
||||
--dns-gehirn Obtain certificates using a DNS TXT record (if you are
|
||||
using Gehirn Infrastracture Service for DNS).
|
||||
using Gehirn Infrastructure Service for DNS).
|
||||
(default: False)
|
||||
--dns-google Obtain certificates using a DNS TXT record (if you are
|
||||
using Google Cloud DNS). (default: False)
|
||||
@ -560,14 +560,14 @@ dns-dnsmadeeasy:
|
||||
|
||||
dns-gehirn:
|
||||
Obtain certificates using a DNS TXT record (if you are using Gehirn
|
||||
Infrastracture Service for DNS).
|
||||
Infrastructure Service for DNS).
|
||||
|
||||
--dns-gehirn-propagation-seconds DNS_GEHIRN_PROPAGATION_SECONDS
|
||||
The number of seconds to wait for DNS to propagate
|
||||
before asking the ACME server to verify the DNS
|
||||
record. (default: 30)
|
||||
--dns-gehirn-credentials DNS_GEHIRN_CREDENTIALS
|
||||
Gehirn Infrastracture Service credentials file.
|
||||
Gehirn Infrastructure Service credentials file.
|
||||
(default: None)
|
||||
|
||||
dns-google:
|
||||
|
@ -579,7 +579,7 @@ class AtexitRegisterTest(unittest.TestCase):
|
||||
with mock.patch('certbot.util.atexit') as mock_atexit:
|
||||
self._call(self.func, *self.args, **self.kwargs)
|
||||
|
||||
# _INITAL_PID must be mocked when calling atexit_func
|
||||
# _INITIAL_PID must be mocked when calling atexit_func
|
||||
self.assertTrue(mock_atexit.register.called)
|
||||
args, kwargs = mock_atexit.register.call_args
|
||||
atexit_func = args[0]
|
||||
|
@ -63,7 +63,7 @@ CERTBOT_REPO_PATH = dirname(dirname(abspath(__file__)))
|
||||
# - then this venv is used to consistently construct an empty new venv
|
||||
# - once pipstraped, this new venv pip-installs certbot runtime (including apache/nginx),
|
||||
# without pinned dependencies, and respecting input authoritative requirements
|
||||
# - `certbot plugins` is called to check we have an healthy environment
|
||||
# - `certbot plugins` is called to check we have a healthy environment
|
||||
# - finally current set of dependencies is extracted out of the docker using pip freeze
|
||||
SCRIPT = r"""#!/bin/sh
|
||||
set -e
|
||||
|
@ -100,7 +100,7 @@ echo "PASSED: certbot-auto did not install Python3.6 in a non-interactive shell
|
||||
# now bootstrap from current letsencrypt-auto, that will install python3.6 from SCL
|
||||
"$LE_AUTO" --no-self-upgrade -n --version >/dev/null 2>/dev/null
|
||||
|
||||
# Following test is exectued in a subshell, to not leak any environment variable
|
||||
# Following test is executed in a subshell, to not leak any environment variable
|
||||
(
|
||||
# enable SCL rh-python36
|
||||
. /opt/rh/rh-python36/enable
|
||||
@ -124,7 +124,7 @@ echo "PASSED: certbot-auto did not install Python3.6 in a non-interactive shell
|
||||
fi
|
||||
)
|
||||
|
||||
# Following test is exectued in a subshell, to not leak any environment variable
|
||||
# Following test is executed in a subshell, to not leak any environment variable
|
||||
(
|
||||
# enable SCL rh-python36
|
||||
. /opt/rh/rh-python36/enable
|
||||
|
@ -16,7 +16,7 @@ WHITELIST_PACKAGES = ['acme', 'certbot_compatibility_test', 'letshelp_certbot',
|
||||
class ForbidStandardOsModule(BaseChecker):
|
||||
"""
|
||||
This checker ensures that standard os module (and submodules) is not imported by certbot
|
||||
modules. Otherwise a 'os-module-forbidden' error will be registered for the faulty lines.
|
||||
modules. Otherwise an 'os-module-forbidden' error will be registered for the faulty lines.
|
||||
"""
|
||||
__implements__ = IAstroidChecker
|
||||
|
||||
|
@ -6,7 +6,7 @@
|
||||
# 1- decodestring: https://github.com/rthalley/dnspython/issues/338
|
||||
# 2- ignore warn for importing abstract classes from collections instead of collections.abc,
|
||||
# too much third party dependencies are still relying on this behavior,
|
||||
# but it should be corrected to allow Certbot compatiblity with Python >= 3.8
|
||||
# but it should be corrected to allow Certbot compatibility with Python >= 3.8
|
||||
filterwarnings =
|
||||
error
|
||||
ignore:decodestring:DeprecationWarning
|
||||
|
Reference in New Issue
Block a user