diff options
author | Jason Gerard DeRose <jderose@redhat.com> | 2008-10-14 02:23:56 -0600 |
---|---|---|
committer | Jason Gerard DeRose <jderose@redhat.com> | 2008-10-14 02:23:56 -0600 |
commit | 9788800aa41146551baee6d36314a20203fd9d20 (patch) | |
tree | 5a56c42a9ef9e170963d034ff521fb2c0d43c3cc /ipalib | |
parent | 1480224724864cb7cf34c9be755b905c61f885b9 (diff) | |
download | freeipa-9788800aa41146551baee6d36314a20203fd9d20.tar.gz freeipa-9788800aa41146551baee6d36314a20203fd9d20.tar.xz freeipa-9788800aa41146551baee6d36314a20203fd9d20.zip |
More work on making user-add use Backend.ldap
Diffstat (limited to 'ipalib')
-rw-r--r-- | ipalib/plugins/f_user.py | 42 |
1 files changed, 24 insertions, 18 deletions
diff --git a/ipalib/plugins/f_user.py b/ipalib/plugins/f_user.py index 571f6fa8d..b35a11223 100644 --- a/ipalib/plugins/f_user.py +++ b/ipalib/plugins/f_user.py @@ -55,20 +55,36 @@ class user(frontend.Object): User object. """ takes_params = ( - Param('givenname', cli_name='firstname'), - Param('sn', cli_name='lastname'), + Param('givenname', + cli_name='first', + doc='User first name', + ), + Param('sn', + cli_name='last', + doc='User last name', + ), Param('uid', cli_name='user', primary_key=True, default_from=lambda givenname, sn: givenname[0] + sn, normalize=lambda value: value.lower(), ), - Param('krbprincipalname', - default_from=lambda uid: '%s@EXAMPLE.COM' % uid, + Param('gecos', + doc='GECOS field', + default_from=lambda uid: uid, ), Param('homedirectory', + cli_name='home', + doc='Path of user home directory', default_from=lambda uid: '/home/%s' % uid, - ) + ), + Param('shell', + default=u'/bin/sh', + doc='Login shell', + ), + Param('krbprincipalname?', cli_name='principal', + default_from=lambda uid: '%s@EXAMPLE.COM' % uid, + ), ) api.register(user) @@ -90,21 +106,11 @@ class user_add(crud.Add): """ assert 'uid' not in kw assert 'dn' not in kw + ldap = self.api.Backend.ldap kw['uid'] = uid - kw['dn'] = self.api.Backend.ldap.get_user_dn(uid) - - return kw - - # FIXME: ug, really? - if not kw.get('container'): - user_container = servercore.DefaultUserContainer - else: - user_container = kw['container'] - del kw['container'] - - user = kw + kw['dn'] = ldap.get_user_dn(uid) + return ldap.create(**kw) - user['uid'] = args[0] if servercore.user_exists(user['uid']): raise errors.Duplicate("user already exists") |