from nullspace import FileUploadError, Machine
def on_progress(event) -> None:
print(event.phase, event.bytes_completed, event.bytes_total, event.transport)
with Machine.create(template="base", timeout=300) as machine:
try:
result = machine.files.upload_file(
"./dist/model.bin",
"/workspace/model.bin",
resumable=True,
progress=on_progress,
)
except FileUploadError as exc:
if exc.upload_id is None:
raise
result = machine.files.resume_upload(
exc.upload_id,
"./dist/model.bin",
progress=on_progress,
)
print(result.target_path, result.bytes_uploaded)