diff --git a/src/data_info/services/groups.clj b/src/data_info/services/groups.clj index b25f017..7f78081 100644 --- a/src/data_info/services/groups.clj +++ b/src/data_info/services/groups.clj @@ -36,9 +36,11 @@ (validators/user-exists cm user) (validators/user-is-group-admin cm user) (validators/group-exists cm group-name) - (validators/all-users-exist cm members) + ;; instead of this, we filter the list by extant users, so the group can + ;; still be updated if a few don't exist in irods + ;(validators/all-users-exist cm members) (let [current-members (set (users/list-group-members cm group-name)) - desired-members (set (map di-users/ensure-qualified members)) + desired-members (set (map di-users/ensure-qualified (filter users/user-exists? members))) members-to-add (cset/difference desired-members current-members) members-to-remove (cset/difference current-members desired-members)