1
0
mirror of https://github.com/certbot/certbot.git synced 2026-01-21 19:01:07 +03:00
Commit Graph

50 Commits

Author SHA1 Message Date
Jakub Warmuz
ab097d128b Fix logging -> logger typo. 2015-07-24 06:41:56 +00:00
Jakub Warmuz
9e2682a025 100% coverage for manual test mode and related code. 2015-07-19 11:04:29 +00:00
Jakub Warmuz
09e658c486 Merge remote-tracking branch 'github/letsencrypt/master' into manual-integration 2015-07-19 10:00:10 +00:00
Jakub Warmuz
3825633f46 Merge remote-tracking branch 'github/letsencrypt/master' into manual-integration
Conflicts:
	letsencrypt/auth_handler.py
2015-07-19 07:49:32 +00:00
Jakub Warmuz
7a79915f0c Common plugin: export key to PKCS8, not OpenSSL. 2015-07-18 13:00:05 +00:00
Jakub Warmuz
b9df69af9f Basic dev/test setup for separate package subdirectories. 2015-07-10 16:38:42 +00:00
Jakub Warmuz
19c73249ca Sort vectors: acme/testdata, separate acme and letsencrypt. 2015-07-10 15:16:48 +00:00
Jakub Warmuz
c57cd239c3 Register key creation before writing out. 2015-07-10 07:25:29 +00:00
Jakub Warmuz
15f443dced assert_called_once -> assertEqual(1, *.call_count) 2015-07-10 06:42:02 +00:00
Jakub Warmuz
7aa749174b Fix achall response key chmods security bug. 2015-07-09 11:26:27 +00:00
Jakub Warmuz
3e2d1c8abc get_cert_file -> get_cert_path. 2015-07-09 10:51:21 +00:00
Jakub Warmuz
7dc64e0387 Rewrite acccounts and registration.
Save accounts to:

    /etc/letsencrypt/accounts/www.letsencrypt-dmeo.org/acme/new-reg/ \
    kuba.le.wtf@2015-07-04T14:04:10Z/ \
    {regr.json,meta.json,private_key.json}

Account now represents a combination of private key, Registration
Resource and client account metadata. `Account.id` based on the
account metadata (creation host and datetime). UI interface
(`cli._determine_account`) based on the `id`, and not on email as
previously.

Add `AccountStorage` interface and `AccountFileStorage`,
`AccountMemoryStorage` implementations (latter, in-memory, useful for
testing).

Create Account only after Registration Resource is received
(`register()` returns `Account`).

Allow `client.Client(..., acme=acme, ...)`: API client might reuse
acme.client.Client as returned by `register()`.

Move report_new_account to letsencrypt.account, client.Client.register
into client.register.

Use Registration.from_data acme API.

achallenges.AChallenge.key is now the `acme.jose.JWK`, not
`le_util.Key`. Plugins have to export PEM/DER as necessary
(c.f. `letsencrypt.plugins.common.Dvsni.get_key_path`)

Add --agree-tos, save --agree-eula to "args.eula". Prompt for EULA as
soon as client is launched, add prompt for TOS.

Remove unnecessary letsencrypt.network. Remove, now irrelevant,
`IConfig.account_keys_dir`.

