s/letsencrypt/certbot letsencrypt-compatibility-test
This commit is contained in:
7
certbot-compatibility-test/MANIFEST.in
Normal file
7
certbot-compatibility-test/MANIFEST.in
Normal file
@@ -0,0 +1,7 @@
|
||||
include LICENSE.txt
|
||||
include README.rst
|
||||
recursive-include docs *
|
||||
include certbot_compatibility_test/configurators/apache/a2enmod.sh
|
||||
include certbot_compatibility_test/configurators/apache/a2dismod.sh
|
||||
include certbot_compatibility_test/configurators/apache/Dockerfile
|
||||
recursive-include certbot_compatibility_test/testdata *
|
||||
@@ -0,0 +1,20 @@
|
||||
FROM httpd
|
||||
MAINTAINER Brad Warren <bradmw@umich.edu>
|
||||
|
||||
RUN mkdir /var/run/apache2
|
||||
|
||||
ENV APACHE_RUN_USER=daemon \
|
||||
APACHE_RUN_GROUP=daemon \
|
||||
APACHE_PID_FILE=/usr/local/apache2/logs/httpd.pid \
|
||||
APACHE_RUN_DIR=/var/run/apache2 \
|
||||
APACHE_LOCK_DIR=/var/lock \
|
||||
APACHE_LOG_DIR=/usr/local/apache2/logs
|
||||
|
||||
COPY certbot-compatibility-test/certbot_compatibility_test/configurators/apache/a2enmod.sh /usr/local/bin/
|
||||
COPY certbot-compatibility-test/certbot_compatibility_test/configurators/apache/a2dismod.sh /usr/local/bin/
|
||||
COPY certbot-compatibility-test/certbot_compatibility_test/testdata/rsa1024_key2.pem /usr/local/apache2/conf/
|
||||
COPY certbot-compatibility-test/certbot_compatibility_test/testdata/empty_cert.pem /usr/local/apache2/conf/
|
||||
|
||||
# Note: this only exposes the port to other docker containers. You
|
||||
# still have to bind to 443@host at runtime.
|
||||
EXPOSE 443
|
||||
@@ -2,9 +2,9 @@
|
||||
|
||||
import zope.interface
|
||||
|
||||
from letsencrypt_compatibility_test import errors
|
||||
from letsencrypt_compatibility_test import interfaces
|
||||
from letsencrypt_compatibility_test.configurators.apache import common as apache_common
|
||||
from certbot_compatibility_test import errors
|
||||
from certbot_compatibility_test import interfaces
|
||||
from certbot_compatibility_test.configurators.apache import common as apache_common
|
||||
|
||||
|
||||
# The docker image doesn't actually have the watchdog module, but unless the
|
||||
@@ -6,13 +6,13 @@ import subprocess
|
||||
import mock
|
||||
import zope.interface
|
||||
|
||||
from letsencrypt import configuration
|
||||
from letsencrypt import errors as le_errors
|
||||
from letsencrypt_apache import configurator
|
||||
from letsencrypt_compatibility_test import errors
|
||||
from letsencrypt_compatibility_test import interfaces
|
||||
from letsencrypt_compatibility_test import util
|
||||
from letsencrypt_compatibility_test.configurators import common as configurators_common
|
||||
from certbot import configuration
|
||||
from certbot import errors as le_errors
|
||||
from certbot_apache import configurator
|
||||
from certbot_compatibility_test import errors
|
||||
from certbot_compatibility_test import interfaces
|
||||
from certbot_compatibility_test import util
|
||||
from certbot_compatibility_test.configurators import common as configurators_common
|
||||
|
||||
|
||||
APACHE_VERSION_REGEX = re.compile(r"Apache/([0-9\.]*)", re.IGNORECASE)
|
||||
@@ -41,20 +41,20 @@ class Proxy(configurators_common.Proxy):
|
||||
mock_subprocess.Popen = self.popen
|
||||
|
||||
mock.patch(
|
||||
"letsencrypt_apache.configurator.subprocess",
|
||||
"certbot_apache.configurator.subprocess",
|
||||
mock_subprocess).start()
|
||||
mock.patch(
|
||||
"letsencrypt_apache.parser.subprocess",
|
||||
"certbot_apache.parser.subprocess",
|
||||
mock_subprocess).start()
|
||||
mock.patch(
|
||||
"letsencrypt.le_util.subprocess",
|
||||
"certbot.le_util.subprocess",
|
||||
mock_subprocess).start()
|
||||
mock.patch(
|
||||
"letsencrypt_apache.configurator.le_util.exe_exists",
|
||||
"certbot_apache.configurator.le_util.exe_exists",
|
||||
_is_apache_command).start()
|
||||
|
||||
patch = mock.patch(
|
||||
"letsencrypt_apache.configurator.display_ops.select_vhost")
|
||||
"certbot_apache.configurator.display_ops.select_vhost")
|
||||
mock_display = patch.start()
|
||||
mock_display.side_effect = le_errors.PluginError(
|
||||
"Unable to determine vhost")
|
||||
@@ -6,9 +6,9 @@ import tempfile
|
||||
|
||||
import docker
|
||||
|
||||
from letsencrypt import constants
|
||||
from letsencrypt_compatibility_test import errors
|
||||
from letsencrypt_compatibility_test import util
|
||||
from certbot import constants
|
||||
from certbot_compatibility_test import errors
|
||||
from certbot_compatibility_test import util
|
||||
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
@@ -1,7 +1,7 @@
|
||||
"""Let's Encrypt compatibility test interfaces"""
|
||||
import zope.interface
|
||||
|
||||
import letsencrypt.interfaces
|
||||
import certbot.interfaces
|
||||
|
||||
# pylint: disable=no-self-argument,no-method-argument
|
||||
|
||||
@@ -37,11 +37,11 @@ class IPluginProxy(zope.interface.Interface):
|
||||
"""Returns the domain names that can be used in testing"""
|
||||
|
||||
|
||||
class IAuthenticatorProxy(IPluginProxy, letsencrypt.interfaces.IAuthenticator):
|
||||
class IAuthenticatorProxy(IPluginProxy, certbot.interfaces.IAuthenticator):
|
||||
"""Wraps a Let's Encrypt authenticator"""
|
||||
|
||||
|
||||
class IInstallerProxy(IPluginProxy, letsencrypt.interfaces.IInstaller):
|
||||
class IInstallerProxy(IPluginProxy, certbot.interfaces.IInstaller):
|
||||
"""Wraps a Let's Encrypt installer"""
|
||||
|
||||
def get_all_names_answer():
|
||||
@@ -13,15 +13,15 @@ import OpenSSL
|
||||
from acme import challenges
|
||||
from acme import crypto_util
|
||||
from acme import messages
|
||||
from letsencrypt import achallenges
|
||||
from letsencrypt import errors as le_errors
|
||||
from letsencrypt.tests import acme_util
|
||||
from certbot import achallenges
|
||||
from certbot import errors as le_errors
|
||||
from certbot.tests import acme_util
|
||||
|
||||
from letsencrypt_compatibility_test import errors
|
||||
from letsencrypt_compatibility_test import util
|
||||
from letsencrypt_compatibility_test import validator
|
||||
from certbot_compatibility_test import errors
|
||||
from certbot_compatibility_test import util
|
||||
from certbot_compatibility_test import validator
|
||||
|
||||
from letsencrypt_compatibility_test.configurators.apache import apache24
|
||||
from certbot_compatibility_test.configurators.apache import apache24
|
||||
|
||||
|
||||
DESCRIPTION = """
|
||||
@@ -10,9 +10,9 @@ import tarfile
|
||||
|
||||
from acme import jose
|
||||
from acme import test_util
|
||||
from letsencrypt import constants
|
||||
from certbot import constants
|
||||
|
||||
from letsencrypt_compatibility_test import errors
|
||||
from certbot_compatibility_test import errors
|
||||
|
||||
|
||||
_KEY_BASE = "rsa1024_key.pem"
|
||||
@@ -26,7 +26,7 @@ def create_le_config(parent_dir):
|
||||
"""Sets up LE dirs in parent_dir and returns the config dict"""
|
||||
config = copy.deepcopy(constants.CLI_DEFAULTS)
|
||||
|
||||
le_dir = os.path.join(parent_dir, "letsencrypt")
|
||||
le_dir = os.path.join(parent_dir, "certbot")
|
||||
config["config_dir"] = os.path.join(le_dir, "config")
|
||||
config["work_dir"] = os.path.join(le_dir, "work")
|
||||
config["logs_dir"] = os.path.join(le_dir, "logs_dir")
|
||||
@@ -6,7 +6,7 @@ import zope.interface
|
||||
|
||||
from acme import crypto_util
|
||||
from acme import errors as acme_errors
|
||||
from letsencrypt import interfaces
|
||||
from certbot import interfaces
|
||||
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
@@ -1,4 +1,4 @@
|
||||
"""Tests for letsencrypt_compatibility_test.validator."""
|
||||
"""Tests for certbot_compatibility_test.validator."""
|
||||
import requests
|
||||
import unittest
|
||||
|
||||
@@ -6,7 +6,7 @@ import mock
|
||||
import OpenSSL
|
||||
|
||||
from acme import errors as acme_errors
|
||||
from letsencrypt_compatibility_test import validator
|
||||
from certbot_compatibility_test import validator
|
||||
|
||||
|
||||
class ValidatorTest(unittest.TestCase):
|
||||
@@ -14,7 +14,7 @@ class ValidatorTest(unittest.TestCase):
|
||||
self.validator = validator.Validator()
|
||||
|
||||
@mock.patch(
|
||||
"letsencrypt_compatibility_test.validator.crypto_util.probe_sni")
|
||||
"certbot_compatibility_test.validator.crypto_util.probe_sni")
|
||||
def test_certificate_success(self, mock_probe_sni):
|
||||
cert = OpenSSL.crypto.X509()
|
||||
mock_probe_sni.return_value = cert
|
||||
@@ -22,7 +22,7 @@ class ValidatorTest(unittest.TestCase):
|
||||
cert, "test.com", "127.0.0.1"))
|
||||
|
||||
@mock.patch(
|
||||
"letsencrypt_compatibility_test.validator.crypto_util.probe_sni")
|
||||
"certbot_compatibility_test.validator.crypto_util.probe_sni")
|
||||
def test_certificate_error(self, mock_probe_sni):
|
||||
cert = OpenSSL.crypto.X509()
|
||||
mock_probe_sni.side_effect = [acme_errors.Error]
|
||||
@@ -30,7 +30,7 @@ class ValidatorTest(unittest.TestCase):
|
||||
cert, "test.com", "127.0.0.1"))
|
||||
|
||||
@mock.patch(
|
||||
"letsencrypt_compatibility_test.validator.crypto_util.probe_sni")
|
||||
"certbot_compatibility_test.validator.crypto_util.probe_sni")
|
||||
def test_certificate_failure(self, mock_probe_sni):
|
||||
cert = OpenSSL.crypto.X509()
|
||||
cert.set_serial_number(1337)
|
||||
@@ -38,67 +38,67 @@ class ValidatorTest(unittest.TestCase):
|
||||
self.assertFalse(self.validator.certificate(
|
||||
cert, "test.com", "127.0.0.1"))
|
||||
|
||||
@mock.patch("letsencrypt_compatibility_test.validator.requests.get")
|
||||
@mock.patch("certbot_compatibility_test.validator.requests.get")
|
||||
def test_succesful_redirect(self, mock_get_request):
|
||||
mock_get_request.return_value = create_response(
|
||||
301, {"location": "https://test.com"})
|
||||
self.assertTrue(self.validator.redirect("test.com"))
|
||||
|
||||
@mock.patch("letsencrypt_compatibility_test.validator.requests.get")
|
||||
@mock.patch("certbot_compatibility_test.validator.requests.get")
|
||||
def test_redirect_with_headers(self, mock_get_request):
|
||||
mock_get_request.return_value = create_response(
|
||||
301, {"location": "https://test.com"})
|
||||
self.assertTrue(self.validator.redirect(
|
||||
"test.com", headers={"Host": "test.com"}))
|
||||
|
||||
@mock.patch("letsencrypt_compatibility_test.validator.requests.get")
|
||||
@mock.patch("certbot_compatibility_test.validator.requests.get")
|
||||
def test_redirect_missing_location(self, mock_get_request):
|
||||
mock_get_request.return_value = create_response(301)
|
||||
self.assertFalse(self.validator.redirect("test.com"))
|
||||
|
||||
@mock.patch("letsencrypt_compatibility_test.validator.requests.get")
|
||||
@mock.patch("certbot_compatibility_test.validator.requests.get")
|
||||
def test_redirect_wrong_status_code(self, mock_get_request):
|
||||
mock_get_request.return_value = create_response(
|
||||
201, {"location": "https://test.com"})
|
||||
self.assertFalse(self.validator.redirect("test.com"))
|
||||
|
||||
@mock.patch("letsencrypt_compatibility_test.validator.requests.get")
|
||||
@mock.patch("certbot_compatibility_test.validator.requests.get")
|
||||
def test_redirect_wrong_redirect_code(self, mock_get_request):
|
||||
mock_get_request.return_value = create_response(
|
||||
303, {"location": "https://test.com"})
|
||||
self.assertFalse(self.validator.redirect("test.com"))
|
||||
|
||||
@mock.patch("letsencrypt_compatibility_test.validator.requests.get")
|
||||
@mock.patch("certbot_compatibility_test.validator.requests.get")
|
||||
def test_hsts_empty(self, mock_get_request):
|
||||
mock_get_request.return_value = create_response(
|
||||
headers={"strict-transport-security": ""})
|
||||
self.assertFalse(self.validator.hsts("test.com"))
|
||||
|
||||
@mock.patch("letsencrypt_compatibility_test.validator.requests.get")
|
||||
@mock.patch("certbot_compatibility_test.validator.requests.get")
|
||||
def test_hsts_malformed(self, mock_get_request):
|
||||
mock_get_request.return_value = create_response(
|
||||
headers={"strict-transport-security": "sdfal"})
|
||||
self.assertFalse(self.validator.hsts("test.com"))
|
||||
|
||||
@mock.patch("letsencrypt_compatibility_test.validator.requests.get")
|
||||
@mock.patch("certbot_compatibility_test.validator.requests.get")
|
||||
def test_hsts_bad_max_age(self, mock_get_request):
|
||||
mock_get_request.return_value = create_response(
|
||||
headers={"strict-transport-security": "max-age=not-an-int"})
|
||||
self.assertFalse(self.validator.hsts("test.com"))
|
||||
|
||||
@mock.patch("letsencrypt_compatibility_test.validator.requests.get")
|
||||
@mock.patch("certbot_compatibility_test.validator.requests.get")
|
||||
def test_hsts_expire(self, mock_get_request):
|
||||
mock_get_request.return_value = create_response(
|
||||
headers={"strict-transport-security": "max-age=3600"})
|
||||
self.assertFalse(self.validator.hsts("test.com"))
|
||||
|
||||
@mock.patch("letsencrypt_compatibility_test.validator.requests.get")
|
||||
@mock.patch("certbot_compatibility_test.validator.requests.get")
|
||||
def test_hsts(self, mock_get_request):
|
||||
mock_get_request.return_value = create_response(
|
||||
headers={"strict-transport-security": "max-age=31536000"})
|
||||
self.assertTrue(self.validator.hsts("test.com"))
|
||||
|
||||
@mock.patch("letsencrypt_compatibility_test.validator.requests.get")
|
||||
@mock.patch("certbot_compatibility_test.validator.requests.get")
|
||||
def test_hsts_include_subdomains(self, mock_get_request):
|
||||
mock_get_request.return_value = create_response(
|
||||
headers={"strict-transport-security":
|
||||
@@ -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-compatibility-test.qhcp"
|
||||
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/certbot-compatibility-test.qhcp"
|
||||
@echo "To view the help file:"
|
||||
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/letsencrypt-compatibility-test.qhc"
|
||||
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/certbot-compatibility-test.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-compatibility-test"
|
||||
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/letsencrypt-compatibility-test"
|
||||
@echo "# mkdir -p $$HOME/.local/share/devhelp/certbot-compatibility-test"
|
||||
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/certbot-compatibility-test"
|
||||
@echo "# devhelp"
|
||||
|
||||
epub:
|
||||
53
certbot-compatibility-test/docs/api/index.rst
Normal file
53
certbot-compatibility-test/docs/api/index.rst
Normal file
@@ -0,0 +1,53 @@
|
||||
:mod:`certbot_compatibility_test`
|
||||
-------------------------------------
|
||||
|
||||
.. automodule:: certbot_compatibility_test
|
||||
:members:
|
||||
|
||||
:mod:`certbot_compatibility_test.errors`
|
||||
============================================
|
||||
|
||||
.. automodule:: certbot_compatibility_test.errors
|
||||
:members:
|
||||
|
||||
:mod:`certbot_compatibility_test.interfaces`
|
||||
================================================
|
||||
|
||||
.. automodule:: certbot_compatibility_test.interfaces
|
||||
:members:
|
||||
|
||||
:mod:`certbot_compatibility_test.test_driver`
|
||||
=================================================
|
||||
|
||||
.. automodule:: certbot_compatibility_test.test_driver
|
||||
:members:
|
||||
|
||||
:mod:`certbot_compatibility_test.util`
|
||||
==========================================
|
||||
|
||||
.. automodule:: certbot_compatibility_test.util
|
||||
:members:
|
||||
|
||||
:mod:`certbot_compatibility_test.configurators`
|
||||
===================================================
|
||||
|
||||
.. automodule:: certbot_compatibility_test.configurators
|
||||
:members:
|
||||
|
||||
:mod:`certbot_compatibility_test.configurators.apache`
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
.. automodule:: certbot_compatibility_test.configurators.apache
|
||||
:members:
|
||||
|
||||
:mod:`certbot_compatibility_test.configurators.apache.apache24`
|
||||
-------------------------------------------------------------------
|
||||
|
||||
.. automodule:: certbot_compatibility_test.configurators.apache.apache24
|
||||
:members:
|
||||
|
||||
:mod:`certbot_compatibility_test.configurators.apache.common`
|
||||
-------------------------------------------------------------------
|
||||
|
||||
.. automodule:: certbot_compatibility_test.configurators.apache.common
|
||||
:members:
|
||||
@@ -1,6 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# letsencrypt-compatibility-test documentation build configuration file, created by
|
||||
# certbot-compatibility-test documentation build configuration file, created by
|
||||
# sphinx-quickstart on Sun Oct 18 13:40:53 2015.
|
||||
#
|
||||
# This file is execfile()d with the current directory set to its
|
||||
@@ -59,7 +59,7 @@ source_suffix = '.rst'
|
||||
master_doc = 'index'
|
||||
|
||||
# General information about the project.
|
||||
project = u'letsencrypt-compatibility-test'
|
||||
project = u'certbot-compatibility-test'
|
||||
copyright = u'2014-2015, Let\'s Encrypt Project'
|
||||
author = u'Let\'s Encrypt Project'
|
||||
|
||||
@@ -221,7 +221,7 @@ html_static_path = ['_static']
|
||||
#html_search_scorer = 'scorer.js'
|
||||
|
||||
# Output file base name for HTML help builder.
|
||||
htmlhelp_basename = 'letsencrypt-compatibility-testdoc'
|
||||
htmlhelp_basename = 'certbot-compatibility-testdoc'
|
||||
|
||||
# -- Options for LaTeX output ---------------------------------------------
|
||||
|
||||
@@ -243,8 +243,8 @@ latex_elements = {
|
||||
# (source start file, target name, title,
|
||||
# author, documentclass [howto, manual, or own class]).
|
||||
latex_documents = [
|
||||
(master_doc, 'letsencrypt-compatibility-test.tex',
|
||||
u'letsencrypt-compatibility-test Documentation',
|
||||
(master_doc, 'certbot-compatibility-test.tex',
|
||||
u'certbot-compatibility-test Documentation',
|
||||
u'Let\'s Encrypt Project', 'manual'),
|
||||
]
|
||||
|
||||
@@ -274,8 +274,8 @@ latex_documents = [
|
||||
# One entry per manual page. List of tuples
|
||||
# (source start file, name, description, authors, manual section).
|
||||
man_pages = [
|
||||
(master_doc, 'letsencrypt-compatibility-test',
|
||||
u'letsencrypt-compatibility-test Documentation',
|
||||
(master_doc, 'certbot-compatibility-test',
|
||||
u'certbot-compatibility-test Documentation',
|
||||
[author], 1)
|
||||
]
|
||||
|
||||
@@ -289,9 +289,9 @@ man_pages = [
|
||||
# (source start file, target name, title, author,
|
||||
# dir menu entry, description, category)
|
||||
texinfo_documents = [
|
||||
(master_doc, 'letsencrypt-compatibility-test',
|
||||
u'letsencrypt-compatibility-test Documentation',
|
||||
author, 'letsencrypt-compatibility-test',
|
||||
(master_doc, 'certbot-compatibility-test',
|
||||
u'certbot-compatibility-test Documentation',
|
||||
author, 'certbot-compatibility-test',
|
||||
'One line description of project.', 'Miscellaneous'),
|
||||
]
|
||||
|
||||
@@ -311,9 +311,9 @@ 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),
|
||||
'letsencrypt-apache': (
|
||||
'certbot': ('https://letsencrypt.readthedocs.org/en/latest/', None),
|
||||
'certbot-apache': (
|
||||
'https://letsencrypt-apache.readthedocs.org/en/latest/', None),
|
||||
'letsencrypt-nginx': (
|
||||
'certbot-nginx': (
|
||||
'https://letsencrypt-nginx.readthedocs.org/en/latest/', None),
|
||||
}
|
||||
@@ -1,9 +1,9 @@
|
||||
.. letsencrypt-compatibility-test documentation master file, created by
|
||||
.. certbot-compatibility-test documentation master file, created by
|
||||
sphinx-quickstart on Sun Oct 18 13:40:53 2015.
|
||||
You can adapt this file completely to your liking, but it should at least
|
||||
contain the root `toctree` directive.
|
||||
|
||||
Welcome to letsencrypt-compatibility-test's documentation!
|
||||
Welcome to certbot-compatibility-test's documentation!
|
||||
==========================================================
|
||||
|
||||
Contents:
|
||||
@@ -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-compatibility-test.qhcp
|
||||
echo.^> qcollectiongenerator %BUILDDIR%\qthelp\certbot-compatibility-test.qhcp
|
||||
echo.To view the help file:
|
||||
echo.^> assistant -collectionFile %BUILDDIR%\qthelp\letsencrypt-compatibility-test.ghc
|
||||
echo.^> assistant -collectionFile %BUILDDIR%\qthelp\certbot-compatibility-test.ghc
|
||||
goto end
|
||||
)
|
||||
|
||||
@@ -9,5 +9,5 @@
|
||||
|
||||
-e acme
|
||||
-e .
|
||||
-e letsencrypt-apache
|
||||
-e letsencrypt-compatibility-test[docs]
|
||||
-e certbot-apache
|
||||
-e certbot-compatibility-test[docs]
|
||||
@@ -7,8 +7,8 @@ from setuptools import find_packages
|
||||
version = '0.6.0.dev0'
|
||||
|
||||
install_requires = [
|
||||
'letsencrypt=={0}'.format(version),
|
||||
'letsencrypt-apache=={0}'.format(version),
|
||||
'certbot=={0}'.format(version),
|
||||
'certbot-apache=={0}'.format(version),
|
||||
'docker-py',
|
||||
'requests',
|
||||
'zope.interface',
|
||||
@@ -31,7 +31,7 @@ docs_extras = [
|
||||
]
|
||||
|
||||
setup(
|
||||
name='letsencrypt-compatibility-test',
|
||||
name='certbot-compatibility-test',
|
||||
version=version,
|
||||
description="Compatibility tests for Let's Encrypt client",
|
||||
url='https://github.com/letsencrypt/letsencrypt',
|
||||
@@ -58,7 +58,7 @@ setup(
|
||||
},
|
||||
entry_points={
|
||||
'console_scripts': [
|
||||
'letsencrypt-compatibility-test = letsencrypt_compatibility_test.test_driver:main',
|
||||
'certbot-compatibility-test = certbot_compatibility_test.test_driver:main',
|
||||
],
|
||||
},
|
||||
)
|
||||
@@ -1,7 +0,0 @@
|
||||
include LICENSE.txt
|
||||
include README.rst
|
||||
recursive-include docs *
|
||||
include letsencrypt_compatibility_test/configurators/apache/a2enmod.sh
|
||||
include letsencrypt_compatibility_test/configurators/apache/a2dismod.sh
|
||||
include letsencrypt_compatibility_test/configurators/apache/Dockerfile
|
||||
recursive-include letsencrypt_compatibility_test/testdata *
|
||||
@@ -1,53 +0,0 @@
|
||||
:mod:`letsencrypt_compatibility_test`
|
||||
-------------------------------------
|
||||
|
||||
.. automodule:: letsencrypt_compatibility_test
|
||||
:members:
|
||||
|
||||
:mod:`letsencrypt_compatibility_test.errors`
|
||||
============================================
|
||||
|
||||
.. automodule:: letsencrypt_compatibility_test.errors
|
||||
:members:
|
||||
|
||||
:mod:`letsencrypt_compatibility_test.interfaces`
|
||||
================================================
|
||||
|
||||
.. automodule:: letsencrypt_compatibility_test.interfaces
|
||||
:members:
|
||||
|
||||
:mod:`letsencrypt_compatibility_test.test_driver`
|
||||
=================================================
|
||||
|
||||
.. automodule:: letsencrypt_compatibility_test.test_driver
|
||||
:members:
|
||||
|
||||
:mod:`letsencrypt_compatibility_test.util`
|
||||
==========================================
|
||||
|
||||
.. automodule:: letsencrypt_compatibility_test.util
|
||||
:members:
|
||||
|
||||
:mod:`letsencrypt_compatibility_test.configurators`
|
||||
===================================================
|
||||
|
||||
.. automodule:: letsencrypt_compatibility_test.configurators
|
||||
:members:
|
||||
|
||||
:mod:`letsencrypt_compatibility_test.configurators.apache`
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
.. automodule:: letsencrypt_compatibility_test.configurators.apache
|
||||
:members:
|
||||
|
||||
:mod:`letsencrypt_compatibility_test.configurators.apache.apache24`
|
||||
-------------------------------------------------------------------
|
||||
|
||||
.. automodule:: letsencrypt_compatibility_test.configurators.apache.apache24
|
||||
:members:
|
||||
|
||||
:mod:`letsencrypt_compatibility_test.configurators.apache.common`
|
||||
-------------------------------------------------------------------
|
||||
|
||||
.. automodule:: letsencrypt_compatibility_test.configurators.apache.common
|
||||
:members:
|
||||
@@ -1,20 +0,0 @@
|
||||
FROM httpd
|
||||
MAINTAINER Brad Warren <bradmw@umich.edu>
|
||||
|
||||
RUN mkdir /var/run/apache2
|
||||
|
||||
ENV APACHE_RUN_USER=daemon \
|
||||
APACHE_RUN_GROUP=daemon \
|
||||
APACHE_PID_FILE=/usr/local/apache2/logs/httpd.pid \
|
||||
APACHE_RUN_DIR=/var/run/apache2 \
|
||||
APACHE_LOCK_DIR=/var/lock \
|
||||
APACHE_LOG_DIR=/usr/local/apache2/logs
|
||||
|
||||
COPY letsencrypt-compatibility-test/letsencrypt_compatibility_test/configurators/apache/a2enmod.sh /usr/local/bin/
|
||||
COPY letsencrypt-compatibility-test/letsencrypt_compatibility_test/configurators/apache/a2dismod.sh /usr/local/bin/
|
||||
COPY letsencrypt-compatibility-test/letsencrypt_compatibility_test/testdata/rsa1024_key2.pem /usr/local/apache2/conf/
|
||||
COPY letsencrypt-compatibility-test/letsencrypt_compatibility_test/testdata/empty_cert.pem /usr/local/apache2/conf/
|
||||
|
||||
# Note: this only exposes the port to other docker containers. You
|
||||
# still have to bind to 443@host at runtime.
|
||||
EXPOSE 443
|
||||
@@ -9,7 +9,7 @@
|
||||
# -e makes sure we fail fast and don't submit coveralls submit
|
||||
|
||||
if [ "xxx$1" = "xxx" ]; then
|
||||
pkgs="certbot acme letsencrypt_apache letsencrypt_nginx letshelp_letsencrypt"
|
||||
pkgs="certbot acme certbot_apache certbot_nginx letshelp_letsencrypt"
|
||||
else
|
||||
pkgs="$@"
|
||||
fi
|
||||
@@ -19,9 +19,9 @@ cover () {
|
||||
min=98
|
||||
elif [ "$1" = "acme" ]; then
|
||||
min=100
|
||||
elif [ "$1" = "letsencrypt_apache" ]; then
|
||||
elif [ "$1" = "certbot_apache" ]; then
|
||||
min=100
|
||||
elif [ "$1" = "letsencrypt_nginx" ]; then
|
||||
elif [ "$1" = "certbot_nginx" ]; then
|
||||
min=97
|
||||
elif [ "$1" = "letshelp_letsencrypt" ]; then
|
||||
min=100
|
||||
|
||||
6
tox.ini
6
tox.ini
@@ -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 certbot-nginx -e letsencrypt-compatibility-test -e letshelp-letsencrypt
|
||||
pip install -e acme[dev] -e .[dev] -e certbot-apache -e certbot-nginx -e certbot-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 certbot-nginx/certbot_nginx
|
||||
pylint --rcfile=.pylintrc letsencrypt-compatibility-test/letsencrypt_compatibility_test
|
||||
pylint --rcfile=.pylintrc certbot-compatibility-test/certbot_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 certbot-nginx -e letsencrypt-compatibility-test -e letshelp-letsencrypt
|
||||
pip install -e acme -e .[dev] -e certbot-apache -e certbot-nginx -e certbot-compatibility-test -e letshelp-letsencrypt
|
||||
{toxinidir}/certbot-apache/certbot_apache/tests/apache-conf-files/apache-conf-test --debian-modules
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user