From 9c94164b92a902d2dd6ed71e18b5c1369d60b85b Mon Sep 17 00:00:00 2001
From: Sinisa Veseli <sveseli@aps.anl.gov>
Date: Thu, 3 Dec 2015 14:25:51 +0000
Subject: [PATCH] additions to allow local user to access experiment group

---
 src/python/dm/common/utility/ldapLinuxPlatformUtility.py | 8 ++++++++
 src/python/dm/common/utility/linuxUtility.py             | 5 +++++
 2 files changed, 13 insertions(+)

diff --git a/src/python/dm/common/utility/ldapLinuxPlatformUtility.py b/src/python/dm/common/utility/ldapLinuxPlatformUtility.py
index 7e498d90..354a6b70 100755
--- a/src/python/dm/common/utility/ldapLinuxPlatformUtility.py
+++ b/src/python/dm/common/utility/ldapLinuxPlatformUtility.py
@@ -164,6 +164,14 @@ class LdapLinuxPlatformUtility:
             logger.error('Could not add user %s to group %s: %s' % (username, groupName, ex))
             raise InternalError(exception=ex)
 
+    @classmethod
+    def addLocalUserToGroup(cls, username, groupName):
+        """ Add local user to group. """
+        logger = cls.getLogger()
+        logger.debug('Adding local user %s to group %s' % (username, groupName))
+        cmd = '%s -a -G %s %s' % (cls.USERMOD_CMD, groupName, username)
+        cls.executeSudoCommand(cmd)
+
     def getGroupInfo(self, groupName):
         """ Get given group info. """
         logger = self.getLogger()
diff --git a/src/python/dm/common/utility/linuxUtility.py b/src/python/dm/common/utility/linuxUtility.py
index 5eab107e..afe5c2a1 100755
--- a/src/python/dm/common/utility/linuxUtility.py
+++ b/src/python/dm/common/utility/linuxUtility.py
@@ -46,6 +46,11 @@ class LinuxUtility:
         cmd = '%s -a -G %s %s' % (cls.USERMOD_CMD, groupName, username)
         cls.executeSudoCommand(cmd)
 
+    @classmethod
+    def addLocalUserToGroup(cls, username, groupName):
+        """ Add local user to group. """
+        cls.addUserToGroup(username, groupName)
+
     @classmethod
     def setGroupUsers(cls, groupName, usernameList):
         """ Set list of users for a given group. """
-- 
GitLab