Merge remote-tracking branch 'github/letsencrypt/master' into pkgs_sep_prep

This commit is contained in:
Jakub Warmuz
2015-05-10 15:29:04 +00:00
8 changed files with 23 additions and 19 deletions
+7 -3
View File
@@ -17,11 +17,15 @@ It's all automated:
* If domain control has been proven, a certificate will get issued and the tool
will automatically install it.
All you need to do is:
All you need to do is::
::
user@www:~$ sudo letsencrypt -d www.example.org auth
user@www:~$ sudo letsencrypt -d www.example.org
and if you have a compatbile web server (Apache), Let's Encrypt can
not only get a new certificate, but also deploy it and configure your
server automatically!::
user@www:~$ sudo letsencrypt -d www.example.org run
**Encrypt ALL the things!**
-1
View File
@@ -54,7 +54,6 @@ Installation
virtualenv --no-site-packages -p python2 venv
./venv/bin/pip install -r requirements.txt
sudo ./venv/bin/letsencrypt
Usage
+5 -5
View File
@@ -76,7 +76,7 @@ class Client(object):
def register(self):
"""New Registration with the ACME server."""
self.account = self.network.register_from_account(self.account)
if self.account.terms_of_service:
if self.account.terms_of_service is not None:
if not self.config.tos:
# TODO: Replace with self.account.terms_of_service
eula = pkg_resources.resource_string("letsencrypt", "EULA")
@@ -171,13 +171,13 @@ class Client(object):
logging.info("Server issued certificate; certificate written to %s",
act_cert_path)
if certr.cert_chain_uri:
if certr.cert_chain_uri is not None:
# TODO: Except
chain_cert = self.network.fetch_chain(certr.cert_chain_uri)
if chain_cert:
chain_cert = self.network.fetch_chain(certr)
if chain_cert is not None:
chain_file, act_chain_path = le_util.unique_file(
chain_path, 0o644)
chain_pem = chain_cert.to_pem()
chain_pem = chain_cert.as_pem()
try:
chain_file.write(chain_pem)
finally:
+1 -1
View File
@@ -22,7 +22,7 @@ def choose_plugin(prepared, question):
:rtype: `~.PluginEntryPoint`
"""
opts = [plugin_ep.name_with_description
opts = [plugin_ep.description_with_name
+ (" [Misconfigured]" if plugin_ep.misconfigured else "")
for plugin_ep in prepared]
+3 -3
View File
@@ -39,9 +39,9 @@ class PluginEntryPoint(object):
return self.plugin_cls.description
@property
def name_with_description(self):
"""Name with description. Handy for UI."""
return "{0} ({1})".format(self.name, self.description)
def description_with_name(self):
"""Description with name. Handy for UI."""
return "{0} ({1})".format(self.description, self.name)
def ifaces(self, *ifaces_groups):
"""Does plugin implements specified interface groups?"""
+4 -3
View File
@@ -52,9 +52,10 @@ class PluginEntryPointTest(unittest.TestCase):
def test_description(self):
self.assertEqual("Standalone Authenticator", self.plugin_ep.description)
def test_name_with_description(self):
self.assertTrue(
self.plugin_ep.name_with_description.startswith("sa ("))
def test_description_with_name(self):
self.plugin_ep.plugin_cls = mock.MagicMock(description="Desc")
self.assertEqual(
"Desc (sa)", self.plugin_ep.description_with_name)
def test_ifaces(self):
self.assertTrue(self.plugin_ep.ifaces((interfaces.IAuthenticator,)))
@@ -410,7 +410,7 @@ class StandaloneAuthenticator(common.Plugin):
def more_info(self): # pylint: disable=no-self-use
"""Human-readable string that describes the Authenticator."""
return ("The Standalone Authenticator uses PyOpenSSL to listen "
"on port 443 and perform DVSNI challenges. Once a certificate"
"on port 443 and perform DVSNI challenges. Once a certificate "
"is attained, it will be saved in the "
"(TODO) current working directory.{0}{0}"
"TCP port 443 must be available in order to use the "
+2 -2
View File
@@ -20,9 +20,9 @@ class ChoosePluginTest(unittest.TestCase):
def setUp(self):
zope.component.provideUtility(display_util.FileDisplay(sys.stdout))
self.mock_apache = mock.Mock(
name_with_description="a", misconfigured=True)
description_with_name="a", misconfigured=True)
self.mock_stand = mock.Mock(
name_with_description="s", misconfigured=False)
description_with_name="s", misconfigured=False)
self.mock_stand.init().more_info.return_value = "standalone"
self.plugins = [
self.mock_apache,