From 0d6a1a390a578ab8be5bc0d6225e3e0b07dc7eba Mon Sep 17 00:00:00 2001 From: Robbie Harwood Date: Tue, 20 Dec 2016 15:32:04 -0500 Subject: Make test suite runnable on Debian-likes This is mostly gunk around how the webserver is called and what is built-in versus a module. I have mostly added templating logic for commenting pieces of the conf file. Signed-off-by: Robbie Harwood Reviewed-by: Isaac Boukris Closes #118 --- tests/httpd.conf | 16 ++++++++++++---- tests/magtests.py | 15 ++++++++++++--- 2 files changed, 24 insertions(+), 7 deletions(-) diff --git a/tests/httpd.conf b/tests/httpd.conf index d0194ed..134a84a 100644 --- a/tests/httpd.conf +++ b/tests/httpd.conf @@ -38,8 +38,12 @@ LoadModule filter_module modules/mod_filter.so LoadModule headers_module modules/mod_headers.so LoadModule include_module modules/mod_include.so LoadModule info_module modules/mod_info.so -LoadModule log_config_module modules/mod_log_config.so -LoadModule logio_module modules/mod_logio.so + + LoadModule log_config_module modules/mod_log_config.so + + + LoadModule logio_module modules/mod_logio.so + LoadModule macro_module modules/mod_macro.so LoadModule mime_magic_module modules/mod_mime_magic.so LoadModule mime_module modules/mod_mime.so @@ -59,9 +63,13 @@ LoadModule status_module modules/mod_status.so LoadModule substitute_module modules/mod_substitute.so LoadModule suexec_module modules/mod_suexec.so LoadModule unique_id_module modules/mod_unique_id.so -LoadModule unixd_module modules/mod_unixd.so + + LoadModule unixd_module modules/mod_unixd.so + LoadModule userdir_module modules/mod_userdir.so -LoadModule version_module modules/mod_version.so + + LoadModule version_module modules/mod_version.so + LoadModule vhost_alias_module modules/mod_vhost_alias.so LoadModule mpm_prefork_module modules/mod_mpm_prefork.so LoadModule proxy_module modules/mod_proxy.so diff --git a/tests/magtests.py b/tests/magtests.py index 074e2f0..3a29365 100755 --- a/tests/magtests.py +++ b/tests/magtests.py @@ -216,7 +216,15 @@ def setup_http(testdir, wrapenv): os.mkdir(os.path.join(httpdir, 'conf.d')) os.mkdir(os.path.join(httpdir, 'html')) os.mkdir(os.path.join(httpdir, 'logs')) - os.symlink('/etc/httpd/modules', os.path.join(httpdir, 'modules')) + + distro = "Fedora" + moddir = "/etc/httpd/modules" + if not os.path.exists(moddir): + distro = "Debian" + moddir = "/usr/lib/apache2/modules" + if not os.path.exists(moddir): + raise ValueError("Could not find Apache module directory!") + os.symlink(moddir, os.path.join(httpdir, 'modules')) shutil.copy('src/.libs/mod_auth_gssapi.so', httpdir) @@ -236,8 +244,9 @@ def setup_http(testdir, wrapenv): 'MALLOC_PERTURB_': str(random.randint(0, 32767) % 255 + 1)} httpenv.update(wrapenv) - httpproc = subprocess.Popen(['httpd', '-DFOREGROUND', '-f', config], - env=httpenv, preexec_fn=os.setsid) + httpd = "httpd" if distro == "Fedora" else "apache2" + httpproc = subprocess.Popen([httpd, '-DFOREGROUND', '-f', config], + env=httpenv, preexec_fn=os.setsid) return httpproc -- cgit