You are viewing a plain text version of this content. The canonical link for it is here.
Posted to infrastructure-issues@apache.org by "Jake Farrell (JIRA)" <ji...@apache.org> on 2014/07/05 21:22:33 UTC

[jira] [Updated] (INFRA-8006) install WSGI interface to EZMLM on hermes

     [ https://issues.apache.org/jira/browse/INFRA-8006?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Jake Farrell updated INFRA-8006:
--------------------------------

    Component/s: Mailing Lists

> install WSGI interface to EZMLM on hermes
> -----------------------------------------
>
>                 Key: INFRA-8006
>                 URL: https://issues.apache.org/jira/browse/INFRA-8006
>             Project: Infrastructure
>          Issue Type: Task
>          Components: Mailing Lists
>            Reporter: Alan Cabrera
>
> I've completed my WSGI service that provides a JSON API around hermes' ezmlm.  It's written to be protected by httpd/ldap so that only ASF members can modify subscriptions and moderator membership.  
> The code is in
> https://svn.apache.org/repos/asf/labs/panopticon
> The setup requirements:
> httpd 2.2
> - mod_ldap
> - mod_wsgi
> python 2.*
> - pip
> - virtualenv
> Steps:
> cd /srv/ezmlm-wsgi
> svn checkout https://svn.apache.org/repos/asf/labs/panopticon
> virtualenv /srv/ezmlm-wsgi/ezmlm-venv
> source /srv/ezmlm-wsgi/ezmlm-venv/bin/activate
> cd /srv/ezmlm-wsgi/panopticon/pan-utils
> pip install -r requirements.txt
> ./setup.py install
> cd /srv/ezmlm-wsgi/panopticon/pan-ezmlm
> pip install -r requirements.txt
> ./setup.py install
> cd /srv/ezmlm-wsgi
> cat << EOF > ezmlm-flask.properties
> # location of EZMLM files
> LIST_ROOT_PATH = "/home/apmail/lists"
> # location of EZMLM commands
> COMMAND_LOCATION = "/usr/local/bin/"
> EOF
> cat << EOF > /etc/apache2/conf/ezmlm.conf
> SetEnv EZMLM_FLASK_CONFIG /srv/ezmlm-wsgi/ezmlm-flask.properties
> WSGIPythonHome /srv/ezmlm-wsgi/ezmlm-venv
> WSGIScriptAlias /ezmlm /srv/ezmlm-wsgi/panopticon/pan-ezmlm/bin/ezmlm.apache2.wsgi
> <Directory /srv/ezmlm-wsgi/panopticon/pan-ezmlm/bin>
> Order allow,deny
> Allow from all 
> </Directory>
> <LocationMatch ^/ezmlm/v1/committer>
>   Order allow,deny
>   Allow from all 
>   AuthType Basic
>   AuthBasicProvider ldap
>   AuthName "ASF Committers"
>   AuthLDAPurl "ldaps://minotaur.apache.org:636/ou=people,dc=apache,dc=org?uid"
>   AuthLDAPGroupAttribute memberUid
>   AuthzLDAPAuthoritative on
>   AuthLDAPGroupAttributeIsDN off
>   Require ldap-group cn=committers,ou=groups,dc=apache,dc=org
> </LocationMatch>
> <LocationMatch ^/ezmlm/v1/asf>
>   Order allow,deny
>   Allow from all 
>   AuthType Basic
>   AuthBasicProvider ldap
>   AuthName "ASF Members"
>   AuthLDAPurl "ldaps://minotaur.apache.org:636/ou=people,dc=apache,dc=org?uid"
>   AuthLDAPGroupAttribute memberUid
>   AuthzLDAPAuthoritative on
>   AuthLDAPGroupAttributeIsDN off
>   Require ldap-group cn=member,ou=groups,dc=apache,dc=org
> </LocationMatch>
> EOF



--
This message was sent by Atlassian JIRA
(v6.2#6252)