From c1cb762b325bf0b85eadc64957d7897ecf56524c Mon Sep 17 00:00:00 2001 From: Zach Shepherd Date: Mon, 3 Apr 2017 14:33:41 -0700 Subject: [PATCH 1/4] docs: clarify when venv needs to be re-setup When dependencies change or a new plugin is introduced, the venv needs to be re-created. Partially addresses issue #4368. --- docs/contributing.rst | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/contributing.rst b/docs/contributing.rst index 9c7f0636f..f75f2516a 100644 --- a/docs/contributing.rst +++ b/docs/contributing.rst @@ -26,7 +26,8 @@ If you're on macOS, we recommend you skip the rest of this section and instead run Certbot in Docker. You can find instructions for how to do this :ref:`here `. If you're running on Linux, you can run the following commands to install dependencies and set up a virtual environment where you can run -Certbot. You only need to do this once. +Certbot. You will need to repeat this when Certbot's dependencies change or when +a new plugin is introduced. .. code-block:: shell From 3f625d3a0d396326561af02dfeec922783aaa0e1 Mon Sep 17 00:00:00 2001 From: Zach Shepherd Date: Mon, 3 Apr 2017 14:51:48 -0700 Subject: [PATCH 2/4] docs: clarify the use of entry points for plugins The documentation did not list the entry point group, certbot.plugins. Partially addresses issue #4368. --- docs/contributing.rst | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/docs/contributing.rst b/docs/contributing.rst index f75f2516a..75a65fab7 100644 --- a/docs/contributing.rst +++ b/docs/contributing.rst @@ -220,9 +220,10 @@ Writing your own plugin ~~~~~~~~~~~~~~~~~~~~~~~ Certbot client supports dynamic discovery of plugins through the -`setuptools entry points`_. This way you can, for example, create a -custom implementation of `~certbot.interfaces.IAuthenticator` or -the `~certbot.interfaces.IInstaller` without having to merge it +`setuptools entry points`_ using the `certbot.plugins` group. This +way you can, for example, create a custom implementation of +`~certbot.interfaces.IAuthenticator` or the +`~certbot.interfaces.IInstaller` without having to merge it with the core upstream source code. An example is provided in ``examples/plugins/`` directory. From af5fd4f6bdeb21edb4666323191db7500a377eb9 Mon Sep 17 00:00:00 2001 From: Zach Shepherd Date: Mon, 3 Apr 2017 14:55:27 -0700 Subject: [PATCH 3/4] docs: use monospace syntax for method name --- docs/contributing.rst | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/contributing.rst b/docs/contributing.rst index 75a65fab7..98ecfaccc 100644 --- a/docs/contributing.rst +++ b/docs/contributing.rst @@ -169,8 +169,8 @@ challenges: HTTP, TLS-SNI, and DNS, represented by classes in `acme.challenges`. An authenticator plugin should implement support for at least one challenge type. An Authenticator indicates which challenges it supports by implementing -get_chall_pref(domain) to return a sorted list of challenge types in preference -order. +`get_chall_pref(domain)` to return a sorted list of challenge types in +preference order. An Authenticator must also implement `perform(achalls)`, which "performs" a list of challenges by, for instance, provisioning a file on an HTTP server, or From 22248c1393d22d489edebd5e804806f47d6d0eb7 Mon Sep 17 00:00:00 2001 From: Zach Shepherd Date: Mon, 3 Apr 2017 14:58:25 -0700 Subject: [PATCH 4/4] docs: fix syntax error in plugin installation example Partially addresses issue #4368. --- docs/contributing.rst | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/contributing.rst b/docs/contributing.rst index 98ecfaccc..96bd30e0d 100644 --- a/docs/contributing.rst +++ b/docs/contributing.rst @@ -231,6 +231,7 @@ While developing, you can install your plugin into a Certbot development virtualenv like this: .. code-block:: shell + . venv/bin/activate . tests/integration/_common.sh pip install -e examples/plugins/