X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/b2addc8887d200219b44121c87a7a44bf4566e42..cf0171de6e0f875748cc80026c9ea8a11147c750:/services/api/app/models/group.rb diff --git a/services/api/app/models/group.rb b/services/api/app/models/group.rb index 7fb8fef42b..1f2b0d8b77 100644 --- a/services/api/app/models/group.rb +++ b/services/api/app/models/group.rb @@ -16,6 +16,7 @@ class Group < ArvadosModel # already know how to properly treat them. attribute :properties, :jsonbHash, default: {} + validate :ensure_filesystem_compatible_name after_create :invalidate_permissions_cache after_update :maybe_invalidate_permissions_cache before_create :assign_name @@ -31,6 +32,12 @@ class Group < ArvadosModel t.add :properties end + def ensure_filesystem_compatible_name + # project groups need filesystem-compatible names, but others + # don't. + super if group_class == 'project' + end + def maybe_invalidate_permissions_cache if uuid_changed? or owner_uuid_changed? or is_trashed_changed? # This can change users' permissions on other groups as well as