1
0
mirror of https://github.com/certbot/certbot.git synced 2025-08-09 15:02:48 +03:00

s/letsencrypt/certbot letsencrypt-nginx tests

This commit is contained in:
Brad Warren
2016-04-13 16:45:54 -07:00
parent e3aba30ec4
commit a43fac3277
68 changed files with 158 additions and 158 deletions

View File

@@ -0,0 +1,5 @@
include LICENSE.txt
include README.rst
recursive-include docs *
recursive-include certbot_nginx/tests/testdata *
include certbot_nginx/options-ssl-nginx.conf

View File

@@ -13,19 +13,19 @@ import zope.interface
from acme import challenges
from acme import crypto_util as acme_crypto_util
from letsencrypt import constants as core_constants
from letsencrypt import crypto_util
from letsencrypt import errors
from letsencrypt import interfaces
from letsencrypt import le_util
from letsencrypt import reverter
from certbot import constants as core_constants
from certbot import crypto_util
from certbot import errors
from certbot import interfaces
from certbot import le_util
from certbot import reverter
from letsencrypt.plugins import common
from certbot.plugins import common
from letsencrypt_nginx import constants
from letsencrypt_nginx import tls_sni_01
from letsencrypt_nginx import obj
from letsencrypt_nginx import parser
from certbot_nginx import constants
from certbot_nginx import tls_sni_01
from certbot_nginx import obj
from certbot_nginx import parser
logger = logging.getLogger(__name__)
@@ -41,15 +41,15 @@ class NginxConfigurator(common.Plugin):
config files modified by the configurator will lose all their comments.
:ivar config: Configuration.
:type config: :class:`~letsencrypt.interfaces.IConfig`
:type config: :class:`~certbot.interfaces.IConfig`
:ivar parser: Handles low level parsing
:type parser: :class:`~letsencrypt_nginx.parser`
:type parser: :class:`~certbot_nginx.parser`
:ivar str save_notes: Human-readable config change notes
:ivar reverter: saves and reverts checkpoints
:type reverter: :class:`letsencrypt.reverter.Reverter`
:type reverter: :class:`certbot.reverter.Reverter`
:ivar tup version: version of Nginx
@@ -216,7 +216,7 @@ class NginxConfigurator(common.Plugin):
:param str target_name: domain name
:returns: ssl vhost associated with name
:rtype: :class:`~letsencrypt_nginx.obj.VirtualHost`
:rtype: :class:`~certbot_nginx.obj.VirtualHost`
"""
vhost = None
@@ -333,7 +333,7 @@ class NginxConfigurator(common.Plugin):
the existing one?
:param vhost: The vhost to add SSL to.
:type vhost: :class:`~letsencrypt_nginx.obj.VirtualHost`
:type vhost: :class:`~certbot_nginx.obj.VirtualHost`
"""
snakeoil_cert, snakeoil_key = self._get_snakeoil_paths()
@@ -372,9 +372,9 @@ class NginxConfigurator(common.Plugin):
:param str domain: domain to enhance
:param str enhancement: enhancement type defined in
:const:`~letsencrypt.constants.ENHANCEMENTS`
:const:`~certbot.constants.ENHANCEMENTS`
:param options: options for the enhancement
See :const:`~letsencrypt.constants.ENHANCEMENTS`
See :const:`~certbot.constants.ENHANCEMENTS`
documentation for appropriate parameter.
"""
@@ -395,7 +395,7 @@ class NginxConfigurator(common.Plugin):
.. note:: This function saves the configuration
:param vhost: Destination of traffic, an ssl enabled vhost
:type vhost: :class:`~letsencrypt_nginx.obj.VirtualHost`
:type vhost: :class:`~certbot_nginx.obj.VirtualHost`
:param unused_options: Not currently used
:type unused_options: Not Available

View File

@@ -13,6 +13,6 @@ MOD_SSL_CONF_DEST = "options-ssl-nginx.conf"
"""Name of the mod_ssl config file as saved in `IConfig.config_dir`."""
MOD_SSL_CONF_SRC = pkg_resources.resource_filename(
"letsencrypt_nginx", "options-ssl-nginx.conf")
"certbot_nginx", "options-ssl-nginx.conf")
"""Path to the nginx mod_ssl config file found in the Let's Encrypt
distribution."""

View File

@@ -1,7 +1,7 @@
"""Module contains classes used by the Nginx Configurator."""
import re
from letsencrypt.plugins import common
from certbot.plugins import common
class Addr(common.Addr):

View File

@@ -5,10 +5,10 @@ import os
import pyparsing
import re
from letsencrypt import errors
from certbot import errors
from letsencrypt_nginx import obj
from letsencrypt_nginx import nginxparser
from certbot_nginx import obj
from certbot_nginx import nginxparser
logger = logging.getLogger(__name__)
@@ -87,7 +87,7 @@ class NginxParser(object):
Technically this is a misnomer because Nginx does not have virtual
hosts, it has 'server blocks'.
:returns: List of :class:`~letsencrypt_nginx.obj.VirtualHost`
:returns: List of :class:`~certbot_nginx.obj.VirtualHost`
objects found in configuration
:rtype: list

View File

@@ -1,5 +1,5 @@
# pylint: disable=too-many-public-methods
"""Test for letsencrypt_nginx.configurator."""
"""Test for certbot_nginx.configurator."""
import os
import shutil
import unittest
@@ -10,10 +10,10 @@ import OpenSSL
from acme import challenges
from acme import messages
from letsencrypt import achallenges
from letsencrypt import errors
from certbot import achallenges
from certbot import errors
from letsencrypt_nginx.tests import util
from certbot_nginx.tests import util
class NginxConfiguratorTest(util.NginxTest):
@@ -30,7 +30,7 @@ class NginxConfiguratorTest(util.NginxTest):
shutil.rmtree(self.config_dir)
shutil.rmtree(self.work_dir)
@mock.patch("letsencrypt_nginx.configurator.le_util.exe_exists")
@mock.patch("certbot_nginx.configurator.le_util.exe_exists")
def test_prepare_no_install(self, mock_exe_exists):
mock_exe_exists.return_value = False
self.assertRaises(
@@ -40,8 +40,8 @@ class NginxConfiguratorTest(util.NginxTest):
self.assertEquals((1, 6, 2), self.config.version)
self.assertEquals(5, len(self.config.parser.parsed))
@mock.patch("letsencrypt_nginx.configurator.le_util.exe_exists")
@mock.patch("letsencrypt_nginx.configurator.subprocess.Popen")
@mock.patch("certbot_nginx.configurator.le_util.exe_exists")
@mock.patch("certbot_nginx.configurator.subprocess.Popen")
def test_prepare_initializes_version(self, mock_popen, mock_exe_exists):
mock_popen().communicate.return_value = (
"", "\n".join(["nginx version: nginx/1.6.2",
@@ -58,7 +58,7 @@ class NginxConfiguratorTest(util.NginxTest):
self.config.prepare()
self.assertEquals((1, 6, 2), self.config.version)
@mock.patch("letsencrypt_nginx.configurator.socket.gethostbyaddr")
@mock.patch("certbot_nginx.configurator.socket.gethostbyaddr")
def test_get_all_names(self, mock_gethostbyaddr):
mock_gethostbyaddr.return_value = ('155.225.50.69.nephoscale.net', [], [])
names = self.config.get_all_names()
@@ -263,8 +263,8 @@ class NginxConfiguratorTest(util.NginxTest):
('/etc/nginx/fullchain.pem', '/etc/nginx/key.pem', nginx_conf),
]), self.config.get_all_certs_keys())
@mock.patch("letsencrypt_nginx.configurator.tls_sni_01.NginxTlsSni01.perform")
@mock.patch("letsencrypt_nginx.configurator.NginxConfigurator.restart")
@mock.patch("certbot_nginx.configurator.tls_sni_01.NginxTlsSni01.perform")
@mock.patch("certbot_nginx.configurator.NginxConfigurator.restart")
def test_perform(self, mock_restart, mock_perform):
# Only tests functionality specific to configurator.perform
# Note: As more challenges are offered this will have to be expanded
@@ -293,7 +293,7 @@ class NginxConfiguratorTest(util.NginxTest):
self.assertEqual(responses, expected)
self.assertEqual(mock_restart.call_count, 1)
@mock.patch("letsencrypt_nginx.configurator.subprocess.Popen")
@mock.patch("certbot_nginx.configurator.subprocess.Popen")
def test_get_version(self, mock_popen):
mock_popen().communicate.return_value = (
"", "\n".join(["nginx version: nginx/1.4.2",
@@ -343,55 +343,55 @@ class NginxConfiguratorTest(util.NginxTest):
mock_popen.side_effect = OSError("Can't find program")
self.assertRaises(errors.PluginError, self.config.get_version)
@mock.patch("letsencrypt_nginx.configurator.subprocess.Popen")
@mock.patch("certbot_nginx.configurator.subprocess.Popen")
def test_nginx_restart(self, mock_popen):
mocked = mock_popen()
mocked.communicate.return_value = ('', '')
mocked.returncode = 0
self.config.restart()
@mock.patch("letsencrypt_nginx.configurator.subprocess.Popen")
@mock.patch("certbot_nginx.configurator.subprocess.Popen")
def test_nginx_restart_fail(self, mock_popen):
mocked = mock_popen()
mocked.communicate.return_value = ('', '')
mocked.returncode = 1
self.assertRaises(errors.MisconfigurationError, self.config.restart)
@mock.patch("letsencrypt_nginx.configurator.subprocess.Popen")
@mock.patch("certbot_nginx.configurator.subprocess.Popen")
def test_no_nginx_start(self, mock_popen):
mock_popen.side_effect = OSError("Can't find program")
self.assertRaises(errors.MisconfigurationError, self.config.restart)
@mock.patch("letsencrypt.le_util.run_script")
@mock.patch("certbot.le_util.run_script")
def test_config_test(self, _):
self.config.config_test()
@mock.patch("letsencrypt.le_util.run_script")
@mock.patch("certbot.le_util.run_script")
def test_config_test_bad_process(self, mock_run_script):
mock_run_script.side_effect = errors.SubprocessError
self.assertRaises(errors.MisconfigurationError, self.config.config_test)
@mock.patch("letsencrypt.reverter.Reverter.recovery_routine")
@mock.patch("certbot.reverter.Reverter.recovery_routine")
def test_recovery_routine_throws_error_from_reverter(self, mock_recovery_routine):
mock_recovery_routine.side_effect = errors.ReverterError("foo")
self.assertRaises(errors.PluginError, self.config.recovery_routine)
@mock.patch("letsencrypt.reverter.Reverter.view_config_changes")
@mock.patch("certbot.reverter.Reverter.view_config_changes")
def test_view_config_changes_throws_error_from_reverter(self, mock_view_config_changes):
mock_view_config_changes.side_effect = errors.ReverterError("foo")
self.assertRaises(errors.PluginError, self.config.view_config_changes)
@mock.patch("letsencrypt.reverter.Reverter.rollback_checkpoints")
@mock.patch("certbot.reverter.Reverter.rollback_checkpoints")
def test_rollback_checkpoints_throws_error_from_reverter(self, mock_rollback_checkpoints):
mock_rollback_checkpoints.side_effect = errors.ReverterError("foo")
self.assertRaises(errors.PluginError, self.config.rollback_checkpoints)
@mock.patch("letsencrypt.reverter.Reverter.revert_temporary_config")
@mock.patch("certbot.reverter.Reverter.revert_temporary_config")
def test_revert_challenge_config_throws_error_from_reverter(self, mock_revert_temporary_config):
mock_revert_temporary_config.side_effect = errors.ReverterError("foo")
self.assertRaises(errors.PluginError, self.config.revert_challenge_config)
@mock.patch("letsencrypt.reverter.Reverter.add_to_checkpoint")
@mock.patch("certbot.reverter.Reverter.add_to_checkpoint")
def test_save_throws_error_from_reverter(self, mock_add_to_checkpoint):
mock_add_to_checkpoint.side_effect = errors.ReverterError("foo")
self.assertRaises(errors.PluginError, self.config.save)

View File

@@ -1,12 +1,12 @@
"""Test for letsencrypt_nginx.nginxparser."""
"""Test for certbot_nginx.nginxparser."""
import operator
import unittest
from pyparsing import ParseException
from letsencrypt_nginx.nginxparser import (
from certbot_nginx.nginxparser import (
RawNginxParser, loads, load, dumps, dump)
from letsencrypt_nginx.tests import util
from certbot_nginx.tests import util
FIRST = operator.itemgetter(0)

View File

@@ -1,11 +1,11 @@
"""Test the helper objects in letsencrypt_nginx.obj."""
"""Test the helper objects in certbot_nginx.obj."""
import unittest
class AddrTest(unittest.TestCase):
"""Test the Addr class."""
def setUp(self):
from letsencrypt_nginx.obj import Addr
from certbot_nginx.obj import Addr
self.addr1 = Addr.fromstring("192.168.1.1")
self.addr2 = Addr.fromstring("192.168.1.1:* ssl")
self.addr3 = Addr.fromstring("192.168.1.1:80")
@@ -56,14 +56,14 @@ class AddrTest(unittest.TestCase):
self.assertEqual(str(self.addr6), "80 default_server")
def test_eq(self):
from letsencrypt_nginx.obj import Addr
from certbot_nginx.obj import Addr
new_addr1 = Addr.fromstring("192.168.1.1 spdy")
self.assertEqual(self.addr1, new_addr1)
self.assertNotEqual(self.addr1, self.addr2)
self.assertFalse(self.addr1 == 3333)
def test_set_inclusion(self):
from letsencrypt_nginx.obj import Addr
from certbot_nginx.obj import Addr
set_a = set([self.addr1, self.addr2])
addr1b = Addr.fromstring("192.168.1.1")
addr2b = Addr.fromstring("192.168.1.1:* ssl")
@@ -75,16 +75,16 @@ class AddrTest(unittest.TestCase):
class VirtualHostTest(unittest.TestCase):
"""Test the VirtualHost class."""
def setUp(self):
from letsencrypt_nginx.obj import VirtualHost
from letsencrypt_nginx.obj import Addr
from certbot_nginx.obj import VirtualHost
from certbot_nginx.obj import Addr
self.vhost1 = VirtualHost(
"filep",
set([Addr.fromstring("localhost")]), False, False,
set(['localhost']), [])
def test_eq(self):
from letsencrypt_nginx.obj import Addr
from letsencrypt_nginx.obj import VirtualHost
from certbot_nginx.obj import Addr
from certbot_nginx.obj import VirtualHost
vhost1b = VirtualHost(
"filep",
set([Addr.fromstring("localhost blah")]), False, False,

View File

@@ -1,16 +1,16 @@
"""Tests for letsencrypt_nginx.parser."""
"""Tests for certbot_nginx.parser."""
import glob
import os
import re
import shutil
import unittest
from letsencrypt import errors
from certbot import errors
from letsencrypt_nginx import nginxparser
from letsencrypt_nginx import obj
from letsencrypt_nginx import parser
from letsencrypt_nginx.tests import util
from certbot_nginx import nginxparser
from certbot_nginx import obj
from certbot_nginx import parser
from certbot_nginx.tests import util
class NginxParserTest(util.NginxTest):

View File

@@ -1,4 +1,4 @@
"""Tests for letsencrypt_nginx.tls_sni_01"""
"""Tests for certbot_nginx.tls_sni_01"""
import unittest
import shutil
@@ -6,14 +6,14 @@ import mock
from acme import challenges
from letsencrypt import achallenges
from letsencrypt import errors
from certbot import achallenges
from certbot import errors
from letsencrypt.plugins import common_test
from letsencrypt.tests import acme_util
from certbot.plugins import common_test
from certbot.tests import acme_util
from letsencrypt_nginx import obj
from letsencrypt_nginx.tests import util
from certbot_nginx import obj
from certbot_nginx.tests import util
class TlsSniPerformTest(util.NginxTest):
@@ -47,7 +47,7 @@ class TlsSniPerformTest(util.NginxTest):
config = util.get_nginx_configurator(
self.config_path, self.config_dir, self.work_dir)
from letsencrypt_nginx import tls_sni_01
from certbot_nginx import tls_sni_01
self.sni = tls_sni_01.NginxTlsSni01(config)
def tearDown(self):
@@ -55,7 +55,7 @@ class TlsSniPerformTest(util.NginxTest):
shutil.rmtree(self.config_dir)
shutil.rmtree(self.work_dir)
@mock.patch("letsencrypt_nginx.configurator"
@mock.patch("certbot_nginx.configurator"
".NginxConfigurator.choose_vhost")
def test_perform(self, mock_choose):
self.sni.add_chall(self.achalls[1])
@@ -67,7 +67,7 @@ class TlsSniPerformTest(util.NginxTest):
responses = self.sni.perform()
self.assertEqual([], responses)
@mock.patch("letsencrypt_nginx.configurator.NginxConfigurator.save")
@mock.patch("certbot_nginx.configurator.NginxConfigurator.save")
def test_perform1(self, mock_save):
self.sni.add_chall(self.achalls[0])
response = self.achalls[0].response(self.account_key)

View File

@@ -1,4 +1,4 @@
"""Common utilities for letsencrypt_nginx."""
"""Common utilities for certbot_nginx."""
import os
import pkg_resources
import unittest
@@ -8,14 +8,14 @@ import zope.component
from acme import jose
from letsencrypt import configuration
from certbot import configuration
from letsencrypt.tests import test_util
from certbot.tests import test_util
from letsencrypt.plugins import common
from certbot.plugins import common
from letsencrypt_nginx import constants
from letsencrypt_nginx import configurator
from certbot_nginx import constants
from certbot_nginx import configurator
class NginxTest(unittest.TestCase): # pylint: disable=too-few-public-methods
@@ -24,7 +24,7 @@ class NginxTest(unittest.TestCase): # pylint: disable=too-few-public-methods
super(NginxTest, self).setUp()
self.temp_dir, self.config_dir, self.work_dir = common.dir_setup(
"etc_nginx", "letsencrypt_nginx.tests")
"etc_nginx", "certbot_nginx.tests")
self.ssl_options = common.setup_ssl_options(
self.config_dir, constants.MOD_SSL_CONF_SRC,
@@ -39,7 +39,7 @@ class NginxTest(unittest.TestCase): # pylint: disable=too-few-public-methods
def get_data_filename(filename):
"""Gets the filename of a test data file."""
return pkg_resources.resource_filename(
"letsencrypt_nginx.tests", os.path.join(
"certbot_nginx.tests", os.path.join(
"testdata", "etc_nginx", filename))
@@ -49,9 +49,9 @@ def get_nginx_configurator(
backups = os.path.join(work_dir, "backups")
with mock.patch("letsencrypt_nginx.configurator.NginxConfigurator."
with mock.patch("certbot_nginx.configurator.NginxConfigurator."
"config_test"):
with mock.patch("letsencrypt_nginx.configurator.le_util."
with mock.patch("certbot_nginx.configurator.le_util."
"exe_exists") as mock_exe_exists:
mock_exe_exists.return_value = True
config = configurator.NginxConfigurator(

View File

@@ -4,11 +4,11 @@ import itertools
import logging
import os
from letsencrypt import errors
from letsencrypt.plugins import common
from certbot import errors
from certbot.plugins import common
from letsencrypt_nginx import obj
from letsencrypt_nginx import nginxparser
from certbot_nginx import obj
from certbot_nginx import nginxparser
logger = logging.getLogger(__name__)
@@ -21,7 +21,7 @@ class NginxTlsSni01(common.TLSSNI01):
:type configurator: :class:`~nginx.configurator.NginxConfigurator`
:ivar list achalls: Annotated
class:`~letsencrypt.achallenges.KeyAuthorizationAnnotatedChallenge`
class:`~certbot.achallenges.KeyAuthorizationAnnotatedChallenge`
challenges
:param list indices: Meant to hold indices of challenges in a
@@ -39,7 +39,7 @@ class NginxTlsSni01(common.TLSSNI01):
def perform(self):
"""Perform a challenge on Nginx.
:returns: list of :class:`letsencrypt.acme.challenges.TLSSNI01Response`
:returns: list of :class:`certbot.acme.challenges.TLSSNI01Response`
:rtype: list
"""
@@ -83,7 +83,7 @@ class NginxTlsSni01(common.TLSSNI01):
"""Modifies Nginx config to include challenge server blocks.
:param list ll_addrs: list of lists of
:class:`letsencrypt_nginx.obj.Addr` to apply
:class:`certbot_nginx.obj.Addr` to apply
:raises .MisconfigurationError:
Unable to find a suitable HTTP block in which to include
@@ -130,7 +130,7 @@ class NginxTlsSni01(common.TLSSNI01):
:param achall: Annotated TLS-SNI-01 challenge
:type achall:
:class:`letsencrypt.achallenges.KeyAuthorizationAnnotatedChallenge`
:class:`certbot.achallenges.KeyAuthorizationAnnotatedChallenge`
:param list addrs: addresses of challenged domain
:class:`list` of type :class:`~nginx.obj.Addr`