Based on the draft from
https://github.com/letsencrypt/letsencrypt/pull/362#issuecomment-97946817.
2015-07-09 06:43:45 +00:00
Jakub Warmuz
e276f2aa6b crypto imports cleanup 2015-07-06 12:18:31 +00:00
Jakub Warmuz
61aa29d28c Drop PyCrypto. 2015-07-06 12:18:22 +00:00
Jakub Warmuz
74ce332b5a Manual SimpleHTTP integration tests. 2015-07-03 09:49:14 +00:00
James Kasten
e140eca4f3 Merge pull request #570 from kuba/simplehttp
SimpleHTTP fixes
2015-07-02 09:19:21 -07:00
James Kasten
abe1aa999a Merge pull request #568 from kuba/cover
Bump coverage
2015-06-29 09:04:41 -07:00
Jakub Warmuz
2ec451d00b IConfig.simple_http_port (fixes #542). 2015-06-29 07:58:36 +00:00
Jakub Warmuz
87f197afb2 manual: make sure user doesn't serve /root, or cert.pem/key.pem 2015-06-29 07:56:22 +00:00
Jakub Warmuz
ce32de023d Move simple_http_simple_verify to SimpleHTTPResponse.simple_verify. 2015-06-29 07:56:21 +00:00
Jakub Warmuz
36752a3dab simpleHttp needs text/plain or absent. 2015-06-29 07:53:28 +00:00
Jakub Warmuz
a0acf7c703 acme.verify.simple_http_simple_verify 2015-06-29 07:50:31 +00:00
Jakub Warmuz
051a351a43 Move test_add_chal from letsencrypt_nginx (plugins.common 100% coverage). 2015-06-28 09:39:21 +00:00
Jakub Warmuz
46707406b5 Tests: don't cover plugins.common test functions. 2015-06-28 09:38:03 +00:00
Jakub Warmuz
98844a196c Add test for PluginError catching in disco 2015-06-27 10:02:02 +00:00
Jakub Warmuz
b7a19486ed Plugins disco: catch PluginError in prepare(), debug log exceptions. 2015-06-27 08:14:00 +00:00
Jakub Warmuz
e3cd6fc709 Fix review comments. 2015-06-26 23:03:27 +00:00
Jakub Warmuz
7d775ae9f3 Add null installer, integration tests for install/run
Fixes #438.
2015-06-26 13:26:09 +00:00
Jakub Warmuz
4ce4e2f930 logger = logging.getLogger(__name__) 2015-06-25 19:55:22 +00:00
James Kasten
04440179f4 Merge pull request #534 from kuba/440-no-cli
Dynamic dirs based on --config-dir and --work-dir (#440 without touching CLI)
2015-06-24 19:06:33 -04:00
Jakub Warmuz
57f67c4109 Rewrap after errors rename, doc fixes. 2015-06-22 22:43:42 +00:00
Jakub Warmuz
cfa7e28106 errors.LetsEncrypt -> errors. (fixes: #487) 2015-06-22 22:41:24 +00:00
Jakub Warmuz
8f4280c2df Merge remote-tracking branch 'github/letsencrypt/master' into cli-config-fixes
Conflicts:
	letsencrypt_apache/tests/util.py
	letsencrypt_nginx/tests/util.py
2015-06-20 20:04:58 +00:00
James Kasten
5dcac29e3b Merge pull request #474 from kuba/nginx-apache-split
letsencrypt_nginx should not depend on letsencrypt_apache.
2015-06-20 12:57:31 -04:00
Jakub Warmuz
d4b9499e2b ManualAuthenticator for SimpleHTTP.
Inspired by quite popular [1] letsencrypt-nosudo [2] by
@diafygi. Together with #440 and #473, it allows Let's Encrypt to be
used without sudo (root) on the target machine (c.f. [3]). Possibly
fixes #500.

[1] https://news.ycombinator.com/item?id=9707170
[2] https://github.com/diafygi/letsencrypt-nosudo
[3] https://groups.google.com/a/letsencrypt.org/forum/#!topic/client-dev/JAqxSvXlln4
2015-06-14 18:12:10 +00:00
schoen
e04f52368d Merge pull request #477 from bradmw/flush
Duplicate output fix
2015-06-02 12:36:38 -07:00
Brad Warren
59c5a77731 Fixed duplicate output 2015-06-02 12:16:10 -07:00
Jakub Warmuz
4646d8d6bf Standalone Authenticator: no fail when port taken (fixes #381) 2015-06-02 18:31:09 +00:00
Jakub Warmuz
8c6d1ad50a letsencrypt_nginx should not depend on letsencrypt_apache. 2015-06-02 14:28:20 +00:00
Jakub Warmuz
5b957f27d6 Fix typo: config.port -> config.dvsni_port. 2015-06-01 21:40:22 +00:00
Jakub Warmuz
2929039cf4 Split --test-mode into --no-verify-ssl and --dvsni-port (fixes #462). 2015-06-01 20:56:58 +00:00
Jacob Hoffman-Andrews
958b6b1048 Only check config if it is defined. 2015-05-22 13:57:41 -07:00
Jacob Hoffman-Andrews
8562496f82 Fixes from review comments. 2015-05-22 13:06:17 -07:00
Jacob Hoffman-Andrews
e1e6135313 Use a different port for test mode. 2015-05-21 19:08:05 -07:00
James Kasten
1ada2cab15 Merge pull request #417 from kuba/plugins
Plugins fixes (unhashable PluginEntryPoint, typo in examples)
2015-05-18 11:22:04 -07:00
Jakub Warmuz
834691278e Fix repr for PluginsRegistry (unhashable PluginEntryPoint).
(venv)root@le:~/lets-encrypt-preview# letsencrypt -vv auth
DEBUG:root:Logging level set at 10
Traceback (most recent call last):
File "/usr/lib/python2.7/logging/__init__.py", line 859, in emit
msg = self.format(record)
File "/usr/lib/python2.7/logging/__init__.py", line 732, in format
return fmt.format(record)
File "/usr/lib/python2.7/logging/__init__.py", line 471, in format
record.message = record.getMessage()
File "/usr/lib/python2.7/logging/__init__.py", line 335, in getMessage
msg = msg % self.args
File "/root/lets-encrypt-preview/letsencrypt/plugins/disco.py", line 219, in __repr__
self.__class__.__name__, set(self._plugins.itervalues()))
TypeError: unhashable type: 'PluginEntryPoint'
Logged from file cli.py, line 356
Traceback (most recent call last):
File "/root/lets-encrypt-preview/venv/bin/letsencrypt", line 9, in <module>
load_entry_point('letsencrypt==0.1', 'console_scripts', 'letsencrypt')()
File "/root/lets-encrypt-preview/letsencrypt/cli.py", line 356, in main
logging.debug("Discovered plugins: %r", plugins)
File "/usr/lib/python2.7/logging/__init__.py", line 1630, in debug
root.debug(msg, *args, **kwargs)
File "/usr/lib/python2.7/logging/__init__.py", line 1148, in debug
self._log(DEBUG, msg, args, **kwargs)
File "/usr/lib/python2.7/logging/__init__.py", line 1279, in _log
self.handle(record)
File "/usr/lib/python2.7/logging/__init__.py", line 1289, in handle
self.callHandlers(record)
File "/usr/lib/python2.7/logging/__init__.py", line 1329, in callHandlers
hdlr.handle(record)
File "/usr/lib/python2.7/logging/__init__.py", line 757, in handle
self.emit(record)
File "/root/lets-encrypt-preview/letsencrypt/log.py", line 40, in emit
for line in record.getMessage().splitlines():
File "/usr/lib/python2.7/logging/__init__.py", line 335, in getMessage
msg = msg % self.args
File "/root/lets-encrypt-preview/letsencrypt/plugins/disco.py", line 219, in __repr__
self.__class__.__name__, set(self._plugins.itervalues()))
TypeError: unhashable type: 'PluginEntryPoint'
2015-05-15 15:00:53 +00:00
Seth Schoen
ca4bece393 Attempt to fix #378 2015-05-14 15:36:51 -07:00
Jakub Warmuz
b4c747a283 Merge branch 'bugs/402' into pkgs_sep_prep
Conflicts:
	letsencrypt/tests/client_test.py
	tox.ini
2015-05-10 17:56:41 +00:00
Jakub Warmuz
734868b015 Merge remote-tracking branch 'github/letsencrypt/master' into pkgs_sep_prep 2015-05-10 15:29:04 +00:00
Jakub Warmuz
41e86df252 Move letsencrypt.client to letsencrypt 2015-05-10 12:32:05 +00:00