I'm not sure if the feature I want exists in git-annex, so this might be a question for the wishlist.
Can I use a cloud server as a middle-man for pulling files from a host that's unreachable at the moment? My situation is: - Desktop, behind cg-nat, can talk to Cloud. Multiple TB of files. - Cloud provider, generally accessible, just a few GB of space. - Notebook, when at home can talk to desktop, on the go can only talk to cloud.
I would like to (in the notebook), request a file to the cloud, and have the cloud pull it from the desktop to be retrieved by the notebook (Or the cloud broker the double-NAT hole punching, but that's much harder).
My current (crude) solution is a script running in the desktop that every few minutes reads a textfile in the cloud with the paths that should be pushed there, so when I need a file in the notebook I add its path to the textfile, and after a few minutes I can sync and pull it from the cloud. But is there a more automated solution?
metadata=tag=cloud
. And then I think you can just run the [git-annex-assistant] on the desktop and it'll automatically sync the files if metadata for a file changes.The metadata solution worked well, except that my cloud remote is unable to run the assistant to pull files from the desktop, and the assistant in the desktop was not pushing. That is fixed by running
git annex sync --content cloud
every few minutes in the desktop.