- Login by LDAP possible. New environmental variables have been introduced. Here as an example for avt:
-
LDAP_LOGIN = True LDAP_URL = "ldaps://avt.rwth-aachen.de" LDAP_PORT = 636 LDAP_DOMAIN_PREFIX = "avt" LDAP_BASE_DN = 'dc=avt,dc=rwth-aachen,dc=de'
- Bugfix with redis queue worker and mongodb connection. When creating a fork, the mongodb connection cannot reused. Fixed by disconnecting connection in fork before creating a new connection.
- As Worker class, no longer SimpleWorker is used, but switched to „Worker“ class which creates forks in contrast to SimpleWorker. Forking costs time but is more safe. In old version with old permission system, all changes made to the user dicts have been done by workers, thus the work load was high. Therefore we decided to avoid forking to reduce server load. This is no longer the case and for the current situation forking is absolutely fine and recommended.
- Bugfixes with redis queue and cache. Instead of creating a new app object in the worker, the existing flask app from the main application is used. Therefore, flask-caching does not raise errors when trying to get the cache object which is linked to an app instance
- The cache is using now a cache_key_prefix. This ensures that stuff is not mixed up if furthrmind instances sharing one redis database, as it is the case for our kubernetes cluster
- Instead of using hset and hget for writing data to redis, for instance maintenance mode, flask-caching with .set() and .get() is used. Thus there are only two ways to write to redis, 1. by rq and 2. by flask-caching
- Update of user collection that lowers all email addresses. Important to find the correct email from LDAP