diff options
Diffstat (limited to 'pykolab')
-rw-r--r-- | pykolab/cli/__init__.py | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/pykolab/cli/__init__.py b/pykolab/cli/__init__.py index defa462..e69e873 100644 --- a/pykolab/cli/__init__.py +++ b/pykolab/cli/__init__.py @@ -29,7 +29,9 @@ import pykolab import pykolab.plugins from pykolab import utils +from pykolab.auth import Auth from pykolab.conf import Conf +from pykolab.imap import IMAP from pykolab.constants import * from pykolab.translate import _ @@ -55,7 +57,9 @@ class Cli(object): action_function = action.replace('-','_') action_components = action.split('-') - if hasattr(self, "action_%s" %(action_function)): + if hasattr(self, "action_%s" %(action)): + exec("self.action_%s()" %(action)) + elif hasattr(self, "action_%s" %(action_function)): self.conf.log.info(_("TODO: self.check_%s()") %(action_function)) exec("self.action_%s()" %(action_function)) else: @@ -74,6 +78,12 @@ class Cli(object): print >> sys.stderr, _("No command given, see --help for details") sys.exit(1) + def action_sync(self): + auth = Auth(self.conf) + users = auth.users() + imap = IMAP(self.conf) + imap.synchronize(users) + def action_list_domains(self): ldap_con = ldap.initialize(self.conf.get('ldap', 'uri')) ldap_con.bind_s(self.conf.get('ldap', 'bind_dn'), self.conf.get('ldap', 'bind_pw')) |