Add a comprehensive error when failing to register for an ACME account

This commit is contained in:
Brendan Abolivier 2020-02-13 14:58:34 +00:00
parent 5820ed905f
commit 12bbcc255a
No known key found for this signature in database
GPG Key ID: 1E015C145F1916CD

View File

@ -22,6 +22,7 @@ from twisted.web import server, static
from twisted.web.resource import Resource from twisted.web.resource import Resource
from synapse.app import check_bind_error from synapse.app import check_bind_error
from synapse.config import ConfigError
logger = logging.getLogger(__name__) logger = logging.getLogger(__name__)
@ -71,7 +72,18 @@ class AcmeHandler(object):
# want it to control where we save the certificates, we have to reach in # want it to control where we save the certificates, we have to reach in
# and trigger the registration machinery ourselves. # and trigger the registration machinery ourselves.
self._issuer._registered = False self._issuer._registered = False
yield self._issuer._ensure_registered()
try:
yield self._issuer._ensure_registered()
except Exception:
raise ConfigError("Failed to register with the ACME provider. This is likely"
" happening because the install is new, and ACME v1 has"
" been deprecated by Let's Encrypt and is disabled for"
" installs set up after November 2019. At the moment,"
" Synapse doesn't support ACME v2. For more info and"
" alternative solution, check out"
" https://github.com/matrix-org/synapse/blob/master/docs/"
"ACME.md#deprecation-of-acme-v1")
@defer.inlineCallbacks @defer.inlineCallbacks
def provision_certificate(self): def provision_certificate(self):