summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMax Illfelder <illfelder@users.noreply.github.com>2016-09-12 14:54:00 -0700
committerGitHub <noreply@github.com>2016-09-12 14:54:00 -0700
commit60cbf6e3922c666f9237d7b310ec7872b24bf236 (patch)
treee9e2b41af8b04033af4eac93c1ea9aab342caf35
parent04289b3dc3fd0b29d7c72ba7f6d4794de33b7231 (diff)
downloadgoogle-compute-image-packages-60cbf6e3922c666f9237d7b310ec7872b24bf236.tar.gz
Accounts daemon only modifies groups on user add. (#339)
-rw-r--r--google_compute_engine/accounts/accounts_utils.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/google_compute_engine/accounts/accounts_utils.py b/google_compute_engine/accounts/accounts_utils.py
index 1b18eb1..4096086 100644
--- a/google_compute_engine/accounts/accounts_utils.py
+++ b/google_compute_engine/accounts/accounts_utils.py
@@ -278,10 +278,12 @@ class AccountsUtils(object):
if not bool(USER_REGEX.match(user)):
self.logger.warning('Invalid user account name %s.', user)
return False
- if not self._GetUser(user) and not self._AddUser(user):
- return False
- if not self._UpdateUserGroups(user, self.groups):
- return False
+ if not self._GetUser(user):
+ # User does not exist. Attempt to create the user and add them to the
+ # appropriate user groups.
+ if not (self._AddUser(user) and
+ self._UpdateUserGroups(user, self.groups)):
+ return False
# Don't try to manage account SSH keys with a shell set to disable
# logins. This helps avoid problems caused by operator and root sharing