View File

@@ -87,9 +87,9 @@ qthelp:
@echo
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/letsencrypt-nginx.qhcp"
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/certbot-nginx.qhcp"
@echo "To view the help file:"
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/letsencrypt-nginx.qhc"
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/certbot-nginx.qhc"
applehelp:
$(SPHINXBUILD) -b applehelp $(ALLSPHINXOPTS) $(BUILDDIR)/applehelp
@@ -104,8 +104,8 @@ devhelp:
@echo
@echo "Build finished."
@echo "To view the help file:"
@echo "# mkdir -p $$HOME/.local/share/devhelp/letsencrypt-nginx"
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/letsencrypt-nginx"
@echo "# mkdir -p $$HOME/.local/share/devhelp/certbot-nginx"
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/certbot-nginx"
@echo "# devhelp"
epub:

View File

@@ -0,0 +1,5 @@
:mod:`certbot_nginx.nginxparser`
------------------------------------
.. automodule:: certbot_nginx.nginxparser
:members:

View File

@@ -0,0 +1,5 @@
:mod:`certbot_nginx.obj`
----------------------------
.. automodule:: certbot_nginx.obj
:members:

View File

@@ -0,0 +1,5 @@
:mod:`certbot_nginx.parser`
-------------------------------
.. automodule:: certbot_nginx.parser
:members:

