A couple of bug fixes

This commit is contained in:
Jeff Bradberry
2021-03-17 16:46:12 -04:00
parent 0b31e771b1
commit 3568558571
3 changed files with 14 additions and 12 deletions

View File

@@ -87,24 +87,24 @@ def package(target, data, timestamp):
for name, (item, version) in data.items():
try:
if isinstance(item, str):
info = f.gettarinfo(item, arcname=f'./{name}')
f.addfile(info)
f.add(item, arcname=f'./{name}')
else:
fileobj = io.BytesIO(json.dumps(item).encode('utf-8'))
buf = json.dumps(item).encode('utf-8')
info = tarfile.TarInfo(f'./{name}')
info.size = len(fileobj.getvalue())
info.size = len(buf)
info.mtime = timestamp.timestamp()
f.addfile(info, fileobj=fileobj)
f.addfile(info, fileobj=io.BytesIO(buf))
manifest[name] = version
except Exception:
logger.exception(f"Could not generate metric {name}")
return None
try:
fileobj = io.BytesIO(json.dumps(manifest).encode('utf-8'))
buf = json.dumps(manifest).encode('utf-8')
info = tarfile.TarInfo('./manifest.json')
info.size = len(fileobj.getvalue())
info.size = len(buf)
info.mtime = timestamp.timestamp()
f.addfile(info, fileobj=fileobj)
f.addfile(info, fileobj=io.BytesIO(buf))
except Exception:
logger.exception("Could not generate manifest.json")
return None