Hello, am I the only one? If I don't configure CFG_APACHE_{PASSWORD,GROUP}_FILE, I'm getting this error:
$ ~/invenio/bin/inveniocfg --create-tables >>> Going to create and fill tables... Testing DB connection... ok Testing Python/MySQL/MySQLdb UTF-8 chain... ok >>> Going to reset CFG_SITE_NAME and CFG_SITE_NAME_INTL... You may want to restart Apache now. >>> CFG_SITE_NAME and CFG_SITE_NAME_INTL* reset successfully. >>> Going to reset CFG_SITE_ADMIN_EMAIL... You may want to restart Apache now. >>> CFG_SITE_ADMIN_EMAIL reset successfully. >>> Going to reset I18N field names... >>> I18N field names reset successfully. Traceback (most recent call last): File "/home/invenio/invenio/bin/webaccessadmin", line 28, in <module> from invenio.webaccessadmin_lib import main File "/usr/local/lib/python2.5/site-packages/invenio/webaccessadmin_lib.py", l ine 48, in <module> import invenio.access_control_engine as acce File "/usr/local/lib/python2.5/site-packages/invenio/access_control_engine.py" , line 31, in <module> from invenio import webuser File "/usr/local/lib/python2.5/site-packages/invenio/webuser.py", line 1049, i n <module> _apache_passwords = _load_apache_password_file() File "/usr/local/lib/python2.5/site-packages/invenio/webuser.py", line 1044, i n _load_apache_password_file for row in open(os.path.join(CFG_TMPDIR, apache_password_file)): IOError: [Errno 21] Is a directory I attach a trivial and obvious solution, unless I'm missing something. (BTW, it is relative to 0.99.1) Best regards, Ferran
WebUser: allow no apache password and group files * Check whether apache password and group file exists before trying to open the file to prevent an error when creating tables. --- lib/python/traces/webuser.py | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) Index: invenio/lib/python/traces/webuser.py =================================================================== --- invenio.orig/lib/python/traces/webuser.py 2009-05-20 16:21:34.000000000 +0200 +++ invenio/lib/python/traces/webuser.py 2009-05-20 16:29:03.000000000 +0200 @@ -1041,10 +1041,11 @@ def _load_apache_password_file(apache_password_file=CFG_APACHE_PASSWORD_FILE): ret = {} - for row in open(os.path.join(CFG_TMPDIR, apache_password_file)): - row = row.split(':') - if len(row) == 2: - ret[row[0].strip()] = row[1].strip() + if apache_password_file: + for row in open(os.path.join(CFG_TMPDIR, apache_password_file)): + row = row.split(':') + if len(row) == 2: + ret[row[0].strip()] = row[1].strip() return ret _apache_passwords = _load_apache_password_file() @@ -1060,16 +1061,17 @@ def _load_apache_group_file(apache_group_file=CFG_APACHE_GROUP_FILE): ret = {} - for row in open(os.path.join(CFG_TMPDIR, apache_group_file)): - row = row.split(':') - if len(row) == 2: - group = row[0].strip() - users = row[1].strip().split(' ') - for user in users: - user = user.strip() - if user not in ret: - ret[user] = [] - ret[user].append(group) + if apache_group_file: + for row in open(os.path.join(CFG_TMPDIR, apache_group_file)): + row = row.split(':') + if len(row) == 2: + group = row[0].strip() + users = row[1].strip().split(' ') + for user in users: + user = user.strip() + if user not in ret: + ret[user] = [] + ret[user].append(group) return ret _apache_groups = _load_apache_group_file()