From d814136ec9242b3228bbc5de070f1bcf0009b1ee Mon Sep 17 00:00:00 2001 From: Peter Sankauskas Date: Mon, 7 May 2012 11:35:45 -0700 Subject: [PATCH] Code was adding '-a' even when the user was already in the desired groups causing usermod to fail since there was no '-G' option. This is duplicate code (3 lines) from the 'group' section, so could be improved, but it works. --- library/user | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/library/user b/library/user index 30fdda21123..ce54faee22e 100755 --- a/library/user +++ b/library/user @@ -162,7 +162,10 @@ def user_mod(user, **kwargs): elif key == 'append': if kwargs[key] is not None and kwargs[key] == 'yes': if 'groups' in kwargs and kwargs['groups'] is not None: - cmd.append('-a') + defined_groups = kwargs['groups'].split(',') + existing_groups = user_group_membership(user) + if sorted(defined_groups) != sorted(existing_groups): + cmd.append('-a') # skip if no changes to be made if len(cmd) == 1: return False