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
path: root/docs
diff options
context:
space:
mode:
authorNoah Swartz <swartzcr@gmail.com>2017-04-14 02:54:51 +0300
committerGitHub <noreply@github.com>2017-04-14 02:54:51 +0300
commit8fea513dec115441ba98652f10fc8581120f393e (patch)
treec30eee7bea6018d64f130637ef43c4131d671cb1 /docs
parent1ff117e2ec975185ea1d0c5282f741e0b3b403f6 (diff)
parent22248c1393d22d489edebd5e804806f47d6d0eb7 (diff)
Merge pull request #4455 from zjs/topic/zjs/developer-guide
Documentation improvements for plugin developers
Diffstat (limited to 'docs')
-rw-r--r--docs/contributing.rst15
1 files changed, 9 insertions, 6 deletions
diff --git a/docs/contributing.rst b/docs/contributing.rst
index 4579d9e97..2fc78bdc3 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
<docker>`. 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
@@ -177,8 +178,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
@@ -228,9 +229,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.
@@ -238,6 +240,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/