Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/certbot/certbot.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-11-26Refactor certbot/ and certbot/tests/ to use the same structure as the other ↵ohemorange
packages (#7544) Summary of changes in this PR: - Refactor files involved in the `certbot` module to be of a similar structure to every other package; that is, inside a directory inside the main repo root (see below). - Make repo root README symlink to `certbot` README. - Pull tests outside of the distributed module. - Make `certbot/tests` not be a module so that `certbot` isn't added to Python's path for module discovery. - Remove `--pyargs` from test calls, and make sure to call tests from repo root since without `--pyargs`, `pytest` takes directory names rather than package names as arguments. - Replace mentions of `.` with `certbot` when referring to packages to install, usually editably. - Clean up some unused code around executing tests in a different directory. - Create public shim around main and make that the entry point. New directory structure summary: ``` repo root ("certbot", probably, but for clarity all files I mention are relative to here) ├── certbot │   ├── setup.py │   ├── certbot │   │   ├── __init__.py │   │   ├── achallenges.py │   │   ├── _internal │   │   │   ├── __init__.py │   │   │   ├── account.py │   │   │   ├── ... │   │   ├── ... │   ├── tests │   │   ├── account_test.py │   │   ├── display │   │   │   ├── __init__.py │   │   │   ├── ... │   │   ├── ... # note no __init__.py at this level │   ├── ... ├── acme │   ├── ... ├── certbot-apache │   ├── ... ├── ... ``` * refactor certbot/ and certbot/tests/ to use the same structure as the other packages * git grep -lE "\-e(\s+)\." | xargs sed -i -E "s/\-e(\s+)\./-e certbot/g" * git grep -lE "\.\[dev\]" | xargs sed -i -E "s/\.\[dev\]/certbot[dev]/g" * git grep -lE "\.\[dev3\]" | xargs sed -i -E "s/\.\[dev3\]/certbot[dev3]/g" * Remove replacement of certbot into . in install_and_test.py * copy license back out to main folder * remove linter_plugin.py and CONTRIBUTING.md from certbot/MANIFEST.in because these files are not under certbot/ * Move README back into main folder, and make the version inside certbot/ a symlink * symlink certbot READMEs the other way around * move testdata into the public api certbot zone * update source_paths in tox.ini to certbot/certbot to find the right subfolder for tests * certbot version has been bumped down a directory level * make certbot tests directory not a package and import sibling as module * Remove unused script cruft * change . to certbot in test_sdists * remove outdated comment referencing a command that doesn't work * Install instructions should reference an existing file * update file paths in Dockerfile * some package named in tox.ini were manually specified, change those to certbot * new directory format doesn't work easily with pyargs according to http://doc.pytest.org/en/latest/goodpractices.html#tests-as-part-of-application-code * remove other instance of pyargs * fix up some references in _release.sh by searching for ' . ' and manual check * another stray . in tox.ini * fix paths in tools/_release.sh * Remove final --pyargs call, and now-unnecessary call to modules instead of local files, since that's fixed by certbot's code being one layer deeper * Create public shim around main and make that the entry point * without pyargs, tests cannot be run from an empty directory * Remove cruft for running certbot directly from main * Have main shim take real arg * add docs/api file for main, and fix up main comment * Update certbot/docs/install.rst Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Fix comments in readthedocs requirements files to refer to current package * Update .[docs] reference in contributing.rst * Move plugins tests to certbot tests directory * add certbot tests to MANIFEST.in so packagers can run python setup.py test * move examples directory inside certbot/ * Move CHANGELOG into certbot, and create a top-level symlink * Remove unused sys and logging from main shim * nginx http01 test no longer relies on certbot plugins common test
2019-11-25Remove unused nginx docs (#7576)ohemorange
Part of #5775. We don't use these docs anywhere, so delete them. Removes: - `certbot-nginx/readthedocs.org.requirements.txt` - `certbot-nginx/docs/` folder - docs include in `MANIFEST.in` - docs dependencies in `setup.py` * Remove unused nginx docs * Add changelog entry about the removal
2019-11-14Update pinned dependencies (#7558)Brad Warren
Fixes #7184. I updated #7358 to track the issue of unpinning all of these dependencies. * pin back configargparse * Pin back zope packages. * update deps * Add changelog entry. * run build.py
2019-11-13Deprecate certbot register --update-registration (#7556)Amjad Mashaal
Closes #7452.
2019-11-12Remove TLS-SNI objects in ACME (#7535)Brad Warren
* fixes #7214 * update changelog * remove unused import
2019-11-08remove get_systemd_os_info (#7526)Brad Warren
Fixes #7500.
2019-11-08Remove tls sni common (#7527)Brad Warren
* fixes #7478 * add changelog entry
2019-11-07dns-rfc2136: use TCP to query SOA records (#7503)Shell Chen
* Use tcp query on dns-rfc2136 plugin To improve network robust; fixes #7502. * Update CHANGELOG.md * Fix dns-rfc2136 test cases * Add UDP fallback to dns-rfc2136
2019-11-06Merge branch 'master' into candidate-0.40.1ohemorange
2019-11-06Deprecate config_changes (#7469)Amjad Mashaal
Closes #7454 * Deprecate config_changes * Error on config_changes * Fix tests for main.py * Fix CHANGELOG entry * Remove remnants of config_changes * Fix CHANGELOG and add removed functions
2019-11-06Add contents to CHANGELOG.md for next versionErica Portnoy
2019-11-06Update changelog for 0.40.1 releaseErica Portnoy
2019-11-06Add back Python 3.4 support (#7510) (#7511)Brad Warren
* Revert "Deprecation warnings for Python 3.4 (#7378)" This reverts commit 6fcdfb0e5006be85500fad67a5a67b47befedb2a. * Revert "Migrate certbot-auto users on CentOS 6 to Python 3.6 (#7268)" This reverts commit e19b2e04c75b6df4e3f8a455700aa95fca79bcc3. * add changelog entry * keep mona in authors (cherry picked from commit 9b848b1d65783000a13ef3f94ac5fe0e8c3879e7)
2019-11-06Add back Python 3.4 support (#7510)Brad Warren
* Revert "Deprecation warnings for Python 3.4 (#7378)" This reverts commit 6fcdfb0e5006be85500fad67a5a67b47befedb2a. * Revert "Migrate certbot-auto users on CentOS 6 to Python 3.6 (#7268)" This reverts commit e19b2e04c75b6df4e3f8a455700aa95fca79bcc3. * add changelog entry * keep mona in authors
2019-11-05Add contents to CHANGELOG.md for next versionErica Portnoy
2019-11-05Update changelog for 0.40.0 releaseErica Portnoy
2019-11-04Use fresh authorizations in dry runs (#7442)alexzorin
* acme: re-populate uri in deactivate_authorization * Use fresh authorizations in dry runs --dry-run now deactivates 'valid' authorizations if it encounters them when creating a new order. Resolves #5116. * remove unused code * typo in local-oldest-requirements * better error handling * certbot-ci: AUTHREUSE to 100 + unskip dry-run test * improve test coverage for error cases * restore newline to local-oldest-requirements.txt
2019-11-04Dropped deprecated flags from commands (#7482)Brandon Moore
This pull request addresses #7451 by removing the deprecated flags. * Dropped deprecated flags from commands * Updated changelog for dropped flags and deleted outdated tests * removed init-script part of apache test
2019-11-02Deprecate more code related to TLS-SNI-01 (#7483)Brad Warren
I tried to finish up #7214 by removing the code in acme but we can't really do that until #7478 is resolved which we cannot do until we release 0.40.0. Since we have to wait, this PR adds deprecation warnings for code that uses the TLS-SNI-01 code or was only used by the long deprecated TLS-SNI-01 code. I'd like this PR to land before our next release. * Deprecate more code related to TLS-SNI-01. * Assert about warning message.
2019-11-01Remove changelog entry about unpackaged scripts. (#7490)Brad Warren
We don't package rebuild_dependencies.py so I don't think we need to mention changes to it in our changelog which is primarily read by users and packagers.
2019-11-01Use distro library for all OS version detection (#7467)Joona Hoikkala
This pull request ensures that we use distro package in all the distribution version detection. It also replaces the custom systemd /etc/os-release parsing and adds a few version fingerprints to Apache override selection. Fixes: #7405 * Revert "Try to use platform.linux_distribution() before distro equivalent (#7403)" This reverts commit ca3077d0347aae12163a43bf74a0c8321284367e. * Use distro for all os detection code * Address review comments * Add changelog entry * Added tests * Fix tests to return a consistent os name * Do not crash on non-linux systems * Minor fixes to distro compatibility checks * Make the tests OS independent * Update certbot/util.py Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Skip linux specific tests on other platforms * Test fixes * Better test state handling * Lower the coverage target for Windows tests
2019-11-01Fix invalid escape sequence \. rebuild_dependencies.py (#7486)Mickaël Schoentgen
Signed-off-by: Mickaël Schoentgen <contact@tiger-222.fr>
2019-10-31Remove references to TLS-SNI-01 outside of ACME (#7479)Brad Warren
This is a big part of #7214. It removes all references to TLS-SNI-01 outside of acme (and pytest.ini). Those changes will come in a subsequent PR. I thought this one was getting big enough. * Remove references to TLS-SNI-01 in Apache plugin * Remove references to TLS-SNI-01 from certbot-nginx * Remove references to TLS-SNI from Certbot. * Remove TLS-SNI reference from docs * add certbot changelog * Clarify test behavior
2019-10-31Polish changelog (#7476)Brad Warren
I wanted to polish the changelog a bit. Changes made are: * We don't ship our test farm tests so including info about them in our changelog seems unnecessary. * I combined and expanded the info about the deprecation of Python 3.4.
2019-10-31Deprecate certbot.plugins.common.TLSSNI01 (#7477)Brad Warren
While working on #7214, I noticed that certbot.plugins.common.TLSSNI01 wasn't printing a deprecation warning and it was still being used in our Apache plugin. This PR fixes that.
2019-10-30Deprecation warnings for Python 3.4 (#7378)sydneyli
Fixes #7367 * Deprecation warnings for Python 3.4 users * CHANGELOG.md and AUTHORS.md * double equals typo
2019-10-30Migrate certbot-auto users on CentOS 6 to Python 3.6 (#7268)Adrien Ferrand
Fixes #7007 Python 3.4 is [EOL](https://www.python.org/dev/peps/pep-0429/), and only Python 3.x version available for CentOS 6 through EPEL is this version, and so is used by `certbot-auto`, the only official way to install Certbot on this platform. This unpleasant situation becomes a little more uncomfortable, considering that the newest `pip` version (19.2) [just dropped Python 3.4 support](https://github.com/pypa/pip/issues/6685) and will refuse to start on this Python version. We can expect a lot of dependencies to follow this path now. One direct result of this situation is that a fix to support correctly the ARM platforms requires to upgrade `pip` to 19.2 for `certbot-auto`. So this is not possible right now. Then, let's upgrade Certbot instances on CentOS 6 to a supported version of Python 3. This PR proposes a new bootstrap approach for CentOS 6 platform, `BootstrapRpmPython3Legacy`, that will install Python 3.6 from [SCL](https://www.softwarecollections.org) (the latest one available for now on CentOS 6). In term of Python 3 specific bootstrap methods, I take the occasion here to completely separate the bootstrap of CentOS 6 as a legacy system, from the RPM-based newest systems (like Fedora 29+) that are simply dropping support for Python 2.x. This is in prevision of future migration for all systems on Python 3.x, that is a different problematic than supporting old systems. * Add logic * Rebuilt letsencrypt-auto * Fix logic * Focus on specific packages * Maintain PATH for further invocations of letsencrypt-auto after bootstrap. * Various corrections * Fix farm test for RHEL6 * Working centos6 letsencrypt-auto self tests * Fix test_sdist for CentOS 6 * Corrections * Work in progress * Working configuration * Fix typo * Remove EPEL. Add a test. * Update letsencrypt-auto-source/letsencrypt-auto.template Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Improvements after review * Improvements * Add a comment * Add a test * Update a test * Corrections * Update function return * Work in progress * Correct behavior on oracle linux 6. * Corrections * Rebuild script * Add letsencrypt-auto tests for oraclelinux6 * Update tox.ini Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Update letsencrypt-auto-source/letsencrypt-auto Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Update letsencrypt-auto-source/tests/oraclelinux6_tests.sh Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Update letsencrypt-auto-source/letsencrypt-auto.template Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Update letsencrypt-auto-source/letsencrypt-auto Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Update letsencrypt-auto-source/letsencrypt-auto Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Update letsencrypt-auto-source/letsencrypt-auto.template Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Update letsencrypt-auto-source/tests/oraclelinux6_tests.sh Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Remove specific code for scientific linux * Change some variables names * Update letsencrypt-auto-source/tests/oraclelinux6_tests.sh Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Various corrections * Fix tests * Add a comment * Update message * Fix test message * Update letsencrypt-auto-source/letsencrypt-auto.template Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Update letsencrypt-auto-source/letsencrypt-auto Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Update letsencrypt-auto-source/letsencrypt-auto Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Update scripts * More focused assertion * Add back a test * Update script * Update letsencrypt-auto-source/letsencrypt-auto.template Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Update letsencrypt-auto-source/letsencrypt-auto.template Co-Authored-By: Brad Warren <bmw@users.noreply.github.com> * Check quiet mode * Add changelog * Update letsencrypt-auto-source/tests/oraclelinux6_tests.sh Co-Authored-By: Brad Warren <bmw@users.noreply.github.com>
2019-10-21Require newer versions of oauth2client (#7458)Brad Warren
Over the weekend, nightly tests on Windows failed for certbot-dns-google: https://dev.azure.com/certbot/web/build.aspx?pcguid=74ef9c03-9faf-405b-9d03-9acf8c43e8d6&builduri=vstfs%3a%2f%2f%2fBuild%2fBuild%2f72 The error occurred inside `oauth2client`'s locking code and the failure seems spurious as it did not reproduce this morning: https://dev.azure.com/certbot/certbot/_build/results?buildId=73 I could not find a relevant changelog entry in `oauth2client` saying they've fixed the problem, but the problematic code no longer exists in `oauth2client>=4.0`. This PR updates our minimum dependency required in an attempt to avoid spurious failures for us in the future. The only downside I am aware of is it'll make it harder for certbot-dns-google to be packaged in Debian Old Stable or Ubuntu 16.04, but I don't expect either of those things to happen anytime soon. * bump oauth2client dep * Update dev_constraints.txt. * Add changelog entry for packagers.
2019-10-10cli: allow --dry-run to be combined with --server (#7436)alexzorin
The value of --server will now be respected, except when it is the default value, in which case it will be changed to the staging server, preserving Certbot's existing behavior.
2019-10-08Remove --fast from the test farm tests (#7427)Andrzej Górski
2019-10-01Add contents to CHANGELOG.md for next versionErica Portnoy
2019-10-01Update changelog for 0.39.0 releaseErica Portnoy
2019-10-01Keep compatibility with IE11 in the Nginx plugin (#7414)test-0.39.0Brad Warren
As discussed at https://github.com/mozilla/server-side-tls/issues/263, Mozilla's current intermediate recommendations drop support for some non-EOL'd versions of IE. [Their TLS recommendations were updated to suggest a couple possible workarounds for people who need this support](https://github.com/mozilla/server-side-tls/pull/264) and [April suggested that we make this change in Certbot](https://github.com/mozilla/server-side-tls/issues/263#issuecomment-537085728). We know `TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA` translates to `ECDHE-RSA-AES128-SHA` because [nginx uses the same cipher format as OpenSSL](https://nginx.org/en/docs/http/ngx_http_ssl_module.html#ssl_ciphers) and the translation is shown in the table at https://github.com/mozilla/server-side-tls/blob/gh-pages/Cipher_Suites.mediawiki. The risk of regressions making this change is low as we always had this ciphersuite enabled just a few releases ago: https://github.com/certbot/certbot/tree/v0.36.0/certbot-nginx/certbot_nginx * Keep compatibility with IE11 * update changelog
2019-09-30Add CentOS 8 support to certbot-auto. (#7406)Brad Warren
Fixes #7396.
2019-09-27Try to use platform.linux_distribution() before distro equivalent (#7403)Joona Hoikkala
Try to primarily fall back to using `platform.linux_distribution()` if `/etc/os-release` isn't available. Only use `distro.linux_distribution()` on Python >= 3.8. * Try to use platform.linux_distribution() before distro equivalent * Fix tests for py38 * Added changelog entry
2019-09-26Fix to run with Apache on RHEL 6 (#7401)Kenichi Maehashi
This PR fixes a regression in #7337 (0.38.0) that certbot cannot run with Apache on RHEL 6. In RHEL 6, `distro.linux_distribution()` returns `RedHatEnterpriseServer`. In RHEL 6: ```py >>> import distro >>> distro.linux_distribution() (u'RedHatEnterpriseServer', u'6.10', u'Santiago') >>> import platform >>> platform.linux_distribution() ('Red Hat Enterprise Linux Server', '6.10', 'Santiago') ``` In RHEL 7: ```py >>> import distro >>> distro.linux_distribution() ('Red Hat Enterprise Linux Server', '7.6', 'Maipo') >>> import platform >>> platform.linux_distribution() ('Red Hat Enterprise Linux Server', '7.6', 'Maipo') ``` * fix to run with Apache on RHEL 6 * fix docs
2019-09-24List support for Python 3.8 (#7392)Brad Warren
Fixes #7368. When updating the changelog, I replaced the line about running tests on Python 3.8 because I personally think that support for Python 3.8 is the most relevant information for our users/packagers about our changes in this area. * List support for Python 3.8. * Update changelog.
2019-09-24Don't send OCSP requests for expired certificates (#7387)ohemorange
Fixes #7152. * don't check ocsp if cert is expired when getting cert information * don't check ocsp if the cert is expired in ocsp_revoked * update tests * update changelog * move pytz import to the top of the test file
2019-09-16Get integration tests working on python 3.8 (#7372)ohemorange
* Get integration tests working on python 3.8 * Run unit tests on py38 * Update coveragercs to use coverage 4.5+ format * remove line added to tox.ini * update changelog * xenial is the new travis default; no need to specify in .travis.yml
2019-09-05Disable TLS session tickets in Nginx (#7355)ohemorange
* Find OpenSSL version * Create and update various config files * Update logic to use new version constraints * SSL_OPTIONS_HASHES_NEW and SSL_OPTIONS_HASHES_MEDIUM were just being used for testing, and maintaining them is becoming untenable, so remove them. * if we don't know the openssl version, we can't turn off session tickets * add unit test for _get_openssl_version * add unit tests * placate lint * Fix docs and tests and clean up code * use python correctly * update changelog * Lint * make comment a comment
2019-09-03Add contents to CHANGELOG.md for next versionBrad Warren
2019-09-03Update changelog for 0.38.0 releaseBrad Warren
2019-08-28Replace platform.linux_distribution with distro.linux_distribution (#7337)ohemorange
Smallest possible fix for #7106 * Replace platform.linux_dependencies with distro.linux_dependencies * run build.py * Add minimum version of 1.0.1 * Pin back requests package * Update changelog
2019-08-22Merge branch 'master' into candidate-0.37.2ohemorange
2019-08-22Add contents to CHANGELOG.md for next versionErica Portnoy
2019-08-22Update changelog for 0.37.2 releaseErica Portnoy
2019-08-22Stop turning session tickets off in Nginx (#7344) (#7345)Brad Warren
Related to #7322. * Stop turning session tickets off in Nginx * update changelog (cherry picked from commit 17c1d016c16dc9d41516308dadb8cd6812959981)
2019-08-22Stop turning session tickets off in Nginx (#7344)ohemorange
Related to #7322. * Stop turning session tickets off in Nginx * update changelog
2019-08-12Fix Certbot's Apache plugin doesn't work on Scientific Linux (#7294)tyborr
This PR adds OVERRIDE_CLASS in certbot-apache/entrypoint.py for Scientific Linux. Fixes #7248. * add OVERRIDE_CLASS for Scientific Linux os name * add entry for Scientific Linux using "scientific" as key * Update changelog
2019-08-09Merge branch 'master' into candidate-0.37.1ohemorange