+ if kwargs.get("compute_checksum"):
+ def compute_checksums(fileobj):
+ if "checksum" not in fileobj:
+ checksum = hashlib.sha1()
+ with self.fs_access.open(fileobj["location"], "rb") as f:
+ contents = f.read(1024*1024)
+ while contents != "":
+ checksum.update(contents)
+ contents = f.read(1024*1024)
+ fileobj["checksum"] = "sha1$%s" % checksum.hexdigest()
+
+ adjustFileObjs(self.final_output, compute_checksums)
+