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
diff options
context:
space:
mode:
authorJoona Hoikkala <joona@kuori.org>2015-12-07 02:15:29 +0300
committerJoona Hoikkala <joona@kuori.org>2015-12-07 02:15:29 +0300
commite58c0a530fa180438392adb7aa9e205a1931cbdb (patch)
tree58bb841b296fdceaf789cc89b01b26446fe2e98c /letsencrypt-apache
parentb11f091023d7e1fc63b3cce66347540008ac0da9 (diff)
Call paper with customizable vhost root parameter
Diffstat (limited to 'letsencrypt-apache')
-rw-r--r--letsencrypt-apache/letsencrypt_apache/configurator.py2
-rw-r--r--letsencrypt-apache/letsencrypt_apache/parser.py13
2 files changed, 10 insertions, 5 deletions
diff --git a/letsencrypt-apache/letsencrypt_apache/configurator.py b/letsencrypt-apache/letsencrypt_apache/configurator.py
index ac7ce76d4..ce0714668 100644
--- a/letsencrypt-apache/letsencrypt_apache/configurator.py
+++ b/letsencrypt-apache/letsencrypt_apache/configurator.py
@@ -148,7 +148,7 @@ class ApacheConfigurator(augeas_configurator.AugeasConfigurator):
self.config_test()
self.parser = parser.ApacheParser(
- self.aug, self.conf("server-root"), self.conf("ctl"))
+ self.aug, self.conf("server-root"), self.conf("vhost-root"), self.conf("ctl"))
# Check for errors in parsing files with Augeas
self.check_parsing_errors("httpd.aug")
diff --git a/letsencrypt-apache/letsencrypt_apache/parser.py b/letsencrypt-apache/letsencrypt_apache/parser.py
index c47dbd99f..2cd258a1b 100644
--- a/letsencrypt-apache/letsencrypt_apache/parser.py
+++ b/letsencrypt-apache/letsencrypt_apache/parser.py
@@ -28,7 +28,7 @@ class ApacheParser(object):
arg_var_interpreter = re.compile(r"\$\{[^ \}]*}")
fnmatch_chars = set(["*", "?", "\\", "[", "]"])
- def __init__(self, aug, root, ctl):
+ def __init__(self, aug, root, vhostroot, ctl):
# Note: Order is important here.
# This uses the binary, so it can be done first.
@@ -44,6 +44,8 @@ class ApacheParser(object):
self.loc = {"root": self._find_config_root()}
self._parse_file(self.loc["root"])
+ self.vhostroot = os.path.abspath(vhostroot)
+
# This problem has been fixed in Augeas 1.0
self.standardize_excl()
@@ -56,9 +58,12 @@ class ApacheParser(object):
# Set up rest of locations
self.loc.update(self._set_locations())
- # Must also attempt to parse sites-available or equivalent
- # Sites-available is not included naturally in configuration
- self._parse_file(os.path.join(self.root, "sites-available") + "/*")
+ # Take the CentOS layout into account, httpd.conf not in httpd root
+ self._parse_file(os.path.join(self.root, "conf") + "/httpd.conf")
+
+ # Must also attempt to parse virtual host root
+ self._parse_file(self.vhostroot + "/*")
+
def init_modules(self):
"""Iterates on the configuration until no new modules are loaded.