View File

@@ -0,0 +1,5 @@
:mod:`certbot_nginx.tls_sni_01`
-----------------------------------
.. automodule:: certbot_nginx.tls_sni_01
:members:

View File

@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
#
# letsencrypt-nginx documentation build configuration file, created by
# certbot-nginx documentation build configuration file, created by
# sphinx-quickstart on Sun Oct 18 13:39:39 2015.
#
# This file is execfile()d with the current directory set to its
@@ -58,7 +58,7 @@ source_suffix = '.rst'
master_doc = 'index'
# General information about the project.
project = u'letsencrypt-nginx'
project = u'certbot-nginx'
copyright = u'2014-2015, Let\'s Encrypt Project'
author = u'Let\'s Encrypt Project'
@@ -220,7 +220,7 @@ html_static_path = ['_static']
#html_search_scorer = 'scorer.js'
# Output file base name for HTML help builder.
htmlhelp_basename = 'letsencrypt-nginxdoc'
htmlhelp_basename = 'certbot-nginxdoc'
# -- Options for LaTeX output ---------------------------------------------
@@ -242,7 +242,7 @@ latex_elements = {
# (source start file, target name, title,
# author, documentclass [howto, manual, or own class]).
latex_documents = [
(master_doc, 'letsencrypt-nginx.tex', u'letsencrypt-nginx Documentation',
(master_doc, 'certbot-nginx.tex', u'certbot-nginx Documentation',
u'Let\'s Encrypt Project', 'manual'),
]
@@ -272,7 +272,7 @@ latex_documents = [
# One entry per manual page. List of tuples
# (source start file, name, description, authors, manual section).
man_pages = [
(master_doc, 'letsencrypt-nginx', u'letsencrypt-nginx Documentation',
(master_doc, 'certbot-nginx', u'certbot-nginx Documentation',
[author], 1)
]
@@ -286,8 +286,8 @@ man_pages = [
# (source start file, target name, title, author,
# dir menu entry, description, category)
texinfo_documents = [
(master_doc, 'letsencrypt-nginx', u'letsencrypt-nginx Documentation',
author, 'letsencrypt-nginx', 'One line description of project.',
(master_doc, 'certbot-nginx', u'certbot-nginx Documentation',
author, 'certbot-nginx', 'One line description of project.',
'Miscellaneous'),
]
@@ -307,5 +307,5 @@ texinfo_documents = [
intersphinx_mapping = {
'python': ('https://docs.python.org/', None),
'acme': ('https://acme-python.readthedocs.org/en/latest/', None),
'letsencrypt': ('https://letsencrypt.readthedocs.org/en/latest/', None),
'certbot': ('https://letsencrypt.readthedocs.org/en/latest/', None),
}

View File

@@ -1,9 +1,9 @@
.. letsencrypt-nginx documentation master file, created by
.. certbot-nginx documentation master file, created by
sphinx-quickstart on Sun Oct 18 13:39:39 2015.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
Welcome to letsencrypt-nginx's documentation!
Welcome to certbot-nginx's documentation!
=============================================
Contents:
@@ -18,7 +18,7 @@ Contents:
api
.. automodule:: letsencrypt_nginx
.. automodule:: certbot_nginx
:members:

View File

@@ -127,9 +127,9 @@ if "%1" == "qthelp" (
echo.
echo.Build finished; now you can run "qcollectiongenerator" with the ^
.qhcp project file in %BUILDDIR%/qthelp, like this:
echo.^> qcollectiongenerator %BUILDDIR%\qthelp\letsencrypt-nginx.qhcp
echo.^> qcollectiongenerator %BUILDDIR%\qthelp\certbot-nginx.qhcp
echo.To view the help file:
echo.^> assistant -collectionFile %BUILDDIR%\qthelp\letsencrypt-nginx.ghc
echo.^> assistant -collectionFile %BUILDDIR%\qthelp\certbot-nginx.ghc
goto end
)

View File

@@ -9,4 +9,4 @@
-e acme
-e .
-e letsencrypt-nginx[docs]
-e certbot-nginx[docs]

View File

@@ -9,7 +9,7 @@ version = '0.6.0.dev0'
# Please update tox.ini when modifying dependency version requirements
install_requires = [
'acme=={0}'.format(version),
'letsencrypt=={0}'.format(version),
'certbot=={0}'.format(version),
'PyOpenSSL',
'pyparsing>=1.5.5', # Python3 support; perhaps unnecessary?
# For pkg_resources. >=1.0 so pip resolves it to a version cryptography
@@ -29,7 +29,7 @@ docs_extras = [
]
setup(
name='letsencrypt-nginx',
name='certbot-nginx',
version=version,
description="Nginx plugin for Let's Encrypt client",
url='https://github.com/letsencrypt/letsencrypt',
@@ -61,9 +61,9 @@ setup(
'docs': docs_extras,
},
entry_points={
'letsencrypt.plugins': [
'nginx = letsencrypt_nginx.configurator:NginxConfigurator',
'certbot.plugins': [
'nginx = certbot_nginx.configurator:NginxConfigurator',
],
},
test_suite='letsencrypt_nginx',
test_suite='certbot_nginx',
)

View File

@@ -6,19 +6,19 @@
export PATH="/usr/sbin:$PATH" # /usr/sbin/nginx
nginx_root="$root/nginx"
mkdir $nginx_root
root="$nginx_root" ./letsencrypt-nginx/tests/boulder-integration.conf.sh > $nginx_root/nginx.conf
root="$nginx_root" ./certbot-nginx/tests/boulder-integration.conf.sh > $nginx_root/nginx.conf
killall nginx || true
nginx -c $nginx_root/nginx.conf
letsencrypt_test_nginx () {
letsencrypt_test \
certbot_test_nginx () {
certbot_test \
--configurator nginx \
--nginx-server-root $nginx_root \
"$@"
}
letsencrypt_test_nginx --domains nginx.wtf run
certbot_test_nginx --domains nginx.wtf run
echo | openssl s_client -connect localhost:5001 \
| openssl x509 -out $root/nginx.pem
diff -q $root/nginx.pem $root/conf/live/nginx.wtf/cert.pem

View File

@@ -1,5 +0,0 @@
include LICENSE.txt
include README.rst
recursive-include docs *
recursive-include letsencrypt_nginx/tests/testdata *
include letsencrypt_nginx/options-ssl-nginx.conf

View File

@@ -1,5 +0,0 @@
:mod:`letsencrypt_nginx.nginxparser`
------------------------------------
.. automodule:: letsencrypt_nginx.nginxparser
:members:

View File

@@ -1,5 +0,0 @@
:mod:`letsencrypt_nginx.obj`
----------------------------
.. automodule:: letsencrypt_nginx.obj
:members:

View File

@@ -1,5 +0,0 @@
:mod:`letsencrypt_nginx.parser`
-------------------------------
.. automodule:: letsencrypt_nginx.parser
:members:

View File

@@ -1,5 +0,0 @@
:mod:`letsencrypt_nginx.tls_sni_01`
-----------------------------------
.. automodule:: letsencrypt_nginx.tls_sni_01
:members:

View File

@@ -1,8 +1,8 @@
"""Manual test of display functions."""
import sys
from letsencrypt.display import util
from letsencrypt.tests.display import util_test
from certbot.display import util
from certbot.tests.display import util_test
def test_visual(displayer, choices):

View File

@@ -11,14 +11,14 @@ store_flags="--config-dir $root/conf --work-dir $root/work"
store_flags="$store_flags --logs-dir $root/logs"
export root store_flags
letsencrypt_test () {
letsencrypt_test_no_force_renew \
certbot_test () {
certbot_test_no_force_renew \
--renew-by-default \
"$@"
}
letsencrypt_test_no_force_renew () {
letsencrypt \
certbot_test_no_force_renew () {
certbot \
--server "${SERVER:-http://localhost:4000/directory}" \
--no-verify-ssl \
--tls-sni-01-port 5001 \

View File

@@ -11,9 +11,9 @@ export LETSENCRYPT_PATH=`pwd`
cd $GOPATH/src/github.com/letsencrypt/boulder/
# boulder's integration-test.py has code that knows to start and wait for the
# boulder processes to start reliably and then will run the letsencrypt
# boulder processes to start reliably and then will run the certbot
# boulder-interation.sh on its own. The --letsencrypt flag says to run only the
# letsencrypt tests (instead of any other client tests it might run). We're
# certbot tests (instead of any other client tests it might run). We're
# going to want to define a more robust interaction point between the boulder
# and letsencrypt tests, but that will be better built off of this.
# and certbot tests, but that will be better built off of this.
python test/integration-test.py --letsencrypt

12
tox.ini
View File

@@ -19,8 +19,8 @@ commands =
nosetests -v certbot
pip install -e certbot-apache
nosetests -v certbot_apache
pip install -e letsencrypt-nginx
nosetests -v letsencrypt_nginx
pip install -e certbot-nginx
nosetests -v certbot_nginx
pip install -e letshelp-letsencrypt
nosetests -v letshelp_letsencrypt
@@ -54,7 +54,7 @@ commands =
[testenv:cover]
basepython = python2.7
commands =
pip install -e acme[dev] -e .[dev] -e certbot-apache -e letsencrypt-nginx -e letshelp-letsencrypt
pip install -e acme[dev] -e .[dev] -e certbot-apache -e certbot-nginx -e letshelp-letsencrypt
./tox.cover.sh
[testenv:lint]
@@ -64,19 +64,19 @@ basepython = python2.7
# duplicate code checking; if one of the commands fails, others will
# continue, but tox return code will reflect previous error
commands =
pip install -e acme[dev] -e .[dev] -e certbot-apache -e letsencrypt-nginx -e letsencrypt-compatibility-test -e letshelp-letsencrypt
pip install -e acme[dev] -e .[dev] -e certbot-apache -e certbot-nginx -e letsencrypt-compatibility-test -e letshelp-letsencrypt
./pep8.travis.sh
pylint --rcfile=.pylintrc certbot
pylint --rcfile=acme/.pylintrc acme/acme
pylint --rcfile=.pylintrc certbot-apache/certbot_apache
pylint --rcfile=.pylintrc letsencrypt-nginx/letsencrypt_nginx
pylint --rcfile=.pylintrc certbot-nginx/certbot_nginx
pylint --rcfile=.pylintrc letsencrypt-compatibility-test/letsencrypt_compatibility_test
pylint --rcfile=.pylintrc letshelp-letsencrypt/letshelp_letsencrypt
[testenv:apacheconftest]
#basepython = python2.7
commands =
pip install -e acme -e .[dev] -e certbot-apache -e letsencrypt-nginx -e letsencrypt-compatibility-test -e letshelp-letsencrypt
pip install -e acme -e .[dev] -e certbot-apache -e certbot-nginx -e letsencrypt-compatibility-test -e letshelp-letsencrypt
{toxinidir}/certbot-apache/certbot_apache/tests/apache-conf-files/apache-conf-test --debian-modules