Projects
Kolab:16
pykolab
Log In
Username
Password
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
Expand all
Collapse all
Changes of Revision 2
View file
0005-cli-kolab-sync-now-properly-creates-mailboxes-3975.patch
Deleted
@@ -1,37 +0,0 @@ -From a6984e9e29a3cd6beca7f717ad3484e846358fbc Mon Sep 17 00:00:00 2001 -From: Timotheus Pokorra <tp@tbits.net> -Date: Fri, 29 May 2015 14:52:56 +0200 -Subject: [PATCH 5/7] cli: kolab sync now properly creates mailboxes (#3975) - -value of entry was not assigned properly. -and we need to wait for the creation to finish ---- - pykolab/cli/cmd_sync.py | 5 +++-- - 1 file changed, 3 insertions(+), 2 deletions(-) - -diff --git a/pykolab/cli/cmd_sync.py b/pykolab/cli/cmd_sync.py -index 3e2191a..b9c6c9e 100644 ---- a/pykolab/cli/cmd_sync.py -+++ b/pykolab/cli/cmd_sync.py -@@ -100,7 +100,8 @@ def queue_add(*args, **kw): - global pool - for dn, entry in kw['entry']: - entry['dn'] = dn -- pool.apply_async(_synchronize, (), dict(**entry)) -+ r = pool.apply_async(_synchronize, (), dict(**entry)) -+ r.wait() - - def worker_process(*args, **kw): - pass -@@ -108,7 +109,7 @@ def worker_process(*args, **kw): - def _synchronize(*args, **kw): - log.info(_("Worker process %s handling %s") % (multiprocessing.current_process().name, kw['dn'])) - -- entry = utils.normalize(entry) -+ entry = utils.normalize(kw) - - if not entry.has_key('mail'): - return --- -1.9.3 -
View file
pykolab-0.7.18.tar.gz/configure.ac
Changed
@@ -1,4 +1,4 @@ -AC_INIT([pykolab], 0.7.17) +AC_INIT([pykolab], 0.7.18) AC_SUBST([RELEASE], 1) AC_CONFIG_SRCDIR(pykolab/constants.py.in)
View file
pykolab-0.7.18.tar.gz/pykolab/setup/setup_manticore.py
Added
@@ -0,0 +1,101 @@ +# -*- coding: utf-8 -*- +# Copyright 2010-2016 Kolab Systems AG (http://www.kolabsys.com) +# +# Jeroen van Meeuwen (Kolab Systems) <vanmeeuwen a kolabsys.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# + +from Cheetah.Template import Template +import hashlib +import os +import random +import re +import subprocess +import sys +import time + +import components + +import pykolab + +from pykolab import utils +from pykolab.constants import * +from pykolab.translate import _ + +log = pykolab.getLogger('pykolab.setup') +conf = pykolab.getConf() + +def __init__(): + components.register('manticore', execute, description=description(), after=['ldap','roundcube']) + +def description(): + return _("Setup Manticore.") + +def execute(*args, **kw): + if not os.path.isfile('/etc/manticore/local.env.js'): + log.error(_("Manticore is not installed on this system")) + return + + manticore_settings = { + 'fqdn': hostname + '.' + domainname, + 'secret': re.sub( + r'[^a-zA-Z0-9]', + "", + "%s%s" % ( + hashlib.md5("%s" % random.random()).digest().encode("base64"), + hashlib.md5("%s" % random.random()).digest().encode("base64") + ) + )[:24], + 'server_host': utils.parse_ldap_uri(conf.get('ldap', 'ldap_uri'))[1], + 'auth_key': re.sub( + r'[^a-zA-Z0-9]', + "", + "%s%s" % ( + hashlib.md5("%s" % random.random()).digest().encode("base64"), + hashlib.md5("%s" % random.random()).digest().encode("base64") + ) + )[:24], + 'service_bind_dn': conf.get('ldap', 'service_bind_dn'), + 'service_bind_pw': conf.get('ldap', 'service_bind_pw'), + 'user_base_dn': conf.get('ldap', 'user_base_dn') + } + + if os.path.isfile('/etc/kolab/templates/manticore.js.tpl'): + fp = open('/etc/kolab/templates/manticore.js.tpl','r') + else: + fp = open('/usr/share/kolab/templates/manticore.js.tpl', 'r') + + template_definition = fp.read() + fp.close() + + t = Template(template_definition, searchList=[manticore_settings]) + + fp = open('/etc/manticore/local.env.js', 'w') + fp.write(t.__str__()) + fp.close() + + if os.path.isfile('/bin/systemctl'): + subprocess.call(['/bin/systemctl', 'restart', 'mongod']) + time.sleep(5) + subprocess.call(['/bin/systemctl', 'restart', 'manticore']) + else: + log.error(_("Could not start the manticore service.")) + + if os.path.isfile('/bin/systemctl'): + subprocess.call(['/bin/systemctl', 'enable', 'mongod']) + subprocess.call(['/bin/systemctl', 'enable', 'manticore']) + else: + log.error(_("Could not configure the manticore service to start on boot")) +
View file
pykolab-0.7.18.tar.gz/share/templates/manticore.js.tpl
Added
@@ -0,0 +1,31 @@ +'use strict'; + +// Use local.env.js for environment variables that grunt will set when the server starts locally. +// Use for your api keys, secrets, etc. This file should not be tracked by git. +// +// You will need to set these on the server you deploy to. + +module.exports = { + DOMAIN: 'http://$fqdn:8080', + SESSION_SECRET: 'manticore-secret', + + // Control debug level for modules using visionmedia/debug + DEBUG: '', + + DEFAULT_ACCESS: 'deny', + + AUTH: 'ldap', + STORAGE: 'chwala', + + CHWALA_SERVER: 'http://$fqdn/chwala/api/document', + ROUNDCUBE_SERVER: 'http://$fqdn/roundcubemail', + + AUTH_ENCRYPTION_KEY: 'suchauth123muchkey456', + + LDAP_SERVER: 'ldap://$server_host:389', + LDAP_BASE: '$user_base_dn', + LDAP_FILTER: '(&(objectclass=kolabinetorgperson)(|(uid={{username}})(mail={{username}})))', + LDAP_BIND_DN: '$service_bind_dn', + LDAP_BIND_PW: '$service_bind_pw' + +};
View file
pykolab-0.7.18.tar.gz/share/templates/roundcubemail/config.inc.php.tpl
Changed
@@ -232,4 +232,23 @@ 'ssl_verify_peer' => false, ); + # Required for PHP 5.6 + \$config['imap_conn_options'] = Array( + 'ssl' => Array( + 'verify_peer_name' => false, + 'verify_peer' => false, + 'allow_self_signed' => true + ) + ); + + \$config['smtp_conn_options'] = Array( + 'ssl' => Array( + 'verify_peer_name' => false, + 'verify_peer' => false, + 'allow_self_signed' => true + ) + ); + + \$config['fileapi_manticore'] = 'http://' . \$_SERVER['HTTP_HOST'] . ':8080'; + ?>
View file
pykolab-0.7.18.tar.gz/share/templates/roundcubemail/kolab_files.inc.php.tpl
Changed
@@ -12,4 +12,17 @@ // Order of the files list sort \$config['kolab_files_sort_order'] = 'asc'; +// Number of concurent requests for searching and collections listing. Default: 1 +\$config['kolab_files_search_threads'] = 1; + +// LDAP addressbook that would be searched for user names autocomplete. +// That should be an array refering to the $config['ldap_public'] array key +// or complete addressbook configuration array. +\$config['kolab_files_users_source'] = 'kolab_addressbook'; + +// The LDAP attribute which will be used as ACL user identifier +\$config['kolab_files_users_field'] = 'mail'; + +// The LDAP search filter will be combined with search queries +\$config['kolab_files_users_filter'] = ''; ?>
Locations
Projects
Search
Status Monitor
Help
Open Build Service
OBS Manuals
API Documentation
OBS Portal
Reporting a Bug
Contact
Mailing List
Forums
Chat (IRC)
Twitter
Open Build Service (OBS)
is an
openSUSE project
.