mirror of
https://salsa.debian.org/freeipa-team/freeipa.git
synced 2025-02-25 18:55:28 -06:00
Make use of the single configuration point for the default shells
For now all the default shells of users and admin are hardcoded in different parts of the project. This makes it impossible to run the test suite against the setup, which has the default shell differed from '/bin/sh'. The single configuration point for the shell of users and admin is added to overcome this limitation. Fixes: https://pagure.io/freeipa/issue/7978 Signed-off-by: Stanislav Levin <slev@altlinux.org> Reviewed-By: Christian Heimes <cheimes@redhat.com>
This commit is contained in:
committed by
Christian Heimes
parent
9836511a2b
commit
d86b57c057
@@ -38,6 +38,7 @@ from ipapython.ipautil import write_tmp_file
|
||||
from ipapython.kerberos import Principal
|
||||
import datetime
|
||||
from ipaplatform.paths import paths
|
||||
from ipaplatform.constants import constants as platformconstants
|
||||
|
||||
if six.PY3:
|
||||
unicode = str
|
||||
@@ -233,7 +234,8 @@ def _pre_migrate_user(ldap, pkey, dn, entry_attrs, failed, config, ctx, **kwargs
|
||||
entry_attrs['homedirectory'] = home_dir
|
||||
|
||||
if 'loginshell' not in entry_attrs:
|
||||
default_shell = config.get('ipadefaultloginshell', [paths.SH])[0]
|
||||
default_shell = config.get('ipadefaultloginshell',
|
||||
[platformconstants.DEFAULT_SHELL])[0]
|
||||
entry_attrs.setdefault('loginshell', default_shell)
|
||||
|
||||
# do not migrate all attributes
|
||||
|
||||
@@ -55,6 +55,7 @@ from ipalib.util import set_krbcanonicalname
|
||||
from ipalib import _, ngettext
|
||||
from ipalib import output
|
||||
from ipaplatform.paths import paths
|
||||
from ipaplatform.constants import constants as platformconstants
|
||||
from ipapython.ipautil import ipa_generate_password, TMP_PWD_ENTROPY_BITS
|
||||
from ipalib.capabilities import client_has_capability
|
||||
|
||||
@@ -329,7 +330,8 @@ class stageuser_add(baseuser_add):
|
||||
len = int(config.get('ipamaxusernamelength')[0])
|
||||
)
|
||||
)
|
||||
default_shell = config.get('ipadefaultloginshell', [paths.SH])[0]
|
||||
default_shell = config.get('ipadefaultloginshell',
|
||||
[platformconstants.DEFAULT_SHELL])[0]
|
||||
entry_attrs.setdefault('loginshell', default_shell)
|
||||
# hack so we can request separate first and last name in CLI
|
||||
full_name = '%s %s' % (entry_attrs['givenname'], entry_attrs['sn'])
|
||||
@@ -532,7 +534,8 @@ class stageuser_activate(LDAPQuery):
|
||||
)
|
||||
)
|
||||
if 'loginshell' not in entry_from:
|
||||
default_shell = config.get('ipadefaultloginshell', [paths.SH])[0]
|
||||
default_shell = config.get('ipadefaultloginshell',
|
||||
[platformconstants.DEFAULT_SHELL])[0]
|
||||
if default_shell:
|
||||
entry_to.setdefault('loginshell', default_shell)
|
||||
|
||||
|
||||
@@ -65,6 +65,7 @@ from ipalib.request import context
|
||||
from ipalib import _, ngettext
|
||||
from ipalib import output
|
||||
from ipaplatform.paths import paths
|
||||
from ipaplatform.constants import constants as platformconstants
|
||||
from ipapython.dn import DN
|
||||
from ipapython.ipaldap import LDAPClient
|
||||
from ipapython.ipautil import ipa_generate_password, TMP_PWD_ENTROPY_BITS
|
||||
@@ -516,7 +517,8 @@ class user_add(baseuser_add):
|
||||
len = int(config.get('ipamaxusernamelength')[0])
|
||||
)
|
||||
)
|
||||
default_shell = config.get('ipadefaultloginshell', [paths.SH])[0]
|
||||
default_shell = config.get('ipadefaultloginshell',
|
||||
[platformconstants.DEFAULT_SHELL])[0]
|
||||
entry_attrs.setdefault('loginshell', default_shell)
|
||||
# hack so we can request separate first and last name in CLI
|
||||
full_name = '%s %s' % (entry_attrs['givenname'], entry_attrs['sn'])
|
||||
|
||||
Reference in New Issue
Block a user