[Erp5-report] r33409 lucas - in /erp5/trunk/buildout: software-profiles/ tests/
nobody at svn.erp5.org
nobody at svn.erp5.org
Thu Mar 4 23:39:50 CET 2010
Author: lucas
Date: Thu Mar 4 23:39:48 2010
New Revision: 33409
URL: http://svn.erp5.org?rev=33409&view=rev
Log:
Compile all possible modules. And test if they are loaded correctly.
Modified:
erp5/trunk/buildout/software-profiles/apache.cfg
erp5/trunk/buildout/tests/assertSoftware.py
Modified: erp5/trunk/buildout/software-profiles/apache.cfg
URL: http://svn.erp5.org/erp5/trunk/buildout/software-profiles/apache.cfg?rev=33409&r1=33408&r2=33409&view=diff
==============================================================================
--- erp5/trunk/buildout/software-profiles/apache.cfg [utf8] (original)
+++ erp5/trunk/buildout/software-profiles/apache.cfg [utf8] Thu Mar 4 23:39:48 2010
@@ -5,4 +5,26 @@
# inspired on http://old.aclark.net/team/aclark/blog/a-lamp-buildout-for-wordpress-and-other-php-apps/
recipe = hexagonit.recipe.cmmi
url = http://apache.multidist.com/httpd/httpd-2.2.14.tar.gz
-configure-options = --enable-so
+configure-options = --enable-authn-alias
+ --enable-bucketeer
+ --enable-cache
+ --enable-case-filter
+ --enable-case-filter-in
+ --enable-cgid
+ --enable-charset-lite
+ --enable-disk-cache
+ --enable-echo
+ --enable-mods-shared=all
+ --enable-optional-fn-import
+ --enable-optional-fn-export
+ --enable-optional-hook-export
+ --enable-optional-hook-import
+ --enable-proxy
+ --enable-proxy-connect
+ --enable-proxy-ftp
+ --enable-proxy-http
+ --enable-proxy-scgi
+ --enable-proxy-ajp
+ --enable-proxy-balancer
+ --enable-so
+ --enable-ssl
Modified: erp5/trunk/buildout/tests/assertSoftware.py
URL: http://svn.erp5.org/erp5/trunk/buildout/tests/assertSoftware.py?rev=33409&r1=33408&r2=33409&view=diff
==============================================================================
--- erp5/trunk/buildout/tests/assertSoftware.py [utf8] (original)
+++ erp5/trunk/buildout/tests/assertSoftware.py [utf8] Thu Mar 4 23:39:48 2010
@@ -1,14 +1,32 @@
+"""
+ TODO: Add copyright.
+"""
+
+
import unittest
import sys, os, tempfile, stat, subprocess
def createCleanList(s):
+ """
+ TODO: Add doc string.
+ """
return sorted([q.strip() for q in s.split() if len(q.strip()) > 0])
class AssertPythonSoftware(unittest.TestCase):
+ """
+ TODO: Add doc string.
+ """
+
def test_python_version(self):
- self.assertEqual((2,4), sys.version_info[:2])
+ """
+ TODO: Add doc string.
+ """
+ self.assertEqual((2,4), sys.version_info[:2])
def test_use_generated_python(self):
+ """
+ TODO: Add doc string.
+ """
fd, name = tempfile.mkstemp()
try:
f = os.fdopen(fd, 'w')
@@ -27,6 +45,9 @@
os.unlink(name)
def test_required_libraries(self):
+ """
+ TODO: Add doc string.
+ """
required_library_list = createCleanList("""
ERP5Diff
MySQLdb
@@ -65,96 +86,121 @@
'Python libraries not found:\n'+'\n'.join(failed_library_list))
class AssertLddLibs(unittest.TestCase):
+ """
+ TODO: Add doc string.
+ """
+
def test_tritonn_senna(self):
+ """
+ TODO: Add doc string.
+ """
result = os.system("ldd parts/mysql-tritonn-5.0/libexec/mysqld | grep -q "
"'parts/senna/lib/libsenna.so.0'")
self.assertEqual(result, 0)
def test_MySQLdb(self):
+ """
+ TODO: Add doc string.
+ """
result = os.system("ldd develop-eggs/MySQL_python-1.2.3c1-py2.4-linux-x86"
"_64.egg/_mysql.so | grep -q 'parts/mysql-tritonn-5.0/lib/mysql/libmys"
"qlclient_r.so'")
self.assertEqual(result, 0)
def test_memcached_libevent(self):
+ """
+ TODO: Add doc string.
+ """
result = os.system("ldd parts/memcached/bin/memcached | grep -q 'parts/li"
"bevent/lib/libevent'")
class AssertApache(unittest.TestCase):
+ """
+ TODO: Add doc string.
+ """
+
def test_modules(self):
+ """
+ TODO: Add doc string.
+ """
required_module_list = createCleanList("""
- mod_authn_default.so
- mod_log_config.so
- mod_proxy_http.so
- mod_authn_alias.so
- mod_authz_dbm.so
- mod_case_filter_in.so
- mod_imagemap.so
- mod_setenvif.so
- mod_include.so
- mod_charset_lite.so
- mod_info.so
- mod_cache.so
- mod_actions.so
- mod_proxy_connect.so
- mod_auth_digest.so
- mod_unique_id.so
- mod_mime_magic.so
- mod_disk_cache.so
- mod_mime.so
- mod_usertrack.so
- mod_asis.so
- mod_optional_hook_import.so
- mod_negotiation.so
- mod_proxy.so
- mod_authz_default.so
- mod_ext_filter.so
- mod_auth_basic.so
- mod_authz_owner.so
- mod_authn_anon.so
- mod_rewrite.so
- mod_proxy_balancer.so
- mod_substitute.so
- mod_filter.so
- mod_expires.so
- mod_autoindex.so
- mod_status.so
- mod_cgid.so
- mod_version.so
- mod_echo.so
- mod_optional_fn_export.so
- mod_optional_fn_import.so
- mod_ident.so
- mod_cgi.so
- mod_bucketeer.so
- mod_optional_hook_export.so
- mod_vhost_alias.so
- mod_ssl.so
- mod_authz_user.so
- mod_env.so
- mod_logio.so
- mod_proxy_ftp.so
- mod_example.so
- mod_cern_meta.so
- mod_authz_groupfile.so
- mod_dir.so
- mod_log_forensic.so
- mod_alias.so
- mod_deflate.so
- mod_authn_dbm.so
- mod_case_filter.so
- mod_authz_host.so
- mod_headers.so
- mod_dumpio.so
- mod_speling.so
- mod_authn_file.so
+ authn_default_module
+ log_config_module
+ proxy_http_module
+ authn_alias_module
+ authz_dbm_module
+ case_filter_in_module
+ imagemap_module
+ setenvif_module
+ include_module
+ charset_lite_module
+ info_module
+ cache_module
+ actions_module
+ proxy_connect_module
+ auth_digest_module
+ unique_id_module
+ mime_magic_module
+ disk_cache_module
+ mime_module
+ usertrack_module
+ asis_module
+ optional_hook_import_module
+ negotiation_module
+ proxy_module
+ authz_default_module
+ ext_filter_module
+ auth_basic_module
+ authz_owner_module
+ authn_anon_module
+ rewrite_module
+ proxy_balancer_module
+ substitute_module
+ filter_module
+ expires_module
+ autoindex_module
+ status_module
+ cgid_module
+ version_module
+ echo_module
+ optional_fn_export_module
+ optional_fn_import_module
+ ident_module
+ cgi_module
+ bucketeer_module
+ optional_hook_export_module
+ vhost_alias_module
+ ssl_module
+ authz_user_module
+ env_module
+ logio_module
+ proxy_ftp_module
+ cern_meta_module
+ authz_groupfile_module
+ dir_module
+ log_forensic_module
+ alias_module
+ deflate_module
+ authn_dbm_module
+ case_filter_module
+ authz_host_module
+ headers_module
+ dumpio_module
+ speling_module
+ authn_file_module
""")
+ parts_path_prefix = os.path.join(os.path.dirname(__file__), '../parts')
+ result = os.popen("%s/apache/bin/httpd -M" % parts_path_prefix)
+ loaded_module_list = [module_name for module_name in result.read().split()
+ if module_name.endswith('module')]
+ result.close()
failed_module_list = []
for module in required_module_list:
- if not os.path.exists('parts/apache/modules/%s' % module):
+ if module not in loaded_module_list:
failed_module_list.append(module)
self.assertEqual([], failed_module_list,
'Apache modules not found:\n'+'\n'.join(failed_module_list))
+
if __name__ == '__main__':
unittest.main()
More information about the Erp5-report
mailing list