Skip to content

Commit c23c402

Browse files
committed
filesystem: include remote file name in filesystem_new_file event
1 parent 492a815 commit c23c402

File tree

1 file changed

+5
-4
lines changed

1 file changed

+5
-4
lines changed

hooks/filesystem.py

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ def guestfs_instance(self):
4343
def guest_local_file(gfs, remote_file):
4444
with NamedTemporaryFile() as temp:
4545
gfs.download(remote_file, temp.name)
46-
yield temp.name
46+
yield remote_file, temp.name
4747

4848

4949
class FilesystemHook(Hook):
@@ -101,8 +101,9 @@ def walk_capture(self, node):
101101
inode = Inode(self.gfs, node, self.inode_checksums)
102102
# download and execute trigger on local file
103103
if InodeType(inode.inode_type) == InodeType.REG:
104-
with guest_local_file(self.gfs, str(node)) as local_file:
105-
self.context.trigger('filesystem_new_file', filepath=local_file, inode=inode)
104+
with guest_local_file(self.gfs, str(node)) as (remote_file, local_file):
105+
self.context.trigger('filesystem_new_file', guest_filepath=remote_file, local_filepath=local_file,
106+
inode=inode)
106107
# walk
107108
if self.gfs.is_dir(str(node)):
108109
entries = self.gfs.ls(str(node))
@@ -115,7 +116,7 @@ def walk_capture(self, node):
115116
return inode
116117

117118
def process_new_file(self, event):
118-
filepath = event.filepath
119+
filepath = event.local_filepath
119120
inode = event.inode
120121
# determine MIME type and update inode
121122
inode.mime_type = subprocess.check_output(['file', '-bi', filepath]).decode().rstrip()

0 commit comments

Comments
 (0)