17119: make arvados_fuse.fusedir.ProjectDirectory use the group contents endpoint.
authorWard Vandewege <ward@curii.com>
Thu, 25 Feb 2021 16:45:35 +0000 (11:45 -0500)
committerWard Vandewege <ward@curii.com>
Thu, 25 Feb 2021 20:18:28 +0000 (15:18 -0500)
Arvados-DCO-1.1-Signed-off-by: Ward Vandewege <ward@curii.com>

services/fuse/arvados_fuse/fusedir.py

index db5020cfefbbc820a73b300926fec858872d331d..1fab2e0fb89d22d4362dd56d017e55519ead6f09 100644 (file)
@@ -894,14 +894,16 @@ class ProjectDirectory(Directory):
                 elif user_uuid_pattern.match(self.project_uuid):
                     self.project_object = self.api.users().get(
                         uuid=self.project_uuid).execute(num_retries=self.num_retries)
-
-                contents = arvados.util.list_all(self.api.groups().list,
+                # do this in 2 steps until #17424 is fixed
+                contents = arvados.util.list_all(self.api.groups().contents,
                                                  self.num_retries,
-                                                 filters=[["owner_uuid", "=", self.project_uuid],
+                                                 uuid=self.project_uuid,
+                                                 filters=[["uuid", "is_a", "arvados#group"],
                                                           ["group_class", "=", "project"]])
-                contents.extend(arvados.util.list_all(self.api.collections().list,
+                contents.extend(arvados.util.list_all(self.api.groups().contents,
                                                       self.num_retries,
-                                                      filters=[["owner_uuid", "=", self.project_uuid]]))
+                                                      uuid=self.project_uuid,
+                                                      filters=[["uuid", "is_a", "arvados#collection"]]))
 
             # end with llfuse.lock_released, re-acquire lock