More debugging for add new user, update home dir script

This commit is contained in:
nikolark committed 2015-03-22 17:10:14 +01:00
1 parent 20d04c9915
commit 5331dff8ef
4 files changed
+20 -14

No files matched your search

+11 -6
View File
@@ -47,6 +47,7 @@ def create_ldap_user(user, dry_run=False):
def _get_next_uid():
# Get user ids between min and max, and order desc by id
logger.debug('Getting next available UID')
users = LdapUser.objects.filter(id__gte=settings.LDAP_UID_MIN, id__lte=settings.LDAP_UID_MAX)
users = users.order_by('-id').values_list('id', flat=True)
@@ -59,6 +60,7 @@ def create_ldap_user(user, dry_run=False):
return users[0] + 1
def _get_next_user_gid():
logger.debug('Getting next available GID for user group')
# Get user group ids between min and max, and order desc by id
user_groups = LdapGroup.objects.filter(gid__gte=settings.LDAP_USER_GID_MIN, gid__lte=settings.LDAP_USER_GID_MAX)
user_groups = user_groups.order_by('-gid').values_list('gid', flat=True)
@@ -104,24 +106,27 @@ def create_ldap_user(user, dry_run=False):
pprint.pformat(user_data),
pwd_type))
else:
logger.debug('Saving user with data: {} and password type \'{}\'.'.format(
pprint.pformat(user_data),
pwd_type))
ldap_user.save()
# Add user group
ldap_user_group = LdapGroup(name=user['username'], gid=user_data['group'], members=[user['username']])
if not dry_run:
ldap_user_group.save()
else:
if dry_run:
logger.debug('User group {} created'.format(user['username']))
else:
ldap_user_group.save()
# Add groups
ldap_groups = LdapGroup.objects.filter(name__in=user['groups'])
for g in ldap_groups:
if user['username'] not in g.members:
g.members.append(user['username'])
if not dry_run:
g.save()
else:
if dry_run:
logger.debug('User {} added to group {}'.format(user['username'], g.name))
else:
g.save()
# Finito!
return True
+1
View File
@@ -23,6 +23,7 @@ def add_new_user(user):
- Set RADIUS password
"""
if not create_ldap_user(user):
logger.debug('Could not create user \'{}\'.'.format(user['username']))
return
create_home_dir(user['username'])
+1 -1
View File
@@ -124,7 +124,7 @@ class AddNewUserView(View):
return JsonResponse({'errors': form.errors})
user = form.cleaned_data
logger.debug('Adding user \'{}\'.'.format(user['username']))
add_new_user(user)
return JsonResponse({'results': 'success'})
+7 -7
View File
@@ -1,5 +1,5 @@
#!/bin/bash
# Usage: ./create_home_directory.sh <path> <username>
# Usage: $0 <path_to_home_dirs> <username>
if [[ $EUID -ne 0 ]]; then
echo "This script must be run as root." 1>&2
@@ -7,11 +7,11 @@ if [[ $EUID -ne 0 ]]; then
fi
if [ $# -ne 2 ] ; then
echo "USAGE $0 <path> <username>"
echo "USAGE $0 <path_to_home_dirs> <username>"
exit 1
fi
HOME_DIR_PATH=$1
HOME_DIRS_PATH=$1
USERNAME=$2
if ! id -u $USERNAME; then
@@ -19,11 +19,11 @@ if ! id -u $USERNAME; then
exit 1
fi
if [ -d "${HOME_DIR_PATH}${USERNAME}" ] ; then
if [ -d "${HOME_DIRS_PATH}$/{USERNAME}" ] ; then
echo "Cannot create home directory, it already exists..."
exit 1
fi
cp -r /etc/skel ${HOME_DIR_PATH}${USERNAME}
chown -R ${USERNAME}:${USERNAME} ${HOME_DIR_PATH}${USERNAME}
chmod -R 751 ${HOME_DIR_PATH}${USERNAME}
cp -r /etc/skel "${HOME_DIRS_PATH}/${USERNAME}"
chown -R ${USERNAME}:${USERNAME} "${HOME_DIRS_PATH}/${USERNAME}"
chmod -R 751 "${HOME_DIRS_PATH}/${USERNAME}"