X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/0cc93f8d08a343e61575eace0e76e1a243412504..64c70939c414881de61ac65512701d0ba4068786:/services/fuse/arvados_fuse/__init__.py diff --git a/services/fuse/arvados_fuse/__init__.py b/services/fuse/arvados_fuse/__init__.py index 80ad6b3343..73a609c3a9 100644 --- a/services/fuse/arvados_fuse/__init__.py +++ b/services/fuse/arvados_fuse/__init__.py @@ -480,8 +480,8 @@ class TagsDirectory(RecursiveInvalidateDirectory): ).execute(num_retries=self.num_retries) if "items" in tags: self.merge(tags['items'], - lambda i: i['name'] if 'name' in i else i['uuid'], - lambda a, i: a.tag == i, + lambda i: i['name'], + lambda a, i: a.tag == i['name'], lambda i: TagDirectory(self.inode, self.inodes, self.api, self.num_retries, i['name'], poll=self._poll, poll_time=self._poll_time)) @@ -526,6 +526,8 @@ class ProjectDirectory(Directory): self.project_object = project_object self.project_object_file = None self.uuid = project_object['uuid'] + self._poll = poll + self._poll_time = poll_time def createDirectory(self, i): if collection_uuid_pattern.match(i['uuid']): @@ -766,6 +768,8 @@ class Operations(llfuse.Operations): entry.st_mode = stat.S_IRUSR | stat.S_IRGRP | stat.S_IROTH if isinstance(e, Directory): entry.st_mode |= stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH | stat.S_IFDIR + elif isinstance(e, StreamReaderFile): + entry.st_mode |= stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH | stat.S_IFREG else: entry.st_mode |= stat.S_IFREG